---
Fuzzer filename: "io.netty.buffer.ByteBufUtilFuzzer"
Fuzzing method: "fuzzerTestOneInput"
All functions:
  Function list name: "All functions"
  Elements:
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,int,io.netty.handler.codec.http2.Http2Stream$State)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream:609,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,int,io.netty.handler.codec.http2.Http2Stream$State)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].isResetSent()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream"
    linkageType: ""
    functionLinenumber: 613
    functionLinenumberEnd: 615
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].createdBy()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream"
    linkageType: ""
    functionLinenumber: 618
    functionLinenumberEnd: 620
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].resetSent()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream"
    linkageType: ""
    functionLinenumber: 623
    functionLinenumberEnd: 625
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream:624,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].open(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream"
    linkageType: ""
    functionLinenumber: 628
    functionLinenumberEnd: 630
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream:629,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].close()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream"
    linkageType: ""
    functionLinenumber: 633
    functionLinenumberEnd: 635
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream:634,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].closeLocalSide()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream"
    linkageType: ""
    functionLinenumber: 638
    functionLinenumberEnd: 640
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream:639,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].closeRemoteSide()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream"
    linkageType: ""
    functionLinenumber: 643
    functionLinenumberEnd: 645
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream:644,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].headersSent(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream"
    linkageType: ""
    functionLinenumber: 648
    functionLinenumberEnd: 650
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream:649,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].isHeadersSent()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream"
    linkageType: ""
    functionLinenumber: 653
    functionLinenumberEnd: 655
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream:654,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].pushPromiseSent()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream"
    linkageType: ""
    functionLinenumber: 658
    functionLinenumberEnd: 660
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream:659,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].isPushPromiseSent()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream"
    linkageType: ""
    functionLinenumber: 663
    functionLinenumberEnd: 665
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream:664,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].<init>(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$Tasks$1"
    linkageType: ""
    functionLinenumber: 1278
    functionLinenumberEnd: 1280
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext$Tasks"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$Tasks$1:1279,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$Tasks$1"
    linkageType: ""
    functionLinenumber: 1281
    functionLinenumberEnd: 1284
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks].access$1800(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    - "[io.netty.channel.AbstractChannelHandlerContext].access$1900(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 49
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$Tasks$1:1282,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext$Tasks].access$1800(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    - Src: "io.netty.channel.AbstractChannelHandlerContext$Tasks$1:1282,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].access$1900(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$Tasks].access$1800(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$Tasks"
    linkageType: ""
    functionLinenumber: 1276
    functionLinenumberEnd: 1278
    functionDepth: 0
    returnType: "io.netty.channel.AbstractChannelHandlerContext"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext$Tasks"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriter].<init>(java.io.OutputStream)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriter"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriter:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriter].<init>(java.io.OutputStream,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriter"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 63
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.pcap.PcapHeaders].writeGlobalHeader(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readBytes(java.io.OutputStream,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriter:57,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.pcap.PcapWriter:60,1"
      Dst: "[io.netty.handler.pcap.PcapHeaders].writeGlobalHeader(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.pcap.PcapWriter:61,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.pcap.PcapWriter:61,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriter].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriter"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 89
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String)"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:java.lang.System].currentTimeMillis()"
    - "[io.netty.handler.pcap.PcapHeaders].writePacketHeader(io.netty.buffer.ByteBuf,int,int,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - "[java.lang.System].currentTimeMillis()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readBytes(java.io.OutputStream,int)"
    functionUses: 2
    ICount: 23
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "io.netty.handler.pcap.PcapWriter:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriter:76"
        BranchSideFuncs:
        - "debug(java.lang.String)"
      - BranchSide: "io.netty.handler.pcap.PcapWriter:75"
        BranchSideFuncs:
        - "readBytes(java.io.OutputStream,int)"
        - "currentTimeMillis()"
        - "writePacketHeader(io.netty.buffer.ByteBuf,int,int,int,int)"
        - "readableBytes()"
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriter:73,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - Src: "io.netty.handler.pcap.PcapWriter:76,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    - Src: "io.netty.handler.pcap.PcapWriter:82,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.pcap.PcapWriter:78,1"
      Dst: "[io.netty.handler.pcap.PcapHeaders].writePacketHeader(io.netty.buffer.ByteBuf,int,int,int,int)"
    - Src: "io.netty.handler.pcap.PcapWriter:86,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.pcap.PcapHeaders].writePacketHeader(io.netty.buffer.ByteBuf,int,int,int,int)"
    functionSourceFile: "io.netty.handler.pcap.PcapHeaders"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 40
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapHeaders:60,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriter].close()"
    functionSourceFile: "io.netty.handler.pcap.PcapWriter"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String)"
    - "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].flush()"
    - "[java.io.PrintStream].flush()"
    - "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].close()"
    - "[io.netty.buffer.ByteBufOutputStream].close()"
    - "[io.netty.util.internal.logging.CommonsLogger:io.netty.util.internal.logging.Slf4JLogger:java.io.ByteArrayOutputStream:java.io.FileOutputStream:java.io.FilterOutputStream:java.io.ObjectOutputStream:java.io.ObjectOutputStream$BlockDataOutputStream:java.io.OutputStream:java.io.OutputStream$1:java.io.PrintStream].close()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - "[java.io.OutputStream].flush()"
    - "[java.io.OutputStream].close()"
    functionUses: 2
    ICount: 14
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.pcap.PcapWriter:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriter:95"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.pcap.PcapWriter:94"
        BranchSideFuncs:
        - "debug(java.lang.String)"
        - "flush()"
        - "close()"
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriter:93,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - Src: "io.netty.handler.pcap.PcapWriter:96,1"
      Dst: "[java.io.OutputStream].flush()"
    - Src: "io.netty.handler.pcap.PcapWriter:97,1"
      Dst: "[java.io.OutputStream].close()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].websocketPath()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].subprotocols()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].checkStartsWith()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].handshakeTimeoutMillis()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].forceCloseTimeoutMillis()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].handleCloseFrames()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].sendCloseFrame()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].dropPongFrames()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].decoderConfig()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].<init>(java.lang.String,java.lang.String,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:135,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:135,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].websocketPath()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:136,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].subprotocols()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:137,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].checkStartsWith()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:138,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].handshakeTimeoutMillis()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:139,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].forceCloseTimeoutMillis()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:140,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].handleCloseFrames()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:141,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].sendCloseFrame()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:142,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].dropPongFrames()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:143,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].decoderConfig()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:135,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].<init>(java.lang.String,java.lang.String,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].<init>(java.lang.String,java.lang.String,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 9
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "long"
    - "long"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:155,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].websocketPath(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].subprotocols(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].checkStartsWith(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].handshakeTimeoutMillis(long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].forceCloseTimeoutMillis(long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].handleCloseFrames(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].sendCloseFrame(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].dropPongFrames(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].decoderConfig(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:237"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:237"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:236"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].decoderConfigBuilder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].toBuilder()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:243"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:246"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:245"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:244,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].toBuilder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].toBuilder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$1)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig:104,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$1)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder:111,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 128
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].maxFramePayloadLength()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].expectMaskedFrames()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].allowMaskMismatch()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].allowExtensions()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].closeOnProtocolViolation()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].withUTF8Validator()"
    functionUses: 1
    ICount: 17
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder:119,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder:120,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder:121,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].maxFramePayloadLength()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder:122,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].expectMaskedFrames()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder:123,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].allowMaskMismatch()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder:124,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].allowExtensions()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder:125,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].closeOnProtocolViolation()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder:126,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].withUTF8Validator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ObjectUtil"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 448
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ObjectUtil:38"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectUtil:41"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.ObjectUtil:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectUtil:39,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].maxFramePayloadLength()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].expectMaskedFrames()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].allowMaskMismatch()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].allowExtensions()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].closeOnProtocolViolation()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].withUTF8Validator()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].maxFramePayloadLength(int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].decoderConfigBuilder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].maxFramePayloadLength(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:250,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].decoderConfigBuilder()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:250,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].maxFramePayloadLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].maxFramePayloadLength(int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].expectMaskedFrames(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].decoderConfigBuilder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].expectMaskedFrames(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:255,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].decoderConfigBuilder()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:255,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].expectMaskedFrames(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].expectMaskedFrames(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].allowMaskMismatch(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].decoderConfigBuilder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowMaskMismatch(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:260,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].decoderConfigBuilder()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:260,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowMaskMismatch(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowMaskMismatch(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].allowExtensions(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].decoderConfigBuilder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowExtensions(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:265,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].decoderConfigBuilder()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:265,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowExtensions(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowExtensions(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].closeOnProtocolViolation(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].decoderConfigBuilder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].closeOnProtocolViolation(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:270,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].decoderConfigBuilder()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:270,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].closeOnProtocolViolation(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].closeOnProtocolViolation(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].withUTF8Validator(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].decoderConfigBuilder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].withUTF8Validator(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:275,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].decoderConfigBuilder()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:275,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].withUTF8Validator(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].withUTF8Validator(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].build()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].build()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].<init>(java.lang.String,java.lang.String,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig,io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$1)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:283"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:292,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].build()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:292,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].<init>(java.lang.String,java.lang.String,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig,io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].build()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].<init>(int,boolean,boolean,boolean,boolean,boolean,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$1)"
    functionUses: 3
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder:160,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].<init>(int,boolean,boolean,boolean,boolean,boolean,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].<init>(int,boolean,boolean,boolean,boolean,boolean,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$1)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    linkageType: ""
    functionLinenumber: 22
    functionLinenumberEnd: 24
    functionDepth: 1
    returnType: "void"
    argCount: 7
    argTypes:
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    - "boolean"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].<init>(int,boolean,boolean,boolean,boolean,boolean)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig:23,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].<init>(int,boolean,boolean,boolean,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].<init>(int,boolean,boolean,boolean,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].<init>(java.lang.String,java.lang.String,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig,io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$1)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 10
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "long"
    - "long"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    - "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].<init>(java.lang.String,java.lang.String,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig:26,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].<init>(java.lang.String,java.lang.String,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].<init>(java.lang.String,java.lang.String,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 9
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "long"
    - "long"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(long,java.lang.String)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig:59"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig:50"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig:54,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.ObjectUtil].checkPositive(long,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ObjectUtil"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 114
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(long)"
    functionUses: 3
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ObjectUtil:110"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectUtil:113"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.ObjectUtil:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectUtil:111,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.ObjectUtil:111,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:111,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.util.internal.ObjectUtil:111,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.ObjectUtil:111,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig,io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$1)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    - "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:122,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].<init>(java.lang.String,java.lang.String,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig,io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$1)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 10
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "long"
    - "long"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    - "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].<init>(java.lang.String,java.lang.String,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder:122,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].<init>(java.lang.String,java.lang.String,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf$1].<init>()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$1"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf$1:109,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf$1].wrap(byte[])"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf$1:112,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 161
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf].<init>(io.netty.buffer.ByteBufAllocator,byte[],int)"
    functionUses: 22
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:157"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:160"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:159"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBufAllocator,byte[],int)"
    Callsites:
    - Src: "io.netty.buffer.Unpooled:160,1"
      Dst: "[io.netty.buffer.UnpooledHeapByteBuf].<init>(io.netty.buffer.ByteBufAllocator,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledHeapByteBuf].<init>(io.netty.buffer.ByteBufAllocator,byte[],int)"
    functionSourceFile: "io.netty.buffer.UnpooledHeapByteBuf"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 83
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].<init>(int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setArray(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    functionUses: 1
    ICount: 24
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledHeapByteBuf:74"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledHeapByteBuf:79"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.buffer.UnpooledHeapByteBuf:78"
        BranchSideFuncs:
        - "setArray(byte[])"
        - "setIndex(int,int)"
    Callsites:
    - Src: "io.netty.buffer.UnpooledHeapByteBuf:70,1"
      Dst: "[io.netty.buffer.AbstractReferenceCountedByteBuf].<init>(int)"
    - Src: "io.netty.buffer.UnpooledHeapByteBuf:72,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.UnpooledHeapByteBuf:76,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.buffer.UnpooledHeapByteBuf:75,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.buffer.UnpooledHeapByteBuf:75,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.UnpooledHeapByteBuf:80,1"
      Dst: "[io.netty.buffer.UnpooledHeapByteBuf].setArray(byte[])"
    - Src: "io.netty.buffer.UnpooledHeapByteBuf:81,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledHeapByteBuf].setArray(byte[])"
    functionSourceFile: "io.netty.buffer.UnpooledHeapByteBuf"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf$1].isEmpty(byte[])"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf$1:116"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf$1:115"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.CompositeByteBuf$1].isEmpty(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf$1].isEmpty(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf$1:109,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$1].isEmpty(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf$1].wrap(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf$1].wrap(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf$1:109,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$1].wrap(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Version].identify()"
    functionSourceFile: "io.netty.util.Version"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.Version].identify(java.lang.ClassLoader)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Version:56,1"
      Dst: "[io.netty.util.Version].identify(java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Version].identify(java.lang.ClassLoader)"
    functionSourceFile: "io.netty.util.Version"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.util.Map<String,Version>"
    argCount: 1
    argTypes:
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getContextClassLoader()"
    - "[java.util.Properties].<init>()"
    - "[java.lang.ClassLoader].getResources(java.lang.String)"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.net.URL].openStream()"
    - "[java.util.Properties].load(java.io.InputStream)"
    - "[java.io.InputStream].close()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.Properties].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Properties].containsKey(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.TreeMap].<init>()"
    - "[java.util.Properties].getProperty(java.lang.String)"
    - "[io.netty.util.Version].parseIso8601(java.lang.String)"
    - "[io.netty.util.Version].<init>(java.lang.String,java.lang.String,long,long,java.lang.String,java.lang.String,java.lang.String)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 131
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.Version:65"
      Branch Sides:
      - BranchSide: "io.netty.util.Version:70"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.Version:69"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.Version:73"
      Branch Sides:
      - BranchSide: "io.netty.util.Version:88"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.Version:87"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.Version:92"
      Branch Sides:
      - BranchSide: "io.netty.util.Version:115"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.Version:114"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.Version:96"
      Branch Sides:
      - BranchSide: "io.netty.util.Version:100"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.Version:99"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.Version:103"
      Branch Sides:
      - BranchSide: "io.netty.util.Version:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.Version:91"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.Version:104"
      Branch Sides:
      - BranchSide: "io.netty.util.Version:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.Version:91"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.Version:105"
      Branch Sides:
      - BranchSide: "io.netty.util.Version:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.Version:91"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.Version:106"
      Branch Sides:
      - BranchSide: "io.netty.util.Version:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.Version:91"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.Version:107"
      Branch Sides:
      - BranchSide: "io.netty.util.Version:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.Version:91"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.Version:108"
      Branch Sides:
      - BranchSide: "io.netty.util.Version:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.Version:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.Version:116"
      Branch Sides:
      - BranchSide: "io.netty.util.Version:129"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.Version:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.Version:66,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getContextClassLoader()"
    - Src: "io.netty.util.Version:70,1"
      Dst: "[java.util.Properties].<init>()"
    - Src: "io.netty.util.Version:72,1"
      Dst: "[java.lang.ClassLoader].getResources(java.lang.String)"
    - Src: "io.netty.util.Version:73,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "io.netty.util.Version:74,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "io.netty.util.Version:75,1"
      Dst: "[java.net.URL].openStream()"
    - Src: "io.netty.util.Version:77,1"
      Dst: "[java.util.Properties].load(java.io.InputStream)"
    - Src: "io.netty.util.Version:80,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "io.netty.util.Version:91,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "io.netty.util.Version:92,1"
      Dst: "[java.util.Properties].keySet()"
    - Src: "io.netty.util.Version:92,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.util.Version:92,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.util.Version:92,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.util.Version:95,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "io.netty.util.Version:100,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.util.Version:103,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.Version:103,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.Version:103,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.Version:103,1"
      Dst: "[java.util.Properties].containsKey(java.lang.Object)"
    - Src: "io.netty.util.Version:112,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.util.Version:115,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "io.netty.util.Version:121,1"
      Dst: "[java.util.Properties].getProperty(java.lang.String)"
    - Src: "io.netty.util.Version:122,1"
      Dst: "[io.netty.util.Version].parseIso8601(java.lang.String)"
    - Src: "io.netty.util.Version:126,1"
      Dst: "[io.netty.util.Version].<init>(java.lang.String,java.lang.String,long,long,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "io.netty.util.Version:117,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 28
    CyclomaticComplexity: 11
  - functionName: "[io.netty.util.internal.PlatformDependent].getContextClassLoader()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getContextClassLoader()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1087,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getContextClassLoader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].getContextClassLoader()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getSecurityManager()"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].getContextClassLoader()"
    - "[io.netty.util.internal.PlatformDependent0$11].<init>()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:916"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:919"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent0:918"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:916,1"
      Dst: "[java.lang.System].getSecurityManager()"
    - Src: "io.netty.util.internal.PlatformDependent0:917,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "io.netty.util.internal.PlatformDependent0:917,1"
      Dst: "[java.lang.Thread].getContextClassLoader()"
    - Src: "io.netty.util.internal.PlatformDependent0:919,1"
      Dst: "[io.netty.util.internal.PlatformDependent0$11].<init>()"
    - Src: "io.netty.util.internal.PlatformDependent0:919,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$11].<init>()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$11"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$11:919,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Version].parseIso8601(java.lang.String)"
    functionSourceFile: "io.netty.util.Version"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - "[java.text.DateFormat].parse(java.lang.String)"
    - "[java.util.Date].getTime()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Version:134,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String)"
    - Src: "io.netty.util.Version:134,1"
      Dst: "[java.text.DateFormat].parse(java.lang.String)"
    - Src: "io.netty.util.Version:134,1"
      Dst: "[java.util.Date].getTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Version].<init>(java.lang.String,java.lang.String,long,long,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.util.Version"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "long"
    - "long"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Version:160,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Version].artifactId()"
    functionSourceFile: "io.netty.util.Version"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Version].artifactVersion()"
    functionSourceFile: "io.netty.util.Version"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Version].buildTimeMillis()"
    functionSourceFile: "io.netty.util.Version"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Version].commitTimeMillis()"
    functionSourceFile: "io.netty.util.Version"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Version].shortCommitHash()"
    functionSourceFile: "io.netty.util.Version"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Version].longCommitHash()"
    functionSourceFile: "io.netty.util.Version"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Version].repositoryStatus()"
    functionSourceFile: "io.netty.util.Version"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Version].toString()"
    functionSourceFile: "io.netty.util.Version"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 27
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.util.Version:201"
      Branch Sides:
      - BranchSide: "io.netty.util.Version:199"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.util.Version:200,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.Version:200,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.Version:200,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.Version:201,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.util.Version:201,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$Tasks].<init>(io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$Tasks"
    linkageType: ""
    functionLinenumber: 1303
    functionLinenumberEnd: 1307
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].<init>(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].<init>(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].<init>(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].<init>(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 17
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$Tasks:1304,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.AbstractChannelHandlerContext$Tasks:1279,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].<init>(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    - Src: "io.netty.channel.AbstractChannelHandlerContext$Tasks:1285,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].<init>(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    - Src: "io.netty.channel.AbstractChannelHandlerContext$Tasks:1291,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].<init>(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    - Src: "io.netty.channel.AbstractChannelHandlerContext$Tasks:1297,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].<init>(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$Tasks].access$700(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$Tasks"
    linkageType: ""
    functionLinenumber: 1276
    functionLinenumberEnd: 1278
    functionDepth: 0
    returnType: "java.lang.Runnable"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext$Tasks"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$Tasks].access$800(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$Tasks"
    linkageType: ""
    functionLinenumber: 1276
    functionLinenumberEnd: 1278
    functionDepth: 0
    returnType: "java.lang.Runnable"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext$Tasks"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$Tasks].access$1400(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$Tasks"
    linkageType: ""
    functionLinenumber: 1276
    functionLinenumberEnd: 1278
    functionDepth: 0
    returnType: "java.lang.Runnable"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext$Tasks"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$Tasks].access$1500(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$Tasks"
    linkageType: ""
    functionLinenumber: 1276
    functionLinenumberEnd: 1278
    functionDepth: 0
    returnType: "java.lang.Runnable"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext$Tasks"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyHeaders$HeaderValueConverterAndValidator].<init>()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyHeaders$HeaderValueConverterAndValidator"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CharSequenceValueConverter].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeaders$HeaderValueConverterAndValidator:74,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyHeaders$HeaderValueConverterAndValidator].convertObject(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyHeaders$HeaderValueConverterAndValidator"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 82
    functionDepth: 2
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertObject(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdyCodecUtil].validateHeaderValue(java.lang.CharSequence)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeaders$HeaderValueConverterAndValidator:79,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].convertObject(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeaders$HeaderValueConverterAndValidator:80,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyCodecUtil].validateHeaderValue(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertObject(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ReflectiveChannelFactory].toString()"
    - "[io.netty.util.Version].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].toString()"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[io.netty.buffer.PoolSubpage].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].toString()"
    - "[io.netty.util.Signal].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Thread].toString()"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].toString()"
    - "[java.lang.Throwable].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].toString()"
    - "[io.netty.channel.kqueue.NativeLongArray].toString()"
    - "[io.netty.handler.proxy.ProxyConnectionEvent].toString()"
    - "[io.netty.handler.ssl.SslCompletionEvent].toString()"
    - "[io.netty.bootstrap.BootstrapConfig].toString()"
    - "[io.netty.handler.codec.xml.XmlEntityReference].toString()"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].toString()"
    - "[io.netty.channel.kqueue.AcceptFilter].toString()"
    - "[io.netty.buffer.DefaultByteBufHolder].toString()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].toString()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].toString()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].toString()"
    - "[io.netty.handler.codec.http.HttpVersion].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].toString()"
    - "[io.netty.util.AbstractConstant].toString()"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache].toString()"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].toString()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].toString()"
    - "[io.netty.handler.ssl.util.LazyX509Certificate].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].toString()"
    - "[io.netty.buffer.WrappedByteBuf].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].toString()"
    - "[io.netty.handler.codec.dns.DnsOpCode].toString()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].toString()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].toString()"
    - "[java.lang.Integer].toString()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache].toString()"
    - "[io.netty.handler.codec.DefaultHeaders].toString()"
    - "[jaz.Zer].toString()"
    - "[io.netty.util.concurrent.DefaultPromise].toString()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].toString()"
    - "[io.netty.handler.ssl.PemX509Certificate].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].toString()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].toString()"
    - "[io.netty.handler.codec.redis.IntegerRedisMessage].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].toString()"
    - "[io.netty.handler.codec.xml.XmlElementEnd].toString()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].toString()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuestion].toString()"
    - "[io.netty.handler.ssl.OpenSslSessionId].toString()"
    - "[io.netty.channel.group.DefaultChannelGroup].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].toString()"
    - "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].toString()"
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].toString()"
    - "[java.lang.Class].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].toString()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].toString()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].toString()"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].toString()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].toString()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].toString()"
    - "[io.netty.handler.codec.EmptyHeaders].toString()"
    - "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].toString()"
    - "[io.netty.buffer.AbstractByteBufAllocator].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].toString()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].toString()"
    - "[io.netty.handler.codec.xml.XmlNamespace].toString()"
    - "[io.netty.channel.unix.FileDescriptor].toString()"
    - "[java.lang.Double].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].toString()"
    - "[io.netty.bootstrap.AbstractBootstrap].toString()"
    - "[io.netty.channel.WriteBufferWaterMark].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString()"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribePayload].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].toString()"
    - "[io.netty.handler.codec.http2.Http2Flags].toString()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].toString()"
    - "[io.netty.buffer.CompositeByteBuf].toString()"
    - "[io.netty.handler.codec.http2.HpackHeaderField].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].toString()"
    - "[io.netty.handler.codec.smtp.SmtpCommand].toString()"
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[io.netty.resolver.dns.InflightNameResolver].toString()"
    - "[java.lang.Float].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[java.io.File].toString()"
    - "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].toString()"
    - "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].toString()"
    - "[io.netty.buffer.AbstractByteBuf].toString()"
    - "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].toString()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].toString()"
    - "[java.lang.Object].toString()"
    - "[io.netty.handler.codec.xml.XmlElement].toString()"
    - "[java.lang.Character].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].toString()"
    - "[io.netty.handler.codec.http.QueryStringEncoder].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].toString()"
    - "[io.netty.handler.codec.dns.DnsRecordType].toString()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].toString()"
    - "[io.netty.handler.codec.dns.DnsResponseCode].toString()"
    - "[io.netty.util.collection.LongObjectHashMap].toString()"
    - "[io.netty.buffer.PoolArena].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].toString()"
    - "[io.netty.channel.unix.PeerCredentials].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsPtrRecord].toString()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].toString()"
    - "[io.netty.handler.codec.http.HttpMethod].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].toString()"
    - "[io.netty.handler.traffic.TrafficCounter].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].toString()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].toString()"
    - "[java.lang.Short].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsOptPseudoRrRecord].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].toString()"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].toString()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent].toString()"
    - "[io.netty.util.DomainNameMapping].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].toString()"
    - "[io.netty.buffer.PoolChunkList].toString()"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].toString()"
    - "[io.netty.buffer.PoolChunk].toString()"
    - "[io.netty.util.internal.EmptyPriorityQueue].toString()"
    - "[io.netty.channel.unix.DomainSocketAddress].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckPayload].toString()"
    - "[io.netty.handler.codec.xml.XmlAttribute].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].toString()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].toString()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].toString()"
    - "[io.netty.channel.DefaultChannelId].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[io.netty.channel.DefaultAddressedEnvelope].toString()"
    - "[io.netty.util.collection.CharObjectHashMap].toString()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].toString()"
    - "[io.netty.handler.codec.xml.XmlElementStart].toString()"
    - "[io.netty.handler.codec.DecoderResult].toString()"
    - "[io.netty.handler.ssl.SniCompletionEvent].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[io.netty.util.collection.ByteObjectHashMap].toString()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].toString()"
    - "[io.netty.util.collection.ShortObjectHashMap].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].toString()"
    - "[io.netty.handler.codec.http.QueryStringDecoder].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].toString()"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].toString()"
    - "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].toString()"
    - "[java.lang.Long].toString()"
    - "[io.netty.channel.sctp.SctpMessage].toString()"
    - "[io.netty.util.collection.IntObjectHashMap].toString()"
    - "[io.netty.handler.codec.xml.XmlContent].toString()"
    - "[io.netty.handler.codec.http.HttpHeaders].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].toString()"
    - "[io.netty.buffer.FixedCompositeByteBuf].toString()"
    - "[io.netty.channel.DefaultChannelPipeline].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].toString()"
    - "[io.netty.handler.codec.string.LineSeparator].toString()"
    - "[io.netty.buffer.SwappedByteBuf].toString()"
    - "[io.netty.channel.unix.Socket].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].toString()"
    - "[io.netty.channel.AbstractChannel].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].toString()"
    - "[java.lang.Byte].toString()"
    - "[io.netty.handler.codec.xml.XmlDTD].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].toString()"
    - "[io.netty.bootstrap.ServerBootstrapConfig].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandType].toString()"
    - "[io.netty.channel.AbstractChannelHandlerContext].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].toString()"
    - "[io.netty.handler.codec.http.HttpScheme].toString()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].toString()"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams:io.netty.buffer.EmptyByteBuf:io.netty.channel.embedded.EmbeddedChannelId:io.netty.channel.embedded.EmbeddedSocketAddress:io.netty.channel.local.LocalAddress:io.netty.handler.codec.http.LastHttpContent$1:io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism:io.netty.handler.codec.redis.ArrayRedisMessage$1:io.netty.handler.codec.redis.ArrayRedisMessage$2:io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey:io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent:io.netty.resolver.dns.DefaultDnsServerAddresses:io.netty.util.Recycler$1:io.netty.util.concurrent.PromiseTask$SentinelRunnable:java.io.ByteArrayOutputStream:java.io.ObjectOutputStream$DebugTraceInfoStack:java.io.ObjectStreamClass:java.io.ObjectStreamField:java.io.StringWriter:java.lang.Boolean:java.lang.Character$Subset:java.lang.Enum:java.lang.Module:java.lang.ModuleLayer:java.lang.Package:java.lang.ProcessBuilder$Redirect$1:java.lang.ProcessBuilder$Redirect$2:java.lang.ProcessBuilder$Redirect$3:java.lang.ProcessBuilder$Redirect$4:java.lang.ProcessBuilder$Redirect$5:java.lang.ProcessBuilder$Redirect$6:java.lang.ProcessBuilder$RedirectPipeImpl:java.lang.ProcessHandleImpl:java.lang.ProcessImpl:java.lang.Runtime$Version:java.lang.StackFrameInfo:java.lang.StackTraceElement:java.lang.String:java.lang.StringBuilder:java.lang.ThreadGroup:java.lang.invoke.ClassSpecializer$SpeciesData:java.lang.invoke.Invokers:java.lang.invoke.LambdaForm:java.lang.invoke.LambdaForm$Name:java.lang.invoke.LambdaForm$NamedFunction:java.lang.invoke.LambdaFormEditor$Transform:java.lang.invoke.MemberName:java.lang.invoke.MethodHandle:java.lang.invoke.MethodHandleImpl$LoopClauses:java.lang.invoke.MethodHandles$Lookup:java.lang.invoke.MethodType:java.lang.invoke.MethodTypeForm:java.lang.invoke.SerializedLambda:java.lang.module.Configuration:java.lang.module.ModuleDescriptor:java.lang.module.ModuleDescriptor$Exports:java.lang.module.ModuleDescriptor$Opens:java.lang.module.ModuleDescriptor$Provides:java.lang.module.ModuleDescriptor$Requires:java.lang.module.ModuleDescriptor$Version:java.lang.module.ResolvedModule:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method:java.lang.reflect.Parameter:java.math.BigDecimal:java.math.BigInteger:java.math.MathContext:java.math.MutableBigInteger:java.net.HttpCookie:java.net.InetAddress:java.net.InetSocketAddress:java.net.InetSocketAddress$InetSocketAddressHolder:java.net.InterfaceAddress:java.net.NetworkInterface:java.net.Proxy:java.net.ServerSocket:java.net.Socket:java.net.SocketImpl:java.net.URI:java.net.URL:java.net.URLConnection:java.nio.ByteBuffer:java.nio.ByteOrder:java.nio.CharBuffer:java.nio.DoubleBuffer:java.nio.FloatBuffer:java.nio.IntBuffer:java.nio.LongBuffer:java.nio.ShortBuffer:java.nio.channels.FileChannel$MapMode:java.nio.channels.FileLock:java.nio.charset.Charset:java.nio.charset.CoderResult:java.nio.charset.CodingErrorAction:java.nio.file.attribute.FileTime:java.security.AlgorithmParameters:java.security.CodeSigner:java.security.CodeSource:java.security.MessageDigest:java.security.Permission:java.security.PermissionCollection:java.security.PrivilegedActionException:java.security.ProtectionDomain:java.security.Provider:java.security.Provider$Service:java.security.SecureRandom:java.security.SecureRandomSpi:java.security.Signature:java.security.Timestamp:java.security.cert.CertPath:java.security.spec.PSSParameterSpec:java.text.AttributedCharacterIterator$Attribute:java.text.CalendarBuilder:java.text.FieldPosition:java.text.ParsePosition:java.time.Duration:java.time.Instant:java.time.LocalDate:java.time.LocalDateTime:java.time.LocalTime:java.time.OffsetDateTime:java.time.OffsetTime:java.time.Period:java.time.ZoneId:java.time.ZoneOffset:java.time.ZonedDateTime:java.time.chrono.AbstractChronology:java.time.format.DateTimeFormatter:java.time.format.DateTimeFormatterBuilder$CompositePrinterParser:java.time.format.DateTimeFormatterBuilder$NumberPrinterParser:java.time.format.DateTimeParseContext:java.time.format.DateTimePrintContext:java.time.format.DecimalStyle:java.time.format.Parsed:java.time.temporal.ChronoField:java.time.temporal.ChronoUnit:java.time.temporal.ValueRange:java.time.zone.ZoneOffsetTransition:java.time.zone.ZoneOffsetTransitionRule:java.time.zone.ZoneRules:java.util.AbstractCollection:java.util.AbstractMap:java.util.AbstractMap$SimpleEntry:java.util.AbstractMap$SimpleImmutableEntry:java.util.BitSet:java.util.Calendar:java.util.Currency:java.util.Date:java.util.DoubleSummaryStatistics:java.util.EventObject:java.util.Formatter:java.util.HashMap$Node:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IntSummaryStatistics:java.util.Locale:java.util.LongSummaryStatistics:java.util.Optional:java.util.OptionalDouble:java.util.OptionalInt:java.util.OptionalLong:java.util.Properties:java.util.ResourceBundle$CacheKey:java.util.ServiceLoader:java.util.StringJoiner:java.util.TreeMap$Entry:java.util.UUID:java.util.Vector:java.util.WeakHashMap$Entry:java.util.concurrent.CompletableFuture:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$CollectionView:java.util.concurrent.ConcurrentHashMap$Node:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CountDownLatch:java.util.concurrent.ForkJoinPool:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue:java.util.concurrent.ThreadPoolExecutor:java.util.concurrent.atomic.AtomicBoolean:java.util.concurrent.atomic.AtomicInteger:java.util.concurrent.atomic.AtomicLong:java.util.concurrent.atomic.AtomicLongArray:java.util.concurrent.atomic.AtomicReference:java.util.concurrent.atomic.AtomicReferenceArray:java.util.concurrent.atomic.LongAdder:java.util.concurrent.locks.AbstractQueuedSynchronizer:java.util.concurrent.locks.ReentrantLock:java.util.concurrent.locks.ReentrantReadWriteLock:java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock:java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock:java.util.jar.Attributes$Name:java.util.logging.Level:java.util.regex.Matcher:java.util.regex.Pattern:java.util.zip.ZipEntry:javax.crypto.CryptoPermission:javax.naming.NamingException:javax.naming.directory.ModificationItem:javax.net.ssl.SNIHostName:javax.net.ssl.SNIServerName:javax.net.ssl.SSLEngineResult:javax.security.auth.Subject:javax.security.auth.x500.X500Principal:javax.xml.namespace.QName:sun.net.www.MessageHeader:sun.nio.fs.UnixFileStore:sun.nio.fs.UnixPath:sun.reflect.annotation.AnnotationType:sun.reflect.annotation.TypeAnnotation:sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo:sun.security.util.BitArray:sun.security.util.DerValue:sun.security.util.JarConstraintsParameters:sun.security.util.LazyCodeSourcePermissionCollection:sun.security.util.ObjectIdentifier:sun.security.x509.AVA:sun.security.x509.AlgorithmId:sun.security.x509.AuthorityInfoAccessExtension:sun.security.x509.AuthorityKeyIdentifierExtension:sun.security.x509.BasicConstraintsExtension:sun.security.x509.CRLDistributionPointsExtension:sun.security.x509.CertificateAlgorithmId:sun.security.x509.CertificateExtensions:sun.security.x509.CertificateIssuerName:sun.security.x509.CertificatePoliciesExtension:sun.security.x509.CertificateSerialNumber:sun.security.x509.CertificateSubjectName:sun.security.x509.CertificateValidity:sun.security.x509.CertificateVersion:sun.security.x509.CertificateX509Key:sun.security.x509.ExtendedKeyUsageExtension:sun.security.x509.Extension:sun.security.x509.GeneralName:sun.security.x509.GeneralNames:sun.security.x509.GeneralSubtree:sun.security.x509.GeneralSubtrees:sun.security.x509.IssuerAlternativeNameExtension:sun.security.x509.KeyIdentifier:sun.security.x509.NameConstraintsExtension:sun.security.x509.PolicyConstraintsExtension:sun.security.x509.PolicyMappingsExtension:sun.security.x509.PrivateKeyUsageExtension:sun.security.x509.RDN:sun.security.x509.SerialNumber:sun.security.x509.SubjectAlternativeNameExtension:sun.security.x509.SubjectKeyIdentifierExtension:sun.security.x509.UniqueIdentity:sun.security.x509.X500Name:sun.security.x509.X509CertImpl:sun.security.x509.X509CertInfo:sun.util.calendar.CalendarDate:sun.util.calendar.Era:sun.util.calendar.JulianCalendar$Date:sun.util.locale.BaseLocale:sun.util.locale.Extension:sun.util.locale.LocaleExtensions].toString()"
    functionUses: 3
    ICount: 8
    EdgeCount: 267
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.CharSequenceValueConverter:32"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:35"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:34"
        BranchSideFuncs:
        - "toString()"
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:35,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyCodecUtil].validateHeaderValue(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyCodecUtil"
    linkageType: ""
    functionLinenumber: 318
    functionLinenumberEnd: 328
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyCodecUtil:320"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyCodecUtil:327"
        BranchSideFuncs:
        - "charAt(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyCodecUtil:326"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyCodecUtil:322"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyCodecUtil:319"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyCodecUtil:318"
        BranchSideFuncs:
        - "checkNotNull(java.lang.Object,java.lang.String)"
        - "length()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyCodecUtil:319,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyCodecUtil:320,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.spdy.SpdyCodecUtil:321,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyCodecUtil:323,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine$1].<init>(io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector)"
    functionSourceFile: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine$1"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine$1:122,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine$1].select(java.util.List)"
    functionSourceFile: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector].select(java.util.List)"
    - "[io.netty.handler.ssl.SslUtils].toSSLHandshakeException(java.lang.Throwable)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine$1:126,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector].select(java.util.List)"
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine$1:128,1"
      Dst: "[io.netty.handler.ssl.SslUtils].toSSLHandshakeException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslUtils].toSSLHandshakeException(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 250
    functionLinenumberEnd: 256
    functionDepth: 0
    returnType: "javax.net.ssl.SSLHandshakeException"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    - "[java.io.InvalidClassException].getMessage()"
    - "[java.nio.file.InvalidPathException].getMessage()"
    - "[java.lang.Throwable].getMessage()"
    - "[sun.nio.fs.UnixException].getMessage()"
    - "[java.net.URISyntaxException].getMessage()"
    - "[java.util.regex.PatternSyntaxException].getMessage()"
    - "[java.nio.file.FileSystemException].getMessage()"
    - "[java.security.cert.CertificateRevokedException].getMessage()"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:251"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:255"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslUtils:254"
        BranchSideFuncs:
        - "initCause(java.lang.Throwable)"
        - "<init>(java.lang.String)"
        - "getMessage()"
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:255,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.handler.ssl.SslUtils:255,1"
      Dst: "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslUtils:255,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine$1].unsupported()"
    functionSourceFile: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector].unsupported()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine$1:134,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector].unsupported()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:42,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoder].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:52,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].maxFramePayloadLength()"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:63,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:64,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:64,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].maxFramePayloadLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 90
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder].decodeBinaryFrame(io.netty.channel.ChannelHandlerContext,byte,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder].decodeTextFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:76"
        BranchSideFuncs:
        - "actualReadableBytes()"
        - "skipBytes(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:75"
        BranchSideFuncs:
        - "readByte()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:82"
        BranchSideFuncs:
        - "decodeTextFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:86"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:89"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:71,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:71,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:76,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:80,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder].decodeBinaryFrame(io.netty.channel.ChannelHandlerContext,byte,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:83,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder].decodeTextFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:87,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder].decodeBinaryFrame(io.netty.channel.ChannelHandlerContext,byte,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 115
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "byte"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.TooLongFrameException].<init>()"
    - "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBufUtil].readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    functionUses: 1
    ICount: 45
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:99"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:101"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:103"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:107"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:95"
        BranchSideFuncs:
        - "readByte()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:109"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:113"
        BranchSideFuncs:
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
        - "buffer(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:112"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf)"
        - "alloc()"
        - "readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:109"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:113"
        BranchSideFuncs:
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
        - "buffer(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:112"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf)"
        - "alloc()"
        - "readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:96,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:100,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:111,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:111,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:111,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:113,1"
      Dst: "[io.netty.buffer.ByteBufUtil].readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:114,1"
      Dst: "[io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.TooLongFrameException].<init>()"
    functionSourceFile: "io.netty.handler.codec.TooLongFrameException"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>()"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.TooLongFrameException:29,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DecoderException].<init>()"
    functionSourceFile: "io.netty.handler.codec.DecoderException"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DecoderException:28,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CodecException].<init>()"
    functionSourceFile: "io.netty.handler.codec.CodecException"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CodecException:28,1"
      Dst: "[java.lang.RuntimeException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:125,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 697
    functionLinenumberEnd: 709
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 5
    ICount: 14
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:705"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:698"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.buffer.ByteBufUtil:697"
        BranchSideFuncs:
        - "readBytes(io.netty.buffer.ByteBuf)"
        - "buffer(int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:705"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:708"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.buffer.ByteBufUtil:707"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:699,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.buffer.ByteBufUtil:701,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.ByteBufUtil:706,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame:40,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder].decodeTextFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 147
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.AbstractByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.SwappedByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.WrappedByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.EmptyByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].indexOf(int,int,byte)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].indexOf(int,int,byte)"
    - "[io.netty.handler.codec.TooLongFrameException].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufUtil].readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].indexOf(int,int,byte)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 41
    EdgeCount: 62
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:121"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:131"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:123"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:127"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:137"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:136"
        BranchSideFuncs:
        - "readerIndex()"
        - "writerIndex()"
        - "alloc()"
        - "indexOf(int,int,byte)"
        - "skipBytes(int)"
        - "readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:141"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:146"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
        - "release()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:145"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:118,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:119,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:120,1"
      Dst: "[io.netty.buffer.ByteBuf].indexOf(int,int,byte)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:125,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:137,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:137,1"
      Dst: "[io.netty.buffer.ByteBufUtil].readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:138,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:140,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:142,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:143,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder:146,1"
      Dst: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:51,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1"
    linkageType: ""
    functionLinenumber: 529
    functionLinenumberEnd: 531
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1:530,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1"
    linkageType: ""
    functionLinenumber: 532
    functionLinenumberEnd: 538
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$000(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.handler.codec.http2.Http2LifecycleManager].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    functionUses: 1
    ICount: 9
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1:534"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1:537"
        BranchSideFuncs:
        - "onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
        - "access$000(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1:536"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1:533,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1:535,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$000(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1:535,1"
      Dst: "[io.netty.handler.codec.http2.Http2LifecycleManager].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$000(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2LifecycleManager"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1"
    linkageType: ""
    functionLinenumber: 529
    functionLinenumberEnd: 531
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1:530,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlDocumentEnd].<init>()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlDocumentEnd"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlDocumentEnd:25,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpContentCompressor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory:395,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory].createEncoder()"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory"
    linkageType: ""
    functionLinenumber: 399
    functionLinenumberEnd: 402
    functionDepth: 7
    returnType: "io.netty.handler.codec.MessageToByteEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibEncoder(io.netty.handler.codec.compression.ZlibWrapper,int,int,int)"
    - "[io.netty.handler.codec.http.HttpContentCompressor].access$400(io.netty.handler.codec.http.HttpContentCompressor)"
    - "[io.netty.handler.codec.compression.DeflateOptions].compressionLevel()"
    - "[io.netty.handler.codec.compression.DeflateOptions].memLevel()"
    - "[io.netty.handler.codec.compression.DeflateOptions].windowBits()"
    functionUses: 1
    ICount: 13
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory:400,1"
      Dst: "[io.netty.handler.codec.http.HttpContentCompressor].access$400(io.netty.handler.codec.http.HttpContentCompressor)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory:400,1"
      Dst: "[io.netty.handler.codec.compression.DeflateOptions].compressionLevel()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory:401,1"
      Dst: "[io.netty.handler.codec.compression.DeflateOptions].windowBits()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory:401,1"
      Dst: "[io.netty.handler.codec.compression.DeflateOptions].memLevel()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory:399,1"
      Dst: "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibEncoder(io.netty.handler.codec.compression.ZlibWrapper,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor].access$400(io.netty.handler.codec.http.HttpContentCompressor)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.GzipOptions"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpContentCompressor"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.DeflateOptions].compressionLevel()"
    functionSourceFile: "io.netty.handler.codec.compression.DeflateOptions"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.DeflateOptions].windowBits()"
    functionSourceFile: "io.netty.handler.codec.compression.DeflateOptions"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.DeflateOptions].memLevel()"
    functionSourceFile: "io.netty.handler.codec.compression.DeflateOptions"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibEncoder(io.netty.handler.codec.compression.ZlibWrapper,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibCodecFactory"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 84
    functionDepth: 6
    returnType: "io.netty.handler.codec.compression.ZlibEncoder"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.handler.codec.compression.JZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int,int,int)"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    functionUses: 7
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:80"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.compression.ZlibWrapper,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:80"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.compression.ZlibWrapper,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:80"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.compression.ZlibWrapper,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:82"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:79,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:81,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int,int,int)"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:83,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 361
    functionLinenumberEnd: 363
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].javaVersion()"
    functionUses: 60
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:362,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].javaVersion()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].javaVersion()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 987
    functionLinenumberEnd: 989
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 142
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.jcraft.jzlib.Deflater].<init>()"
    - "[io.netty.handler.codec.compression.ZlibEncoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.compression.ZlibUtil].convertWrapperType(io.netty.handler.codec.compression.ZlibWrapper)"
    - "[io.netty.handler.codec.compression.ZlibUtil].fail(com.jcraft.jzlib.Deflater,java.lang.String,int)"
    - "[io.netty.handler.codec.compression.ZlibUtil].wrapperOverhead(io.netty.handler.codec.compression.ZlibWrapper)"
    - "[com.jcraft.jzlib.Deflater].init(int,int,int,com.jcraft.jzlib.JZlib$WrapperType)"
    functionUses: 1
    ICount: 34
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JZlibEncoder:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:135"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:134"
        BranchSideFuncs:
        - "convertWrapperType(io.netty.handler.codec.compression.ZlibWrapper)"
    - Branch String: "io.netty.handler.codec.compression.JZlibEncoder:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:140"
        BranchSideFuncs:
        - "fail(com.jcraft.jzlib.Deflater,java.lang.String,int)"
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:139"
        BranchSideFuncs:
        - "wrapperOverhead(io.netty.handler.codec.compression.ZlibWrapper)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:121,1"
      Dst: "[io.netty.handler.codec.compression.ZlibEncoder].<init>()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:39,1"
      Dst: "[com.jcraft.jzlib.Deflater].<init>()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:122,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:125,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:128,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:128,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:128,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:128,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:128,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:135,1"
      Dst: "[io.netty.handler.codec.compression.ZlibUtil].convertWrapperType(io.netty.handler.codec.compression.ZlibWrapper)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:133,1"
      Dst: "[com.jcraft.jzlib.Deflater].init(int,int,int,com.jcraft.jzlib.JZlib$WrapperType)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:137,1"
      Dst: "[io.netty.handler.codec.compression.ZlibUtil].fail(com.jcraft.jzlib.Deflater,java.lang.String,int)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:140,1"
      Dst: "[io.netty.handler.codec.compression.ZlibUtil].wrapperOverhead(io.netty.handler.codec.compression.ZlibWrapper)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ObjectUtil"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 191
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 5
    ICount: 21
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ObjectUtil:187"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectUtil:188"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.util.internal.ObjectUtil:187"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
    - Branch String: "io.netty.util.internal.ObjectUtil:187"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectUtil:190"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.util.internal.ObjectUtil:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectUtil:188,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.ObjectUtil:188,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:188,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.internal.ObjectUtil:188,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.ObjectUtil:188,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.ZlibUtil].convertWrapperType(io.netty.handler.codec.compression.ZlibWrapper)"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibUtil"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "com.jcraft.jzlib.JZlib$WrapperType"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.Error].<init>()"
    functionUses: 2
    ICount: 17
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibUtil:45,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.compression.ZlibUtil:59,1"
      Dst: "[java.lang.Error].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.compression.ZlibUtil].fail(com.jcraft.jzlib.Deflater,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibUtil"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.jcraft.jzlib.Deflater"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ZlibUtil].deflaterException(com.jcraft.jzlib.Deflater,java.lang.String,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibUtil:32,1"
      Dst: "[io.netty.handler.codec.compression.ZlibUtil].deflaterException(com.jcraft.jzlib.Deflater,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZlibUtil].deflaterException(com.jcraft.jzlib.Deflater,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibUtil"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 3
    returnType: "io.netty.handler.codec.compression.CompressionException"
    argCount: 3
    argTypes:
    - "com.jcraft.jzlib.Deflater"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.CompressionException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 2
    ICount: 24
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZlibUtil:40"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibUtil:39"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibUtil:40,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.ZlibUtil:40,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.ZlibUtil:40,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.compression.ZlibUtil:40,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.compression.ZlibUtil:40,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.ZlibUtil:40,1"
      Dst: "[io.netty.handler.codec.compression.CompressionException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.CompressionException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.compression.CompressionException"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.CompressionException:44,1"
      Dst: "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.EncoderException"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    functionUses: 15
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EncoderException:42,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.CodecException"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CodecException:42,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZlibUtil].wrapperOverhead(io.netty.handler.codec.compression.ZlibWrapper)"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibUtil"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.Error].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibUtil:66,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.compression.ZlibUtil:78,1"
      Dst: "[java.lang.Error].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibEncoder"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 140
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.zip.CRC32].<init>()"
    - "[io.netty.handler.codec.compression.ZlibEncoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.zip.Deflater].<init>(int,boolean)"
    functionUses: 1
    ICount: 32
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JdkZlibEncoder:131"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibEncoder:137"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibEncoder:136"
        BranchSideFuncs:
        - "<init>(int,boolean)"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibEncoder:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibEncoder:137"
        BranchSideFuncs:
        - "<init>(int,boolean)"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibEncoder:136"
        BranchSideFuncs:
        - "<init>(int,boolean)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:127,1"
      Dst: "[io.netty.handler.codec.compression.ZlibEncoder].<init>()"
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:62,1"
      Dst: "[java.util.zip.CRC32].<init>()"
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:128,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:129,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:132,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:132,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:132,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:132,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:132,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:138,1"
      Dst: "[java.util.zip.Deflater].<init>(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor,io.netty.handler.codec.http.HttpContentCompressor$1)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpContentCompressor"
    - "io.netty.handler.codec.http.HttpContentCompressor$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory:395,1"
      Dst: "[io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsCache].<init>()"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.NoopDnsCache:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsCache].clear()"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsCache"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsCache].clear(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsCache].get(java.lang.String,io.netty.handler.codec.dns.DnsRecord[])"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsCache"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "java.util.List<? extends DnsCacheEntry>"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptyList()"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.NoopDnsCache:49,1"
      Dst: "[java.util.Collections].emptyList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsCache].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],java.net.InetAddress,long,io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsCache"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 1
    returnType: "io.netty.resolver.dns.DnsCacheEntry"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "java.net.InetAddress"
    - "long"
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].<init>(java.net.InetAddress)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.NoopDnsCache:55,1"
      Dst: "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].<init>(java.net.InetAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].<init>(java.net.InetAddress)"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry:71,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsCache].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],java.lang.Throwable,io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsCache"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsCacheEntry"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "java.lang.Throwable"
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsCache].toString()"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsCache"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getSimpleName()"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.NoopDnsCache:65,1"
      Dst: "[java.lang.Class].getSimpleName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$11].<init>(java.net.NetworkInterface)"
    functionSourceFile: "io.netty.util.internal.SocketUtils$11"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.NetworkInterface"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$11:188,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$11].run()"
    functionSourceFile: "io.netty.util.internal.SocketUtils$11"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.NetworkInterface].getInetAddresses()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$11:191,1"
      Dst: "[java.net.NetworkInterface].getInetAddresses()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$6].<init>()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$6"
    linkageType: ""
    functionLinenumber: 337
    functionLinenumberEnd: 339
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$6:338,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$6].run()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$6"
    linkageType: ""
    functionLinenumber: 342
    functionLinenumberEnd: 379
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    - "[io.netty.util.internal.PlatformDependent0].getSystemClassLoader()"
    - "[io.netty.util.internal.PlatformDependent0].javaVersion()"
    - "[io.netty.util.internal.PlatformDependent0].access$000()"
    - "[java.lang.Class].getDeclaredField(java.lang.String)"
    - "[java.lang.reflect.Field].getType()"
    - "[sun.misc.Unsafe].staticFieldOffset(java.lang.reflect.Field)"
    - "[sun.misc.Unsafe].staticFieldBase(java.lang.reflect.Field)"
    - "[sun.misc.Unsafe].getBoolean(java.lang.Object,long)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - "[io.netty.util.internal.ReflectionUtil].trySetAccessible(java.lang.reflect.AccessibleObject,boolean)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    functionUses: 4
    ICount: 43
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0$6:345"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0$6:362"
        BranchSideFuncs:
        - "getDeclaredMethod(java.lang.String,java.lang.Class[])"
        - "trySetAccessible(java.lang.reflect.AccessibleObject,boolean)"
    - Branch String: "io.netty.util.internal.PlatformDependent0$6:345"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0$6:362"
        BranchSideFuncs:
        - "getDeclaredMethod(java.lang.String,java.lang.Class[])"
        - "trySetAccessible(java.lang.reflect.AccessibleObject,boolean)"
    - Branch String: "io.netty.util.internal.PlatformDependent0$6:347"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0$6:346"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0$6:352"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0$6:361"
        BranchSideFuncs:
        - "valueOf(boolean)"
        - "staticFieldBase(java.lang.reflect.Field)"
        - "getBoolean(java.lang.Object,long)"
        - "staticFieldOffset(java.lang.reflect.Field)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0$6:360"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0$6:365"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0$6:368"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent0$6:367"
        BranchSideFuncs:
        - "invoke(java.lang.Object,java.lang.Object[])"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$6:343,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getSystemClassLoader()"
    - Src: "io.netty.util.internal.PlatformDependent0$6:343,1"
      Dst: "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    - Src: "io.netty.util.internal.PlatformDependent0$6:344,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].javaVersion()"
    - Src: "io.netty.util.internal.PlatformDependent0$6:345,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].access$000()"
    - Src: "io.netty.util.internal.PlatformDependent0$6:351,1"
      Dst: "[java.lang.Class].getDeclaredField(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent0$6:352,1"
      Dst: "[java.lang.reflect.Field].getType()"
    - Src: "io.netty.util.internal.PlatformDependent0$6:353,1"
      Dst: "[sun.misc.Unsafe].staticFieldOffset(java.lang.reflect.Field)"
    - Src: "io.netty.util.internal.PlatformDependent0$6:354,1"
      Dst: "[sun.misc.Unsafe].staticFieldBase(java.lang.reflect.Field)"
    - Src: "io.netty.util.internal.PlatformDependent0$6:355,1"
      Dst: "[sun.misc.Unsafe].getBoolean(java.lang.Object,long)"
    - Src: "io.netty.util.internal.PlatformDependent0$6:355,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.util.internal.PlatformDependent0$6:363,1"
      Dst: "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - Src: "io.netty.util.internal.PlatformDependent0$6:364,1"
      Dst: "[io.netty.util.internal.ReflectionUtil].trySetAccessible(java.lang.reflect.AccessibleObject,boolean)"
    - Src: "io.netty.util.internal.PlatformDependent0$6:368,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].getSystemClassLoader()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 928
    functionLinenumberEnd: 933
    functionDepth: 1
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getSecurityManager()"
    - "[java.lang.ClassLoader].getSystemClassLoader()"
    - "[io.netty.util.internal.PlatformDependent0$12].<init>()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[io.netty.util.internal.PlatformDependent0$12].run()"
    functionUses: 2
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:929"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:932"
        BranchSideFuncs:
        - "getSystemClassLoader()"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:931"
        BranchSideFuncs:
        - "doPrivileged(java.security.PrivilegedAction)"
        - "run()"
        - "<init>()"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:929,1"
      Dst: "[java.lang.System].getSecurityManager()"
    - Src: "io.netty.util.internal.PlatformDependent0:930,1"
      Dst: "[java.lang.ClassLoader].getSystemClassLoader()"
    - Src: "io.netty.util.internal.PlatformDependent0:932,1"
      Dst: "[io.netty.util.internal.PlatformDependent0$12].<init>()"
    - Src: "io.netty.util.internal.PlatformDependent0:932,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$12].<init>()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$12"
    linkageType: ""
    functionLinenumber: 931
    functionLinenumberEnd: 933
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$12:932,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].access$000()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].unsafeStaticFieldOffsetSupported()"
    functionUses: 1
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:37,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].unsafeStaticFieldOffsetSupported()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].unsafeStaticFieldOffsetSupported()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 486
    functionLinenumberEnd: 488
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:487"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:486"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.ReflectionUtil].trySetAccessible(java.lang.reflect.AccessibleObject,boolean)"
    functionSourceFile: "io.netty.util.internal.ReflectionUtil"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 40
    functionDepth: 1
    returnType: "java.lang.Throwable"
    argCount: 2
    argTypes:
    - "java.lang.reflect.AccessibleObject"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].isExplicitTryReflectionSetAccessible()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[java.lang.reflect.AccessibleObject:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method].setAccessible(boolean)"
    - "[io.netty.util.internal.ReflectionUtil].handleInaccessibleObjectException(java.lang.RuntimeException)"
    - "[java.lang.reflect.AccessibleObject].setAccessible(boolean)"
    functionUses: 6
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ReflectionUtil:30"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ReflectionUtil:34"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.ReflectionUtil:33"
        BranchSideFuncs:
        - "setAccessible(boolean)"
    - Branch String: "io.netty.util.internal.ReflectionUtil:30"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ReflectionUtil:34"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.ReflectionUtil:33"
        BranchSideFuncs:
        - "setAccessible(boolean)"
    Callsites:
    - Src: "io.netty.util.internal.ReflectionUtil:30,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].isExplicitTryReflectionSetAccessible()"
    - Src: "io.netty.util.internal.ReflectionUtil:31,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.ReflectionUtil:34,1"
      Dst: "[java.lang.reflect.AccessibleObject].setAccessible(boolean)"
    - Src: "io.netty.util.internal.ReflectionUtil:39,1"
      Dst: "[io.netty.util.internal.ReflectionUtil].handleInaccessibleObjectException(java.lang.RuntimeException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].isExplicitTryReflectionSetAccessible()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 983
    functionLinenumberEnd: 985
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ReflectionUtil].handleInaccessibleObjectException(java.lang.RuntimeException)"
    functionSourceFile: "io.netty.util.internal.ReflectionUtil"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "java.lang.RuntimeException"
    argCount: 1
    argTypes:
    - "java.lang.RuntimeException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ReflectionUtil:47"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ReflectionUtil:50"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.ReflectionUtil:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ReflectionUtil:47,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.util.internal.ReflectionUtil:47,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.util.internal.ReflectionUtil:47,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.InflightNameResolver].<init>(io.netty.util.concurrent.EventExecutor,io.netty.resolver.NameResolver,java.util.concurrent.ConcurrentMap,java.util.concurrent.ConcurrentMap)"
    functionSourceFile: "io.netty.resolver.dns.InflightNameResolver"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 48
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    - "io.netty.resolver.NameResolver"
    - "java.util.concurrent.ConcurrentMap"
    - "java.util.concurrent.ConcurrentMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 19
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.InflightNameResolver:41,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.InflightNameResolver:43,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.InflightNameResolver].resolve(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.InflightNameResolver"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future<T>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.AbstractEventExecutor].newPromise()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].newPromise()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].newPromise()"
    - "[io.netty.resolver.dns.InflightNameResolver].resolve(java.lang.String,io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    functionUses: 2
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.InflightNameResolver:51,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.resolver.dns.InflightNameResolver:51,1"
      Dst: "[io.netty.resolver.dns.InflightNameResolver].resolve(java.lang.String,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.InflightNameResolver].resolveAll(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.InflightNameResolver"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future<List<T>>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.AbstractEventExecutor].newPromise()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].newPromise()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].newPromise()"
    - "[io.netty.resolver.dns.InflightNameResolver].resolveAll(java.lang.String,io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    functionUses: 3
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.InflightNameResolver:56,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.resolver.dns.InflightNameResolver:56,1"
      Dst: "[io.netty.resolver.dns.InflightNameResolver].resolveAll(java.lang.String,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.InflightNameResolver].close()"
    functionSourceFile: "io.netty.resolver.dns.InflightNameResolver"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.InflightNameResolver].close()"
    - "[io.netty.resolver.RoundRobinInetAddressResolver].close()"
    - "[io.netty.resolver.dns.DnsNameResolver].close()"
    - "[io.netty.resolver.SimpleNameResolver].close()"
    - "[io.netty.resolver.NameResolver].close()"
    functionUses: 4
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.InflightNameResolver:61,1"
      Dst: "[io.netty.resolver.NameResolver].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.InflightNameResolver].resolve(java.lang.String,io.netty.util.concurrent.Promise<T>)"
    functionSourceFile: "io.netty.resolver.dns.InflightNameResolver"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Promise<T>"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.util.concurrent.Promise<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.InflightNameResolver].resolve(java.util.concurrent.ConcurrentMap,java.lang.String,io.netty.util.concurrent.Promise,boolean)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.InflightNameResolver:66,1"
      Dst: "[io.netty.resolver.dns.InflightNameResolver].resolve(java.util.concurrent.ConcurrentMap,java.lang.String,io.netty.util.concurrent.Promise,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.InflightNameResolver].resolveAll(java.lang.String,io.netty.util.concurrent.Promise<List<T>>)"
    functionSourceFile: "io.netty.resolver.dns.InflightNameResolver"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Promise<List<T>>"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.util.concurrent.Promise<List<T>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.InflightNameResolver].resolve(java.util.concurrent.ConcurrentMap,java.lang.String,io.netty.util.concurrent.Promise,boolean)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.InflightNameResolver:71,1"
      Dst: "[io.netty.resolver.dns.InflightNameResolver].resolve(java.util.concurrent.ConcurrentMap,java.lang.String,io.netty.util.concurrent.Promise,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.InflightNameResolver].resolve(java.util.concurrent.ConcurrentMap<String,Promise<U>>,java.lang.String,io.netty.util.concurrent.Promise<U>,boolean)"
    functionSourceFile: "io.netty.resolver.dns.InflightNameResolver"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 117
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Promise<U>"
    argCount: 4
    argTypes:
    - "java.util.concurrent.ConcurrentMap<String,Promise<U>>"
    - "java.lang.String"
    - "io.netty.util.concurrent.Promise<U>"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.resolver.dns.InflightNameResolver].transferResult(io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    - "[io.netty.resolver.dns.InflightNameResolver$1].<init>(io.netty.resolver.dns.InflightNameResolver,io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.resolver.SimpleNameResolver].resolveAll(java.lang.String,io.netty.util.concurrent.Promise)"
    - "[io.netty.resolver.dns.InflightNameResolver].resolveAll(java.lang.String,io.netty.util.concurrent.Promise)"
    - "[io.netty.resolver.dns.InflightNameResolver].resolve(java.lang.String,io.netty.util.concurrent.Promise)"
    - "[io.netty.resolver.SimpleNameResolver].resolve(java.lang.String,io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.VoidChannelPromise:java.util.concurrent.ConcurrentHashMap].remove(java.lang.Object)"
    - "[io.netty.resolver.dns.InflightNameResolver$2].<init>(io.netty.resolver.dns.InflightNameResolver,java.util.concurrent.ConcurrentMap,java.lang.String)"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.resolver.NameResolver].resolveAll(java.lang.String,io.netty.util.concurrent.Promise)"
    - "[io.netty.resolver.NameResolver].resolve(java.lang.String,io.netty.util.concurrent.Promise)"
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 2
    ICount: 40
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.InflightNameResolver:79"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.InflightNameResolver:92"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.InflightNameResolver:81"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.InflightNameResolver:84"
        BranchSideFuncs:
        - "transferResult(io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
      - BranchSide: "io.netty.resolver.dns.InflightNameResolver:83"
        BranchSideFuncs:
        - "<init>(io.netty.resolver.dns.InflightNameResolver,io.netty.util.concurrent.Promise)"
    - Branch String: "io.netty.resolver.dns.InflightNameResolver:93"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.InflightNameResolver:99"
        BranchSideFuncs:
        - "resolve(java.lang.String,io.netty.util.concurrent.Promise)"
    - Branch String: "io.netty.resolver.dns.InflightNameResolver:103"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.InflightNameResolver:106"
        BranchSideFuncs:
        - "remove(java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.InflightNameResolver:105"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.resolver.dns.InflightNameResolver,java.util.concurrent.ConcurrentMap,java.lang.String)"
    - Branch String: "io.netty.resolver.dns.InflightNameResolver:103"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.InflightNameResolver:106"
        BranchSideFuncs:
        - "remove(java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.InflightNameResolver:105"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.resolver.dns.InflightNameResolver,java.util.concurrent.ConcurrentMap,java.lang.String)"
    Callsites:
    - Src: "io.netty.resolver.dns.InflightNameResolver:78,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.resolver.dns.InflightNameResolver:81,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.resolver.dns.InflightNameResolver:82,1"
      Dst: "[io.netty.resolver.dns.InflightNameResolver].transferResult(io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.resolver.dns.InflightNameResolver:84,1"
      Dst: "[io.netty.resolver.dns.InflightNameResolver$1].<init>(io.netty.resolver.dns.InflightNameResolver,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.resolver.dns.InflightNameResolver:84,1"
      Dst: "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.resolver.dns.InflightNameResolver:96,1"
      Dst: "[io.netty.resolver.NameResolver].resolveAll(java.lang.String,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.resolver.dns.InflightNameResolver:100,1"
      Dst: "[io.netty.resolver.NameResolver].resolve(java.lang.String,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.resolver.dns.InflightNameResolver:104,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "io.netty.resolver.dns.InflightNameResolver:106,1"
      Dst: "[io.netty.resolver.dns.InflightNameResolver$2].<init>(io.netty.resolver.dns.InflightNameResolver,java.util.concurrent.ConcurrentMap,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 5
  - functionName: "[io.netty.resolver.dns.InflightNameResolver$1].<init>(io.netty.resolver.dns.InflightNameResolver,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.resolver.dns.InflightNameResolver$1"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.resolver.dns.InflightNameResolver"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.InflightNameResolver$1:84,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.InflightNameResolver$2].<init>(io.netty.resolver.dns.InflightNameResolver,java.util.concurrent.ConcurrentMap,java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.InflightNameResolver$2"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.resolver.dns.InflightNameResolver"
    - "java.util.concurrent.ConcurrentMap"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.InflightNameResolver$2:106,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.InflightNameResolver].transferResult(io.netty.util.concurrent.Future<T>,io.netty.util.concurrent.Promise<T>)"
    functionSourceFile: "io.netty.resolver.dns.InflightNameResolver"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 126
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.Future<T>"
    - "io.netty.util.concurrent.Promise<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].trySuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].trySuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].trySuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture:io.netty.channel.SucceededChannelFuture:io.netty.channel.VoidChannelPromise:io.netty.channel.group.VoidChannelGroupFuture:io.netty.util.concurrent.FailedFuture:io.netty.util.concurrent.PromiseTask:io.netty.util.concurrent.SucceededFuture].cause()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].getNow()"
    - "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 2
    ICount: 10
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.InflightNameResolver:120"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.InflightNameResolver:123"
        BranchSideFuncs:
        - "trySuccess(java.lang.Object)"
        - "getNow()"
      - BranchSide: "io.netty.resolver.dns.InflightNameResolver:122"
        BranchSideFuncs:
        - "tryFailure(java.lang.Throwable)"
        - "cause()"
    Callsites:
    - Src: "io.netty.resolver.dns.InflightNameResolver:120,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.resolver.dns.InflightNameResolver:121,1"
      Dst: "[io.netty.util.concurrent.Future].getNow()"
    - Src: "io.netty.resolver.dns.InflightNameResolver:121,1"
      Dst: "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - Src: "io.netty.resolver.dns.InflightNameResolver:123,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.resolver.dns.InflightNameResolver:123,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.InflightNameResolver].toString()"
    functionSourceFile: "io.netty.resolver.dns.InflightNameResolver"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 11
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.InflightNameResolver:129,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.dns.InflightNameResolver:129,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.resolver.dns.InflightNameResolver:129,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.dns.InflightNameResolver:129,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.resolver.dns.InflightNameResolver:129,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.resolver.dns.InflightNameResolver:129,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 311
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    functionUses: 119
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:307"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:310"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:309"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Class)"
        - "getClass()"
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:310,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.util.internal.StringUtil:310,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.InflightNameResolver].access$000(io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.resolver.dns.InflightNameResolver"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.Future"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.InflightNameResolver].transferResult(io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.InflightNameResolver:32,1"
      Dst: "[io.netty.resolver.dns.InflightNameResolver].transferResult(io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2FrameListener,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:54,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2FrameListener,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2FrameListener,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].<init>(io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.Http2Connection].newKey()"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$1].<init>(io.netty.handler.codec.http2.DelegatingDecompressorFrameListener)"
    - "[io.netty.handler.codec.http2.Http2Connection].addListener(io.netty.handler.codec.http2.Http2Connection$Listener)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:59,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].<init>(io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:63,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].newKey()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:64,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$1].<init>(io.netty.handler.codec.http2.DelegatingDecompressorFrameListener)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:64,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].addListener(io.netty.handler.codec.http2.Http2Connection$Listener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 143
    functionDepth: 8
    returnType: "int"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].decompressor(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor].decompressor()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor].incrementCompressedBytes(int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.channel.embedded.EmbeddedChannel].writeInbound(java.lang.Object[])"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].nextReadableBuf(io.netty.channel.embedded.EmbeddedChannel)"
    - "[io.netty.channel.embedded.EmbeddedChannel].finish()"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor].incrementDecompressedBytes(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].flowController()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].local()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].consumeBytes(io.netty.handler.codec.http2.Http2Stream,int)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].consumeBytes(io.netty.handler.codec.http2.Http2Stream,int)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.handler.codec.http2.DefaultHttp2Connection].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].retain()"
    - "[io.netty.handler.codec.http2.Http2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController()"
    - "[io.netty.handler.codec.http2.Http2LocalFlowController].consumeBytes(io.netty.handler.codec.http2.Http2Stream,int)"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    functionUses: 9
    ICount: 87
    EdgeCount: 108
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:80"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:84"
        BranchSideFuncs:
        - "decompressor()"
        - "incrementCompressedBytes(int)"
        - "writeInbound(java.lang.Object[])"
        - "retain()"
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:95"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:94"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:95"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:94"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:95"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:94"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:107"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:106"
        BranchSideFuncs:
        - "local()"
        - "flowController()"
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:-1"
        BranchSideFuncs:
        - "finish()"
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:-1"
        BranchSideFuncs:
        - "finish()"
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:117"
        BranchSideFuncs:
        - "nextReadableBuf(io.netty.channel.embedded.EmbeddedChannel)"
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:116"
        BranchSideFuncs:
        - "onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
        - "consumeBytes(io.netty.handler.codec.http2.Http2Stream,int)"
        - "readableBytes()"
        - "incrementDecompressedBytes(int)"
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:117"
        BranchSideFuncs:
        - "nextReadableBuf(io.netty.channel.embedded.EmbeddedChannel)"
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:116"
        BranchSideFuncs:
        - "onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
        - "consumeBytes(io.netty.handler.codec.http2.Http2Stream,int)"
        - "readableBytes()"
        - "incrementDecompressedBytes(int)"
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:114"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:113"
        BranchSideFuncs:
        - "decompressor()"
        - "incrementCompressedBytes(int)"
        - "writeInbound(java.lang.Object[])"
        - "local()"
        - "nextReadableBuf(io.netty.channel.embedded.EmbeddedChannel)"
        - "flowController()"
        - "finish()"
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
        - "onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
        - "retain()"
        - "consumeBytes(io.netty.handler.codec.http2.Http2Stream,int)"
        - "readableBytes()"
        - "incrementDecompressedBytes(int)"
        - "release()"
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:112"
        BranchSideFuncs:
        - "nextReadableBuf(io.netty.channel.embedded.EmbeddedChannel)"
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:123"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:127"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:78,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:79,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].decompressor(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:82,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:85,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor].decompressor()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:86,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:87,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor].incrementCompressedBytes(int)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:90,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:90,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].writeInbound(java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:91,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].nextReadableBuf(io.netty.channel.embedded.EmbeddedChannel)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:92,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].finish()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:103,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor].incrementDecompressedBytes(int)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:107,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].local()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:107,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:121,1"
      Dst: "[io.netty.handler.codec.http2.Http2LocalFlowController].consumeBytes(io.netty.handler.codec.http2.Http2Stream,int)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:128,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:141,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:142,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:141,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 28
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].decompressor(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener"
    linkageType: ""
    functionLinenumber: 256
    functionLinenumberEnd: 258
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:257"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:256"
        BranchSideFuncs:
        - "getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:257,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor].decompressor()"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor"
    linkageType: ""
    functionLinenumber: 380
    functionLinenumberEnd: 382
    functionDepth: 0
    returnType: "io.netty.channel.embedded.EmbeddedChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor].incrementCompressedBytes(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor"
    linkageType: ""
    functionLinenumber: 387
    functionLinenumberEnd: 391
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:388"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:389"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:388"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:388"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:389"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:388"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:388,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].writeInbound(java.lang.Object[])"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 336
    functionLinenumberEnd: 349
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].ensureOpen()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isNotEmpty(java.util.Queue)"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.embedded.EmbeddedChannel].flushInbound(boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel].voidPromise()"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    functionUses: 4
    ICount: 21
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:338"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:342"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:341"
        BranchSideFuncs:
        - "pipeline()"
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:343"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:346"
        BranchSideFuncs:
        - "flushInbound(boolean,io.netty.channel.ChannelPromise)"
        - "isNotEmpty(java.util.Queue)"
        - "voidPromise()"
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:337,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].ensureOpen()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:339,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].isNotEmpty(java.util.Queue)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:342,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:344,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:347,1"
      Dst: "[io.netty.channel.AbstractChannel].voidPromise()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:347,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].flushInbound(boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].ensureOpen()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 730
    functionLinenumberEnd: 735
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].checkOpen(boolean)"
    - "[io.netty.channel.embedded.EmbeddedChannel].checkException()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:731"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:734"
        BranchSideFuncs:
        - "checkException()"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:733"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:731,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].checkOpen(boolean)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:732,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].checkException()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].checkOpen(boolean)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 708
    functionLinenumberEnd: 717
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].isOpen()"
    - "[java.nio.channels.ClosedChannelException].<init>()"
    - "[io.netty.channel.embedded.EmbeddedChannel].recordException(java.lang.Throwable)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:709"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:716"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:715"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:710"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:713"
        BranchSideFuncs:
        - "<init>()"
        - "recordException(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:712"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:709,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].isOpen()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:711,1"
      Dst: "[java.nio.channels.ClosedChannelException].<init>()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:711,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].recordException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].isOpen()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 260
    functionLinenumberEnd: 262
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:261"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:260"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].recordException(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 641
    functionLinenumberEnd: 650
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 5
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:642"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:645"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:644"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:645,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].checkException()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 700
    functionLinenumberEnd: 703
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].checkException(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel].voidPromise()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:701,1"
      Dst: "[io.netty.channel.AbstractChannel].voidPromise()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:701,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].checkException(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].checkException(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 682
    functionLinenumberEnd: 695
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isVoid()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].isVoid()"
    - "[io.netty.channel.VoidChannelPromise].isVoid()"
    - "[io.netty.channel.DefaultChannelPromise].isVoid()"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelFuture].isVoid()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    functionUses: 2
    ICount: 12
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:684"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:694"
        BranchSideFuncs:
        - "isVoid()"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:693"
        BranchSideFuncs:
        - "setSuccess()"
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:687"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:691"
        BranchSideFuncs:
        - "throwException(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:690"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:687,1"
      Dst: "[io.netty.channel.ChannelFuture].isVoid()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:688,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:691,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:694,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 458
    functionLinenumberEnd: 465
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.util.internal.PlatformDependent0].throwException(java.lang.Throwable)"
    - "[io.netty.util.internal.PlatformDependent].throwException0(java.lang.Throwable)"
    functionUses: 48
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:459"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:462"
        BranchSideFuncs:
        - "throwException(java.lang.Throwable)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:461"
        BranchSideFuncs:
        - "throwException0(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:459,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.util.internal.PlatformDependent:460,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].throwException(java.lang.Throwable)"
    - Src: "io.netty.util.internal.PlatformDependent:462,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException0(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 376
    functionLinenumberEnd: 378
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 44
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:377"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:376"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent0].throwException(java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 537
    functionLinenumberEnd: 540
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[sun.misc.Unsafe].throwException(java.lang.Throwable)"
    functionUses: 5
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:538,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent0:538,1"
      Dst: "[sun.misc.Unsafe].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].throwException0(java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 467
    functionLinenumberEnd: 469
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Throwable"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].flushInbound(boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 384
    functionLinenumberEnd: 391
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].checkOpen(boolean)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    - "[io.netty.channel.embedded.EmbeddedChannel].checkException(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:385"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:390"
        BranchSideFuncs:
        - "fireChannelReadComplete()"
        - "pipeline()"
        - "runPendingTasks()"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:389"
        BranchSideFuncs:
        - "checkException(io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:385,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].checkOpen(boolean)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:386,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:386,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:387,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:390,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].checkException(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 596
    functionLinenumberEnd: 608
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].embeddedEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].runTasks()"
    - "[io.netty.channel.embedded.EmbeddedChannel].recordException(java.lang.Throwable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].runScheduledTasks()"
    functionUses: 14
    ICount: 12
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:597,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].embeddedEventLoop()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:597,1"
      Dst: "[io.netty.channel.embedded.EmbeddedEventLoop].runTasks()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:599,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].recordException(java.lang.Throwable)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:603,1"
      Dst: "[io.netty.channel.embedded.EmbeddedEventLoop].runScheduledTasks()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].embeddedEventLoop()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 719
    functionLinenumberEnd: 725
    functionDepth: 0
    returnType: "io.netty.channel.embedded.EmbeddedEventLoop"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].isRegistered()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:720"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:724"
        BranchSideFuncs:
        - "eventLoop()"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:723"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:720,1"
      Dst: "[io.netty.channel.AbstractChannel].isRegistered()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:721,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedEventLoop].runTasks()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedEventLoop"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.channel.oio.AbstractOioChannel$2:io.netty.channel.oio.AbstractOioChannel$3:io.netty.util.concurrent.AbstractScheduledEventExecutor$2:io.netty.util.concurrent.GlobalEventExecutor$1:io.netty.util.concurrent.PromiseTask$SentinelRunnable:io.netty.util.concurrent.SingleThreadEventExecutor$1:io.netty.util.internal.EmptyPriorityQueue:java.lang.invoke.MethodHandleNatives$CallSiteContext:java.lang.ref.Finalizer$2:java.lang.ref.Finalizer$FinalizerThread:java.util.ArrayDeque:java.util.LinkedList:java.util.concurrent.CompletableFuture$Completion:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.ForkJoinWorkerThread:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue:java.util.concurrent.ThreadPoolExecutor$Worker:java.util.zip.Deflater$DeflaterZStreamRef:java.util.zip.Inflater$InflaterZStreamRef:java.util.zip.ZipFile$CleanableResource].poll()"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[java.util.Queue].poll()"
    - "[java.lang.Runnable].run()"
    functionUses: 1
    ICount: 9
    EdgeCount: 183
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedEventLoop:70"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedEventLoop:74"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedEventLoop:73"
        BranchSideFuncs:
        - "run()"
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:69,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:74,1"
      Dst: "[java.lang.Runnable].run()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedEventLoop].runScheduledTasks()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedEventLoop"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 92
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedEventLoop].getCurrentTimeNanos()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].pollScheduledTask(long)"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].nextScheduledTaskNano()"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$2:io.netty.channel.oio.AbstractOioChannel$3:io.netty.util.concurrent.AbstractScheduledEventExecutor$2:io.netty.util.concurrent.GlobalEventExecutor$1:io.netty.util.concurrent.PromiseTask$SentinelRunnable:io.netty.util.concurrent.SingleThreadEventExecutor$1:java.lang.invoke.MethodHandleNatives$CallSiteContext:java.lang.ref.Finalizer$2:java.lang.ref.Finalizer$FinalizerThread:java.util.concurrent.CompletableFuture$Completion:java.util.concurrent.ForkJoinWorkerThread:java.util.concurrent.ThreadPoolExecutor$Worker:java.util.zip.Deflater$DeflaterZStreamRef:java.util.zip.Inflater$InflaterZStreamRef:java.util.zip.ZipFile$CleanableResource].run()"
    - "[java.lang.Runnable].run()"
    functionUses: 1
    ICount: 8
    EdgeCount: 172
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedEventLoop:86"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedEventLoop:90"
        BranchSideFuncs:
        - "nextScheduledTaskNano()"
      - BranchSide: "io.netty.channel.embedded.EmbeddedEventLoop:89"
        BranchSideFuncs:
        - "run()"
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:83,1"
      Dst: "[io.netty.channel.embedded.EmbeddedEventLoop].getCurrentTimeNanos()"
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:85,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].pollScheduledTask(long)"
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:87,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].nextScheduledTaskNano()"
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:90,1"
      Dst: "[java.lang.Runnable].run()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedEventLoop].getCurrentTimeNanos()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedEventLoop"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].nanoTime()"
    functionUses: 6
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedEventLoop:100"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedEventLoop:103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedEventLoop:102"
        BranchSideFuncs:
        - "nanoTime()"
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:103,1"
      Dst: "[java.lang.System].nanoTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].nextReadableBuf(io.netty.channel.embedded.EmbeddedChannel)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener"
    linkageType: ""
    functionLinenumber: 277
    functionLinenumberEnd: 287
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.channel.embedded.EmbeddedChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].readInbound()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    functionUses: 4
    ICount: 10
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:279"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:282"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:281"
        BranchSideFuncs:
        - "isReadable()"
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:282"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:286"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:285"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:278,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].readInbound()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:282,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:283,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].readInbound()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 309
    functionLinenumberEnd: 315
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].poll(java.util.Queue)"
    - "[io.netty.util.ReferenceCountUtil].touch(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:311"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:314"
        BranchSideFuncs:
        - "touch(java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:313"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:310,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].poll(java.util.Queue)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:312,1"
      Dst: "[io.netty.util.ReferenceCountUtil].touch(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.ReferenceCountUtil].touch(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.ReferenceCountUtil"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].touch(java.lang.Object)"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].touch(java.lang.Object)"
    - "[io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent].touch(java.lang.Object)"
    - "[io.netty.buffer.DefaultByteBufHolder].touch(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].touch(java.lang.Object)"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].touch(java.lang.Object)"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].touch(java.lang.Object)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].touch(java.lang.Object)"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].touch(java.lang.Object)"
    - "[io.netty.handler.codec.smtp.DefaultSmtpContent].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].touch(java.lang.Object)"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].touch(java.lang.Object)"
    - "[io.netty.channel.unix.DomainDatagramPacket].touch(java.lang.Object)"
    - "[io.netty.channel.socket.DatagramPacket].touch(java.lang.Object)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].touch(java.lang.Object)"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].touch(java.lang.Object)"
    - "[io.netty.channel.epoll.SegmentedDatagramPacket].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].touch(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].touch(java.lang.Object)"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].touch(java.lang.Object)"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].touch(java.lang.Object)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$1].touch(java.lang.Object)"
    - "[io.netty.channel.sctp.SctpMessage].touch(java.lang.Object)"
    - "[io.netty.channel.DefaultAddressedEnvelope].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].touch(java.lang.Object)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1].touch(java.lang.Object)"
    - "[io.netty.handler.codec.smtp.DefaultLastSmtpContent].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].touch(java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].touch(java.lang.Object)"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].touch(java.lang.Object)"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].touch(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].touch(java.lang.Object)"
    - "[io.netty.handler.ssl.PemPrivateKey].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].touch(java.lang.Object)"
    - "[io.netty.channel.udt.UdtMessage].touch(java.lang.Object)"
    - "[io.netty.handler.ssl.PemValue].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].touch(java.lang.Object)"
    - "[io.netty.channel.unix.SegmentedDatagramPacket].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].touch(java.lang.Object)"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].touch(java.lang.Object)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].touch(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].touch(java.lang.Object)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.PingWebSocketFrame].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].touch(java.lang.Object)"
    - "[io.netty.handler.ssl.PemX509Certificate].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpContent].touch(java.lang.Object)"
    - "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].touch(java.lang.Object)"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].touch(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].touch(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].touch(java.lang.Object)"
    - "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame].touch(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.SimpleLeakAwareByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.channel.DefaultFileRegion:io.netty.handler.codec.http.ComposedLastHttpContent:io.netty.handler.codec.http.LastHttpContent$1:io.netty.handler.codec.http.multipart.AbstractDiskHttpData:io.netty.handler.codec.memcache.LastMemcacheContent$1:io.netty.handler.codec.redis.ArrayRedisMessage$1:io.netty.handler.codec.redis.ArrayRedisMessage$2:io.netty.handler.codec.redis.FullBulkStringRedisMessage$1:io.netty.handler.codec.redis.FullBulkStringRedisMessage$2:io.netty.handler.codec.redis.LastBulkStringRedisContent$1:io.netty.handler.codec.smtp.LastSmtpContent$1:io.netty.handler.codec.stomp.LastStompContentSubframe$1:io.netty.handler.ssl.OpenSslPrivateKey].touch(java.lang.Object)"
    - "[io.netty.util.ReferenceCounted].touch(java.lang.Object)"
    functionUses: 4
    ICount: 8
    EdgeCount: 80
    BranchProfiles:
    - Branch String: "io.netty.util.ReferenceCountUtil:78"
      Branch Sides:
      - BranchSide: "io.netty.util.ReferenceCountUtil:81"
        BranchSideFuncs:
        - "touch(java.lang.Object)"
      - BranchSide: "io.netty.util.ReferenceCountUtil:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.ReferenceCountUtil:79,1"
      Dst: "[io.netty.util.ReferenceCounted].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].finish()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 483
    functionLinenumberEnd: 485
    functionDepth: 7
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].finish(boolean)"
    functionUses: 6
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:484,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].finish(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].finish(boolean)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 503
    functionLinenumberEnd: 514
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].close()"
    - "[io.netty.channel.embedded.EmbeddedChannel].checkException()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isNotEmpty(java.util.Queue)"
    - "[io.netty.channel.embedded.EmbeddedChannel].releaseAll(java.util.Queue)"
    functionUses: 2
    ICount: 27
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:507"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:504"
        BranchSideFuncs:
        - "isNotEmpty(java.util.Queue)"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:503"
        BranchSideFuncs:
        - "checkException()"
        - "isNotEmpty(java.util.Queue)"
        - "close()"
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:507"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:504"
        BranchSideFuncs:
        - "isNotEmpty(java.util.Queue)"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:503"
        BranchSideFuncs:
        - "checkException()"
        - "isNotEmpty(java.util.Queue)"
        - "close()"
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:509"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:504"
        BranchSideFuncs:
        - "releaseAll(java.util.Queue)"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:503"
        BranchSideFuncs:
        - "checkException()"
        - "isNotEmpty(java.util.Queue)"
        - "close()"
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:509"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:513"
        BranchSideFuncs:
        - "releaseAll(java.util.Queue)"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:512"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:504,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].close()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:506,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].checkException()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:507,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].isNotEmpty(java.util.Queue)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:510,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].releaseAll(java.util.Queue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].close()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 555
    functionLinenumberEnd: 557
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel].newPromise()"
    functionUses: 17
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:556,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:556,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].close(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 567
    functionLinenumberEnd: 574
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    - "[io.netty.channel.AbstractChannel].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel].finishPendingTasks(boolean)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:568,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:569,1"
      Dst: "[io.netty.channel.AbstractChannel].close(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:572,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].finishPendingTasks(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].finishPendingTasks(boolean)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 546
    functionLinenumberEnd: 553
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].cancelScheduledTasks()"
    - "[io.netty.channel.embedded.EmbeddedChannel].embeddedEventLoop()"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:548"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:551"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:547,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:550,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].embeddedEventLoop()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:550,1"
      Dst: "[io.netty.channel.embedded.EmbeddedEventLoop].cancelScheduledTasks()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedEventLoop].cancelScheduledTasks()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedEventLoop"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].cancelScheduledTasks()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:134,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].cancelScheduledTasks()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor].incrementDecompressedBytes(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor"
    linkageType: ""
    functionLinenumber: 395
    functionLinenumberEnd: 399
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    functionUses: 3
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:396"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:397"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:396"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:396"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:397"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:396"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:396,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 174
    functionDepth: 4
    returnType: "io.netty.handler.codec.http2.Http2Exception"
    argCount: 5
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.Throwable"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2Exception$StreamException].<init>(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2Exception].formatErrorMessage(java.lang.String,java.lang.Object[])"
    functionUses: 11
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2Exception:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:171"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:170"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception:172,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.Http2Exception:173,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].formatErrorMessage(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.Http2Exception:173,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception$StreamException].<init>(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 3
    returnType: "io.netty.handler.codec.http2.Http2Exception"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.Throwable"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2Exception].formatErrorMessage(java.lang.String,java.lang.Object[])"
    functionUses: 13
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception:123,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].formatErrorMessage(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.Http2Exception:123,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].formatErrorMessage(java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 206
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Arrays].toString(java.lang.Object[])"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 6
    ICount: 16
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2Exception:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:205"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:204"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
    - Branch String: "io.netty.handler.codec.http2.Http2Exception:200"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:201"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:200"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2Exception:200"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:203"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:202"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "toString(java.lang.Object[])"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception:203,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2Exception:203,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2Exception:203,1"
      Dst: "[java.util.Arrays].toString(java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.Http2Exception:203,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.Http2Exception:205,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception:60,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 68
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.String"
    - "java.lang.Throwable"
    - "io.netty.handler.codec.http2.Http2Exception$ShutdownHint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception:64,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2Exception:65,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception$StreamException].<init>(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception$StreamException"
    linkageType: ""
    functionLinenumber: 278
    functionLinenumberEnd: 282
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception$StreamException:279,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 152
    functionDepth: 10
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].initDecompressor(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    functionUses: 7
    ICount: 10
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:149,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].initDecompressor(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:150,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].initDecompressor(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener"
    linkageType: ""
    functionLinenumber: 213
    functionLinenumberEnd: 255
    functionDepth: 9
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].decompressor(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].get(java.lang.Object)"
    - "[io.netty.handler.codec.EmptyHeaders].get(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].newContentDecompressor(io.netty.channel.ChannelHandlerContext,java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor].<init>(io.netty.channel.embedded.EmbeddedChannel)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].getTargetContentEncoding(java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].remove(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].remove(java.lang.Object)"
    - "[io.netty.handler.codec.EmptyHeaders].remove(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].set(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.EmptyHeaders].set(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].<init>(io.netty.handler.codec.http2.DelegatingDecompressorFrameListener,io.netty.handler.codec.http2.Http2LocalFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].flowController(io.netty.handler.codec.http2.Http2FlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].flowController()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - "[io.netty.handler.codec.Headers].get(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - "[io.netty.handler.codec.Headers].remove(java.lang.Object)"
    - "[io.netty.handler.codec.Headers].set(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController(io.netty.handler.codec.http2.Http2FlowController)"
    functionUses: 2
    ICount: 52
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:219"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:218"
        BranchSideFuncs:
        - "decompressor(io.netty.handler.codec.http2.Http2Stream)"
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:220"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:240"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:220"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:240"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:223"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:227"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:241"
        BranchSideFuncs:
        - "setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
        - "contentEqualsIgnoreCase(java.lang.CharSequence)"
        - "<init>(io.netty.channel.embedded.EmbeddedChannel)"
        - "getTargetContentEncoding(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:240"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:233"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:236"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:235"
        BranchSideFuncs:
        - "set(java.lang.Object,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:241"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:253"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:249"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:254"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http2.DelegatingDecompressorFrameListener,io.netty.handler.codec.http2.Http2LocalFlowController)"
        - "local()"
        - "flowController()"
        - "flowController(io.netty.handler.codec.http2.Http2FlowController)"
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:253"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:214,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:219,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].decompressor(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:222,1"
      Dst: "[io.netty.handler.codec.Headers].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:226,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].newContentDecompressor(io.netty.channel.ChannelHandlerContext,java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:228,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor].<init>(io.netty.channel.embedded.EmbeddedChannel)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:229,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:232,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].getTargetContentEncoding(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:233,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:234,1"
      Dst: "[io.netty.handler.codec.Headers].remove(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:236,1"
      Dst: "[io.netty.handler.codec.Headers].set(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:251,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].local()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:251,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:251,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].<init>(io.netty.handler.codec.http2.DelegatingDecompressorFrameListener,io.netty.handler.codec.http2.Http2LocalFlowController)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:251,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController(io.netty.handler.codec.http2.Http2FlowController)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].newContentDecompressor(io.netty.channel.ChannelHandlerContext,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 187
    functionDepth: 8
    returnType: "io.netty.channel.embedded.EmbeddedChannel"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelMetadata].hasDisconnect()"
    - "[io.netty.channel.AbstractChannel].id()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].id()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].metadata()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].metadata()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].metadata()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].metadata()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].metadata()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].metadata()"
    - "[io.netty.channel.nio.AbstractNioByteChannel].metadata()"
    - "[io.netty.channel.kqueue.AbstractKQueueDatagramChannel].metadata()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].metadata()"
    - "[io.netty.channel.oio.AbstractOioByteChannel].metadata()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].metadata()"
    - "[io.netty.bootstrap.FailedChannel].metadata()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].metadata()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].metadata()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].metadata()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].metadata()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].metadata()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].metadata()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].metadata()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].metadata()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].metadata()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].metadata()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].metadata()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].metadata()"
    - "[io.netty.channel.local.LocalChannel].metadata()"
    - "[io.netty.channel.AbstractServerChannel].metadata()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].metadata()"
    - "[io.netty.channel.embedded.EmbeddedChannel].metadata()"
    - "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,boolean,io.netty.channel.ChannelConfig,io.netty.channel.ChannelHandler[])"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.embedded.EmbeddedChannel].config()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].config()"
    - "[io.netty.bootstrap.FailedChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.local.LocalServerChannel].config()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].config()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].config()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibDecoder(io.netty.handler.codec.compression.ZlibWrapper)"
    - "[io.netty.handler.codec.compression.Brotli].isAvailable()"
    - "[io.netty.handler.codec.compression.BrotliDecoder].<init>()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].id()"
    - "[io.netty.channel.Channel].metadata()"
    - "[io.netty.channel.Channel].config()"
    functionUses: 1
    ICount: 67
    EdgeCount: 216
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:172"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:171"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:175"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:174"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:176"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:175"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:181"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:180"
        BranchSideFuncs:
        - "contentEqualsIgnoreCase(java.lang.CharSequence)"
        - "isAvailable()"
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:176"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:175"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:186"
        BranchSideFuncs:
        - "hasDisconnect()"
        - "metadata()"
        - "id()"
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:185"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:186"
        BranchSideFuncs:
        - "hasDisconnect()"
        - "metadata()"
        - "id()"
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:185"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:171,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:172,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:172,1"
      Dst: "[io.netty.channel.Channel].id()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:172,1"
      Dst: "[io.netty.channel.Channel].metadata()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:172,1"
      Dst: "[io.netty.channel.ChannelMetadata].hasDisconnect()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:173,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:173,1"
      Dst: "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibDecoder(io.netty.handler.codec.compression.ZlibWrapper)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:173,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,boolean,io.netty.channel.ChannelConfig,io.netty.channel.ChannelHandler[])"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:181,1"
      Dst: "[io.netty.handler.codec.compression.Brotli].isAvailable()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:183,1"
      Dst: "[io.netty.handler.codec.compression.BrotliDecoder].<init>()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 525
    functionLinenumberEnd: 550
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[io.netty.util.AsciiString].equalsIgnoreCase(byte,byte)"
    - "[io.netty.util.AsciiString].b2c(byte)"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].equalsIgnoreCase(char,char)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 42
    ICount: 44
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:526"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:530"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:529"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:530"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:531"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:530"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:530"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:534"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:533"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:534"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:544"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:543"
        BranchSideFuncs:
        - "arrayOffset()"
        - "length()"
    - Branch String: "io.netty.util.AsciiString:536"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:541"
        BranchSideFuncs:
        - "equalsIgnoreCase(byte,byte)"
      - BranchSide: "io.netty.util.AsciiString:540"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:537"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:535"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:534"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:544"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:549"
        BranchSideFuncs:
        - "equalsIgnoreCase(char,char)"
        - "b2c(byte)"
        - "charAt(int)"
      - BranchSide: "io.netty.util.AsciiString:548"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:545"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:544"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:543"
        BranchSideFuncs:
        - "arrayOffset()"
        - "length()"
    Callsites:
    - Src: "io.netty.util.AsciiString:530,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:530,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:536,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.util.AsciiString:537,1"
      Dst: "[io.netty.util.AsciiString].equalsIgnoreCase(byte,byte)"
    - Src: "io.netty.util.AsciiString:545,1"
      Dst: "[io.netty.util.AsciiString].b2c(byte)"
    - Src: "io.netty.util.AsciiString:545,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.AsciiString:545,1"
      Dst: "[io.netty.util.AsciiString].equalsIgnoreCase(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.AsciiString].length()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 347
    functionLinenumberEnd: 349
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 131
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].arrayOffset()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 376
    functionLinenumberEnd: 378
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 21
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].equalsIgnoreCase(byte,byte)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1818
    functionLinenumberEnd: 1820
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].toLowerCase(byte)"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1819"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1818"
        BranchSideFuncs:
        - "toLowerCase(byte)"
    - Branch String: "io.netty.util.AsciiString:1819"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1818"
        BranchSideFuncs:
        - "toLowerCase(byte)"
    Callsites:
    - Src: "io.netty.util.AsciiString:1819,1"
      Dst: "[io.netty.util.AsciiString].toLowerCase(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.AsciiString].toLowerCase(byte)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1826
    functionLinenumberEnd: 1828
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].isUpperCase(byte)"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1827"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1826"
        BranchSideFuncs:
        - "isUpperCase(byte)"
    Callsites:
    - Src: "io.netty.util.AsciiString:1827,1"
      Dst: "[io.netty.util.AsciiString].isUpperCase(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].isUpperCase(byte)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1848
    functionLinenumberEnd: 1850
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1849"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1848"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1849"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1848"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.AsciiString].b2c(byte)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1864
    functionLinenumberEnd: 1866
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].equalsIgnoreCase(char,char)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1822
    functionLinenumberEnd: 1824
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "char"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].toLowerCase(char)"
    functionUses: 2
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1823"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1822"
        BranchSideFuncs:
        - "toLowerCase(char)"
    - Branch String: "io.netty.util.AsciiString:1823"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1822"
        BranchSideFuncs:
        - "toLowerCase(char)"
    Callsites:
    - Src: "io.netty.util.AsciiString:1823,1"
      Dst: "[io.netty.util.AsciiString].toLowerCase(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.AsciiString].toLowerCase(char)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1836
    functionLinenumberEnd: 1838
    functionDepth: 1
    returnType: "char"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].isUpperCase(char)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1837"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1836"
        BranchSideFuncs:
        - "isUpperCase(char)"
    Callsites:
    - Src: "io.netty.util.AsciiString:1837,1"
      Dst: "[io.netty.util.AsciiString].isUpperCase(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].isUpperCase(char)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1852
    functionLinenumberEnd: 1854
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1853"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1852"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1853"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1852"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.ChannelMetadata].hasDisconnect()"
    functionSourceFile: "io.netty.channel.ChannelMetadata"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibDecoder(io.netty.handler.codec.compression.ZlibWrapper)"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibCodecFactory"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 125
    functionDepth: 7
    returnType: "io.netty.handler.codec.compression.ZlibDecoder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.handler.codec.compression.JZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper)"
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,boolean)"
    functionUses: 5
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:121"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:122"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.compression.ZlibWrapper)"
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:121"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.compression.ZlibWrapper)"
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:121"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:124"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.compression.ZlibWrapper)"
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:123"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.compression.ZlibWrapper,boolean)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:121,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:122,1"
      Dst: "[io.netty.handler.codec.compression.JZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper)"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:124,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.JZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibDecoder"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibDecoder:62,1"
      Dst: "[io.netty.handler.codec.compression.JZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibDecoder"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 84
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.jcraft.jzlib.Inflater].<init>()"
    - "[io.netty.handler.codec.compression.ZlibDecoder].<init>(int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.compression.ZlibUtil].convertWrapperType(io.netty.handler.codec.compression.ZlibWrapper)"
    - "[io.netty.handler.codec.compression.ZlibUtil].fail(com.jcraft.jzlib.Inflater,java.lang.String,int)"
    - "[com.jcraft.jzlib.Inflater].init(com.jcraft.jzlib.JZlib$WrapperType)"
    functionUses: 1
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JZlibDecoder:80"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibDecoder:83"
        BranchSideFuncs:
        - "fail(com.jcraft.jzlib.Inflater,java.lang.String,int)"
      - BranchSide: "io.netty.handler.codec.compression.JZlibDecoder:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibDecoder:75,1"
      Dst: "[io.netty.handler.codec.compression.ZlibDecoder].<init>(int)"
    - Src: "io.netty.handler.codec.compression.JZlibDecoder:29,1"
      Dst: "[com.jcraft.jzlib.Inflater].<init>()"
    - Src: "io.netty.handler.codec.compression.JZlibDecoder:77,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JZlibDecoder:79,1"
      Dst: "[io.netty.handler.codec.compression.ZlibUtil].convertWrapperType(io.netty.handler.codec.compression.ZlibWrapper)"
    - Src: "io.netty.handler.codec.compression.JZlibDecoder:79,1"
      Dst: "[com.jcraft.jzlib.Inflater].init(com.jcraft.jzlib.JZlib$WrapperType)"
    - Src: "io.netty.handler.codec.compression.JZlibDecoder:81,1"
      Dst: "[io.netty.handler.codec.compression.ZlibUtil].fail(com.jcraft.jzlib.Inflater,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.ZlibUtil].fail(com.jcraft.jzlib.Inflater,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibUtil"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "com.jcraft.jzlib.Inflater"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ZlibUtil].inflaterException(com.jcraft.jzlib.Inflater,java.lang.String,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibUtil:28,1"
      Dst: "[io.netty.handler.codec.compression.ZlibUtil].inflaterException(com.jcraft.jzlib.Inflater,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZlibUtil].inflaterException(com.jcraft.jzlib.Inflater,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibUtil"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 3
    returnType: "io.netty.handler.codec.compression.DecompressionException"
    argCount: 3
    argTypes:
    - "com.jcraft.jzlib.Inflater"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 1
    ICount: 24
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZlibUtil:36"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibUtil:35"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibUtil:36,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.ZlibUtil:36,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.ZlibUtil:36,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.compression.ZlibUtil:36,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.compression.ZlibUtil:36,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.ZlibUtil:36,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.compression.DecompressionException"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    functionUses: 53
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.DecompressionException:44,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.DecoderException"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DecoderException:42,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:129,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 173
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    - "byte[]"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ZlibDecoder].<init>(int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Enum].ordinal()"
    - "[java.util.zip.Inflater].<init>(boolean)"
    - "[java.util.zip.CRC32].<init>()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum].wrapChecksum(java.util.zip.Checksum)"
    - "[java.util.zip.Inflater].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 49
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:145,1"
      Dst: "[io.netty.handler.codec.compression.ZlibDecoder].<init>(int)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:147,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:150,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:152,1"
      Dst: "[java.util.zip.Inflater].<init>(boolean)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:153,1"
      Dst: "[java.util.zip.CRC32].<init>()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:153,1"
      Dst: "[io.netty.handler.codec.compression.ByteBufChecksum].wrapChecksum(java.util.zip.Checksum)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:160,1"
      Dst: "[java.util.zip.Inflater].<init>()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:169,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:169,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:169,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:169,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:169,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,boolean,io.netty.channel.ChannelConfig,io.netty.channel.ChannelHandler[])"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 206
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelId"
    - "boolean"
    - "io.netty.channel.ChannelConfig"
    - "io.netty.channel.ChannelHandler[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedEventLoop].<init>()"
    - "[io.netty.channel.embedded.EmbeddedChannel$1].<init>(io.netty.channel.embedded.EmbeddedChannel)"
    - "[io.netty.channel.AbstractChannel].<init>(io.netty.channel.Channel,io.netty.channel.ChannelId)"
    - "[io.netty.channel.embedded.EmbeddedChannel].metadata(boolean)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.embedded.EmbeddedChannel].setup(boolean,io.netty.channel.ChannelHandler[])"
    functionUses: 13
    ICount: 19
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:201,1"
      Dst: "[io.netty.channel.AbstractChannel].<init>(io.netty.channel.Channel,io.netty.channel.ChannelId)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:64,1"
      Dst: "[io.netty.channel.embedded.EmbeddedEventLoop].<init>()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:65,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel$1].<init>(io.netty.channel.embedded.EmbeddedChannel)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:202,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].metadata(boolean)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:203,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:204,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].setup(boolean,io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedEventLoop].<init>()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedEventLoop"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].<init>()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].initialNanoTime()"
    - "[java.util.ArrayDeque].<init>(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:32,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].<init>()"
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:40,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].initialNanoTime()"
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:50,1"
      Dst: "[java.util.ArrayDeque].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$1].<init>(io.netty.channel.embedded.EmbeddedChannel)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$1"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.embedded.EmbeddedChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$1:65,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].metadata(boolean)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionDepth: 0
    returnType: "io.netty.channel.ChannelMetadata"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:208"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:207"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].setup(boolean,io.netty.channel.ChannelHandler[])"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 231
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.channel.ChannelHandler[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.embedded.EmbeddedChannel$2].<init>(io.netty.channel.embedded.EmbeddedChannel,io.netty.channel.ChannelHandler[])"
    - "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].register(io.netty.channel.Channel)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.channel.ChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - "[java.util.concurrent.Future].isDone()"
    functionUses: 2
    ICount: 21
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:226"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:230"
        BranchSideFuncs:
        - "register(io.netty.channel.Channel)"
        - "<init>()"
        - "isDone()"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:228"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:228"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:229"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:212,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:213,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:214,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel$2].<init>(io.netty.channel.embedded.EmbeddedChannel,io.netty.channel.ChannelHandler[])"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:214,1"
      Dst: "[io.netty.channel.ChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:227,1"
      Dst: "[io.netty.channel.embedded.EmbeddedEventLoop].register(io.netty.channel.Channel)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:228,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:228,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$2].<init>(io.netty.channel.embedded.EmbeddedChannel,io.netty.channel.ChannelHandler[])"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$2"
    linkageType: ""
    functionLinenumber: 213
    functionLinenumberEnd: 215
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.embedded.EmbeddedChannel"
    - "io.netty.channel.ChannelHandler[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelInitializer].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$2:214,1"
      Dst: "[io.netty.channel.ChannelInitializer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedEventLoop].register(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedEventLoop"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPromise].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].register(io.netty.channel.ChannelPromise)"
    functionUses: 7
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:175,1"
      Dst: "[io.netty.channel.DefaultChannelPromise].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:175,1"
      Dst: "[io.netty.channel.embedded.EmbeddedEventLoop].register(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].<init>(io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 7
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPromise:52,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].<init>(io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.channel.DefaultChannelPromise:53,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].<init>(io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 85
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.AbstractFuture].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 7
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:82,1"
      Dst: "[io.netty.util.concurrent.AbstractFuture].<init>()"
    - Src: "io.netty.util.concurrent.DefaultPromise:83,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedEventLoop].register(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedEventLoop"
    linkageType: ""
    functionLinenumber: 179
    functionLinenumberEnd: 183
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.DefaultChannelPromise].channel()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].channel()"
    - "[io.netty.channel.VoidChannelPromise].channel()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].register(io.netty.channel.EventLoop,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].register(io.netty.channel.EventLoop,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].register(io.netty.channel.EventLoop,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.embedded.EmbeddedChannel].unsafe()"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - "[io.netty.channel.ChannelPromise].channel()"
    - "[io.netty.channel.Channel].unsafe()"
    - "[io.netty.channel.Channel$Unsafe].register(io.netty.channel.EventLoop,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:180,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:181,1"
      Dst: "[io.netty.channel.ChannelPromise].channel()"
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:181,1"
      Dst: "[io.netty.channel.Channel].unsafe()"
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:181,1"
      Dst: "[io.netty.channel.Channel$Unsafe].register(io.netty.channel.EventLoop,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Brotli].isAvailable()"
    functionSourceFile: "io.netty.handler.codec.compression.Brotli"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.aayushatharva.brotli4j.Brotli4jLoader].isAvailable()"
    functionUses: 3
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Brotli:59"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Brotli:58"
        BranchSideFuncs:
        - "isAvailable()"
    - Branch String: "io.netty.handler.codec.compression.Brotli:59"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Brotli:58"
        BranchSideFuncs:
        - "isAvailable()"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Brotli:59,1"
      Dst: "[com.aayushatharva.brotli4j.Brotli4jLoader].isAvailable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.BrotliDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliDecoder"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.BrotliDecoder].<init>(int)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:56,1"
      Dst: "[io.netty.handler.codec.compression.BrotliDecoder].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliDecoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliDecoder"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:63,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:64,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ObjectUtil"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 22
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ObjectUtil:99"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectUtil:102"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.ObjectUtil:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectUtil:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.ObjectUtil:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:100,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.internal.ObjectUtil:100,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.ObjectUtil:100,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor].<init>(io.netty.channel.embedded.EmbeddedChannel)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor"
    linkageType: ""
    functionLinenumber: 372
    functionLinenumberEnd: 376
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.embedded.EmbeddedChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:373,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].getTargetContentEncoding(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].<init>(io.netty.handler.codec.http2.DelegatingDecompressorFrameListener,io.netty.handler.codec.http2.Http2LocalFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 299
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener"
    - "io.netty.handler.codec.http2.Http2LocalFlowController"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:296,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:297,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionDepth: 10
    returnType: "void"
    argCount: 8
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "short"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].initDecompressor(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean)"
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    functionUses: 6
    ICount: 13
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:156,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].initDecompressor(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:157,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].cleanup(io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener"
    linkageType: ""
    functionLinenumber: 265
    functionLinenumberEnd: 268
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor].decompressor()"
    - "[io.netty.channel.embedded.EmbeddedChannel].finishAndReleaseAll()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:266,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor].decompressor()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:266,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].finishAndReleaseAll()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].finishAndReleaseAll()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 493
    functionLinenumberEnd: 495
    functionDepth: 7
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].finish(boolean)"
    functionUses: 6
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:494,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].finish(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].access$000(io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].cleanup(io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener:46,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].cleanup(io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 48
    functionDepth: 3
    returnType: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].<init>(int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:47,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:55,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 62
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 5
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:59,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].byteValue()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].hashCode()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:74"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:78"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:77"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:77"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].compareTo(io.netty.handler.codec.socksx.v5.Socks5AuthMethod)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.socksx.v5.Socks5AuthMethod"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].toString()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 19
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:92"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "toString()"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:90,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:90,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:90,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:90,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:90,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].compareTo(io.netty.handler.codec.socksx.v5.Socks5AuthMethod)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AuthMethod:24,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].compareTo(io.netty.handler.codec.socksx.v5.Socks5AuthMethod)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsResponse)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter"
    linkageType: ""
    functionLinenumber: 1421
    functionLinenumberEnd: 1427
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.InetSocketAddress"
    - "io.netty.handler.codec.dns.DnsResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1422,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].content()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter"
    linkageType: ""
    functionLinenumber: 1429
    functionLinenumberEnd: 1431
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].sender()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter"
    linkageType: ""
    functionLinenumber: 1434
    functionLinenumberEnd: 1436
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter"
    linkageType: ""
    functionLinenumber: 1439
    functionLinenumberEnd: 1441
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 34
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].retain()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter"
    linkageType: ""
    functionLinenumber: 1444
    functionLinenumberEnd: 1447
    functionDepth: 0
    returnType: "io.netty.channel.AddressedEnvelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].retain()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].retain()"
    - "[io.netty.handler.codec.dns.DnsResponse].retain()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1445,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponse].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].retain(int)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.AddressedEnvelope"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsResponse].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1451,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponse].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].touch()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter"
    linkageType: ""
    functionLinenumber: 1456
    functionLinenumberEnd: 1459
    functionDepth: 0
    returnType: "io.netty.channel.AddressedEnvelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].touch()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].touch()"
    - "[io.netty.handler.codec.dns.DnsResponse].touch()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1457,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponse].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].touch(java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter"
    linkageType: ""
    functionLinenumber: 1462
    functionLinenumberEnd: 1465
    functionDepth: 0
    returnType: "io.netty.channel.AddressedEnvelope"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].touch(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].touch(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DnsResponse].touch(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1463,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponse].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].refCnt()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter"
    linkageType: ""
    functionLinenumber: 1468
    functionLinenumberEnd: 1470
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1469,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].release()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter"
    linkageType: ""
    functionLinenumber: 1473
    functionLinenumberEnd: 1475
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1474,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].release(int)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter"
    linkageType: ""
    functionLinenumber: 1478
    functionLinenumberEnd: 1480
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].release(int)"
    - "[io.netty.util.ReferenceCounted].release(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1479,1"
      Dst: "[io.netty.util.ReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].equals(java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter"
    linkageType: ""
    functionLinenumber: 1483
    functionLinenumberEnd: 1511
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].sender()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].sender()"
    - "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].sender()"
    - "[java.net.InetSocketAddress].equals(java.lang.Object)"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].equals(java.lang.Object)"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].equals(java.lang.Object)"
    - "[io.netty.channel.AddressedEnvelope].sender()"
    - "[io.netty.channel.AddressedEnvelope].recipient()"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 9
    ICount: 31
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1484"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1488"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1487"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1488"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1493"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1492"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1494"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1498"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1497"
        BranchSideFuncs:
        - "sender()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1495"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1502"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1501"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1498"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1502"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1501"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1502"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1506"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1505"
        BranchSideFuncs:
        - "recipient()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1503"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1510"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1509"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1506"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1510"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1509"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1494,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].sender()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1495,1"
      Dst: "[io.netty.channel.AddressedEnvelope].sender()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1498,1"
      Dst: "[java.net.InetSocketAddress].equals(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1502,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1503,1"
      Dst: "[io.netty.channel.AddressedEnvelope].recipient()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1510,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].hashCode()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter"
    linkageType: ""
    functionLinenumber: 1514
    functionLinenumberEnd: 1523
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].hashCode()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].hashCode()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].sender()"
    - "[java.net.InetSocketAddress].hashCode()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    - "[java.lang.Object].hashCode()"
    functionUses: 5
    ICount: 17
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1516"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1519"
        BranchSideFuncs:
        - "sender()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1518"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1519"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1522"
        BranchSideFuncs:
        - "recipient()"
        - "hashCode()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1521"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1515,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1516,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].sender()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1517,1"
      Dst: "[java.net.InetSocketAddress].hashCode()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter:1519,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].<init>()"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.LinkedBlockingQueue].<init>()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$1].<init>(io.netty.util.concurrent.GlobalEventExecutor)"
    - "[java.util.concurrent.Executors].callable(java.lang.Runnable,java.lang.Object)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].<init>(io.netty.util.concurrent.AbstractScheduledEventExecutor,java.util.concurrent.Callable,long,long)"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].deadlineNanos(long,long)"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].getCurrentTimeNanos()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].<init>(io.netty.util.concurrent.GlobalEventExecutor)"
    - "[java.util.concurrent.atomic.AtomicBoolean].<init>()"
    - "[io.netty.util.concurrent.FailedFuture].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Throwable)"
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].<init>()"
    - "[java.util.AbstractQueue].add(java.lang.Object)"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].scheduledTaskQueue()"
    - "[io.netty.util.internal.ThreadExecutorMap].apply(java.util.concurrent.ThreadFactory,io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.String,boolean,int,java.lang.ThreadGroup)"
    - "[java.lang.Object].getClass()"
    - "[io.netty.util.concurrent.DefaultThreadFactory].toPoolName(java.lang.Class)"
    - "[java.util.Queue].add(java.lang.Object)"
    functionUses: 1
    ICount: 37
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:74,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].<init>()"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:49,1"
      Dst: "[java.util.concurrent.LinkedBlockingQueue].<init>()"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:50,1"
      Dst: "[io.netty.util.concurrent.GlobalEventExecutor$1].<init>(io.netty.util.concurrent.GlobalEventExecutor)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:51,1"
      Dst: "[java.util.concurrent.Executors].callable(java.lang.Runnable,java.lang.Object)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:59,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].getCurrentTimeNanos()"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:59,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].deadlineNanos(long,long)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:59,1"
      Dst: "[io.netty.util.concurrent.ScheduledFutureTask].<init>(io.netty.util.concurrent.AbstractScheduledEventExecutor,java.util.concurrent.Callable,long,long)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:68,1"
      Dst: "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].<init>(io.netty.util.concurrent.GlobalEventExecutor)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:69,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].<init>()"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:72,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:72,1"
      Dst: "[io.netty.util.concurrent.FailedFuture].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Throwable)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:75,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].scheduledTaskQueue()"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:75,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:77,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:77,1"
      Dst: "[io.netty.util.concurrent.DefaultThreadFactory].toPoolName(java.lang.Class)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:77,1"
      Dst: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.String,boolean,int,java.lang.ThreadGroup)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:76,1"
      Dst: "[io.netty.util.internal.ThreadExecutorMap].apply(java.util.concurrent.ThreadFactory,io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].takeTask()"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 122
    functionDepth: 4
    returnType: "java.lang.Runnable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].peekScheduledTask()"
    - "[java.util.concurrent.LinkedBlockingDeque].take()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].delayNanos()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll(long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].fetchFromScheduledTaskQueue()"
    - "[java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.BlockingQueue].take()"
    - "[java.util.concurrent.BlockingQueue].poll(long,java.util.concurrent.TimeUnit)"
    - "[java.util.Queue].poll()"
    functionUses: 1
    ICount: 28
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.GlobalEventExecutor:89"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.GlobalEventExecutor:98"
        BranchSideFuncs:
        - "take()"
      - BranchSide: "io.netty.util.concurrent.GlobalEventExecutor:97"
        BranchSideFuncs:
        - "delayNanos()"
    - Branch String: "io.netty.util.concurrent.GlobalEventExecutor:100"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.GlobalEventExecutor:108"
        BranchSideFuncs:
        - "delayNanos()"
        - "poll(long,java.util.concurrent.TimeUnit)"
      - BranchSide: "io.netty.util.concurrent.GlobalEventExecutor:107"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.GlobalEventExecutor:108"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.GlobalEventExecutor:116"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.GlobalEventExecutor:117"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.GlobalEventExecutor:121"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.GlobalEventExecutor:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:88,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].peekScheduledTask()"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:92,1"
      Dst: "[java.util.concurrent.BlockingQueue].take()"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:98,1"
      Dst: "[io.netty.util.concurrent.ScheduledFutureTask].delayNanos()"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:102,1"
      Dst: "[java.util.concurrent.BlockingQueue].poll(long,java.util.concurrent.TimeUnit)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:113,1"
      Dst: "[io.netty.util.concurrent.GlobalEventExecutor].fetchFromScheduledTaskQueue()"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:114,1"
      Dst: "[java.util.Queue].poll()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].delayNanos()"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 3
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.ScheduledFutureTask].delayNanos(long)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].getCurrentTimeNanos()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].getCurrentTimeNanos()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].scheduledExecutor()"
    functionUses: 5
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:102,1"
      Dst: "[io.netty.util.concurrent.ScheduledFutureTask].scheduledExecutor()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:102,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].getCurrentTimeNanos()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:102,1"
      Dst: "[io.netty.util.concurrent.ScheduledFutureTask].delayNanos(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].scheduledExecutor()"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionDepth: 2
    returnType: "io.netty.util.concurrent.AbstractScheduledEventExecutor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.ScheduledFutureTask].executor()"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:178,1"
      Dst: "[io.netty.util.concurrent.ScheduledFutureTask].executor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].executor()"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 1
    returnType: "io.netty.util.concurrent.EventExecutor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].executor()"
    functionUses: 6
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:85,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].executor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].executor()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 455
    functionLinenumberEnd: 457
    functionDepth: 0
    returnType: "io.netty.util.concurrent.EventExecutor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].delayNanos(long)"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.ScheduledFutureTask].deadlineToDelayNanos(long,long)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:110,1"
      Dst: "[io.netty.util.concurrent.ScheduledFutureTask].deadlineToDelayNanos(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].deadlineToDelayNanos(long,long)"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(long,long)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:106"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:105"
        BranchSideFuncs:
        - "max(long,long)"
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:106,1"
      Dst: "[java.lang.Math].max(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].fetchFromScheduledTaskQueue()"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 132
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].getCurrentTimeNanos()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].pollScheduledTask(long)"
    - "[java.util.AbstractQueue].add(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].add(java.lang.Object)"
    - "[java.util.concurrent.BlockingQueue].add(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.GlobalEventExecutor:127"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.GlobalEventExecutor:131"
        BranchSideFuncs:
        - "pollScheduledTask(long)"
        - "add(java.lang.Object)"
      - BranchSide: "io.netty.util.concurrent.GlobalEventExecutor:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:125,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].getCurrentTimeNanos()"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:126,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].pollScheduledTask(long)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:128,1"
      Dst: "[java.util.concurrent.BlockingQueue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].pendingTasks()"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].size()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:137,1"
      Dst: "[java.util.Collection].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].addTask(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractQueue].add(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].add(java.lang.Object)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.concurrent.BlockingQueue].add(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:145,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:145,1"
      Dst: "[java.util.concurrent.BlockingQueue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].inEventLoop(java.lang.Thread)"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Thread"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.GlobalEventExecutor:150"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.GlobalEventExecutor:149"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].shutdownGracefully(long,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future<?>"
    argCount: 3
    argTypes:
    - "long"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.GlobalEventExecutor].terminationFuture()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:155,1"
      Dst: "[io.netty.util.concurrent.GlobalEventExecutor].terminationFuture()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].terminationFuture()"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].shutdown()"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:166,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].isShuttingDown()"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].isShutdown()"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].isTerminated()"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].awaitTermination(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].awaitInactivity(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.util.concurrent.TimeUnit].toMillis(long)"
    - "[java.lang.Thread].join(long)"
    - "[java.lang.Thread].isAlive()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.GlobalEventExecutor:201"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.GlobalEventExecutor:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.GlobalEventExecutor:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.GlobalEventExecutor:205"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.GlobalEventExecutor:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:198,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:202,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:204,1"
      Dst: "[java.util.concurrent.TimeUnit].toMillis(long)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:204,1"
      Dst: "[java.lang.Thread].join(long)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:205,1"
      Dst: "[java.lang.Thread].isAlive()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute0(java.lang.Runnable)"
    functionUses: 44
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:210,1"
      Dst: "[io.netty.util.concurrent.GlobalEventExecutor].execute0(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].execute0(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: 213
    functionLinenumberEnd: 219
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.GlobalEventExecutor].addTask(java.lang.Runnable)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.GlobalEventExecutor].startThread()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.GlobalEventExecutor:215"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.GlobalEventExecutor:218"
        BranchSideFuncs:
        - "startThread()"
      - BranchSide: "io.netty.util.concurrent.GlobalEventExecutor:217"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:214,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:214,1"
      Dst: "[io.netty.util.concurrent.GlobalEventExecutor].addTask(java.lang.Runnable)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:215,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:216,1"
      Dst: "[io.netty.util.concurrent.GlobalEventExecutor].startThread()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].startThread()"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: 220
    functionLinenumberEnd: 243
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicBoolean].compareAndSet(boolean,boolean)"
    - "[jdk.internal.ref.CleanerImpl$InnocuousThreadFactory].newThread(java.lang.Runnable)"
    - "[io.netty.util.concurrent.DefaultThreadFactory].newThread(java.lang.Runnable)"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors].newThread(java.lang.Runnable)"
    - "[jdk.internal.ref.CleanerFactory$1].newThread(java.lang.Runnable)"
    - "[io.netty.util.internal.ThreadExecutorMap$3].newThread(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor$2].<init>(io.netty.util.concurrent.GlobalEventExecutor,java.lang.Thread)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[io.netty.util.concurrent.GlobalEventExecutor$2].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[java.lang.ref.Finalizer$FinalizerThread].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[java.util.concurrent.ForkJoinWorkerThread].run()"
    - "[java.lang.Thread].start()"
    - "[java.util.concurrent.ThreadFactory].newThread(java.lang.Runnable)"
    functionUses: 1
    ICount: 13
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.GlobalEventExecutor:221"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.GlobalEventExecutor:242"
        BranchSideFuncs:
        - "doPrivileged(java.security.PrivilegedAction)"
        - "run()"
        - "<init>(io.netty.util.concurrent.GlobalEventExecutor,java.lang.Thread)"
        - "start()"
        - "newThread(java.lang.Runnable)"
      - BranchSide: "io.netty.util.concurrent.GlobalEventExecutor:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:221,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].compareAndSet(boolean,boolean)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:222,1"
      Dst: "[java.util.concurrent.ThreadFactory].newThread(java.lang.Runnable)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:228,1"
      Dst: "[io.netty.util.concurrent.GlobalEventExecutor$2].<init>(io.netty.util.concurrent.GlobalEventExecutor,java.lang.Thread)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:228,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "io.netty.util.concurrent.GlobalEventExecutor:240,1"
      Dst: "[java.lang.Thread].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor$2].<init>(io.netty.util.concurrent.GlobalEventExecutor,java.lang.Thread)"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor$2"
    linkageType: ""
    functionLinenumber: 227
    functionLinenumberEnd: 229
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.GlobalEventExecutor"
    - "java.lang.Thread"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.GlobalEventExecutor$2:228,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].access$000()"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor].access$100(io.netty.util.concurrent.GlobalEventExecutor)"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "java.util.concurrent.atomic.AtomicBoolean"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GlobalEventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].handshaker()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].dropPongFrames()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].sendCloseFrame()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].forceCloseTimeoutMillis()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].<init>(boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,long)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].webSocketUri()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].version()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].subprotocol()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].allowExtensions()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].customHeaders()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].maxFramePayloadLength()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].performMasking()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].allowMaskMismatch()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].absoluteUpgradeUrl()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakerFactory].newHandshaker(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,long,boolean)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:85,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:85,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].dropPongFrames()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:86,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].sendCloseFrame()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:86,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].forceCloseTimeoutMillis()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:85,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].<init>(boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,long)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:88,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].webSocketUri()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:89,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].version()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:90,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].subprotocol()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:91,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].allowExtensions()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:92,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].customHeaders()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:93,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].maxFramePayloadLength()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:94,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].performMasking()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:95,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].allowMaskMismatch()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:97,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].absoluteUpgradeUrl()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:87,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakerFactory].newHandshaker(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 9
    argTypes:
    - "java.net.URI"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "java.lang.String"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean,long)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:130,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 10
    argTypes:
    - "java.net.URI"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "java.lang.String"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakerFactory].newHandshaker(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,boolean,long)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:165,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakerFactory].newHandshaker(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:165,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.net.URI"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "java.lang.String"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,long)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:191,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.net.URI"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "java.lang.String"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    - "boolean"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean,long)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:218,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.net.URI"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "java.lang.String"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,long)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:240,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.net.URI"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "java.lang.String"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,long)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:265,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,boolean,long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:279,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,boolean,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker"
    - "boolean"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,boolean,boolean,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:296,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,boolean,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,boolean,boolean,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:312,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,boolean,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,boolean,boolean,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker"
    - "boolean"
    - "boolean"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].<init>(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].newBuilder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].handleCloseFrames(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].handshakeTimeoutMillis(long)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].build()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:331,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].<init>(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:333,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].newBuilder()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:334,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].handleCloseFrames(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:335,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].handshakeTimeoutMillis(long)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:336,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:347,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,boolean,long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:361,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: 365
    functionLinenumberEnd: 372
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].handleCloseFrames()"
    - "[io.netty.channel.AbstractChannelHandlerContext].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:366"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:370"
        BranchSideFuncs:
        - "close()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:369"
        BranchSideFuncs:
        - "decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:366"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:370"
        BranchSideFuncs:
        - "close()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:369"
        BranchSideFuncs:
        - "decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:366,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].handleCloseFrames()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:367,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:370,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].handleCloseFrames()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].buildHandshakeException(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: 374
    functionLinenumberEnd: 376
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:375,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException].<init>(java.lang.String,io.netty.handler.codec.http.HttpResponse)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException:36,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException].<init>(java.lang.String,io.netty.handler.codec.http.HttpResponse)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException].<init>(java.lang.String,io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 48
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketHandshakeException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 18
    ICount: 14
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException:45"
        BranchSideFuncs:
        - "protocolVersion()"
        - "<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.handler.codec.http.HttpHeaders)"
        - "status()"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException:44"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException:40,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketHandshakeException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException:42,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException:43,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException:43,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException:43,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.handler.codec.http.HttpHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketHandshakeException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketHandshakeException"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketHandshakeException:26,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpResponse"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 79
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpResponseStatus"
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpMessage].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpResponse:76,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpMessage].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.DefaultHttpResponse:77,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: 379
    functionLinenumberEnd: 392
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].get(java.lang.Class)"
    - "[io.netty.channel.DefaultChannelPipeline].addBefore(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[java.lang.Class].getName()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].name()"
    - "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,long)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].handshakeTimeoutMillis()"
    - "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].<init>()"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].get(java.lang.Class)"
    - "[io.netty.channel.ChannelHandlerContext].name()"
    - "[io.netty.channel.ChannelPipeline].addBefore(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    functionUses: 5
    ICount: 25
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:381"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:385"
        BranchSideFuncs:
        - "get(java.lang.Class)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:386"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:390"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:380,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:381,1"
      Dst: "[io.netty.channel.ChannelPipeline].get(java.lang.Class)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:383,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].name()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:383,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:384,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].handshakeTimeoutMillis()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:384,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,long)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:383,1"
      Dst: "[io.netty.channel.ChannelPipeline].addBefore(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:388,1"
      Dst: "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].handshakeTimeoutMillis()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(long,java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:44,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:46,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    functionSourceFile: "io.netty.channel.ChannelInboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerAdapter].<init>()"
    functionUses: 10
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelInboundHandlerAdapter:34,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].<init>(boolean)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:34,1"
      Dst: "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 40
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:37,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:47,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].flush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].flush(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:47,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].flush(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].read(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].read(io.netty.channel.ChannelHandlerContext)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:47,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].read(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:47,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:47,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:47,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:47,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:47,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:47,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler:47,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean,java.util.function.BiConsumer,java.util.function.BiConsumer)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 100
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    - "boolean"
    - "java.util.function.BiConsumer"
    - "java.util.function.BiConsumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].<init>(javax.net.ssl.SSLEngine)"
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector].<init>(io.netty.handler.ssl.JdkAlpnSslEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector)"
    - "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$1].newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$2].newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    - "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine$2].accept(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine$1].accept(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine$2].accept(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine$1].accept(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].protocolListenerFactory()"
    - "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator].protocolListenerFactory()"
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].protocolListenerFactory()"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$3].newListener(javax.net.ssl.SSLEngine,java.util.List)"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$4].newListener(javax.net.ssl.SSLEngine,java.util.List)"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.ApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory].newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    - "[java.util.function.BiConsumer].accept(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator].protocolListenerFactory()"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory].newListener(javax.net.ssl.SSLEngine,java.util.List)"
    functionUses: 2
    ICount: 28
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslEngine:88"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:94"
        BranchSideFuncs:
        - "<init>(java.util.Collection)"
        - "protocolSelectorFactory()"
        - "<init>(io.netty.handler.ssl.JdkAlpnSslEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector)"
        - "newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:93"
        BranchSideFuncs:
        - "protocolListenerFactory()"
        - "protocols()"
        - "accept(java.lang.Object,java.lang.Object)"
        - "newListener(javax.net.ssl.SSLEngine,java.util.List)"
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:87,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].<init>(javax.net.ssl.SSLEngine)"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:90,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator].protocolSelectorFactory()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:91,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolNegotiator].protocols()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:91,1"
      Dst: "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:91,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory].newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:91,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector].<init>(io.netty.handler.ssl.JdkAlpnSslEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector)"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:92,1"
      Dst: "[java.util.function.BiConsumer].accept(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:94,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator].protocolListenerFactory()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:95,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory].newListener(javax.net.ssl.SSLEngine,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 118
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean,java.util.function.BiConsumer,java.util.function.BiConsumer)"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine$2].<init>()"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine$1].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:104,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine$1].<init>()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:104,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine$2].<init>()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:104,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean,java.util.function.BiConsumer,java.util.function.BiConsumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine].verifyProtocolSelection(javax.net.ssl.SSLEngineResult)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 144
    functionDepth: 3
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLEngineResult"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngineResult].getHandshakeStatus()"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].getApplicationProtocol()"
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine].getApplicationProtocol()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.String].isEmpty()"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelectionListener].unsupported()"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelectionListener].selected(java.lang.String)"
    - "[io.netty.handler.ssl.SslUtils].toSSLHandshakeException(java.lang.Throwable)"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector].checkUnsupported()"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener].unsupported()"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener].selected(java.lang.String)"
    functionUses: 2
    ICount: 35
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslEngine:120"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:143"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:142"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslEngine:121"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:138"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslEngine:125"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:126"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:125"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslEngine:125"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:126"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:125"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslEngine:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:133"
        BranchSideFuncs:
        - "unsupported()"
        - "isEmpty()"
        - "selected(java.lang.String)"
        - "toSSLHandshakeException(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:132"
        BranchSideFuncs:
        - "selected(java.lang.String)"
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslEngine:139"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:140"
        BranchSideFuncs:
        - "checkUnsupported()"
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:139"
        BranchSideFuncs:
        - "checkUnsupported()"
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslEngine:139"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:140"
        BranchSideFuncs:
        - "checkUnsupported()"
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:139"
        BranchSideFuncs:
        - "checkUnsupported()"
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:120,1"
      Dst: "[javax.net.ssl.SSLEngineResult].getHandshakeStatus()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:124,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine].getApplicationProtocol()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:125,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:126,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:131,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener].unsupported()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:133,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener].selected(java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:136,1"
      Dst: "[io.netty.handler.ssl.SslUtils].toSSLHandshakeException(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:140,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector].checkUnsupported()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine].getApplicationProtocol()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnSslUtils].getApplicationProtocol(javax.net.ssl.SSLEngine)"
    - "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:193,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:193,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslUtils].getApplicationProtocol(javax.net.ssl.SSLEngine)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "javax.net.ssl.SSLEngine"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils].getApplicationProtocol(javax.net.ssl.SSLEngine)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 132
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils:127,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils:131,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector].checkUnsupported()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 81
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].getApplicationProtocol()"
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine].getApplicationProtocol()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.String].isEmpty()"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector].unsupported()"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector].unsupported()"
    functionUses: 1
    ICount: 17
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:72"
        BranchSideFuncs:
        - "<init>()"
        - "getApplicationProtocol()"
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:74"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:75"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:74"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:75"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:73,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine].getApplicationProtocol()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:74,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:76,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:78,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector].unsupported()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine].wrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].wrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].verifyProtocolSelection(javax.net.ssl.SSLEngineResult)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:148,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].wrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:148,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine].verifyProtocolSelection(javax.net.ssl.SSLEngineResult)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].wrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].wrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:77,1"
      Dst: "[javax.net.ssl.SSLEngine].wrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine].wrap(java.nio.ByteBuffer[],java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 4
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer[]"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].verifyProtocolSelection(javax.net.ssl.SSLEngineResult)"
    - "[io.netty.handler.ssl.JdkSslEngine].wrap(java.nio.ByteBuffer[],java.nio.ByteBuffer)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:153,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].wrap(java.nio.ByteBuffer[],java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:153,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine].verifyProtocolSelection(javax.net.ssl.SSLEngineResult)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].wrap(java.nio.ByteBuffer[],java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer[]"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].wrap(java.nio.ByteBuffer[],java.nio.ByteBuffer)"
    - "[io.netty.handler.ssl.JdkSslEngine].wrap(java.nio.ByteBuffer[],java.nio.ByteBuffer)"
    - "[javax.net.ssl.SSLEngine].wrap(java.nio.ByteBuffer[],java.nio.ByteBuffer)"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:82,1"
      Dst: "[javax.net.ssl.SSLEngine].wrap(java.nio.ByteBuffer[],java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine].wrap(java.nio.ByteBuffer[],int,int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 4
    argTypes:
    - "java.nio.ByteBuffer[]"
    - "int"
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].wrap(java.nio.ByteBuffer[],int,int,java.nio.ByteBuffer)"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].verifyProtocolSelection(javax.net.ssl.SSLEngineResult)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:158,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].wrap(java.nio.ByteBuffer[],int,int,java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:158,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine].verifyProtocolSelection(javax.net.ssl.SSLEngineResult)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].wrap(java.nio.ByteBuffer[],int,int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 4
    argTypes:
    - "java.nio.ByteBuffer[]"
    - "int"
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].wrap(java.nio.ByteBuffer[],int,int,java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:87,1"
      Dst: "[javax.net.ssl.SSLEngine].wrap(java.nio.ByteBuffer[],int,int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionDepth: 4
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].verifyProtocolSelection(javax.net.ssl.SSLEngineResult)"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:163,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:163,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine].verifyProtocolSelection(javax.net.ssl.SSLEngineResult)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    - "[io.netty.handler.ssl.JdkSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    - "[javax.net.ssl.SSLEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    functionUses: 5
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:92,1"
      Dst: "[javax.net.ssl.SSLEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer[])"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "java.nio.ByteBuffer[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer[])"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].verifyProtocolSelection(javax.net.ssl.SSLEngineResult)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:168,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer[])"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:168,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine].verifyProtocolSelection(javax.net.ssl.SSLEngineResult)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer[])"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "java.nio.ByteBuffer[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:97,1"
      Dst: "[javax.net.ssl.SSLEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer[])"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer[],int,int)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 4
    argTypes:
    - "java.nio.ByteBuffer"
    - "java.nio.ByteBuffer[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer[],int,int)"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].verifyProtocolSelection(javax.net.ssl.SSLEngineResult)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:173,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer[],int,int)"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:173,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine].verifyProtocolSelection(javax.net.ssl.SSLEngineResult)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer[],int,int)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 4
    argTypes:
    - "java.nio.ByteBuffer"
    - "java.nio.ByteBuffer[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer[],int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:102,1"
      Dst: "[javax.net.ssl.SSLEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine].setNegotiatedApplicationProtocol(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine].getNegotiatedApplicationProtocol()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 188
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine].getApplicationProtocol()"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].getApplicationProtocol()"
    - "[java.lang.String].isEmpty()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslEngine:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:187"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:186"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslEngine:185"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine:184"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:183,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine].getApplicationProtocol()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:185,1"
      Dst: "[java.lang.String].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine].getHandshakeApplicationProtocol()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - "[io.netty.handler.ssl.JdkAlpnSslUtils].getHandshakeApplicationProtocol(javax.net.ssl.SSLEngine)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:197,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:197,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslUtils].getHandshakeApplicationProtocol(javax.net.ssl.SSLEngine)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils].getHandshakeApplicationProtocol(javax.net.ssl.SSLEngine)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils:137,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils:141,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine].setHandshakeApplicationProtocolSelector(java.util.function.BiFunction<SSLEngine,List<String>,String>)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.function.BiFunction<SSLEngine,List<String>,String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - "[io.netty.handler.ssl.JdkAlpnSslUtils].setHandshakeApplicationProtocolSelector(javax.net.ssl.SSLEngine,java.util.function.BiFunction)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:201,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:201,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslUtils].setHandshakeApplicationProtocolSelector(javax.net.ssl.SSLEngine,java.util.function.BiFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine].getHandshakeApplicationProtocolSelector()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.BiFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - "[io.netty.handler.ssl.JdkAlpnSslUtils].getHandshakeApplicationProtocolSelector(javax.net.ssl.SSLEngine)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:205,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine:205,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslUtils].getHandshakeApplicationProtocolSelector(javax.net.ssl.SSLEngine)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils].getHandshakeApplicationProtocolSelector(javax.net.ssl.SSLEngine)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.function.BiFunction<SSLEngine,List<String>,String>"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils:174,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils:178,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].<init>(io.netty.channel.socket.DatagramChannel,java.net.DatagramSocket)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.DatagramChannel"
    - "java.net.DatagramSocket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].<init>(io.netty.channel.socket.DatagramChannel,java.net.DatagramSocket)"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].<init>(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:39,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].<init>(io.netty.channel.socket.DatagramChannel,java.net.DatagramSocket)"
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:40,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:40,1"
      Dst: "[io.netty.channel.PreferHeapByteBufAllocator].<init>(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:40,1"
      Dst: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:45,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].getOptions()"
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:45,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:67,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:66,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:86,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "io.netty.channel.ChannelOption[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.IdentityHashMap].<init>()"
    - "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelConfig:96"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:99"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelConfig:98"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:99"
      Branch Sides: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:97,1"
      Dst: "[java.util.IdentityHashMap].<init>()"
    - Src: "io.netty.channel.DefaultChannelConfig:100,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - Src: "io.netty.channel.DefaultChannelConfig:100,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 55
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].getSoTimeout()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 7
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:51"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:54"
        BranchSideFuncs:
        - "valueOf(int)"
        - "getSoTimeout()"
      - BranchSide: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:53"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:52,1"
      Dst: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].getSoTimeout()"
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:52,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:54,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].getSoTimeout()"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 85
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].getSoTimeout()"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].javaSocket()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:82,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].javaSocket()"
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:82,1"
      Dst: "[java.net.DatagramSocket].getSoTimeout()"
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:84,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].javaSocket()"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "java.net.DatagramSocket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.ChannelException"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 183
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelException:54,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 67
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setSoTimeout(int)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:61"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:64"
        BranchSideFuncs:
        - "setSoTimeout(int)"
        - "intValue()"
      - BranchSide: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:63"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:59,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:62,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:62,1"
      Dst: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setSoTimeout(int)"
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:64,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.unix.RawUnixChannelOption].validate(java.lang.Object)"
    - "[io.netty.channel.ChannelOption].validate(java.lang.Object)"
    functionUses: 26
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:206,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelConfig:206,1"
      Dst: "[io.netty.channel.ChannelOption].validate(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOption].validate(java.lang.Object)"
    functionSourceFile: "io.netty.channel.ChannelOption"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOption:164,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setSoTimeout(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 77
    functionDepth: 1
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].javaSocket()"
    - "[java.net.DatagramSocket].setSoTimeout(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:72,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].javaSocket()"
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:72,1"
      Dst: "[java.net.DatagramSocket].setSoTimeout(int)"
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:74,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 138
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setBroadcast(boolean)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setBroadcast(boolean)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setReceiveBufferSize(int)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setReceiveBufferSize(int)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setSendBufferSize(int)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setSendBufferSize(int)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setReuseAddress(boolean)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setReuseAddress(boolean)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setLoopbackModeDisabled(boolean)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setLoopbackModeDisabled(boolean)"
    - "[io.netty.channel.socket.nio.NioDatagramChannelConfig].setLoopbackModeDisabled(boolean)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setInterface(java.net.InetAddress)"
    - "[io.netty.channel.socket.nio.NioDatagramChannelConfig].setInterface(java.net.InetAddress)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setInterface(java.net.InetAddress)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setNetworkInterface(java.net.NetworkInterface)"
    - "[io.netty.channel.socket.nio.NioDatagramChannelConfig].setNetworkInterface(java.net.NetworkInterface)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setNetworkInterface(java.net.NetworkInterface)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setTimeToLive(int)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setTimeToLive(int)"
    - "[io.netty.channel.socket.nio.NioDatagramChannelConfig].setTimeToLive(int)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setTrafficClass(int)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setTrafficClass(int)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setActiveOnOpen(boolean)"
    - "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 4
    ICount: 65
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:113"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:115"
        BranchSideFuncs:
        - "setBroadcast(boolean)"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:114"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:115"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:117"
        BranchSideFuncs:
        - "setReceiveBufferSize(int)"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:116"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:117"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:119"
        BranchSideFuncs:
        - "setSendBufferSize(int)"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:118"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:119"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:121"
        BranchSideFuncs:
        - "setReuseAddress(boolean)"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:120"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:121"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:123"
        BranchSideFuncs:
        - "setLoopbackModeDisabled(boolean)"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:122"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:123"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:125"
        BranchSideFuncs:
        - "setInterface(java.net.InetAddress)"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:124"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:125"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:127"
        BranchSideFuncs:
        - "setNetworkInterface(java.net.NetworkInterface)"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:126"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:127"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:129"
        BranchSideFuncs:
        - "setTimeToLive(int)"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:128"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:129"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:131"
        BranchSideFuncs:
        - "setTrafficClass(int)"
        - "intValue()"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:130"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:131"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:134"
        BranchSideFuncs:
        - "booleanValue()"
        - "setActiveOnOpen(boolean)"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:133"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:111,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:114,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:114,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setBroadcast(boolean)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:116,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:116,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:118,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setSendBufferSize(int)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:120,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setReuseAddress(boolean)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:122,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setLoopbackModeDisabled(boolean)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:124,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setInterface(java.net.InetAddress)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:126,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setNetworkInterface(java.net.NetworkInterface)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:128,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setTimeToLive(int)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:130,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setTrafficClass(int)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:132,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setActiveOnOpen(boolean)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:134,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 22
    CyclomaticComplexity: 10
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setBroadcast(boolean)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 177
    functionDepth: 1
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].getLocalAddress()"
    - "[java.net.Inet6Address].isAnyLocalAddress()"
    - "[java.net.Inet4Address].isAnyLocalAddress()"
    - "[java.net.InetAddress].isAnyLocalAddress()"
    - "[io.netty.util.internal.PlatformDependent].isWindows()"
    - "[io.netty.util.internal.PlatformDependent].maybeSuperUser()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.net.DatagramSocket].getLocalSocketAddress()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.net.DatagramSocket].setBroadcast(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String)"
    functionUses: 2
    ICount: 29
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:160"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:172"
        BranchSideFuncs:
        - "getLocalAddress()"
        - "isAnyLocalAddress()"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:171"
        BranchSideFuncs:
        - "setBroadcast(boolean)"
        - "<init>(java.lang.Throwable)"
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:161"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:172"
        BranchSideFuncs:
        - "isWindows()"
        - "maybeSuperUser()"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:171"
        BranchSideFuncs:
        - "setBroadcast(boolean)"
        - "<init>(java.lang.Throwable)"
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:162"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:171"
        BranchSideFuncs:
        - "setBroadcast(boolean)"
        - "<init>(java.lang.Throwable)"
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:162"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:171"
        BranchSideFuncs:
        - "setBroadcast(boolean)"
        - "<init>(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:161,1"
      Dst: "[java.net.DatagramSocket].getLocalAddress()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:161,1"
      Dst: "[java.net.InetAddress].isAnyLocalAddress()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:162,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isWindows()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:162,1"
      Dst: "[io.netty.util.internal.PlatformDependent].maybeSuperUser()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:165,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:165,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:169,1"
      Dst: "[java.net.DatagramSocket].getLocalSocketAddress()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:169,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:169,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:169,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:165,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:172,1"
      Dst: "[java.net.DatagramSocket].setBroadcast(boolean)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:174,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.internal.PlatformDependent].isWindows()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 339
    functionLinenumberEnd: 341
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].maybeSuperUser()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 354
    functionLinenumberEnd: 356
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 296
    functionDepth: 1
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].setReceiveBufferSize(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:291,1"
      Dst: "[java.net.DatagramSocket].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:293,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 309
    functionLinenumberEnd: 315
    functionDepth: 1
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].setSendBufferSize(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:310,1"
      Dst: "[java.net.DatagramSocket].setSendBufferSize(int)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:312,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setReuseAddress(boolean)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 277
    functionDepth: 1
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].setReuseAddress(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:272,1"
      Dst: "[java.net.DatagramSocket].setReuseAddress(boolean)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:274,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setLoopbackModeDisabled(boolean)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 220
    functionLinenumberEnd: 231
    functionDepth: 1
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.MulticastSocket].setLoopbackMode(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 2
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:221"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:227"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:223,1"
      Dst: "[java.net.MulticastSocket].setLoopbackMode(boolean)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:225,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:228,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setInterface(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 204
    functionDepth: 1
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.MulticastSocket].setInterface(java.net.InetAddress)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 2
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:194"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:200"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:196,1"
      Dst: "[java.net.MulticastSocket].setInterface(java.net.InetAddress)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:198,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:201,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setNetworkInterface(java.net.NetworkInterface)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 258
    functionDepth: 1
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "java.net.NetworkInterface"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.MulticastSocket].setNetworkInterface(java.net.NetworkInterface)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 2
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:248"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:254"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:250,1"
      Dst: "[java.net.MulticastSocket].setNetworkInterface(java.net.NetworkInterface)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:252,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:255,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setTimeToLive(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 331
    functionLinenumberEnd: 342
    functionDepth: 1
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.MulticastSocket].setTimeToLive(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 2
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:332"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:338"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:334,1"
      Dst: "[java.net.MulticastSocket].setTimeToLive(int)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:336,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:339,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setTrafficClass(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 355
    functionLinenumberEnd: 361
    functionDepth: 1
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].setTrafficClass(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:356,1"
      Dst: "[java.net.DatagramSocket].setTrafficClass(int)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:358,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setActiveOnOpen(boolean)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 146
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].isRegistered()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isRegistered()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.channel.Channel].isRegistered()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:141"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:144"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:141,1"
      Dst: "[io.netty.channel.Channel].isRegistered()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:142,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 203
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setConnectTimeoutMillis(int)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setMaxMessagesPerRead(int)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setWriteSpinCount(int)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2StreamChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.nio.NioDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2StreamChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - "[io.netty.channel.DefaultChannelConfig].setPinEventExecutorPerGroup(boolean)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setMaxMessagesPerWrite(int)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setMaxMessagesPerWrite(int)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setMaxMessagesPerWrite(int)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setMaxMessagesPerWrite(int)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setMaxMessagesPerWrite(int)"
    - "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerWrite(int)"
    functionUses: 11
    ICount: 80
    EdgeCount: 295
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelConfig:172"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:174"
        BranchSideFuncs:
        - "setConnectTimeoutMillis(int)"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:174"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:176"
        BranchSideFuncs:
        - "setMaxMessagesPerRead(int)"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:175"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:176"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:178"
        BranchSideFuncs:
        - "setWriteSpinCount(int)"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:177"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:178"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:180"
        BranchSideFuncs:
        - "setAllocator(io.netty.buffer.ByteBufAllocator)"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:179"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:180"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:182"
        BranchSideFuncs:
        - "setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:181"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:182"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:184"
        BranchSideFuncs:
        - "setAutoRead(boolean)"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:183"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:184"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:186"
        BranchSideFuncs:
        - "setAutoClose(boolean)"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:185"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:186"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:188"
        BranchSideFuncs:
        - "setWriteBufferHighWaterMark(int)"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:187"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:188"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:190"
        BranchSideFuncs:
        - "setWriteBufferLowWaterMark(int)"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:189"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:190"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:192"
        BranchSideFuncs:
        - "setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:191"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:192"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:194"
        BranchSideFuncs:
        - "setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:193"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:194"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:196"
        BranchSideFuncs:
        - "booleanValue()"
        - "setPinEventExecutorPerGroup(boolean)"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:195"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:196"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:199"
        BranchSideFuncs:
        - "intValue()"
        - "setMaxMessagesPerWrite(int)"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:198"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:170,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.DefaultChannelConfig:173,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.DefaultChannelConfig:173,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    - Src: "io.netty.channel.DefaultChannelConfig:175,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    - Src: "io.netty.channel.DefaultChannelConfig:177,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    - Src: "io.netty.channel.DefaultChannelConfig:179,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.DefaultChannelConfig:181,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - Src: "io.netty.channel.DefaultChannelConfig:183,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.DefaultChannelConfig:183,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    - Src: "io.netty.channel.DefaultChannelConfig:185,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    - Src: "io.netty.channel.DefaultChannelConfig:187,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    - Src: "io.netty.channel.DefaultChannelConfig:189,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    - Src: "io.netty.channel.DefaultChannelConfig:191,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    - Src: "io.netty.channel.DefaultChannelConfig:193,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    - Src: "io.netty.channel.DefaultChannelConfig:195,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setPinEventExecutorPerGroup(boolean)"
    - Src: "io.netty.channel.DefaultChannelConfig:197,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerWrite(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 28
    CyclomaticComplexity: 13
  - functionName: "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 219
    functionDepth: 1
    returnType: "io.netty.channel.ChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:216,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ObjectUtil"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 147
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 60
    ICount: 14
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ObjectUtil:143"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectUtil:146"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.util.internal.ObjectUtil:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectUtil:144,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.ObjectUtil:144,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:144,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.internal.ObjectUtil:144,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.ObjectUtil:144,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 248
    functionLinenumberEnd: 254
    functionDepth: 1
    returnType: "io.netty.channel.ChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].getRecvByteBufAllocator()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator].maxMessagesPerRead(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.MaxMessagesRecvByteBufAllocator].maxMessagesPerRead(int)"
    functionUses: 10
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:249,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getRecvByteBufAllocator()"
    - Src: "io.netty.channel.DefaultChannelConfig:250,1"
      Dst: "[io.netty.channel.MaxMessagesRecvByteBufAllocator].maxMessagesPerRead(int)"
    - Src: "io.netty.channel.DefaultChannelConfig:253,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].getRecvByteBufAllocator()"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 307
    functionLinenumberEnd: 309
    functionDepth: 0
    returnType: "io.netty.channel.RecvByteBufAllocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 281
    functionLinenumberEnd: 292
    functionDepth: 1
    returnType: "io.netty.channel.ChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 10
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelConfig:287"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:290"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelConfig:289"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:282,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 300
    functionLinenumberEnd: 303
    functionDepth: 1
    returnType: "io.netty.channel.ChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:301,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 312
    functionLinenumberEnd: 315
    functionDepth: 1
    returnType: "io.netty.channel.ChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 13
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:313,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 338
    functionLinenumberEnd: 346
    functionDepth: 1
    returnType: "io.netty.channel.ChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].read()"
    - "[io.netty.channel.AbstractChannel].read()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].autoReadCleared()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$OioSctpChannelConfig].autoReadCleared()"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].autoReadCleared()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$NioSctpServerChannelConfig].autoReadCleared()"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].autoReadCleared()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$NioSctpChannelConfig].autoReadCleared()"
    - "[io.netty.channel.socket.nio.NioDatagramChannelConfig].autoReadCleared()"
    - "[io.netty.channel.epoll.EpollChannelConfig].autoReadCleared()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$OioSctpServerChannelConfig].autoReadCleared()"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].autoReadCleared()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].autoReadCleared()"
    - "[io.netty.channel.DefaultChannelConfig].autoReadCleared()"
    - "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].getAndSet(java.lang.Object,int)"
    - "[io.netty.channel.Channel].read()"
    functionUses: 16
    ICount: 24
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelConfig:339"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:339"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelConfig:338"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:339"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelConfig:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:340"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:342"
        BranchSideFuncs:
        - "read()"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:341"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:340"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:342"
        BranchSideFuncs:
        - "read()"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:341"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:342"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:345"
        BranchSideFuncs:
        - "autoReadCleared()"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:344"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:342"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:345"
        BranchSideFuncs:
        - "autoReadCleared()"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:344"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:339,1"
      Dst: "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].getAndSet(java.lang.Object,int)"
    - Src: "io.netty.channel.DefaultChannelConfig:341,1"
      Dst: "[io.netty.channel.Channel].read()"
    - Src: "io.netty.channel.DefaultChannelConfig:343,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].autoReadCleared()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 7
  - functionName: "[io.netty.channel.DefaultChannelConfig].autoReadCleared()"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 351
    functionLinenumberEnd: 353
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 360
    functionLinenumberEnd: 363
    functionDepth: 0
    returnType: "io.netty.channel.ChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 371
    functionLinenumberEnd: 386
    functionDepth: 2
    returnType: "io.netty.channel.ChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[io.netty.channel.WriteBufferWaterMark].low()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.WriteBufferWaterMark].<init>(int,int,boolean)"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionUses: 10
    ICount: 25
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelConfig:375"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:null"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
    - Branch String: "io.netty.channel.DefaultChannelConfig:381"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:384"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:372,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelConfig:375,1"
      Dst: "[io.netty.channel.WriteBufferWaterMark].low()"
    - Src: "io.netty.channel.DefaultChannelConfig:376,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.DefaultChannelConfig:376,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelConfig:378,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.DefaultChannelConfig:378,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.DefaultChannelConfig:378,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelConfig:382,1"
      Dst: "[io.netty.channel.WriteBufferWaterMark].<init>(int,int,boolean)"
    - Src: "io.netty.channel.DefaultChannelConfig:381,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.WriteBufferWaterMark].low()"
    functionSourceFile: "io.netty.channel.WriteBufferWaterMark"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.WriteBufferWaterMark].<init>(int,int,boolean)"
    functionSourceFile: "io.netty.channel.WriteBufferWaterMark"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 70
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 3
    ICount: 21
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.WriteBufferWaterMark:58"
      Branch Sides:
      - BranchSide: "io.netty.channel.WriteBufferWaterMark:67"
        BranchSideFuncs:
        - "checkPositiveOrZero(int,java.lang.String)"
      - BranchSide: "io.netty.channel.WriteBufferWaterMark:66"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.WriteBufferWaterMark:60"
      Branch Sides:
      - BranchSide: "io.netty.channel.WriteBufferWaterMark:67"
        BranchSideFuncs:
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.channel.WriteBufferWaterMark:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.WriteBufferWaterMark:57,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.WriteBufferWaterMark:59,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.channel.WriteBufferWaterMark:61,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.WriteBufferWaterMark:61,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.WriteBufferWaterMark:61,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.WriteBufferWaterMark:61,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.WriteBufferWaterMark:61,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 394
    functionLinenumberEnd: 409
    functionDepth: 2
    returnType: "io.netty.channel.ChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[io.netty.channel.WriteBufferWaterMark].high()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.WriteBufferWaterMark].<init>(int,int,boolean)"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionUses: 10
    ICount: 25
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelConfig:398"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:null"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
    - Branch String: "io.netty.channel.DefaultChannelConfig:404"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:407"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:395,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelConfig:398,1"
      Dst: "[io.netty.channel.WriteBufferWaterMark].high()"
    - Src: "io.netty.channel.DefaultChannelConfig:399,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.DefaultChannelConfig:399,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelConfig:401,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.DefaultChannelConfig:401,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.DefaultChannelConfig:401,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelConfig:405,1"
      Dst: "[io.netty.channel.WriteBufferWaterMark].<init>(int,int,boolean)"
    - Src: "io.netty.channel.DefaultChannelConfig:404,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.WriteBufferWaterMark].high()"
    functionSourceFile: "io.netty.channel.WriteBufferWaterMark"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 412
    functionLinenumberEnd: 415
    functionDepth: 1
    returnType: "io.netty.channel.ChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 10
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:413,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 428
    functionLinenumberEnd: 431
    functionDepth: 1
    returnType: "io.netty.channel.ChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 10
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:429,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].setPinEventExecutorPerGroup(boolean)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 433
    functionLinenumberEnd: 436
    functionDepth: 0
    returnType: "io.netty.channel.ChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerWrite(int)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 270
    functionLinenumberEnd: 273
    functionDepth: 1
    returnType: "io.netty.channel.ChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:271,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setBroadcast(boolean)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setBroadcast(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:90,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setBroadcast(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setInterface(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setInterface(java.net.InetAddress)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:96,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setInterface(java.net.InetAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setLoopbackModeDisabled(boolean)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 104
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setLoopbackModeDisabled(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:102,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setLoopbackModeDisabled(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setNetworkInterface(java.net.NetworkInterface)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "java.net.NetworkInterface"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setNetworkInterface(java.net.NetworkInterface)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:108,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setNetworkInterface(java.net.NetworkInterface)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setReuseAddress(boolean)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setReuseAddress(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:114,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setReuseAddress(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 122
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setReceiveBufferSize(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:120,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setReceiveBufferSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setSendBufferSize(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:126,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setSendBufferSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setTimeToLive(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setTimeToLive(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:132,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setTimeToLive(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setTrafficClass(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setTrafficClass(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:138,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setTrafficClass(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setWriteSpinCount(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:144,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 364
    functionLinenumberEnd: 367
    functionDepth: 2
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:365,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 152
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:150,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 370
    functionLinenumberEnd: 373
    functionDepth: 2
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:371,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:156,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 377
    functionLinenumberEnd: 380
    functionDepth: 2
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:378,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 164
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:162,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 383
    functionLinenumberEnd: 386
    functionDepth: 2
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:384,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:168,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 389
    functionLinenumberEnd: 392
    functionDepth: 2
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:390,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setAutoRead(boolean)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:174,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 395
    functionLinenumberEnd: 398
    functionDepth: 2
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:396,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setAutoClose(boolean)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setAutoClose(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:180,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setAutoClose(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setAutoClose(boolean)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 401
    functionLinenumberEnd: 404
    functionDepth: 1
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:402,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionDepth: 4
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:186,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 407
    functionLinenumberEnd: 410
    functionDepth: 3
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:408,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionDepth: 4
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:192,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 413
    functionLinenumberEnd: 416
    functionDepth: 3
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:414,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:198,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 419
    functionLinenumberEnd: 422
    functionDepth: 2
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:420,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig:204,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 425
    functionLinenumberEnd: 428
    functionDepth: 2
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:426,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel$1].<init>(io.netty.channel.sctp.oio.OioSctpChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel$1"
    linkageType: ""
    functionLinenumber: 428
    functionLinenumberEnd: 430
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.sctp.oio.OioSctpChannel"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel$1:429,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel$1"
    linkageType: ""
    functionLinenumber: 431
    functionLinenumberEnd: 434
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.oio.OioSctpChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 50
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel$1:432,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 420
    functionLinenumberEnd: 437
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].<init>(io.netty.channel.sctp.oio.OioSctpChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[com.sun.nio.sctp.SctpChannel].bindAddress(java.net.InetAddress)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 1
    ICount: 18
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:421"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:428"
        BranchSideFuncs:
        - "run()"
        - "eventLoop()"
        - "execute(java.lang.Runnable)"
        - "<init>(io.netty.channel.sctp.oio.OioSctpChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:421,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:421,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:423,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].bindAddress(java.net.InetAddress)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:424,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:426,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:429,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel$1].<init>(io.netty.channel.sctp.oio.OioSctpChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:429,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].<init>()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].newSocketDomainDgram()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:64,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].newSocketDomainDgram()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:64,1"
      Dst: "[io.netty.channel.epoll.EpollDomainDatagramChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].<init>(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].<init>(int)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:68,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].<init>(int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:68,1"
      Dst: "[io.netty.channel.epoll.EpollDomainDatagramChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.epoll.LinuxSocket"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel].<init>(io.netty.channel.Channel,io.netty.channel.epoll.LinuxSocket,boolean)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].<init>(io.netty.channel.epoll.EpollDomainDatagramChannel)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:72,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].<init>(io.netty.channel.Channel,io.netty.channel.epoll.LinuxSocket,boolean)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:73,1"
      Dst: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].<init>(io.netty.channel.epoll.EpollDomainDatagramChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 57
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel].doBind(java.net.SocketAddress)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:83,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].doBind(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].doClose()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel].doClose()"
    functionUses: 7
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:90,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].doClose()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:98"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:106"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:105"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:99"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:98,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].doDisconnect()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].doClose()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:111,1"
      Dst: "[io.netty.channel.epoll.EpollDomainDatagramChannel].doClose()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].doWrite(io.netty.channel.ChannelOutboundBuffer)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 156
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].maxMessagesPerWrite()"
    - "[io.netty.channel.ChannelOutboundBuffer].current()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].getWriteSpinCount()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].doWriteMessage(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundBuffer].remove()"
    - "[io.netty.channel.ChannelOutboundBuffer].remove(java.lang.Throwable)"
    - "[io.netty.channel.ChannelOutboundBuffer].isEmpty()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].clearFlag(int)"
    - "[io.netty.channel.epoll.AbstractEpollChannel].setFlag(int)"
    functionUses: 1
    ICount: 38
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:117"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:148"
        BranchSideFuncs:
        - "current()"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:147"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:119"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:124"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:123"
        BranchSideFuncs:
        - "getWriteSpinCount()"
        - "config()"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:125"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:132"
        BranchSideFuncs:
        - "doWriteMessage(java.lang.Object)"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:131"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:126"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:132"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:136"
        BranchSideFuncs:
        - "remove()"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:135"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:148"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:152"
        BranchSideFuncs:
        - "setFlag(int)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:116,1"
      Dst: "[io.netty.channel.AbstractChannel].maxMessagesPerWrite()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:118,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].current()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:125,1"
      Dst: "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:125,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getWriteSpinCount()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:126,1"
      Dst: "[io.netty.channel.epoll.EpollDomainDatagramChannel].doWriteMessage(java.lang.Object)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:133,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].remove()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:144,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].remove(java.lang.Throwable)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:148,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].isEmpty()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:150,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].clearFlag(int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:153,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].setFlag(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 7
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].current()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 223
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:218"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:222"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:221"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].getWriteSpinCount()"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 278
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].doWriteMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 208
    functionDepth: 8
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].content()"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.channel.DefaultAddressedEnvelope].content()"
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].content()"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].recipient()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].recipient()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.channel.unix.Socket].sendAddress(long,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.channel.unix.Socket].sendToAddressDomainSocket(long,int,int,byte[])"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.channel.unix.DomainSocketAddress].path()"
    - "[io.netty.channel.epoll.EpollEventLoop].cleanIovArray()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.channel.unix.IovArray].add(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.channel.unix.IovArray].count()"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.unix.IovArray].memoryAddress(int)"
    - "[io.netty.channel.unix.FileDescriptor].writevAddresses(long,int)"
    - "[io.netty.channel.unix.Socket].sendToAddressesDomainSocket(long,int,byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.channel.unix.Socket].send(java.nio.ByteBuffer,int,int)"
    - "[io.netty.channel.unix.Socket].sendToDomainSocket(java.nio.ByteBuffer,int,int,byte[])"
    - "[io.netty.channel.AddressedEnvelope].content()"
    - "[io.netty.channel.AddressedEnvelope].recipient()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.Buffer].limit()"
    functionUses: 1
    ICount: 87
    EdgeCount: 157
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:160"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:166"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:172"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:177"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:176"
        BranchSideFuncs:
        - "hasMemoryAddress()"
        - "nioBufferCount()"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:177"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:177"
        BranchSideFuncs:
        - "memoryAddress()"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:176"
        BranchSideFuncs:
        - "hasMemoryAddress()"
        - "nioBufferCount()"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:179"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:182"
        BranchSideFuncs:
        - "sendAddress(long,int,int)"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:181"
        BranchSideFuncs:
        - "sendToAddressDomainSocket(long,int,int,byte[])"
        - "writerIndex()"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:177"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:198"
        BranchSideFuncs:
        - "memoryAddress()"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:197"
        BranchSideFuncs:
        - "readerIndex()"
        - "internalNioBuffer(int,int)"
        - "readableBytes()"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:189"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:190"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:189"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:190"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:191"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:194"
        BranchSideFuncs:
        - "writevAddresses(long,int)"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:193"
        BranchSideFuncs:
        - "sendToAddressesDomainSocket(long,int,byte[])"
        - "memoryAddress(int)"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:199"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:202"
        BranchSideFuncs:
        - "send(java.nio.ByteBuffer,int,int)"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:201"
        BranchSideFuncs:
        - "sendToDomainSocket(java.nio.ByteBuffer,int,int,byte[])"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:207"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:164,1"
      Dst: "[io.netty.channel.AddressedEnvelope].content()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:165,1"
      Dst: "[io.netty.channel.AddressedEnvelope].recipient()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:171,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:177,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:178,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:180,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:180,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:180,1"
      Dst: "[io.netty.channel.unix.Socket].sendAddress(long,int,int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:183,1"
      Dst: "[io.netty.channel.unix.DomainSocketAddress].path()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:183,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:182,1"
      Dst: "[io.netty.channel.unix.Socket].sendToAddressDomainSocket(long,int,int,byte[])"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:177,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:186,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:186,1"
      Dst: "[io.netty.channel.epoll.EpollEventLoop].cleanIovArray()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:187,1"
      Dst: "[io.netty.channel.unix.IovArray].add(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:188,1"
      Dst: "[io.netty.channel.unix.IovArray].count()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:189,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:192,1"
      Dst: "[io.netty.channel.unix.IovArray].memoryAddress(int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:192,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].writevAddresses(long,int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:194,1"
      Dst: "[io.netty.channel.unix.Socket].sendToAddressesDomainSocket(long,int,byte[])"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:198,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:200,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:200,1"
      Dst: "[java.nio.Buffer].limit()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:200,1"
      Dst: "[io.netty.channel.unix.Socket].send(java.nio.ByteBuffer,int,int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:202,1"
      Dst: "[io.netty.channel.unix.Socket].sendToDomainSocket(java.nio.ByteBuffer,int,int,byte[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 25
    CyclomaticComplexity: 9
  - functionName: "[io.netty.channel.unix.Socket].sendAddress(long,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 301
    functionLinenumberEnd: 307
    functionDepth: 3
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.unix.Socket].sendAddress(int,long,int,int)"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 3
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:303"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:306"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:305"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:302,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.unix.Socket:302,1"
      Dst: "[io.netty.channel.unix.Socket].sendAddress(int,long,int,int)"
    - Src: "io.netty.channel.unix.Socket:306,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].intValue()"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 85
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].sendAddress(int,long,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionSourceFile: "io.netty.channel.unix.Errors"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 209
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.ClosedChannelException].<init>()"
    - "[java.nio.channels.NotYetConnectedException].<init>()"
    - "[java.io.FileNotFoundException].<init>()"
    - "[io.netty.channel.unix.Errors$NativeIoException].<init>(java.lang.String,int,boolean)"
    functionUses: 24
    ICount: 25
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Errors:195"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Errors:196"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Errors:195"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Errors:195"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Errors:198"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Errors:197"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Errors:198"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Errors:201"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Errors:200"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Errors:201"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Errors:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Errors:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Errors:204"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Errors:208"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.channel.unix.Errors:207"
        BranchSideFuncs:
        - "<init>(java.lang.String,int,boolean)"
    Callsites:
    - Src: "io.netty.channel.unix.Errors:199,1"
      Dst: "[java.nio.channels.ClosedChannelException].<init>()"
    - Src: "io.netty.channel.unix.Errors:202,1"
      Dst: "[java.nio.channels.NotYetConnectedException].<init>()"
    - Src: "io.netty.channel.unix.Errors:205,1"
      Dst: "[java.io.FileNotFoundException].<init>()"
    - Src: "io.netty.channel.unix.Errors:208,1"
      Dst: "[io.netty.channel.unix.Errors$NativeIoException].<init>(java.lang.String,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Errors$NativeIoException].<init>(java.lang.String,int,boolean)"
    functionSourceFile: "io.netty.channel.unix.Errors$NativeIoException"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 88
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[io.netty.channel.unix.Errors].access$000()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 17
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Errors$NativeIoException:84,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.unix.Errors$NativeIoException:84,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.unix.Errors$NativeIoException:84,1"
      Dst: "[io.netty.channel.unix.Errors].access$000()"
    - Src: "io.netty.channel.unix.Errors$NativeIoException:84,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.unix.Errors$NativeIoException:84,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Errors].access$000()"
    functionSourceFile: "io.netty.channel.unix.Errors"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DomainSocketAddress].path()"
    functionSourceFile: "io.netty.channel.unix.DomainSocketAddress"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].sendToAddressDomainSocket(long,int,int,byte[])"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 208
    functionDepth: 3
    returnType: "int"
    argCount: 4
    argTypes:
    - "long"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].sendToAddressDomainSocket(int,long,int,int,byte[])"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:204"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:207"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:206"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:203,1"
      Dst: "[io.netty.channel.unix.Socket].sendToAddressDomainSocket(int,long,int,int,byte[])"
    - Src: "io.netty.channel.unix.Socket:207,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].sendToAddressDomainSocket(int,long,int,int,byte[])"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "int"
    - "long"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollEventLoop].cleanIovArray()"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoop"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 173
    functionDepth: 7
    returnType: "io.netty.channel.unix.IovArray"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.IovArray].<init>()"
    - "[io.netty.channel.unix.IovArray].clear()"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:167"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:170"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:169"
        BranchSideFuncs:
        - "clear()"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoop:168,1"
      Dst: "[io.netty.channel.unix.IovArray].<init>()"
    - Src: "io.netty.channel.epoll.EpollEventLoop:170,1"
      Dst: "[io.netty.channel.unix.IovArray].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.IovArray].<init>()"
    functionSourceFile: "io.netty.channel.unix.IovArray"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.IovArray].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.unix.Buffer].allocateDirectWithNativeOrder(int)"
    - "[io.netty.buffer.WrappedByteBuf].setIndex(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(java.nio.ByteBuffer)"
    - "[io.netty.buffer.ByteBuf].setIndex(int,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.IovArray:72,1"
      Dst: "[io.netty.channel.unix.Buffer].allocateDirectWithNativeOrder(int)"
    - Src: "io.netty.channel.unix.IovArray:72,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(java.nio.ByteBuffer)"
    - Src: "io.netty.channel.unix.IovArray:72,1"
      Dst: "[io.netty.buffer.ByteBuf].setIndex(int,int)"
    - Src: "io.netty.channel.unix.IovArray:72,1"
      Dst: "[io.netty.channel.unix.IovArray].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Buffer].allocateDirectWithNativeOrder(int)"
    functionSourceFile: "io.netty.channel.unix.Buffer"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocateDirect(int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Buffer:40"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Buffer:39"
        BranchSideFuncs:
        - "allocateDirect(int)"
    Callsites:
    - Src: "io.netty.channel.unix.Buffer:40,1"
      Dst: "[java.nio.ByteBuffer].allocateDirect(int)"
    - Src: "io.netty.channel.unix.Buffer:40,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.Unpooled].wrappedBuffer(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 209
    functionDepth: 5
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int)"
    - "[java.nio.Buffer].hasRemaining()"
    - "[java.nio.ByteBuffer].isDirect()"
    - "[java.nio.ByteBuffer].hasArray()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.nio.ByteBuffer].arrayOffset()"
    - "[java.nio.Buffer].position()"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.ByteBuffer].order()"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - "[java.nio.Buffer].isReadOnly()"
    functionUses: 2
    ICount: 48
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:186"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:189"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:188"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:189"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:193"
        BranchSideFuncs:
        - "hasUnsafe()"
    - Branch String: "io.netty.buffer.Unpooled:189"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:193"
        BranchSideFuncs:
        - "hasUnsafe()"
    - Branch String: "io.netty.buffer.Unpooled:194"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:205"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:204"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:195"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:202"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:201"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:196"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:199"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:198"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:205"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:208"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer)"
      - BranchSide: "io.netty.buffer.Unpooled:207"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int)"
    Callsites:
    - Src: "io.netty.buffer.Unpooled:186,1"
      Dst: "[java.nio.Buffer].hasRemaining()"
    - Src: "io.netty.buffer.Unpooled:189,1"
      Dst: "[java.nio.ByteBuffer].isDirect()"
    - Src: "io.netty.buffer.Unpooled:189,1"
      Dst: "[java.nio.ByteBuffer].hasArray()"
    - Src: "io.netty.buffer.Unpooled:191,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "io.netty.buffer.Unpooled:192,1"
      Dst: "[java.nio.ByteBuffer].arrayOffset()"
    - Src: "io.netty.buffer.Unpooled:192,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.buffer.Unpooled:193,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.Unpooled:190,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[],int,int)"
    - Src: "io.netty.buffer.Unpooled:193,1"
      Dst: "[java.nio.ByteBuffer].order()"
    - Src: "io.netty.buffer.Unpooled:193,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.buffer.Unpooled:194,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.buffer.Unpooled:195,1"
      Dst: "[java.nio.Buffer].isReadOnly()"
    - Src: "io.netty.buffer.Unpooled:197,1"
      Dst: "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.Unpooled:199,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.Unpooled:202,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int)"
    - Src: "io.netty.buffer.Unpooled:208,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 178
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].slice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].slice(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].slice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].slice(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.ByteBuf].slice(int,int)"
    functionUses: 2
    ICount: 14
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:169"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:173"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:173"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:177"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:176"
        BranchSideFuncs:
        - "wrappedBuffer(byte[])"
        - "slice(int,int)"
    - Branch String: "io.netty.buffer.Unpooled:173"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:177"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:176"
        BranchSideFuncs:
        - "wrappedBuffer(byte[])"
        - "slice(int,int)"
    Callsites:
    - Src: "io.netty.buffer.Unpooled:174,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.buffer.Unpooled:177,1"
      Dst: "[io.netty.buffer.ByteBuf].slice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.ReadOnlyUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 37
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer)"
    - "[io.netty.util.internal.PlatformDependent].directBufferAddress(java.nio.ByteBuffer)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyUnsafeDirectByteBuf:32,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.ReadOnlyUnsafeDirectByteBuf:35,1"
      Dst: "[io.netty.util.internal.PlatformDependent].directBufferAddress(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 50
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].<init>(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.Buffer].isReadOnly()"
    - "[java.nio.ByteBuffer].slice()"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.Buffer].limit()"
    functionUses: 3
    ICount: 25
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.buffer.ReadOnlyByteBufferBuf:42"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:46"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:45"
        BranchSideFuncs:
        - "writerIndex(int)"
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:41,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:41,1"
      Dst: "[io.netty.buffer.AbstractReferenceCountedByteBuf].<init>(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:42,1"
      Dst: "[java.nio.Buffer].isReadOnly()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:43,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:43,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:43,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:43,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:43,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:47,1"
      Dst: "[java.nio.ByteBuffer].slice()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:47,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:48,1"
      Dst: "[java.nio.Buffer].limit()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:48,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].directBufferAddress(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 526
    functionLinenumberEnd: 528
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].directBufferAddress(java.nio.ByteBuffer)"
    functionUses: 11
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:527,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].directBufferAddress(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].directBufferAddress(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 598
    functionLinenumberEnd: 600
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getLong(java.lang.Object,long)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:599,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getLong(java.lang.Object,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].getLong(java.lang.Object,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 623
    functionLinenumberEnd: 625
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getLong(java.lang.Object,long)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:624,1"
      Dst: "[sun.misc.Unsafe].getLong(java.lang.Object,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "java.nio.ByteBuffer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,boolean,boolean)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:59,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,boolean,boolean)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 99
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "java.nio.ByteBuffer"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].<init>(int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByteBuffer(java.nio.ByteBuffer,boolean)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByteBuffer(java.nio.ByteBuffer,boolean)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[java.nio.ByteBuffer].isDirect()"
    - "[java.nio.Buffer].isReadOnly()"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.ByteBuffer].slice()"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    functionUses: 2
    ICount: 45
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:81"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:84"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:83"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:84"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:88"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:87"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:89"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:94"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:93"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:95"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:94"
        BranchSideFuncs:
        - "setByteBuffer(java.nio.ByteBuffer,boolean)"
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:93"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:96"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:95"
        BranchSideFuncs:
        - "setByteBuffer(java.nio.ByteBuffer,boolean)"
        - "writerIndex(int)"
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:94"
        BranchSideFuncs:
        - "setByteBuffer(java.nio.ByteBuffer,boolean)"
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:78,1"
      Dst: "[io.netty.buffer.AbstractReferenceCountedByteBuf].<init>(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:79,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:81,1"
      Dst: "[java.nio.ByteBuffer].isDirect()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:82,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:84,1"
      Dst: "[java.nio.Buffer].isReadOnly()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:88,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:91,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:90,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:96,1"
      Dst: "[java.nio.ByteBuffer].slice()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:96,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:96,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].setByteBuffer(java.nio.ByteBuffer,boolean)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:97,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].setByteBuffer(java.nio.ByteBuffer,boolean)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 130
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedUnpooledUnsafeDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    - "[java.nio.Buffer].remaining()"
    functionUses: 4
    ICount: 16
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:115"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:125"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:117"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:125"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:118"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:121"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:120"
        BranchSideFuncs:
        - "freeDirect(java.nio.ByteBuffer)"
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:121,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:128,1"
      Dst: "[java.nio.Buffer].remaining()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].freeDirectBuffer(java.nio.ByteBuffer)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:111,1"
      Dst: "[io.netty.util.internal.PlatformDependent].freeDirectBuffer(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].freeDirectBuffer(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 522
    functionLinenumberEnd: 525
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.CleanerJava9].freeDirectBuffer(java.nio.ByteBuffer)"
    - "[io.netty.util.internal.CleanerJava6].freeDirectBuffer(java.nio.ByteBuffer)"
    - "[io.netty.util.internal.PlatformDependent$1].freeDirectBuffer(java.nio.ByteBuffer)"
    - "[io.netty.util.internal.Cleaner].freeDirectBuffer(java.nio.ByteBuffer)"
    functionUses: 3
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:523,1"
      Dst: "[io.netty.util.internal.Cleaner].freeDirectBuffer(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "java.nio.ByteBuffer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,boolean,boolean)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:73,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.IovArray].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.unix.IovArray"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 88
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:java.nio.ByteOrder].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.SlicedByteBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.channel.unix.Buffer].memoryAddress(java.nio.ByteBuffer)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    functionUses: 2
    ICount: 40
    EdgeCount: 83
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.IovArray:77"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:78"
        BranchSideFuncs:
        - "<init>()"
        - "readerIndex()"
      - BranchSide: "io.netty.channel.unix.IovArray:77"
        BranchSideFuncs:
        - "<init>()"
        - "readerIndex()"
    - Branch String: "io.netty.channel.unix.IovArray:77"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:78"
        BranchSideFuncs:
        - "<init>()"
        - "readerIndex()"
      - BranchSide: "io.netty.channel.unix.IovArray:77"
        BranchSideFuncs:
        - "<init>()"
        - "readerIndex()"
    - Branch String: "io.netty.channel.unix.IovArray:78"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:79"
        BranchSideFuncs:
        - "hasUnsafe()"
        - "order(java.nio.ByteOrder)"
      - BranchSide: "io.netty.channel.unix.IovArray:78"
        BranchSideFuncs:
        - "hasUnsafe()"
        - "order(java.nio.ByteOrder)"
    - Branch String: "io.netty.channel.unix.IovArray:78"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:79"
        BranchSideFuncs:
        - "hasUnsafe()"
        - "order(java.nio.ByteOrder)"
      - BranchSide: "io.netty.channel.unix.IovArray:78"
        BranchSideFuncs:
        - "hasUnsafe()"
        - "order(java.nio.ByteOrder)"
    - Branch String: "io.netty.channel.unix.IovArray:79"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:79"
        BranchSideFuncs:
        - "hasMemoryAddress()"
        - "hasUnsafe()"
        - "order(java.nio.ByteOrder)"
      - BranchSide: "io.netty.channel.unix.IovArray:78"
        BranchSideFuncs:
        - "hasUnsafe()"
        - "order(java.nio.ByteOrder)"
    - Branch String: "io.netty.channel.unix.IovArray:79"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:79"
        BranchSideFuncs:
        - "hasMemoryAddress()"
        - "hasUnsafe()"
        - "order(java.nio.ByteOrder)"
      - BranchSide: "io.netty.channel.unix.IovArray:78"
        BranchSideFuncs:
        - "hasUnsafe()"
        - "order(java.nio.ByteOrder)"
    - Branch String: "io.netty.channel.unix.IovArray:81"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:85"
        BranchSideFuncs:
        - "memoryAddress()"
      - BranchSide: "io.netty.channel.unix.IovArray:84"
        BranchSideFuncs:
        - "capacity()"
        - "memoryAddress(java.nio.ByteBuffer)"
        - "internalNioBuffer(int,int)"
    Callsites:
    - Src: "io.netty.channel.unix.IovArray:76,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.unix.IovArray:77,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.channel.unix.IovArray:77,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.unix.IovArray:78,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.channel.unix.IovArray:79,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.channel.unix.IovArray:79,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.channel.unix.IovArray:81,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - Src: "io.netty.channel.unix.IovArray:82,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    - Src: "io.netty.channel.unix.IovArray:85,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.channel.unix.IovArray:85,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.channel.unix.IovArray:85,1"
      Dst: "[io.netty.channel.unix.Buffer].memoryAddress(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.unix.Buffer].memoryAddress(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.channel.unix.Buffer"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 53
    functionDepth: 3
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.util.internal.PlatformDependent].directBufferAddress(java.nio.ByteBuffer)"
    - "[io.netty.channel.unix.Buffer].memoryAddress0(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].isDirect()"
    functionUses: 7
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Buffer:48"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Buffer:49"
        BranchSideFuncs:
        - "hasUnsafe()"
      - BranchSide: "io.netty.channel.unix.Buffer:48"
        BranchSideFuncs:
        - "hasUnsafe()"
    - Branch String: "io.netty.channel.unix.Buffer:48"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Buffer:49"
        BranchSideFuncs:
        - "hasUnsafe()"
      - BranchSide: "io.netty.channel.unix.Buffer:48"
        BranchSideFuncs:
        - "hasUnsafe()"
    - Branch String: "io.netty.channel.unix.Buffer:49"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Buffer:52"
        BranchSideFuncs:
        - "directBufferAddress(java.nio.ByteBuffer)"
      - BranchSide: "io.netty.channel.unix.Buffer:51"
        BranchSideFuncs:
        - "memoryAddress0(java.nio.ByteBuffer)"
    Callsites:
    - Src: "io.netty.channel.unix.Buffer:48,1"
      Dst: "[java.nio.ByteBuffer].isDirect()"
    - Src: "io.netty.channel.unix.Buffer:48,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.unix.Buffer:49,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.channel.unix.Buffer:50,1"
      Dst: "[io.netty.util.internal.PlatformDependent].directBufferAddress(java.nio.ByteBuffer)"
    - Src: "io.netty.channel.unix.Buffer:52,1"
      Dst: "[io.netty.channel.unix.Buffer].memoryAddress0(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Buffer].memoryAddress0(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.channel.unix.Buffer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.IovArray].clear()"
    functionSourceFile: "io.netty.channel.unix.IovArray"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.IovArray].add(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.channel.unix.IovArray"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 128
    functionDepth: 4
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf:io.netty.buffer.PooledHeapByteBuf:io.netty.buffer.PooledUnsafeDirectByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.ReadOnlyUnsafeDirectByteBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf:io.netty.buffer.UnpooledUnsafeDirectByteBuf:io.netty.handler.codec.ReplayingDecoderByteBuf].hasMemoryAddress()"
    - "[io.netty.channel.unix.IovArray].add(long,long,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.channel.unix.Buffer].memoryAddress(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffers(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[java.nio.Buffer].position()"
    - "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - "[java.nio.Buffer].remaining()"
    functionUses: 7
    ICount: 49
    EdgeCount: 84
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.IovArray:103"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:106"
        BranchSideFuncs:
        - "nioBufferCount()"
    - Branch String: "io.netty.channel.unix.IovArray:107"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:118"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.IovArray:117"
        BranchSideFuncs:
        - "nioBuffers(int,int)"
    - Branch String: "io.netty.channel.unix.IovArray:108"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:111"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.IovArray:110"
        BranchSideFuncs:
        - "hasMemoryAddress()"
    - Branch String: "io.netty.channel.unix.IovArray:111"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:114"
        BranchSideFuncs:
        - "memoryAddress()"
      - BranchSide: "io.netty.channel.unix.IovArray:113"
        BranchSideFuncs:
        - "internalNioBuffer(int,int)"
    - Branch String: "io.netty.channel.unix.IovArray:119"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:127"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.IovArray:126"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.IovArray:121"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:118"
        BranchSideFuncs:
        - "memoryAddress(java.nio.ByteBuffer)"
        - "add(long,long,int)"
      - BranchSide: "io.netty.channel.unix.IovArray:117"
        BranchSideFuncs:
        - "nioBuffers(int,int)"
    - Branch String: "io.netty.channel.unix.IovArray:122"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:123"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.IovArray:122"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:117"
        BranchSideFuncs:
        - "nioBuffers(int,int)"
    Callsites:
    - Src: "io.netty.channel.unix.IovArray:107,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.channel.unix.IovArray:111,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - Src: "io.netty.channel.unix.IovArray:112,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    - Src: "io.netty.channel.unix.IovArray:112,1"
      Dst: "[io.netty.channel.unix.IovArray].add(long,long,int)"
    - Src: "io.netty.channel.unix.IovArray:114,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.channel.unix.IovArray:115,1"
      Dst: "[io.netty.channel.unix.Buffer].memoryAddress(java.nio.ByteBuffer)"
    - Src: "io.netty.channel.unix.IovArray:115,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.channel.unix.IovArray:118,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - Src: "io.netty.channel.unix.IovArray:120,1"
      Dst: "[java.nio.Buffer].remaining()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.unix.IovArray].add(long,long,int)"
    functionSourceFile: "io.netty.channel.unix.IovArray"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 173
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "long"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.channel.unix.IovArray].idx(int)"
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.util.internal.PlatformDependent].putLong(long,long)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setLong(int,long)"
    - "[io.netty.buffer.DuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf].setLong(int,long)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.EmptyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.util.internal.PlatformDependent].putInt(long,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setInt(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ByteBuf].setInt(int,int)"
    functionUses: 3
    ICount: 80
    EdgeCount: 114
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.IovArray:132"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:135"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.IovArray:132"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:135"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.IovArray:136"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:137"
        BranchSideFuncs:
        - "capacity()"
    - Branch String: "io.netty.channel.unix.IovArray:136"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:144"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.IovArray:138"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:146"
        BranchSideFuncs:
        - "idx(int)"
    - Branch String: "io.netty.channel.unix.IovArray:153"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:162"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.channel.unix.IovArray:155"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:159"
        BranchSideFuncs:
        - "putLong(long,long)"
      - BranchSide: "io.netty.channel.unix.IovArray:158"
        BranchSideFuncs:
        - "setLong(int,long)"
    - Branch String: "io.netty.channel.unix.IovArray:163"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:164"
        BranchSideFuncs:
        - "hasUnsafe()"
      - BranchSide: "io.netty.channel.unix.IovArray:163"
        BranchSideFuncs:
        - "hasUnsafe()"
    - Branch String: "io.netty.channel.unix.IovArray:163"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:164"
        BranchSideFuncs:
        - "hasUnsafe()"
      - BranchSide: "io.netty.channel.unix.IovArray:163"
        BranchSideFuncs:
        - "hasUnsafe()"
    - Branch String: "io.netty.channel.unix.IovArray:164"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.IovArray:168"
        BranchSideFuncs:
        - "putInt(long,int)"
      - BranchSide: "io.netty.channel.unix.IovArray:167"
        BranchSideFuncs:
        - "setInt(int,int)"
    Callsites:
    - Src: "io.netty.channel.unix.IovArray:132,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.unix.IovArray:138,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.channel.unix.IovArray:147,1"
      Dst: "[io.netty.channel.unix.IovArray].idx(int)"
    - Src: "io.netty.channel.unix.IovArray:155,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.channel.unix.IovArray:156,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putLong(long,long)"
    - Src: "io.netty.channel.unix.IovArray:159,1"
      Dst: "[io.netty.buffer.ByteBuf].setLong(int,long)"
    - Src: "io.netty.channel.unix.IovArray:165,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putInt(long,int)"
    - Src: "io.netty.channel.unix.IovArray:168,1"
      Dst: "[io.netty.buffer.ByteBuf].setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 8
  - functionName: "[io.netty.channel.unix.IovArray].idx(int)"
    functionSourceFile: "io.netty.channel.unix.IovArray"
    linkageType: ""
    functionLinenumber: 234
    functionLinenumberEnd: 236
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].putLong(long,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 710
    functionLinenumberEnd: 713
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].putLong(long,long)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:711,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].putLong(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].putLong(long,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 695
    functionLinenumberEnd: 698
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].putLong(long,long)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:696,1"
      Dst: "[sun.misc.Unsafe].putLong(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].putInt(long,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 706
    functionLinenumberEnd: 709
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].putInt(long,int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:707,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].putInt(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].putInt(long,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 691
    functionLinenumberEnd: 694
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].putInt(long,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:692,1"
      Dst: "[sun.misc.Unsafe].putInt(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.IovArray].count()"
    functionSourceFile: "io.netty.channel.unix.IovArray"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.IovArray].memoryAddress(int)"
    functionSourceFile: "io.netty.channel.unix.IovArray"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 216
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.IovArray].idx(int)"
    functionUses: 12
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.IovArray:215,1"
      Dst: "[io.netty.channel.unix.IovArray].idx(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].writevAddresses(long,int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 127
    functionDepth: 3
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].writevAddresses(int,long,int)"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 6
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.FileDescriptor:123"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.FileDescriptor:125"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.unix.FileDescriptor:122,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].writevAddresses(int,long,int)"
    - Src: "io.netty.channel.unix.FileDescriptor:126,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].writevAddresses(int,long,int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 3
    argTypes:
    - "int"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.Socket].sendToAddressesDomainSocket(long,int,byte[])"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 245
    functionLinenumberEnd: 251
    functionDepth: 3
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].sendToAddressesDomainSocket(int,long,int,byte[])"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:247"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:250"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:249"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:246,1"
      Dst: "[io.netty.channel.unix.Socket].sendToAddressesDomainSocket(int,long,int,byte[])"
    - Src: "io.netty.channel.unix.Socket:250,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].sendToAddressesDomainSocket(int,long,int,byte[])"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "long"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.Socket].send(java.nio.ByteBuffer,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 293
    functionLinenumberEnd: 299
    functionDepth: 3
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.unix.Socket].send(int,java.nio.ByteBuffer,int,int)"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 3
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:295"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:298"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:297"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:294,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.unix.Socket:294,1"
      Dst: "[io.netty.channel.unix.Socket].send(int,java.nio.ByteBuffer,int,int)"
    - Src: "io.netty.channel.unix.Socket:298,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].send(int,java.nio.ByteBuffer,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.Socket].sendToDomainSocket(java.nio.ByteBuffer,int,int,byte[])"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 164
    functionDepth: 3
    returnType: "int"
    argCount: 4
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].sendToDomainSocket(int,java.nio.ByteBuffer,int,int,byte[])"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:160"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:163"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:162"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:159,1"
      Dst: "[io.netty.channel.unix.Socket].sendToDomainSocket(int,java.nio.ByteBuffer,int,int,byte[])"
    - Src: "io.netty.channel.unix.Socket:163,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].sendToDomainSocket(int,java.nio.ByteBuffer,int,int,byte[])"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].remove()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 256
    functionLinenumberEnd: 280
    functionDepth: 6
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].clearNioBuffers()"
    - "[io.netty.channel.ChannelOutboundBuffer].removeEntry(io.netty.channel.ChannelOutboundBuffer$Entry)"
    - "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundBuffer].safeSuccess(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundBuffer].decrementPendingOutboundBytes(long,boolean,boolean)"
    - "[io.netty.channel.ChannelOutboundBuffer$Entry].recycle()"
    functionUses: 29
    ICount: 17
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:258"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:262"
        BranchSideFuncs:
        - "clearNioBuffers()"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:261"
        BranchSideFuncs:
        - "removeEntry(io.netty.channel.ChannelOutboundBuffer$Entry)"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:269"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:276"
        BranchSideFuncs:
        - "recycle()"
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:259,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].clearNioBuffers()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:267,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].removeEntry(io.netty.channel.ChannelOutboundBuffer$Entry)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:271,1"
      Dst: "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:272,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].safeSuccess(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:273,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].decrementPendingOutboundBytes(long,boolean,boolean)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:277,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer$Entry].recycle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].clearNioBuffers()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 366
    functionLinenumberEnd: 373
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(java.lang.Object[],int,int,java.lang.Object)"
    - "[io.netty.util.concurrent.FastThreadLocal].get()"
    functionUses: 4
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:368"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:372"
        BranchSideFuncs:
        - "fill(java.lang.Object[],int,int,java.lang.Object)"
        - "get()"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:371"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:370,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].get()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:370,1"
      Dst: "[java.util.Arrays].fill(java.lang.Object[],int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].get()"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 143
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - "[io.netty.util.internal.InternalThreadLocalMap].indexedVariable(int)"
    - "[io.netty.util.concurrent.FastThreadLocal].initialize(io.netty.util.internal.InternalThreadLocalMap)"
    functionUses: 20
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:138"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:142"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:141"
        BranchSideFuncs:
        - "initialize(io.netty.util.internal.InternalThreadLocalMap)"
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocal:136,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - Src: "io.netty.util.concurrent.FastThreadLocal:137,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].indexedVariable(int)"
    - Src: "io.netty.util.concurrent.FastThreadLocal:142,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].initialize(io.netty.util.internal.InternalThreadLocalMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].get()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 118
    functionDepth: 3
    returnType: "io.netty.util.internal.InternalThreadLocalMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].currentThread()"
    - "[io.netty.util.internal.InternalThreadLocalMap].fastGet(io.netty.util.concurrent.FastThreadLocalThread)"
    - "[io.netty.util.internal.InternalThreadLocalMap].slowGet()"
    functionUses: 14
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:114"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:117"
        BranchSideFuncs:
        - "fastGet(io.netty.util.concurrent.FastThreadLocalThread)"
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:116"
        BranchSideFuncs:
        - "slowGet()"
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:113,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:115,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].fastGet(io.netty.util.concurrent.FastThreadLocalThread)"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:117,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].slowGet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].fastGet(io.netty.util.concurrent.FastThreadLocalThread)"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 127
    functionDepth: 2
    returnType: "io.netty.util.internal.InternalThreadLocalMap"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.FastThreadLocalThread"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocalThread].threadLocalMap()"
    - "[io.netty.util.internal.InternalThreadLocalMap].<init>()"
    - "[io.netty.util.concurrent.FastThreadLocalThread].setThreadLocalMap(io.netty.util.internal.InternalThreadLocalMap)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:123"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:126"
        BranchSideFuncs:
        - "setThreadLocalMap(io.netty.util.internal.InternalThreadLocalMap)"
        - "<init>()"
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:122,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocalThread].threadLocalMap()"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:124,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].<init>()"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:124,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocalThread].setThreadLocalMap(io.netty.util.internal.InternalThreadLocalMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.FastThreadLocalThread].threadLocalMap()"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocalThread"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "io.netty.util.internal.InternalThreadLocalMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].currentThread()"
    - "[io.netty.util.internal.logging.JdkLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isWarnEnabled()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].warn(java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4J2Logger].warn(java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.Throwable)"
    functionUses: 2
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.FastThreadLocalThread:79"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocalThread:83"
        BranchSideFuncs:
        - "warn(java.lang.Throwable)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.concurrent.FastThreadLocalThread:82"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.FastThreadLocalThread:79"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocalThread:83"
        BranchSideFuncs:
        - "warn(java.lang.Throwable)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.concurrent.FastThreadLocalThread:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:79,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:79,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:80,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:80,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].<init>()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 167
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.UnpaddedInternalThreadLocalMap].<init>()"
    - "[io.netty.util.internal.InternalThreadLocalMap].newIndexedVariableTable()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:164,1"
      Dst: "[io.netty.util.internal.UnpaddedInternalThreadLocalMap].<init>()"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:165,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].newIndexedVariableTable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.UnpaddedInternalThreadLocalMap].<init>()"
    functionSourceFile: "io.netty.util.internal.UnpaddedInternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 20
    functionLinenumberEnd: 22
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.UnpaddedInternalThreadLocalMap:21,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].newIndexedVariableTable()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(java.lang.Object[],java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:170,1"
      Dst: "[java.util.Arrays].fill(java.lang.Object[],java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocalThread].setThreadLocalMap(io.netty.util.internal.InternalThreadLocalMap)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocalThread"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 97
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.InternalThreadLocalMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].currentThread()"
    - "[io.netty.util.internal.logging.JdkLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isWarnEnabled()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].warn(java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4J2Logger].warn(java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.Throwable)"
    functionUses: 2
    ICount: 13
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.FastThreadLocalThread:91"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocalThread:95"
        BranchSideFuncs:
        - "warn(java.lang.Throwable)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.concurrent.FastThreadLocalThread:94"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.FastThreadLocalThread:91"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocalThread:95"
        BranchSideFuncs:
        - "warn(java.lang.Throwable)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.concurrent.FastThreadLocalThread:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:91,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:91,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:92,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:92,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].slowGet()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 136
    functionDepth: 2
    returnType: "io.netty.util.internal.InternalThreadLocalMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].get()"
    - "[io.netty.util.internal.InternalThreadLocalMap].<init>()"
    - "[jdk.internal.misc.TerminatingThreadLocal].set(java.lang.Object)"
    - "[java.lang.ThreadLocal].set(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:131"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:135"
        BranchSideFuncs:
        - "<init>()"
        - "set(java.lang.Object)"
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:134"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:130,1"
      Dst: "[java.lang.ThreadLocal].get()"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:132,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].<init>()"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:133,1"
      Dst: "[java.lang.ThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].indexedVariable(int)"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 325
    functionLinenumberEnd: 328
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:327"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:325"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].initialize(io.netty.util.internal.InternalThreadLocalMap)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 185
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.InternalThreadLocalMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.Recycler$2].initialValue()"
    - "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$2].initialValue()"
    - "[io.netty.handler.ssl.util.SimpleKeyManagerFactory$2].initialValue()"
    - "[io.netty.resolver.dns.DnsNameResolver$2].initialValue()"
    - "[io.netty.buffer.ByteBufUtil$1].initialValue()"
    - "[io.netty.handler.codec.CodecOutputList$2].initialValue()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor$2].initialValue()"
    - "[io.netty.channel.ChannelOutboundBuffer$1].initialValue()"
    - "[io.netty.handler.codec.http.HttpHeaderDateFormat$1].initialValue()"
    - "[io.netty.channel.DefaultChannelPipeline$1].initialValue()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil$2].initialValue()"
    - "[io.netty.handler.codec.stomp.StompSubframeEncoder$1].initialValue()"
    - "[io.netty.handler.codec.DateFormatter$1].initialValue()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor$1].initialValue()"
    - "[io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache].initialValue()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil$1].initialValue()"
    - "[io.netty.channel.ChannelHandlerMask$1].initialValue()"
    - "[io.netty.handler.ssl.util.SimpleTrustManagerFactory$2].initialValue()"
    - "[io.netty.util.concurrent.FastThreadLocal].initialValue()"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[io.netty.util.internal.InternalThreadLocalMap].setIndexedVariable(int,java.lang.Object)"
    - "[io.netty.util.concurrent.FastThreadLocal].addToVariablesToRemove(io.netty.util.internal.InternalThreadLocalMap,io.netty.util.concurrent.FastThreadLocal)"
    functionUses: 2
    ICount: 11
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocal:177,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].initialValue()"
    - Src: "io.netty.util.concurrent.FastThreadLocal:179,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - Src: "io.netty.util.concurrent.FastThreadLocal:182,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].setIndexedVariable(int,java.lang.Object)"
    - Src: "io.netty.util.concurrent.FastThreadLocal:183,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].addToVariablesToRemove(io.netty.util.internal.InternalThreadLocalMap,io.netty.util.concurrent.FastThreadLocal)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].initialValue()"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 269
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].setIndexedVariable(int,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 333
    functionLinenumberEnd: 342
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].expandIndexedVariableTableAndSet(int,java.lang.Object)"
    functionUses: 3
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:335"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:340"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:339"
        BranchSideFuncs:
        - "expandIndexedVariableTableAndSet(int,java.lang.Object)"
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:338"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:335"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:340,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].expandIndexedVariableTableAndSet(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].expandIndexedVariableTableAndSet(int,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 345
    functionLinenumberEnd: 366
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].copyOf(java.lang.Object[],int)"
    - "[java.util.Arrays].fill(java.lang.Object[],int,int,java.lang.Object)"
    functionUses: 1
    ICount: 26
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:349"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:357"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:361,1"
      Dst: "[java.util.Arrays].copyOf(java.lang.Object[],int)"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:362,1"
      Dst: "[java.util.Arrays].fill(java.lang.Object[],int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].removeEntry(io.netty.channel.ChannelOutboundBuffer$Entry)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 318
    functionLinenumberEnd: 330
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer$Entry"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:319"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:326"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:322"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:329"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:328"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    functionSourceFile: "io.netty.util.ReferenceCountUtil"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 121
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 43
    ICount: 7
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ReferenceCountUtil:116,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.util.ReferenceCountUtil:118,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    functionSourceFile: "io.netty.util.ReferenceCountUtil"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].release()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].release()"
    - "[io.netty.util.AbstractReferenceCounted].release()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].release()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.handler.ssl.PemX509Certificate].release()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].release()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].release()"
    - "[io.netty.buffer.DefaultByteBufHolder].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].release()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].release()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].release()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].release()"
    - "[io.netty.channel.DefaultAddressedEnvelope].release()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].release()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.handler.codec.http.ComposedLastHttpContent:io.netty.handler.codec.http.LastHttpContent$1:io.netty.handler.codec.memcache.LastMemcacheContent$1:io.netty.handler.codec.redis.ArrayRedisMessage$1:io.netty.handler.codec.redis.ArrayRedisMessage$2:io.netty.handler.codec.redis.FullBulkStringRedisMessage$1:io.netty.handler.codec.redis.FullBulkStringRedisMessage$2:io.netty.handler.codec.redis.LastBulkStringRedisContent$1:io.netty.handler.codec.smtp.LastSmtpContent$1:io.netty.handler.codec.stomp.LastStompContentSubframe$1:io.netty.util.ReferenceCounted].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 79
    ICount: 7
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "io.netty.util.ReferenceCountUtil:89"
      Branch Sides:
      - BranchSide: "io.netty.util.ReferenceCountUtil:92"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.util.ReferenceCountUtil:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.ReferenceCountUtil:90,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].safeSuccess(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 716
    functionLinenumberEnd: 719
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PromiseNotificationUtil].trySuccess(io.netty.util.concurrent.Promise,java.lang.Object,io.netty.util.internal.logging.InternalLogger)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:717"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:717"
        BranchSideFuncs:
        - "trySuccess(io.netty.util.concurrent.Promise,java.lang.Object,io.netty.util.internal.logging.InternalLogger)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:716"
        BranchSideFuncs:
        - "trySuccess(io.netty.util.concurrent.Promise,java.lang.Object,io.netty.util.internal.logging.InternalLogger)"
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:717,1"
      Dst: "[io.netty.util.internal.PromiseNotificationUtil].trySuccess(io.netty.util.concurrent.Promise,java.lang.Object,io.netty.util.internal.logging.InternalLogger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PromiseNotificationUtil].trySuccess(io.netty.util.concurrent.Promise,java.lang.Object,io.netty.util.internal.logging.InternalLogger)"
    functionSourceFile: "io.netty.util.internal.PromiseNotificationUtil"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.util.concurrent.Promise"
    - "java.lang.Object"
    - "io.netty.util.internal.logging.InternalLogger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].trySuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].trySuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].trySuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].trySuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.VoidChannelPromise:io.netty.util.internal.logging.Slf4JLogger].cause()"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 12
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PromiseNotificationUtil:48"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:58"
        BranchSideFuncs:
        - "cause()"
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:57"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PromiseNotificationUtil:48"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:58"
        BranchSideFuncs:
        - "cause()"
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:57"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PromiseNotificationUtil:50"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:53"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:52"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "io.netty.util.internal.PromiseNotificationUtil:48,1"
      Dst: "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - Src: "io.netty.util.internal.PromiseNotificationUtil:49,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.util.internal.PromiseNotificationUtil:51,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.PromiseNotificationUtil:53,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].decrementPendingOutboundBytes(long,boolean,boolean)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 189
    functionLinenumberEnd: 199
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.embedded.EmbeddedChannel].config()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].config()"
    - "[io.netty.bootstrap.FailedChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.local.LocalServerChannel].config()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].config()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].config()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].getWriteBufferLowWaterMark()"
    - "[io.netty.channel.ChannelOutboundBuffer].setWritable(boolean)"
    - "[java.util.concurrent.atomic.AtomicLongFieldUpdater].addAndGet(java.lang.Object,long)"
    - "[io.netty.channel.ChannelConfig].getWriteBufferLowWaterMark()"
    functionUses: 4
    ICount: 20
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:190"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:194"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:193"
        BranchSideFuncs:
        - "config()"
        - "getWriteBufferLowWaterMark()"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:195"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:198"
        BranchSideFuncs:
        - "setWritable(boolean)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:197"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:195"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:198"
        BranchSideFuncs:
        - "setWritable(boolean)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:194,1"
      Dst: "[java.util.concurrent.atomic.AtomicLongFieldUpdater].addAndGet(java.lang.Object,long)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:195,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:195,1"
      Dst: "[io.netty.channel.ChannelConfig].getWriteBufferLowWaterMark()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:196,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].setWritable(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].setWritable(boolean)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 589
    functionLinenumberEnd: 600
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].fireChannelWritabilityChanged(boolean)"
    - "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:592"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:598"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:597"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:593"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:599"
        BranchSideFuncs:
        - "fireChannelWritabilityChanged(boolean)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:598"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:593"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:599"
        BranchSideFuncs:
        - "fireChannelWritabilityChanged(boolean)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:598"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:592,1"
      Dst: "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:594,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].fireChannelWritabilityChanged(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].fireChannelWritabilityChanged(boolean)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 614
    functionLinenumberEnd: 631
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].<init>(io.netty.channel.ChannelOutboundBuffer,io.netty.channel.ChannelPipeline)"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[java.util.zip.Inflater$InflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$3].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[java.util.concurrent.CompletableFuture$Completion].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[java.util.zip.Deflater$DeflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[java.util.concurrent.ThreadPoolExecutor$Worker].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[java.util.zip.ZipFile$CleanableResource].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[java.lang.invoke.MethodHandleNatives$CallSiteContext].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor$2].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[java.util.concurrent.ForkJoinWorkerThread].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[java.lang.ref.Finalizer$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$2].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[java.lang.ref.Finalizer$FinalizerThread].run()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelWritabilityChanged()"
    - "[io.netty.channel.Channel].pipeline()"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - "[io.netty.channel.ChannelPipeline].fireChannelWritabilityChanged()"
    functionUses: 4
    ICount: 17
    EdgeCount: 192
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:616"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:628"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:627"
        BranchSideFuncs:
        - "fireChannelWritabilityChanged()"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:618"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:626"
        BranchSideFuncs:
        - "<init>(io.netty.channel.ChannelOutboundBuffer,io.netty.channel.ChannelPipeline)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:625"
        BranchSideFuncs:
        - "run()"
        - "eventLoop()"
        - "execute(java.lang.Runnable)"
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:615,1"
      Dst: "[io.netty.channel.Channel].pipeline()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:619,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer$2].<init>(io.netty.channel.ChannelOutboundBuffer,io.netty.channel.ChannelPipeline)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:626,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:626,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:628,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelWritabilityChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.ChannelOutboundBuffer$2].<init>(io.netty.channel.ChannelOutboundBuffer,io.netty.channel.ChannelPipeline)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer$2"
    linkageType: ""
    functionLinenumber: 618
    functionLinenumberEnd: 620
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer"
    - "io.netty.channel.ChannelPipeline"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer$2:619,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer$Entry].recycle()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer$Entry"
    linkageType: ""
    functionLinenumber: 852
    functionLinenumberEnd: 865
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.Recycler$DefaultHandle].recycle(java.lang.Object)"
    - "[io.netty.util.Recycler$1].recycle(java.lang.Object)"
    - "[io.netty.util.internal.ObjectPool$Handle].recycle(java.lang.Object)"
    functionUses: 3
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer$Entry:863,1"
      Dst: "[io.netty.util.internal.ObjectPool$Handle].recycle(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].remove(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 287
    functionLinenumberEnd: 289
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].remove0(java.lang.Throwable,boolean)"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:288,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].remove0(java.lang.Throwable,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].remove0(java.lang.Throwable,boolean)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 291
    functionLinenumberEnd: 316
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Throwable"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].clearNioBuffers()"
    - "[io.netty.channel.ChannelOutboundBuffer].removeEntry(io.netty.channel.ChannelOutboundBuffer$Entry)"
    - "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundBuffer].safeFail(io.netty.channel.ChannelPromise,java.lang.Throwable)"
    - "[io.netty.channel.ChannelOutboundBuffer].decrementPendingOutboundBytes(long,boolean,boolean)"
    - "[io.netty.channel.ChannelOutboundBuffer$Entry].recycle()"
    functionUses: 2
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:293"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:297"
        BranchSideFuncs:
        - "clearNioBuffers()"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:296"
        BranchSideFuncs:
        - "removeEntry(io.netty.channel.ChannelOutboundBuffer$Entry)"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:304"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:312"
        BranchSideFuncs:
        - "recycle()"
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:294,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].clearNioBuffers()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:302,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].removeEntry(io.netty.channel.ChannelOutboundBuffer$Entry)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:306,1"
      Dst: "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:308,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].safeFail(io.netty.channel.ChannelPromise,java.lang.Throwable)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:309,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].decrementPendingOutboundBytes(long,boolean,boolean)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:313,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer$Entry].recycle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].safeFail(io.netty.channel.ChannelPromise,java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 722
    functionLinenumberEnd: 725
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelPromise"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PromiseNotificationUtil].tryFailure(io.netty.util.concurrent.Promise,java.lang.Throwable,io.netty.util.internal.logging.InternalLogger)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:723"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:723"
        BranchSideFuncs:
        - "tryFailure(io.netty.util.concurrent.Promise,java.lang.Throwable,io.netty.util.internal.logging.InternalLogger)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:722"
        BranchSideFuncs:
        - "tryFailure(io.netty.util.concurrent.Promise,java.lang.Throwable,io.netty.util.internal.logging.InternalLogger)"
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:723,1"
      Dst: "[io.netty.util.internal.PromiseNotificationUtil].tryFailure(io.netty.util.concurrent.Promise,java.lang.Throwable,io.netty.util.internal.logging.InternalLogger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].isEmpty()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 643
    functionLinenumberEnd: 645
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:644"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:643"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].filterOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 239
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.channel.unix.UnixChannelUtil].isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.unix.DomainDatagramPacket].<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress)"
    - "[io.netty.channel.epoll.AbstractEpollChannel].newDirectBuffer(java.lang.Object,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].newDirectBuffer(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].content()"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.channel.DefaultAddressedEnvelope].content()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].recipient()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].recipient()"
    - "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.AddressedEnvelope].content()"
    - "[io.netty.channel.AddressedEnvelope].recipient()"
    functionUses: 1
    ICount: 62
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:212"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:219"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:218"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:215"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:213"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress)"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:212"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:219"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:224"
        BranchSideFuncs:
        - "newDirectBuffer(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:223"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:221"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:219"
        BranchSideFuncs:
        - "newDirectBuffer(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:224"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:236"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:227"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:237"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:236"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:228"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:229"
        BranchSideFuncs:
        - "content()"
        - "isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:228"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:236"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:231"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:230"
        BranchSideFuncs:
        - "isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf)"
        - "newDirectBuffer(java.lang.Object,io.netty.buffer.ByteBuf)"
        - "<init>(java.lang.Object,java.net.SocketAddress)"
        - "recipient()"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:229"
        BranchSideFuncs:
        - "content()"
        - "isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:214,1"
      Dst: "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:215,1"
      Dst: "[io.netty.channel.unix.UnixChannelUtil].isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:216,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].newDirectBuffer(java.lang.Object,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:216,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:216,1"
      Dst: "[io.netty.channel.unix.DomainDatagramPacket].<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:221,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].newDirectBuffer(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:227,1"
      Dst: "[io.netty.channel.AddressedEnvelope].content()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:228,1"
      Dst: "[io.netty.channel.AddressedEnvelope].recipient()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:233,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:237,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:237,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:238,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:238,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:238,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 7
  - functionName: "[io.netty.channel.unix.DomainDatagramPacket].content()"
    functionSourceFile: "io.netty.channel.unix.DomainDatagramPacket"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].content()"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.DomainDatagramPacket:25,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].content()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultAddressedEnvelope].content()"
    functionSourceFile: "io.netty.channel.DefaultAddressedEnvelope"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.UnixChannelUtil].isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.unix.UnixChannelUtil"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.UnixChannelUtil].isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf,int)"
    functionUses: 15
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.UnixChannelUtil:37,1"
      Dst: "[io.netty.channel.unix.UnixChannelUtil].isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.UnixChannelUtil].isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.channel.unix.UnixChannelUtil"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isDirect()"
    - "[io.netty.buffer.DuplicatedByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].isDirect()"
    - "[io.netty.buffer.CompositeByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBuf].isDirect()"
    - "[io.netty.buffer.SlicedByteBuf].isDirect()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedByteBuf].isDirect()"
    - "[io.netty.buffer.SwappedByteBuf].isDirect()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.PooledDirectByteBuf:io.netty.buffer.PooledHeapByteBuf:io.netty.buffer.PooledUnsafeDirectByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].isDirect()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    functionUses: 1
    ICount: 12
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.UnixChannelUtil:41"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.UnixChannelUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.UnixChannelUtil:41"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.UnixChannelUtil:40"
        BranchSideFuncs:
        - "hasMemoryAddress()"
        - "isDirect()"
        - "nioBufferCount()"
    - Branch String: "io.netty.channel.unix.UnixChannelUtil:41"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.UnixChannelUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.UnixChannelUtil:41,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - Src: "io.netty.channel.unix.UnixChannelUtil:41,1"
      Dst: "[io.netty.buffer.ByteBuf].isDirect()"
    - Src: "io.netty.channel.unix.UnixChannelUtil:41,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    functionSourceFile: "io.netty.channel.DefaultAddressedEnvelope"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 45
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DomainDatagramPacket].<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress)"
    functionSourceFile: "io.netty.channel.unix.DomainDatagramPacket"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.channel.unix.DomainSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.DomainDatagramPacket:32,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.DefaultAddressedEnvelope"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress,java.net.SocketAddress)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultAddressedEnvelope:58,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.DefaultAddressedEnvelope"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 52
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultAddressedEnvelope:44"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultAddressedEnvelope:48"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.DefaultAddressedEnvelope:47"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultAddressedEnvelope:44"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultAddressedEnvelope:48"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.DefaultAddressedEnvelope:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultAddressedEnvelope:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.DefaultAddressedEnvelope:43,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.DefaultAddressedEnvelope:45,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 242
    functionLinenumberEnd: 244
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].getActiveOnOpen()"
    - "[io.netty.channel.unix.FileDescriptor].isOpen()"
    - "[io.netty.channel.AbstractChannel].isRegistered()"
    functionUses: 37
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:243"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:242"
        BranchSideFuncs:
        - "isRegistered()"
        - "getActiveOnOpen()"
        - "isOpen()"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:243"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:242"
        BranchSideFuncs:
        - "isRegistered()"
        - "getActiveOnOpen()"
        - "isOpen()"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:243"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:242"
        BranchSideFuncs:
        - "isRegistered()"
        - "getActiveOnOpen()"
        - "isOpen()"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel:243"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel:242"
        BranchSideFuncs:
        - "isRegistered()"
        - "getActiveOnOpen()"
        - "isOpen()"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:243,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].isOpen()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:243,1"
      Dst: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].getActiveOnOpen()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:243,1"
      Dst: "[io.netty.channel.AbstractChannel].isRegistered()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.unix.FileDescriptor].isOpen()"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].isClosed(int)"
    functionUses: 6
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.FileDescriptor:94"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:93"
        BranchSideFuncs:
        - "isClosed(int)"
    Callsites:
    - Src: "io.netty.channel.unix.FileDescriptor:94,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].isClosed(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.FileDescriptor].isClosed(int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.FileDescriptor:209"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:208"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].getActiveOnOpen()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].isConnected()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 249
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].localAddress()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 252
    functionLinenumberEnd: 254
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:253,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 257
    functionLinenumberEnd: 259
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].metadata()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 264
    functionDepth: 0
    returnType: "io.netty.channel.ChannelMetadata"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].newUnsafe()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 269
    functionDepth: 1
    returnType: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe].<init>(io.netty.channel.epoll.EpollDomainDatagramChannel)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:268,1"
      Dst: "[io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe].<init>(io.netty.channel.epoll.EpollDomainDatagramChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe].<init>(io.netty.channel.epoll.EpollDomainDatagramChannel)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe"
    linkageType: ""
    functionLinenumber: 288
    functionLinenumberEnd: 290
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.EpollDomainDatagramChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:289,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].peerCredentials()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.unix.PeerCredentials"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getPeerCredentials()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:276,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getPeerCredentials()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getPeerCredentials()"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.unix.PeerCredentials"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].getPeerCredentials(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:284,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:284,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getPeerCredentials(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getPeerCredentials(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.unix.PeerCredentials"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 280
    functionLinenumberEnd: 282
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:281,1"
      Dst: "[io.netty.channel.AbstractChannel].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].remoteAddress0()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 285
    functionLinenumberEnd: 287
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel].isOpen()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel].isOpen()"
    functionUses: 12
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel:44,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].isOpen()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectPool$RecyclerObjectPool$1].<init>(io.netty.util.internal.ObjectPool$RecyclerObjectPool,io.netty.util.internal.ObjectPool$ObjectCreator)"
    functionSourceFile: "io.netty.util.internal.ObjectPool$RecyclerObjectPool$1"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.ObjectPool$RecyclerObjectPool"
    - "io.netty.util.internal.ObjectPool$ObjectCreator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.Recycler].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectPool$RecyclerObjectPool$1:76,1"
      Dst: "[io.netty.util.Recycler].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectPool$RecyclerObjectPool$1].newObject(io.netty.util.Recycler$Handle)"
    functionSourceFile: "io.netty.util.internal.ObjectPool$RecyclerObjectPool$1"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.util.Recycler$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    - "[io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    - "[io.netty.buffer.PoolThreadCache$MemoryRegionCache$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    - "[io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    - "[io.netty.buffer.PooledHeapByteBuf$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    - "[io.netty.buffer.PooledDirectByteBuf$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    - "[io.netty.channel.ChannelOutboundBuffer$Entry$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    - "[io.netty.util.internal.RecyclableArrayList$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    - "[io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    - "[io.netty.util.internal.PendingWrite$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    - "[io.netty.channel.PendingWriteQueue$PendingWrite$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    - "[io.netty.buffer.PooledSlicedByteBuf$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    - "[io.netty.util.internal.ObjectPool$ObjectCreator].newObject(io.netty.util.internal.ObjectPool$Handle)"
    functionUses: 3
    ICount: 5
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectPool$RecyclerObjectPool$1:79,1"
      Dst: "[io.netty.util.internal.ObjectPool$ObjectCreator].newObject(io.netty.util.internal.ObjectPool$Handle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$12].<init>(io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$12"
    linkageType: ""
    functionLinenumber: 774
    functionLinenumberEnd: 776
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$12:775,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$12"
    linkageType: ""
    functionLinenumber: 777
    functionLinenumberEnd: 780
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].access$1300(io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 49
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$12:778,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].access$1300(io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].<init>(int,int,byte)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].<init>(int,int,byte,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:40,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].<init>(int,int,byte,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].<init>(int,int,byte,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "byte"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].<init>(int,boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setAssociatedStreamId(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setPriority(byte)"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:52,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].<init>(int,boolean)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:53,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setAssociatedStreamId(int)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:54,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setPriority(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setStreamId(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionDepth: 1
    returnType: "io.netty.handler.codec.spdy.SpdySynStreamFrame"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setStreamId(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:59,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setStreamId(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setStreamId(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdyHeadersFrame"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].setStreamId(int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame:54,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].setStreamId(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setLast(boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionDepth: 1
    returnType: "io.netty.handler.codec.spdy.SpdySynStreamFrame"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setLast(boolean)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:65,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setLast(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setLast(boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdyHeadersFrame"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].setLast(boolean)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame:60,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].setLast(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setInvalid()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionDepth: 1
    returnType: "io.netty.handler.codec.spdy.SpdySynStreamFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setInvalid()"
    functionUses: 9
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:71,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setInvalid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setInvalid()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdyHeadersFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].associatedStreamId()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setAssociatedStreamId(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 85
    functionDepth: 1
    returnType: "io.netty.handler.codec.spdy.SpdySynStreamFrame"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:82,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].priority()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setPriority(byte)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdySynStreamFrame"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:94"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:95"
        BranchSideFuncs:
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:94"
        BranchSideFuncs:
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
    - Branch String: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:94"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:98"
        BranchSideFuncs:
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:95,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:95,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:95,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:95,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:95,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].isUnidirectional()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setUnidirectional(boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdySynStreamFrame"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].toString()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 141
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].isLast()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].isUnidirectional()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].streamId()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].associatedStreamId()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].priority()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].appendHeaders(java.lang.StringBuilder)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 43
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:131"
        BranchSideFuncs:
        - "associatedStreamId()"
      - BranchSide: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:130"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "length()"
        - "append(int)"
        - "priority()"
        - "appendHeaders(java.lang.StringBuilder)"
        - "setLength(int)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:115,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:116,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:116,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:118,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].isLast()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:118,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:120,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].isUnidirectional()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:121,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:124,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].streamId()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:124,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:128,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].associatedStreamId()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:132,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].priority()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:136,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].appendHeaders(java.lang.StringBuilder)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:139,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:139,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:139,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame:140,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].appendHeaders(java.lang.StringBuilder)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 120
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].headers()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry:io.netty.handler.codec.DefaultHeaders$HeaderEntry:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:java.lang.StringBuilder:java.util.AbstractMap$SimpleEntry:java.util.AbstractMap$SimpleImmutableEntry:java.util.HashMap$Node:java.util.Hashtable$Entry:java.util.TreeMap$Entry:java.util.WeakHashMap$Entry:java.util.concurrent.ConcurrentHashMap$Node].append(java.lang.String)"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.Headers].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    functionUses: 3
    ICount: 20
    EdgeCount: 113
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame:119"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "append(java.lang.String)"
        - "getValue()"
        - "next()"
        - "getKey()"
        - "headers()"
        - "append(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame:112,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].headers()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame:112,1"
      Dst: "[io.netty.handler.codec.Headers].iterator()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame:112,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame:112,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame:113,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame:114,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame:114,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame:116,1"
      Dst: "[java.util.Map$Entry].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].headers()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdyHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.Native].registerUnix()"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.Native].newKQueue()"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 2
    returnType: "io.netty.channel.unix.FileDescriptor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    - "[io.netty.channel.kqueue.Native].kqueueCreate()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.Native:119,1"
      Dst: "[io.netty.channel.kqueue.Native].kqueueCreate()"
    - Src: "io.netty.channel.kqueue.Native:119,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.Native].kqueueCreate()"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionUses: 8
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.FileDescriptor:53,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.unix.FileDescriptor:54,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.Native].keventWait(int,io.netty.channel.kqueue.KQueueEventArray,io.netty.channel.kqueue.KQueueEventArray,int,int)"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 130
    functionDepth: 4
    returnType: "int"
    argCount: 5
    argTypes:
    - "int"
    - "io.netty.channel.kqueue.KQueueEventArray"
    - "io.netty.channel.kqueue.KQueueEventArray"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.Native].keventWait(int,long,int,long,int,int,int)"
    - "[io.netty.channel.kqueue.KQueueEventArray].memoryAddress()"
    - "[io.netty.channel.kqueue.KQueueEventArray].size()"
    - "[io.netty.channel.kqueue.KQueueEventArray].capacity()"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.Native:126"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.Native:129"
        BranchSideFuncs:
        - "newIOException(java.lang.String,int)"
      - BranchSide: "io.netty.channel.kqueue.Native:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.Native:124,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].memoryAddress()"
    - Src: "io.netty.channel.kqueue.Native:124,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].size()"
    - Src: "io.netty.channel.kqueue.Native:125,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].capacity()"
    - Src: "io.netty.channel.kqueue.Native:124,1"
      Dst: "[io.netty.channel.kqueue.Native].keventWait(int,long,int,long,int,int,int)"
    - Src: "io.netty.channel.kqueue.Native:127,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].memoryAddress()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].size()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].capacity()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.Native].keventWait(int,long,int,long,int,int,int)"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 7
    argTypes:
    - "int"
    - "long"
    - "int"
    - "long"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    functionSourceFile: "io.netty.channel.unix.Errors"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionDepth: 3
    returnType: "io.netty.channel.unix.Errors$NativeIoException"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Errors$NativeIoException].<init>(java.lang.String,int)"
    functionUses: 15
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Errors:165,1"
      Dst: "[io.netty.channel.unix.Errors$NativeIoException].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Errors$NativeIoException].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.channel.unix.Errors$NativeIoException"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Errors$NativeIoException].<init>(java.lang.String,int,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Errors$NativeIoException:80,1"
      Dst: "[io.netty.channel.unix.Errors$NativeIoException].<init>(java.lang.String,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.Native].keventTriggerUserEvent(int,int)"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.Native].keventAddUserEvent(int,int)"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.Native].sizeofKEvent()"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.Native].offsetofKEventIdent()"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.Native].offsetofKEventFlags()"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.Native].offsetofKEventFFlags()"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.Native].offsetofKEventFilter()"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.Native].offsetofKeventData()"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.Native].loadNativeLibrary()"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 166
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].normalizedOs()"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.util.internal.PlatformDependent].normalizedArch()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.PlatformDependent].getClassLoader(java.lang.Class)"
    - "[io.netty.util.internal.NativeLibraryLoader].load(java.lang.String,java.lang.ClassLoader)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 28
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.Native:148"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.Native:152"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.kqueue.Native:151"
        BranchSideFuncs:
        - "addSuppressed(java.lang.Throwable,java.lang.Throwable)"
        - "normalizedArch()"
        - "append(java.lang.String)"
        - "toString()"
        - "getClassLoader(java.lang.Class)"
        - "append(char)"
        - "<init>()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "load(java.lang.String,java.lang.ClassLoader)"
    - Branch String: "io.netty.channel.kqueue.Native:148"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.Native:152"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.kqueue.Native:151"
        BranchSideFuncs:
        - "addSuppressed(java.lang.Throwable,java.lang.Throwable)"
        - "normalizedArch()"
        - "append(java.lang.String)"
        - "toString()"
        - "getClassLoader(java.lang.Class)"
        - "append(char)"
        - "<init>()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "load(java.lang.String,java.lang.ClassLoader)"
    Callsites:
    - Src: "io.netty.channel.kqueue.Native:147,1"
      Dst: "[io.netty.util.internal.PlatformDependent].normalizedOs()"
    - Src: "io.netty.channel.kqueue.Native:148,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.channel.kqueue.Native:148,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "io.netty.channel.kqueue.Native:149,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.channel.kqueue.Native:152,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.kqueue.Native:152,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.kqueue.Native:152,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.channel.kqueue.Native:152,1"
      Dst: "[io.netty.util.internal.PlatformDependent].normalizedArch()"
    - Src: "io.netty.channel.kqueue.Native:152,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.kqueue.Native:153,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getClassLoader(java.lang.Class)"
    - Src: "io.netty.channel.kqueue.Native:155,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].load(java.lang.String,java.lang.ClassLoader)"
    - Src: "io.netty.channel.kqueue.Native:159,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.kqueue.Native:161,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].normalizedOs()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1473
    functionLinenumberEnd: 1475
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].normalizedArch()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1469
    functionLinenumberEnd: 1471
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.NativeLibraryLoader].load(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 254
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.NativeLibraryLoader].calculateMangledPackagePrefix()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.ArrayList].<init>()"
    - "[io.netty.util.internal.NativeLibraryLoader].loadLibrary(java.lang.ClassLoader,java.lang.String,boolean)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.lang.System].mapLibraryName(java.lang.String)"
    - "[io.netty.util.internal.NativeLibraryLoader].getResource(java.lang.String,java.lang.ClassLoader)"
    - "[io.netty.util.internal.PlatformDependent].isOsx()"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.io.FileNotFoundException].<init>(java.lang.String)"
    - "[io.netty.util.internal.ThrowableUtil].addSuppressedAndClear(java.lang.Throwable,java.util.List)"
    - "[java.lang.String].lastIndexOf(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].substring(int)"
    - "[io.netty.util.internal.PlatformDependent].createTempFile(java.lang.String,java.lang.String,java.io.File)"
    - "[java.net.URL].openStream()"
    - "[java.io.FileOutputStream].<init>(java.io.File)"
    - "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].read(byte[])"
    - "[java.io.FilterInputStream].read(byte[])"
    - "[java.io.InputStream].read(byte[])"
    - "[java.io.DataInputStream].read(byte[])"
    - "[java.lang.ProcessImpl$DeferredCloseInputStream].read(byte[])"
    - "[java.io.FileInputStream].read(byte[])"
    - "[java.io.FileOutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream].flush()"
    - "[io.netty.util.internal.NativeLibraryLoader].shouldShadedLibraryIdBePatched(java.lang.String)"
    - "[io.netty.util.internal.NativeLibraryLoader].tryPatchShadedLibraryIdAndSign(java.io.File,java.lang.String)"
    - "[io.netty.util.internal.NativeLibraryLoader].closeQuietly(java.io.Closeable)"
    - "[java.io.File].getPath()"
    - "[java.io.File].canRead()"
    - "[java.io.File].isFile()"
    - "[io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector].access$000(java.io.File)"
    - "[io.netty.util.internal.logging.Log4JLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.UnsatisfiedLinkError].<init>(java.lang.String)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    - "[java.io.File].delete()"
    - "[java.io.File].deleteOnExit()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    - "[io.netty.util.internal.logging.InternalLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 7
    ICount: 128
    EdgeCount: 83
    BranchProfiles:
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:175"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:192"
        BranchSideFuncs:
        - "isOsx()"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:191"
        BranchSideFuncs:
        - "substring(int,int)"
        - "lastIndexOf(int)"
        - "substring(int)"
        - "createTempFile(java.lang.String,java.lang.String,java.io.File)"
        - "<init>(java.io.File)"
        - "openStream()"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:176"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:186"
        BranchSideFuncs:
        - "endsWith(java.lang.String)"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:185"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:177"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:177"
        BranchSideFuncs:
        - "mapLibraryName(java.lang.String)"
        - "append(java.lang.String)"
        - "substring(int,int)"
        - "tryPatchShadedLibraryIdAndSign(java.io.File,java.lang.String)"
        - "loadLibrary(java.lang.ClassLoader,java.lang.String,boolean)"
        - "<init>()"
        - "lastIndexOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "shouldShadedLibraryIdBePatched(java.lang.String)"
        - "getResource(java.lang.String,java.lang.ClassLoader)"
        - "closeQuietly(java.io.Closeable)"
        - "getPath()"
        - "info(java.lang.String,java.lang.Object,java.lang.Object)"
        - "add(java.lang.Object)"
        - "substring(int)"
        - "write(byte[],int,int)"
        - "toString()"
        - "canRead()"
        - "endsWith(java.lang.String)"
        - "flush()"
        - "initCause(java.lang.Throwable)"
        - "read(byte[])"
        - "createTempFile(java.lang.String,java.lang.String,java.io.File)"
        - "access$000(java.io.File)"
        - "isOsx()"
        - "isFile()"
        - "addSuppressedAndClear(java.lang.Throwable,java.util.List)"
        - "delete()"
        - "<init>(java.io.File)"
        - "<init>(java.lang.String)"
        - "openStream()"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:176"
        BranchSideFuncs:
        - "endsWith(java.lang.String)"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:180"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:185"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:184"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:202"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:205"
        BranchSideFuncs:
        - "write(byte[],int,int)"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:204"
        BranchSideFuncs:
        - "shouldShadedLibraryIdBePatched(java.lang.String)"
        - "flush()"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:207"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:215"
        BranchSideFuncs:
        - "mapLibraryName(java.lang.String)"
        - "append(java.lang.String)"
        - "substring(int,int)"
        - "tryPatchShadedLibraryIdAndSign(java.io.File,java.lang.String)"
        - "loadLibrary(java.lang.ClassLoader,java.lang.String,boolean)"
        - "<init>()"
        - "lastIndexOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "shouldShadedLibraryIdBePatched(java.lang.String)"
        - "getResource(java.lang.String,java.lang.ClassLoader)"
        - "closeQuietly(java.io.Closeable)"
        - "getPath()"
        - "info(java.lang.String,java.lang.Object,java.lang.Object)"
        - "add(java.lang.Object)"
        - "substring(int)"
        - "write(byte[],int,int)"
        - "toString()"
        - "canRead()"
        - "endsWith(java.lang.String)"
        - "flush()"
        - "initCause(java.lang.Throwable)"
        - "read(byte[])"
        - "createTempFile(java.lang.String,java.lang.String,java.io.File)"
        - "access$000(java.io.File)"
        - "isOsx()"
        - "isFile()"
        - "addSuppressedAndClear(java.lang.Throwable,java.util.List)"
        - "delete()"
        - "<init>(java.io.File)"
        - "<init>(java.lang.String)"
        - "openStream()"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:214"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "loadLibrary(java.lang.ClassLoader,java.lang.String,boolean)"
        - "<init>()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "closeQuietly(java.io.Closeable)"
        - "getPath()"
        - "info(java.lang.String,java.lang.Object,java.lang.Object)"
        - "add(java.lang.Object)"
        - "toString()"
        - "canRead()"
        - "initCause(java.lang.Throwable)"
        - "access$000(java.io.File)"
        - "isFile()"
        - "addSuppressedAndClear(java.lang.Throwable,java.util.List)"
        - "delete()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:249"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:253"
        BranchSideFuncs:
        - "deleteOnExit()"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:252"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:249"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:250"
        BranchSideFuncs:
        - "deleteOnExit()"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:249"
        BranchSideFuncs:
        - "deleteOnExit()"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:249"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:253"
        BranchSideFuncs:
        - "deleteOnExit()"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:252"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:221"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:215"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "loadLibrary(java.lang.ClassLoader,java.lang.String,boolean)"
        - "<init>()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "closeQuietly(java.io.Closeable)"
        - "getPath()"
        - "info(java.lang.String,java.lang.Object,java.lang.Object)"
        - "add(java.lang.Object)"
        - "toString()"
        - "canRead()"
        - "initCause(java.lang.Throwable)"
        - "access$000(java.io.File)"
        - "isFile()"
        - "addSuppressedAndClear(java.lang.Throwable,java.util.List)"
        - "delete()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:214"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "loadLibrary(java.lang.ClassLoader,java.lang.String,boolean)"
        - "<init>()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "closeQuietly(java.io.Closeable)"
        - "getPath()"
        - "info(java.lang.String,java.lang.Object,java.lang.Object)"
        - "add(java.lang.Object)"
        - "toString()"
        - "canRead()"
        - "initCause(java.lang.Throwable)"
        - "access$000(java.io.File)"
        - "isFile()"
        - "addSuppressedAndClear(java.lang.Throwable,java.util.List)"
        - "delete()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:221"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:215"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "loadLibrary(java.lang.ClassLoader,java.lang.String,boolean)"
        - "<init>()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "closeQuietly(java.io.Closeable)"
        - "getPath()"
        - "info(java.lang.String,java.lang.Object,java.lang.Object)"
        - "add(java.lang.Object)"
        - "toString()"
        - "canRead()"
        - "initCause(java.lang.Throwable)"
        - "access$000(java.io.File)"
        - "isFile()"
        - "addSuppressedAndClear(java.lang.Throwable,java.util.List)"
        - "delete()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:214"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "loadLibrary(java.lang.ClassLoader,java.lang.String,boolean)"
        - "<init>()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "closeQuietly(java.io.Closeable)"
        - "getPath()"
        - "info(java.lang.String,java.lang.Object,java.lang.Object)"
        - "add(java.lang.Object)"
        - "toString()"
        - "canRead()"
        - "initCause(java.lang.Throwable)"
        - "access$000(java.io.File)"
        - "isFile()"
        - "addSuppressedAndClear(java.lang.Throwable,java.util.List)"
        - "delete()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:221"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:215"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "loadLibrary(java.lang.ClassLoader,java.lang.String,boolean)"
        - "<init>()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "closeQuietly(java.io.Closeable)"
        - "getPath()"
        - "info(java.lang.String,java.lang.Object,java.lang.Object)"
        - "add(java.lang.Object)"
        - "toString()"
        - "canRead()"
        - "initCause(java.lang.Throwable)"
        - "access$000(java.io.File)"
        - "isFile()"
        - "addSuppressedAndClear(java.lang.Throwable,java.util.List)"
        - "delete()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:214"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "loadLibrary(java.lang.ClassLoader,java.lang.String,boolean)"
        - "<init>()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "closeQuietly(java.io.Closeable)"
        - "getPath()"
        - "info(java.lang.String,java.lang.Object,java.lang.Object)"
        - "add(java.lang.Object)"
        - "toString()"
        - "canRead()"
        - "initCause(java.lang.Throwable)"
        - "access$000(java.io.File)"
        - "isFile()"
        - "addSuppressedAndClear(java.lang.Throwable,java.util.List)"
        - "delete()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:222"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:215"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "loadLibrary(java.lang.ClassLoader,java.lang.String,boolean)"
        - "<init>()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "closeQuietly(java.io.Closeable)"
        - "getPath()"
        - "info(java.lang.String,java.lang.Object,java.lang.Object)"
        - "add(java.lang.Object)"
        - "toString()"
        - "canRead()"
        - "initCause(java.lang.Throwable)"
        - "access$000(java.io.File)"
        - "isFile()"
        - "addSuppressedAndClear(java.lang.Throwable,java.util.List)"
        - "delete()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:214"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "loadLibrary(java.lang.ClassLoader,java.lang.String,boolean)"
        - "<init>()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "closeQuietly(java.io.Closeable)"
        - "getPath()"
        - "info(java.lang.String,java.lang.Object,java.lang.Object)"
        - "add(java.lang.Object)"
        - "toString()"
        - "canRead()"
        - "initCause(java.lang.Throwable)"
        - "access$000(java.io.File)"
        - "isFile()"
        - "addSuppressedAndClear(java.lang.Throwable,java.util.List)"
        - "delete()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:249"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:252"
        BranchSideFuncs:
        - "deleteOnExit()"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:251"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:249"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:250"
        BranchSideFuncs:
        - "deleteOnExit()"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:249"
        BranchSideFuncs:
        - "deleteOnExit()"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:249"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:252"
        BranchSideFuncs:
        - "deleteOnExit()"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:251"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader:156,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].calculateMangledPackagePrefix()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:157,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:157,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:157,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:158,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:161,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].loadLibrary(java.lang.ClassLoader,java.lang.String,boolean)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:164,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:167,1"
      Dst: "[java.lang.System].mapLibraryName(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:173,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].getResource(java.lang.String,java.lang.ClassLoader)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:176,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isOsx()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:177,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:181,1"
      Dst: "[java.io.FileNotFoundException].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:182,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].addSuppressedAndClear(java.lang.Throwable,java.util.List)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:192,1"
      Dst: "[java.lang.String].lastIndexOf(int)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:193,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:194,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:196,1"
      Dst: "[io.netty.util.internal.PlatformDependent].createTempFile(java.lang.String,java.lang.String,java.io.File)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:197,1"
      Dst: "[java.net.URL].openStream()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:198,1"
      Dst: "[java.io.FileOutputStream].<init>(java.io.File)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:202,1"
      Dst: "[java.io.InputStream].read(byte[])"
    - Src: "io.netty.util.internal.NativeLibraryLoader:203,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:205,1"
      Dst: "[java.io.OutputStream].flush()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:207,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].shouldShadedLibraryIdBePatched(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:210,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].tryPatchShadedLibraryIdAndSign(java.io.File,java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:215,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].closeQuietly(java.io.Closeable)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:218,1"
      Dst: "[java.io.File].getPath()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:249,1"
      Dst: "[java.io.File].delete()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:250,1"
      Dst: "[java.io.File].deleteOnExit()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:221,1"
      Dst: "[java.io.File].isFile()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:221,1"
      Dst: "[java.io.File].canRead()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:222,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector].access$000(java.io.File)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:226,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:233,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:239,1"
      Dst: "[java.lang.UnsatisfiedLinkError].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:240,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 34
    CyclomaticComplexity: 11
  - functionName: "[io.netty.util.internal.NativeLibraryLoader].calculateMangledPackagePrefix()"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 150
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[java.lang.String].replace(char,char)"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.lang.UnsatisfiedLinkError].<init>(java.lang.String)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].replace(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 1
    ICount: 20
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:142"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:147"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:146"
        BranchSideFuncs:
        - "length()"
        - "substring(int,int)"
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader:139,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:141,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:142,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:143,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.util.internal.NativeLibraryLoader:143,1"
      Dst: "[java.lang.UnsatisfiedLinkError].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:147,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:147,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:148,1"
      Dst: "[java.lang.String].replace(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.NativeLibraryLoader].loadLibrary(java.lang.ClassLoader,java.lang.String,boolean)"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader"
    linkageType: ""
    functionLinenumber: 377
    functionLinenumberEnd: 405
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.ClassLoader"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.NativeLibraryLoader].tryToLoadClass(java.lang.ClassLoader,java.lang.Class)"
    - "[io.netty.util.internal.NativeLibraryLoader].loadLibraryByHelper(java.lang.Class,java.lang.String,boolean)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.NativeLibraryUtil].loadLibrary(java.lang.String,boolean)"
    - "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    - "[io.netty.util.internal.NativeLibraryLoader].rethrowWithMoreDetailsIfPossible(java.lang.String,java.lang.NoSuchMethodError)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    functionUses: 2
    ICount: 28
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:394"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:391"
        BranchSideFuncs:
        - "loadLibrary(java.lang.String,boolean)"
        - "addSuppressed(java.lang.Throwable,java.lang.Throwable)"
        - "debug(java.lang.String,java.lang.Object)"
        - "rethrowWithMoreDetailsIfPossible(java.lang.String,java.lang.NoSuchMethodError)"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:390"
        BranchSideFuncs:
        - "loadLibrary(java.lang.String,boolean)"
        - "addSuppressed(java.lang.Throwable,java.lang.Throwable)"
        - "debug(java.lang.String,java.lang.Object)"
        - "rethrowWithMoreDetailsIfPossible(java.lang.String,java.lang.NoSuchMethodError)"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:399"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:391"
        BranchSideFuncs:
        - "loadLibrary(java.lang.String,boolean)"
        - "addSuppressed(java.lang.Throwable,java.lang.Throwable)"
        - "debug(java.lang.String,java.lang.Object)"
        - "rethrowWithMoreDetailsIfPossible(java.lang.String,java.lang.NoSuchMethodError)"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:390"
        BranchSideFuncs:
        - "loadLibrary(java.lang.String,boolean)"
        - "addSuppressed(java.lang.Throwable,java.lang.Throwable)"
        - "debug(java.lang.String,java.lang.Object)"
        - "rethrowWithMoreDetailsIfPossible(java.lang.String,java.lang.NoSuchMethodError)"
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader:382,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].tryToLoadClass(java.lang.ClassLoader,java.lang.Class)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:383,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].loadLibraryByHelper(java.lang.Class,java.lang.String,boolean)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:384,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:391,1"
      Dst: "[io.netty.util.internal.NativeLibraryUtil].loadLibrary(java.lang.String,boolean)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:395,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:397,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].rethrowWithMoreDetailsIfPossible(java.lang.String,java.lang.NoSuchMethodError)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.NativeLibraryUtil].loadLibrary(java.lang.String,boolean)"
    functionSourceFile: "io.netty.util.internal.NativeLibraryUtil"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].load(java.lang.String)"
    - "[java.lang.System].loadLibrary(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.NativeLibraryUtil:35"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryUtil:38"
        BranchSideFuncs:
        - "load(java.lang.String)"
      - BranchSide: "io.netty.util.internal.NativeLibraryUtil:37"
        BranchSideFuncs:
        - "loadLibrary(java.lang.String)"
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryUtil:36,1"
      Dst: "[java.lang.System].load(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryUtil:38,1"
      Dst: "[java.lang.System].loadLibrary(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.ThrowableUtil"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 68
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Throwable"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ThrowableUtil].haveSuppressed()"
    - "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    functionUses: 11
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ThrowableUtil:63"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThrowableUtil:66"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.ThrowableUtil:65"
        BranchSideFuncs:
        - "addSuppressed(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.util.internal.ThrowableUtil:63,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].haveSuppressed()"
    - Src: "io.netty.util.internal.ThrowableUtil:66,1"
      Dst: "[java.lang.Throwable].addSuppressed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThrowableUtil].haveSuppressed()"
    functionSourceFile: "io.netty.util.internal.ThrowableUtil"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ThrowableUtil:58"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThrowableUtil:57"
        BranchSideFuncs:
        - "javaVersion()"
    Callsites:
    - Src: "io.netty.util.internal.ThrowableUtil:58,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.NativeLibraryLoader].rethrowWithMoreDetailsIfPossible(java.lang.String,java.lang.NoSuchMethodError)"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader"
    linkageType: ""
    functionLinenumber: 407
    functionLinenumberEnd: 413
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.NoSuchMethodError"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[java.lang.LinkageError].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 14
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:408"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:412"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String,java.lang.Throwable)"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:411"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader:408,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:409,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:409,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:409,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:409,1"
      Dst: "[java.lang.LinkageError].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.NativeLibraryLoader].getResource(java.lang.String,java.lang.ClassLoader)"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader"
    linkageType: ""
    functionLinenumber: 257
    functionLinenumberEnd: 307
    functionDepth: 2
    returnType: "java.net.URL"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ClassLoader].getSystemResources(java.lang.String)"
    - "[jdk.internal.loader.Loader].getResources(java.lang.String)"
    - "[java.lang.ClassLoader].getResources(java.lang.String)"
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Collections].list(java.util.Enumeration)"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[java.security.MessageDigest].getInstance(java.lang.String)"
    - "[io.netty.util.internal.NativeLibraryLoader].digest(java.security.MessageDigest,java.net.URL)"
    - "[java.util.Arrays].equals(byte[],byte[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String)"
    functionUses: 2
    ICount: 74
    EdgeCount: 42
    BranchProfiles:
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:258"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:261"
        BranchSideFuncs:
        - "getSystemResources(java.lang.String)"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:260"
        BranchSideFuncs:
        - "getResources(java.lang.String)"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:275"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:304"
        BranchSideFuncs:
        - "getInstance(java.lang.String)"
        - "equals(byte[],byte[])"
        - "debug(java.lang.String,java.lang.Throwable)"
        - "digest(java.security.MessageDigest,java.net.URL)"
        - "list(java.util.Enumeration)"
        - "size()"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:303"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(java.lang.Object)"
        - "get(int)"
        - "<init>()"
        - "warn(java.lang.String)"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:283"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:292"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:291"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:284"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:284"
        BranchSideFuncs:
        - "equals(byte[],byte[])"
        - "digest(java.security.MessageDigest,java.net.URL)"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:283"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:286"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:287"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:286"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:286"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:284"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:283"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:294"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:299"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:298"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader:259,1"
      Dst: "[java.lang.ClassLoader].getSystemResources(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:261,1"
      Dst: "[java.lang.ClassLoader].getResources(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:264,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:264,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:264,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:264,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:267,1"
      Dst: "[java.util.Collections].list(java.util.Enumeration)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:268,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:273,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:277,1"
      Dst: "[java.security.MessageDigest].getInstance(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:281,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].digest(java.security.MessageDigest,java.net.URL)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:286,1"
      Dst: "[java.util.Arrays].equals(byte[],byte[])"
    - Src: "io.netty.util.internal.NativeLibraryLoader:298,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:301,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:301,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:304,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 24
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.internal.NativeLibraryLoader].digest(java.security.MessageDigest,java.net.URL)"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader"
    linkageType: ""
    functionLinenumber: 311
    functionLinenumberEnd: 327
    functionDepth: 1
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "java.security.MessageDigest"
    - "java.net.URL"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URL].openStream()"
    - "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].read(byte[])"
    - "[java.io.FilterInputStream].read(byte[])"
    - "[java.io.InputStream].read(byte[])"
    - "[java.io.DataInputStream].read(byte[])"
    - "[java.lang.ProcessImpl$DeferredCloseInputStream].read(byte[])"
    - "[java.io.FileInputStream].read(byte[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.NativeLibraryLoader].closeQuietly(java.io.Closeable)"
    - "[java.security.MessageDigest].update(byte[],int,int)"
    - "[java.security.MessageDigest].digest()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 22
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:317"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:320"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:319"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader:314,1"
      Dst: "[java.net.URL].openStream()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:317,1"
      Dst: "[java.io.InputStream].read(byte[])"
    - Src: "io.netty.util.internal.NativeLibraryLoader:318,1"
      Dst: "[java.security.MessageDigest].update(byte[],int,int)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:320,1"
      Dst: "[java.security.MessageDigest].digest()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:325,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].closeQuietly(java.io.Closeable)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:322,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.NativeLibraryLoader].closeQuietly(java.io.Closeable)"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader"
    linkageType: ""
    functionLinenumber: 525
    functionLinenumberEnd: 534
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.Closeable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].close()"
    - "[io.netty.handler.pcap.PcapWriter].close()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].close()"
    - "[jdk.internal.loader.URLClassPath$JarLoader].close()"
    - "[io.netty.buffer.ByteBufInputStream].close()"
    - "[jdk.internal.module.SystemModuleFinders$SystemModuleReader].close()"
    - "[io.netty.channel.pool.FixedChannelPool].close()"
    - "[java.io.ObjectInputStream$BlockDataInputStream].close()"
    - "[jaz.Zer].close()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].close()"
    - "[java.net.URLClassLoader].close()"
    - "[java.io.StringWriter].close()"
    - "[java.util.zip.ZipInputStream].close()"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].close()"
    - "[jdk.internal.loader.BuiltinClassLoader$NullModuleReader].close()"
    - "[java.io.ObjectInputStream$PeekInputStream].close()"
    - "[java.io.ObjectOutputStream$BlockDataOutputStream].close()"
    - "[jdk.internal.module.ModuleReferences$ExplodedModuleReader].close()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].close()"
    - "[sun.nio.cs.StreamDecoder].close()"
    - "[java.io.OutputStream].close()"
    - "[sun.nio.fs.UnixFileSystem].close()"
    - "[jdk.internal.module.ModulePatcher$ExplodedResourceFinder].close()"
    - "[java.io.ByteArrayOutputStream].close()"
    - "[java.io.FilterInputStream].close()"
    - "[io.netty.resolver.RoundRobinInetAddressResolver].close()"
    - "[java.util.jar.Manifest$FastInputStream].close()"
    - "[java.io.PrintStream].close()"
    - "[io.netty.resolver.InetSocketAddressResolver].close()"
    - "[java.io.BufferedInputStream].close()"
    - "[java.io.InputStreamReader].close()"
    - "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].close()"
    - "[io.netty.resolver.AddressResolverGroup].close()"
    - "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].close()"
    - "[jdk.internal.module.ModuleReferences$SafeCloseModuleReader].close()"
    - "[jdk.internal.loader.URLClassPath$Loader].close()"
    - "[io.netty.resolver.SimpleNameResolver].close()"
    - "[java.io.ObjectOutputStream].close()"
    - "[java.io.BufferedWriter].close()"
    - "[java.nio.file.FileTreeWalker].close()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].close()"
    - "[io.netty.resolver.dns.DnsNameResolver].close()"
    - "[java.net.Socket].close()"
    - "[sun.nio.cs.StreamEncoder].close()"
    - "[io.netty.channel.pool.SimpleChannelPool].close()"
    - "[java.io.RandomAccessFile].close()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].close()"
    - "[java.io.ObjectInputStream].close()"
    - "[io.netty.buffer.ByteBufOutputStream].close()"
    - "[java.io.FilterOutputStream].close()"
    - "[io.netty.channel.pool.AbstractChannelPoolMap].close()"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    - "[java.lang.ProcessImpl$DeferredCloseInputStream].close()"
    - "[java.io.InputStream].close()"
    - "[java.io.OutputStream$1].close()"
    - "[java.io.FileOutputStream].close()"
    - "[jdk.internal.loader.Loader$NullModuleReader].close()"
    - "[jdk.internal.module.ModulePatcher$PatchedModuleReader].close()"
    - "[io.netty.resolver.dns.InflightNameResolver].close()"
    - "[java.net.ServerSocket].close()"
    - "[jdk.internal.module.ModulePatcher$JarResourceFinder].close()"
    - "[java.io.OutputStreamWriter].close()"
    - "[java.io.InputStream$1].close()"
    - "[java.nio.channels.spi.AbstractSelector].close()"
    - "[io.netty.resolver.AbstractAddressResolver].close()"
    - "[java.io.PushbackInputStream].close()"
    - "[java.util.zip.InflaterInputStream].close()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].close()"
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].close()"
    - "[java.io.FileInputStream].close()"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].close()"
    - "[java.util.Formatter].close()"
    - "[io.netty.handler.pcap.PcapWriteHandler].close()"
    - "[java.io.BufferedReader].close()"
    - "[io.netty.channel.unix.SocketWritableByteChannel].close()"
    - "[java.nio.file.FileTreeIterator].close()"
    - "[java.io.PrintWriter].close()"
    - "[java.util.zip.ZipFile].close()"
    - "[java.io.ByteArrayInputStream].close()"
    - "[java.net.DatagramSocket].close()"
    - "[java.io.Closeable].close()"
    functionUses: 12
    ICount: 6
    EdgeCount: 80
    BranchProfiles:
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:526"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:532"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader:528,1"
      Dst: "[java.io.Closeable].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].isOsx()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 346
    functionLinenumberEnd: 348
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].createTempFile(java.lang.String,java.lang.String,java.io.File)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1482
    functionLinenumberEnd: 1504
    functionDepth: 2
    returnType: "java.io.File"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[java.nio.file.Files].createTempFile(java.lang.String,java.lang.String,java.nio.file.attribute.FileAttribute[])"
    - "[java.nio.file.Path].toFile()"
    - "[java.nio.file.Files].createTempFile(java.nio.file.Path,java.lang.String,java.lang.String,java.nio.file.attribute.FileAttribute[])"
    - "[java.io.File].toPath()"
    - "[java.io.File].createTempFile(java.lang.String,java.lang.String)"
    - "[java.io.File].createTempFile(java.lang.String,java.lang.String,java.io.File)"
    - "[java.io.File].setReadable(boolean,boolean)"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 40
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1483"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1490"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1489"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1484"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1487"
        BranchSideFuncs:
        - "createTempFile(java.lang.String,java.lang.String,java.nio.file.attribute.FileAttribute[])"
      - BranchSide: "io.netty.util.internal.PlatformDependent:1486"
        BranchSideFuncs:
        - "toPath()"
        - "toFile()"
        - "createTempFile(java.nio.file.Path,java.lang.String,java.lang.String,java.nio.file.attribute.FileAttribute[])"
    - Branch String: "io.netty.util.internal.PlatformDependent:1490"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1493"
        BranchSideFuncs:
        - "createTempFile(java.lang.String,java.lang.String)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:1492"
        BranchSideFuncs:
        - "createTempFile(java.lang.String,java.lang.String,java.io.File)"
    - Branch String: "io.netty.util.internal.PlatformDependent:1497"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1500"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1499"
        BranchSideFuncs:
        - "setReadable(boolean,boolean)"
    - Branch String: "io.netty.util.internal.PlatformDependent:1500"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1503"
        BranchSideFuncs:
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:1502"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1483,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.util.internal.PlatformDependent:1485,1"
      Dst: "[java.nio.file.Files].createTempFile(java.lang.String,java.lang.String,java.nio.file.attribute.FileAttribute[])"
    - Src: "io.netty.util.internal.PlatformDependent:1485,1"
      Dst: "[java.nio.file.Path].toFile()"
    - Src: "io.netty.util.internal.PlatformDependent:1487,1"
      Dst: "[java.io.File].toPath()"
    - Src: "io.netty.util.internal.PlatformDependent:1487,1"
      Dst: "[java.nio.file.Files].createTempFile(java.nio.file.Path,java.lang.String,java.lang.String,java.nio.file.attribute.FileAttribute[])"
    - Src: "io.netty.util.internal.PlatformDependent:1491,1"
      Dst: "[java.io.File].createTempFile(java.lang.String,java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1493,1"
      Dst: "[java.io.File].createTempFile(java.lang.String,java.lang.String,java.io.File)"
    - Src: "io.netty.util.internal.PlatformDependent:1497,1"
      Dst: "[java.io.File].setReadable(boolean,boolean)"
    - Src: "io.netty.util.internal.PlatformDependent:1498,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.PlatformDependent:1498,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1498,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.util.internal.PlatformDependent:1498,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.PlatformDependent:1498,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.NativeLibraryLoader].shouldShadedLibraryIdBePatched(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader"
    linkageType: ""
    functionLinenumber: 357
    functionLinenumberEnd: 359
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    - "[io.netty.util.internal.PlatformDependent].isOsx()"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:358"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:358"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:358"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader:358,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isOsx()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:358,1"
      Dst: "[java.lang.String].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.internal.NativeLibraryLoader].tryPatchShadedLibraryIdAndSign(java.io.File,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader"
    linkageType: ""
    functionLinenumber: 329
    functionLinenumberEnd: 337
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    - "[io.netty.util.internal.NativeLibraryLoader].generateUniqueId(int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.io.File].getAbsolutePath()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.NativeLibraryLoader].tryExec(java.lang.String)"
    functionUses: 1
    ICount: 26
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:331"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:335"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:334"
        BranchSideFuncs:
        - "getAbsolutePath()"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "tryExec(java.lang.String)"
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader:330,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:330,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].generateUniqueId(int)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:330,1"
      Dst: "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:331,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:331,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:331,1"
      Dst: "[java.io.File].getAbsolutePath()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:331,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:331,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].tryExec(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.NativeLibraryLoader].generateUniqueId(int)"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader"
    linkageType: ""
    functionLinenumber: 361
    functionLinenumberEnd: 369
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextInt(int)"
    - "[java.util.Random].nextInt(int)"
    - "[java.util.concurrent.ThreadLocalRandom].nextInt(int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:363"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:367"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader:365,1"
      Dst: "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:366,1"
      Dst: "[java.util.Random].nextInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1112
    functionLinenumberEnd: 1114
    functionDepth: 0
    returnType: "java.util.Random"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent$2].current()"
    - "[io.netty.util.internal.PlatformDependent$3].current()"
    - "[io.netty.util.internal.PlatformDependent$ThreadLocalRandomProvider].current()"
    functionUses: 14
    ICount: 3
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1113,1"
      Dst: "[io.netty.util.internal.PlatformDependent$ThreadLocalRandomProvider].current()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.NativeLibraryLoader].tryExec(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader"
    linkageType: ""
    functionLinenumber: 339
    functionLinenumberEnd: 355
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Runtime].exec(java.lang.String)"
    - "[java.lang.Runtime].getRuntime()"
    - "[java.lang.ProcessImpl].waitFor()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].interrupt()"
    - "[io.netty.util.internal.logging.Log4JLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.Process].waitFor()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 25
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:341"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:345"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:344"
        BranchSideFuncs:
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader:340,1"
      Dst: "[java.lang.Runtime].getRuntime()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:340,1"
      Dst: "[java.lang.Runtime].exec(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:340,1"
      Dst: "[java.lang.Process].waitFor()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:342,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:342,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:348,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:348,1"
      Dst: "[java.lang.Thread].interrupt()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:350,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:352,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector].access$000(java.io.File)"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector"
    linkageType: ""
    functionLinenumber: 538
    functionLinenumberEnd: 540
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector].canExecuteExecutable(java.io.File)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:539,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector].canExecuteExecutable(java.io.File)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector].canExecuteExecutable(java.io.File)"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector"
    linkageType: ""
    functionLinenumber: 542
    functionLinenumberEnd: 574
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[java.io.File].canExecute()"
    - "[java.nio.file.Files].getPosixFilePermissions(java.nio.file.Path,java.nio.file.LinkOption[])"
    - "[java.io.File].toPath()"
    - "[java.util.EnumSet].of(java.lang.Enum,java.lang.Enum,java.lang.Enum)"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].containsAll(java.util.Collection)"
    - "[java.util.AbstractCollection].containsAll(java.util.Collection)"
    - "[java.util.EnumSet].copyOf(java.util.Collection)"
    - "[java.nio.file.Files].setPosixFilePermissions(java.nio.file.Path,java.util.Set)"
    - "[java.util.Set].containsAll(java.util.Collection)"
    - "[java.util.Set].addAll(java.util.Collection)"
    functionUses: 1
    ICount: 23
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:543"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:549"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:550"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:561"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:560"
        BranchSideFuncs:
        - "getPosixFilePermissions(java.nio.file.Path,java.nio.file.LinkOption[])"
        - "of(java.lang.Enum,java.lang.Enum,java.lang.Enum)"
        - "containsAll(java.util.Collection)"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:566"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:570"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:569"
        BranchSideFuncs:
        - "canExecute()"
        - "setPosixFilePermissions(java.nio.file.Path,java.util.Set)"
        - "toPath()"
        - "copyOf(java.util.Collection)"
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:543,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:550,1"
      Dst: "[java.io.File].canExecute()"
    - Src: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:561,1"
      Dst: "[java.io.File].toPath()"
    - Src: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:561,1"
      Dst: "[java.nio.file.Files].getPosixFilePermissions(java.nio.file.Path,java.nio.file.LinkOption[])"
    - Src: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:563,1"
      Dst: "[java.util.EnumSet].of(java.lang.Enum,java.lang.Enum,java.lang.Enum)"
    - Src: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:566,1"
      Dst: "[java.util.Set].containsAll(java.util.Collection)"
    - Src: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:570,1"
      Dst: "[java.util.EnumSet].copyOf(java.util.Collection)"
    - Src: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:571,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    - Src: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:572,1"
      Dst: "[java.nio.file.Files].setPosixFilePermissions(java.nio.file.Path,java.util.Set)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.Native].isSupportingFastOpenClient()"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 174
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueStaticallyReferencedJniMethods].fastOpenClient()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.Native:169"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.Native:169"
        BranchSideFuncs:
        - "fastOpenClient()"
        - "debug(java.lang.String,java.lang.Throwable)"
      - BranchSide: "io.netty.channel.kqueue.Native:168"
        BranchSideFuncs:
        - "fastOpenClient()"
    Callsites:
    - Src: "io.netty.channel.kqueue.Native:169,1"
      Dst: "[io.netty.channel.kqueue.KQueueStaticallyReferencedJniMethods].fastOpenClient()"
    - Src: "io.netty.channel.kqueue.Native:171,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueStaticallyReferencedJniMethods].fastOpenClient()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.Native].isSupportingFastOpenServer()"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 183
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueStaticallyReferencedJniMethods].fastOpenServer()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.Native:178"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.Native:178"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Throwable)"
        - "fastOpenServer()"
      - BranchSide: "io.netty.channel.kqueue.Native:177"
        BranchSideFuncs:
        - "fastOpenServer()"
    Callsites:
    - Src: "io.netty.channel.kqueue.Native:178,1"
      Dst: "[io.netty.channel.kqueue.KQueueStaticallyReferencedJniMethods].fastOpenServer()"
    - Src: "io.netty.channel.kqueue.Native:180,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueStaticallyReferencedJniMethods].fastOpenServer()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.Native].<init>()"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.Native:185,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.Native].access$000()"
    functionSourceFile: "io.netty.channel.kqueue.Native"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.Native].registerUnix()"
    functionUses: 1
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.Native:56,1"
      Dst: "[io.netty.channel.kqueue.Native].registerUnix()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttSubscribePayload)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscribeMessage"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader"
    - "io.netty.handler.codec.mqtt.MqttSubscribePayload"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubscribeMessage:29,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader,io.netty.handler.codec.mqtt.MqttSubscribePayload)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscribeMessage"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    - "io.netty.handler.codec.mqtt.MqttSubscribePayload"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttSubscribePayload)"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].withDefaultEmptyProperties()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].withDefaultEmptyProperties()"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubscribeMessage:36,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].withDefaultEmptyProperties()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubscribeMessage:36,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttSubscribePayload)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].variableHeader()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscribeMessage"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubscribeMessage:41,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessage"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].idAndPropertiesVariableHeader()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscribeMessage"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubscribeMessage:45,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].payload()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscribeMessage"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttSubscribePayload"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].payload()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubscribeMessage:50,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].payload()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessage].payload()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessage"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OptionalSslHandler].<init>(io.netty.handler.ssl.SslContext)"
    functionSourceFile: "io.netty.handler.ssl.OptionalSslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.SslContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OptionalSslHandler:38,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - Src: "io.netty.handler.ssl.OptionalSslHandler:39,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OptionalSslHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.ssl.OptionalSslHandler"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 53
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.handler.ssl.SslHandler].isEncrypted(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.ssl.OptionalSslHandler].handleSsl(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.OptionalSslHandler].handleNonSsl(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 1
    ICount: 13
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OptionalSslHandler:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OptionalSslHandler:47"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OptionalSslHandler:46"
        BranchSideFuncs:
        - "isEncrypted(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.ssl.OptionalSslHandler:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OptionalSslHandler:50"
        BranchSideFuncs:
        - "handleSsl(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.ssl.OptionalSslHandler:49"
        BranchSideFuncs:
        - "handleNonSsl(io.netty.channel.ChannelHandlerContext)"
    Callsites:
    - Src: "io.netty.handler.ssl.OptionalSslHandler:44,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.ssl.OptionalSslHandler:47,1"
      Dst: "[io.netty.handler.ssl.SslHandler].isEncrypted(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.OptionalSslHandler:48,1"
      Dst: "[io.netty.handler.ssl.OptionalSslHandler].handleSsl(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.OptionalSslHandler:50,1"
      Dst: "[io.netty.handler.ssl.OptionalSslHandler].handleNonSsl(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler].isEncrypted(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1190
    functionLinenumberEnd: 1196
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.handler.ssl.SslUtils].getEncryptedPacketLength(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    functionUses: 1
    ICount: 14
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1191"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1195"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1194"
        BranchSideFuncs:
        - "readerIndex()"
        - "getEncryptedPacketLength(io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1195"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1194"
        BranchSideFuncs:
        - "readerIndex()"
        - "getEncryptedPacketLength(io.netty.buffer.ByteBuf,int)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1191,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.ssl.SslHandler:1192,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslHandler:1195,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.ssl.SslHandler:1195,1"
      Dst: "[io.netty.handler.ssl.SslUtils].getEncryptedPacketLength(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslUtils].getEncryptedPacketLength(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 275
    functionLinenumberEnd: 325
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShort(int)"
    - "[io.netty.handler.ssl.SslUtils].unsignedShortBE(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.ssl.SslUtils].shortBE(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.ByteBuf].getShort(int)"
    functionUses: 3
    ICount: 66
    EdgeCount: 55
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:293"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:308"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:296"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:297"
        BranchSideFuncs:
        - "unsignedShortBE(io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.ssl.SslUtils:296"
      Branch Sides: []
    - Branch String: "io.netty.handler.ssl.SslUtils:299"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:308"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:309"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:323"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:311"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:-1"
        BranchSideFuncs:
        - "getUnsignedByte(int)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:313"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:314"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:313"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:315"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:315"
        BranchSideFuncs:
        - "shortBE(io.netty.buffer.ByteBuf,int)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:314"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:317"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:324"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslUtils:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:280,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    - Src: "io.netty.handler.ssl.SslUtils:296,1"
      Dst: "[io.netty.buffer.ByteBuf].getShort(int)"
    - Src: "io.netty.handler.ssl.SslUtils:298,1"
      Dst: "[io.netty.handler.ssl.SslUtils].unsignedShortBE(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.ssl.SslUtils:316,1"
      Dst: "[io.netty.handler.ssl.SslUtils].shortBE(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 22
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.ssl.SslUtils].unsignedShortBE(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 329
    functionLinenumberEnd: 335
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.SwappedByteBuf].order()"
    - "[io.netty.buffer.EmptyByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[java.lang.Integer].reverseBytes(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.ByteBuf].order()"
    functionUses: 1
    ICount: 10
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:331"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:334"
        BranchSideFuncs:
        - "reverseBytes(int)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:333"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:330,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedShort(int)"
    - Src: "io.netty.handler.ssl.SslUtils:331,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    - Src: "io.netty.handler.ssl.SslUtils:332,1"
      Dst: "[java.lang.Integer].reverseBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslUtils].shortBE(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 339
    functionLinenumberEnd: 345
    functionDepth: 0
    returnType: "short"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].getShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShort(int)"
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.SwappedByteBuf].order()"
    - "[io.netty.buffer.EmptyByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[java.lang.Short].reverseBytes(short)"
    - "[io.netty.buffer.ByteBuf].getShort(int)"
    - "[io.netty.buffer.ByteBuf].order()"
    functionUses: 2
    ICount: 9
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:341"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:344"
        BranchSideFuncs:
        - "reverseBytes(short)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:343"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:340,1"
      Dst: "[io.netty.buffer.ByteBuf].getShort(int)"
    - Src: "io.netty.handler.ssl.SslUtils:341,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    - Src: "io.netty.handler.ssl.SslUtils:342,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OptionalSslHandler].handleSsl(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.OptionalSslHandler"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 68
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[io.netty.handler.ssl.OptionalSslHandler].newSslHandler(io.netty.channel.ChannelHandlerContext,io.netty.handler.ssl.SslContext)"
    - "[io.netty.handler.ssl.OptionalSslHandler].newSslHandlerName()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].replace(io.netty.channel.ChannelHandler,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.handler.ssl.SslHandler].engine()"
    - "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].replace(io.netty.channel.ChannelHandler,java.lang.String,io.netty.channel.ChannelHandler)"
    functionUses: 1
    ICount: 19
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OptionalSslHandler:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OptionalSslHandler:67"
        BranchSideFuncs:
        - "engine()"
        - "safeRelease(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.OptionalSslHandler:66"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OptionalSslHandler:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OptionalSslHandler:66"
        BranchSideFuncs:
        - "engine()"
        - "safeRelease(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.OptionalSslHandler:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OptionalSslHandler:57,1"
      Dst: "[io.netty.handler.ssl.OptionalSslHandler].newSslHandler(io.netty.channel.ChannelHandlerContext,io.netty.handler.ssl.SslContext)"
    - Src: "io.netty.handler.ssl.OptionalSslHandler:58,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.ssl.OptionalSslHandler:58,1"
      Dst: "[io.netty.handler.ssl.OptionalSslHandler].newSslHandlerName()"
    - Src: "io.netty.handler.ssl.OptionalSslHandler:58,1"
      Dst: "[io.netty.channel.ChannelPipeline].replace(io.netty.channel.ChannelHandler,java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.ssl.OptionalSslHandler:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.OptionalSslHandler:64,1"
      Dst: "[io.netty.handler.ssl.SslHandler].engine()"
    - Src: "io.netty.handler.ssl.OptionalSslHandler:64,1"
      Dst: "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OptionalSslHandler].newSslHandler(io.netty.channel.ChannelHandlerContext,io.netty.handler.ssl.SslContext)"
    functionSourceFile: "io.netty.handler.ssl.OptionalSslHandler"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslHandler"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.ssl.SslContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.handler.ssl.SslContext].newHandler(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OptionalSslHandler:97,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.ssl.OptionalSslHandler:97,1"
      Dst: "[io.netty.handler.ssl.SslContext].newHandler(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OptionalSslHandler].newSslHandlerName()"
    functionSourceFile: "io.netty.handler.ssl.OptionalSslHandler"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].engine()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 576
    functionLinenumberEnd: 578
    functionDepth: 0
    returnType: "javax.net.ssl.SSLEngine"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OptionalSslHandler].handleNonSsl(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.OptionalSslHandler"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 77
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OptionalSslHandler].newNonSslHandler(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.AbstractChannelHandlerContext:io.netty.handler.ssl.OptionalSslHandler].newNonSslHandlerName()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].replace(io.netty.channel.ChannelHandler,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.handler.ssl.OptionalSslHandler].newNonSslHandlerName()"
    - "[io.netty.channel.ChannelPipeline].replace(io.netty.channel.ChannelHandler,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    functionUses: 1
    ICount: 11
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OptionalSslHandler:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OptionalSslHandler:74"
        BranchSideFuncs:
        - "newNonSslHandlerName()"
        - "replace(io.netty.channel.ChannelHandler,java.lang.String,io.netty.channel.ChannelHandler)"
      - BranchSide: "io.netty.handler.ssl.OptionalSslHandler:73"
        BranchSideFuncs:
        - "pipeline()"
        - "remove(io.netty.channel.ChannelHandler)"
    Callsites:
    - Src: "io.netty.handler.ssl.OptionalSslHandler:70,1"
      Dst: "[io.netty.handler.ssl.OptionalSslHandler].newNonSslHandler(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.OptionalSslHandler:72,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.ssl.OptionalSslHandler:72,1"
      Dst: "[io.netty.handler.ssl.OptionalSslHandler].newNonSslHandlerName()"
    - Src: "io.netty.handler.ssl.OptionalSslHandler:72,1"
      Dst: "[io.netty.channel.ChannelPipeline].replace(io.netty.channel.ChannelHandler,java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.ssl.OptionalSslHandler:74,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OptionalSslHandler].newNonSslHandler(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.OptionalSslHandler"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OptionalSslHandler].newNonSslHandlerName()"
    functionSourceFile: "io.netty.handler.ssl.OptionalSslHandler"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].onlyFromQos(io.netty.handler.codec.mqtt.MqttQoS)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscriptionOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttSubscriptionOption"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttQoS"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].<init>(io.netty.handler.codec.mqtt.MqttQoS,boolean,boolean,io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:58,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].<init>(io.netty.handler.codec.mqtt.MqttQoS,boolean,boolean,io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].<init>(io.netty.handler.codec.mqtt.MqttQoS,boolean,boolean,io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscriptionOption"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttQoS"
    - "boolean"
    - "boolean"
    - "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:64,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].qos()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscriptionOption"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttQoS"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].isNoLocal()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscriptionOption"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].isRetainAsPublished()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscriptionOption"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].retainHandling()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscriptionOption"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscriptionOption"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    functionUses: 9
    ICount: 29
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:91"
        BranchSideFuncs:
        - "getClass()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:93"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:92"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:96"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:95"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:98"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:101"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:100"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:104"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:103"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:107"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:107"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:92,1"
      Dst: "[java.lang.Object].getClass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].hashCode()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscriptionOption"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].hashCode()"
    functionUses: 5
    ICount: 22
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:114"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:113"
        BranchSideFuncs:
        - "hashCode()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:112,1"
      Dst: "[java.lang.Enum].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].toString()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscriptionOption"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(boolean)"
    functionUses: 19
    ICount: 18
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:121,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:121,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:121,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:121,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:121,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption:121,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.InetSocketAddressResolver].<init>(io.netty.util.concurrent.EventExecutor,io.netty.resolver.NameResolver)"
    functionSourceFile: "io.netty.resolver.InetSocketAddressResolver"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    - "io.netty.resolver.NameResolver"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.AbstractAddressResolver].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Class)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.InetSocketAddressResolver:41,1"
      Dst: "[io.netty.resolver.AbstractAddressResolver].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.InetSocketAddressResolver].doIsResolved(java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.resolver.InetSocketAddressResolver"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].isUnresolved()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.resolver.InetSocketAddressResolver:47"
      Branch Sides:
      - BranchSide: "io.netty.resolver.InetSocketAddressResolver:46"
        BranchSideFuncs:
        - "isUnresolved()"
    Callsites:
    - Src: "io.netty.resolver.InetSocketAddressResolver:47,1"
      Dst: "[java.net.InetSocketAddress].isUnresolved()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.InetSocketAddressResolver].doResolve(java.net.InetSocketAddress,io.netty.util.concurrent.Promise<InetSocketAddress>)"
    functionSourceFile: "io.netty.resolver.InetSocketAddressResolver"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 67
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.InetSocketAddress"
    - "io.netty.util.concurrent.Promise<InetSocketAddress>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.InetSocketAddressResolver$1].<init>(io.netty.resolver.InetSocketAddressResolver,io.netty.util.concurrent.Promise,java.net.InetSocketAddress)"
    - "[java.net.InetSocketAddress].getHostName()"
    - "[io.netty.resolver.SimpleNameResolver].resolve(java.lang.String)"
    - "[io.netty.resolver.dns.InflightNameResolver].resolve(java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.CompleteFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.resolver.NameResolver].resolve(java.lang.String)"
    - "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 10
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.InetSocketAddressResolver:55,1"
      Dst: "[java.net.InetSocketAddress].getHostName()"
    - Src: "io.netty.resolver.InetSocketAddressResolver:55,1"
      Dst: "[io.netty.resolver.NameResolver].resolve(java.lang.String)"
    - Src: "io.netty.resolver.InetSocketAddressResolver:55,1"
      Dst: "[io.netty.resolver.InetSocketAddressResolver$1].<init>(io.netty.resolver.InetSocketAddressResolver,io.netty.util.concurrent.Promise,java.net.InetSocketAddress)"
    - Src: "io.netty.resolver.InetSocketAddressResolver:56,1"
      Dst: "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.InetSocketAddressResolver$1].<init>(io.netty.resolver.InetSocketAddressResolver,io.netty.util.concurrent.Promise,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.resolver.InetSocketAddressResolver$1"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.resolver.InetSocketAddressResolver"
    - "io.netty.util.concurrent.Promise"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.InetSocketAddressResolver$1:56,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.InetSocketAddressResolver].doResolveAll(java.net.InetSocketAddress,io.netty.util.concurrent.Promise<List<InetSocketAddress>>)"
    functionSourceFile: "io.netty.resolver.InetSocketAddressResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.InetSocketAddress"
    - "io.netty.util.concurrent.Promise<List<InetSocketAddress>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].getHostName()"
    - "[io.netty.resolver.NameResolver].resolveAll(java.lang.String)"
    - "[io.netty.resolver.InetSocketAddressResolver$2].<init>(io.netty.resolver.InetSocketAddressResolver,java.net.InetSocketAddress,io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.InetSocketAddressResolver:73,1"
      Dst: "[java.net.InetSocketAddress].getHostName()"
    - Src: "io.netty.resolver.InetSocketAddressResolver:73,1"
      Dst: "[io.netty.resolver.NameResolver].resolveAll(java.lang.String)"
    - Src: "io.netty.resolver.InetSocketAddressResolver:73,1"
      Dst: "[io.netty.resolver.InetSocketAddressResolver$2].<init>(io.netty.resolver.InetSocketAddressResolver,java.net.InetSocketAddress,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.resolver.InetSocketAddressResolver:74,1"
      Dst: "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.InetSocketAddressResolver$2].<init>(io.netty.resolver.InetSocketAddressResolver,java.net.InetSocketAddress,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.resolver.InetSocketAddressResolver$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.resolver.InetSocketAddressResolver"
    - "java.net.InetSocketAddress"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.InetSocketAddressResolver$2:74,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.InetSocketAddressResolver].close()"
    functionSourceFile: "io.netty.resolver.InetSocketAddressResolver"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.InflightNameResolver].close()"
    - "[io.netty.resolver.RoundRobinInetAddressResolver].close()"
    - "[io.netty.resolver.dns.DnsNameResolver].close()"
    - "[io.netty.resolver.SimpleNameResolver].close()"
    - "[io.netty.resolver.NameResolver].close()"
    functionUses: 3
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.InetSocketAddressResolver:94,1"
      Dst: "[io.netty.resolver.NameResolver].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.InetSocketAddressResolver].doResolveAll(java.net.SocketAddress,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.resolver.InetSocketAddressResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.InetSocketAddressResolver].doResolveAll(java.net.InetSocketAddress,io.netty.util.concurrent.Promise)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.InetSocketAddressResolver:31,1"
      Dst: "[io.netty.resolver.InetSocketAddressResolver].doResolveAll(java.net.InetSocketAddress,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.InetSocketAddressResolver].doResolve(java.net.SocketAddress,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.resolver.InetSocketAddressResolver"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.InetSocketAddressResolver].doResolve(java.net.InetSocketAddress,io.netty.util.concurrent.Promise)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.InetSocketAddressResolver:31,1"
      Dst: "[io.netty.resolver.InetSocketAddressResolver].doResolve(java.net.InetSocketAddress,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.InetSocketAddressResolver].doIsResolved(java.net.SocketAddress)"
    functionSourceFile: "io.netty.resolver.InetSocketAddressResolver"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.InetSocketAddressResolver].doIsResolved(java.net.InetSocketAddress)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.InetSocketAddressResolver:31,1"
      Dst: "[io.netty.resolver.InetSocketAddressResolver].doIsResolved(java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils$5].<init>()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils$5"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils$5:84,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils$5].apply(javax.net.ssl.SSLEngine,java.util.List)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils$5"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils$5].apply(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils$5"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnSslUtils$5].apply(javax.net.ssl.SSLEngine,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils$5:84,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslUtils$5].apply(javax.net.ssl.SSLEngine,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelFutureListener$3].<init>()"
    functionSourceFile: "io.netty.channel.ChannelFutureListener$3"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelFutureListener$3:65,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelFutureListener$3].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.ChannelFutureListener$3"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.FailedChannelFuture:io.netty.channel.SucceededChannelFuture:io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel:io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.channel.ChannelFuture].channel()"
    - "[io.netty.channel.Channel].pipeline()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 1
    ICount: 9
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelFutureListener$3:68"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelFutureListener$3:71"
        BranchSideFuncs:
        - "pipeline()"
        - "channel()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "cause()"
      - BranchSide: "io.netty.channel.ChannelFutureListener$3:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelFutureListener$3:68,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.channel.ChannelFutureListener$3:69,1"
      Dst: "[io.netty.channel.ChannelFuture].channel()"
    - Src: "io.netty.channel.ChannelFutureListener$3:69,1"
      Dst: "[io.netty.channel.Channel].pipeline()"
    - Src: "io.netty.channel.ChannelFutureListener$3:69,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.channel.ChannelFutureListener$3:69,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelFutureListener$3].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.ChannelFutureListener$3"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelFutureListener$3].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelFutureListener$3:65,1"
      Dst: "[io.netty.channel.ChannelFutureListener$3].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZstdConstants].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.ZstdConstants"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZstdConstants:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator$1].<init>()"
    functionSourceFile: "io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator$1"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator$1:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator$1].wrapSslEngine(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    functionSourceFile: "io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator$1"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "javax.net.ssl.SSLEngine"
    argCount: 3
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpContentCompressor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory:409,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory].createEncoder()"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory"
    linkageType: ""
    functionLinenumber: 413
    functionLinenumberEnd: 416
    functionDepth: 7
    returnType: "io.netty.handler.codec.MessageToByteEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibEncoder(io.netty.handler.codec.compression.ZlibWrapper,int,int,int)"
    - "[io.netty.handler.codec.http.HttpContentCompressor].access$500(io.netty.handler.codec.http.HttpContentCompressor)"
    - "[io.netty.handler.codec.compression.DeflateOptions].compressionLevel()"
    - "[io.netty.handler.codec.compression.DeflateOptions].memLevel()"
    - "[io.netty.handler.codec.compression.DeflateOptions].windowBits()"
    functionUses: 1
    ICount: 13
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory:414,1"
      Dst: "[io.netty.handler.codec.http.HttpContentCompressor].access$500(io.netty.handler.codec.http.HttpContentCompressor)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory:414,1"
      Dst: "[io.netty.handler.codec.compression.DeflateOptions].compressionLevel()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory:415,1"
      Dst: "[io.netty.handler.codec.compression.DeflateOptions].windowBits()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory:415,1"
      Dst: "[io.netty.handler.codec.compression.DeflateOptions].memLevel()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory:413,1"
      Dst: "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibEncoder(io.netty.handler.codec.compression.ZlibWrapper,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor].access$500(io.netty.handler.codec.http.HttpContentCompressor)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.DeflateOptions"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpContentCompressor"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor,io.netty.handler.codec.http.HttpContentCompressor$1)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpContentCompressor"
    - "io.netty.handler.codec.http.HttpContentCompressor$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory:409,1"
      Dst: "[io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.ApplicationProtocolConfig)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ApplicationProtocolConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator:30,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator:31,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator].protocols()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ApplicationProtocolConfig].supportedProtocols()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator:36,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolConfig].supportedProtocols()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ApplicationProtocolConfig].supportedProtocols()"
    functionSourceFile: "io.netty.handler.ssl.ApplicationProtocolConfig"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator].protocol()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 1
    returnType: "io.netty.handler.ssl.ApplicationProtocolConfig$Protocol"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ApplicationProtocolConfig].protocol()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator:41,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolConfig].protocol()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ApplicationProtocolConfig].protocol()"
    functionSourceFile: "io.netty.handler.ssl.ApplicationProtocolConfig"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionDepth: 0
    returnType: "io.netty.handler.ssl.ApplicationProtocolConfig$Protocol"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator].selectorFailureBehavior()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ApplicationProtocolConfig].selectorFailureBehavior()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator:46,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolConfig].selectorFailureBehavior()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ApplicationProtocolConfig].selectorFailureBehavior()"
    functionSourceFile: "io.netty.handler.ssl.ApplicationProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator].selectedListenerFailureBehavior()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 1
    returnType: "io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ApplicationProtocolConfig].selectedListenerFailureBehavior()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator:51,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolConfig].selectedListenerFailureBehavior()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ApplicationProtocolConfig].selectedListenerFailureBehavior()"
    functionSourceFile: "io.netty.handler.ssl.ApplicationProtocolConfig"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionDepth: 0
    returnType: "io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ApplicationProtocolNames].<init>()"
    functionSourceFile: "io.netty.handler.ssl.ApplicationProtocolNames"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ApplicationProtocolNames:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].<init>(io.netty.handler.codec.spdy.SpdyVersion)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].<init>(io.netty.handler.codec.spdy.SpdyVersion,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:61,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameCodec].<init>(io.netty.handler.codec.spdy.SpdyVersion,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].<init>(io.netty.handler.codec.spdy.SpdyVersion,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,int,int,int,int,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:73,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameCodec].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,int,int,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,int,int,int,int,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:83,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameCodec].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,int,int,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,int,int,int,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockDecoder].newInstance(io.netty.handler.codec.spdy.SpdyVersion,int)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockEncoder].newInstance(io.netty.handler.codec.spdy.SpdyVersion,int,int,int)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,io.netty.handler.codec.spdy.SpdyHeaderBlockDecoder,io.netty.handler.codec.spdy.SpdyHeaderBlockEncoder,boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:94,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockDecoder].newInstance(io.netty.handler.codec.spdy.SpdyVersion,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:95,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockEncoder].newInstance(io.netty.handler.codec.spdy.SpdyVersion,int,int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:93,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameCodec].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,io.netty.handler.codec.spdy.SpdyHeaderBlockDecoder,io.netty.handler.codec.spdy.SpdyHeaderBlockEncoder,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,io.netty.handler.codec.spdy.SpdyHeaderBlockDecoder,io.netty.handler.codec.spdy.SpdyHeaderBlockEncoder,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    - "int"
    - "io.netty.handler.codec.spdy.SpdyHeaderBlockDecoder"
    - "io.netty.handler.codec.spdy.SpdyHeaderBlockEncoder"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate,int)"
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].<init>(io.netty.handler.codec.spdy.SpdyVersion)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:100,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:101,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:102,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].<init>(io.netty.handler.codec.spdy.SpdyVersion)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 120
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerAdapter].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec$1].<init>(io.netty.handler.codec.spdy.SpdyFrameCodec)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannel:io.netty.handler.codec.http2.AbstractHttp2StreamChannel].closeFuture()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].closeFuture()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 5
    ICount: 10
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:110,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:112,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:112,1"
      Dst: "[io.netty.channel.Channel].closeFuture()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:112,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameCodec$1].<init>(io.netty.handler.codec.spdy.SpdyFrameCodec)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:112,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec$1].<init>(io.netty.handler.codec.spdy.SpdyFrameCodec)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec$1"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyFrameCodec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec$1:112,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 125
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoder].decode(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:123,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoder].decode(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameDecoder].decode(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameDecoder"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 378
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.handler.codec.spdy.SpdyCodecUtil].getUnsignedShort(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.spdy.SpdyCodecUtil].getUnsignedInt(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.spdy.SpdyCodecUtil].getUnsignedMedium(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].readFrameError(java.lang.String)"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoder].isValidFrameHeader(int,int,byte,int)"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoder].getNextState(int,int)"
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoder].hasFlag(byte,byte)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].readDataFrame(int,boolean,io.netty.buffer.ByteBuf)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.ReadOnlyByteBuf].alloc()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].alloc()"
    - "[io.netty.buffer.DuplicatedByteBuf].alloc()"
    - "[io.netty.buffer.SwappedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].alloc()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].alloc()"
    - "[io.netty.buffer.WrappedByteBuf].alloc()"
    - "[io.netty.buffer.SlicedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].alloc()"
    - "[io.netty.buffer.PooledByteBuf].alloc()"
    - "[io.netty.buffer.FixedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.EmptyByteBuf].alloc()"
    - "[io.netty.buffer.CompositeByteBuf].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].readSynStreamFrame(int,int,byte,boolean,boolean)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].readSynReplyFrame(int,boolean)"
    - "[io.netty.handler.codec.spdy.SpdyCodecUtil].getSignedInt(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].readRstStreamFrame(int,int)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].readSettingsFrame(boolean)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].readSettingsEnd()"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].readSetting(int,int,boolean,boolean)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].readPingFrame(int)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].readGoAwayFrame(int,int)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].readHeadersFrame(int,boolean)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].readWindowUpdateFrame(int,int)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].readHeaderBlockEnd()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].readHeaderBlock(io.netty.buffer.ByteBuf)"
    - "[java.lang.Error].<init>(java.lang.String)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readFrameError(java.lang.String)"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readDataFrame(int,boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readSynStreamFrame(int,int,byte,boolean,boolean)"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readSynReplyFrame(int,boolean)"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readRstStreamFrame(int,int)"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readSettingsFrame(boolean)"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readSettingsEnd()"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readSetting(int,int,boolean,boolean)"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readPingFrame(int)"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readGoAwayFrame(int,int)"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readHeadersFrame(int,boolean)"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readWindowUpdateFrame(int,int)"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readHeaderBlockEnd()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readHeaderBlock(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 349
    EdgeCount: 481
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:107"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:111"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:116"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:120"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:126"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:139"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:138"
        BranchSideFuncs:
        - "isValidFrameHeader(int,int,byte,int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:139"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:143"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:142"
        BranchSideFuncs:
        - "getNextState(int,int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:155"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:154"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:158"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:162"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:161"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:166"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:170"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:169"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:170"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:169"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:170"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:169"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:176"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:180"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:179"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:189"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:193"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:192"
        BranchSideFuncs:
        - "readSynStreamFrame(int,int,byte,boolean,boolean)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:203"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:202"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:209"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:213"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:212"
        BranchSideFuncs:
        - "readSynReplyFrame(int,boolean)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:219"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:223"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:222"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:227"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:228"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:227"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:227"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:231"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:230"
        BranchSideFuncs:
        - "readRstStreamFrame(int,int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:237"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:241"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:240"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:248"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:249"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:248"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:248"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:252"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:251"
        BranchSideFuncs:
        - "readSettingsFrame(boolean)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:258"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:264"
        BranchSideFuncs:
        - "readSettingsEnd()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:263"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:264"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:268"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:267"
        BranchSideFuncs:
        - "getByte(int)"
        - "readSetting(int,int,boolean,boolean)"
        - "getUnsignedMedium(io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:281"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:285"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:284"
        BranchSideFuncs:
        - "readPingFrame(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:293"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:297"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:296"
        BranchSideFuncs:
        - "getSignedInt(io.netty.buffer.ByteBuf,int)"
        - "readGoAwayFrame(int,int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:306"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:310"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:309"
        BranchSideFuncs:
        - "hasFlag(byte,byte)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:316"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:320"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:319"
        BranchSideFuncs:
        - "readHeadersFrame(int,boolean)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:326"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:330"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:329"
        BranchSideFuncs:
        - "readerIndex()"
        - "getUnsignedInt(io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:334"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:338"
        BranchSideFuncs:
        - "readFrameError(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:337"
        BranchSideFuncs:
        - "readWindowUpdateFrame(int,int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:344"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:350"
        BranchSideFuncs:
        - "readHeaderBlockEnd()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:349"
        BranchSideFuncs:
        - "isReadable()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:350"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:354"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:353"
        BranchSideFuncs:
        - "readHeaderBlock(io.netty.buffer.ByteBuf)"
        - "alloc()"
        - "buffer(int)"
        - "writeBytes(io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:366"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:370"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:369"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:105,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:107,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:111,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:114,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:116,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:122,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyCodecUtil].getUnsignedShort(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:129,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyCodecUtil].getUnsignedInt(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:133,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyCodecUtil].getUnsignedMedium(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:138,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readFrameError(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:139,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoder].isValidFrameHeader(int,int,byte,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:143,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoder].getNextState(int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:150,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoder].hasFlag(byte,byte)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:150,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:150,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readDataFrame(int,boolean,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:155,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:162,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:162,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:163,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:194,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readSynStreamFrame(int,int,byte,boolean,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:214,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readSynReplyFrame(int,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:224,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyCodecUtil].getSignedInt(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:232,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readRstStreamFrame(int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:253,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readSettingsFrame(boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:260,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readSettingsEnd()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:277,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readSetting(int,int,boolean,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:289,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readPingFrame(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:302,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readGoAwayFrame(int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:321,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readHeadersFrame(int,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:339,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readWindowUpdateFrame(int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:346,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readHeaderBlockEnd()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:350,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:359,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate].readHeaderBlock(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:377,1"
      Dst: "[java.lang.Error].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 79
    CyclomaticComplexity: 32
  - functionName: "[io.netty.handler.codec.spdy.SpdyCodecUtil].getUnsignedShort(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyCodecUtil"
    linkageType: ""
    functionLinenumber: 246
    functionLinenumberEnd: 249
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 2
    ICount: 14
    EdgeCount: 42
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyCodecUtil:247,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyCodecUtil].getUnsignedInt(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyCodecUtil"
    linkageType: ""
    functionLinenumber: 263
    functionLinenumberEnd: 268
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 10
    ICount: 27
    EdgeCount: 84
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyCodecUtil:264,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyCodecUtil].getUnsignedMedium(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyCodecUtil"
    linkageType: ""
    functionLinenumber: 254
    functionLinenumberEnd: 258
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 2
    ICount: 21
    EdgeCount: 63
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyCodecUtil:255,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameDecoder].isValidFrameHeader(int,int,byte,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameDecoder"
    linkageType: ""
    functionLinenumber: 424
    functionLinenumberEnd: 455
    functionDepth: 0
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "byte"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:427"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:426"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:430"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:429"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:433"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:432"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:436"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:435"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:436"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:435"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:439"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:438"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:442"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:441"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:445"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:444"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:448"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:447"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:451"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:450"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 39
    CyclomaticComplexity: 11
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameDecoder].getNextState(int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameDecoder"
    linkageType: ""
    functionLinenumber: 386
    functionLinenumberEnd: 420
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdyFrameDecoder$State"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:416"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:419"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:418"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameDecoder].hasFlag(byte,byte)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameDecoder"
    linkageType: ""
    functionLinenumber: 382
    functionLinenumberEnd: 384
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "byte"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameDecoder:383"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameDecoder:382"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.Unpooled].buffer(int)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:119,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyCodecUtil].getSignedInt(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyCodecUtil"
    linkageType: ""
    functionLinenumber: 273
    functionLinenumberEnd: 278
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 5
    ICount: 28
    EdgeCount: 84
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyCodecUtil:274,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 136
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.embedded.EmbeddedChannel].config()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].config()"
    - "[io.netty.bootstrap.FailedChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.local.LocalServerChannel].config()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].config()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].config()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].isAutoRead()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].read()"
    - "[io.netty.channel.AbstractChannelHandlerContext].read()"
    - "[io.netty.handler.codec.ByteToMessageDecoder].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelConfig].isAutoRead()"
    - "[io.netty.channel.ChannelHandlerContext].read()"
    functionUses: 3
    ICount: 12
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameCodec:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameCodec:133"
        BranchSideFuncs:
        - "channel()"
        - "config()"
        - "isAutoRead()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameCodec:132"
        BranchSideFuncs:
        - "channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameCodec:129"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameCodec:133"
        BranchSideFuncs:
        - "read()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameCodec:132"
        BranchSideFuncs:
        - "channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:129,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:129,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:129,1"
      Dst: "[io.netty.channel.ChannelConfig].isAutoRead()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:130,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].read()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:134,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:139,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:145,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:150,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:155,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].deregister(io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:160,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].deregister(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].read(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 167
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].read()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].read()"
    - "[io.netty.channel.ChannelHandlerContext].read()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:165,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].read()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].flush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:170,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 291
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeDataFrame(io.netty.buffer.ByteBufAllocator,int,boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].streamId()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].isLast()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].content()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].release()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder].encode(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder].encode(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].encode(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeSynStreamFrame(io.netty.buffer.ByteBufAllocator,int,int,byte,boolean,boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].associatedStreamId()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].priority()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].isUnidirectional()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeSynReplyFrame(io.netty.buffer.ByteBufAllocator,int,boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeRstStreamFrame(io.netty.buffer.ByteBufAllocator,int,int)"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].code()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].status()"
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeSettingsFrame(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdySettingsFrame)"
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodePingFrame(io.netty.buffer.ByteBufAllocator,int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].id()"
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeGoAwayFrame(io.netty.buffer.ByteBufAllocator,int,int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].lastGoodStreamId()"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].code()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].status()"
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeHeadersFrame(io.netty.buffer.ByteBufAllocator,int,boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeWindowUpdateFrame(io.netty.buffer.ByteBufAllocator,int,int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].streamId()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].deltaWindowSize()"
    - "[io.netty.handler.codec.UnsupportedMessageTypeException].<init>(java.lang.Object,java.lang.Class[])"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.spdy.SpdyStreamFrame].streamId()"
    - "[io.netty.handler.codec.spdy.SpdyStreamFrame].isLast()"
    - "[io.netty.handler.codec.spdy.SpdyDataFrame].content()"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockEncoder].encode(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - "[io.netty.handler.codec.spdy.SpdySynStreamFrame].associatedStreamId()"
    - "[io.netty.handler.codec.spdy.SpdySynStreamFrame].priority()"
    - "[io.netty.handler.codec.spdy.SpdySynStreamFrame].isUnidirectional()"
    - "[io.netty.handler.codec.spdy.SpdyRstStreamFrame].status()"
    - "[io.netty.handler.codec.spdy.SpdyPingFrame].id()"
    - "[io.netty.handler.codec.spdy.SpdyGoAwayFrame].lastGoodStreamId()"
    - "[io.netty.handler.codec.spdy.SpdyGoAwayFrame].status()"
    - "[io.netty.handler.codec.spdy.SpdyWindowUpdateFrame].streamId()"
    - "[io.netty.handler.codec.spdy.SpdyWindowUpdateFrame].deltaWindowSize()"
    functionUses: 2
    ICount: 127
    EdgeCount: 161
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameCodec:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameCodec:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameCodec:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameCodec:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameCodec:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameCodec:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameCodec:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameCodec:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameCodec:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameCodec:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameCodec:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameCodec:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameCodec:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameCodec:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameCodec:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameCodec:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameCodec:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameCodec:287"
        BranchSideFuncs:
        - "<init>(java.lang.Object,java.lang.Class[])"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:181,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:182,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamFrame].streamId()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:183,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamFrame].isLast()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:184,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyDataFrame].content()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:180,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeDataFrame(io.netty.buffer.ByteBufAllocator,int,boolean,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:186,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:187,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:192,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockEncoder].encode(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:197,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySynStreamFrame].associatedStreamId()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:198,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySynStreamFrame].priority()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:200,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySynStreamFrame].isUnidirectional()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:194,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeSynStreamFrame(io.netty.buffer.ByteBufAllocator,int,int,byte,boolean,boolean,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:213,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeSynReplyFrame(io.netty.buffer.ByteBufAllocator,int,boolean,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:230,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyRstStreamFrame].status()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:230,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamStatus].code()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:227,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeRstStreamFrame(io.netty.buffer.ByteBufAllocator,int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:237,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeSettingsFrame(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdySettingsFrame)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:248,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyPingFrame].id()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:246,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodePingFrame(io.netty.buffer.ByteBufAllocator,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:257,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyGoAwayFrame].lastGoodStreamId()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:258,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyGoAwayFrame].status()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:258,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionStatus].code()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:255,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeGoAwayFrame(io.netty.buffer.ByteBufAllocator,int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:267,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeHeadersFrame(io.netty.buffer.ByteBufAllocator,int,boolean,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:283,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyWindowUpdateFrame].streamId()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:284,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyWindowUpdateFrame].deltaWindowSize()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:281,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeWindowUpdateFrame(io.netty.buffer.ByteBufAllocator,int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:288,1"
      Dst: "[io.netty.handler.codec.UnsupportedMessageTypeException].<init>(java.lang.Object,java.lang.Class[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 26
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeDataFrame(io.netty.buffer.ByteBufAllocator,int,boolean,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameEncoder"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "int"
    - "boolean"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeMedium(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 1
    ICount: 21
    EdgeCount: 60
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameEncoder:49"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameEncoder:49"
        BranchSideFuncs:
        - "writeInt(int)"
        - "ioBuffer(int)"
        - "writeByte(int)"
        - "writeMedium(int)"
        - "readerIndex()"
        - "readableBytes()"
        - "writeBytes(io.netty.buffer.ByteBuf,int,int)"
        - "order(java.nio.ByteOrder)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameEncoder:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:50,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:51,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:51,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:52,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:53,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:54,1"
      Dst: "[io.netty.buffer.ByteBuf].writeMedium(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:55,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:55,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeSynStreamFrame(io.netty.buffer.ByteBufAllocator,int,int,byte,boolean,boolean,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameEncoder"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 74
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 7
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "int"
    - "int"
    - "byte"
    - "boolean"
    - "boolean"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 1
    ICount: 35
    EdgeCount: 63
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameEncoder:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameEncoder:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameEncoder:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameEncoder:66"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameEncoder:65"
        BranchSideFuncs:
        - "writeInt(int)"
        - "writeShort(int)"
        - "ioBuffer(int)"
        - "writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
        - "readerIndex()"
        - "writeBytes(io.netty.buffer.ByteBuf,int,int)"
        - "order(java.nio.ByteOrder)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:61,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:67,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:67,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:68,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:69,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:71,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:72,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:72,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameEncoder"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "byte"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeMedium(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeMedium(int)"
    functionUses: 8
    ICount: 14
    EdgeCount: 38
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:42,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:44,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:45,1"
      Dst: "[io.netty.buffer.ByteBuf].writeMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeSynReplyFrame(io.netty.buffer.ByteBufAllocator,int,boolean,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameEncoder"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 85
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "int"
    - "boolean"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameEncoder:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameEncoder:77"
        BranchSideFuncs:
        - "writeInt(int)"
        - "ioBuffer(int)"
        - "writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
        - "readerIndex()"
        - "writeBytes(io.netty.buffer.ByteBuf,int,int)"
        - "order(java.nio.ByteOrder)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameEncoder:76"
        BranchSideFuncs:
        - "readableBytes()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:77,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:80,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:80,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:81,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:82,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:83,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:83,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyStreamStatus].code()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyStreamStatus"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeRstStreamFrame(io.netty.buffer.ByteBufAllocator,int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameEncoder"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 95
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 35
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:90,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:90,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:91,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:92,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeSettingsFrame(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdySettingsFrame)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameEncoder"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 120
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.spdy.SpdySettingsFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].ids()"
    - "[io.netty.channel.group.DefaultChannelGroup].size()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].size()"
    - "[io.netty.util.internal.ConcurrentSet].size()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].size()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].size()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].size()"
    - "[java.util.HashSet].size()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].clearPreviouslyPersistedSettings()"
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].isPersistValue(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].isPersisted(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeMedium(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].getValue(int)"
    - "[io.netty.handler.codec.spdy.SpdySettingsFrame].ids()"
    - "[java.util.Set].size()"
    - "[io.netty.handler.codec.spdy.SpdySettingsFrame].clearPreviouslyPersistedSettings()"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.handler.codec.spdy.SpdySettingsFrame].isPersistValue(int)"
    - "[io.netty.handler.codec.spdy.SpdySettingsFrame].isPersisted(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeMedium(int)"
    - "[io.netty.handler.codec.spdy.SpdySettingsFrame].getValue(int)"
    functionUses: 1
    ICount: 41
    EdgeCount: 184
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameEncoder:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameEncoder:97"
        BranchSideFuncs:
        - "ids()"
        - "clearPreviouslyPersistedSettings()"
        - "size()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameEncoder:107"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameEncoder:119"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "isPersistValue(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameEncoder:118"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameEncoder:109"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameEncoder:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameEncoder:111"
        BranchSideFuncs:
        - "isPersisted(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameEncoder:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameEncoder:115"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameEncoder:114"
        BranchSideFuncs:
        - "writeInt(int)"
        - "writeMedium(int)"
        - "intValue()"
        - "writeByte(int)"
        - "getValue(int)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:98,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySettingsFrame].ids()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:99,1"
      Dst: "[java.util.Set].size()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:101,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySettingsFrame].clearPreviouslyPersistedSettings()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:104,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:104,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:105,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:106,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:107,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:107,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:107,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:109,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:109,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySettingsFrame].isPersistValue(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:112,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySettingsFrame].isPersisted(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:115,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:116,1"
      Dst: "[io.netty.buffer.ByteBuf].writeMedium(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:117,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySettingsFrame].getValue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodePingFrame(io.netty.buffer.ByteBufAllocator,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameEncoder"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 129
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 25
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:125,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:125,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:126,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:127,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionStatus].code()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionStatus"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeGoAwayFrame(io.netty.buffer.ByteBufAllocator,int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameEncoder"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 139
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 35
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:134,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:134,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:135,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:136,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeHeadersFrame(io.netty.buffer.ByteBufAllocator,int,boolean,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameEncoder"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 150
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "int"
    - "boolean"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 46
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameEncoder:143"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameEncoder:142"
        BranchSideFuncs:
        - "writeInt(int)"
        - "ioBuffer(int)"
        - "writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
        - "readerIndex()"
        - "writeBytes(io.netty.buffer.ByteBuf,int,int)"
        - "order(java.nio.ByteOrder)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameEncoder:141"
        BranchSideFuncs:
        - "readableBytes()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:142,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:145,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:145,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:146,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:147,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:148,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:148,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].encodeWindowUpdateFrame(io.netty.buffer.ByteBufAllocator,int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameEncoder"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 160
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.spdy.SpdyFrameEncoder].writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 35
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:155,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:155,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:156,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].writeControlFrameHeader(io.netty.buffer.ByteBuf,int,byte,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:157,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.UnsupportedMessageTypeException].<init>(java.lang.Object,java.lang.Class[])"
    functionSourceFile: "io.netty.handler.codec.UnsupportedMessageTypeException"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.UnsupportedMessageTypeException].message(java.lang.String,java.lang.Class[])"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 4
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.UnsupportedMessageTypeException:27"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.UnsupportedMessageTypeException:28"
        BranchSideFuncs:
        - "getName()"
        - "getClass()"
      - BranchSide: "io.netty.handler.codec.UnsupportedMessageTypeException:27"
        BranchSideFuncs:
        - "getName()"
        - "getClass()"
    Callsites:
    - Src: "io.netty.handler.codec.UnsupportedMessageTypeException:28,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.codec.UnsupportedMessageTypeException:28,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.handler.codec.UnsupportedMessageTypeException:27,1"
      Dst: "[io.netty.handler.codec.UnsupportedMessageTypeException].message(java.lang.String,java.lang.Class[])"
    - Src: "io.netty.handler.codec.UnsupportedMessageTypeException:27,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.UnsupportedMessageTypeException].message(java.lang.String,java.lang.Class[])"
    functionSourceFile: "io.netty.handler.codec.UnsupportedMessageTypeException"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 25
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.UnsupportedMessageTypeException:49"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.UnsupportedMessageTypeException:61"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.UnsupportedMessageTypeException:60"
        BranchSideFuncs:
        - "toString()"
    - Branch String: "io.netty.handler.codec.UnsupportedMessageTypeException:49"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.UnsupportedMessageTypeException:61"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.UnsupportedMessageTypeException:60"
        BranchSideFuncs:
        - "toString()"
    - Branch String: "io.netty.handler.codec.UnsupportedMessageTypeException:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.UnsupportedMessageTypeException:58"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.UnsupportedMessageTypeException:57"
        BranchSideFuncs:
        - "append(char)"
    - Branch String: "io.netty.handler.codec.UnsupportedMessageTypeException:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.UnsupportedMessageTypeException:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.UnsupportedMessageTypeException:47,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.UnsupportedMessageTypeException:50,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.UnsupportedMessageTypeException:50,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.handler.codec.UnsupportedMessageTypeException:58,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.UnsupportedMessageTypeException:61,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].readDataFrame(int,boolean,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 293
    functionLinenumberEnd: 300
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "boolean"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].<init>(int,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].setLast(boolean)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdyDataFrame].setLast(boolean)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:296,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].<init>(int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:297,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyDataFrame].setLast(boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:298,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].<init>(int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyDataFrame"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 51
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].<init>(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].validate(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 5
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyDataFrame:47,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].<init>(int)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyDataFrame:49,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyDataFrame:48,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].validate(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].validate(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyDataFrame"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 1
    ICount: 7
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.DefaultSpdyDataFrame:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.DefaultSpdyDataFrame:57"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.spdy.DefaultSpdyDataFrame:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyDataFrame:53,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyDataFrame:54,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].readSynStreamFrame(int,int,byte,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 303
    functionLinenumberEnd: 310
    functionDepth: 7
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "byte"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].<init>(int,int,byte,boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setLast(boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setUnidirectional(boolean)"
    - "[io.netty.handler.codec.spdy.SpdySynStreamFrame].setLast(boolean)"
    - "[io.netty.handler.codec.spdy.SpdySynStreamFrame].setUnidirectional(boolean)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:304,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].<init>(int,int,byte,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:306,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySynStreamFrame].setLast(boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:307,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySynStreamFrame].setUnidirectional(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].<init>(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].<init>(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].<init>(boolean)"
    functionUses: 6
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame:48,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].<init>(int)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame:49,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyHeaders"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 47
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.DefaultSpdyHeaders:43"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.DefaultSpdyHeaders:43"
        BranchSideFuncs:
        - "<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator)"
      - BranchSide: "io.netty.handler.codec.spdy.DefaultSpdyHeaders:42"
        BranchSideFuncs:
        - "<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    - Branch String: "io.netty.handler.codec.spdy.DefaultSpdyHeaders:43"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.DefaultSpdyHeaders:43"
        BranchSideFuncs:
        - "<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator)"
      - BranchSide: "io.netty.handler.codec.spdy.DefaultSpdyHeaders:42"
        BranchSideFuncs:
        - "<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeaders:43,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.util.HashingStrategy"
    - "io.netty.handler.codec.ValueConverter"
    - "io.netty.handler.codec.DefaultHeaders$NameValidator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:109,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 126
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.util.HashingStrategy"
    - "io.netty.handler.codec.ValueConverter"
    - "io.netty.handler.codec.DefaultHeaders$NameValidator"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:123,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 149
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.util.HashingStrategy"
    - "io.netty.handler.codec.ValueConverter"
    - "io.netty.handler.codec.DefaultHeaders$NameValidator"
    - "int"
    - "io.netty.handler.codec.DefaultHeaders$ValueValidator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.MathUtil].findNextPositivePowerOfTwo(int)"
    - "[java.lang.Math].max(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].<init>()"
    functionUses: 4
    ICount: 33
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:138,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.DefaultHeaders:139,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.DefaultHeaders:145,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.DefaultHeaders:145,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "io.netty.handler.codec.DefaultHeaders:145,1"
      Dst: "[io.netty.util.internal.MathUtil].findNextPositivePowerOfTwo(int)"
    - Src: "io.netty.handler.codec.DefaultHeaders:147,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.MathUtil].findNextPositivePowerOfTwo(int)"
    functionSourceFile: "io.netty.util.internal.MathUtil"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.Integer].numberOfLeadingZeros(int)"
    functionUses: 4
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.MathUtil:35"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MathUtil:36"
        BranchSideFuncs:
        - "numberOfLeadingZeros(int)"
      - BranchSide: "io.netty.util.internal.MathUtil:35"
        BranchSideFuncs:
        - "numberOfLeadingZeros(int)"
    - Branch String: "io.netty.util.internal.MathUtil:35"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MathUtil:35"
        BranchSideFuncs:
        - "numberOfLeadingZeros(int)"
      - BranchSide: "io.netty.util.internal.MathUtil:34"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.util.internal.MathUtil:35"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MathUtil:36"
        BranchSideFuncs:
        - "numberOfLeadingZeros(int)"
      - BranchSide: "io.netty.util.internal.MathUtil:35"
        BranchSideFuncs:
        - "numberOfLeadingZeros(int)"
    Callsites:
    - Src: "io.netty.util.internal.MathUtil:35,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.util.internal.MathUtil:36,1"
      Dst: "[java.lang.Integer].numberOfLeadingZeros(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].<init>()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    linkageType: ""
    functionLinenumber: 1375
    functionLinenumberEnd: 1381
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1376,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].readSynReplyFrame(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 312
    functionLinenumberEnd: 317
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].<init>(int,boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].setLast(boolean)"
    - "[io.netty.handler.codec.spdy.SpdySynReplyFrame].setLast(boolean)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:313,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].<init>(int,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:314,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySynReplyFrame].setLast(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].<init>(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].<init>(int,boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:41,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].<init>(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].readRstStreamFrame(int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 319
    functionLinenumberEnd: 325
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].<init>(int,int)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:322,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].<init>(int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:323,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].<init>(int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].<init>(int,io.netty.handler.codec.spdy.SpdyStreamStatus)"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].valueOf(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame:35,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamStatus].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame:35,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].<init>(int,io.netty.handler.codec.spdy.SpdyStreamStatus)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyStreamStatus].valueOf(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyStreamStatus"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 128
    functionDepth: 2
    returnType: "io.netty.handler.codec.spdy.SpdyStreamStatus"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].<init>(int,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 1
    ICount: 37
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyStreamStatus:97"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyStreamStatus:102"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyStreamStatus:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyStreamStatus:98,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyStreamStatus:127,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyStreamStatus:127,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyStreamStatus:127,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyStreamStatus:127,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.spdy.SpdyStreamStatus:127,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.spdy.SpdyStreamStatus:127,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamStatus].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyStreamStatus].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyStreamStatus"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 147
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 12
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyStreamStatus:139"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyStreamStatus:144"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyStreamStatus:143"
        BranchSideFuncs:
        - "checkNotNull(java.lang.Object,java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyStreamStatus:138,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyStreamStatus:140,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyStreamStatus:144,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].<init>(int,io.netty.handler.codec.spdy.SpdyStreamStatus)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.spdy.SpdyStreamStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].<init>(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].setStatus(io.netty.handler.codec.spdy.SpdyStreamStatus)"
    functionUses: 10
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame:45,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].<init>(int)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame:46,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].setStatus(io.netty.handler.codec.spdy.SpdyStreamStatus)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].setStatus(io.netty.handler.codec.spdy.SpdyStreamStatus)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdyRstStreamFrame"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyStreamStatus"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].readSettingsFrame(boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 327
    functionLinenumberEnd: 333
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].<init>()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].setClearPreviouslyPersistedSettings(boolean)"
    - "[io.netty.handler.codec.spdy.SpdySettingsFrame].setClearPreviouslyPersistedSettings(boolean)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:330,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:331,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySettingsFrame].setClearPreviouslyPersistedSettings(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].<init>()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySettingsFrame"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.TreeMap].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySettingsFrame:27,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySettingsFrame:30,1"
      Dst: "[java.util.TreeMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].readSetting(int,int,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 335
    functionLinenumberEnd: 338
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].setValue(int,int,boolean,boolean)"
    - "[io.netty.handler.codec.spdy.SpdySettingsFrame].setValue(int,int,boolean,boolean)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:336,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySettingsFrame].setValue(int,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].readSettingsEnd()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 340
    functionLinenumberEnd: 347
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:345,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].readPingFrame(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 349
    functionLinenumberEnd: 355
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].<init>(int)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:352,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].<init>(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:353,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyPingFrame"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].setId(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyPingFrame:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyPingFrame:33,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].setId(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].setId(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyPingFrame"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdyPingFrame"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].readGoAwayFrame(int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 357
    functionLinenumberEnd: 363
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].<init>(int,int)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:360,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].<init>(int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:361,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].<init>(int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].<init>(int,io.netty.handler.codec.spdy.SpdySessionStatus)"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].valueOf(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame:46,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionStatus].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame:46,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].<init>(int,io.netty.handler.codec.spdy.SpdySessionStatus)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionStatus].valueOf(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionStatus"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 59
    functionDepth: 2
    returnType: "io.netty.handler.codec.spdy.SpdySessionStatus"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].<init>(int,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionStatus:58,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionStatus:58,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionStatus:58,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionStatus:58,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionStatus:58,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionStatus:58,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionStatus].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionStatus].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionStatus"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 73
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 4
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionStatus:69,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionStatus:70,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].<init>(int,io.netty.handler.codec.spdy.SpdySessionStatus)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 59
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.spdy.SpdySessionStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].setLastGoodStreamId(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].setStatus(io.netty.handler.codec.spdy.SpdySessionStatus)"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame:55,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame:56,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].setLastGoodStreamId(int)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame:57,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].setStatus(io.netty.handler.codec.spdy.SpdySessionStatus)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].setLastGoodStreamId(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 70
    functionDepth: 1
    returnType: "io.netty.handler.codec.spdy.SpdyGoAwayFrame"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame:67,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].setStatus(io.netty.handler.codec.spdy.SpdySessionStatus)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdyGoAwayFrame"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.spdy.SpdySessionStatus"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].readHeadersFrame(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 365
    functionLinenumberEnd: 369
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].<init>(int,boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setLast(boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].setLast(boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setLast(boolean)"
    - "[io.netty.handler.codec.spdy.SpdyHeadersFrame].setLast(boolean)"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:366,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].<init>(int,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:367,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeadersFrame].setLast(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].readWindowUpdateFrame(int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 371
    functionLinenumberEnd: 377
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].<init>(int,int)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:374,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].<init>(int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:375,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].<init>(int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 41
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].setStreamId(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].setDeltaWindowSize(int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame:37,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame:38,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].setStreamId(int)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame:39,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].setDeltaWindowSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].setStreamId(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 52
    functionDepth: 1
    returnType: "io.netty.handler.codec.spdy.SpdyWindowUpdateFrame"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame:49,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].setDeltaWindowSize(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionDepth: 1
    returnType: "io.netty.handler.codec.spdy.SpdyWindowUpdateFrame"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame:61,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].readHeaderBlock(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 380
    functionLinenumberEnd: 388
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].decode(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].decode(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockDecoder].decode(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 1
    ICount: 18
    EdgeCount: 43
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:381,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:381,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockDecoder].decode(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:385,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:383,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].readHeaderBlockEnd()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 390
    functionLinenumberEnd: 405
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].endHeaderBlock(io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].endHeaderBlock(io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockDecoder].endHeaderBlock(io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyFrameCodec:399"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameCodec:404"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyFrameCodec:403"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:393,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockDecoder].endHeaderBlock(io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:397,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:402,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].readFrameError(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 407
    functionLinenumberEnd: 410
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 8
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec:408,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].access$000(io.netty.handler.codec.spdy.SpdyFrameCodec)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdyHeaderBlockDecoder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyFrameCodec"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec].access$100(io.netty.handler.codec.spdy.SpdyFrameCodec)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdyHeaderBlockEncoder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyFrameCodec"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$1].<init>(io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder)"
    functionSourceFile: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$1:102,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$1].onStreamRemoved(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$1"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 110
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].access$000(io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].cleanup(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.embedded.EmbeddedChannel)"
    - "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$1:106"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$1:109"
        BranchSideFuncs:
        - "cleanup(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.embedded.EmbeddedChannel)"
      - BranchSide: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$1:108"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$1:105,1"
      Dst: "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].access$000(io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder)"
    - Src: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$1:105,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - Src: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$1:107,1"
      Dst: "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].cleanup(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.embedded.EmbeddedChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].access$000(io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder)"
    functionSourceFile: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Connection$PropertyKey"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].cleanup(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.embedded.EmbeddedChannel)"
    functionSourceFile: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 387
    functionLinenumberEnd: 391
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.channel.embedded.EmbeddedChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].finishAndReleaseAll()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].removeProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http2.Http2Stream].removeProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionUses: 7
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder:388,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].finishAndReleaseAll()"
    - Src: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder:389,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].removeProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtilSubstitutions$NetUtilLocalhostAccessor].<init>()"
    functionSourceFile: "io.netty.util.NetUtilSubstitutions$NetUtilLocalhostAccessor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtilSubstitutions$NetUtilLocalhostAccessor:73,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtilSubstitutions$NetUtilLocalhostAccessor].get()"
    functionSourceFile: "io.netty.util.NetUtilSubstitutions$NetUtilLocalhostAccessor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.net.InetAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.NetUtilSubstitutions$NetUtilLocalhostLazyHolder].access$200()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtilSubstitutions$NetUtilLocalhostAccessor:76,1"
      Dst: "[io.netty.util.NetUtilSubstitutions$NetUtilLocalhostLazyHolder].access$200()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtilSubstitutions$NetUtilLocalhostLazyHolder].access$200()"
    functionSourceFile: "io.netty.util.NetUtilSubstitutions$NetUtilLocalhostLazyHolder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.net.InetAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtilSubstitutions$NetUtilLocalhostAccessor].set(java.net.InetAddress)"
    functionSourceFile: "io.netty.util.NetUtilSubstitutions$NetUtilLocalhostAccessor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PendingWriteQueue$PendingWrite].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.channel.PendingWriteQueue$PendingWrite"
    linkageType: ""
    functionLinenumber: 309
    functionLinenumberEnd: 313
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PendingWriteQueue$PendingWrite:310,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PendingWriteQueue$PendingWrite].newInstance(java.lang.Object,int,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.PendingWriteQueue$PendingWrite"
    linkageType: ""
    functionLinenumber: 314
    functionLinenumberEnd: 320
    functionDepth: 0
    returnType: "io.netty.channel.PendingWriteQueue$PendingWrite"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "int"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectPool$RecyclerObjectPool].get()"
    - "[io.netty.util.internal.ObjectPool].get()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PendingWriteQueue$PendingWrite:315,1"
      Dst: "[io.netty.util.internal.ObjectPool].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PendingWriteQueue$PendingWrite].recycle()"
    functionSourceFile: "io.netty.channel.PendingWriteQueue$PendingWrite"
    linkageType: ""
    functionLinenumber: 322
    functionLinenumberEnd: 329
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.Recycler$DefaultHandle].recycle(java.lang.Object)"
    - "[io.netty.util.Recycler$1].recycle(java.lang.Object)"
    - "[io.netty.util.internal.ObjectPool$Handle].recycle(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PendingWriteQueue$PendingWrite:327,1"
      Dst: "[io.netty.util.internal.ObjectPool$Handle].recycle(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PendingWriteQueue$PendingWrite].access$002(io.netty.channel.PendingWriteQueue$PendingWrite,io.netty.channel.PendingWriteQueue$PendingWrite)"
    functionSourceFile: "io.netty.channel.PendingWriteQueue$PendingWrite"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionDepth: 0
    returnType: "io.netty.channel.PendingWriteQueue$PendingWrite"
    argCount: 2
    argTypes:
    - "io.netty.channel.PendingWriteQueue$PendingWrite"
    - "io.netty.channel.PendingWriteQueue$PendingWrite"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PendingWriteQueue$PendingWrite].access$100(io.netty.channel.PendingWriteQueue$PendingWrite)"
    functionSourceFile: "io.netty.channel.PendingWriteQueue$PendingWrite"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.channel.PendingWriteQueue$PendingWrite"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PendingWriteQueue$PendingWrite].access$000(io.netty.channel.PendingWriteQueue$PendingWrite)"
    functionSourceFile: "io.netty.channel.PendingWriteQueue$PendingWrite"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionDepth: 0
    returnType: "io.netty.channel.PendingWriteQueue$PendingWrite"
    argCount: 1
    argTypes:
    - "io.netty.channel.PendingWriteQueue$PendingWrite"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PendingWriteQueue$PendingWrite].access$200(io.netty.channel.PendingWriteQueue$PendingWrite)"
    functionSourceFile: "io.netty.channel.PendingWriteQueue$PendingWrite"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.PendingWriteQueue$PendingWrite"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PendingWriteQueue$PendingWrite].access$300(io.netty.channel.PendingWriteQueue$PendingWrite)"
    functionSourceFile: "io.netty.channel.PendingWriteQueue$PendingWrite"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "io.netty.channel.PendingWriteQueue$PendingWrite"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PendingWriteQueue$PendingWrite].access$400(io.netty.channel.PendingWriteQueue$PendingWrite)"
    functionSourceFile: "io.netty.channel.PendingWriteQueue$PendingWrite"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.PendingWriteQueue$PendingWrite"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PendingWriteQueue$PendingWrite].recycle()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PendingWriteQueue$PendingWrite:296,1"
      Dst: "[io.netty.channel.PendingWriteQueue$PendingWrite].recycle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PendingWriteQueue$PendingWrite].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.channel.PendingWriteQueue$1)"
    functionSourceFile: "io.netty.channel.PendingWriteQueue$PendingWrite"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    - "io.netty.channel.PendingWriteQueue$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PendingWriteQueue$PendingWrite].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PendingWriteQueue$PendingWrite:296,1"
      Dst: "[io.netty.channel.PendingWriteQueue$PendingWrite].<init>(io.netty.util.internal.ObjectPool$Handle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].<init>(io.netty.handler.codec.socksx.v5.Socks5CommandStatus,io.netty.handler.codec.socksx.v5.Socks5AddressType)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.socksx.v5.Socks5CommandStatus"
    - "io.netty.handler.codec.socksx.v5.Socks5AddressType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].<init>(io.netty.handler.codec.socksx.v5.Socks5CommandStatus,io.netty.handler.codec.socksx.v5.Socks5AddressType,java.lang.String,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:36,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].<init>(io.netty.handler.codec.socksx.v5.Socks5CommandStatus,io.netty.handler.codec.socksx.v5.Socks5AddressType,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].<init>(io.netty.handler.codec.socksx.v5.Socks5CommandStatus,io.netty.handler.codec.socksx.v5.Socks5AddressType,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 70
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.socksx.v5.Socks5CommandStatus"
    - "io.netty.handler.codec.socksx.v5.Socks5AddressType"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.AbstractSocks5Message].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.net.IDN].toASCII(java.lang.String)"
    - "[java.lang.String].length()"
    - "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - "[java.lang.AbstractStringBuilder:java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 2
    ICount: 67
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:45"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:62"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:61"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:50"
        BranchSideFuncs:
        - "isValidIpV4Address(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:49"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:62"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:61"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:55"
        BranchSideFuncs:
        - "toASCII(java.lang.String)"
        - "length()"
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:54"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:52"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:62"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:61"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:62"
        BranchSideFuncs:
        - "isValidIpV6Address(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:61"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:56"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:62"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:61"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:63"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:62"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:65"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:40,1"
      Dst: "[io.netty.handler.codec.socksx.v5.AbstractSocks5Message].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:42,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:47,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:48,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:48,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:48,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:48,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:51,1"
      Dst: "[java.net.IDN].toASCII(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:52,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:56,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:63,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].status()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].bndAddrType()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.v5.Socks5AddressType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].bndAddr()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].bndPort()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].toString()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 114
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.AbstractSocksMessage].decoderResult()"
    - "[io.netty.handler.codec.DecoderResult].isSuccess()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].status()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].bndAddrType()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].bndAddr()"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].bndPort()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 27
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:97"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:93,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:94,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:94,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:96,1"
      Dst: "[io.netty.handler.codec.socksx.AbstractSocksMessage].decoderResult()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:97,1"
      Dst: "[io.netty.handler.codec.DecoderResult].isSuccess()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:99,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:104,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].status()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:106,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].bndAddrType()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:108,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].bndAddr()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:110,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].bndPort()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:110,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:111,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse:113,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.DecoderResult].isSuccess()"
    functionSourceFile: "io.netty.handler.codec.DecoderResult"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DecoderResult:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DecoderResult:43"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.HpackStaticTable$HeaderIndex].<init>(java.lang.CharSequence,java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackStaticTable$HeaderIndex"
    linkageType: ""
    functionLinenumber: 246
    functionLinenumberEnd: 252
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackStaticTable$HeaderIndex:247,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].<init>(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 103
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector].isEnabled()"
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.SucceededChannelFuture].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.channel.VoidChannelPromise].<init>(io.netty.channel.Channel,boolean)"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.DefaultChannelPipeline)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.DefaultChannelPipeline)"
    functionUses: 3
    ICount: 28
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:92,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.DefaultChannelPipeline:70,1"
      Dst: "[io.netty.util.ResourceLeakDetector].isEnabled()"
    - Src: "io.netty.channel.DefaultChannelPipeline:93,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:94,1"
      Dst: "[io.netty.channel.SucceededChannelFuture].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.channel.DefaultChannelPipeline:95,1"
      Dst: "[io.netty.channel.VoidChannelPromise].<init>(io.netty.channel.Channel,boolean)"
    - Src: "io.netty.channel.DefaultChannelPipeline:97,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline$TailContext].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.DefaultChannelPipeline)"
    - Src: "io.netty.channel.DefaultChannelPipeline:98,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline$HeadContext].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.DefaultChannelPipeline)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].estimatorHandle()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "io.netty.channel.MessageSizeEstimator$Handle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.FailedChannel:io.netty.channel.DefaultChannelConfig:io.netty.channel.DefaultMessageSizeEstimator:io.netty.channel.embedded.EmbeddedChannel:io.netty.channel.epoll.EpollDatagramChannel:io.netty.channel.epoll.EpollDomainDatagramChannel:io.netty.channel.epoll.EpollDomainSocketChannel:io.netty.channel.epoll.EpollServerDomainSocketChannel:io.netty.channel.epoll.EpollServerSocketChannel:io.netty.channel.epoll.EpollSocketChannel:io.netty.channel.kqueue.KQueueDatagramChannel:io.netty.channel.kqueue.KQueueDomainDatagramChannel:io.netty.channel.kqueue.KQueueDomainSocketChannel:io.netty.channel.kqueue.KQueueServerDomainSocketChannel:io.netty.channel.kqueue.KQueueServerSocketChannel:io.netty.channel.kqueue.KQueueSocketChannel:io.netty.channel.local.LocalChannel:io.netty.channel.local.LocalServerChannel:io.netty.channel.rxtx.RxtxChannel:io.netty.channel.sctp.nio.NioSctpChannel:io.netty.channel.sctp.nio.NioSctpServerChannel:io.netty.channel.sctp.oio.OioSctpChannel:io.netty.channel.sctp.oio.OioSctpServerChannel:io.netty.channel.socket.nio.NioDatagramChannel:io.netty.channel.socket.nio.NioServerSocketChannel:io.netty.channel.socket.nio.NioSocketChannel:io.netty.channel.socket.oio.OioDatagramChannel:io.netty.channel.socket.oio.OioServerSocketChannel:io.netty.channel.socket.oio.OioSocketChannel:io.netty.channel.udt.nio.NioUdtAcceptorChannel:io.netty.channel.udt.nio.NioUdtByteConnectorChannel:io.netty.channel.udt.nio.NioUdtMessageConnectorChannel:io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2StreamChannelConfig].getMessageSizeEstimator()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator].newHandle()"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.channel.ChannelConfig].getMessageSizeEstimator()"
    - "[io.netty.channel.MessageSizeEstimator].newHandle()"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:106"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:112"
        BranchSideFuncs:
        - "config()"
        - "getMessageSizeEstimator()"
        - "newHandle()"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:108"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:107,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.channel.DefaultChannelPipeline:107,1"
      Dst: "[io.netty.channel.ChannelConfig].getMessageSizeEstimator()"
    - Src: "io.netty.channel.DefaultChannelPipeline:107,1"
      Dst: "[io.netty.channel.MessageSizeEstimator].newHandle()"
    - Src: "io.netty.channel.DefaultChannelPipeline:108,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.DefaultChannelPipeline].touch(java.lang.Object,io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ReferenceCountUtil].touch(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:116"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:115"
        BranchSideFuncs:
        - "touch(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:116,1"
      Dst: "[io.netty.util.ReferenceCountUtil].touch(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelPipeline].newContext(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionDepth: 1
    returnType: "io.netty.channel.AbstractChannelHandlerContext"
    argCount: 3
    argTypes:
    - "io.netty.util.concurrent.EventExecutorGroup"
    - "java.lang.String"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelHandlerContext].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.util.concurrent.EventExecutor,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].childExecutor(io.netty.util.concurrent.EventExecutorGroup)"
    functionUses: 4
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:120,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].childExecutor(io.netty.util.concurrent.EventExecutorGroup)"
    - Src: "io.netty.channel.DefaultChannelPipeline:120,1"
      Dst: "[io.netty.channel.DefaultChannelHandlerContext].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.util.concurrent.EventExecutor,java.lang.String,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].childExecutor(io.netty.util.concurrent.EventExecutorGroup)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 144
    functionDepth: 0
    returnType: "io.netty.util.concurrent.EventExecutor"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutorGroup"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.epoll.EpollChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.nio.NioDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].next()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].next()"
    - "[io.netty.channel.MultithreadEventLoopGroup].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].next()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].next()"
    - "[io.netty.channel.SingleThreadEventLoop].next()"
    - "[io.netty.channel.AbstractEventLoop].next()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].next()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].next()"
    - "[java.util.IdentityHashMap].<init>(int)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Properties].put(java.lang.Object,java.lang.Object)"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[java.util.WeakHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    - "[java.util.AbstractMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.channel.ChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.util.concurrent.EventExecutorGroup].next()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 31
    EdgeCount: 103
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:124"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:127"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:126"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
        - "booleanValue()"
        - "config()"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:128"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:131"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:130"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:128"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:131"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:130"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:132"
      Branch Sides: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:139"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:143"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "next()"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:127,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.channel.DefaultChannelPipeline:127,1"
      Dst: "[io.netty.channel.ChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - Src: "io.netty.channel.DefaultChannelPipeline:128,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.DefaultChannelPipeline:129,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].next()"
    - Src: "io.netty.channel.DefaultChannelPipeline:134,1"
      Dst: "[java.util.IdentityHashMap].<init>(int)"
    - Src: "io.netty.channel.DefaultChannelPipeline:138,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.channel.DefaultChannelPipeline:141,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.DefaultChannelHandlerContext].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.util.concurrent.EventExecutor,java.lang.String,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.DefaultChannelPipeline"
    - "io.netty.util.concurrent.EventExecutor"
    - "java.lang.String"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.util.concurrent.EventExecutor,java.lang.String,java.lang.Class)"
    - "[java.lang.Object].getClass()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelHandlerContext:26,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.channel.DefaultChannelHandlerContext:26,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.util.concurrent.EventExecutor,java.lang.String,java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].channel()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionDepth: 0
    returnType: "io.netty.channel.Channel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addFirst(java.lang.String,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].addFirst(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:152,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].addFirst(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addFirst(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 3
    argTypes:
    - "io.netty.util.concurrent.EventExecutorGroup"
    - "java.lang.String"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].checkMultiplicity(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].filterName(java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].newContext(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].addFirst0(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.AbstractChannelHandlerContext].setAddPending()"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerAddedInEventLoop(io.netty.channel.AbstractChannelHandlerContext,io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerAdded0(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:169"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:175"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:174"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:176"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:180"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:159,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].checkMultiplicity(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:160,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].filterName(java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:162,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].newContext(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:164,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].addFirst0(io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:170,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].setAddPending()"
    - Src: "io.netty.channel.DefaultChannelPipeline:171,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    - Src: "io.netty.channel.DefaultChannelPipeline:175,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - Src: "io.netty.channel.DefaultChannelPipeline:176,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.DefaultChannelPipeline:177,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerAddedInEventLoop(io.netty.channel.AbstractChannelHandlerContext,io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.channel.DefaultChannelPipeline:181,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerAdded0(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].checkMultiplicity(io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 595
    functionLinenumberEnd: 606
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DatagramPacketEncoder].isSharable()"
    - "[io.netty.handler.codec.DatagramPacketDecoder].isSharable()"
    - "[io.netty.channel.ChannelHandlerAdapter].isSharable()"
    - "[java.lang.StringBuilder].<init>()"
    - "[io.netty.channel.ChannelPipelineException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 20
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:596"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:605"
        BranchSideFuncs:
        - "isSharable()"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:604"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:598"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:603"
        BranchSideFuncs:
        - "<init>()"
        - "getName()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "getClass()"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:602"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:598"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:603"
        BranchSideFuncs:
        - "<init>()"
        - "getName()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "getClass()"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:602"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:598,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].isSharable()"
    - Src: "io.netty.channel.DefaultChannelPipeline:599,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.DefaultChannelPipeline:600,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.channel.DefaultChannelPipeline:600,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.channel.DefaultChannelPipeline:600,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:600,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.DefaultChannelPipeline:600,1"
      Dst: "[io.netty.channel.ChannelPipelineException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.ChannelPipelineException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.channel.ChannelPipelineException"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelPipelineException:43,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.channel.ChannelException"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelException:47,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].filterName(java.lang.String,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 280
    functionLinenumberEnd: 286
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].generateName(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].checkDuplicateName(java.lang.String)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:281"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:284"
        BranchSideFuncs:
        - "generateName(io.netty.channel.ChannelHandler)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:283"
        BranchSideFuncs:
        - "checkDuplicateName(java.lang.String)"
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:282,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].generateName(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:284,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].checkDuplicateName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].generateName(io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 387
    functionLinenumberEnd: 409
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].get()"
    - "[java.lang.Object].getClass()"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPipeline].generateName0(java.lang.Class)"
    - "[io.netty.util.collection.ShortObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Properties].put(java.lang.Object,java.lang.Object)"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[java.util.WeakHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    - "[java.util.AbstractMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPipeline].context0(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 30
    EdgeCount: 64
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:391"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:398"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "generateName0(java.lang.Class)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:397"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:398"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:408"
        BranchSideFuncs:
        - "length()"
        - "substring(int,int)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:407"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:402"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:399"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:398"
        BranchSideFuncs:
        - "length()"
        - "substring(int,int)"
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:388,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].get()"
    - Src: "io.netty.channel.DefaultChannelPipeline:389,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.channel.DefaultChannelPipeline:390,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.channel.DefaultChannelPipeline:392,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].generateName0(java.lang.Class)"
    - Src: "io.netty.channel.DefaultChannelPipeline:393,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.DefaultChannelPipeline:398,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].context0(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:399,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.channel.DefaultChannelPipeline:399,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.channel.DefaultChannelPipeline:401,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.DefaultChannelPipeline:401,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:401,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.DefaultChannelPipeline:401,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.DefaultChannelPipeline].context0(java.lang.String)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1059
    functionLinenumberEnd: 1068
    functionDepth: 0
    returnType: "io.netty.channel.AbstractChannelHandlerContext"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].name()"
    functionUses: 4
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:1061"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1067"
        BranchSideFuncs:
        - "name()"
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1066"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:1062"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1065"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1064"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1062,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - Src: "io.netty.channel.DefaultChannelPipeline:1062,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelPipeline].checkDuplicateName(java.lang.String)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1053
    functionLinenumberEnd: 1058
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].context0(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 13
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:1054"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1057"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1056"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1054,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].context0(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:1055,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.DefaultChannelPipeline:1055,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:1055,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.DefaultChannelPipeline:1055,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addFirst0(io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1120
    functionLinenumberEnd: 1135
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 6
    ICount: 30
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:1121"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1122"
        BranchSideFuncs:
        - "<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:1121"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1122"
        BranchSideFuncs:
        - "<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:1123"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1123"
        BranchSideFuncs:
        - "<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1122"
        BranchSideFuncs:
        - "<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:1125"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1129"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1128"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:1129"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1132"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1131"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1121,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.DefaultChannelPipeline:1123,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:1123,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask"
    linkageType: ""
    functionLinenumber: 1449
    functionLinenumberEnd: 1453
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.DefaultChannelPipeline"
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerCallback].<init>(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask:1451,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline$PendingHandlerCallback].<init>(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask"
    linkageType: ""
    functionLinenumber: 1481
    functionLinenumberEnd: 1485
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.DefaultChannelPipeline"
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerCallback].<init>(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask:1483,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline$PendingHandlerCallback].<init>(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].callHandlerAddedInEventLoop(io.netty.channel.AbstractChannelHandlerContext,io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1136
    functionLinenumberEnd: 1145
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].setAddPending()"
    - "[io.netty.channel.DefaultChannelPipeline$6].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 3
    ICount: 8
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1137,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].setAddPending()"
    - Src: "io.netty.channel.DefaultChannelPipeline:1138,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline$6].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:1138,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$6].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$6"
    linkageType: ""
    functionLinenumber: 1137
    functionLinenumberEnd: 1139
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.DefaultChannelPipeline"
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$6:1138,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].callHandlerAdded0(io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 608
    functionLinenumberEnd: 633
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].callHandlerAdded()"
    - "[io.netty.channel.DefaultChannelPipeline].atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.AbstractChannelHandlerContext].callHandlerRemoved()"
    - "[io.netty.util.internal.logging.JdkLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isWarnEnabled()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPipelineException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[io.netty.channel.DefaultChannelHandlerContext].handler()"
    - "[io.netty.channel.ChannelHandlerContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].handler()"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 5
    ICount: 47
    EdgeCount: 42
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:617"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:609"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
        - "append(java.lang.String)"
        - "toString()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "callHandlerAdded()"
        - "getClass()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "name()"
        - "callHandlerRemoved()"
        - "<init>()"
        - "getName()"
        - "handler()"
        - "isWarnEnabled()"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:608"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
        - "append(java.lang.String)"
        - "toString()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "callHandlerAdded()"
        - "getClass()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "name()"
        - "callHandlerRemoved()"
        - "<init>()"
        - "getName()"
        - "handler()"
        - "isWarnEnabled()"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:622"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:609"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
        - "append(java.lang.String)"
        - "toString()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "callHandlerAdded()"
        - "getClass()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "name()"
        - "callHandlerRemoved()"
        - "<init>()"
        - "getName()"
        - "handler()"
        - "isWarnEnabled()"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:608"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
        - "append(java.lang.String)"
        - "toString()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "callHandlerAdded()"
        - "getClass()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "name()"
        - "callHandlerRemoved()"
        - "<init>()"
        - "getName()"
        - "handler()"
        - "isWarnEnabled()"
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:609,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].callHandlerAdded()"
    - Src: "io.netty.channel.DefaultChannelPipeline:613,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:614,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].callHandlerRemoved()"
    - Src: "io.netty.channel.DefaultChannelPipeline:617,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.channel.DefaultChannelPipeline:618,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.DefaultChannelPipeline:618,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:618,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - Src: "io.netty.channel.DefaultChannelPipeline:618,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.DefaultChannelPipeline:618,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.DefaultChannelPipeline:624,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].handler()"
    - Src: "io.netty.channel.DefaultChannelPipeline:624,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.channel.DefaultChannelPipeline:624,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.channel.DefaultChannelPipeline:624,1"
      Dst: "[io.netty.channel.ChannelPipelineException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.DefaultChannelPipeline:623,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.DefaultChannelPipeline].atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 484
    functionLinenumberEnd: 490
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelPipelineException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.ChannelPipelineException"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelPipelineException:36,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.ChannelException"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelException:40,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 906
    functionLinenumberEnd: 909
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].invokeExceptionCaught(io.netty.channel.AbstractChannelHandlerContext,java.lang.Throwable)"
    functionUses: 29
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:907,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].invokeExceptionCaught(io.netty.channel.AbstractChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addLast(java.lang.String,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:195,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 225
    functionDepth: 7
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 3
    argTypes:
    - "io.netty.util.concurrent.EventExecutorGroup"
    - "java.lang.String"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].checkMultiplicity(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].filterName(java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].newContext(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].addLast0(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.AbstractChannelHandlerContext].setAddPending()"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerAddedInEventLoop(io.netty.channel.AbstractChannelHandlerContext,io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerAdded0(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    functionUses: 1
    ICount: 28
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:211"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:217"
        BranchSideFuncs:
        - "callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
        - "setAddPending()"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:216"
        BranchSideFuncs:
        - "executor()"
        - "inEventLoop()"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:218"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:222"
        BranchSideFuncs:
        - "callHandlerAddedInEventLoop(io.netty.channel.AbstractChannelHandlerContext,io.netty.util.concurrent.EventExecutor)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:202,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].checkMultiplicity(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:204,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].filterName(java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:204,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].newContext(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:206,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].addLast0(io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:212,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].setAddPending()"
    - Src: "io.netty.channel.DefaultChannelPipeline:213,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    - Src: "io.netty.channel.DefaultChannelPipeline:217,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - Src: "io.netty.channel.DefaultChannelPipeline:218,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.DefaultChannelPipeline:219,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerAddedInEventLoop(io.netty.channel.AbstractChannelHandlerContext,io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.channel.DefaultChannelPipeline:223,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerAdded0(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addLast0(io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 227
    functionLinenumberEnd: 234
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addBefore(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 236
    functionLinenumberEnd: 238
    functionDepth: 8
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].addBefore(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    functionUses: 12
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:237,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].addBefore(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addBefore(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 271
    functionDepth: 7
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 4
    argTypes:
    - "io.netty.util.concurrent.EventExecutorGroup"
    - "java.lang.String"
    - "java.lang.String"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].checkMultiplicity(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].filterName(java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(java.lang.String)"
    - "[io.netty.channel.DefaultChannelPipeline].newContext(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].addBefore0(io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.AbstractChannelHandlerContext].setAddPending()"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerAddedInEventLoop(io.netty.channel.AbstractChannelHandlerContext,io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerAdded0(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    functionUses: 1
    ICount: 30
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:257"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:263"
        BranchSideFuncs:
        - "callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
        - "setAddPending()"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:262"
        BranchSideFuncs:
        - "executor()"
        - "inEventLoop()"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:264"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:268"
        BranchSideFuncs:
        - "callHandlerAddedInEventLoop(io.netty.channel.AbstractChannelHandlerContext,io.netty.util.concurrent.EventExecutor)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:267"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:246,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].checkMultiplicity(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:247,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].filterName(java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:248,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:250,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].newContext(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:252,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].addBefore0(io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:258,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].setAddPending()"
    - Src: "io.netty.channel.DefaultChannelPipeline:259,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    - Src: "io.netty.channel.DefaultChannelPipeline:263,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - Src: "io.netty.channel.DefaultChannelPipeline:264,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.DefaultChannelPipeline:265,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerAddedInEventLoop(io.netty.channel.AbstractChannelHandlerContext,io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.channel.DefaultChannelPipeline:269,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerAdded0(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(java.lang.String)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1070
    functionLinenumberEnd: 1076
    functionDepth: 2
    returnType: "io.netty.channel.AbstractChannelHandlerContext"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].context(java.lang.String)"
    - "[java.util.NoSuchElementException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:1072"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1075"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1074"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1071,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].context(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:1073,1"
      Dst: "[java.util.NoSuchElementException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].context(java.lang.String)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 712
    functionLinenumberEnd: 714
    functionDepth: 1
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.DefaultChannelPipeline].context0(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:713,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:713,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].context0(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addBefore0(io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 273
    functionLinenumberEnd: 279
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 289
    functionLinenumberEnd: 291
    functionDepth: 8
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].addAfter(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    functionUses: 20
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:290,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].addAfter(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addAfter(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 298
    functionLinenumberEnd: 324
    functionDepth: 7
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 4
    argTypes:
    - "io.netty.util.concurrent.EventExecutorGroup"
    - "java.lang.String"
    - "java.lang.String"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].checkMultiplicity(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].filterName(java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(java.lang.String)"
    - "[io.netty.channel.DefaultChannelPipeline].newContext(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].addAfter0(io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.AbstractChannelHandlerContext].setAddPending()"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerAddedInEventLoop(io.netty.channel.AbstractChannelHandlerContext,io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerAdded0(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    functionUses: 1
    ICount: 30
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:311"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:316"
        BranchSideFuncs:
        - "callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
        - "setAddPending()"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:315"
        BranchSideFuncs:
        - "executor()"
        - "inEventLoop()"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:317"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:321"
        BranchSideFuncs:
        - "callHandlerAddedInEventLoop(io.netty.channel.AbstractChannelHandlerContext,io.netty.util.concurrent.EventExecutor)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:320"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:300,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].checkMultiplicity(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:301,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].filterName(java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:302,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:304,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].newContext(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:306,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].addAfter0(io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:312,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].setAddPending()"
    - Src: "io.netty.channel.DefaultChannelPipeline:313,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    - Src: "io.netty.channel.DefaultChannelPipeline:316,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - Src: "io.netty.channel.DefaultChannelPipeline:317,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.DefaultChannelPipeline:318,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerAddedInEventLoop(io.netty.channel.AbstractChannelHandlerContext,io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.channel.DefaultChannelPipeline:322,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerAdded0(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addAfter0(io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 326
    functionLinenumberEnd: 332
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addFirst(io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].addFirst(java.lang.String,io.netty.channel.ChannelHandler)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:334,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].addFirst(java.lang.String,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addFirst(io.netty.channel.ChannelHandler[])"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandler[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].addFirst(io.netty.util.concurrent.EventExecutorGroup,io.netty.channel.ChannelHandler[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:339,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].addFirst(io.netty.util.concurrent.EventExecutorGroup,io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addFirst(io.netty.util.concurrent.EventExecutorGroup,io.netty.channel.ChannelHandler[])"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.EventExecutorGroup"
    - "io.netty.channel.ChannelHandler[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.DefaultChannelPipeline].addFirst(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:345"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:346"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:345"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:345"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:350"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:349"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:350"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:356"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:355"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:351"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:350"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:349"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:356"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:360"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:344,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:358,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].addFirst(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].addLast(java.lang.String,io.netty.channel.ChannelHandler)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:365,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].addLast(java.lang.String,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 369
    functionLinenumberEnd: 371
    functionDepth: 9
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandler[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.util.concurrent.EventExecutorGroup,io.netty.channel.ChannelHandler[])"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:370,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.util.concurrent.EventExecutorGroup,io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.util.concurrent.EventExecutorGroup,io.netty.channel.ChannelHandler[])"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 374
    functionLinenumberEnd: 385
    functionDepth: 8
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.EventExecutorGroup"
    - "io.netty.channel.ChannelHandler[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:377"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:384"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:383"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:378"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:375,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:381,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.DefaultChannelPipeline].generateName0(java.lang.Class<?>)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 411
    functionLinenumberEnd: 413
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:412,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.DefaultChannelPipeline:412,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - Src: "io.netty.channel.DefaultChannelPipeline:412,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:412,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 416
    functionLinenumberEnd: 419
    functionDepth: 4
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 38
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:417,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:417,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1079
    functionLinenumberEnd: 1085
    functionDepth: 2
    returnType: "io.netty.channel.AbstractChannelHandlerContext"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].context(io.netty.channel.ChannelHandler)"
    - "[java.util.NoSuchElementException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    functionUses: 2
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:1081"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1084"
        BranchSideFuncs:
        - "getName()"
        - "<init>(java.lang.String)"
        - "getClass()"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1083"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1080,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].context(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:1082,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.channel.DefaultChannelPipeline:1082,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.channel.DefaultChannelPipeline:1082,1"
      Dst: "[java.util.NoSuchElementException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].context(io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 717
    functionLinenumberEnd: 732
    functionDepth: 1
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.DefaultChannelHandlerContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].handler()"
    - "[io.netty.channel.ChannelHandlerContext].handler()"
    functionUses: 5
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:723"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:727"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:726"
        BranchSideFuncs:
        - "handler()"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:727"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:731"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:730"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:718,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:727,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].handler()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 452
    functionLinenumberEnd: 479
    functionDepth: 3
    returnType: "io.netty.channel.AbstractChannelHandlerContext"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.DefaultChannelPipeline].atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.channel.DefaultChannelPipeline$2].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerRemoved0(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 3
    ICount: 33
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:453"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:454"
        BranchSideFuncs:
        - "atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:453"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:452"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:453"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:454"
        BranchSideFuncs:
        - "atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:461"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:466"
        BranchSideFuncs:
        - "callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:465"
        BranchSideFuncs:
        - "executor()"
        - "inEventLoop()"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:467"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:476"
        BranchSideFuncs:
        - "run()"
        - "execute(java.lang.Runnable)"
        - "<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:475"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:453,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.DefaultChannelPipeline:456,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:462,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    - Src: "io.netty.channel.DefaultChannelPipeline:466,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - Src: "io.netty.channel.DefaultChannelPipeline:467,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.DefaultChannelPipeline:468,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline$2].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:468,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.channel.DefaultChannelPipeline:477,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerRemoved0(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelPipeline$2].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$2"
    linkageType: ""
    functionLinenumber: 467
    functionLinenumberEnd: 469
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.DefaultChannelPipeline"
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$2:468,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].callHandlerRemoved0(io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 636
    functionLinenumberEnd: 643
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].callHandlerRemoved()"
    - "[java.lang.StringBuilder].<init>()"
    - "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPipelineException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[io.netty.channel.DefaultChannelHandlerContext].handler()"
    - "[io.netty.channel.ChannelHandlerContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].handler()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 17
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:637,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].callHandlerRemoved()"
    - Src: "io.netty.channel.DefaultChannelPipeline:639,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.DefaultChannelPipeline:640,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].handler()"
    - Src: "io.netty.channel.DefaultChannelPipeline:640,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.channel.DefaultChannelPipeline:640,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.channel.DefaultChannelPipeline:640,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:640,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.DefaultChannelPipeline:640,1"
      Dst: "[io.netty.channel.ChannelPipelineException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.DefaultChannelPipeline:639,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].remove(java.lang.String)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 422
    functionLinenumberEnd: 424
    functionDepth: 4
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(java.lang.String)"
    - "[io.netty.channel.DefaultChannelHandlerContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandlerContext].handler()"
    functionUses: 7
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:423,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:423,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:423,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].handler()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].remove(java.lang.Class<T>)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 428
    functionLinenumberEnd: 430
    functionDepth: 4
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 1
    argTypes:
    - "java.lang.Class<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(java.lang.Class)"
    - "[io.netty.channel.DefaultChannelHandlerContext].handler()"
    - "[io.netty.channel.ChannelHandlerContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 3
    ICount: 6
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:429,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(java.lang.Class)"
    - Src: "io.netty.channel.DefaultChannelPipeline:429,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:429,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].handler()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].removeIfExists(java.lang.String)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].context(java.lang.String)"
    - "[io.netty.channel.DefaultChannelPipeline].removeIfExists(io.netty.channel.ChannelHandlerContext)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:433,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].context(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:433,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].removeIfExists(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].removeIfExists(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandlerContext].handler()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:446"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:449"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:448"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:449,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:449,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].handler()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].removeIfExists(java.lang.Class<T>)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 1
    argTypes:
    - "java.lang.Class<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].context(java.lang.Class)"
    - "[io.netty.channel.DefaultChannelPipeline].removeIfExists(io.netty.channel.ChannelHandlerContext)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:437,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].context(java.lang.Class)"
    - Src: "io.netty.channel.DefaultChannelPipeline:437,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].removeIfExists(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].removeIfExists(io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].context(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].removeIfExists(io.netty.channel.ChannelHandlerContext)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:441,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].context(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:441,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].removeIfExists(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].removeFirst()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.NoSuchElementException].<init>()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandlerContext].handler()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:493"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:496"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:495"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:494,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    - Src: "io.netty.channel.DefaultChannelPipeline:496,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:496,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].handler()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].removeLast()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.NoSuchElementException].<init>()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandlerContext].handler()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:501"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:504"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:503"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:502,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    - Src: "io.netty.channel.DefaultChannelPipeline:504,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:504,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].handler()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].replace(io.netty.channel.ChannelHandler,java.lang.String,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 508
    functionLinenumberEnd: 511
    functionDepth: 7
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandler"
    - "java.lang.String"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].replace(io.netty.channel.AbstractChannelHandlerContext,java.lang.String,io.netty.channel.ChannelHandler)"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:509,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:509,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].replace(io.netty.channel.AbstractChannelHandlerContext,java.lang.String,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].replace(io.netty.channel.AbstractChannelHandlerContext,java.lang.String,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 526
    functionLinenumberEnd: 575
    functionDepth: 6
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 3
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "java.lang.String"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.DefaultChannelPipeline].checkMultiplicity(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].generateName(io.netty.channel.ChannelHandler)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - "[io.netty.channel.DefaultChannelPipeline].checkDuplicateName(java.lang.String)"
    - "[io.netty.channel.DefaultChannelPipeline].newContext(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].replace0(io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    - "[io.netty.channel.DefaultChannelHandlerContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].handler()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.channel.DefaultChannelPipeline$3].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerAdded0(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerRemoved0(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandlerContext].handler()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 2
    ICount: 50
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:527"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:529"
        BranchSideFuncs:
        - "checkMultiplicity(io.netty.channel.ChannelHandler)"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:527"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:526"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:527"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:529"
        BranchSideFuncs:
        - "checkMultiplicity(io.netty.channel.ChannelHandler)"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:532"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:535"
        BranchSideFuncs:
        - "generateName(io.netty.channel.ChannelHandler)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:534"
        BranchSideFuncs:
        - "name()"
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:536"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:541"
        BranchSideFuncs:
        - "checkDuplicateName(java.lang.String)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:540"
        BranchSideFuncs:
        - "replace0(io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.AbstractChannelHandlerContext)"
        - "newContext(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:549"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:554"
        BranchSideFuncs:
        - "callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:553"
        BranchSideFuncs:
        - "executor()"
        - "inEventLoop()"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:555"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:568"
        BranchSideFuncs:
        - "<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.AbstractChannelHandlerContext)"
        - "run()"
        - "execute(java.lang.Runnable)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:567"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:527,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.DefaultChannelPipeline:531,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].checkMultiplicity(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:533,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].generateName(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:535,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - Src: "io.netty.channel.DefaultChannelPipeline:535,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.channel.DefaultChannelPipeline:537,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].checkDuplicateName(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:541,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].newContext(io.netty.util.concurrent.EventExecutorGroup,java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.DefaultChannelPipeline:543,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].replace0(io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:550,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerCallbackLater(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    - Src: "io.netty.channel.DefaultChannelPipeline:552,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].handler()"
    - Src: "io.netty.channel.DefaultChannelPipeline:554,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - Src: "io.netty.channel.DefaultChannelPipeline:555,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.DefaultChannelPipeline:556,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline$3].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:556,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.channel.DefaultChannelPipeline:572,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerAdded0(io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:573,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerRemoved0(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.DefaultChannelPipeline].replace0(io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 577
    functionLinenumberEnd: 594
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$3].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$3"
    linkageType: ""
    functionLinenumber: 555
    functionLinenumberEnd: 557
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.DefaultChannelPipeline"
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$3:556,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].replace(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 514
    functionLinenumberEnd: 516
    functionDepth: 7
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(java.lang.String)"
    - "[io.netty.channel.DefaultChannelPipeline].replace(io.netty.channel.AbstractChannelHandlerContext,java.lang.String,io.netty.channel.ChannelHandler)"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:515,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:515,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].replace(io.netty.channel.AbstractChannelHandlerContext,java.lang.String,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].replace(java.lang.Class<T>,java.lang.String,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 3
    argTypes:
    - "java.lang.Class<T>"
    - "java.lang.String"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(java.lang.Class)"
    - "[io.netty.channel.DefaultChannelPipeline].replace(io.netty.channel.AbstractChannelHandlerContext,java.lang.String,io.netty.channel.ChannelHandler)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:522,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(java.lang.Class)"
    - Src: "io.netty.channel.DefaultChannelPipeline:522,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].replace(io.netty.channel.AbstractChannelHandlerContext,java.lang.String,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].invokeHandlerAddedIfNeeded()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 644
    functionLinenumberEnd: 653
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerAddedForAllHandlers()"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    functionUses: 2
    ICount: 15
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:645"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:646"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:645"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:645"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:646"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:645"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:646"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:652"
        BranchSideFuncs:
        - "callHandlerAddedForAllHandlers()"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:651"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:645,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.channel.DefaultChannelPipeline:645,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.DefaultChannelPipeline:645,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.DefaultChannelPipeline:650,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerAddedForAllHandlers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.DefaultChannelPipeline].callHandlerAddedForAllHandlers()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1098
    functionLinenumberEnd: 1119
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].execute()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].execute()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerCallback].execute()"
    functionUses: 1
    ICount: 23
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:1100"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1102"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:1100"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1102"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:1114"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1118"
        BranchSideFuncs:
        - "execute()"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1117"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1100,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.DefaultChannelPipeline:1115,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline$PendingHandlerCallback].execute()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelPipeline].first()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].firstContext()"
    - "[io.netty.channel.ChannelHandlerContext].handler()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:657"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:660"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:659"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:656,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].firstContext()"
    - Src: "io.netty.channel.DefaultChannelPipeline:660,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].handler()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].firstContext()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:666"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:669"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:668"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].last()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerContext].handler()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:675"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:678"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:677"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:678,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].handler()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].lastContext()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:684"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:687"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:686"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].get(java.lang.String)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].context(java.lang.String)"
    - "[io.netty.channel.ChannelHandlerContext].handler()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:693"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:696"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:695"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:692,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].context(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:696,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].handler()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].get(java.lang.Class<T>)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 702
    functionLinenumberEnd: 708
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 1
    argTypes:
    - "java.lang.Class<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].context(java.lang.Class)"
    - "[io.netty.channel.DefaultChannelHandlerContext].handler()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].handler()"
    - "[io.netty.channel.ChannelHandlerContext].handler()"
    functionUses: 16
    ICount: 7
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:704"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:707"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:706"
        BranchSideFuncs:
        - "handler()"
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:703,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].context(java.lang.Class)"
    - Src: "io.netty.channel.DefaultChannelPipeline:707,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].handler()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].context(java.lang.Class<?\
      \ extends ChannelHandler>)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 736
    functionLinenumberEnd: 748
    functionDepth: 1
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends ChannelHandler>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[io.netty.channel.DefaultChannelHandlerContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].handler()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[io.netty.channel.ChannelHandlerContext].handler()"
    functionUses: 12
    ICount: 14
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:741"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:744"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:743"
        BranchSideFuncs:
        - "handler()"
        - "getClass()"
        - "isAssignableFrom(java.lang.Class)"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:744"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:747"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:746"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:737,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:744,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].handler()"
    - Src: "io.netty.channel.DefaultChannelPipeline:744,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.channel.DefaultChannelPipeline:744,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelPipeline].names()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 752
    functionLinenumberEnd: 761
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:756"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:759"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:758"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "name()"
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:753,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.channel.DefaultChannelPipeline:759,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - Src: "io.netty.channel.DefaultChannelPipeline:759,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelPipeline].toMap()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 765
    functionLinenumberEnd: 774
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    - "[io.netty.channel.DefaultChannelHandlerContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].handler()"
    - "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].handler()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:769"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:772"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:771"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "name()"
        - "handler()"
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:766,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "io.netty.channel.DefaultChannelPipeline:772,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - Src: "io.netty.channel.DefaultChannelPipeline:772,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].handler()"
    - Src: "io.netty.channel.DefaultChannelPipeline:772,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelPipeline].iterator()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 778
    functionLinenumberEnd: 780
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Provider].entrySet()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].entrySet()"
    - "[java.util.concurrent.ConcurrentHashMap].entrySet()"
    - "[io.netty.util.collection.ShortObjectHashMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].entrySet()"
    - "[java.util.TreeMap].entrySet()"
    - "[java.util.stream.Collectors$Partition].entrySet()"
    - "[java.util.Properties].entrySet()"
    - "[java.util.WeakHashMap].entrySet()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[io.netty.util.collection.IntObjectHashMap].entrySet()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].entrySet()"
    - "[java.util.jar.Attributes].entrySet()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].entrySet()"
    - "[java.util.IdentityHashMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.util.collection.ByteObjectHashMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].entrySet()"
    - "[java.util.HashMap].entrySet()"
    - "[io.netty.util.collection.CharObjectHashMap].entrySet()"
    - "[java.util.Hashtable].entrySet()"
    - "[io.netty.util.collection.LongObjectHashMap].entrySet()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.channel.DefaultChannelPipeline].toMap()"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    functionUses: 24
    ICount: 5
    EdgeCount: 48
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:779,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].toMap()"
    - Src: "io.netty.channel.DefaultChannelPipeline:779,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "io.netty.channel.DefaultChannelPipeline:779,1"
      Dst: "[java.util.Set].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].toString()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 786
    functionLinenumberEnd: 811
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[io.netty.channel.DefaultChannelHandlerContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].handler()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.ChannelHandlerContext].handler()"
    functionUses: 19
    ICount: 29
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:792"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:796"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:795"
        BranchSideFuncs:
        - "name()"
        - "getName()"
        - "handler()"
        - "getClass()"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:803"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:807"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:806"
        BranchSideFuncs:
        - "append(java.lang.String)"
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:787,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.DefaultChannelPipeline:788,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.channel.DefaultChannelPipeline:788,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelPipeline:789,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.channel.DefaultChannelPipeline:797,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - Src: "io.netty.channel.DefaultChannelPipeline:799,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].handler()"
    - Src: "io.netty.channel.DefaultChannelPipeline:799,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.channel.DefaultChannelPipeline:799,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.channel.DefaultChannelPipeline:810,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.DefaultChannelPipeline].fireChannelRegistered()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 814
    functionLinenumberEnd: 817
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].invokeChannelRegistered(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:815,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].invokeChannelRegistered(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].fireChannelUnregistered()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 820
    functionLinenumberEnd: 823
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].invokeChannelUnregistered(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:821,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].invokeChannelUnregistered(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].destroy()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 835
    functionLinenumberEnd: 838
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].destroyUp(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:836,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].destroyUp(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].destroyUp(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 839
    functionLinenumberEnd: 864
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].currentThread()"
    - "[io.netty.channel.DefaultChannelPipeline].destroyDown(java.lang.Thread,io.netty.channel.AbstractChannelHandlerContext,boolean)"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop(java.lang.Thread)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop(java.lang.Thread)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop(java.lang.Thread)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop(java.lang.Thread)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].inEventLoop(java.lang.Thread)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].inEventLoop(java.lang.Thread)"
    - "[io.netty.channel.DefaultChannelPipeline$4].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop(java.lang.Thread)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 2
    ICount: 21
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:843"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:848"
        BranchSideFuncs:
        - "destroyDown(java.lang.Thread,io.netty.channel.AbstractChannelHandlerContext,boolean)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:847"
        BranchSideFuncs:
        - "inEventLoop(java.lang.Thread)"
        - "executor()"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:849"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:859"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelPipeline:849"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:859"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:840,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "io.netty.channel.DefaultChannelPipeline:844,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].destroyDown(java.lang.Thread,io.netty.channel.AbstractChannelHandlerContext,boolean)"
    - Src: "io.netty.channel.DefaultChannelPipeline:848,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - Src: "io.netty.channel.DefaultChannelPipeline:849,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop(java.lang.Thread)"
    - Src: "io.netty.channel.DefaultChannelPipeline:851,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline$4].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:851,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.DefaultChannelPipeline].destroyDown(java.lang.Thread,io.netty.channel.AbstractChannelHandlerContext,boolean)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 866
    functionLinenumberEnd: 892
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Thread"
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop(java.lang.Thread)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop(java.lang.Thread)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop(java.lang.Thread)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop(java.lang.Thread)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].inEventLoop(java.lang.Thread)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].inEventLoop(java.lang.Thread)"
    - "[io.netty.channel.DefaultChannelPipeline].atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerRemoved0(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$5].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop(java.lang.Thread)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 2
    ICount: 22
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:869"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:873"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:872"
        BranchSideFuncs:
        - "inEventLoop(java.lang.Thread)"
        - "executor()"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:874"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:875"
        BranchSideFuncs:
        - "callHandlerRemoved0(io.netty.channel.AbstractChannelHandlerContext)"
        - "atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:874"
        BranchSideFuncs:
        - "callHandlerRemoved0(io.netty.channel.AbstractChannelHandlerContext)"
        - "atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
    - Branch String: "io.netty.channel.DefaultChannelPipeline:874"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:879"
        BranchSideFuncs:
        - "callHandlerRemoved0(io.netty.channel.AbstractChannelHandlerContext)"
        - "atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:878"
        BranchSideFuncs:
        - "run()"
        - "execute(java.lang.Runnable)"
        - "<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:873,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - Src: "io.netty.channel.DefaultChannelPipeline:874,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop(java.lang.Thread)"
    - Src: "io.netty.channel.DefaultChannelPipeline:875,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:876,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerRemoved0(io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:879,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline$5].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline:879,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.DefaultChannelPipeline$5].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$5"
    linkageType: ""
    functionLinenumber: 878
    functionLinenumberEnd: 880
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.DefaultChannelPipeline"
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$5:879,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$4].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$4"
    linkageType: ""
    functionLinenumber: 850
    functionLinenumberEnd: 852
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.DefaultChannelPipeline"
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$4:851,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].fireChannelActive()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 894
    functionLinenumberEnd: 897
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].invokeChannelActive(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:895,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].invokeChannelActive(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].fireChannelInactive()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 900
    functionLinenumberEnd: 903
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].invokeChannelInactive(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:901,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].invokeChannelInactive(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].fireUserEventTriggered(java.lang.Object)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 912
    functionLinenumberEnd: 915
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].invokeUserEventTriggered(io.netty.channel.AbstractChannelHandlerContext,java.lang.Object)"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:913,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].invokeUserEventTriggered(io.netty.channel.AbstractChannelHandlerContext,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 918
    functionLinenumberEnd: 921
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].invokeChannelRead(io.netty.channel.AbstractChannelHandlerContext,java.lang.Object)"
    functionUses: 25
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:919,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].invokeChannelRead(io.netty.channel.AbstractChannelHandlerContext,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 924
    functionLinenumberEnd: 927
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].invokeChannelReadComplete(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 24
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:925,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].invokeChannelReadComplete(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].fireChannelWritabilityChanged()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 930
    functionLinenumberEnd: 933
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].invokeChannelWritabilityChanged(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:931,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].invokeChannelWritabilityChanged(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].bind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].bind(java.net.SocketAddress)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:937,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].bind(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].connect(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].connect(java.net.SocketAddress)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:942,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].connect(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].connect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:947,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].disconnect()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].disconnect()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:952,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].disconnect()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].close()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 956
    functionLinenumberEnd: 958
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:957,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].deregister()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].deregister()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:962,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].deregister()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].flush()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 966
    functionLinenumberEnd: 969
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:967,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 972
    functionLinenumberEnd: 974
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:973,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].connect(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 977
    functionLinenumberEnd: 979
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].connect(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:978,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].connect(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 983
    functionLinenumberEnd: 985
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:984,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].disconnect(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:989,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].close(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 993
    functionLinenumberEnd: 995
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:994,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].deregister(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:999,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].read()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1003
    functionLinenumberEnd: 1006
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPipeline"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].read()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1004,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].write(java.lang.Object)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1009
    functionLinenumberEnd: 1011
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1010,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1014
    functionLinenumberEnd: 1016
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1015,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1019
    functionLinenumberEnd: 1021
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1020,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].writeAndFlush(java.lang.Object)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1024
    functionLinenumberEnd: 1026
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1025,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].newPromise()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1029
    functionLinenumberEnd: 1031
    functionDepth: 2
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPromise].<init>(io.netty.channel.Channel)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1030,1"
      Dst: "[io.netty.channel.DefaultChannelPromise].<init>(io.netty.channel.Channel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].<init>(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPromise:41,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].<init>()"
    - Src: "io.netty.channel.DefaultChannelPromise:42,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].<init>()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.AbstractFuture].<init>()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:89,1"
      Dst: "[io.netty.util.concurrent.AbstractFuture].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].newProgressivePromise()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.ChannelProgressivePromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelProgressivePromise].<init>(io.netty.channel.Channel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1035,1"
      Dst: "[io.netty.channel.DefaultChannelProgressivePromise].<init>(io.netty.channel.Channel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].<init>(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultProgressivePromise].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:41,1"
      Dst: "[io.netty.util.concurrent.DefaultProgressivePromise].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultProgressivePromise].<init>()"
    functionSourceFile: "io.netty.util.concurrent.DefaultProgressivePromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:35,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].newSucceededFuture()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].newFailedFuture(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1044
    functionLinenumberEnd: 1046
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.FailedChannelFuture].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor,java.lang.Throwable)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1045,1"
      Dst: "[io.netty.channel.FailedChannelFuture].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.FailedChannelFuture].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor,java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.FailedChannelFuture"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 41
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.EventExecutor"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CompleteChannelFuture].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 3
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.FailedChannelFuture:38,1"
      Dst: "[io.netty.channel.CompleteChannelFuture].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.channel.FailedChannelFuture:39,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].voidPromise()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1049
    functionLinenumberEnd: 1051
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].getContextOrDie(java.lang.Class<?\
      \ extends ChannelHandler>)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1088
    functionLinenumberEnd: 1094
    functionDepth: 0
    returnType: "io.netty.channel.AbstractChannelHandlerContext"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends ChannelHandler>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].context(java.lang.Class)"
    - "[java.util.NoSuchElementException].<init>(java.lang.String)"
    - "[java.lang.Class].getName()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:1090"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1093"
        BranchSideFuncs:
        - "getName()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1092"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1089,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].context(java.lang.Class)"
    - Src: "io.netty.channel.DefaultChannelPipeline:1091,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.channel.DefaultChannelPipeline:1091,1"
      Dst: "[java.util.NoSuchElementException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].onUnhandledInboundException(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1151
    functionLinenumberEnd: 1160
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1152,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.DefaultChannelPipeline:1157,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].onUnhandledInboundChannelActive()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1165
    functionLinenumberEnd: 1167
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].onUnhandledInboundChannelInactive()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1172
    functionLinenumberEnd: 1174
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].onUnhandledInboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1181
    functionLinenumberEnd: 1189
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1182,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - Src: "io.netty.channel.DefaultChannelPipeline:1186,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].onUnhandledInboundMessage(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1195
    functionLinenumberEnd: 1202
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].onUnhandledInboundMessage(java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.DefaultChannelPipeline].names()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext].pipeline()"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].names()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:1197"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1200"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1196,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].onUnhandledInboundMessage(java.lang.Object)"
    - Src: "io.netty.channel.DefaultChannelPipeline:1197,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.channel.DefaultChannelPipeline:1199,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.channel.DefaultChannelPipeline:1199,1"
      Dst: "[io.netty.channel.ChannelPipeline].names()"
    - Src: "io.netty.channel.DefaultChannelPipeline:1199,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.channel.DefaultChannelPipeline:1198,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelPipeline].onUnhandledInboundChannelReadComplete()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1207
    functionLinenumberEnd: 1209
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].onUnhandledInboundUserEventTriggered(java.lang.Object)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1217
    functionLinenumberEnd: 1220
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1218,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].onUnhandledChannelWritabilityChanged()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1225
    functionLinenumberEnd: 1227
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].incrementPendingOutboundBytes(long)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1229
    functionLinenumberEnd: 1235
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].outboundBuffer()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].outboundBuffer()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].outboundBuffer()"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.embedded.EmbeddedChannel].unsafe()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - "[io.netty.channel.ChannelOutboundBuffer].incrementPendingOutboundBytes(long)"
    - "[io.netty.channel.Channel].unsafe()"
    - "[io.netty.channel.Channel$Unsafe].outboundBuffer()"
    functionUses: 2
    ICount: 8
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:1231"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1234"
        BranchSideFuncs:
        - "incrementPendingOutboundBytes(long)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1233"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1230,1"
      Dst: "[io.netty.channel.Channel].unsafe()"
    - Src: "io.netty.channel.DefaultChannelPipeline:1230,1"
      Dst: "[io.netty.channel.Channel$Unsafe].outboundBuffer()"
    - Src: "io.netty.channel.DefaultChannelPipeline:1232,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].incrementPendingOutboundBytes(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].incrementPendingOutboundBytes(long)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].incrementPendingOutboundBytes(long,boolean)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:167,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].incrementPendingOutboundBytes(long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].incrementPendingOutboundBytes(long,boolean)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 180
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.embedded.EmbeddedChannel].config()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].config()"
    - "[io.netty.bootstrap.FailedChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.local.LocalServerChannel].config()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].config()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].config()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].getWriteBufferHighWaterMark()"
    - "[io.netty.channel.ChannelOutboundBuffer].setUnwritable(boolean)"
    - "[java.util.concurrent.atomic.AtomicLongFieldUpdater].addAndGet(java.lang.Object,long)"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.channel.ChannelConfig].getWriteBufferHighWaterMark()"
    functionUses: 2
    ICount: 17
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:171"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:175"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:174"
        BranchSideFuncs:
        - "config()"
        - "getWriteBufferHighWaterMark()"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:176"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:179"
        BranchSideFuncs:
        - "setUnwritable(boolean)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:175,1"
      Dst: "[java.util.concurrent.atomic.AtomicLongFieldUpdater].addAndGet(java.lang.Object,long)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:176,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:176,1"
      Dst: "[io.netty.channel.ChannelConfig].getWriteBufferHighWaterMark()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:177,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].setUnwritable(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].setUnwritable(boolean)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 602
    functionLinenumberEnd: 613
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].fireChannelWritabilityChanged(boolean)"
    - "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:605"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:611"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:610"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:606"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:612"
        BranchSideFuncs:
        - "fireChannelWritabilityChanged(boolean)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:611"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:605,1"
      Dst: "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:607,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].fireChannelWritabilityChanged(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.DefaultChannelPipeline].decrementPendingOutboundBytes(long)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 1237
    functionLinenumberEnd: 1243
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].outboundBuffer()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].outboundBuffer()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].outboundBuffer()"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.embedded.EmbeddedChannel].unsafe()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - "[io.netty.channel.ChannelOutboundBuffer].decrementPendingOutboundBytes(long)"
    - "[io.netty.channel.Channel].unsafe()"
    - "[io.netty.channel.Channel$Unsafe].outboundBuffer()"
    functionUses: 2
    ICount: 8
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline:1239"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1242"
        BranchSideFuncs:
        - "decrementPendingOutboundBytes(long)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline:1241"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:1238,1"
      Dst: "[io.netty.channel.Channel].unsafe()"
    - Src: "io.netty.channel.DefaultChannelPipeline:1238,1"
      Dst: "[io.netty.channel.Channel$Unsafe].outboundBuffer()"
    - Src: "io.netty.channel.DefaultChannelPipeline:1240,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].decrementPendingOutboundBytes(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].decrementPendingOutboundBytes(long)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].decrementPendingOutboundBytes(long,boolean,boolean)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:186,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].decrementPendingOutboundBytes(long,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].access$000(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.DefaultChannelPipeline"
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerRemoved0(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:46,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerRemoved0(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].access$100(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.DefaultChannelPipeline"
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].callHandlerAdded0(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:46,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].callHandlerAdded0(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].access$200(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext,boolean)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.DefaultChannelPipeline"
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].destroyUp(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:46,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].destroyUp(io.netty.channel.AbstractChannelHandlerContext,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].access$300(io.netty.channel.DefaultChannelPipeline,java.lang.Thread,io.netty.channel.AbstractChannelHandlerContext,boolean)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.DefaultChannelPipeline"
    - "java.lang.Thread"
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].destroyDown(java.lang.Thread,io.netty.channel.AbstractChannelHandlerContext,boolean)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:46,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].destroyDown(java.lang.Thread,io.netty.channel.AbstractChannelHandlerContext,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].access$400()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].access$500()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].access$600(io.netty.channel.DefaultChannelPipeline)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "io.netty.channel.Channel"
    argCount: 1
    argTypes:
    - "io.netty.channel.DefaultChannelPipeline"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].access$700(io.netty.channel.DefaultChannelPipeline)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.DefaultChannelPipeline"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].destroy()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:46,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].destroy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline].access$800(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.DefaultChannelPipeline"
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline:46,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].atomicRemoveFromHandlerList(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteRendezvousChannel].<init>()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteRendezvousChannel"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].<init>(com.barchart.udt.nio.SocketChannelUDT)"
    - "[io.netty.channel.udt.nio.NioUdtProvider].newRendezvousChannelUDT(com.barchart.udt.TypeUDT)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteRendezvousChannel:29,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtProvider].newRendezvousChannelUDT(com.barchart.udt.TypeUDT)"
    - Src: "io.netty.channel.udt.nio.NioUdtByteRendezvousChannel:29,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].<init>(com.barchart.udt.nio.SocketChannelUDT)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.FailedChannel$FailedChannelUnsafe].<init>(io.netty.bootstrap.FailedChannel)"
    functionSourceFile: "io.netty.bootstrap.FailedChannel$FailedChannelUnsafe"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.bootstrap.FailedChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].<init>(io.netty.channel.AbstractChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.FailedChannel$FailedChannelUnsafe:101,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].<init>(io.netty.channel.AbstractChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.FailedChannel$FailedChannelUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.bootstrap.FailedChannel$FailedChannelUnsafe"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.FailedChannel$FailedChannelUnsafe:104,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    - Src: "io.netty.bootstrap.FailedChannel$FailedChannelUnsafe:104,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.FailedChannel$FailedChannelUnsafe].<init>(io.netty.bootstrap.FailedChannel,io.netty.bootstrap.FailedChannel$1)"
    functionSourceFile: "io.netty.bootstrap.FailedChannel$FailedChannelUnsafe"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.bootstrap.FailedChannel"
    - "io.netty.bootstrap.FailedChannel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.FailedChannel$FailedChannelUnsafe].<init>(io.netty.bootstrap.FailedChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.FailedChannel$FailedChannelUnsafe:101,1"
      Dst: "[io.netty.bootstrap.FailedChannel$FailedChannelUnsafe].<init>(io.netty.bootstrap.FailedChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttTopicSubscription].<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttQoS)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttTopicSubscription"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.mqtt.MqttQoS"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].onlyFromQos(io.netty.handler.codec.mqtt.MqttQoS)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttTopicSubscription:30,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttTopicSubscription:32,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].onlyFromQos(io.netty.handler.codec.mqtt.MqttQoS)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttTopicSubscription].<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttSubscriptionOption)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttTopicSubscription"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.mqtt.MqttSubscriptionOption"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttTopicSubscription:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttTopicSubscription].topicName()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttTopicSubscription"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttTopicSubscription].qualityOfService()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttTopicSubscription"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttQoS"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].qos()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttTopicSubscription:45,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].qos()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttTopicSubscription].option()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttTopicSubscription"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttSubscriptionOption"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttTopicSubscription].toString()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttTopicSubscription"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 60
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 14
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttTopicSubscription:54,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttTopicSubscription:54,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttTopicSubscription:55,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.mqtt.MqttTopicSubscription:56,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttTopicSubscription:57,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttTopicSubscription:59,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpHeaderDateFormat$HttpHeaderDateFormatObsolete2].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.HttpHeaderDateFormat$HttpHeaderDateFormatObsolete2"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.util.TimeZone].getTimeZone(java.lang.String)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpHeaderDateFormat$HttpHeaderDateFormatObsolete2:100,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "io.netty.handler.codec.http.HttpHeaderDateFormat$HttpHeaderDateFormatObsolete2:101,1"
      Dst: "[java.util.TimeZone].getTimeZone(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpHeaderDateFormat$HttpHeaderDateFormatObsolete2:101,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler].<init>(io.netty.handler.codec.http.HttpServerCodec,io.netty.handler.codec.http.HttpServerUpgradeHandler,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpServerCodec"
    - "io.netty.handler.codec.http.HttpServerUpgradeHandler"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:59,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:60,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].name()"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelHandlerContext].name()"
    - "[io.netty.channel.ChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    functionUses: 3
    ICount: 10
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:67,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:68,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].name()"
    - Src: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:68,1"
      Dst: "[io.netty.channel.ChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 97
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.channel.AbstractChannelHandlerContext:java.lang.Math].min(int,int)"
    - "[io.netty.buffer.ByteBufUtil].equals(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].name()"
    - "[io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler$PriorKnowledgeUpgradeEvent].access$000()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.ChannelHandlerContext].name()"
    - "[io.netty.channel.ChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    functionUses: 1
    ICount: 32
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:81"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:83"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:78,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:79,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:81,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:81,1"
      Dst: "[io.netty.buffer.ByteBufUtil].equals(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:83,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:83,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:91,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].name()"
    - Src: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:91,1"
      Dst: "[io.netty.channel.ChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:94,1"
      Dst: "[io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler$PriorKnowledgeUpgradeEvent].access$000()"
    - Src: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler:94,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.ByteBufUtil].equals(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 357
    functionLinenumberEnd: 399
    functionDepth: 1
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.SwappedByteBuf].order()"
    - "[io.netty.buffer.EmptyByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLong(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLong(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLong(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].order()"
    - "[io.netty.buffer.ByteBuf].getLong(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 4
    ICount: 62
    EdgeCount: 172
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:365"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:366"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:365"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:365"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:369"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:368"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.ByteBufUtil:372"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:381"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:380"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:373"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:373"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:372"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:374"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:381"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:390"
        BranchSideFuncs:
        - "getLong(int)"
        - "swapLong(long)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:389"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:382"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:390"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:398"
        BranchSideFuncs:
        - "getByte(int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:397"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:391"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:358,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil:361,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil:365,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.buffer.ByteBufUtil:372,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    - Src: "io.netty.buffer.ByteBufUtil:374,1"
      Dst: "[io.netty.buffer.ByteBuf].getLong(int)"
    - Src: "io.netty.buffer.ByteBufUtil:382,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    - Src: "io.netty.buffer.ByteBufUtil:391,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 6
  - functionName: "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 663
    functionLinenumberEnd: 665
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].reverseBytes(long)"
    functionUses: 9
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:664,1"
      Dst: "[java.lang.Long].reverseBytes(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler$PriorKnowledgeUpgradeEvent].access$000()"
    functionSourceFile: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler$PriorKnowledgeUpgradeEvent"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler$PriorKnowledgeUpgradeEvent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspHeaderNames].<init>()"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspHeaderNames"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspHeaderNames:206,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor$2].run()"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor$2"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 233
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].setContextClassLoader(java.lang.ClassLoader)"
    - "[jdk.internal.misc.InnocuousThread].setContextClassLoader(java.lang.ClassLoader)"
    functionUses: 4
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.GlobalEventExecutor$2:231,1"
      Dst: "[java.lang.Thread].setContextClassLoader(java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>()"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.util.Date,java.util.Date,java.lang.String,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:90,1"
      Dst: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.util.Date,java.util.Date,java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.util.Date,java.util.Date)"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Date"
    - "java.util.Date"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.util.Date,java.util.Date,java.lang.String,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:102,1"
      Dst: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.util.Date,java.util.Date,java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.util.Date,java.util.Date,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Date"
    - "java.util.Date"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.util.Date,java.util.Date,java.lang.String,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:115,1"
      Dst: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.util.Date,java.util.Date,java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.util.Date,java.util.Date,java.lang.String,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:125,1"
      Dst: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.util.Date,java.util.Date,java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.util.Date,java.util.Date,java.lang.String,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:136,1"
      Dst: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.util.Date,java.util.Date,java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.util.Date,java.util.Date)"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.util.Date"
    - "java.util.Date"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].current()"
    - "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.security.SecureRandom,int,java.util.Date,java.util.Date,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:150,1"
      Dst: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].current()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:150,1"
      Dst: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.security.SecureRandom,int,java.util.Date,java.util.Date,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.util.Date,java.util.Date,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.util.Date"
    - "java.util.Date"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].current()"
    - "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.security.SecureRandom,int,java.util.Date,java.util.Date,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:166,1"
      Dst: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].current()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:166,1"
      Dst: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.security.SecureRandom,int,java.util.Date,java.util.Date,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.security.SecureRandom,int)"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.security.SecureRandom"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.security.SecureRandom,int,java.util.Date,java.util.Date,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:179,1"
      Dst: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.security.SecureRandom,int,java.util.Date,java.util.Date,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.security.SecureRandom,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.security.SecureRandom"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.security.SecureRandom,int,java.util.Date,java.util.Date,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:192,1"
      Dst: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.security.SecureRandom,int,java.util.Date,java.util.Date,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.security.SecureRandom,int,java.util.Date,java.util.Date)"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.security.SecureRandom"
    - "int"
    - "java.util.Date"
    - "java.util.Date"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.security.SecureRandom,int,java.util.Date,java.util.Date,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:207,1"
      Dst: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.security.SecureRandom,int,java.util.Date,java.util.Date,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].<init>(java.lang.String,java.security.SecureRandom,int,java.util.Date,java.util.Date,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.security.SecureRandom"
    - "int"
    - "java.util.Date"
    - "java.util.Date"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.security.KeyPairGenerator].getInstance(java.lang.String)"
    - "[java.security.KeyPairGenerator].initialize(int,java.security.SecureRandom)"
    - "[java.security.KeyPairGenerator].generateKeyPair()"
    - "[java.lang.Error].<init>(java.lang.Throwable)"
    - "[io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator].generate(java.lang.String,java.security.KeyPair,java.security.SecureRandom,java.util.Date,java.util.Date,java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.handler.ssl.util.OpenJdkSelfSignedCertGenerator].generate(java.lang.String,java.security.KeyPair,java.security.SecureRandom,java.util.Date,java.util.Date,java.lang.String)"
    - "[java.security.cert.CertificateException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.security.KeyPair].getPrivate()"
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[java.security.cert.CertificateFactory].getInstance(java.lang.String)"
    - "[java.security.cert.CertificateFactory].generateCertificate(java.io.InputStream)"
    - "[java.io.FileInputStream].close()"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.security.cert.CertificateEncodingException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 101
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.util.SelfSignedCertificate:223"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:229"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:228"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.SelfSignedCertificate:223"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:229"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:228"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.SelfSignedCertificate:267"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:277"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:276"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.SelfSignedCertificate:271"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:269"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:268"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.SelfSignedCertificate:267"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:276"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:275"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.SelfSignedCertificate:271"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:276"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:275"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:221,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:223,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:224,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:224,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:224,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:224,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:229,1"
      Dst: "[java.security.KeyPairGenerator].getInstance(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:230,1"
      Dst: "[java.security.KeyPairGenerator].initialize(int,java.security.SecureRandom)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:231,1"
      Dst: "[java.security.KeyPairGenerator].generateKeyPair()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:234,1"
      Dst: "[java.lang.Error].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:240,1"
      Dst: "[io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator].generate(java.lang.String,java.security.KeyPair,java.security.SecureRandom,java.util.Date,java.util.Date,java.lang.String)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:243,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:246,1"
      Dst: "[io.netty.handler.ssl.util.OpenJdkSelfSignedCertGenerator].generate(java.lang.String,java.security.KeyPair,java.security.SecureRandom,java.util.Date,java.util.Date,java.lang.String)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:249,1"
      Dst: "[java.security.cert.CertificateException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:252,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:257,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:259,1"
      Dst: "[java.security.KeyPair].getPrivate()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:262,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:263,1"
      Dst: "[java.security.cert.CertificateFactory].getInstance(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:263,1"
      Dst: "[java.security.cert.CertificateFactory].generateCertificate(java.io.InputStream)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:269,1"
      Dst: "[java.io.FileInputStream].close()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:271,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:272,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:272,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:265,1"
      Dst: "[java.security.cert.CertificateEncodingException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 20
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].certificate()"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].privateKey()"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].cert()"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.cert.X509Certificate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].key()"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.PrivateKey"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].delete()"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SelfSignedCertificate].safeDelete(java.io.File)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:311,1"
      Dst: "[io.netty.handler.ssl.util.SelfSignedCertificate].safeDelete(java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].safeDelete(java.io.File)"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].delete()"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.util.SelfSignedCertificate:388"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:393"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:392"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.SelfSignedCertificate:389"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:393"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:392"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:388,1"
      Dst: "[java.io.File].delete()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:389,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:390,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:390,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:390,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:390,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:390,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].newSelfSignedCertificate(java.lang.String,java.security.PrivateKey,java.security.cert.X509Certificate)"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "java.lang.String[]"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.security.PrivateKey"
    - "java.security.cert.X509Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Key].getEncoded()"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.util.internal.PlatformDependent].createTempFile(java.lang.String,java.lang.String,java.io.File)"
    - "[java.io.File].deleteOnExit()"
    - "[java.io.FileOutputStream].<init>(java.io.File)"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.io.OutputStream].write(byte[])"
    - "[java.io.OutputStream].close()"
    - "[io.netty.handler.ssl.util.SelfSignedCertificate].safeClose(java.io.File,java.io.OutputStream)"
    - "[io.netty.handler.ssl.util.SelfSignedCertificate].safeDelete(java.io.File)"
    - "[java.security.cert.Certificate].getEncoded()"
    - "[java.io.File].getPath()"
    functionUses: 0
    ICount: 100
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.util.SelfSignedCertificate:346"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:352"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:351"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.SelfSignedCertificate:346"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:350"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:349"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.SelfSignedCertificate:377"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:384"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:383"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.SelfSignedCertificate:377"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:382"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:381"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:318,1"
      Dst: "[java.security.Key].getEncoded()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:318,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:322,1"
      Dst: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:324,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:324,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:325,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:325,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:328,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:335,1"
      Dst: "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:337,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:337,1"
      Dst: "[io.netty.util.internal.PlatformDependent].createTempFile(java.lang.String,java.lang.String,java.io.File)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:338,1"
      Dst: "[java.io.File].deleteOnExit()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:340,1"
      Dst: "[java.io.FileOutputStream].<init>(java.io.File)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:342,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:342,1"
      Dst: "[java.io.OutputStream].write(byte[])"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:343,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:347,1"
      Dst: "[io.netty.handler.ssl.util.SelfSignedCertificate].safeClose(java.io.File,java.io.OutputStream)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:348,1"
      Dst: "[io.netty.handler.ssl.util.SelfSignedCertificate].safeDelete(java.io.File)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:352,1"
      Dst: "[java.security.cert.Certificate].getEncoded()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:384,1"
      Dst: "[java.io.File].getPath()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      - "java.security.cert.CertificateEncodingException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,boolean,io.netty.handler.codec.base64.Base64Dialect)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:74,1"
      Dst: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,boolean,io.netty.handler.codec.base64.Base64Dialect)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,boolean,io.netty.handler.codec.base64.Base64Dialect)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 83
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    - "io.netty.handler.codec.base64.Base64Dialect"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,int,int,boolean,io.netty.handler.codec.base64.Base64Dialect)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:78,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.base64.Base64:80,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.base64.Base64:80,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.base64.Base64:80,1"
      Dst: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,int,int,boolean,io.netty.handler.codec.base64.Base64Dialect)"
    - Src: "io.netty.handler.codec.base64.Base64:81,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.base64.Base64:81,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,int,int,boolean,io.netty.handler.codec.base64.Base64Dialect)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "boolean"
    - "io.netty.handler.codec.base64.Base64Dialect"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].alloc()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].alloc()"
    - "[io.netty.buffer.DuplicatedByteBuf].alloc()"
    - "[io.netty.buffer.SwappedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].alloc()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.WrappedByteBuf].alloc()"
    - "[io.netty.buffer.SlicedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].alloc()"
    - "[io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,int,int,boolean,io.netty.handler.codec.base64.Base64Dialect,io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.buffer.ByteBuf].alloc()"
    functionUses: 2
    ICount: 8
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:100,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    - Src: "io.netty.handler.codec.base64.Base64:100,1"
      Dst: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,int,int,boolean,io.netty.handler.codec.base64.Base64Dialect,io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,int,int,boolean,io.netty.handler.codec.base64.Base64Dialect,io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 137
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 6
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "boolean"
    - "io.netty.handler.codec.base64.Base64Dialect"
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.SwappedByteBuf:io.netty.handler.codec.base64.Base64].encodedBufferSize(int,boolean)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.handler.codec.base64.Base64].alphabet(io.netty.handler.codec.base64.Base64Dialect)"
    - "[io.netty.handler.codec.base64.Base64].encode3to4(io.netty.buffer.ByteBuf,int,int,io.netty.buffer.ByteBuf,int,byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setByte(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].slice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].slice(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].slice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].slice(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice(int,int)"
    - "[io.netty.handler.codec.base64.Base64].encodedBufferSize(int,boolean)"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].order()"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.ByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].slice(int,int)"
    functionUses: 2
    ICount: 44
    EdgeCount: 94
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.base64.Base64:114"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.base64.Base64:125"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.base64.Base64:119"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64:114"
        BranchSideFuncs:
        - "setByte(int,int)"
      - BranchSide: "io.netty.handler.codec.base64.Base64:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.base64.Base64:119"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64:114"
        BranchSideFuncs:
        - "setByte(int,int)"
      - BranchSide: "io.netty.handler.codec.base64.Base64:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.base64.Base64:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64:132"
        BranchSideFuncs:
        - "encode3to4(io.netty.buffer.ByteBuf,int,int,io.netty.buffer.ByteBuf,int,byte[])"
      - BranchSide: "io.netty.handler.codec.base64.Base64:131"
        BranchSideFuncs:
        - "getByte(int)"
    - Branch String: "io.netty.handler.codec.base64.Base64:132"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64:136"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.base64.Base64:135"
        BranchSideFuncs:
        - "slice(int,int)"
    - Branch String: "io.netty.handler.codec.base64.Base64:132"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64:136"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.base64.Base64:135"
        BranchSideFuncs:
        - "slice(int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:105,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.base64.Base64:108,1"
      Dst: "[io.netty.handler.codec.base64.Base64].encodedBufferSize(int,boolean)"
    - Src: "io.netty.handler.codec.base64.Base64:108,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.base64.Base64:108,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    - Src: "io.netty.handler.codec.base64.Base64:108,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.handler.codec.base64.Base64:109,1"
      Dst: "[io.netty.handler.codec.base64.Base64].alphabet(io.netty.handler.codec.base64.Base64Dialect)"
    - Src: "io.netty.handler.codec.base64.Base64:115,1"
      Dst: "[io.netty.handler.codec.base64.Base64].encode3to4(io.netty.buffer.ByteBuf,int,int,io.netty.buffer.ByteBuf,int,byte[])"
    - Src: "io.netty.handler.codec.base64.Base64:120,1"
      Dst: "[io.netty.buffer.ByteBuf].setByte(int,int)"
    - Src: "io.netty.handler.codec.base64.Base64:132,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    - Src: "io.netty.handler.codec.base64.Base64:136,1"
      Dst: "[io.netty.buffer.ByteBuf].slice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.base64.Base64].encodedBufferSize(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 196
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.base64.Base64:191"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64:195"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.base64.Base64:194"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.base64.Base64:195"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64:194"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.base64.Base64].alphabet(io.netty.handler.codec.base64.Base64Dialect)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.base64.Base64Dialect"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:54,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].encode3to4(io.netty.buffer.ByteBuf,int,int,io.netty.buffer.ByteBuf,int,byte[])"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 182
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.SwappedByteBuf].order()"
    - "[io.netty.buffer.EmptyByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.handler.codec.base64.Base64].toInt(byte)"
    - "[io.netty.buffer.SwappedByteBuf].getShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShort(int)"
    - "[io.netty.handler.codec.base64.Base64].toIntBE(short)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].getMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].getMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].getMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].getMedium(int)"
    - "[io.netty.handler.codec.base64.Base64].toIntBE(int)"
    - "[io.netty.handler.codec.base64.Base64].encode3to4BigEndian(int,int,io.netty.buffer.ByteBuf,int,byte[])"
    - "[io.netty.handler.codec.base64.Base64].toIntLE(short)"
    - "[io.netty.handler.codec.base64.Base64].toIntLE(int)"
    - "[io.netty.handler.codec.base64.Base64].encode3to4LittleEndian(int,int,io.netty.buffer.ByteBuf,int,byte[])"
    - "[io.netty.buffer.ByteBuf].order()"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].getShort(int)"
    - "[io.netty.buffer.ByteBuf].getMedium(int)"
    functionUses: 2
    ICount: 39
    EdgeCount: 122
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.base64.Base64:152"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64:167"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.base64.Base64:162"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64:161"
        BranchSideFuncs:
        - "toIntBE(int)"
    - Branch String: "io.netty.handler.codec.base64.Base64:176"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64:175"
        BranchSideFuncs:
        - "getMedium(int)"
        - "toIntLE(int)"
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:152,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    - Src: "io.netty.handler.codec.base64.Base64:156,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    - Src: "io.netty.handler.codec.base64.Base64:156,1"
      Dst: "[io.netty.handler.codec.base64.Base64].toInt(byte)"
    - Src: "io.netty.handler.codec.base64.Base64:159,1"
      Dst: "[io.netty.buffer.ByteBuf].getShort(int)"
    - Src: "io.netty.handler.codec.base64.Base64:159,1"
      Dst: "[io.netty.handler.codec.base64.Base64].toIntBE(short)"
    - Src: "io.netty.handler.codec.base64.Base64:162,1"
      Dst: "[io.netty.buffer.ByteBuf].getMedium(int)"
    - Src: "io.netty.handler.codec.base64.Base64:162,1"
      Dst: "[io.netty.handler.codec.base64.Base64].toIntBE(int)"
    - Src: "io.netty.handler.codec.base64.Base64:165,1"
      Dst: "[io.netty.handler.codec.base64.Base64].encode3to4BigEndian(int,int,io.netty.buffer.ByteBuf,int,byte[])"
    - Src: "io.netty.handler.codec.base64.Base64:173,1"
      Dst: "[io.netty.handler.codec.base64.Base64].toIntLE(short)"
    - Src: "io.netty.handler.codec.base64.Base64:176,1"
      Dst: "[io.netty.handler.codec.base64.Base64].toIntLE(int)"
    - Src: "io.netty.handler.codec.base64.Base64:179,1"
      Dst: "[io.netty.handler.codec.base64.Base64].encode3to4LittleEndian(int,int,io.netty.buffer.ByteBuf,int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.base64.Base64].toInt(byte)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].toIntBE(short)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].toIntBE(int)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].encode3to4BigEndian(int,int,io.netty.buffer.ByteBuf,int,byte[])"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 220
    functionLinenumberEnd: 245
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setInt(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ByteBuf].setInt(int,int)"
    functionUses: 1
    ICount: 62
    EdgeCount: 66
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:223,1"
      Dst: "[io.netty.buffer.ByteBuf].setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.base64.Base64].toIntLE(short)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 208
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].toIntLE(int)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 216
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].encode3to4LittleEndian(int,int,io.netty.buffer.ByteBuf,int,byte[])"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 248
    functionLinenumberEnd: 273
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setInt(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ByteBuf].setInt(int,int)"
    functionUses: 1
    ICount: 60
    EdgeCount: 66
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:251,1"
      Dst: "[io.netty.buffer.ByteBuf].setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.util.SelfSignedCertificate].safeClose(java.io.File,java.io.OutputStream)"
    functionSourceFile: "io.netty.handler.ssl.util.SelfSignedCertificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].close()"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.util.SelfSignedCertificate:399"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:403"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SelfSignedCertificate:402"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:397,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:399,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:400,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:400,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:400,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:400,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.util.SelfSignedCertificate:400,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.TcpDnsQueryDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsQueryDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.TcpDnsQueryDecoder].<init>(io.netty.handler.codec.dns.DnsRecordDecoder,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryDecoder:32,1"
      Dst: "[io.netty.handler.codec.dns.TcpDnsQueryDecoder].<init>(io.netty.handler.codec.dns.DnsRecordDecoder,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.TcpDnsQueryDecoder].<init>(io.netty.handler.codec.dns.DnsRecordDecoder,int)"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsQueryDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecordDecoder"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].<init>(int,int,int,int,int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryDecoder:39,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].<init>(int,int,int,int,int)"
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryDecoder:40,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.TcpDnsQueryDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsQueryDecoder"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionDepth: 7
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.TcpDnsQueryDecoder$1].<init>(io.netty.handler.codec.dns.TcpDnsQueryDecoder)"
    - "[io.netty.handler.codec.dns.DnsMessageUtil].decodeDnsQuery(io.netty.handler.codec.dns.DnsRecordDecoder,io.netty.buffer.ByteBuf,io.netty.handler.codec.dns.DnsMessageUtil$DnsQueryFactory)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice()"
    - "[io.netty.buffer.SwappedByteBuf].slice()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice()"
    - "[io.netty.buffer.AbstractByteBuf].slice()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice()"
    - "[io.netty.buffer.WrappedByteBuf].slice()"
    - "[io.netty.buffer.UnreleasableByteBuf].slice()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice()"
    - "[io.netty.buffer.EmptyByteBuf].slice()"
    - "[io.netty.buffer.ByteBuf].slice()"
    functionUses: 1
    ICount: 13
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.TcpDnsQueryDecoder:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.TcpDnsQueryDecoder:50"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.TcpDnsQueryDecoder:49"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.dns.TcpDnsQueryDecoder)"
        - "decodeDnsQuery(io.netty.handler.codec.dns.DnsRecordDecoder,io.netty.buffer.ByteBuf,io.netty.handler.codec.dns.DnsMessageUtil$DnsQueryFactory)"
        - "slice()"
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryDecoder:45,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryDecoder:50,1"
      Dst: "[io.netty.buffer.ByteBuf].slice()"
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryDecoder:50,1"
      Dst: "[io.netty.handler.codec.dns.TcpDnsQueryDecoder$1].<init>(io.netty.handler.codec.dns.TcpDnsQueryDecoder)"
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryDecoder:50,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].decodeDnsQuery(io.netty.handler.codec.dns.DnsRecordDecoder,io.netty.buffer.ByteBuf,io.netty.handler.codec.dns.DnsMessageUtil$DnsQueryFactory)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.LengthFieldBasedFrameDecoder"
    linkageType: ""
    functionLinenumber: 397
    functionLinenumberEnd: 444
    functionDepth: 6
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].discardingTooLongFrame(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].getUnadjustedFrameLength(io.netty.buffer.ByteBuf,int,int,java.nio.ByteOrder)"
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].failOnNegativeLengthField(io.netty.buffer.ByteBuf,long,int)"
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].failOnFrameLengthLessThanLengthFieldEndOffset(io.netty.buffer.ByteBuf,long,int)"
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].exceededFrameLength(io.netty.buffer.ByteBuf,long)"
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].failOnFrameLengthLessThanInitialBytesToStrip(io.netty.buffer.ByteBuf,long,int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.dns.TcpDnsResponseDecoder].extractFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.marshalling.MarshallingDecoder].extractFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].extractFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 5
    ICount: 68
    EdgeCount: 49
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:399"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:428"
        BranchSideFuncs:
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:401"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:405"
        BranchSideFuncs:
        - "discardingTooLongFrame(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:404"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:405"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:409"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:408"
        BranchSideFuncs:
        - "getUnadjustedFrameLength(io.netty.buffer.ByteBuf,int,int,java.nio.ByteOrder)"
    - Branch String: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:412"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:416"
        BranchSideFuncs:
        - "failOnNegativeLengthField(io.netty.buffer.ByteBuf,long,int)"
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:415"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:418"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:422"
        BranchSideFuncs:
        - "failOnFrameLengthLessThanLengthFieldEndOffset(io.netty.buffer.ByteBuf,long,int)"
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:421"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:422"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:427"
        BranchSideFuncs:
        - "exceededFrameLength(io.netty.buffer.ByteBuf,long)"
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:426"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:429"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:432"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:431"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:432"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:435"
        BranchSideFuncs:
        - "failOnFrameLengthLessThanInitialBytesToStrip(io.netty.buffer.ByteBuf,long,int)"
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:434"
        BranchSideFuncs:
        - "readerIndex()"
        - "readerIndex(int)"
        - "skipBytes(int)"
        - "extractFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:402,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].discardingTooLongFrame(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:405,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:409,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:410,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].getUnadjustedFrameLength(io.netty.buffer.ByteBuf,int,int,java.nio.ByteOrder)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:413,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].failOnNegativeLengthField(io.netty.buffer.ByteBuf,long,int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:419,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].failOnFrameLengthLessThanLengthFieldEndOffset(io.netty.buffer.ByteBuf,long,int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:423,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].exceededFrameLength(io.netty.buffer.ByteBuf,long)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:433,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].failOnFrameLengthLessThanInitialBytesToStrip(io.netty.buffer.ByteBuf,long,int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:435,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:440,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].extractFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:441,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].discardingTooLongFrame(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.LengthFieldBasedFrameDecoder"
    linkageType: ""
    functionLinenumber: 339
    functionLinenumberEnd: 348
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(long,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].failIfNecessary(boolean)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:341,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:341,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:342,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:346,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].failIfNecessary(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].failIfNecessary(boolean)"
    functionSourceFile: "io.netty.handler.codec.LengthFieldBasedFrameDecoder"
    linkageType: ""
    functionLinenumber: 480
    functionLinenumberEnd: 497
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].fail(long)"
    functionUses: 2
    ICount: 19
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:481"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:491"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:487"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:488"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:487"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:487"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:490"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:489"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:492"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:496"
        BranchSideFuncs:
        - "fail(long)"
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:495"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:492"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:496"
        BranchSideFuncs:
        - "fail(long)"
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:495"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:488,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].fail(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].fail(long)"
    functionSourceFile: "io.netty.handler.codec.LengthFieldBasedFrameDecoder"
    linkageType: ""
    functionLinenumber: 505
    functionLinenumberEnd: 512
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 27
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:506"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:511"
        BranchSideFuncs:
        - "append(long)"
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:510"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
    Callsites:
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:507,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:507,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:507,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:507,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:507,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:507,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.TooLongFrameException"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    functionUses: 17
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.TooLongFrameException:43,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].getUnadjustedFrameLength(io.netty.buffer.ByteBuf,int,int,java.nio.ByteOrder)"
    functionSourceFile: "io.netty.handler.codec.LengthFieldBasedFrameDecoder"
    linkageType: ""
    functionLinenumber: 454
    functionLinenumberEnd: 478
    functionDepth: 2
    returnType: "long"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "java.nio.ByteOrder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.SlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLong(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLong(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLong(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getLong(int)"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.ByteBuf].getLong(int)"
    functionUses: 1
    ICount: 31
    EdgeCount: 82
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:455,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:459,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:462,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedShort(int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:465,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedMedium(int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:468,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedInt(int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:471,1"
      Dst: "[io.netty.buffer.ByteBuf].getLong(int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:474,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:474,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:474,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:474,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:474,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].failOnNegativeLengthField(io.netty.buffer.ByteBuf,long,int)"
    functionSourceFile: "io.netty.handler.codec.LengthFieldBasedFrameDecoder"
    linkageType: ""
    functionLinenumber: 349
    functionLinenumberEnd: 352
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:350,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:351,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:351,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:351,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:351,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:351,1"
      Dst: "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.CorruptedFrameException"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    functionUses: 13
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CorruptedFrameException:43,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].failOnFrameLengthLessThanLengthFieldEndOffset(io.netty.buffer.ByteBuf,long,int)"
    functionSourceFile: "io.netty.handler.codec.LengthFieldBasedFrameDecoder"
    linkageType: ""
    functionLinenumber: 357
    functionLinenumberEnd: 360
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:358,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:359,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:359,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:359,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:359,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:359,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:359,1"
      Dst: "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].exceededFrameLength(io.netty.buffer.ByteBuf,long)"
    functionSourceFile: "io.netty.handler.codec.LengthFieldBasedFrameDecoder"
    linkageType: ""
    functionLinenumber: 364
    functionLinenumberEnd: 379
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].failIfNecessary(boolean)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:368"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:372"
        BranchSideFuncs:
        - "readableBytes()"
        - "skipBytes(int)"
    Callsites:
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:365,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:370,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:377,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].failIfNecessary(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].failOnFrameLengthLessThanInitialBytesToStrip(io.netty.buffer.ByteBuf,long,int)"
    functionSourceFile: "io.netty.handler.codec.LengthFieldBasedFrameDecoder"
    linkageType: ""
    functionLinenumber: 382
    functionLinenumberEnd: 385
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:383,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:384,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:384,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:384,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:384,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:384,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:384,1"
      Dst: "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].extractFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.LengthFieldBasedFrameDecoder"
    linkageType: ""
    functionLinenumber: 501
    functionLinenumberEnd: 503
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedSlice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:502,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.TcpDnsQueryDecoder$1].<init>(io.netty.handler.codec.dns.TcpDnsQueryDecoder)"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsQueryDecoder$1"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.TcpDnsQueryDecoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryDecoder$1:50,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsMessageUtil].decodeDnsQuery(io.netty.handler.codec.dns.DnsRecordDecoder,io.netty.buffer.ByteBuf,io.netty.handler.codec.dns.DnsMessageUtil$DnsQueryFactory)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsMessageUtil"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 201
    functionDepth: 5
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecordDecoder"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.dns.DnsMessageUtil$DnsQueryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsMessageUtil].newQuery(io.netty.buffer.ByteBuf,io.netty.handler.codec.dns.DnsMessageUtil$DnsQueryFactory)"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.dns.DnsMessageUtil].decodeQuestions(io.netty.handler.codec.dns.DnsRecordDecoder,io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.dns.DnsMessageUtil].decodeRecords(io.netty.handler.codec.dns.DnsRecordDecoder,io.netty.handler.codec.dns.DnsQuery,io.netty.handler.codec.dns.DnsSection,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.util.AbstractReferenceCounted].release()"
    - "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 2
    ICount: 24
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:197"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:183"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:182"
        BranchSideFuncs:
        - "newQuery(io.netty.buffer.ByteBuf,io.netty.handler.codec.dns.DnsMessageUtil$DnsQueryFactory)"
        - "decodeQuestions(io.netty.handler.codec.dns.DnsRecordDecoder,io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf,int)"
        - "readUnsignedShort()"
        - "decodeRecords(io.netty.handler.codec.dns.DnsRecordDecoder,io.netty.handler.codec.dns.DnsQuery,io.netty.handler.codec.dns.DnsSection,io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:197"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:200"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:199"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:183,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].newQuery(io.netty.buffer.ByteBuf,io.netty.handler.codec.dns.DnsMessageUtil$DnsQueryFactory)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:186,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:190,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].decodeQuestions(io.netty.handler.codec.dns.DnsRecordDecoder,io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:191,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].decodeRecords(io.netty.handler.codec.dns.DnsRecordDecoder,io.netty.handler.codec.dns.DnsQuery,io.netty.handler.codec.dns.DnsSection,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:198,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DnsMessageUtil].newQuery(io.netty.buffer.ByteBuf,io.netty.handler.codec.dns.DnsMessageUtil$DnsQueryFactory)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsMessageUtil"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 214
    functionDepth: 4
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.dns.DnsMessageUtil$DnsQueryFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.dns.TcpDnsQueryDecoder$1].newQuery(int,io.netty.handler.codec.dns.DnsOpCode)"
    - "[io.netty.handler.codec.dns.DatagramDnsQueryDecoder$1].newQuery(int,io.netty.handler.codec.dns.DnsOpCode)"
    - "[io.netty.handler.codec.dns.DnsOpCode].valueOf(int)"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].setRecursionDesired(boolean)"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].setRecursionDesired(boolean)"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].setZ(int)"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].setZ(int)"
    - "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.dns.DnsMessageUtil$DnsQueryFactory].newQuery(int,io.netty.handler.codec.dns.DnsOpCode)"
    - "[io.netty.handler.codec.dns.DnsQuery].setRecursionDesired(boolean)"
    - "[io.netty.handler.codec.dns.DnsQuery].setZ(int)"
    functionUses: 1
    ICount: 26
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:210"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:209"
        BranchSideFuncs:
        - "newQuery(int,io.netty.handler.codec.dns.DnsOpCode)"
        - "setRecursionDesired(boolean)"
        - "valueOf(int)"
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:211"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:210"
        BranchSideFuncs:
        - "setRecursionDesired(boolean)"
        - "setZ(int)"
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:209"
        BranchSideFuncs:
        - "newQuery(int,io.netty.handler.codec.dns.DnsOpCode)"
        - "setRecursionDesired(boolean)"
        - "valueOf(int)"
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:204,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:207,1"
      Dst: "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:210,1"
      Dst: "[io.netty.handler.codec.dns.DnsOpCode].valueOf(int)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:210,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil$DnsQueryFactory].newQuery(int,io.netty.handler.codec.dns.DnsOpCode)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:211,1"
      Dst: "[io.netty.handler.codec.dns.DnsQuery].setRecursionDesired(boolean)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:212,1"
      Dst: "[io.netty.handler.codec.dns.DnsQuery].setZ(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DnsOpCode].valueOf(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsOpCode"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 73
    functionDepth: 3
    returnType: "io.netty.handler.codec.dns.DnsOpCode"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsOpCode].<init>(int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsOpCode:72,1"
      Dst: "[io.netty.handler.codec.dns.DnsOpCode].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsOpCode].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsOpCode"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsOpCode].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsOpCode:80,1"
      Dst: "[io.netty.handler.codec.dns.DnsOpCode].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsOpCode].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsOpCode"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 87
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 6
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsOpCode:83,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.dns.DnsOpCode:85,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsMessageUtil].decodeQuestions(io.netty.handler.codec.dns.DnsRecordDecoder,io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsMessageUtil"
    linkageType: ""
    functionLinenumber: 217
    functionLinenumberEnd: 222
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecordDecoder"
    - "io.netty.handler.codec.dns.DnsQuery"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    - "[io.netty.handler.codec.dns.DefaultDnsRecordDecoder].decodeQuestion(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DnsRecordDecoder].decodeQuestion(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DnsQuery].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:218"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:219,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecordDecoder].decodeQuestion(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:219,1"
      Dst: "[io.netty.handler.codec.dns.DnsQuery].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DnsMessageUtil].decodeRecords(io.netty.handler.codec.dns.DnsRecordDecoder,io.netty.handler.codec.dns.DnsQuery,io.netty.handler.codec.dns.DnsSection,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsMessageUtil"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 233
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecordDecoder"
    - "io.netty.handler.codec.dns.DnsQuery"
    - "io.netty.handler.codec.dns.DnsSection"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsRecordDecoder].decodeRecord(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    - "[io.netty.handler.codec.dns.DnsRecordDecoder].decodeRecord(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DnsQuery].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionUses: 3
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:232"
        BranchSideFuncs:
        - "decodeRecord(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:231"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:227"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:226,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecordDecoder].decodeRecord(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:230,1"
      Dst: "[io.netty.handler.codec.dns.DnsQuery].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1].<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:89,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1].onStreamAdded(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$000(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$100()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:94,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$000(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:94,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$100()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:94,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$000(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Connection$PropertyKey"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$100()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1].onStreamActive(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.Http2Stream,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$000(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$200(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:101,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$000(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:101,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$200(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:101,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.Http2Stream,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:101,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$200(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.Http2Stream,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState"
    linkageType: ""
    functionLinenumber: 355
    functionLinenumberEnd: 361
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    - "io.netty.handler.codec.http2.Http2Stream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].window(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$600(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:356,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:358,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].window(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:359,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$600(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].window(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState"
    linkageType: ""
    functionLinenumber: 363
    functionLinenumberEnd: 367
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$400(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    functionUses: 1
    ICount: 19
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:364"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:365"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:364"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:364"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:365"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:364"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:364"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:365"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:364"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:364,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$400(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:364,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:364,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:364,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$400(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$600(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "float"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1].onStreamClosed(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 127
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$300(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$2].unconsumedBytes()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$400(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$500(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState,int)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$000(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$100()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].unconsumedBytes()"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    - "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    functionUses: 1
    ICount: 34
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:124"
        BranchSideFuncs:
        - "access$500(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState,int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:123"
        BranchSideFuncs:
        - "access$100()"
        - "access$000(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
        - "setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:124"
        BranchSideFuncs:
        - "access$500(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState,int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:123"
        BranchSideFuncs:
        - "access$100()"
        - "access$000(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
        - "setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:123"
        BranchSideFuncs:
        - "access$100()"
        - "access$000(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
        - "setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:109,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$300(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:110,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].unconsumedBytes()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:111,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$400(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:112,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$500(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:115,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:124,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$000(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:124,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$100()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:124,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1:119,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$300(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:44,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 292
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:291,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$500(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    - "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].consumeAllBytes(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:44,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].consumeAllBytes(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState,int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].consumeAllBytes(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].connectionState()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].consumeBytes(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$AutoRefillState].consumeBytes(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$2].consumeBytes(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].consumeBytes(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:198,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].connectionState()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:198,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].consumeBytes(int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].connectionState()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 288
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].connectionStream()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http2.Http2Connection].connectionStream()"
    - "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:287,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].connectionStream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:287,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StatePseudoTimeComparator].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StatePseudoTimeComparator"
    linkageType: ""
    functionLinenumber: 420
    functionLinenumberEnd: 422
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StatePseudoTimeComparator:421,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StatePseudoTimeComparator].compare(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StatePseudoTimeComparator"
    linkageType: ""
    functionLinenumber: 427
    functionLinenumberEnd: 429
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.MathUtil].compare(long,long)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StatePseudoTimeComparator:428,1"
      Dst: "[io.netty.util.internal.MathUtil].compare(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.MathUtil].compare(long,long)"
    functionSourceFile: "io.netty.util.internal.MathUtil"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.MathUtil:93"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MathUtil:92"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MathUtil:93"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MathUtil:92"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StatePseudoTimeComparator].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StatePseudoTimeComparator"
    linkageType: ""
    functionLinenumber: 420
    functionLinenumberEnd: 422
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StatePseudoTimeComparator].compare(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StatePseudoTimeComparator:421,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StatePseudoTimeComparator].compare(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf$1].<init>()"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf$1"
    linkageType: ""
    functionLinenumber: 1645
    functionLinenumberEnd: 1647
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf$1:1646,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf$1"
    linkageType: ""
    functionLinenumber: 1648
    functionLinenumberEnd: 1650
    functionDepth: 6
    returnType: "io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.buffer.ByteBufUtil$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf$1:1649,1"
      Dst: "[io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.buffer.ByteBufUtil$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.buffer.ByteBufUtil$1)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf"
    linkageType: ""
    functionLinenumber: 1642
    functionLinenumberEnd: 1644
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    - "io.netty.buffer.ByteBufUtil$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf:1643,1"
      Dst: "[io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf"
    linkageType: ""
    functionLinenumber: 1661
    functionLinenumberEnd: 1665
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$ThreadLocalDirectByteBuf:1662,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 66
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].<init>(int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeDirectByteBuf].allocateDirect(int)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf].allocateDirect(int)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf].allocateDirect(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].allocateDirect(int)"
    - "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].allocateDirect(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByteBuffer(java.nio.ByteBuffer,boolean)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByteBuffer(java.nio.ByteBuffer,boolean)"
    functionUses: 4
    ICount: 22
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:58"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:63"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:62"
        BranchSideFuncs:
        - "setByteBuffer(java.nio.ByteBuffer,boolean)"
        - "allocateDirect(int)"
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:54,1"
      Dst: "[io.netty.buffer.AbstractReferenceCountedByteBuf].<init>(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:55,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:56,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:60,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:59,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:59,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:64,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].allocateDirect(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:64,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].setByteBuffer(java.nio.ByteBuffer,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].allocateDirect(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocateDirect(int)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:104,1"
      Dst: "[java.nio.ByteBuffer].allocateDirect(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectCleaner$2].<init>(java.lang.Thread)"
    functionSourceFile: "io.netty.util.internal.ObjectCleaner$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Thread"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectCleaner$2:110,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectCleaner$2].run()"
    functionSourceFile: "io.netty.util.internal.ObjectCleaner$2"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].setContextClassLoader(java.lang.ClassLoader)"
    - "[jdk.internal.misc.InnocuousThread].setContextClassLoader(java.lang.ClassLoader)"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectCleaner$2:113,1"
      Dst: "[java.lang.Thread].setContextClassLoader(java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedSocketAddress].<init>()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedSocketAddress"
    linkageType: ""
    functionLinenumber: 19
    functionLinenumberEnd: 21
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.SocketAddress].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedSocketAddress:20,1"
      Dst: "[java.net.SocketAddress].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedSocketAddress].toString()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedSocketAddress"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageAggregator].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:39,1"
      Dst: "[io.netty.handler.codec.MessageAggregator].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isStartMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:43"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:43"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isContentMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isLastContentMessage(io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isContentMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:54"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:53"
        BranchSideFuncs:
        - "isContentMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
        - "isFinalFragment()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:54"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:53"
        BranchSideFuncs:
        - "isContentMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
        - "isFinalFragment()"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:54,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isContentMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:54,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isAggregated(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 64
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isContentMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isStartMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    functionUses: 1
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:59"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:63"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:62"
        BranchSideFuncs:
        - "isStartMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
        - "isContentMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:59"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:62"
        BranchSideFuncs:
        - "isStartMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
        - "isContentMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:62"
        BranchSideFuncs:
        - "isStartMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
        - "isContentMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:59,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:60,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isContentMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:63,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isStartMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isContentLengthInvalid(io.netty.handler.codec.http.websocketx.WebSocketFrame,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].newContinueResponse(io.netty.handler.codec.http.websocketx.WebSocketFrame,int,io.netty.channel.ChannelPipeline)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    - "int"
    - "io.netty.channel.ChannelPipeline"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].closeAfterContinueResponse(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:78,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].ignoreContentAfterContinueResponse(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:83,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].beginAggregation(io.netty.handler.codec.http.websocketx.WebSocketFrame,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 98
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    - "[io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - "[java.lang.Error].<init>()"
    functionUses: 1
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:88"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:91"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:97"
        BranchSideFuncs:
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
        - "rsv()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:96"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:89,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:89,1"
      Dst: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:93,1"
      Dst: "[io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:97,1"
      Dst: "[java.lang.Error].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:87,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame:54,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].beginAggregation(java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBufHolder"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].beginAggregation(io.netty.handler.codec.http.websocketx.WebSocketFrame,io.netty.buffer.ByteBuf)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:29,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].beginAggregation(io.netty.handler.codec.http.websocketx.WebSocketFrame,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].newContinueResponse(java.lang.Object,int,io.netty.channel.ChannelPipeline)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "int"
    - "io.netty.channel.ChannelPipeline"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].newContinueResponse(io.netty.handler.codec.http.websocketx.WebSocketFrame,int,io.netty.channel.ChannelPipeline)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:29,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].newContinueResponse(io.netty.handler.codec.http.websocketx.WebSocketFrame,int,io.netty.channel.ChannelPipeline)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isContentLengthInvalid(java.lang.Object,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isContentLengthInvalid(io.netty.handler.codec.http.websocketx.WebSocketFrame,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:29,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isContentLengthInvalid(io.netty.handler.codec.http.websocketx.WebSocketFrame,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isAggregated(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isAggregated(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:29,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isAggregated(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isLastContentMessage(io.netty.buffer.ByteBufHolder)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isLastContentMessage(io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:29,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isLastContentMessage(io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isContentMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isContentMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:29,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isContentMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isStartMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isStartMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator:29,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrameAggregator].isStartMessage(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].<init>()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].<init>(com.barchart.udt.TypeUDT)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:57,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].<init>(com.barchart.udt.TypeUDT)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].<init>(io.netty.channel.Channel,com.barchart.udt.nio.SocketChannelUDT)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 84
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "com.barchart.udt.nio.SocketChannelUDT"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioByteChannel].<init>(io.netty.channel.Channel,java.nio.channels.SelectableChannel)"
    - "[com.barchart.udt.nio.SocketChannelUDT].configureBlocking(boolean)"
    - "[com.barchart.udt.StatusUDT].ordinal()"
    - "[com.barchart.udt.nio.SocketChannelUDT].socketUDT()"
    - "[com.barchart.udt.SocketUDT].status()"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].<init>(io.netty.channel.udt.UdtChannel,com.barchart.udt.nio.ChannelUDT,boolean)"
    - "[com.barchart.udt.nio.SocketChannelUDT].close()"
    - "[io.netty.util.internal.logging.JdkLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger:io.netty.util.internal.logging.LocationAwareSlf4JLogger:io.netty.util.internal.logging.Log4JLogger:io.netty.util.internal.logging.Slf4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 35
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:77"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:81"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
      - BranchSide: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:80"
        BranchSideFuncs:
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:61,1"
      Dst: "[io.netty.channel.nio.AbstractNioByteChannel].<init>(io.netty.channel.Channel,java.nio.channels.SelectableChannel)"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:63,1"
      Dst: "[com.barchart.udt.nio.SocketChannelUDT].configureBlocking(boolean)"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:64,1"
      Dst: "[com.barchart.udt.nio.SocketChannelUDT].socketUDT()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:64,1"
      Dst: "[com.barchart.udt.SocketUDT].status()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:64,1"
      Dst: "[com.barchart.udt.StatusUDT].ordinal()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:67,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].<init>(io.netty.channel.udt.UdtChannel,com.barchart.udt.nio.ChannelUDT,boolean)"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:75,1"
      Dst: "[com.barchart.udt.nio.SocketChannelUDT].close()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:77,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:78,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:81,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].<init>(com.barchart.udt.nio.SocketChannelUDT)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 88
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.barchart.udt.nio.SocketChannelUDT"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].<init>(io.netty.channel.Channel,com.barchart.udt.nio.SocketChannelUDT)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:86,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].<init>(io.netty.channel.Channel,com.barchart.udt.nio.SocketChannelUDT)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].<init>(com.barchart.udt.TypeUDT)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.barchart.udt.TypeUDT"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].<init>(com.barchart.udt.nio.SocketChannelUDT)"
    - "[io.netty.channel.udt.nio.NioUdtProvider].newConnectorChannelUDT(com.barchart.udt.TypeUDT)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:90,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtProvider].newConnectorChannelUDT(com.barchart.udt.TypeUDT)"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:90,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].<init>(com.barchart.udt.nio.SocketChannelUDT)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 55
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].privilegedBind(com.barchart.udt.nio.SocketChannelUDT,java.net.SocketAddress)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:100,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:100,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].privilegedBind(com.barchart.udt.nio.SocketChannelUDT,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionDepth: 0
    returnType: "com.barchart.udt.nio.SocketChannelUDT"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].javaChannel()"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:175,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].javaChannel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].privilegedBind(com.barchart.udt.nio.SocketChannelUDT,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 212
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.barchart.udt.nio.SocketChannelUDT"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel$1].<init>(com.barchart.udt.nio.SocketChannelUDT,java.net.SocketAddress)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel$1].run()"
    - "[java.security.PrivilegedActionException].getCause()"
    functionUses: 1
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:201,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel$1].<init>(com.barchart.udt.nio.SocketChannelUDT,java.net.SocketAddress)"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:201,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:209,1"
      Dst: "[java.security.PrivilegedActionException].getCause()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel$1].<init>(com.barchart.udt.nio.SocketChannelUDT,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel$1"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 202
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.barchart.udt.nio.SocketChannelUDT"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel$1:201,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].doClose()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - "[com.barchart.udt.nio.SocketChannelUDT].close()"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:105,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:105,1"
      Dst: "[com.barchart.udt.nio.SocketChannelUDT].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 126
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].<init>(int)"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].doBind(java.net.SocketAddress)"
    - "[io.netty.util.internal.SocketUtils].connect(java.nio.channels.SocketChannel,java.net.SocketAddress)"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - "[io.netty.channel.nio.AbstractNioChannel].selectionKey()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].doClose()"
    - "[java.nio.channels.SelectionKey].interestOps()"
    - "[java.nio.channels.SelectionKey].interestOps(int)"
    functionUses: 1
    ICount: 29
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:111"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:111"
        BranchSideFuncs:
        - "<init>(int)"
        - "connect(java.nio.channels.SocketChannel,java.net.SocketAddress)"
        - "javaChannel()"
        - "doBind(java.net.SocketAddress)"
      - BranchSide: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:110"
        BranchSideFuncs:
        - "<init>(int)"
        - "doBind(java.net.SocketAddress)"
    - Branch String: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:115"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:119"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:118"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:122"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:119"
        BranchSideFuncs:
        - "doClose()"
      - BranchSide: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:118"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:122"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:125"
        BranchSideFuncs:
        - "doClose()"
      - BranchSide: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:111,1"
      Dst: "[java.net.InetSocketAddress].<init>(int)"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:111,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].doBind(java.net.SocketAddress)"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:114,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:114,1"
      Dst: "[io.netty.util.internal.SocketUtils].connect(java.nio.channels.SocketChannel,java.net.SocketAddress)"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:116,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].selectionKey()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:117,1"
      Dst: "[java.nio.channels.SelectionKey].interestOps()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:116,1"
      Dst: "[java.nio.channels.SelectionKey].interestOps(int)"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:123,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].doClose()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.internal.SocketUtils].connect(java.nio.channels.SocketChannel,java.net.SocketAddress)"
    functionSourceFile: "io.netty.util.internal.SocketUtils"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 96
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.nio.channels.SocketChannel"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils$3].<init>(java.nio.channels.SocketChannel,java.net.SocketAddress)"
    - "[java.lang.Boolean].booleanValue()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - "[io.netty.util.internal.SocketUtils$3].run()"
    - "[java.security.PrivilegedActionException].getCause()"
    functionUses: 3
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils:88,1"
      Dst: "[io.netty.util.internal.SocketUtils$3].<init>(java.nio.channels.SocketChannel,java.net.SocketAddress)"
    - Src: "io.netty.util.internal.SocketUtils:88,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - Src: "io.netty.util.internal.SocketUtils:88,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.util.internal.SocketUtils:95,1"
      Dst: "[java.security.PrivilegedActionException].getCause()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$3].<init>(java.nio.channels.SocketChannel,java.net.SocketAddress)"
    functionSourceFile: "io.netty.util.internal.SocketUtils$3"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.SocketChannel"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$3:88,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].doDisconnect()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].doClose()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:130,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].doClose()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].doFinishConnect()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 143
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - "[io.netty.channel.nio.AbstractNioChannel].selectionKey()"
    - "[java.lang.Error].<init>(java.lang.String)"
    - "[com.barchart.udt.nio.SocketChannelUDT].finishConnect()"
    - "[java.nio.channels.SelectionKey].interestOps()"
    - "[java.nio.channels.SelectionKey].interestOps(int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:135"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:139"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:138"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:135,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:135,1"
      Dst: "[com.barchart.udt.nio.SocketChannelUDT].finishConnect()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:136,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].selectionKey()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:137,1"
      Dst: "[java.nio.channels.SelectionKey].interestOps()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:136,1"
      Dst: "[java.nio.channels.SelectionKey].interestOps(int)"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:139,1"
      Dst: "[java.lang.Error].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 149
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].attemptedBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].attemptedBytesRead(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].attemptedBytesRead()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].attemptedBytesRead()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.channel.Channel$Unsafe].recvBufAllocHandle()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].attemptedBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].attemptedBytesRead()"
    - "[io.netty.buffer.ByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:146,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:146,1"
      Dst: "[io.netty.channel.Channel$Unsafe].recvBufAllocHandle()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:147,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:147,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].attemptedBytesRead(int)"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:148,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:148,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].attemptedBytesRead()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:148,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].doWriteBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:153,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:154,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:154,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].shutdownInput()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.channel.AbstractChannel].newFailedFuture(java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:159,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:159,1"
      Dst: "[io.netty.channel.AbstractChannel].newFailedFuture(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].doWriteFileRegion(io.netty.channel.FileRegion)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.channel.FileRegion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:164,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 171
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - "[com.barchart.udt.nio.SocketChannelUDT].isOpen()"
    - "[com.barchart.udt.nio.SocketChannelUDT].isConnectFinished()"
    functionUses: 35
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:170"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:168"
        BranchSideFuncs:
        - "javaChannel()"
    - Branch String: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:170"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:168"
        BranchSideFuncs:
        - "javaChannel()"
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:169,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:170,1"
      Dst: "[com.barchart.udt.nio.SocketChannelUDT].isOpen()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:170,1"
      Dst: "[com.barchart.udt.nio.SocketChannelUDT].isConnectFinished()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionDepth: 1
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - "[com.barchart.udt.nio.SocketChannelUDT].socket()"
    - "[com.barchart.udt.nio.NioSocketUDT].getLocalSocketAddress()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:180,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:180,1"
      Dst: "[com.barchart.udt.nio.SocketChannelUDT].socket()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:180,1"
      Dst: "[com.barchart.udt.nio.NioSocketUDT].getLocalSocketAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].remoteAddress0()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionDepth: 1
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - "[com.barchart.udt.nio.SocketChannelUDT].socket()"
    - "[com.barchart.udt.nio.NioSocketUDT].getRemoteSocketAddress()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:185,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:185,1"
      Dst: "[com.barchart.udt.nio.SocketChannelUDT].socket()"
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:185,1"
      Dst: "[com.barchart.udt.nio.NioSocketUDT].getRemoteSocketAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].localAddress()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:190,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 196
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel:195,1"
      Dst: "[io.netty.channel.AbstractChannel].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteAcceptorChannel].<init>()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteAcceptorChannel"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].<init>(com.barchart.udt.TypeUDT)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteAcceptorChannel:31,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].<init>(com.barchart.udt.TypeUDT)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteAcceptorChannel].newConnectorChannel(com.barchart.udt.nio.SocketChannelUDT)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteAcceptorChannel"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 7
    returnType: "io.netty.channel.udt.UdtChannel"
    argCount: 1
    argTypes:
    - "com.barchart.udt.nio.SocketChannelUDT"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].<init>(io.netty.channel.Channel,com.barchart.udt.nio.SocketChannelUDT)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteAcceptorChannel:36,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].<init>(io.netty.channel.Channel,com.barchart.udt.nio.SocketChannelUDT)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].<init>(io.netty.channel.udt.UdtChannel,com.barchart.udt.nio.ChannelUDT,boolean)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 73
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.udt.UdtChannel"
    - "com.barchart.udt.nio.ChannelUDT"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].apply(com.barchart.udt.nio.ChannelUDT)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].apply(com.barchart.udt.nio.ChannelUDT)"
    functionUses: 5
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:69"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:72"
        BranchSideFuncs:
        - "apply(com.barchart.udt.nio.ChannelUDT)"
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:68,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:70,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].apply(com.barchart.udt.nio.ChannelUDT)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel,io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator].<init>()"
    functionUses: 9
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:75,1"
      Dst: "[io.netty.channel.AdaptiveRecvByteBufAllocator].<init>()"
    - Src: "io.netty.channel.DefaultChannelConfig:75,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel,io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AdaptiveRecvByteBufAllocator].<init>()"
    functionSourceFile: "io.netty.channel.AdaptiveRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator].<init>(int,int,int)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AdaptiveRecvByteBufAllocator:158,1"
      Dst: "[io.netty.channel.AdaptiveRecvByteBufAllocator].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AdaptiveRecvByteBufAllocator].<init>(int,int,int)"
    functionSourceFile: "io.netty.channel.AdaptiveRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 193
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator].getSizeTableIndex(int)"
    functionUses: 1
    ICount: 42
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.channel.AdaptiveRecvByteBufAllocator:170"
      Branch Sides:
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:173"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.AdaptiveRecvByteBufAllocator:173"
      Branch Sides:
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:177"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.AdaptiveRecvByteBufAllocator:178"
      Branch Sides:
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:181"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:180"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.AdaptiveRecvByteBufAllocator:185"
      Branch Sides:
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:188"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:187"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.AdaptiveRecvByteBufAllocator:168,1"
      Dst: "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator].<init>()"
    - Src: "io.netty.channel.AdaptiveRecvByteBufAllocator:169,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.channel.AdaptiveRecvByteBufAllocator:171,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.AdaptiveRecvByteBufAllocator:171,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.AdaptiveRecvByteBufAllocator:171,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.AdaptiveRecvByteBufAllocator:171,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.AdaptiveRecvByteBufAllocator:171,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.channel.AdaptiveRecvByteBufAllocator:177,1"
      Dst: "[io.netty.channel.AdaptiveRecvByteBufAllocator].getSizeTableIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.AdaptiveRecvByteBufAllocator].getSizeTableIndex(int)"
    functionSourceFile: "io.netty.channel.AdaptiveRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.AdaptiveRecvByteBufAllocator:72"
      Branch Sides:
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:75"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:74"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.AdaptiveRecvByteBufAllocator:75"
      Branch Sides:
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:79"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:78"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.AdaptiveRecvByteBufAllocator:82"
      Branch Sides:
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:84"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:83"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.AdaptiveRecvByteBufAllocator:84"
      Branch Sides:
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:86"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:85"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.AdaptiveRecvByteBufAllocator:86"
      Branch Sides:
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:89"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.AdaptiveRecvByteBufAllocator:88"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel,io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].metadata()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].metadata()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].metadata()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].metadata()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].metadata()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].metadata()"
    - "[io.netty.channel.nio.AbstractNioByteChannel].metadata()"
    - "[io.netty.channel.kqueue.AbstractKQueueDatagramChannel].metadata()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].metadata()"
    - "[io.netty.channel.oio.AbstractOioByteChannel].metadata()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].metadata()"
    - "[io.netty.bootstrap.FailedChannel].metadata()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].metadata()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].metadata()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].metadata()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].metadata()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].metadata()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].metadata()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].metadata()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].metadata()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].metadata()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].metadata()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].metadata()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].metadata()"
    - "[io.netty.channel.local.LocalChannel].metadata()"
    - "[io.netty.channel.AbstractServerChannel].metadata()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].metadata()"
    - "[io.netty.channel.embedded.EmbeddedChannel].metadata()"
    - "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator,io.netty.channel.ChannelMetadata)"
    - "[io.netty.channel.Channel].metadata()"
    functionUses: 1
    ICount: 20
    EdgeCount: 30
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:78,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.DefaultChannelConfig:79,1"
      Dst: "[io.netty.channel.Channel].metadata()"
    - Src: "io.netty.channel.DefaultChannelConfig:79,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator,io.netty.channel.ChannelMetadata)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator,io.netty.channel.ChannelMetadata)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 323
    functionLinenumberEnd: 331
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    - "io.netty.channel.ChannelMetadata"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.ChannelMetadata].defaultMaxMessagesPerRead()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator].maxMessagesPerRead(int)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2StreamChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.MaxMessagesRecvByteBufAllocator].maxMessagesPerRead(int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelConfig:326"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:329"
        BranchSideFuncs:
        - "maxMessagesPerRead(int)"
        - "defaultMaxMessagesPerRead()"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:328"
        BranchSideFuncs:
        - "setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:324,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelConfig:327,1"
      Dst: "[io.netty.channel.ChannelMetadata].defaultMaxMessagesPerRead()"
    - Src: "io.netty.channel.DefaultChannelConfig:327,1"
      Dst: "[io.netty.channel.MaxMessagesRecvByteBufAllocator].maxMessagesPerRead(int)"
    - Src: "io.netty.channel.DefaultChannelConfig:329,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelMetadata].defaultMaxMessagesPerRead()"
    functionSourceFile: "io.netty.channel.ChannelMetadata"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].apply(com.barchart.udt.nio.ChannelUDT)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 92
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.barchart.udt.nio.ChannelUDT"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].isReuseAddress()"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].getSendBufferSize()"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].getSoLinger()"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].getProtocolReceiveBufferSize()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].getProtocolSendBufferSize()"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].getSystemReceiveBufferSize()"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].getSystemSendBufferSize()"
    - "[com.barchart.udt.nio.ChannelUDT].socketUDT()"
    - "[com.barchart.udt.SocketUDT].setReuseAddress(boolean)"
    - "[com.barchart.udt.SocketUDT].setSendBufferSize(int)"
    - "[com.barchart.udt.SocketUDT].setSoLinger(boolean,int)"
    - "[com.barchart.udt.SocketUDT].setOption(com.barchart.udt.OptionUDT,java.lang.Object)"
    functionUses: 1
    ICount: 30
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:78"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:81"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:80"
        BranchSideFuncs:
        - "getSoLinger()"
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:75,1"
      Dst: "[com.barchart.udt.nio.ChannelUDT].socketUDT()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:76,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].isReuseAddress()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:76,1"
      Dst: "[com.barchart.udt.SocketUDT].setReuseAddress(boolean)"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:77,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].getSendBufferSize()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:77,1"
      Dst: "[com.barchart.udt.SocketUDT].setSendBufferSize(int)"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:78,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].getSoLinger()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:79,1"
      Dst: "[com.barchart.udt.SocketUDT].setSoLinger(boolean,int)"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:84,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].getProtocolReceiveBufferSize()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:84,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:83,1"
      Dst: "[com.barchart.udt.SocketUDT].setOption(com.barchart.udt.OptionUDT,java.lang.Object)"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:86,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].getProtocolSendBufferSize()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:88,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].getSystemReceiveBufferSize()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:90,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].getSystemSendBufferSize()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].isReuseAddress()"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].getSendBufferSize()"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].getSoLinger()"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].getProtocolReceiveBufferSize()"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].getProtocolSendBufferSize()"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].getSystemReceiveBufferSize()"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].getSystemSendBufferSize()"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 243
    functionLinenumberEnd: 245
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].<init>(io.netty.channel.Channel,boolean)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.AbstractFuture].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.VoidChannelPromise$1].<init>(io.netty.channel.VoidChannelPromise)"
    functionUses: 4
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.VoidChannelPromise:41"
      Branch Sides:
      - BranchSide: "io.netty.channel.VoidChannelPromise:52"
        BranchSideFuncs:
        - "<init>(io.netty.channel.VoidChannelPromise)"
      - BranchSide: "io.netty.channel.VoidChannelPromise:51"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:38,1"
      Dst: "[io.netty.util.concurrent.AbstractFuture].<init>()"
    - Src: "io.netty.channel.VoidChannelPromise:39,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.VoidChannelPromise:42,1"
      Dst: "[io.netty.channel.VoidChannelPromise$1].<init>(io.netty.channel.VoidChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener<?\
      \ extends Future<? super Void>>)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionDepth: 1
    returnType: "io.netty.channel.VoidChannelPromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener<? extends Future<? super Void>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].fail()"
    functionUses: 129
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:58,1"
      Dst: "[io.netty.channel.VoidChannelPromise].fail()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].fail()"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:198,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.VoidChannelPromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].fail()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:64,1"
      Dst: "[io.netty.channel.VoidChannelPromise].fail()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].removeListener(io.netty.util.concurrent.GenericFutureListener<?\
      \ extends Future<? super Void>>)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "io.netty.channel.VoidChannelPromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener<? extends Future<? super Void>>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.VoidChannelPromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].await()"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "io.netty.channel.VoidChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].interrupted()"
    - "[java.lang.InterruptedException].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.VoidChannelPromise:82"
      Branch Sides:
      - BranchSide: "io.netty.channel.VoidChannelPromise:85"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.channel.VoidChannelPromise:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:82,1"
      Dst: "[java.lang.Thread].interrupted()"
    - Src: "io.netty.channel.VoidChannelPromise:83,1"
      Dst: "[java.lang.InterruptedException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].await(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].fail()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:90,1"
      Dst: "[io.netty.channel.VoidChannelPromise].fail()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].await(long)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].fail()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:96,1"
      Dst: "[io.netty.channel.VoidChannelPromise].fail()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].awaitUninterruptibly()"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 104
    functionDepth: 1
    returnType: "io.netty.channel.VoidChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].fail()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:102,1"
      Dst: "[io.netty.channel.VoidChannelPromise].fail()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].awaitUninterruptibly(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].fail()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:108,1"
      Dst: "[io.netty.channel.VoidChannelPromise].fail()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].awaitUninterruptibly(long)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].fail()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:114,1"
      Dst: "[io.netty.channel.VoidChannelPromise].fail()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].channel()"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionDepth: 0
    returnType: "io.netty.channel.Channel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 25
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].isDone()"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 74
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].isSuccess()"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 66
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].setUncancellable()"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 21
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].isCancellable()"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].isCancelled()"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].cause()"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 87
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].sync()"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.VoidChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].fail()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:155,1"
      Dst: "[io.netty.channel.VoidChannelPromise].fail()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].syncUninterruptibly()"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionDepth: 1
    returnType: "io.netty.channel.VoidChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].fail()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:161,1"
      Dst: "[io.netty.channel.VoidChannelPromise].fail()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionDepth: 1
    returnType: "io.netty.channel.VoidChannelPromise"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].fireException0(java.lang.Throwable)"
    functionUses: 126
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:167,1"
      Dst: "[io.netty.channel.VoidChannelPromise].fireException0(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].fireException0(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 234
    functionLinenumberEnd: 239
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isRegistered()"
    - "[io.netty.channel.AbstractChannel].isRegistered()"
    - "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.channel.Channel].isRegistered()"
    - "[io.netty.channel.Channel].pipeline()"
    - "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 3
    ICount: 11
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.VoidChannelPromise:235"
      Branch Sides:
      - BranchSide: "io.netty.channel.VoidChannelPromise:238"
        BranchSideFuncs:
        - "pipeline()"
        - "fireExceptionCaught(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.VoidChannelPromise:237"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.VoidChannelPromise:235"
      Branch Sides:
      - BranchSide: "io.netty.channel.VoidChannelPromise:238"
        BranchSideFuncs:
        - "pipeline()"
        - "fireExceptionCaught(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.VoidChannelPromise:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:235,1"
      Dst: "[io.netty.channel.Channel].isRegistered()"
    - Src: "io.netty.channel.VoidChannelPromise:236,1"
      Dst: "[io.netty.channel.Channel].pipeline()"
    - Src: "io.netty.channel.VoidChannelPromise:236,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.VoidChannelPromise].setSuccess()"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionDepth: 0
    returnType: "io.netty.channel.VoidChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 50
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].fireException0(java.lang.Throwable)"
    functionUses: 64
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:178,1"
      Dst: "[io.netty.channel.VoidChannelPromise].fireException0(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].cancel(boolean)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].trySuccess()"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Void)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionDepth: 0
    returnType: "io.netty.channel.VoidChannelPromise"
    argCount: 1
    argTypes:
    - "java.lang.Void"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].trySuccess(java.lang.Void)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Void"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].getNow()"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 25
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].unvoid()"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 217
    functionLinenumberEnd: 223
    functionDepth: 2
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPromise].<init>(io.netty.channel.Channel)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 14
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.VoidChannelPromise:219"
      Branch Sides:
      - BranchSide: "io.netty.channel.VoidChannelPromise:222"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
      - BranchSide: "io.netty.channel.VoidChannelPromise:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:218,1"
      Dst: "[io.netty.channel.DefaultChannelPromise].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.channel.VoidChannelPromise:220,1"
      Dst: "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.VoidChannelPromise].isVoid()"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 226
    functionLinenumberEnd: 228
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].trySuccess(java.lang.Object)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].trySuccess(java.lang.Void)"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:26,1"
      Dst: "[io.netty.channel.VoidChannelPromise].trySuccess(java.lang.Void)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Object)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Void)"
    functionUses: 40
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:26,1"
      Dst: "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Void)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise].access$000(io.netty.channel.VoidChannelPromise,java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.VoidChannelPromise"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].fireException0(java.lang.Throwable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise:27,1"
      Dst: "[io.netty.channel.VoidChannelPromise].fireException0(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.X509KeyManagerWrapper].<init>(javax.net.ssl.X509KeyManager)"
    functionSourceFile: "io.netty.handler.ssl.util.X509KeyManagerWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.X509KeyManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.X509ExtendedKeyManager].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.X509KeyManagerWrapper:35,1"
      Dst: "[javax.net.ssl.X509ExtendedKeyManager].<init>()"
    - Src: "io.netty.handler.ssl.util.X509KeyManagerWrapper:36,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.X509KeyManagerWrapper].getClientAliases(java.lang.String,java.security.Principal[])"
    functionSourceFile: "io.netty.handler.ssl.util.X509KeyManagerWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.security.Principal[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.X509KeyManager].getClientAliases(java.lang.String,java.security.Principal[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.X509KeyManagerWrapper:41,1"
      Dst: "[javax.net.ssl.X509KeyManager].getClientAliases(java.lang.String,java.security.Principal[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.X509KeyManagerWrapper].chooseClientAlias(java.lang.String[],java.security.Principal[],java.net.Socket)"
    functionSourceFile: "io.netty.handler.ssl.util.X509KeyManagerWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String[]"
    - "java.security.Principal[]"
    - "java.net.Socket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.X509KeyManager].chooseClientAlias(java.lang.String[],java.security.Principal[],java.net.Socket)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.X509KeyManagerWrapper:46,1"
      Dst: "[javax.net.ssl.X509KeyManager].chooseClientAlias(java.lang.String[],java.security.Principal[],java.net.Socket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.X509KeyManagerWrapper].getServerAliases(java.lang.String,java.security.Principal[])"
    functionSourceFile: "io.netty.handler.ssl.util.X509KeyManagerWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.security.Principal[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.X509KeyManager].getServerAliases(java.lang.String,java.security.Principal[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.X509KeyManagerWrapper:51,1"
      Dst: "[javax.net.ssl.X509KeyManager].getServerAliases(java.lang.String,java.security.Principal[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.X509KeyManagerWrapper].chooseServerAlias(java.lang.String,java.security.Principal[],java.net.Socket)"
    functionSourceFile: "io.netty.handler.ssl.util.X509KeyManagerWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.security.Principal[]"
    - "java.net.Socket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.X509KeyManager].chooseServerAlias(java.lang.String,java.security.Principal[],java.net.Socket)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.X509KeyManagerWrapper:56,1"
      Dst: "[javax.net.ssl.X509KeyManager].chooseServerAlias(java.lang.String,java.security.Principal[],java.net.Socket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.X509KeyManagerWrapper].getCertificateChain(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.util.X509KeyManagerWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.cert.X509Certificate[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.X509KeyManager].getCertificateChain(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.X509KeyManagerWrapper:61,1"
      Dst: "[javax.net.ssl.X509KeyManager].getCertificateChain(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.X509KeyManagerWrapper].getPrivateKey(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.util.X509KeyManagerWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.PrivateKey"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.X509KeyManager].getPrivateKey(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.X509KeyManagerWrapper:66,1"
      Dst: "[javax.net.ssl.X509KeyManager].getPrivateKey(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.X509KeyManagerWrapper].chooseEngineClientAlias(java.lang.String[],java.security.Principal[],javax.net.ssl.SSLEngine)"
    functionSourceFile: "io.netty.handler.ssl.util.X509KeyManagerWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String[]"
    - "java.security.Principal[]"
    - "javax.net.ssl.SSLEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.X509KeyManager].chooseClientAlias(java.lang.String[],java.security.Principal[],java.net.Socket)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.X509KeyManagerWrapper:71,1"
      Dst: "[javax.net.ssl.X509KeyManager].chooseClientAlias(java.lang.String[],java.security.Principal[],java.net.Socket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.X509KeyManagerWrapper].chooseEngineServerAlias(java.lang.String,java.security.Principal[],javax.net.ssl.SSLEngine)"
    functionSourceFile: "io.netty.handler.ssl.util.X509KeyManagerWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.security.Principal[]"
    - "javax.net.ssl.SSLEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.X509KeyManager].chooseServerAlias(java.lang.String,java.security.Principal[],java.net.Socket)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.X509KeyManagerWrapper:76,1"
      Dst: "[javax.net.ssl.X509KeyManager].chooseServerAlias(java.lang.String,java.security.Principal[],java.net.Socket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].<init>(io.netty.handler.codec.DefaultHeaders)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderIterator"
    linkageType: ""
    functionLinenumber: 1269
    functionLinenumberEnd: 1272
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.DefaultHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderIterator:1270,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderIterator"
    linkageType: ""
    functionLinenumber: 1274
    functionLinenumberEnd: 1276
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 227
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders$HeaderIterator:1275"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$HeaderIterator:1274"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderIterator"
    linkageType: ""
    functionLinenumber: 1279
    functionLinenumberEnd: 1287
    functionDepth: 0
    returnType: "java.util.Map$Entry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.NoSuchElementException].<init>()"
    functionUses: 229
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders$HeaderIterator:1282"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$HeaderIterator:1286"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$HeaderIterator:1285"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderIterator:1283,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].remove()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderIterator"
    linkageType: ""
    functionLinenumber: 1290
    functionLinenumberEnd: 1292
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderIterator:1291,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].<init>(io.netty.handler.codec.DefaultHeaders,io.netty.handler.codec.DefaultHeaders$1)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderIterator"
    linkageType: ""
    functionLinenumber: 1269
    functionLinenumberEnd: 1271
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.DefaultHeaders"
    - "io.netty.handler.codec.DefaultHeaders$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].<init>(io.netty.handler.codec.DefaultHeaders)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderIterator:1270,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].<init>(io.netty.handler.codec.DefaultHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$2].<init>(io.netty.handler.ssl.util.FingerprintTrustManagerFactory,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.util.FingerprintTrustManagerFactory"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$2:221,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$2].initialValue()"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$2"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 230
    functionDepth: 0
    returnType: "java.security.MessageDigest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.MessageDigest].getInstance(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$2:226,1"
      Dst: "[java.security.MessageDigest].getInstance(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$2:229,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$2:229,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxDeviceAddress].<init>(java.lang.String)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxDeviceAddress"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.SocketAddress].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxDeviceAddress:38,1"
      Dst: "[java.net.SocketAddress].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxDeviceAddress].value()"
    functionSourceFile: "io.netty.channel.rxtx.RxtxDeviceAddress"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$10].<init>(io.netty.handler.ssl.SslHandler,io.netty.util.concurrent.Future,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$10"
    linkageType: ""
    functionLinenumber: 2190
    functionLinenumberEnd: 2192
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.util.concurrent.Future"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$10:2191,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$10].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$10"
    linkageType: ""
    functionLinenumber: 2193
    functionLinenumberEnd: 2235
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cancel(boolean)"
    - "[io.netty.util.concurrent.CompleteFuture].cancel(boolean)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cancel(boolean)"
    - "[io.netty.channel.VoidChannelPromise].cancel(boolean)"
    - "[io.netty.handler.ssl.SslHandler].access$2600(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.handler.ssl.SslHandler].access$2500(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.handler.ssl.SslHandler].access$2700(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.handler.ssl.SslHandler$10$1].<init>(io.netty.handler.ssl.SslHandler$10,long)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.handler.ssl.SslHandler$10$2].<init>(io.netty.handler.ssl.SslHandler$10,io.netty.util.concurrent.Future)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.Future].cancel(boolean)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    functionUses: 1
    ICount: 36
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler$10:2194"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$10:2197"
        BranchSideFuncs:
        - "cancel(boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler$10:2196"
        BranchSideFuncs:
        - "access$2600(io.netty.handler.ssl.SslHandler)"
    - Branch String: "io.netty.handler.ssl.SslHandler$10:2198"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$10:2204"
        BranchSideFuncs:
        - "isDone()"
    - Branch String: "io.netty.handler.ssl.SslHandler$10:2205"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$10:2220"
        BranchSideFuncs:
        - "schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "<init>(io.netty.handler.ssl.SslHandler$10,long)"
        - "executor()"
      - BranchSide: "io.netty.handler.ssl.SslHandler$10:2219"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$10:2195,1"
      Dst: "[io.netty.util.concurrent.Future].cancel(boolean)"
    - Src: "io.netty.handler.ssl.SslHandler$10:2197,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$2600(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler$10:2201,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.ssl.SslHandler$10:2201,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler$10:2201,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$2500(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler$10:2205,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$2700(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler$10:2205,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - Src: "io.netty.handler.ssl.SslHandler$10:2206,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.ssl.SslHandler$10:2206,1"
      Dst: "[io.netty.handler.ssl.SslHandler$10$1].<init>(io.netty.handler.ssl.SslHandler$10,long)"
    - Src: "io.netty.handler.ssl.SslHandler$10:2206,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - Src: "io.netty.handler.ssl.SslHandler$10:2224,1"
      Dst: "[io.netty.handler.ssl.SslHandler$10$2].<init>(io.netty.handler.ssl.SslHandler$10,io.netty.util.concurrent.Future)"
    - Src: "io.netty.handler.ssl.SslHandler$10:2224,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.SslHandler].access$2600(io.netty.handler.ssl.SslHandler)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$2500(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].addCloseListener(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].addCloseListener(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].addCloseListener(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 2244
    functionLinenumberEnd: 2247
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseNotifier].cascade(boolean,io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:2245,1"
      Dst: "[io.netty.util.concurrent.PromiseNotifier].cascade(boolean,io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseNotifier].cascade(boolean,io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.util.concurrent.PromiseNotifier"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 113
    functionDepth: 3
    returnType: "io.netty.util.concurrent.Future"
    argCount: 3
    argTypes:
    - "boolean"
    - "io.netty.util.concurrent.Future"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseNotifier$1].<init>(io.netty.util.concurrent.Future)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.PromiseNotifier$2].<init>(boolean,io.netty.util.concurrent.Promise[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Future)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.CompleteFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 4
    ICount: 12
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseNotifier:94,1"
      Dst: "[io.netty.util.concurrent.PromiseNotifier$1].<init>(io.netty.util.concurrent.Future)"
    - Src: "io.netty.util.concurrent.PromiseNotifier:94,1"
      Dst: "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.util.concurrent.PromiseNotifier:102,1"
      Dst: "[io.netty.util.concurrent.PromiseNotifier$2].<init>(boolean,io.netty.util.concurrent.Promise[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Future)"
    - Src: "io.netty.util.concurrent.PromiseNotifier:102,1"
      Dst: "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseNotifier$1].<init>(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.util.concurrent.PromiseNotifier$1"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseNotifier$1:94,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseNotifier$2].<init>(boolean,io.netty.util.concurrent.Promise[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.util.concurrent.PromiseNotifier$2"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean"
    - "io.netty.util.concurrent.Promise[]"
    - "io.netty.util.concurrent.Promise"
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseNotifier].<init>(boolean,io.netty.util.concurrent.Promise[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseNotifier$2:102,1"
      Dst: "[io.netty.util.concurrent.PromiseNotifier].<init>(boolean,io.netty.util.concurrent.Promise[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseNotifier].<init>(boolean,io.netty.util.concurrent.Promise[])"
    functionSourceFile: "io.netty.util.concurrent.PromiseNotifier"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 63
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.util.concurrent.Promise[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 17
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.PromiseNotifier:57"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseNotifier:59"
        BranchSideFuncs:
        - "clone()"
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseNotifier:55,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.concurrent.PromiseNotifier:56,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.concurrent.PromiseNotifier:58,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.concurrent.PromiseNotifier:60,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ObjectUtil"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 10
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ObjectUtil:69"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectUtil:72"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.ObjectUtil:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectUtil:70,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.ObjectUtil:70,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:70,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.ObjectUtil:70,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.IllegalArgumentException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$2700(io.netty.handler.ssl.SslHandler)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslHandler$LazyChannelPromise"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].isDone()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 398
    functionLinenumberEnd: 400
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isDone0(java.lang.Object)"
    functionUses: 91
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:399,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].isDone0(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].isDone0(java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 828
    functionLinenumberEnd: 830
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:829"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:828"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:829"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:828"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.SslHandler$10$1].<init>(io.netty.handler.ssl.SslHandler$10,long)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$10$1"
    linkageType: ""
    functionLinenumber: 2205
    functionLinenumberEnd: 2207
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler$10"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$10$1:2206,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$10$2].<init>(io.netty.handler.ssl.SslHandler$10,io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$10$2"
    linkageType: ""
    functionLinenumber: 2223
    functionLinenumberEnd: 2225
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler$10"
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$10$2:2224,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$10].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$10"
    linkageType: ""
    functionLinenumber: 2190
    functionLinenumberEnd: 2192
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler$10].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$10:2191,1"
      Dst: "[io.netty.handler.ssl.SslHandler$10].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PromiseNotificationUtil].<init>()"
    functionSourceFile: "io.netty.util.internal.PromiseNotificationUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PromiseNotificationUtil:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PromiseNotificationUtil].tryCancel(io.netty.util.concurrent.Promise<?>,io.netty.util.internal.logging.InternalLogger)"
    functionSourceFile: "io.netty.util.internal.PromiseNotificationUtil"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.Promise<?>"
    - "io.netty.util.internal.logging.InternalLogger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cancel(boolean)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    - "[io.netty.channel.VoidChannelPromise].cancel(boolean)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.VoidChannelPromise:io.netty.util.internal.logging.Slf4JLogger].cause()"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.concurrent.Future].cancel(boolean)"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PromiseNotificationUtil:32"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:42"
        BranchSideFuncs:
        - "cause()"
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:41"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PromiseNotificationUtil:32"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:42"
        BranchSideFuncs:
        - "cause()"
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:41"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PromiseNotificationUtil:34"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:37"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:36"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "io.netty.util.internal.PromiseNotificationUtil:32,1"
      Dst: "[io.netty.util.concurrent.Future].cancel(boolean)"
    - Src: "io.netty.util.internal.PromiseNotificationUtil:33,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.util.internal.PromiseNotificationUtil:35,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.PromiseNotificationUtil:37,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.internal.PromiseNotificationUtil].tryFailure(io.netty.util.concurrent.Promise<?>,java.lang.Throwable,io.netty.util.internal.logging.InternalLogger)"
    functionSourceFile: "io.netty.util.internal.PromiseNotificationUtil"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 75
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.util.concurrent.Promise<?>"
    - "java.lang.Throwable"
    - "io.netty.util.internal.logging.InternalLogger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger:io.netty.util.internal.logging.LocationAwareSlf4JLogger:io.netty.util.internal.logging.Log4JLogger:io.netty.util.internal.logging.Slf4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.ThrowableUtil].stackTraceToString(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object[])"
    functionUses: 4
    ICount: 19
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PromiseNotificationUtil:64"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:74"
        BranchSideFuncs:
        - "cause()"
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:73"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PromiseNotificationUtil:64"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:74"
        BranchSideFuncs:
        - "cause()"
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:73"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PromiseNotificationUtil:66"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:68"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:67"
        BranchSideFuncs:
        - "isWarnEnabled()"
    - Branch String: "io.netty.util.internal.PromiseNotificationUtil:68"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:74"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.util.internal.PromiseNotificationUtil:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PromiseNotificationUtil:64,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.util.internal.PromiseNotificationUtil:65,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.util.internal.PromiseNotificationUtil:67,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.PromiseNotificationUtil:68,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.util.internal.PromiseNotificationUtil:71,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].stackTraceToString(java.lang.Throwable)"
    - Src: "io.netty.util.internal.PromiseNotificationUtil:69,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.internal.ThrowableUtil].stackTraceToString(java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.ThrowableUtil"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.io.PrintStream].<init>(java.io.OutputStream)"
    - "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    - "[java.io.PrintStream].flush()"
    - "[java.lang.String].<init>(byte[])"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.io.ByteArrayOutputStream].close()"
    functionUses: 3
    ICount: 19
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThrowableUtil:42,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "io.netty.util.internal.ThrowableUtil:43,1"
      Dst: "[java.io.PrintStream].<init>(java.io.OutputStream)"
    - Src: "io.netty.util.internal.ThrowableUtil:44,1"
      Dst: "[java.lang.Throwable].printStackTrace(java.io.PrintStream)"
    - Src: "io.netty.util.internal.ThrowableUtil:45,1"
      Dst: "[java.io.PrintStream].flush()"
    - Src: "io.netty.util.internal.ThrowableUtil:47,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "io.netty.util.internal.ThrowableUtil:47,1"
      Dst: "[java.lang.String].<init>(byte[])"
    - Src: "io.netty.util.internal.ThrowableUtil:50,1"
      Dst: "[java.io.ByteArrayOutputStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheServerCodec].<init>()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheServerCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheServerCodec].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheServerCodec:33,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheServerCodec].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheServerCodec].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheServerCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder].<init>(int)"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler].<init>(io.netty.channel.ChannelInboundHandler,io.netty.channel.ChannelOutboundHandler)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheServerCodec:37,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder].<init>(int)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheServerCodec:37,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder].<init>()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheServerCodec:37,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].<init>(io.netty.channel.ChannelInboundHandler,io.netty.channel.ChannelOutboundHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].<init>(io.netty.channel.rxtx.RxtxChannel)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.rxtx.RxtxChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].<init>(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:56,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:57,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:57,1"
      Dst: "[io.netty.channel.PreferHeapByteBufAllocator].<init>(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:57,1"
      Dst: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:62,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions()"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:62,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 93
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getBaudrate()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].isDtr()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].isRts()"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getStopbits()"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getDatabits()"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getParitybit()"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getWaitTimeMillis()"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getReadTimeout()"
    - "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 13
    ICount: 41
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:68"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:71"
        BranchSideFuncs:
        - "getBaudrate()"
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:70"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:71"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:74"
        BranchSideFuncs:
        - "isDtr()"
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:73"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:74"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:77"
        BranchSideFuncs:
        - "valueOf(boolean)"
        - "isRts()"
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:76"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:77"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:80"
        BranchSideFuncs:
        - "getStopbits()"
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:79"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:80"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:83"
        BranchSideFuncs:
        - "getDatabits()"
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:82"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:83"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:86"
        BranchSideFuncs:
        - "getParitybit()"
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:85"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:86"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:89"
        BranchSideFuncs:
        - "getWaitTimeMillis()"
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:88"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:89"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:92"
        BranchSideFuncs:
        - "valueOf(int)"
        - "getReadTimeout()"
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:91"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:69,1"
      Dst: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getBaudrate()"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:69,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:72,1"
      Dst: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].isDtr()"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:72,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:75,1"
      Dst: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].isRts()"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:78,1"
      Dst: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getStopbits()"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:81,1"
      Dst: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getDatabits()"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:84,1"
      Dst: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getParitybit()"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:87,1"
      Dst: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getWaitTimeMillis()"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:90,1"
      Dst: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getReadTimeout()"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:92,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getBaudrate()"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].isDtr()"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].isRts()"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getStopbits()"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionDepth: 0
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getDatabits()"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionDepth: 0
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig$Databits"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getParitybit()"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionDepth: 0
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getWaitTimeMillis()"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getReadTimeout()"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 207
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 119
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setBaudrate(int)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setDtr(boolean)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setRts(boolean)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setStopbits(io.netty.channel.rxtx.RxtxChannelConfig$Stopbits)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setDatabits(io.netty.channel.rxtx.RxtxChannelConfig$Databits)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setParitybit(io.netty.channel.rxtx.RxtxChannelConfig$Paritybit)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setWaitTimeMillis(int)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setReadTimeout(int)"
    - "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 2
    ICount: 52
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:99"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:101"
        BranchSideFuncs:
        - "setBaudrate(int)"
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:100"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:101"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:103"
        BranchSideFuncs:
        - "setDtr(boolean)"
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:103"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:105"
        BranchSideFuncs:
        - "booleanValue()"
        - "setRts(boolean)"
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:104"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:105"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:107"
        BranchSideFuncs:
        - "setStopbits(io.netty.channel.rxtx.RxtxChannelConfig$Stopbits)"
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:107"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:109"
        BranchSideFuncs:
        - "setDatabits(io.netty.channel.rxtx.RxtxChannelConfig$Databits)"
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:108"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:109"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:111"
        BranchSideFuncs:
        - "setParitybit(io.netty.channel.rxtx.RxtxChannelConfig$Paritybit)"
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:111"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:113"
        BranchSideFuncs:
        - "setWaitTimeMillis(int)"
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:112"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:113"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:116"
        BranchSideFuncs:
        - "intValue()"
        - "setReadTimeout(int)"
      - BranchSide: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:115"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:97,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:100,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:100,1"
      Dst: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setBaudrate(int)"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:102,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:102,1"
      Dst: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setDtr(boolean)"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:104,1"
      Dst: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setRts(boolean)"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:106,1"
      Dst: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setStopbits(io.netty.channel.rxtx.RxtxChannelConfig$Stopbits)"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:108,1"
      Dst: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setDatabits(io.netty.channel.rxtx.RxtxChannelConfig$Databits)"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:110,1"
      Dst: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setParitybit(io.netty.channel.rxtx.RxtxChannelConfig$Paritybit)"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:112,1"
      Dst: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setWaitTimeMillis(int)"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:114,1"
      Dst: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setReadTimeout(int)"
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:116,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 8
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setBaudrate(int)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setDtr(boolean)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionDepth: 0
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setRts(boolean)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionDepth: 0
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setStopbits(io.netty.channel.rxtx.RxtxChannelConfig$Stopbits)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setDatabits(io.netty.channel.rxtx.RxtxChannelConfig$Databits)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionDepth: 0
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.rxtx.RxtxChannelConfig$Databits"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setParitybit(io.netty.channel.rxtx.RxtxChannelConfig$Paritybit)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionDepth: 0
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setWaitTimeMillis(int)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 196
    functionDepth: 1
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:194,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setReadTimeout(int)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionDepth: 1
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:200,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 213
    functionDepth: 2
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:211,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 217
    functionLinenumberEnd: 220
    functionDepth: 2
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:218,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 223
    functionLinenumberEnd: 226
    functionDepth: 2
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:224,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 229
    functionLinenumberEnd: 232
    functionDepth: 2
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:230,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 235
    functionLinenumberEnd: 238
    functionDepth: 2
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:236,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 241
    functionLinenumberEnd: 244
    functionDepth: 2
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:242,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setAutoClose(boolean)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 250
    functionDepth: 1
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:248,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionDepth: 3
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:254,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 259
    functionLinenumberEnd: 262
    functionDepth: 3
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:260,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 265
    functionLinenumberEnd: 268
    functionDepth: 2
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:266,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.rxtx.DefaultRxtxChannelConfig"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 274
    functionDepth: 2
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.DefaultRxtxChannelConfig:272,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.CleanerJava9$1].<init>(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.util.internal.CleanerJava9$1"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.CleanerJava9$1:40,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.CleanerJava9$1].run()"
    functionSourceFile: "io.netty.util.internal.CleanerJava9$1"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    functionUses: 4
    ICount: 18
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.CleanerJava9$1:45,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.util.internal.CleanerJava9$1:45,1"
      Dst: "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - Src: "io.netty.util.internal.CleanerJava9$1:47,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZstdOptions].<init>(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.ZstdOptions"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.compression.Zstd].isAvailable()"
    - "[io.netty.handler.codec.compression.Zstd].cause()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZstdOptions:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZstdOptions:57"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZstdOptions:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZstdOptions:52,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.compression.ZstdOptions:53,1"
      Dst: "[io.netty.handler.codec.compression.Zstd].isAvailable()"
    - Src: "io.netty.handler.codec.compression.ZstdOptions:54,1"
      Dst: "[io.netty.handler.codec.compression.Zstd].cause()"
    - Src: "io.netty.handler.codec.compression.ZstdOptions:54,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.compression.ZstdOptions:57,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    - Src: "io.netty.handler.codec.compression.ZstdOptions:58,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZstdOptions].compressionLevel()"
    functionSourceFile: "io.netty.handler.codec.compression.ZstdOptions"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZstdOptions].blockSize()"
    functionSourceFile: "io.netty.handler.codec.compression.ZstdOptions"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZstdOptions].maxEncodeSize()"
    functionSourceFile: "io.netty.handler.codec.compression.ZstdOptions"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtilInitializations$NetworkIfaceAndInetAddress].<init>(java.net.NetworkInterface,java.net.InetAddress)"
    functionSourceFile: "io.netty.util.NetUtilInitializations$NetworkIfaceAndInetAddress"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 163
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtilInitializations$NetworkIfaceAndInetAddress:159,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtilInitializations$NetworkIfaceAndInetAddress].iface()"
    functionSourceFile: "io.netty.util.NetUtilInitializations$NetworkIfaceAndInetAddress"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionDepth: 0
    returnType: "java.net.NetworkInterface"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtilInitializations$NetworkIfaceAndInetAddress].address()"
    functionSourceFile: "io.netty.util.NetUtilInitializations$NetworkIfaceAndInetAddress"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "java.net.InetAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DatagramPacketEncoder].<init>(io.netty.handler.codec.MessageToMessageEncoder)"
    functionSourceFile: "io.netty.handler.codec.DatagramPacketEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.MessageToMessageEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:56,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:57,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DatagramPacketEncoder].acceptOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DatagramPacketEncoder"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].acceptOutboundMessage(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectEncoder].acceptOutboundMessage(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpResponseEncoder].acceptOutboundMessage(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateEncoder].acceptOutboundMessage(java.lang.Object)"
    - "[io.netty.handler.codec.rtsp.RtspEncoder].acceptOutboundMessage(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpRequestEncoder].acceptOutboundMessage(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateEncoder].acceptOutboundMessage(java.lang.Object)"
    - "[io.netty.handler.codec.MessageToMessageCodec$1].acceptOutboundMessage(java.lang.Object)"
    - "[io.netty.handler.codec.DatagramPacketEncoder].acceptOutboundMessage(java.lang.Object)"
    - "[io.netty.handler.codec.smtp.SmtpRequestEncoder].acceptOutboundMessage(java.lang.Object)"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].content()"
    - "[io.netty.channel.DefaultAddressedEnvelope:io.netty.handler.codec.dns.DatagramDnsQuery:io.netty.handler.codec.dns.DatagramDnsResponse:io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].sender()"
    - "[io.netty.channel.DefaultAddressedEnvelope:io.netty.handler.codec.dns.DatagramDnsQuery:io.netty.handler.codec.dns.DatagramDnsResponse:io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    - "[io.netty.channel.AddressedEnvelope].content()"
    - "[io.netty.channel.AddressedEnvelope].sender()"
    - "[io.netty.channel.AddressedEnvelope].recipient()"
    functionUses: 2
    ICount: 22
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DatagramPacketEncoder:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DatagramPacketEncoder:68"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DatagramPacketEncoder:65"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DatagramPacketEncoder:-1"
        BranchSideFuncs:
        - "sender()"
      - BranchSide: "io.netty.handler.codec.DatagramPacketEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DatagramPacketEncoder:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DatagramPacketEncoder:67"
        BranchSideFuncs:
        - "recipient()"
      - BranchSide: "io.netty.handler.codec.DatagramPacketEncoder:66"
        BranchSideFuncs:
        - "recipient()"
    - Branch String: "io.netty.handler.codec.DatagramPacketEncoder:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DatagramPacketEncoder:-1"
        BranchSideFuncs:
        - "recipient()"
      - BranchSide: "io.netty.handler.codec.DatagramPacketEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DatagramPacketEncoder:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DatagramPacketEncoder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:62,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].acceptOutboundMessage(java.lang.Object)"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:65,1"
      Dst: "[io.netty.channel.AddressedEnvelope].content()"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:66,1"
      Dst: "[io.netty.channel.AddressedEnvelope].sender()"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:67,1"
      Dst: "[io.netty.channel.AddressedEnvelope].recipient()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.DatagramPacketEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.channel.AddressedEnvelope<M,InetSocketAddress>,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.DatagramPacketEncoder"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 91
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.AddressedEnvelope<M,InetSocketAddress>"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[jaz.Zer].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].content()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.dns.TcpDnsResponseEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.memcache.AbstractMemcacheObjectEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Encoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.spdy.SpdyHttpEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.stomp.StompSubframeEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.bytes.ByteArrayEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.smtp.SmtpRequestEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.dns.DatagramDnsQueryEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.protobuf.ProtobufEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.DatagramPacketEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.dns.DatagramDnsResponseEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.LengthFieldPrepender].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.http.websocketx.WebSocket00FrameEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.MessageToMessageCodec$1].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.protobuf.ProtobufEncoderNano].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.string.StringEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.redis.RedisEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.http.HttpClientCodec$Encoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.string.LineEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.http.HttpObjectEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.base64.Base64Encoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[java.lang.StringBuilder].<init>()"
    - "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.channel.DefaultAddressedEnvelope:io.netty.handler.codec.dns.DatagramDnsQuery:io.netty.handler.codec.dns.DatagramDnsResponse:io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].sender()"
    - "[io.netty.handler.codec.CodecOutputList].set(int,java.lang.Object)"
    - "[io.netty.util.internal.RecyclableArrayList].set(int,java.lang.Object)"
    - "[jaz.Zer].set(int,java.lang.Object)"
    - "[java.util.Vector].set(int,java.lang.Object)"
    - "[java.util.List].isEmpty()"
    - "[io.netty.channel.AddressedEnvelope].content()"
    - "[io.netty.handler.codec.MessageToMessageEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[io.netty.channel.AddressedEnvelope].recipient()"
    - "[io.netty.channel.AddressedEnvelope].sender()"
    - "[java.util.List].set(int,java.lang.Object)"
    functionUses: 1
    ICount: 49
    EdgeCount: 57
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DatagramPacketEncoder:75"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DatagramPacketEncoder:76"
        BranchSideFuncs:
        - "content()"
        - "encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
        - "size()"
    - Branch String: "io.netty.handler.codec.DatagramPacketEncoder:75"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DatagramPacketEncoder:76"
        BranchSideFuncs:
        - "content()"
        - "encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
        - "size()"
    - Branch String: "io.netty.handler.codec.DatagramPacketEncoder:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DatagramPacketEncoder:82"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DatagramPacketEncoder:81"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "io.netty.handler.codec.DatagramPacketEncoder:83"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DatagramPacketEncoder:86"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:75,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:75,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:77,1"
      Dst: "[io.netty.channel.AddressedEnvelope].content()"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:77,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:78,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:79,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:80,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:80,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:80,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:80,1"
      Dst: "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:82,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:85,1"
      Dst: "[io.netty.channel.AddressedEnvelope].recipient()"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:85,1"
      Dst: "[io.netty.channel.AddressedEnvelope].sender()"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:85,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:85,1"
      Dst: "[java.util.List].set(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.channel.socket.DatagramPacket"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "java.net.InetSocketAddress"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress,java.net.SocketAddress)"
    functionUses: 12
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DatagramPacket:42,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DatagramPacketEncoder].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.DatagramPacketEncoder"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DatagramPacketEncoder].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundHandlerAdapter].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:94,1"
      Dst: "[io.netty.channel.ChannelOutboundHandlerAdapter].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundHandlerAdapter].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ChannelOutboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundHandlerAdapter:38,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DatagramPacketEncoder].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.DatagramPacketEncoder"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DatagramPacketEncoder].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundHandlerAdapter].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:101,1"
      Dst: "[io.netty.channel.ChannelOutboundHandlerAdapter].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundHandlerAdapter].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ChannelOutboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundHandlerAdapter:51,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DatagramPacketEncoder].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.DatagramPacketEncoder"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundHandlerAdapter].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.DatagramPacketEncoder].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:106,1"
      Dst: "[io.netty.channel.ChannelOutboundHandlerAdapter].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundHandlerAdapter].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ChannelOutboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundHandlerAdapter:64,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DatagramPacketEncoder].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.DatagramPacketEncoder"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundHandlerAdapter].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.DatagramPacketEncoder].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:111,1"
      Dst: "[io.netty.channel.ChannelOutboundHandlerAdapter].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundHandlerAdapter].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ChannelOutboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundHandlerAdapter:77,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DatagramPacketEncoder].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.DatagramPacketEncoder"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundHandlerAdapter].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.DatagramPacketEncoder].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:116,1"
      Dst: "[io.netty.channel.ChannelOutboundHandlerAdapter].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundHandlerAdapter].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ChannelOutboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].deregister(io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundHandlerAdapter:89,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].deregister(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DatagramPacketEncoder].read(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.DatagramPacketEncoder"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundHandlerAdapter].read(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.DatagramPacketEncoder].read(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:121,1"
      Dst: "[io.netty.channel.ChannelOutboundHandlerAdapter].read(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundHandlerAdapter].read(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.ChannelOutboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].read()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].read()"
    - "[io.netty.channel.ChannelHandlerContext].read()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundHandlerAdapter:101,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].read()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DatagramPacketEncoder].flush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.DatagramPacketEncoder"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DatagramPacketEncoder].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelOutboundHandlerAdapter].flush(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:126,1"
      Dst: "[io.netty.channel.ChannelOutboundHandlerAdapter].flush(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundHandlerAdapter].flush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.ChannelOutboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundHandlerAdapter:125,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DatagramPacketEncoder].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.DatagramPacketEncoder"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DatagramPacketEncoder].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandlerAdapter].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:131,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DatagramPacketEncoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.DatagramPacketEncoder"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.DatagramPacketEncoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandlerAdapter].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:136,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DatagramPacketEncoder].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.DatagramPacketEncoder"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DatagramPacketEncoder].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerAdapter].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:141,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DatagramPacketEncoder].isSharable()"
    functionSourceFile: "io.netty.handler.codec.DatagramPacketEncoder"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerAdapter].isSharable()"
    - "[io.netty.handler.codec.DatagramPacketEncoder].isSharable()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:146,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].isSharable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DatagramPacketEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.DatagramPacketEncoder"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DatagramPacketEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.channel.AddressedEnvelope,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DatagramPacketEncoder:46,1"
      Dst: "[io.netty.handler.codec.DatagramPacketEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.channel.AddressedEnvelope,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayRedisMessage].<init>()"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayRedisMessage"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].<init>()"
    - "[java.util.Collections].emptyList()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:35,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].<init>()"
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:36,1"
      Dst: "[java.util.Collections].emptyList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayRedisMessage].<init>(java.util.List)"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayRedisMessage"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:44,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].<init>()"
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:46,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayRedisMessage].children()"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayRedisMessage"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayRedisMessage].isNull()"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayRedisMessage"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayRedisMessage].deallocate()"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayRedisMessage"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 73
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 97
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.ArrayRedisMessage:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.ArrayRedisMessage:72"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "release(java.lang.Object)"
        - "next()"
      - BranchSide: "io.netty.handler.codec.redis.ArrayRedisMessage:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:69,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:69,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:69,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:70,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.redis.ArrayRedisMessage].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayRedisMessage"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 80
    functionDepth: 1
    returnType: "io.netty.handler.codec.redis.ArrayRedisMessage"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.ReferenceCountUtil].touch(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 4
    ICount: 11
    EdgeCount: 97
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.ArrayRedisMessage:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.ArrayRedisMessage:79"
        BranchSideFuncs:
        - "touch(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.handler.codec.redis.ArrayRedisMessage:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:76,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:76,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:76,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:77,1"
      Dst: "[io.netty.util.ReferenceCountUtil].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.ReferenceCountUtil].touch(java.lang.Object)"
    functionSourceFile: "io.netty.util.ReferenceCountUtil"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.PemPrivateKey].touch()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].touch()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].touch()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].touch()"
    - "[io.netty.channel.epoll.SegmentedDatagramPacket].touch()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].touch()"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].touch()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].touch()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].touch()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].touch()"
    - "[io.netty.channel.unix.DomainDatagramPacket].touch()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].touch()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].touch()"
    - "[io.netty.buffer.DefaultByteBufHolder].touch()"
    - "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].touch()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].touch()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].touch()"
    - "[io.netty.channel.sctp.SctpMessage].touch()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].touch()"
    - "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].touch()"
    - "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].touch()"
    - "[io.netty.channel.udt.UdtMessage].touch()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].touch()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].touch()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch()"
    - "[io.netty.handler.ssl.OpenSslPrivateKey].touch()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].touch()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].touch()"
    - "[io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame].touch()"
    - "[io.netty.handler.codec.smtp.DefaultLastSmtpContent].touch()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].touch()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].touch()"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].touch()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpContent].touch()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].touch()"
    - "[io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent].touch()"
    - "[io.netty.buffer.WrappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    - "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch()"
    - "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].touch()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].touch()"
    - "[io.netty.handler.ssl.PemX509Certificate].touch()"
    - "[io.netty.buffer.SwappedByteBuf].touch()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].touch()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].touch()"
    - "[io.netty.channel.socket.DatagramPacket].touch()"
    - "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].touch()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].touch()"
    - "[io.netty.channel.DefaultAddressedEnvelope].touch()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].touch()"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].touch()"
    - "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].touch()"
    - "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].touch()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].touch()"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].touch()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].touch()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].touch()"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].touch()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].touch()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].touch()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].touch()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].touch()"
    - "[io.netty.channel.unix.SegmentedDatagramPacket].touch()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].touch()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].touch()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].touch()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].touch()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].touch()"
    - "[io.netty.handler.codec.http.websocketx.PingWebSocketFrame].touch()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].touch()"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].touch()"
    - "[io.netty.util.AbstractReferenceCounted].touch()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].touch()"
    - "[io.netty.handler.ssl.PemValue].touch()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.SimpleLeakAwareByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.channel.DefaultFileRegion:io.netty.handler.codec.http.ComposedLastHttpContent:io.netty.handler.codec.http.LastHttpContent$1:io.netty.handler.codec.http.multipart.AbstractDiskHttpData:io.netty.handler.codec.memcache.LastMemcacheContent$1:io.netty.handler.codec.redis.ArrayRedisMessage$1:io.netty.handler.codec.redis.ArrayRedisMessage$2:io.netty.handler.codec.redis.FullBulkStringRedisMessage$1:io.netty.handler.codec.redis.FullBulkStringRedisMessage$2:io.netty.handler.codec.redis.LastBulkStringRedisContent$1:io.netty.handler.codec.smtp.LastSmtpContent$1:io.netty.handler.codec.stomp.LastStompContentSubframe$1].touch()"
    - "[io.netty.util.ReferenceCounted].touch()"
    functionUses: 2
    ICount: 7
    EdgeCount: 79
    BranchProfiles:
    - Branch String: "io.netty.util.ReferenceCountUtil:65"
      Branch Sides:
      - BranchSide: "io.netty.util.ReferenceCountUtil:68"
        BranchSideFuncs:
        - "touch()"
      - BranchSide: "io.netty.util.ReferenceCountUtil:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.ReferenceCountUtil:66,1"
      Dst: "[io.netty.util.ReferenceCounted].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayRedisMessage].toString()"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayRedisMessage"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.List].size()"
    functionUses: 19
    ICount: 12
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:84,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:84,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:85,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:86,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:87,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:87,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:88,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayRedisMessage].<init>(io.netty.handler.codec.redis.ArrayRedisMessage$1)"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayRedisMessage"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.redis.ArrayRedisMessage$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].<init>()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage:31,1"
      Dst: "[io.netty.handler.codec.redis.ArrayRedisMessage].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].<init>(io.netty.channel.AbstractChannel$AbstractUnsafe,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.AbstractChannel$AbstractUnsafe$1"
    linkageType: ""
    functionLinenumber: 482
    functionLinenumberEnd: 484
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.AbstractChannel$AbstractUnsafe"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$1:483,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    functionSourceFile: "io.netty.channel.AbstractChannel$AbstractUnsafe$1"
    linkageType: ""
    functionLinenumber: 485
    functionLinenumberEnd: 488
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].access$200(io.netty.channel.AbstractChannel$AbstractUnsafe,io.netty.channel.ChannelPromise)"
    functionUses: 50
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$1:486,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].access$200(io.netty.channel.AbstractChannel$AbstractUnsafe,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].newSocket()"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.net.MulticastSocket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.MulticastSocket].<init>(java.net.SocketAddress)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:79,1"
      Dst: "[java.net.MulticastSocket].<init>(java.net.SocketAddress)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:81,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].<init>()"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioDatagramChannel].newSocket()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].<init>(java.net.MulticastSocket)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:89,1"
      Dst: "[io.netty.channel.socket.oio.OioDatagramChannel].newSocket()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:89,1"
      Dst: "[io.netty.channel.socket.oio.OioDatagramChannel].<init>(java.net.MulticastSocket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].<init>(java.net.MulticastSocket)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.MulticastSocket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.oio.AbstractOioMessageChannel].<init>(io.netty.channel.Channel)"
    - "[java.net.DatagramPacket].<init>(byte[],int)"
    - "[java.net.DatagramSocket].setSoTimeout(int)"
    - "[java.net.DatagramSocket].setBroadcast(boolean)"
    - "[java.net.DatagramSocket].close()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].<init>(io.netty.channel.socket.DatagramChannel,java.net.DatagramSocket)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:109"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:114"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:109"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:98,1"
      Dst: "[io.netty.channel.oio.AbstractOioMessageChannel].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:75,1"
      Dst: "[java.net.DatagramPacket].<init>(byte[],int)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:102,1"
      Dst: "[java.net.DatagramSocket].setSoTimeout(int)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:103,1"
      Dst: "[java.net.DatagramSocket].setBroadcast(boolean)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:110,1"
      Dst: "[java.net.DatagramSocket].close()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:106,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:115,1"
      Dst: "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].<init>(io.netty.channel.socket.DatagramChannel,java.net.DatagramSocket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].metadata()"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionDepth: 0
    returnType: "io.netty.channel.ChannelMetadata"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionDepth: 0
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 53
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].isOpen()"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].isClosed()"
    functionUses: 10
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:136"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:135"
        BranchSideFuncs:
        - "isClosed()"
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:136,1"
      Dst: "[java.net.DatagramSocket].isClosed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 145
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isOpen()"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.AbstractChannel].isRegistered()"
    - "[java.net.DatagramSocket].isBound()"
    - "[io.netty.channel.ChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 36
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:142"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:142"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
        - "isRegistered()"
        - "booleanValue()"
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:141"
        BranchSideFuncs:
        - "isOpen()"
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:143"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:144"
        BranchSideFuncs:
        - "isBound()"
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:143"
        BranchSideFuncs:
        - "isBound()"
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:143"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:142"
        BranchSideFuncs:
        - "isBound()"
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:141"
        BranchSideFuncs:
        - "isOpen()"
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:144"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:141"
        BranchSideFuncs:
        - "isOpen()"
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:142,1"
      Dst: "[io.netty.channel.socket.oio.OioDatagramChannel].isOpen()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:143,1"
      Dst: "[io.netty.channel.ChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:143,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:143,1"
      Dst: "[io.netty.channel.AbstractChannel].isRegistered()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:144,1"
      Dst: "[java.net.DatagramSocket].isBound()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].isConnected()"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].isConnected()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:149,1"
      Dst: "[java.net.DatagramSocket].isConnected()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].getLocalSocketAddress()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:154,1"
      Dst: "[java.net.DatagramSocket].getLocalSocketAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].remoteAddress0()"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].getRemoteSocketAddress()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:159,1"
      Dst: "[java.net.DatagramSocket].getRemoteSocketAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].bind(java.net.SocketAddress)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:164,1"
      Dst: "[java.net.DatagramSocket].bind(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].localAddress()"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:169,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:174,1"
      Dst: "[io.netty.channel.AbstractChannel].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: 179
    functionLinenumberEnd: 198
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].bind(java.net.SocketAddress)"
    - "[java.net.DatagramSocket].connect(java.net.SocketAddress)"
    - "[java.net.DatagramSocket].close()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 26
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:180"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:186"
        BranchSideFuncs:
        - "bind(java.net.SocketAddress)"
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:185"
        BranchSideFuncs:
        - "connect(java.net.SocketAddress)"
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:189"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:197"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "close()"
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:196"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:189"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:196"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "close()"
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:181,1"
      Dst: "[java.net.DatagramSocket].bind(java.net.SocketAddress)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:186,1"
      Dst: "[java.net.DatagramSocket].connect(java.net.SocketAddress)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:191,1"
      Dst: "[java.net.DatagramSocket].close()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:193,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].doDisconnect()"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 203
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].disconnect()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:201,1"
      Dst: "[java.net.DatagramSocket].disconnect()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].doClose()"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].close()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:206,1"
      Dst: "[java.net.DatagramSocket].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].doReadMessages(java.util.List<Object>)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 244
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].recvBufAllocHandle()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].recvBufAllocHandle()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].guess()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].guess()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].guess()"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].guess()"
    - "[io.netty.channel.ServerChannelRecvByteBufAllocator$1].guess()"
    - "[io.netty.channel.FixedRecvByteBufAllocator$HandleImpl].guess()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[java.net.DatagramPacket].setAddress(java.net.InetAddress)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[java.net.DatagramPacket].setData(byte[],int,int)"
    - "[java.net.DatagramSocket].receive(java.net.DatagramPacket)"
    - "[java.net.DatagramPacket].getSocketAddress()"
    - "[java.net.DatagramPacket].getLength()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].lastBytesRead(int)"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].lastBytesRead(int)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].lastBytesRead(int)"
    - "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].lastBytesRead()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].lastBytesRead()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].localAddress()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.String].toLowerCase(java.util.Locale)"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.Channel$Unsafe].recvBufAllocHandle()"
    - "[io.netty.channel.ChannelConfig].getAllocator()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].guess()"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 61
    EdgeCount: 170
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:240"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:211"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:210"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "arrayOffset()"
        - "localAddress()"
        - "getMessage()"
        - "toLowerCase(java.util.Locale)"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "getSocketAddress()"
        - "writerIndex(int)"
        - "guess()"
        - "getLength()"
        - "array()"
        - "add(java.lang.Object)"
        - "setAddress(java.net.InetAddress)"
        - "config()"
        - "recvBufAllocHandle()"
        - "heapBuffer(int)"
        - "getAllocator()"
        - "contains(java.lang.CharSequence)"
        - "throwException(java.lang.Throwable)"
        - "setData(byte[],int,int)"
        - "capacity()"
        - "unsafe()"
        - "lastBytesRead()"
        - "receive(java.net.DatagramPacket)"
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:240"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:211"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:210"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "arrayOffset()"
        - "localAddress()"
        - "getMessage()"
        - "toLowerCase(java.util.Locale)"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "getSocketAddress()"
        - "writerIndex(int)"
        - "guess()"
        - "getLength()"
        - "array()"
        - "add(java.lang.Object)"
        - "setAddress(java.net.InetAddress)"
        - "config()"
        - "recvBufAllocHandle()"
        - "heapBuffer(int)"
        - "getAllocator()"
        - "contains(java.lang.CharSequence)"
        - "throwException(java.lang.Throwable)"
        - "setData(byte[],int,int)"
        - "capacity()"
        - "unsafe()"
        - "lastBytesRead()"
        - "receive(java.net.DatagramPacket)"
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:232"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:211"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "arrayOffset()"
        - "localAddress()"
        - "getMessage()"
        - "toLowerCase(java.util.Locale)"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "getSocketAddress()"
        - "writerIndex(int)"
        - "guess()"
        - "getLength()"
        - "array()"
        - "add(java.lang.Object)"
        - "setAddress(java.net.InetAddress)"
        - "config()"
        - "recvBufAllocHandle()"
        - "heapBuffer(int)"
        - "getAllocator()"
        - "contains(java.lang.CharSequence)"
        - "throwException(java.lang.Throwable)"
        - "setData(byte[],int,int)"
        - "capacity()"
        - "unsafe()"
        - "lastBytesRead()"
        - "receive(java.net.DatagramPacket)"
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:210"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "arrayOffset()"
        - "localAddress()"
        - "getMessage()"
        - "toLowerCase(java.util.Locale)"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "getSocketAddress()"
        - "writerIndex(int)"
        - "guess()"
        - "getLength()"
        - "array()"
        - "add(java.lang.Object)"
        - "setAddress(java.net.InetAddress)"
        - "config()"
        - "recvBufAllocHandle()"
        - "heapBuffer(int)"
        - "getAllocator()"
        - "contains(java.lang.CharSequence)"
        - "throwException(java.lang.Throwable)"
        - "setData(byte[],int,int)"
        - "capacity()"
        - "unsafe()"
        - "lastBytesRead()"
        - "receive(java.net.DatagramPacket)"
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:240"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:null"
        BranchSideFuncs:
        - "release()"
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:240"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:null"
        BranchSideFuncs:
        - "release()"
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:240"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:243"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:242"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:211,1"
      Dst: "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:212,1"
      Dst: "[io.netty.channel.AbstractChannel].unsafe()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:212,1"
      Dst: "[io.netty.channel.Channel$Unsafe].recvBufAllocHandle()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:214,1"
      Dst: "[io.netty.channel.ChannelConfig].getAllocator()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:214,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].guess()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:214,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:218,1"
      Dst: "[java.net.DatagramPacket].setAddress(java.net.InetAddress)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:219,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:219,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:219,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:219,1"
      Dst: "[java.net.DatagramPacket].setData(byte[],int,int)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:220,1"
      Dst: "[java.net.DatagramSocket].receive(java.net.DatagramPacket)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:222,1"
      Dst: "[java.net.DatagramPacket].getSocketAddress()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:224,1"
      Dst: "[java.net.DatagramPacket].getLength()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:224,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead(int)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:225,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:225,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:225,1"
      Dst: "[io.netty.channel.socket.oio.OioDatagramChannel].localAddress()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:225,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:225,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:241,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:232,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:232,1"
      Dst: "[java.lang.String].toLowerCase(java.util.Locale)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:232,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:237,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].doWrite(io.netty.channel.ChannelOutboundBuffer)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: 248
    functionLinenumberEnd: 294
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].current()"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].recipient()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].content()"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.channel.DefaultAddressedEnvelope].content()"
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[java.net.DatagramPacket].setSocketAddress(java.net.SocketAddress)"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isConnected()"
    - "[java.nio.channels.NotYetConnectedException].<init>()"
    - "[java.net.DatagramPacket].setAddress(java.net.InetAddress)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.EmptyByteBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[java.net.DatagramPacket].setData(byte[],int,int)"
    - "[io.netty.buffer.ByteBufUtil].getBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[java.net.DatagramPacket].setData(byte[])"
    - "[java.net.DatagramSocket].send(java.net.DatagramPacket)"
    - "[io.netty.channel.ChannelOutboundBuffer].remove()"
    - "[io.netty.channel.ChannelOutboundBuffer].remove(java.lang.Throwable)"
    - "[io.netty.channel.AddressedEnvelope].recipient()"
    - "[io.netty.channel.AddressedEnvelope].content()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    functionUses: 1
    ICount: 48
    EdgeCount: 94
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:250"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:256"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:255"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:256"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:261"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:268"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:271"
        BranchSideFuncs:
        - "setSocketAddress(java.net.SocketAddress)"
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:270"
        BranchSideFuncs:
        - "isConnected()"
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:271"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:276"
        BranchSideFuncs:
        - "setAddress(java.net.InetAddress)"
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:279"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:282"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
        - "setData(byte[],int,int)"
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:281"
        BranchSideFuncs:
        - "getBytes(io.netty.buffer.ByteBuf,int,int)"
        - "readerIndex()"
        - "setData(byte[])"
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:249,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].current()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:259,1"
      Dst: "[io.netty.channel.AddressedEnvelope].recipient()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:260,1"
      Dst: "[io.netty.channel.AddressedEnvelope].content()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:266,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:269,1"
      Dst: "[java.net.DatagramPacket].setSocketAddress(java.net.SocketAddress)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:271,1"
      Dst: "[io.netty.channel.socket.oio.OioDatagramChannel].isConnected()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:274,1"
      Dst: "[java.nio.channels.NotYetConnectedException].<init>()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:277,1"
      Dst: "[java.net.DatagramPacket].setAddress(java.net.InetAddress)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:279,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:280,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:280,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:280,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:280,1"
      Dst: "[java.net.DatagramPacket].setData(byte[],int,int)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:282,1"
      Dst: "[io.netty.buffer.ByteBufUtil].getBytes(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:282,1"
      Dst: "[java.net.DatagramPacket].setData(byte[])"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:284,1"
      Dst: "[java.net.DatagramSocket].send(java.net.DatagramPacket)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:285,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].remove()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:290,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].remove(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 5
  - functionName: "[io.netty.buffer.ByteBufUtil].getBytes(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1308
    functionLinenumberEnd: 1310
    functionDepth: 3
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].getBytes(io.netty.buffer.ByteBuf,int,int,boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1309,1"
      Dst: "[io.netty.buffer.ByteBufUtil].getBytes(io.netty.buffer.ByteBuf,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].getBytes(io.netty.buffer.ByteBuf,int,int,boolean)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1318
    functionLinenumberEnd: 1338
    functionDepth: 2
    returnType: "byte[]"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.EmptyByteBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[java.util.Arrays].copyOfRange(byte[],int,int)"
    - "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AbstractByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    functionUses: 4
    ICount: 36
    EdgeCount: 94
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:1320"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1325"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
        - "append(char)"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1324"
        BranchSideFuncs:
        - "hasArray()"
    - Branch String: "io.netty.buffer.ByteBufUtil:1325"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1335"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1334"
        BranchSideFuncs:
        - "getBytes(int,byte[])"
        - "allocateUninitializedArray(int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1328"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1329"
        BranchSideFuncs:
        - "copyOfRange(byte[],int,int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1328"
        BranchSideFuncs:
        - "copyOfRange(byte[],int,int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1328"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1329"
        BranchSideFuncs:
        - "copyOfRange(byte[],int,int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1328"
        BranchSideFuncs:
        - "copyOfRange(byte[],int,int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1328"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1331"
        BranchSideFuncs:
        - "copyOfRange(byte[],int,int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1330"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1319,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.buffer.ByteBufUtil:1320,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1321,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.ByteBufUtil:1321,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil:1321,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1321,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.buffer.ByteBufUtil:1321,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.ByteBufUtil:1321,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil:1325,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.buffer.ByteBufUtil:1326,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.buffer.ByteBufUtil:1327,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.ByteBufUtil:1329,1"
      Dst: "[java.util.Arrays].copyOfRange(byte[],int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1335,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1336,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    functionSourceFile: "io.netty.util.internal.MathUtil"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.MathUtil:64"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MathUtil:63"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 324
    functionLinenumberEnd: 327
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].allocateUninitializedArray(int)"
    functionUses: 7
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:325"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:325"
        BranchSideFuncs:
        - "allocateUninitializedArray(int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:324"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:325"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:326"
        BranchSideFuncs:
        - "allocateUninitializedArray(int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:325"
        BranchSideFuncs:
        - "allocateUninitializedArray(int)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:326,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].allocateUninitializedArray(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent0].allocateUninitializedArray(int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 575
    functionLinenumberEnd: 581
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Error].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 20
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:576,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.util.internal.PlatformDependent0:576,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.util.internal.PlatformDependent0:578,1"
      Dst: "[java.lang.Error].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].filterOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: 296
    functionLinenumberEnd: 311
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].content()"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.channel.DefaultAddressedEnvelope].content()"
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].content()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.AddressedEnvelope].content()"
    functionUses: 1
    ICount: 25
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:297"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:298"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:297"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:297"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:301"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:300"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:301"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:308"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:304"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:309"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:308"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:304,1"
      Dst: "[io.netty.channel.AddressedEnvelope].content()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:309,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:309,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:310,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:310,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:310,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].joinGroup(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].joinGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:315,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:315,1"
      Dst: "[io.netty.channel.socket.oio.OioDatagramChannel].joinGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].joinGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioDatagramChannel].ensureBound()"
    - "[java.net.MulticastSocket].joinGroup(java.net.InetAddress)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:320,1"
      Dst: "[io.netty.channel.socket.oio.OioDatagramChannel].ensureBound()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:322,1"
      Dst: "[java.net.MulticastSocket].joinGroup(java.net.InetAddress)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:323,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:325,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].ensureBound()"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioDatagramChannel:364"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:369"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.oio.OioDatagramChannel:368"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:364,1"
      Dst: "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:365,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:366,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:366,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:366,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:366,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].joinGroup(java.net.InetSocketAddress,java.net.NetworkInterface)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.NetworkInterface"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].joinGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:332,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:332,1"
      Dst: "[io.netty.channel.socket.oio.OioDatagramChannel].joinGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].joinGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.NetworkInterface"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioDatagramChannel].ensureBound()"
    - "[java.net.MulticastSocket].joinGroup(java.net.SocketAddress,java.net.NetworkInterface)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:339,1"
      Dst: "[io.netty.channel.socket.oio.OioDatagramChannel].ensureBound()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:341,1"
      Dst: "[java.net.MulticastSocket].joinGroup(java.net.SocketAddress,java.net.NetworkInterface)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:342,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:344,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.channel.AbstractChannel].newFailedFuture(java.lang.Throwable)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:352,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:352,1"
      Dst: "[io.netty.channel.AbstractChannel].newFailedFuture(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:359,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:359,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].leaveGroup(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].leaveGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:373,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:373,1"
      Dst: "[io.netty.channel.socket.oio.OioDatagramChannel].leaveGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].leaveGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.MulticastSocket].leaveGroup(java.net.InetAddress)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:379,1"
      Dst: "[java.net.MulticastSocket].leaveGroup(java.net.InetAddress)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:380,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:382,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].leaveGroup(java.net.InetSocketAddress,java.net.NetworkInterface)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.NetworkInterface"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].leaveGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:390,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:390,1"
      Dst: "[io.netty.channel.socket.oio.OioDatagramChannel].leaveGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].leaveGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.NetworkInterface"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.MulticastSocket].leaveGroup(java.net.SocketAddress,java.net.NetworkInterface)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:398,1"
      Dst: "[java.net.MulticastSocket].leaveGroup(java.net.SocketAddress,java.net.NetworkInterface)"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:399,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:401,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.channel.AbstractChannel].newFailedFuture(java.lang.Throwable)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:409,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:409,1"
      Dst: "[io.netty.channel.AbstractChannel].newFailedFuture(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:416,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:416,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].block(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.channel.AbstractChannel].newFailedFuture(java.lang.Throwable)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:423,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:423,1"
      Dst: "[io.netty.channel.AbstractChannel].newFailedFuture(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].block(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:430,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:430,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].block(java.net.InetAddress,java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.channel.AbstractChannel].newFailedFuture(java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:437,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:437,1"
      Dst: "[io.netty.channel.AbstractChannel].newFailedFuture(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioDatagramChannel].block(java.net.InetAddress,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetAddress"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:443,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    - Src: "io.netty.channel.socket.oio.OioDatagramChannel:443,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel].<init>()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].newSocketDomain()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:40,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].newSocketDomain()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:40,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:34,1"
      Dst: "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel].<init>(io.netty.channel.Channel,io.netty.channel.unix.FileDescriptor)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.channel.unix.FileDescriptor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(io.netty.channel.Channel,io.netty.channel.epoll.LinuxSocket)"
    - "[io.netty.channel.epoll.LinuxSocket].<init>(int)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:44,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:44,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].<init>(int)"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:44,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(io.netty.channel.Channel,io.netty.channel.epoll.LinuxSocket)"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:34,1"
      Dst: "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel].<init>(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(int)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:48,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(int)"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:34,1"
      Dst: "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel].<init>(io.netty.channel.Channel,io.netty.channel.epoll.LinuxSocket)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.channel.epoll.LinuxSocket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(io.netty.channel.Channel,io.netty.channel.epoll.LinuxSocket)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:52,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(io.netty.channel.Channel,io.netty.channel.epoll.LinuxSocket)"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:34,1"
      Dst: "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel].<init>(int,boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].<init>(int)"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:56,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].<init>(int)"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:56,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:34,1"
      Dst: "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel].newUnsafe()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 3
    returnType: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe].<init>(io.netty.channel.epoll.EpollDomainSocketChannel,io.netty.channel.epoll.EpollDomainSocketChannel$1)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:61,1"
      Dst: "[io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe].<init>(io.netty.channel.epoll.EpollDomainSocketChannel,io.netty.channel.epoll.EpollDomainSocketChannel$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe].<init>(io.netty.channel.epoll.EpollDomainSocketChannel,io.netty.channel.epoll.EpollDomainSocketChannel$1)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.epoll.EpollDomainSocketChannel"
    - "io.netty.channel.epoll.EpollDomainSocketChannel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe].<init>(io.netty.channel.epoll.EpollDomainSocketChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:133,1"
      Dst: "[io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe].<init>(io.netty.channel.epoll.EpollDomainSocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe].<init>(io.netty.channel.epoll.EpollDomainSocketChannel)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.EpollDomainSocketChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe].<init>(io.netty.channel.epoll.AbstractEpollStreamChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:133,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe].<init>(io.netty.channel.epoll.AbstractEpollStreamChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe].<init>(io.netty.channel.epoll.AbstractEpollStreamChannel)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe"
    linkageType: ""
    functionLinenumber: 708
    functionLinenumberEnd: 710
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.AbstractEpollStreamChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:709,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel].remoteAddress0()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 79
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].bind(java.net.SocketAddress)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:76,1"
      Dst: "[io.netty.channel.unix.Socket].bind(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].bind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 371
    functionLinenumberEnd: 390
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].getAddress()"
    - "[io.netty.channel.unix.NativeInetAddress].newInstance(java.net.InetAddress)"
    - "[io.netty.channel.unix.Socket].bind(int,boolean,byte[],int,int)"
    - "[java.net.InetSocketAddress].getPort()"
    - "[io.netty.channel.unix.Socket].useIpv6(java.net.InetAddress)"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    - "[io.netty.channel.unix.Socket].bindDomainSocket(int,byte[])"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.channel.unix.DomainSocketAddress].path()"
    - "[java.lang.Error].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 8
    ICount: 38
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:372"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:372"
        BranchSideFuncs:
        - "bind(int,boolean,byte[],int,int)"
        - "newInstance(java.net.InetAddress)"
        - "getAddress()"
        - "useIpv6(java.net.InetAddress)"
        - "getPort()"
      - BranchSide: "io.netty.channel.unix.Socket:371"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Socket:377"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:380"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:379"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Socket:372"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:387"
        BranchSideFuncs:
        - "bind(int,boolean,byte[],int,int)"
        - "newInstance(java.net.InetAddress)"
        - "getAddress()"
        - "useIpv6(java.net.InetAddress)"
        - "getPort()"
      - BranchSide: "io.netty.channel.unix.Socket:386"
        BranchSideFuncs:
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.unix.Socket:383"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:386"
        BranchSideFuncs:
        - "newIOException(java.lang.String,int)"
      - BranchSide: "io.netty.channel.unix.Socket:385"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:374,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.channel.unix.Socket:375,1"
      Dst: "[io.netty.channel.unix.NativeInetAddress].newInstance(java.net.InetAddress)"
    - Src: "io.netty.channel.unix.Socket:376,1"
      Dst: "[io.netty.channel.unix.Socket].useIpv6(java.net.InetAddress)"
    - Src: "io.netty.channel.unix.Socket:376,1"
      Dst: "[java.net.InetSocketAddress].getPort()"
    - Src: "io.netty.channel.unix.Socket:376,1"
      Dst: "[io.netty.channel.unix.Socket].bind(int,boolean,byte[],int,int)"
    - Src: "io.netty.channel.unix.Socket:378,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    - Src: "io.netty.channel.unix.Socket:382,1"
      Dst: "[io.netty.channel.unix.DomainSocketAddress].path()"
    - Src: "io.netty.channel.unix.Socket:382,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.channel.unix.Socket:382,1"
      Dst: "[io.netty.channel.unix.Socket].bindDomainSocket(int,byte[])"
    - Src: "io.netty.channel.unix.Socket:387,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.unix.Socket:387,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.unix.Socket:387,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.channel.unix.Socket:387,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.unix.Socket:387,1"
      Dst: "[java.lang.Error].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.NativeInetAddress].newInstance(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.unix.NativeInetAddress"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 39
    functionDepth: 2
    returnType: "io.netty.channel.unix.NativeInetAddress"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Inet4Address].getAddress()"
    - "[io.netty.channel.unix.NativeInetAddress].<init>(byte[],int)"
    - "[java.net.Inet4Address:java.net.Inet6Address:java.net.InetAddress].getScopeId()"
    - "[io.netty.channel.unix.NativeInetAddress].<init>(byte[])"
    - "[io.netty.channel.unix.NativeInetAddress].ipv4MappedIpv6Address(byte[])"
    - "[java.net.InetAddress].getAddress()"
    - "[java.net.Inet6Address].getScopeId()"
    functionUses: 11
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.NativeInetAddress:34"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.NativeInetAddress:38"
        BranchSideFuncs:
        - "<init>(byte[],int)"
        - "getScopeId()"
      - BranchSide: "io.netty.channel.unix.NativeInetAddress:37"
        BranchSideFuncs:
        - "ipv4MappedIpv6Address(byte[])"
        - "<init>(byte[])"
    Callsites:
    - Src: "io.netty.channel.unix.NativeInetAddress:33,1"
      Dst: "[java.net.InetAddress].getAddress()"
    - Src: "io.netty.channel.unix.NativeInetAddress:35,1"
      Dst: "[java.net.Inet6Address].getScopeId()"
    - Src: "io.netty.channel.unix.NativeInetAddress:35,1"
      Dst: "[io.netty.channel.unix.NativeInetAddress].<init>(byte[],int)"
    - Src: "io.netty.channel.unix.NativeInetAddress:38,1"
      Dst: "[io.netty.channel.unix.NativeInetAddress].ipv4MappedIpv6Address(byte[])"
    - Src: "io.netty.channel.unix.NativeInetAddress:38,1"
      Dst: "[io.netty.channel.unix.NativeInetAddress].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.NativeInetAddress].<init>(byte[],int)"
    functionSourceFile: "io.netty.channel.unix.NativeInetAddress"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.NativeInetAddress:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.NativeInetAddress].ipv4MappedIpv6Address(byte[])"
    functionSourceFile: "io.netty.channel.unix.NativeInetAddress"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 63
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.NativeInetAddress].copyIpv4MappedIpv6Address(byte[],byte[])"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.NativeInetAddress:61,1"
      Dst: "[io.netty.channel.unix.NativeInetAddress].copyIpv4MappedIpv6Address(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.NativeInetAddress].copyIpv4MappedIpv6Address(byte[],byte[])"
    functionSourceFile: "io.netty.channel.unix.NativeInetAddress"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.NativeInetAddress:66,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.NativeInetAddress].<init>(byte[])"
    functionSourceFile: "io.netty.channel.unix.NativeInetAddress"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.NativeInetAddress].<init>(byte[],int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.NativeInetAddress:48,1"
      Dst: "[io.netty.channel.unix.NativeInetAddress].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].useIpv6(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].useIpv6(io.netty.channel.unix.Socket,java.net.InetAddress)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:63,1"
      Dst: "[io.netty.channel.unix.Socket].useIpv6(io.netty.channel.unix.Socket,java.net.InetAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].useIpv6(io.netty.channel.unix.Socket,java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.unix.Socket"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:71"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:70"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Socket:71"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:70"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.unix.Socket].bind(int,boolean,byte[],int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "int"
    - "boolean"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.Socket].bindDomainSocket(int,byte[])"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "io.netty.channel.epoll.EpollDomainSocketChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 67
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDomainSocketChannel:87"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainSocketChannel:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDomainSocketChannel:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:87,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:97,1"
      Dst: "[io.netty.channel.AbstractChannel].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel].localAddress()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:102,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel].doWriteSingle(io.netty.channel.ChannelOutboundBuffer)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 114
    functionDepth: 7
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].current()"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.unix.Socket].sendFd(int)"
    - "[io.netty.channel.ChannelOutboundBuffer].remove()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].doWriteSingle(io.netty.channel.ChannelOutboundBuffer)"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDomainSocketChannel:108"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainSocketChannel:112"
        BranchSideFuncs:
        - "doWriteSingle(io.netty.channel.ChannelOutboundBuffer)"
    - Branch String: "io.netty.channel.epoll.EpollDomainSocketChannel:108"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainSocketChannel:112"
        BranchSideFuncs:
        - "doWriteSingle(io.netty.channel.ChannelOutboundBuffer)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:107,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].current()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:108,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:108,1"
      Dst: "[io.netty.channel.unix.Socket].sendFd(int)"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:110,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].remove()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:113,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].doWriteSingle(io.netty.channel.ChannelOutboundBuffer)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Socket].sendFd(int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 325
    functionLinenumberEnd: 335
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].sendFd(int,int)"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    functionUses: 2
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:327"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:330"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:329"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Socket:330"
      Branch Sides: []
    - Branch String: "io.netty.channel.unix.Socket:330"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:333"
        BranchSideFuncs:
        - "newIOException(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:326,1"
      Dst: "[io.netty.channel.unix.Socket].sendFd(int,int)"
    - Src: "io.netty.channel.unix.Socket:334,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Socket].sendFd(int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel].filterOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].filterOutboundMessage(java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDomainSocketChannel:118"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainSocketChannel:121"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDomainSocketChannel:120"
        BranchSideFuncs:
        - "filterOutboundMessage(java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:121,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].filterOutboundMessage(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel].peerCredentials()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.unix.PeerCredentials"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getPeerCredentials()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel:130,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getPeerCredentials()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubscribePayload)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubscribeMessage"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader"
    - "io.netty.handler.codec.mqtt.MqttUnsubscribePayload"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribeMessage:29,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubscribePayload)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubscribeMessage"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    - "io.netty.handler.codec.mqtt.MqttUnsubscribePayload"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubscribePayload)"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].withDefaultEmptyProperties()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].withDefaultEmptyProperties()"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribeMessage:36,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].withDefaultEmptyProperties()"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribeMessage:36,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubscribePayload)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].variableHeader()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubscribeMessage"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribeMessage:41,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].idAndPropertiesVariableHeader()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubscribeMessage"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribeMessage:45,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].payload()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubscribeMessage"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].payload()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribeMessage:50,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].payload()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthResponse].<init>(io.netty.handler.codec.socks.SocksAuthStatus)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthResponse"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.socks.SocksAuthStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksResponse].<init>(io.netty.handler.codec.socks.SocksResponseType)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthResponse:32,1"
      Dst: "[io.netty.handler.codec.socks.SocksResponse].<init>(io.netty.handler.codec.socks.SocksResponseType)"
    - Src: "io.netty.handler.codec.socks.SocksAuthResponse:33,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthResponse].authStatus()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksAuthStatus"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthResponse].encodeAsByteBuf(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthResponse"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksSubnegotiationVersion].byteValue()"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.socks.SocksAuthStatus].byteValue()"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthResponse:47,1"
      Dst: "[io.netty.handler.codec.socks.SocksSubnegotiationVersion].byteValue()"
    - Src: "io.netty.handler.codec.socks.SocksAuthResponse:47,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.socks.SocksAuthResponse:48,1"
      Dst: "[io.netty.handler.codec.socks.SocksAuthStatus].byteValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksSubnegotiationVersion].byteValue()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksSubnegotiationVersion"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthStatus].byteValue()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthStatus"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtilSubstitutions$NetUtilLocalhost6Accessor].<init>()"
    functionSourceFile: "io.netty.util.NetUtilSubstitutions$NetUtilLocalhost6Accessor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtilSubstitutions$NetUtilLocalhost6Accessor:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtilSubstitutions$NetUtilLocalhost6Accessor].get()"
    functionSourceFile: "io.netty.util.NetUtilSubstitutions$NetUtilLocalhost6Accessor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.net.Inet6Address"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.NetUtilSubstitutions$NetUtilLocalhost6LazyHolder].access$100()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtilSubstitutions$NetUtilLocalhost6Accessor:61,1"
      Dst: "[io.netty.util.NetUtilSubstitutions$NetUtilLocalhost6LazyHolder].access$100()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtilSubstitutions$NetUtilLocalhost6LazyHolder].access$100()"
    functionSourceFile: "io.netty.util.NetUtilSubstitutions$NetUtilLocalhost6LazyHolder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.net.Inet6Address"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtilSubstitutions$NetUtilLocalhost6Accessor].set(java.net.Inet6Address)"
    functionSourceFile: "io.netty.util.NetUtilSubstitutions$NetUtilLocalhost6Accessor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.Inet6Address"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionDecoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder:33,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2LifecycleManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    - "[io.netty.handler.codec.http2.Http2ConnectionDecoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder:38,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionDecoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].connection()"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Connection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionDecoder].connection()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder:43,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionDecoder].connection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].flowController()"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2LocalFlowController"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].flowController()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].flowController()"
    - "[io.netty.handler.codec.http2.Http2ConnectionDecoder].flowController()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder:48,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionDecoder].flowController()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].frameListener(io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionDecoder].frameListener(io.netty.handler.codec.http2.Http2FrameListener)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder:53,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionDecoder].frameListener(io.netty.handler.codec.http2.Http2FrameListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].frameListener()"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameListener"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].frameListener()"
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder].frameListener()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].frameListener()"
    - "[io.netty.handler.codec.http2.Http2ConnectionDecoder].frameListener()"
    functionUses: 3
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder:58,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionDecoder].frameListener()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].decodeFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].decodeFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].decodeFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    - "[io.netty.handler.codec.http2.Http2ConnectionDecoder].decodeFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder:63,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionDecoder].decodeFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].localSettings()"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Settings"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].localSettings()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].localSettings()"
    - "[io.netty.handler.codec.http2.Http2ConnectionDecoder].localSettings()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder:68,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionDecoder].localSettings()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].prefaceReceived()"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].prefaceReceived()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].prefaceReceived()"
    - "[io.netty.handler.codec.http2.Http2ConnectionDecoder].prefaceReceived()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder:73,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionDecoder].prefaceReceived()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].close()"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].close()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].close()"
    - "[io.netty.handler.codec.http2.Http2ConnectionDecoder].close()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder:78,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionDecoder].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractReferenceCountedByteBuf$1].<init>()"
    functionSourceFile: "io.netty.buffer.AbstractReferenceCountedByteBuf$1"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ReferenceCountUpdater].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractReferenceCountedByteBuf$1:33,1"
      Dst: "[io.netty.util.internal.ReferenceCountUpdater].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractReferenceCountedByteBuf$1].updater()"
    functionSourceFile: "io.netty.buffer.AbstractReferenceCountedByteBuf$1"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "java.util.concurrent.atomic.AtomicIntegerFieldUpdater"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].access$000()"
    functionUses: 11
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractReferenceCountedByteBuf$1:36,1"
      Dst: "[io.netty.buffer.AbstractReferenceCountedByteBuf].access$000()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractReferenceCountedByteBuf$1].unsafeOffset()"
    functionSourceFile: "io.netty.buffer.AbstractReferenceCountedByteBuf$1"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].access$100()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractReferenceCountedByteBuf$1:40,1"
      Dst: "[io.netty.buffer.AbstractReferenceCountedByteBuf].access$100()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadExecutorMap$3].<init>(java.util.concurrent.ThreadFactory,io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.util.internal.ThreadExecutorMap$3"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.concurrent.ThreadFactory"
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadExecutorMap$3:89,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadExecutorMap$3].newThread(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.internal.ThreadExecutorMap$3"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionDepth: 2
    returnType: "java.lang.Thread"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ThreadExecutorMap].apply(java.lang.Runnable,io.netty.util.concurrent.EventExecutor)"
    - "[jdk.internal.ref.CleanerImpl$InnocuousThreadFactory].newThread(java.lang.Runnable)"
    - "[io.netty.util.concurrent.DefaultThreadFactory].newThread(java.lang.Runnable)"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors].newThread(java.lang.Runnable)"
    - "[jdk.internal.ref.CleanerFactory$1].newThread(java.lang.Runnable)"
    - "[io.netty.util.internal.ThreadExecutorMap$3].newThread(java.lang.Runnable)"
    - "[java.util.concurrent.ThreadFactory].newThread(java.lang.Runnable)"
    functionUses: 3
    ICount: 7
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadExecutorMap$3:92,1"
      Dst: "[io.netty.util.internal.ThreadExecutorMap].apply(java.lang.Runnable,io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.util.internal.ThreadExecutorMap$3:92,1"
      Dst: "[java.util.concurrent.ThreadFactory].newThread(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadExecutorMap].apply(java.lang.Runnable,io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.util.internal.ThreadExecutorMap"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 70
    functionDepth: 1
    returnType: "java.lang.Runnable"
    argCount: 2
    argTypes:
    - "java.lang.Runnable"
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ThreadExecutorMap$2].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadExecutorMap:67,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.ThreadExecutorMap:69,1"
      Dst: "[io.netty.util.internal.ThreadExecutorMap$2].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadExecutorMap$2].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
    functionSourceFile: "io.netty.util.internal.ThreadExecutorMap$2"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadExecutorMap$2:69,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultLastSmtpContent].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultLastSmtpContent"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.DefaultSmtpContent].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultLastSmtpContent:31,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpContent].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultLastSmtpContent].copy()"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultLastSmtpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.smtp.LastSmtpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.DefaultSmtpContent].copy()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultLastSmtpContent:36,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpContent].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpContent].copy()"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.smtp.SmtpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].copy()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpContent:37,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DefaultByteBufHolder].copy()"
    functionSourceFile: "io.netty.buffer.DefaultByteBufHolder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBufHolder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.buffer.DefaultByteBufHolder].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DefaultByteBufHolder:45,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.buffer.DefaultByteBufHolder:45,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DefaultByteBufHolder].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.DefaultByteBufHolder"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBufHolder"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DefaultByteBufHolder:77,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.DefaultByteBufHolder"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 12
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DefaultByteBufHolder:29,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.buffer.DefaultByteBufHolder:30,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultLastSmtpContent].duplicate()"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultLastSmtpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.smtp.LastSmtpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.DefaultSmtpContent].duplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultLastSmtpContent:41,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpContent].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpContent].duplicate()"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.smtp.SmtpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].duplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpContent:42,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DefaultByteBufHolder].duplicate()"
    functionSourceFile: "io.netty.buffer.DefaultByteBufHolder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBufHolder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.buffer.DefaultByteBufHolder].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DefaultByteBufHolder:55,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.buffer.DefaultByteBufHolder:55,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultLastSmtpContent].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultLastSmtpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.smtp.LastSmtpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.DefaultSmtpContent].retainedDuplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultLastSmtpContent:46,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpContent].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpContent].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.smtp.SmtpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retainedDuplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpContent:47,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DefaultByteBufHolder].retainedDuplicate()"
    functionSourceFile: "io.netty.buffer.DefaultByteBufHolder"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBufHolder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.PingWebSocketFrame].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.DefaultByteBufHolder].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.sctp.SctpMessage].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.smtp.DefaultSmtpContent].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.smtp.DefaultLastSmtpContent].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.udt.UdtMessage].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.SwappedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledSlicedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.WrappedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.UnreleasableByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.EmptyByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    functionUses: 1
    ICount: 5
    EdgeCount: 37
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DefaultByteBufHolder:65,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.buffer.DefaultByteBufHolder:65,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultLastSmtpContent].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultLastSmtpContent"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 4
    returnType: "io.netty.handler.codec.smtp.LastSmtpContent"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.DefaultLastSmtpContent].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultLastSmtpContent:51,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultLastSmtpContent].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpContent].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpContent"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpContent:32,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultLastSmtpContent].retain()"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultLastSmtpContent"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionDepth: 2
    returnType: "io.netty.handler.codec.smtp.DefaultLastSmtpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.DefaultSmtpContent].retain()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultLastSmtpContent:56,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpContent].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpContent].retain()"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpContent"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionDepth: 1
    returnType: "io.netty.handler.codec.smtp.SmtpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retain()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpContent:57,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DefaultByteBufHolder].retain()"
    functionSourceFile: "io.netty.buffer.DefaultByteBufHolder"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBufHolder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 11
    ICount: 4
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DefaultByteBufHolder:87,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultLastSmtpContent].retain(int)"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultLastSmtpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.smtp.DefaultLastSmtpContent"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.DefaultSmtpContent].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultLastSmtpContent:62,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpContent].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpContent].retain(int)"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.smtp.SmtpContent"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpContent:63,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DefaultByteBufHolder].retain(int)"
    functionSourceFile: "io.netty.buffer.DefaultByteBufHolder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBufHolder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DefaultByteBufHolder:93,1"
      Dst: "[io.netty.buffer.ByteBuf].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultLastSmtpContent].touch()"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultLastSmtpContent"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionDepth: 2
    returnType: "io.netty.handler.codec.smtp.DefaultLastSmtpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.DefaultSmtpContent].touch()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultLastSmtpContent:68,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpContent].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpContent].touch()"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpContent"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionDepth: 1
    returnType: "io.netty.handler.codec.smtp.SmtpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].touch()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpContent:69,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DefaultByteBufHolder].touch()"
    functionSourceFile: "io.netty.buffer.DefaultByteBufHolder"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBufHolder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.SwappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.SimpleLeakAwareByteBuf:io.netty.buffer.UnreleasableByteBuf].touch()"
    - "[io.netty.buffer.ByteBuf].touch()"
    functionUses: 11
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DefaultByteBufHolder:99,1"
      Dst: "[io.netty.buffer.ByteBuf].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultLastSmtpContent].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultLastSmtpContent"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionDepth: 2
    returnType: "io.netty.handler.codec.smtp.DefaultLastSmtpContent"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.DefaultSmtpContent].touch(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultLastSmtpContent:74,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpContent].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpContent].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpContent"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionDepth: 1
    returnType: "io.netty.handler.codec.smtp.SmtpContent"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].touch(java.lang.Object)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpContent:75,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DefaultByteBufHolder].touch(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.DefaultByteBufHolder"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBufHolder"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.SimpleLeakAwareByteBuf:io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 11
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DefaultByteBufHolder:105,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$2].<init>()"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$2"
    linkageType: ""
    functionLinenumber: 1733
    functionLinenumberEnd: 1735
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$2:1734,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$2].process(byte)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$2"
    linkageType: ""
    functionLinenumber: 1736
    functionLinenumberEnd: 1738
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil$2:1737"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil$2:1736"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].<init>(java.net.URI,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketVersion,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,long,long,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 14
    argTypes:
    - "java.net.URI"
    - "java.lang.String"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    - "boolean"
    - "long"
    - "long"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(long,java.lang.String)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig:68,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig:81,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].webSocketUri()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.net.URI"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].subprotocol()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].version()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].allowExtensions()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].customHeaders()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].maxFramePayloadLength()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].performMasking()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].allowMaskMismatch()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].sendCloseFrame()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].dropPongFrames()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].forceCloseTimeoutMillis()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].absoluteUpgradeUrl()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].toString()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 48
    EdgeCount: 31
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig:143,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig:143,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig:143,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig:143,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig:143,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig:143,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig:143,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].toBuilder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig,io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$1)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig:162,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig,io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig,io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$1)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    - "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:183,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].webSocketUri()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].subprotocol()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].version()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].allowExtensions()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].customHeaders()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].maxFramePayloadLength()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].performMasking()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].allowMaskMismatch()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].handleCloseFrames()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].sendCloseFrame()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].dropPongFrames()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].handshakeTimeoutMillis()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].forceCloseTimeoutMillis()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].absoluteUpgradeUrl()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].<init>(java.net.URI,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketVersion,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,long,long,boolean)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:200,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:200,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].webSocketUri()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:201,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].subprotocol()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:202,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].version()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:203,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].allowExtensions()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:204,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].customHeaders()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:205,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].maxFramePayloadLength()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:206,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].performMasking()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:207,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].allowMaskMismatch()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:208,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].handleCloseFrames()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:209,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].sendCloseFrame()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:210,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].dropPongFrames()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:211,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].handshakeTimeoutMillis()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:212,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].forceCloseTimeoutMillis()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:213,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].absoluteUpgradeUrl()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:200,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].<init>(java.net.URI,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketVersion,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,long,long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].<init>(java.net.URI,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketVersion,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,long,long,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 14
    argTypes:
    - "java.net.URI"
    - "java.lang.String"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    - "boolean"
    - "long"
    - "long"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:229,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].newBuilder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URI].create(java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].<init>(java.net.URI,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketVersion,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$1)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig:167,1"
      Dst: "[java.net.URI].create(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig:167,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].<init>(java.net.URI,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketVersion,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].<init>(java.net.URI,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketVersion,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$1)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 15
    argTypes:
    - "java.net.URI"
    - "java.lang.String"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    - "boolean"
    - "long"
    - "long"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].<init>(java.net.URI,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketVersion,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,long,long,boolean)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder:183,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$Builder].<init>(java.net.URI,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketVersion,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,long,long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].<init>(java.net.URI,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketVersion,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$1)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 15
    argTypes:
    - "java.net.URI"
    - "java.lang.String"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    - "boolean"
    - "long"
    - "long"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].<init>(java.net.URI,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketVersion,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,long,long,boolean)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig:31,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].<init>(java.net.URI,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketVersion,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,long,long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].<init>(io.netty.handler.codec.http2.Http2Connection)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2RemoteFlowController$Listener)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:58,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2RemoteFlowController$Listener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.StreamByteDistributor)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    - "io.netty.handler.codec.http2.StreamByteDistributor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.StreamByteDistributor,io.netty.handler.codec.http2.Http2RemoteFlowController$Listener)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:63,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.StreamByteDistributor,io.netty.handler.codec.http2.Http2RemoteFlowController$Listener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2RemoteFlowController$Listener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    - "io.netty.handler.codec.http2.Http2RemoteFlowController$Listener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].<init>(io.netty.handler.codec.http2.Http2Connection)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.StreamByteDistributor,io.netty.handler.codec.http2.Http2RemoteFlowController$Listener)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:67,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].<init>(io.netty.handler.codec.http2.Http2Connection)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:67,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.StreamByteDistributor,io.netty.handler.codec.http2.Http2RemoteFlowController$Listener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.StreamByteDistributor,io.netty.handler.codec.http2.Http2RemoteFlowController$Listener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    - "io.netty.handler.codec.http2.StreamByteDistributor"
    - "io.netty.handler.codec.http2.Http2RemoteFlowController$Listener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2Connection].newKey()"
    - "[io.netty.handler.codec.http2.Http2Connection].connectionStream()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].listener(io.netty.handler.codec.http2.Http2RemoteFlowController$Listener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].windowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$1].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.Http2Connection].addListener(io.netty.handler.codec.http2.Http2Connection$Listener)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:72,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:73,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:77,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].newKey()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:78,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].connectionStream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:78,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:79,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:82,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].listener(io.netty.handler.codec.http2.Http2RemoteFlowController$Listener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:83,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].windowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:86,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$1].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:86,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].addListener(io.netty.handler.codec.http2.Http2Connection$Listener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].channelHandlerContext(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 149
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].channelWritabilityChanged()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].isChannelWritable()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].writePendingBytes()"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:145"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:148"
        BranchSideFuncs:
        - "writePendingBytes()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:135,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:139,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].channelWritabilityChanged()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:145,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].isChannelWritable()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:146,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].writePendingBytes()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].channelWritabilityChanged()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].channelWritabilityChange()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].channelWritabilityChange()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:178,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].channelWritabilityChange()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].channelWritabilityChange()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor"
    linkageType: ""
    functionLinenumber: 553
    functionLinenumberEnd: 555
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].isChannelWritable()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].isChannelWritable0()"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:192"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:191"
        BranchSideFuncs:
        - "isChannelWritable0()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:192"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:191"
        BranchSideFuncs:
        - "isChannelWritable0()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:192,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].isChannelWritable0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].isChannelWritable0()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannel].isWritable()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isWritable()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].isWritable()"
    functionUses: 2
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:196,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:196,1"
      Dst: "[io.netty.channel.Channel].isWritable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].writePendingBytes()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 269
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].writePendingBytes()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:267,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].writePendingBytes()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].writePendingBytes()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor"
    linkageType: ""
    functionLinenumber: 617
    functionLinenumberEnd: 637
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$900(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$600(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].distribute(int,io.netty.handler.codec.http2.StreamByteDistributor$Writer)"
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor].distribute(int,io.netty.handler.codec.http2.StreamByteDistributor$Writer)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1000(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.StreamByteDistributor].distribute(int,io.netty.handler.codec.http2.StreamByteDistributor$Writer)"
    functionUses: 2
    ICount: 25
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:618"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:621"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:620"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:627"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:634"
        BranchSideFuncs:
        - "access$900(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:633"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:628"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:634"
        BranchSideFuncs:
        - "access$1000(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:633"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:629"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:627"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:626"
        BranchSideFuncs:
        - "access$600(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "distribute(int,io.netty.handler.codec.http2.StreamByteDistributor$Writer)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:623,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$900(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:627,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$600(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:627,1"
      Dst: "[io.netty.handler.codec.http2.StreamByteDistributor].distribute(int,io.netty.handler.codec.http2.StreamByteDistributor$Writer)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:629,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1000(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$900(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].writableBytes()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:45,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].writableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].writableBytes()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 263
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].connectionWindowSize()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].maxUsableChannelBytes()"
    - "[java.lang.Math].min(int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:262,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].connectionWindowSize()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:262,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].maxUsableChannelBytes()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:262,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].connectionWindowSize()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 234
    functionLinenumberEnd: 236
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].windowSize()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:235,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].windowSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].windowSize()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 325
    functionLinenumberEnd: 327
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].maxUsableChannelBytes()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 249
    functionLinenumberEnd: 255
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].bytesBeforeUnwritable()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].bytesBeforeUnwritable()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[java.lang.Math].min(long,long)"
    - "[java.lang.Math].max(int,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].minUsableChannelBytes()"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].windowSize()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].bytesBeforeUnwritable()"
    functionUses: 1
    ICount: 15
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:251"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:249"
        BranchSideFuncs:
        - "min(long,long)"
        - "bytesBeforeUnwritable()"
        - "channel()"
        - "max(int,int)"
        - "minUsableChannelBytes()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:250,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:250,1"
      Dst: "[io.netty.channel.Channel].bytesBeforeUnwritable()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:250,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:251,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].minUsableChannelBytes()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:251,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:254,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].windowSize()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:254,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].minUsableChannelBytes()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 246
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.embedded.EmbeddedChannel].config()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].config()"
    - "[io.netty.bootstrap.FailedChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.local.LocalServerChannel].config()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].config()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].config()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].getWriteBufferLowWaterMark()"
    - "[java.lang.Math].max(int,int)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.channel.ChannelConfig].getWriteBufferLowWaterMark()"
    functionUses: 1
    ICount: 8
    EdgeCount: 35
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:245,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:245,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:245,1"
      Dst: "[io.netty.channel.ChannelConfig].getWriteBufferLowWaterMark()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:245,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$600(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.StreamByteDistributor"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1000(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].isChannelWritable0()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:45,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].isChannelWritable0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].channelHandlerContext()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].initialWindowSize(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 160
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].initialWindowSize(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].initialWindowSize(int)"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    functionUses: 1
    ICount: 16
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:158"
        BranchSideFuncs:
        - "initialWindowSize(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:157"
        BranchSideFuncs:
        - "initialWindowSize(int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:158"
        BranchSideFuncs:
        - "initialWindowSize(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:157"
        BranchSideFuncs:
        - "initialWindowSize(int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:158"
        BranchSideFuncs:
        - "initialWindowSize(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:157"
        BranchSideFuncs:
        - "initialWindowSize(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:157,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:157,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:157,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:158,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].initialWindowSize(int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].initialWindowSize(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor"
    linkageType: ""
    functionLinenumber: 638
    functionLinenumberEnd: 656
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$200(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$202(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor$1].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1100(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1200(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].writePendingBytes()"
    - "[io.netty.handler.codec.http2.Http2Connection].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    functionUses: 2
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:651"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:654"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:651"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:654"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:639,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:641,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$200(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:642,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$202(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:643,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1100(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:643,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor$1].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:643,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:651,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1200(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:653,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].writePendingBytes()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$200(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$202(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1100(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Connection"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor$1].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor$1"
    linkageType: ""
    functionLinenumber: 642
    functionLinenumberEnd: 644
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor$1:643,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1200(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].isChannelWritable()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:45,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].isChannelWritable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].initialWindowSize()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].windowSize(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].windowSize()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:168,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:168,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].windowSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 227
    functionLinenumberEnd: 229
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:228,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].isWritable(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritable(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:173,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:173,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritable(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritable(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor"
    linkageType: ""
    functionLinenumber: 608
    functionLinenumberEnd: 610
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].isWritable()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritableConnection()"
    functionUses: 4
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:609"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:608"
        BranchSideFuncs:
        - "isWritableConnection()"
        - "isWritable()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:609"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:608"
        BranchSideFuncs:
        - "isWritableConnection()"
        - "isWritable()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:609,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritableConnection()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:609,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].isWritable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritableConnection()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor"
    linkageType: ""
    functionLinenumber: 657
    functionLinenumberEnd: 659
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1200(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$800(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].windowSize()"
    functionUses: 4
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:658"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:657"
        BranchSideFuncs:
        - "windowSize()"
        - "access$1200(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "access$800(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:658"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:657"
        BranchSideFuncs:
        - "windowSize()"
        - "access$1200(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "access$800(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:658,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$800(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:658,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].windowSize()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:658,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1200(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$800(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].isWritable()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 298
    functionLinenumberEnd: 300
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].pendingBytes()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].windowSize()"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:299"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:298"
        BranchSideFuncs:
        - "windowSize()"
        - "pendingBytes()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:299"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:298"
        BranchSideFuncs:
        - "windowSize()"
        - "pendingBytes()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:299,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].windowSize()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:299,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].pendingBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].pendingBytes()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 425
    functionLinenumberEnd: 427
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].updateDependencyTree(int,int,short,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 190
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "short"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].updateDependencyTree(int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor].updateDependencyTree(int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.StreamByteDistributor].updateDependencyTree(int,int,short,boolean)"
    functionUses: 2
    ICount: 30
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:185"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:184"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:184"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:183"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:185"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:184"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:185"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:186"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:185"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:185"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:186"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:185"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:187"
        BranchSideFuncs:
        - "updateDependencyTree(int,int,short,boolean)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:185"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:187"
        BranchSideFuncs:
        - "updateDependencyTree(int,int,short,boolean)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:184,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:188,1"
      Dst: "[io.netty.handler.codec.http2.StreamByteDistributor].updateDependencyTree(int,int,short,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].listener(io.netty.handler.codec.http2.Http2RemoteFlowController$Listener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2RemoteFlowController$Listener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$1)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,io.netty.handler.codec.http2.Http2RemoteFlowController$Listener)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:201"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:201"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:200"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:201,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$1)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:201,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,io.netty.handler.codec.http2.Http2RemoteFlowController$Listener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$1)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:541,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:541,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,io.netty.handler.codec.http2.Http2RemoteFlowController$Listener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    - "io.netty.handler.codec.http2.Http2RemoteFlowController$Listener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$1)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:673,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].incrementWindowSize(io.netty.handler.codec.http2.Http2Stream,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 209
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].incrementWindowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].incrementWindowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    functionUses: 1
    ICount: 18
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:207"
        BranchSideFuncs:
        - "state(io.netty.handler.codec.http2.Http2Stream)"
        - "incrementWindowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:206"
        BranchSideFuncs:
        - "state(io.netty.handler.codec.http2.Http2Stream)"
        - "incrementWindowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:207"
        BranchSideFuncs:
        - "state(io.netty.handler.codec.http2.Http2Stream)"
        - "incrementWindowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:206"
        BranchSideFuncs:
        - "state(io.netty.handler.codec.http2.Http2Stream)"
        - "incrementWindowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:207"
        BranchSideFuncs:
        - "state(io.netty.handler.codec.http2.Http2Stream)"
        - "incrementWindowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:206"
        BranchSideFuncs:
        - "state(io.netty.handler.codec.http2.Http2Stream)"
        - "incrementWindowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:206,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:206,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:206,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:207,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:207,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].incrementWindowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].incrementWindowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor"
    linkageType: ""
    functionLinenumber: 577
    functionLinenumberEnd: 580
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].incrementStreamWindow(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:578,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].incrementStreamWindow(int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].incrementStreamWindow(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 406
    functionLinenumberEnd: 415
    functionDepth: 5
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$600(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor].updateStreamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].updateStreamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.handler.codec.http2.StreamByteDistributor].updateStreamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    functionUses: 4
    ICount: 24
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:407"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:411"
        BranchSideFuncs:
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:410"
        BranchSideFuncs:
        - "access$600(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "updateStreamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:407"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:411"
        BranchSideFuncs:
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:410"
        BranchSideFuncs:
        - "access$600(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "updateStreamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:408,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:409,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:408,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:413,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$600(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:413,1"
      Dst: "[io.netty.handler.codec.http2.StreamByteDistributor].updateStreamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 154
    functionDepth: 4
    returnType: "io.netty.handler.codec.http2.Http2Exception"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2Exception$StreamException].<init>(int,io.netty.handler.codec.http2.Http2Error,java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2Exception].formatErrorMessage(java.lang.String,java.lang.Object[])"
    functionUses: 37
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2Exception:151"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:151"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception:152,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.Http2Exception:153,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].formatErrorMessage(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.Http2Exception:153,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception$StreamException].<init>(int,io.netty.handler.codec.http2.Http2Error,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionDepth: 3
    returnType: "io.netty.handler.codec.http2.Http2Exception"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2Exception].formatErrorMessage(java.lang.String,java.lang.Object[])"
    functionUses: 68
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception:109,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].formatErrorMessage(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.Http2Exception:109,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception:50,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 58
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.String"
    - "io.netty.handler.codec.http2.Http2Exception$ShutdownHint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 5
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception:54,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2Exception:55,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception$StreamException].<init>(int,io.netty.handler.codec.http2.Http2Error,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception$StreamException"
    linkageType: ""
    functionLinenumber: 273
    functionLinenumberEnd: 277
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception$StreamException:274,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].addFlowControlled(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 221
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].enqueueFrame(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].enqueueFrame(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders].error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionUses: 2
    ICount: 23
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:213"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:214"
        BranchSideFuncs:
        - "enqueueFrame(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
        - "state(io.netty.handler.codec.http2.Http2Stream)"
        - "error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "checkNotNull(java.lang.Object,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:213"
        BranchSideFuncs:
        - "enqueueFrame(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
        - "state(io.netty.handler.codec.http2.Http2Stream)"
        - "error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "checkNotNull(java.lang.Object,java.lang.String)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:213"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:214"
        BranchSideFuncs:
        - "enqueueFrame(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
        - "state(io.netty.handler.codec.http2.Http2Stream)"
        - "error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "checkNotNull(java.lang.Object,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:213"
        BranchSideFuncs:
        - "enqueueFrame(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
        - "state(io.netty.handler.codec.http2.Http2Stream)"
        - "error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "checkNotNull(java.lang.Object,java.lang.String)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:213"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:214"
        BranchSideFuncs:
        - "enqueueFrame(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
        - "state(io.netty.handler.codec.http2.Http2Stream)"
        - "error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "checkNotNull(java.lang.Object,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:213"
        BranchSideFuncs:
        - "enqueueFrame(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
        - "state(io.netty.handler.codec.http2.Http2Stream)"
        - "error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "checkNotNull(java.lang.Object,java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:213,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:213,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:213,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:214,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:216,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:216,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].enqueueFrame(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:218,1"
      Dst: "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].enqueueFrame(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor"
    linkageType: ""
    functionLinenumber: 587
    functionLinenumberEnd: 590
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    - "io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].enqueueFrame(io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:588,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].enqueueFrame(io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].enqueueFrame(io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 432
    functionLinenumberEnd: 446
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentLinkedDeque].peekLast()"
    - "[java.util.concurrent.LinkedBlockingDeque].peekLast()"
    - "[java.util.LinkedList].peekLast()"
    - "[java.util.ArrayDeque].peekLast()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].enqueueFrameWithoutMerge(io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders].size()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].size()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].merge(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders].merge(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].incrementPendingBytes(int,boolean)"
    - "[java.util.Deque].peekLast()"
    - "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].size()"
    - "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].merge(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    functionUses: 1
    ICount: 19
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:434"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:439"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:438"
        BranchSideFuncs:
        - "merge(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
        - "access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:440"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:444"
        BranchSideFuncs:
        - "incrementPendingBytes(int,boolean)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:443"
        BranchSideFuncs:
        - "enqueueFrameWithoutMerge(io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:433,1"
      Dst: "[java.util.Deque].peekLast()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:435,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].enqueueFrameWithoutMerge(io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:439,1"
      Dst: "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].size()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:440,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:440,1"
      Dst: "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].merge(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:441,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].incrementPendingBytes(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].enqueueFrameWithoutMerge(io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 447
    functionLinenumberEnd: 453
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].offer(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].offer(java.lang.Object)"
    - "[java.util.ArrayDeque].offer(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].offer(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].incrementPendingBytes(int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders].size()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].size()"
    - "[java.util.Deque].offer(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].size()"
    functionUses: 2
    ICount: 7
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:448,1"
      Dst: "[java.util.Deque].offer(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:451,1"
      Dst: "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].size()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:451,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].incrementPendingBytes(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].incrementPendingBytes(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 498
    functionLinenumberEnd: 505
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$300(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].incrementPendingBytes(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$600(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor].updateStreamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].updateStreamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    - "[io.netty.handler.codec.http2.StreamByteDistributor].updateStreamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    functionUses: 3
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:501"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:504"
        BranchSideFuncs:
        - "access$600(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "updateStreamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:503"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:500,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$300(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:500,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].incrementPendingBytes(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:502,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$600(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:502,1"
      Dst: "[io.netty.handler.codec.http2.StreamByteDistributor].updateStreamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$300(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].incrementPendingBytes(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor"
    linkageType: ""
    functionLinenumber: 596
    functionLinenumberEnd: 602
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].hasFlowControlled(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].hasFrame()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:224,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:224,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].hasFrame()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].hasFrame()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 455
    functionLinenumberEnd: 457
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentLinkedDeque].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.ArrayDeque].isEmpty()"
    - "[java.util.Collection].isEmpty()"
    functionUses: 3
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:456"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:455"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:456,1"
      Dst: "[java.util.Collection].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$000(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Connection$PropertyKey"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$100(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:45,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$700(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].connectionWindowSize()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController:45,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].connectionWindowSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1400()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$7].<init>(io.netty.channel.AbstractChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$7"
    linkageType: ""
    functionLinenumber: 421
    functionLinenumberEnd: 423
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$7:422,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$7"
    linkageType: ""
    functionLinenumber: 424
    functionLinenumberEnd: 427
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].access$600(io.netty.channel.AbstractChannelHandlerContext,java.lang.Object)"
    functionUses: 50
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$7:425,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].access$600(io.netty.channel.AbstractChannelHandlerContext,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].<init>(io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.AbstractSocks5Message].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse:29,1"
      Dst: "[io.netty.handler.codec.socksx.v5.AbstractSocks5Message].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse:30,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].status()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].toString()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 54
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.AbstractSocksMessage].decoderResult()"
    - "[io.netty.handler.codec.DecoderResult].isSuccess()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].status()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 17
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse:43"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse:47"
        BranchSideFuncs:
        - "append(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse:40,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse:40,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse:42,1"
      Dst: "[io.netty.handler.codec.socksx.AbstractSocksMessage].decoderResult()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse:43,1"
      Dst: "[io.netty.handler.codec.DecoderResult].isSuccess()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse:44,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse:45,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse:50,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].status()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse:51,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse:53,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.ImmediateEventExecutor].<init>()"
    functionSourceFile: "io.netty.util.concurrent.ImmediateEventExecutor"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FailedFuture].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Throwable)"
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ImmediateEventExecutor:58,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].<init>()"
    - Src: "io.netty.util.concurrent.ImmediateEventExecutor:55,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    - Src: "io.netty.util.concurrent.ImmediateEventExecutor:55,1"
      Dst: "[io.netty.util.concurrent.FailedFuture].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    functionSourceFile: "io.netty.util.concurrent.ImmediateEventExecutor"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 63
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop(java.lang.Thread)"
    functionSourceFile: "io.netty.util.concurrent.ImmediateEventExecutor"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Thread"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateEventExecutor].shutdownGracefully(long,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.ImmediateEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future<?>"
    argCount: 3
    argTypes:
    - "long"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.ImmediateEventExecutor].terminationFuture()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ImmediateEventExecutor:72,1"
      Dst: "[io.netty.util.concurrent.ImmediateEventExecutor].terminationFuture()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateEventExecutor].terminationFuture()"
    functionSourceFile: "io.netty.util.concurrent.ImmediateEventExecutor"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateEventExecutor].shutdown()"
    functionSourceFile: "io.netty.util.concurrent.ImmediateEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateEventExecutor].isShuttingDown()"
    functionSourceFile: "io.netty.util.concurrent.ImmediateEventExecutor"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateEventExecutor].isShutdown()"
    functionSourceFile: "io.netty.util.concurrent.ImmediateEventExecutor"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateEventExecutor].isTerminated()"
    functionSourceFile: "io.netty.util.concurrent.ImmediateEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateEventExecutor].awaitTermination(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.ImmediateEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.ImmediateEventExecutor"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 129
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.util.concurrent.FastThreadLocal].get()"
    - "[io.netty.util.concurrent.FastThreadLocal].set(java.lang.Object)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[io.netty.util.internal.logging.Log4JLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].add(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue:java.util.AbstractQueue:java.util.ArrayDeque:java.util.LinkedList:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.LinkedBlockingDeque].add(java.lang.Object)"
    - "[java.lang.Runnable].run()"
    - "[java.util.Queue].poll()"
    - "[io.netty.util.internal.logging.InternalLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.util.Queue].add(java.lang.Object)"
    functionUses: 42
    ICount: 70
    EdgeCount: 747
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.ImmediateEventExecutor:107"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ImmediateEventExecutor:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.ImmediateEventExecutor:125"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "get()"
    - Branch String: "io.netty.util.concurrent.ImmediateEventExecutor:116"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ImmediateEventExecutor:123"
        BranchSideFuncs:
        - "run()"
        - "info(java.lang.String,java.lang.Object,java.lang.Object)"
        - "poll()"
      - BranchSide: "io.netty.util.concurrent.ImmediateEventExecutor:122"
        BranchSideFuncs:
        - "valueOf(boolean)"
        - "set(java.lang.Object)"
    - Branch String: "io.netty.util.concurrent.ImmediateEventExecutor:116"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ImmediateEventExecutor:123"
        BranchSideFuncs:
        - "run()"
        - "info(java.lang.String,java.lang.Object,java.lang.Object)"
        - "poll()"
      - BranchSide: "io.netty.util.concurrent.ImmediateEventExecutor:122"
        BranchSideFuncs:
        - "valueOf(boolean)"
        - "set(java.lang.Object)"
    - Branch String: "io.netty.util.concurrent.ImmediateEventExecutor:116"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ImmediateEventExecutor:123"
        BranchSideFuncs:
        - "run()"
        - "info(java.lang.String,java.lang.Object,java.lang.Object)"
        - "poll()"
      - BranchSide: "io.netty.util.concurrent.ImmediateEventExecutor:122"
        BranchSideFuncs:
        - "valueOf(boolean)"
        - "set(java.lang.Object)"
    Callsites:
    - Src: "io.netty.util.concurrent.ImmediateEventExecutor:106,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.concurrent.ImmediateEventExecutor:107,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].get()"
    - Src: "io.netty.util.concurrent.ImmediateEventExecutor:107,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.util.concurrent.ImmediateEventExecutor:108,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.util.concurrent.ImmediateEventExecutor:108,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].set(java.lang.Object)"
    - Src: "io.netty.util.concurrent.ImmediateEventExecutor:110,1"
      Dst: "[java.lang.Runnable].run()"
    - Src: "io.netty.util.concurrent.ImmediateEventExecutor:116,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.util.concurrent.ImmediateEventExecutor:120,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.concurrent.ImmediateEventExecutor:126,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].set(java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 198
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - "[io.netty.util.concurrent.FastThreadLocal].setKnownNotUnset(io.netty.util.internal.InternalThreadLocalMap,java.lang.Object)"
    - "[io.netty.util.concurrent.FastThreadLocal].remove()"
    functionUses: 7
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:191"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:195"
        BranchSideFuncs:
        - "setKnownNotUnset(io.netty.util.internal.InternalThreadLocalMap,java.lang.Object)"
        - "get()"
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:194"
        BranchSideFuncs:
        - "remove()"
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocal:192,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - Src: "io.netty.util.concurrent.FastThreadLocal:193,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].setKnownNotUnset(io.netty.util.internal.InternalThreadLocalMap,java.lang.Object)"
    - Src: "io.netty.util.concurrent.FastThreadLocal:195,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].setKnownNotUnset(io.netty.util.internal.InternalThreadLocalMap,java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: 213
    functionLinenumberEnd: 218
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.InternalThreadLocalMap"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].setIndexedVariable(int,java.lang.Object)"
    - "[io.netty.util.concurrent.FastThreadLocal].addToVariablesToRemove(io.netty.util.internal.InternalThreadLocalMap,io.netty.util.concurrent.FastThreadLocal)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:214"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:217"
        BranchSideFuncs:
        - "addToVariablesToRemove(io.netty.util.internal.InternalThreadLocalMap,io.netty.util.concurrent.FastThreadLocal)"
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:216"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocal:214,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].setIndexedVariable(int,java.lang.Object)"
    - Src: "io.netty.util.concurrent.FastThreadLocal:215,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].addToVariablesToRemove(io.netty.util.internal.InternalThreadLocalMap,io.netty.util.concurrent.FastThreadLocal)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].remove()"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: 237
    functionLinenumberEnd: 240
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].getIfSet()"
    - "[io.netty.util.concurrent.FastThreadLocal].remove(io.netty.util.internal.InternalThreadLocalMap)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocal:238,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].getIfSet()"
    - Src: "io.netty.util.concurrent.FastThreadLocal:238,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].remove(io.netty.util.internal.InternalThreadLocalMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].getIfSet()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 110
    functionDepth: 1
    returnType: "io.netty.util.internal.InternalThreadLocalMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].currentThread()"
    - "[io.netty.util.concurrent.FastThreadLocalThread].threadLocalMap()"
    - "[java.lang.ThreadLocal].get()"
    functionUses: 3
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:106"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:109"
        BranchSideFuncs:
        - "threadLocalMap()"
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:108"
        BranchSideFuncs:
        - "get()"
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:105,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:107,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocalThread].threadLocalMap()"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:109,1"
      Dst: "[java.lang.ThreadLocal].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].remove(io.netty.util.internal.InternalThreadLocalMap)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 263
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.InternalThreadLocalMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].removeIndexedVariable(int)"
    - "[io.netty.util.concurrent.FastThreadLocal].removeFromVariablesToRemove(io.netty.util.internal.InternalThreadLocalMap,io.netty.util.concurrent.FastThreadLocal)"
    - "[io.netty.util.Recycler$2].onRemoval(java.lang.Object)"
    - "[io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache].onRemoval(java.lang.Object)"
    - "[io.netty.util.concurrent.FastThreadLocal].onRemoval(java.lang.Object)"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    functionUses: 3
    ICount: 14
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:248"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:252"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:251"
        BranchSideFuncs:
        - "removeIndexedVariable(int)"
        - "removeFromVariablesToRemove(io.netty.util.internal.InternalThreadLocalMap,io.netty.util.concurrent.FastThreadLocal)"
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:255"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:262"
        BranchSideFuncs:
        - "removeIndexedVariable(int)"
        - "removeFromVariablesToRemove(io.netty.util.internal.InternalThreadLocalMap,io.netty.util.concurrent.FastThreadLocal)"
        - "onRemoval(java.lang.Object)"
        - "throwException(java.lang.Throwable)"
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:261"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocal:252,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].removeIndexedVariable(int)"
    - Src: "io.netty.util.concurrent.FastThreadLocal:253,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].removeFromVariablesToRemove(io.netty.util.internal.InternalThreadLocalMap,io.netty.util.concurrent.FastThreadLocal)"
    - Src: "io.netty.util.concurrent.FastThreadLocal:257,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].onRemoval(java.lang.Object)"
    - Src: "io.netty.util.concurrent.FastThreadLocal:259,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].removeIndexedVariable(int)"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 367
    functionLinenumberEnd: 375
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:369"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:374"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:373"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].onRemoval(java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: 275
    functionLinenumberEnd: 277
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateEventExecutor].newPromise()"
    functionSourceFile: "io.netty.util.concurrent.ImmediateEventExecutor"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionDepth: 3
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.ImmediateEventExecutor$ImmediatePromise].<init>(io.netty.util.concurrent.EventExecutor)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ImmediateEventExecutor:132,1"
      Dst: "[io.netty.util.concurrent.ImmediateEventExecutor$ImmediatePromise].<init>(io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateEventExecutor$ImmediatePromise].<init>(io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.util.concurrent.ImmediateEventExecutor$ImmediatePromise"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 144
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].<init>(io.netty.util.concurrent.EventExecutor)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ImmediateEventExecutor$ImmediatePromise:142,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].<init>(io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateEventExecutor].newProgressivePromise()"
    functionSourceFile: "io.netty.util.concurrent.ImmediateEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.util.concurrent.ProgressivePromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.ImmediateEventExecutor$ImmediateProgressivePromise].<init>(io.netty.util.concurrent.EventExecutor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ImmediateEventExecutor:137,1"
      Dst: "[io.netty.util.concurrent.ImmediateEventExecutor$ImmediateProgressivePromise].<init>(io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateEventExecutor$ImmediateProgressivePromise].<init>(io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.util.concurrent.ImmediateEventExecutor$ImmediateProgressivePromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultProgressivePromise].<init>(io.netty.util.concurrent.EventExecutor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ImmediateEventExecutor$ImmediateProgressivePromise:153,1"
      Dst: "[io.netty.util.concurrent.DefaultProgressivePromise].<init>(io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultProgressivePromise].<init>(io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.util.concurrent.DefaultProgressivePromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].<init>(io.netty.util.concurrent.EventExecutor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:32,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].<init>(io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel$2].<init>(io.netty.channel.local.LocalChannel)"
    functionSourceFile: "io.netty.channel.local.LocalChannel$2"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel$2:73,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel$2].run()"
    functionSourceFile: "io.netty.channel.local.LocalChannel$2"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].voidPromise()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].voidPromise()"
    - "[io.netty.channel.Channel$Unsafe].voidPromise()"
    - "[io.netty.channel.Channel$Unsafe].close(io.netty.channel.ChannelPromise)"
    functionUses: 49
    ICount: 8
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel$2:76,1"
      Dst: "[io.netty.channel.AbstractChannel].unsafe()"
    - Src: "io.netty.channel.local.LocalChannel$2:76,1"
      Dst: "[io.netty.channel.Channel$Unsafe].voidPromise()"
    - Src: "io.netty.channel.local.LocalChannel$2:76,1"
      Dst: "[io.netty.channel.Channel$Unsafe].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 40
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.util.ResourceLeakTracker"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 4
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:36,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:37,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.util.ResourceLeakTracker"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:42,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].slice()"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].newSharedLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].slice()"
    functionUses: 9
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:47,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].slice()"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:47,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].newSharedLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].slice()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 891
    functionLinenumberEnd: 893
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice()"
    - "[io.netty.buffer.SwappedByteBuf].slice()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice()"
    - "[io.netty.buffer.AbstractByteBuf].slice()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice()"
    - "[io.netty.buffer.WrappedByteBuf].slice()"
    - "[io.netty.buffer.UnreleasableByteBuf].slice()"
    - "[io.netty.buffer.EmptyByteBuf].slice()"
    - "[io.netty.buffer.ByteBuf].slice()"
    functionUses: 9
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:892,1"
      Dst: "[io.netty.buffer.ByteBuf].slice()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].newSharedLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionDepth: 0
    returnType: "io.netty.buffer.SimpleLeakAwareByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    functionUses: 7
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:167,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedSlice()"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 8
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].retainedSlice()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].unwrappedDerived(io.netty.buffer.ByteBuf)"
    functionUses: 6
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:52,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].retainedSlice()"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:52,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].unwrappedDerived(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].retainedSlice()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 896
    functionLinenumberEnd: 898
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedSlice()"
    - "[io.netty.buffer.SwappedByteBuf].retainedSlice()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedSlice()"
    - "[io.netty.buffer.AbstractByteBuf].retainedSlice()"
    - "[io.netty.buffer.UnreleasableByteBuf].retainedSlice()"
    - "[io.netty.buffer.PooledByteBuf].retainedSlice()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedSlice()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].retainedSlice()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retainedSlice()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedSlice()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedSlice()"
    - "[io.netty.buffer.WrappedByteBuf].retainedSlice()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedSlice()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedSlice()"
    - "[io.netty.buffer.EmptyByteBuf].retainedSlice()"
    - "[io.netty.buffer.ByteBuf].retainedSlice()"
    functionUses: 6
    ICount: 4
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:897,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedSlice()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].unwrappedDerived(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 151
    functionDepth: 7
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].unwrapSwapped(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].parent(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ResourceLeakDetector].track(java.lang.Object)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].newSharedLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    functionUses: 4
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.buffer.SimpleLeakAwareByteBuf:139"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SimpleLeakAwareByteBuf:149"
        BranchSideFuncs:
        - "newSharedLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.buffer.SimpleLeakAwareByteBuf:144"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SimpleLeakAwareByteBuf:147"
        BranchSideFuncs:
        - "newLeakAwareByteBuf(io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:137,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].unwrapSwapped(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:141,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].parent(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:143,1"
      Dst: "[io.netty.util.ResourceLeakDetector].track(java.lang.Object)"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:148,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:150,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].newSharedLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].unwrapSwapped(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 163
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].unwrap()"
    - "[io.netty.buffer.SlicedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].unwrap()"
    - "[io.netty.buffer.CompositeByteBuf].unwrap()"
    - "[io.netty.buffer.SwappedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].unwrap()"
    - "[io.netty.buffer.EmptyByteBuf].unwrap()"
    - "[io.netty.buffer.FixedCompositeByteBuf].unwrap()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].unwrap()"
    - "[io.netty.buffer.PooledByteBuf].unwrap()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.ReadOnlyByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.WrappedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].unwrap()"
    functionUses: 1
    ICount: 9
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.buffer.SimpleLeakAwareByteBuf:155"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SimpleLeakAwareByteBuf:161"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.SimpleLeakAwareByteBuf:158"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SimpleLeakAwareByteBuf:156"
        BranchSideFuncs:
        - "unwrap()"
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:157,1"
      Dst: "[io.netty.buffer.ByteBuf].unwrap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.ResourceLeakDetector].track(java.lang.Object)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 246
    functionDepth: 6
    returnType: "io.netty.util.ResourceLeakTracker"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector].track0(java.lang.Object)"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector:245,1"
      Dst: "[io.netty.util.ResourceLeakDetector].track0(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector].track0(java.lang.Object)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector"
    linkageType: ""
    functionLinenumber: 249
    functionLinenumberEnd: 264
    functionDepth: 5
    returnType: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextInt(int)"
    - "[java.util.Random].nextInt(int)"
    - "[java.util.concurrent.ThreadLocalRandom].nextInt(int)"
    - "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - "[io.netty.util.ResourceLeakDetector].reportLeak()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].<init>(java.lang.Object,java.lang.ref.ReferenceQueue,java.util.Set,java.lang.Object)"
    - "[io.netty.util.ResourceLeakDetector].getInitialHint(java.lang.String)"
    functionUses: 1
    ICount: 31
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.util.ResourceLeakDetector:251"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector:255"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ResourceLeakDetector:254"
        BranchSideFuncs:
        - "ordinal()"
    - Branch String: "io.netty.util.ResourceLeakDetector:255"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector:262"
        BranchSideFuncs:
        - "threadLocalRandom()"
        - "nextInt(int)"
      - BranchSide: "io.netty.util.ResourceLeakDetector:261"
        BranchSideFuncs:
        - "reportLeak()"
        - "getInitialHint(java.lang.String)"
        - "<init>(java.lang.Object,java.lang.ref.ReferenceQueue,java.util.Set,java.lang.Object)"
    - Branch String: "io.netty.util.ResourceLeakDetector:256"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector:260"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ResourceLeakDetector:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector:255,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.util.ResourceLeakDetector:256,1"
      Dst: "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - Src: "io.netty.util.ResourceLeakDetector:256,1"
      Dst: "[java.util.Random].nextInt(int)"
    - Src: "io.netty.util.ResourceLeakDetector:257,1"
      Dst: "[io.netty.util.ResourceLeakDetector].reportLeak()"
    - Src: "io.netty.util.ResourceLeakDetector:258,1"
      Dst: "[io.netty.util.ResourceLeakDetector].getInitialHint(java.lang.String)"
    - Src: "io.netty.util.ResourceLeakDetector:258,1"
      Dst: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].<init>(java.lang.Object,java.lang.ref.ReferenceQueue,java.util.Set,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector].reportLeak()"
    functionSourceFile: "io.netty.util.ResourceLeakDetector"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 313
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector].needReport()"
    - "[io.netty.util.ResourceLeakDetector].clearRefQueue()"
    - "[java.lang.ref.ReferenceQueue].poll()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].dispose()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].getReportAndClearRecords()"
    - "[io.netty.util.internal.ConcurrentSet].add(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].add(java.lang.Object)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].add(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].add(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].add(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.util.TreeSet].add(java.lang.Object)"
    - "[java.lang.String].isEmpty()"
    - "[io.netty.util.ResourceLeakDetector].reportUntracedLeak(java.lang.String)"
    - "[io.netty.util.ResourceLeakDetector].reportTracedLeak(java.lang.String,java.lang.String)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 2
    ICount: 26
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.util.ResourceLeakDetector:287"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector:294"
        BranchSideFuncs:
        - "clearRefQueue()"
      - BranchSide: "io.netty.util.ResourceLeakDetector:293"
        BranchSideFuncs:
        - "poll()"
    - Branch String: "io.netty.util.ResourceLeakDetector:295"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector:299"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ResourceLeakDetector:298"
        BranchSideFuncs:
        - "dispose()"
    - Branch String: "io.netty.util.ResourceLeakDetector:299"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector:303"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ResourceLeakDetector:302"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "getReportAndClearRecords()"
    - Branch String: "io.netty.util.ResourceLeakDetector:304"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector:311"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "io.netty.util.ResourceLeakDetector:310"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.ResourceLeakDetector:305"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector:308"
        BranchSideFuncs:
        - "reportUntracedLeak(java.lang.String)"
      - BranchSide: "io.netty.util.ResourceLeakDetector:307"
        BranchSideFuncs:
        - "reportTracedLeak(java.lang.String,java.lang.String)"
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector:287,1"
      Dst: "[io.netty.util.ResourceLeakDetector].needReport()"
    - Src: "io.netty.util.ResourceLeakDetector:288,1"
      Dst: "[io.netty.util.ResourceLeakDetector].clearRefQueue()"
    - Src: "io.netty.util.ResourceLeakDetector:294,1"
      Dst: "[java.lang.ref.ReferenceQueue].poll()"
    - Src: "io.netty.util.ResourceLeakDetector:299,1"
      Dst: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].dispose()"
    - Src: "io.netty.util.ResourceLeakDetector:303,1"
      Dst: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].getReportAndClearRecords()"
    - Src: "io.netty.util.ResourceLeakDetector:304,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.util.ResourceLeakDetector:305,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.util.ResourceLeakDetector:306,1"
      Dst: "[io.netty.util.ResourceLeakDetector].reportUntracedLeak(java.lang.String)"
    - Src: "io.netty.util.ResourceLeakDetector:308,1"
      Dst: "[io.netty.util.ResourceLeakDetector].reportTracedLeak(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.ResourceLeakDetector].needReport()"
    functionSourceFile: "io.netty.util.ResourceLeakDetector"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 284
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Slf4JLogger].isErrorEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isErrorEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isErrorEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isErrorEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isErrorEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].isErrorEnabled()"
    functionUses: 1
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector:283,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isErrorEnabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector].clearRefQueue()"
    functionSourceFile: "io.netty.util.ResourceLeakDetector"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 275
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ref.ReferenceQueue].poll()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].dispose()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.ResourceLeakDetector:269"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector:272"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ResourceLeakDetector:271"
        BranchSideFuncs:
        - "dispose()"
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector:268,1"
      Dst: "[java.lang.ref.ReferenceQueue].poll()"
    - Src: "io.netty.util.ResourceLeakDetector:272,1"
      Dst: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].dispose()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].dispose()"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak"
    linkageType: ""
    functionLinenumber: 461
    functionLinenumberEnd: 464
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ref.Reference].clear()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].remove(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.HashSet].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].remove(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].remove(java.lang.Object)"
    - "[java.util.TreeSet].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].remove(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.AbstractCollection].remove(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].remove(java.lang.Object)"
    - "[java.util.Set].remove(java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:462,1"
      Dst: "[java.lang.ref.Reference].clear()"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:463,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].getReportAndClearRecords()"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak"
    linkageType: ""
    functionLinenumber: 526
    functionLinenumberEnd: 529
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].generateReport(io.netty.util.ResourceLeakDetector$TraceRecord)"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].getAndSet(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:527,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].getAndSet(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:528,1"
      Dst: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].generateReport(io.netty.util.ResourceLeakDetector$TraceRecord)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].generateReport(io.netty.util.ResourceLeakDetector$TraceRecord)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak"
    linkageType: ""
    functionLinenumber: 531
    functionLinenumberEnd: 580
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "io.netty.util.ResourceLeakDetector$TraceRecord"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].access$300(io.netty.util.ResourceLeakDetector$TraceRecord)"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.HashSet].<init>(int)"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].access$100()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].access$400(io.netty.util.ResourceLeakDetector$TraceRecord)"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].toString()"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.util.ResourceLeakDetector].access$200()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].get(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 2
    ICount: 69
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:532"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:536"
        BranchSideFuncs:
        - "<init>(int)"
        - "access$300(io.netty.util.ResourceLeakDetector$TraceRecord)"
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:547"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:560"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:559"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:549"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:556"
        BranchSideFuncs:
        - "access$100()"
        - "access$400(io.netty.util.ResourceLeakDetector$TraceRecord)"
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:555"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:550"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:553"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:552"
        BranchSideFuncs:
        - "append(char)"
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:560"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:567"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:566"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:567"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:578"
        BranchSideFuncs:
        - "access$200()"
        - "append(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:577"
        BranchSideFuncs:
        - "toString()"
        - "setLength(int)"
        - "length()"
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:537,1"
      Dst: "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].get(java.lang.Object)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:540,1"
      Dst: "[io.netty.util.ResourceLeakDetector$TraceRecord].access$300(io.netty.util.ResourceLeakDetector$TraceRecord)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:542,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:542,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:546,1"
      Dst: "[java.util.HashSet].<init>(int)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:547,1"
      Dst: "[io.netty.util.ResourceLeakDetector$TraceRecord].access$100()"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:548,1"
      Dst: "[io.netty.util.ResourceLeakDetector$TraceRecord].toString()"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:549,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:550,1"
      Dst: "[io.netty.util.ResourceLeakDetector$TraceRecord].access$400(io.netty.util.ResourceLeakDetector$TraceRecord)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:553,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:553,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:571,1"
      Dst: "[io.netty.util.ResourceLeakDetector].access$200()"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:578,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:578,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:578,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:579,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 6
  - functionName: "[io.netty.util.ResourceLeakDetector$TraceRecord].access$300(io.netty.util.ResourceLeakDetector$TraceRecord)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$TraceRecord"
    linkageType: ""
    functionLinenumber: 609
    functionLinenumberEnd: 611
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.ResourceLeakDetector$TraceRecord"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$TraceRecord].access$100()"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$TraceRecord"
    linkageType: ""
    functionLinenumber: 609
    functionLinenumberEnd: 611
    functionDepth: 0
    returnType: "io.netty.util.ResourceLeakDetector$TraceRecord"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$TraceRecord].toString()"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$TraceRecord"
    linkageType: ""
    functionLinenumber: 650
    functionLinenumberEnd: 677
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getStackTrace()"
    - "[io.netty.util.ResourceLeakDetector].access$600()"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StackTraceElement].getClassName()"
    - "[java.lang.StackTraceElement].getMethodName()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StackTraceElement].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 26
    ICount: 42
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.util.ResourceLeakDetector$TraceRecord:652"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$TraceRecord:657"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ResourceLeakDetector$TraceRecord:656"
        BranchSideFuncs:
        - "getStackTrace()"
    - Branch String: "io.netty.util.ResourceLeakDetector$TraceRecord:659"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$TraceRecord:676"
        BranchSideFuncs:
        - "get()"
        - "access$600()"
      - BranchSide: "io.netty.util.ResourceLeakDetector$TraceRecord:675"
        BranchSideFuncs:
        - "toString()"
    - Branch String: "io.netty.util.ResourceLeakDetector$TraceRecord:663"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$TraceRecord:671"
        BranchSideFuncs:
        - "append(char)"
        - "append(java.lang.String)"
    - Branch String: "io.netty.util.ResourceLeakDetector$TraceRecord:666"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$TraceRecord:660"
        BranchSideFuncs:
        - "getClassName()"
        - "getMethodName()"
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.util.ResourceLeakDetector$TraceRecord:659"
        BranchSideFuncs:
        - "get()"
        - "access$600()"
    - Branch String: "io.netty.util.ResourceLeakDetector$TraceRecord:667"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$TraceRecord:660"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ResourceLeakDetector$TraceRecord:659"
        BranchSideFuncs:
        - "get()"
        - "access$600()"
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$TraceRecord:651,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.util.ResourceLeakDetector$TraceRecord:653,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.ResourceLeakDetector$TraceRecord:657,1"
      Dst: "[java.lang.Throwable].getStackTrace()"
    - Src: "io.netty.util.ResourceLeakDetector$TraceRecord:662,1"
      Dst: "[io.netty.util.ResourceLeakDetector].access$600()"
    - Src: "io.netty.util.ResourceLeakDetector$TraceRecord:662,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "io.netty.util.ResourceLeakDetector$TraceRecord:666,1"
      Dst: "[java.lang.StackTraceElement].getClassName()"
    - Src: "io.netty.util.ResourceLeakDetector$TraceRecord:666,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.util.ResourceLeakDetector$TraceRecord:667,1"
      Dst: "[java.lang.StackTraceElement].getMethodName()"
    - Src: "io.netty.util.ResourceLeakDetector$TraceRecord:672,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.ResourceLeakDetector$TraceRecord:673,1"
      Dst: "[java.lang.StackTraceElement].toString()"
    - Src: "io.netty.util.ResourceLeakDetector$TraceRecord:676,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 6
  - functionName: "[io.netty.util.ResourceLeakDetector].access$600()"
    functionSourceFile: "io.netty.util.ResourceLeakDetector"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "java.util.concurrent.atomic.AtomicReference"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$TraceRecord].access$400(io.netty.util.ResourceLeakDetector$TraceRecord)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$TraceRecord"
    linkageType: ""
    functionLinenumber: 609
    functionLinenumberEnd: 611
    functionDepth: 0
    returnType: "io.netty.util.ResourceLeakDetector$TraceRecord"
    argCount: 1
    argTypes:
    - "io.netty.util.ResourceLeakDetector$TraceRecord"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector].access$200()"
    functionSourceFile: "io.netty.util.ResourceLeakDetector"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector].reportUntracedLeak(java.lang.String)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector"
    linkageType: ""
    functionLinenumber: 334
    functionLinenumberEnd: 337
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Object[])"
    - "[java.lang.Enum].name()"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.String].toLowerCase()"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 14
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector:335,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.util.ResourceLeakDetector:335,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "io.netty.util.ResourceLeakDetector:335,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.util.ResourceLeakDetector:330,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector].reportTracedLeak(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector"
    linkageType: ""
    functionLinenumber: 318
    functionLinenumberEnd: 324
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector:319,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector].getInitialHint(java.lang.String)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector"
    linkageType: ""
    functionLinenumber: 350
    functionLinenumberEnd: 352
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].<init>(java.lang.Object,java.lang.ref.ReferenceQueue,java.util.Set,java.lang.Object)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak"
    linkageType: ""
    functionLinenumber: 380
    functionLinenumberEnd: 395
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "java.lang.ref.ReferenceQueue"
    - "java.util.Set"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ref.WeakReference].<init>(java.lang.Object,java.lang.ref.ReferenceQueue)"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.System].identityHashCode(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].add(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].add(java.lang.Object)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].add(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].add(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].add(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.util.TreeSet].add(java.lang.Object)"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].<init>(io.netty.util.ResourceLeakDetector$TraceRecord,java.lang.Object)"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].access$100()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].<init>(io.netty.util.ResourceLeakDetector$TraceRecord)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].set(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 27
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:383"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:387"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(io.netty.util.ResourceLeakDetector$TraceRecord,java.lang.Object)"
        - "identityHashCode(java.lang.Object)"
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:383"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:387"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(io.netty.util.ResourceLeakDetector$TraceRecord,java.lang.Object)"
        - "identityHashCode(java.lang.Object)"
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:391"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:388"
        BranchSideFuncs:
        - "access$100()"
        - "<init>(io.netty.util.ResourceLeakDetector$TraceRecord,java.lang.Object)"
        - "<init>(io.netty.util.ResourceLeakDetector$TraceRecord)"
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:387"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(io.netty.util.ResourceLeakDetector$TraceRecord,java.lang.Object)"
        - "identityHashCode(java.lang.Object)"
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:381,1"
      Dst: "[java.lang.ref.WeakReference].<init>(java.lang.Object,java.lang.ref.ReferenceQueue)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:383,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:388,1"
      Dst: "[java.lang.System].identityHashCode(java.lang.Object)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:389,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:392,1"
      Dst: "[io.netty.util.ResourceLeakDetector$TraceRecord].access$100()"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:392,1"
      Dst: "[io.netty.util.ResourceLeakDetector$TraceRecord].<init>(io.netty.util.ResourceLeakDetector$TraceRecord)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:391,1"
      Dst: "[io.netty.util.ResourceLeakDetector$TraceRecord].<init>(io.netty.util.ResourceLeakDetector$TraceRecord,java.lang.Object)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:391,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].set(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.ResourceLeakDetector$TraceRecord].<init>(io.netty.util.ResourceLeakDetector$TraceRecord)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$TraceRecord"
    linkageType: ""
    functionLinenumber: 635
    functionLinenumberEnd: 641
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.ResourceLeakDetector$TraceRecord"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].<init>()"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$TraceRecord:636,1"
      Dst: "[java.lang.Throwable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$TraceRecord].<init>(io.netty.util.ResourceLeakDetector$TraceRecord,java.lang.Object)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$TraceRecord"
    linkageType: ""
    functionLinenumber: 628
    functionLinenumberEnd: 635
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.ResourceLeakDetector$TraceRecord"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].<init>()"
    - "[io.netty.channel.AbstractChannelHandlerContext].toHintString()"
    - "[io.netty.channel.ReflectiveChannelFactory].toString()"
    - "[sun.security.x509.SerialNumber].toString()"
    - "[io.netty.util.Version].toString()"
    - "[javax.net.ssl.SSLEngineResult].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].toString()"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].toString()"
    - "[java.util.AbstractCollection].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[sun.security.x509.CertificateAlgorithmId].toString()"
    - "[io.netty.buffer.PoolSubpage].toString()"
    - "[java.net.InetSocketAddress].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[java.lang.ProcessBuilder$Redirect$3].toString()"
    - "[io.netty.util.Recycler$1].toString()"
    - "[sun.security.x509.PolicyConstraintsExtension].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].toString()"
    - "[java.nio.charset.Charset].toString()"
    - "[java.util.Properties].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].toString()"
    - "[sun.security.util.JarConstraintsParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].toString()"
    - "[java.lang.reflect.Constructor].toString()"
    - "[java.nio.DoubleBuffer].toString()"
    - "[io.netty.util.Signal].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Thread].toString()"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].toString()"
    - "[java.lang.Throwable].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$CompositePrinterParser].toString()"
    - "[io.netty.channel.embedded.EmbeddedSocketAddress].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].toString()"
    - "[java.util.regex.Matcher].toString()"
    - "[java.lang.reflect.Field].toString()"
    - "[java.lang.invoke.MethodHandles$Lookup].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.net.URL].toString()"
    - "[java.lang.invoke.LambdaForm$Name].toString()"
    - "[sun.security.x509.RDN].toString()"
    - "[java.util.concurrent.atomic.AtomicReference].toString()"
    - "[java.util.Currency].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].toString()"
    - "[io.netty.channel.kqueue.NativeLongArray].toString()"
    - "[io.netty.handler.proxy.ProxyConnectionEvent].toString()"
    - "[java.util.Formatter].toString()"
    - "[java.lang.ModuleLayer].toString()"
    - "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - "[io.netty.handler.ssl.SslCompletionEvent].toString()"
    - "[io.netty.bootstrap.BootstrapConfig].toString()"
    - "[java.lang.ProcessBuilder$Redirect$1].toString()"
    - "[io.netty.handler.codec.xml.XmlEntityReference].toString()"
    - "[java.net.Proxy].toString()"
    - "[sun.security.util.DerValue].toString()"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].toString()"
    - "[sun.security.x509.AlgorithmId].toString()"
    - "[java.text.AttributedCharacterIterator$Attribute].toString()"
    - "[java.lang.Runtime$Version].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$2].toString()"
    - "[java.lang.module.ModuleDescriptor$Exports].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].toString()"
    - "[io.netty.channel.kqueue.AcceptFilter].toString()"
    - "[sun.security.x509.SubjectKeyIdentifierExtension].toString()"
    - "[io.netty.buffer.DefaultByteBufHolder].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.time.temporal.ChronoField].toString()"
    - "[java.security.PermissionCollection].toString()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].toString()"
    - "[java.util.concurrent.ConcurrentHashMap].toString()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].toString()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].toString()"
    - "[java.util.Vector].toString()"
    - "[io.netty.handler.codec.http.HttpVersion].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].toString()"
    - "[java.text.CalendarBuilder].toString()"
    - "[java.net.URLConnection].toString()"
    - "[java.util.EventObject].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].toString()"
    - "[io.netty.util.AbstractConstant].toString()"
    - "[sun.reflect.annotation.TypeAnnotation].toString()"
    - "[java.security.SecureRandom].toString()"
    - "[java.util.concurrent.atomic.AtomicLong].toString()"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].toString()"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].toString()"
    - "[sun.util.calendar.Era].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].toString()"
    - "[java.lang.module.ModuleDescriptor$Requires].toString()"
    - "[java.time.ZonedDateTime].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache].toString()"
    - "[java.math.MutableBigInteger].toString()"
    - "[java.lang.module.ModuleDescriptor$Provides].toString()"
    - "[java.net.InetSocketAddress$InetSocketAddressHolder].toString()"
    - "[sun.security.x509.GeneralNames].toString()"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].toString()"
    - "[sun.security.x509.Extension].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].toString()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].toString()"
    - "[io.netty.handler.ssl.util.LazyX509Certificate].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].toString()"
    - "[sun.security.x509.ExtendedKeyUsageExtension].toString()"
    - "[io.netty.buffer.WrappedByteBuf].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].toString()"
    - "[java.security.MessageDigest].toString()"
    - "[io.netty.handler.codec.dns.DnsOpCode].toString()"
    - "[java.io.ObjectOutputStream$DebugTraceInfoStack].toString()"
    - "[java.util.TreeMap$Entry].toString()"
    - "[java.time.zone.ZoneOffsetTransition].toString()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].toString()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].toString()"
    - "[java.lang.Integer].toString()"
    - "[java.lang.ProcessBuilder$Redirect$6].toString()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].toString()"
    - "[java.util.OptionalInt].toString()"
    - "[javax.naming.NamingException].toString()"
    - "[java.time.LocalDate].toString()"
    - "[java.util.ServiceLoader].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache].toString()"
    - "[java.net.InetAddress].toString()"
    - "[java.util.jar.Attributes$Name].toString()"
    - "[java.lang.Boolean].toString()"
    - "[io.netty.handler.codec.DefaultHeaders].toString()"
    - "[jaz.Zer].toString()"
    - "[io.netty.util.concurrent.DefaultPromise].toString()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].toString()"
    - "[io.netty.handler.ssl.PemX509Certificate].toString()"
    - "[sun.security.x509.UniqueIdentity].toString()"
    - "[java.security.CodeSigner].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].toString()"
    - "[sun.security.x509.CertificateX509Key].toString()"
    - "[java.nio.IntBuffer].toString()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].toString()"
    - "[java.util.concurrent.CountDownLatch].toString()"
    - "[io.netty.handler.codec.redis.IntegerRedisMessage].toString()"
    - "[java.nio.ByteOrder].toString()"
    - "[java.util.OptionalLong].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].toString()"
    - "[io.netty.handler.codec.xml.XmlElementEnd].toString()"
    - "[java.io.ObjectStreamClass].toString()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].toString()"
    - "[java.util.concurrent.atomic.LongAdder].toString()"
    - "[java.util.Optional].toString()"
    - "[java.net.URI].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].toString()"
    - "[java.nio.FloatBuffer].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuestion].toString()"
    - "[io.netty.handler.ssl.OpenSslSessionId].toString()"
    - "[io.netty.channel.group.DefaultChannelGroup].toString()"
    - "[sun.security.x509.AuthorityKeyIdentifierExtension].toString()"
    - "[sun.security.util.ObjectIdentifier].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].toString()"
    - "[java.util.concurrent.LinkedBlockingDeque].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].toString()"
    - "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].toString()"
    - "[java.time.format.DateTimePrintContext].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].toString()"
    - "[sun.nio.fs.UnixPath].toString()"
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].toString()"
    - "[java.lang.Class].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].toString()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].toString()"
    - "[java.util.BitSet].toString()"
    - "[java.lang.StackFrameInfo].toString()"
    - "[javax.xml.namespace.QName].toString()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].toString()"
    - "[sun.security.x509.CertificateExtensions].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].toString()"
    - "[sun.security.x509.BasicConstraintsExtension].toString()"
    - "[java.util.concurrent.atomic.AtomicReferenceArray].toString()"
    - "[java.lang.invoke.Invokers].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].toString()"
    - "[java.time.LocalDateTime].toString()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].toString()"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[java.time.format.DateTimeFormatter].toString()"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].toString()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].toString()"
    - "[sun.security.x509.CertificateIssuerName].toString()"
    - "[java.lang.invoke.SerializedLambda].toString()"
    - "[sun.util.locale.LocaleExtensions].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].toString()"
    - "[sun.security.x509.NameConstraintsExtension].toString()"
    - "[java.net.NetworkInterface].toString()"
    - "[java.util.StringJoiner].toString()"
    - "[java.util.AbstractMap].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].toString()"
    - "[java.time.LocalTime].toString()"
    - "[java.security.ProtectionDomain].toString()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock].toString()"
    - "[io.netty.handler.codec.EmptyHeaders].toString()"
    - "[java.time.temporal.ValueRange].toString()"
    - "[java.time.Instant].toString()"
    - "[java.security.PrivilegedActionException].toString()"
    - "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].toString()"
    - "[sun.util.calendar.CalendarDate].toString()"
    - "[java.lang.module.Configuration].toString()"
    - "[java.security.AlgorithmParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].toString()"
    - "[java.lang.ThreadGroup].toString()"
    - "[io.netty.buffer.AbstractByteBufAllocator].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].toString()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].toString()"
    - "[java.nio.file.attribute.FileTime].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].toString()"
    - "[io.netty.handler.codec.xml.XmlNamespace].toString()"
    - "[io.netty.channel.unix.FileDescriptor].toString()"
    - "[java.lang.Double].toString()"
    - "[java.util.OptionalDouble].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].toString()"
    - "[io.netty.bootstrap.AbstractBootstrap].toString()"
    - "[io.netty.channel.WriteBufferWaterMark].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].toString()"
    - "[java.math.BigInteger].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].toString()"
    - "[java.time.format.Parsed].toString()"
    - "[java.time.OffsetDateTime].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString()"
    - "[java.time.OffsetTime].toString()"
    - "[java.util.WeakHashMap$Entry].toString()"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].toString()"
    - "[sun.security.x509.X509CertImpl].toString()"
    - "[java.time.ZoneOffset].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribePayload].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].toString()"
    - "[java.lang.reflect.Method].toString()"
    - "[io.netty.handler.codec.http2.Http2Flags].toString()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].toString()"
    - "[io.netty.buffer.CompositeByteBuf].toString()"
    - "[java.lang.Enum].toString()"
    - "[io.netty.handler.codec.http2.HpackHeaderField].toString()"
    - "[java.net.ServerSocket].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[java.time.zone.ZoneRules].toString()"
    - "[java.security.spec.PSSParameterSpec].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent].toString()"
    - "[sun.security.x509.X500Name].toString()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].toString()"
    - "[io.netty.channel.embedded.EmbeddedChannelId].toString()"
    - "[java.util.concurrent.locks.AbstractQueuedSynchronizer].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.util.regex.Pattern].toString()"
    - "[java.util.concurrent.atomic.AtomicLongArray].toString()"
    - "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].toString()"
    - "[sun.util.locale.Extension].toString()"
    - "[io.netty.handler.codec.smtp.SmtpCommand].toString()"
    - "[java.util.concurrent.ForkJoinPool].toString()"
    - "[sun.security.x509.CertificateVersion].toString()"
    - "[java.lang.ProcessHandleImpl].toString()"
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].toString()"
    - "[java.util.LongSummaryStatistics].toString()"
    - "[java.io.ObjectStreamField].toString()"
    - "[java.lang.ProcessImpl].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[io.netty.resolver.dns.InflightNameResolver].toString()"
    - "[java.nio.charset.CodingErrorAction].toString()"
    - "[java.lang.Float].toString()"
    - "[java.time.format.DecimalStyle].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].toString()"
    - "[sun.security.x509.IssuerAlternativeNameExtension].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[java.io.File].toString()"
    - "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].toString()"
    - "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].toString()"
    - "[java.util.Calendar].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].toString()"
    - "[java.nio.ByteBuffer].toString()"
    - "[io.netty.buffer.EmptyByteBuf].toString()"
    - "[io.netty.buffer.AbstractByteBuf].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock].toString()"
    - "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].toString()"
    - "[java.lang.Package].toString()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].toString()"
    - "[java.text.ParsePosition].toString()"
    - "[sun.util.locale.BaseLocale].toString()"
    - "[sun.reflect.annotation.AnnotationType].toString()"
    - "[java.lang.Character$Subset].toString()"
    - "[sun.security.util.LazyCodeSourcePermissionCollection].toString()"
    - "[java.lang.Object].toString()"
    - "[io.netty.handler.codec.xml.XmlElement].toString()"
    - "[java.lang.Character].toString()"
    - "[sun.net.www.MessageHeader].toString()"
    - "[java.lang.invoke.MethodType].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].toString()"
    - "[io.netty.handler.codec.http.QueryStringEncoder].toString()"
    - "[java.net.InterfaceAddress].toString()"
    - "[java.time.zone.ZoneOffsetTransitionRule].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].toString()"
    - "[io.netty.handler.codec.dns.DnsRecordType].toString()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].toString()"
    - "[java.lang.StackTraceElement].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toString()"
    - "[java.lang.ProcessBuilder$Redirect$4].toString()"
    - "[java.lang.invoke.LambdaForm].toString()"
    - "[io.netty.handler.codec.dns.DnsResponseCode].toString()"
    - "[io.netty.util.collection.LongObjectHashMap].toString()"
    - "[javax.naming.directory.ModificationItem].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].toString()"
    - "[sun.security.x509.PolicyMappingsExtension].toString()"
    - "[sun.security.x509.CertificatePoliciesExtension].toString()"
    - "[java.security.CodeSource].toString()"
    - "[java.security.Permission].toString()"
    - "[java.security.Timestamp].toString()"
    - "[io.netty.buffer.PoolArena].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].toString()"
    - "[java.nio.charset.CoderResult].toString()"
    - "[io.netty.channel.unix.PeerCredentials].toString()"
    - "[java.security.SecureRandomSpi].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[javax.security.auth.Subject].toString()"
    - "[javax.crypto.CryptoPermission].toString()"
    - "[java.util.Locale].toString()"
    - "[java.time.chrono.AbstractChronology].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsPtrRecord].toString()"
    - "[java.util.concurrent.locks.ReentrantLock].toString()"
    - "[java.lang.module.ResolvedModule].toString()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].toString()"
    - "[io.netty.handler.codec.http.HttpMethod].toString()"
    - "[java.lang.invoke.MemberName].toString()"
    - "[sun.security.x509.PrivateKeyUsageExtension].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].toString()"
    - "[io.netty.handler.traffic.TrafficCounter].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].toString()"
    - "[java.io.ByteArrayOutputStream].toString()"
    - "[sun.security.x509.CertificateValidity].toString()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].toString()"
    - "[java.time.Duration].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[sun.security.x509.X509CertInfo].toString()"
    - "[sun.security.x509.AVA].toString()"
    - "[java.lang.module.ModuleDescriptor$Opens].toString()"
    - "[java.math.BigDecimal].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].toString()"
    - "[java.lang.invoke.MethodHandleImpl$LoopClauses].toString()"
    - "[sun.security.x509.CertificateSerialNumber].toString()"
    - "[sun.nio.fs.UnixFileStore].toString()"
    - "[java.net.Socket].toString()"
    - "[javax.net.ssl.SNIHostName].toString()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].toString()"
    - "[java.util.Hashtable$Entry].toString()"
    - "[java.security.Signature].toString()"
    - "[java.lang.Short].toString()"
    - "[java.util.concurrent.CompletableFuture].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsOptPseudoRrRecord].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses].toString()"
    - "[java.util.concurrent.ThreadPoolExecutor].toString()"
    - "[java.util.concurrent.LinkedBlockingQueue].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].toString()"
    - "[java.time.ZoneId].toString()"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].toString()"
    - "[java.net.SocketImpl].toString()"
    - "[sun.security.x509.KeyIdentifier].toString()"
    - "[java.util.Hashtable].toString()"
    - "[sun.security.x509.GeneralSubtrees].toString()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].toString()"
    - "[java.text.FieldPosition].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent].toString()"
    - "[io.netty.util.DomainNameMapping].toString()"
    - "[sun.security.x509.AuthorityInfoAccessExtension].toString()"
    - "[java.util.concurrent.CopyOnWriteArrayList].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].toString()"
    - "[io.netty.buffer.PoolChunkList].toString()"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].toString()"
    - "[io.netty.buffer.PoolChunk].toString()"
    - "[io.netty.resolver.dns.DefaultDnsServerAddresses].toString()"
    - "[io.netty.util.internal.EmptyPriorityQueue].toString()"
    - "[io.netty.channel.unix.DomainSocketAddress].toString()"
    - "[javax.net.ssl.SNIServerName].toString()"
    - "[java.lang.ProcessBuilder$RedirectPipeImpl].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckPayload].toString()"
    - "[java.io.StringWriter].toString()"
    - "[io.netty.handler.codec.xml.XmlAttribute].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].toString()"
    - "[java.util.zip.ZipEntry].toString()"
    - "[java.util.UUID].toString()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].toString()"
    - "[java.security.Provider].toString()"
    - "[java.time.Period].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].toString()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].toString()"
    - "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].toString()"
    - "[java.lang.reflect.Parameter].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].toString()"
    - "[sun.security.x509.CertificateSubjectName].toString()"
    - "[io.netty.channel.DefaultChannelId].toString()"
    - "[java.util.Date].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame].toString()"
    - "[java.util.IntSummaryStatistics].toString()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[sun.security.x509.CRLDistributionPointsExtension].toString()"
    - "[io.netty.channel.DefaultAddressedEnvelope].toString()"
    - "[io.netty.channel.local.LocalAddress].toString()"
    - "[io.netty.util.collection.CharObjectHashMap].toString()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[io.netty.handler.codec.xml.XmlElementStart].toString()"
    - "[io.netty.handler.codec.DecoderResult].toString()"
    - "[io.netty.handler.ssl.SniCompletionEvent].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[io.netty.util.collection.ByteObjectHashMap].toString()"
    - "[java.util.AbstractMap$SimpleEntry].toString()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].toString()"
    - "[io.netty.util.collection.ShortObjectHashMap].toString()"
    - "[java.time.format.DateTimeParseContext].toString()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].toString()"
    - "[java.math.MathContext].toString()"
    - "[io.netty.handler.codec.http.QueryStringDecoder].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$NumberPrinterParser].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$1].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].toString()"
    - "[java.nio.LongBuffer].toString()"
    - "[java.util.DoubleSummaryStatistics].toString()"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].toString()"
    - "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].toString()"
    - "[java.lang.Long].toString()"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].toString()"
    - "[java.security.Provider$Service].toString()"
    - "[io.netty.channel.sctp.SctpMessage].toString()"
    - "[io.netty.util.collection.IntObjectHashMap].toString()"
    - "[io.netty.handler.codec.xml.XmlContent].toString()"
    - "[io.netty.handler.codec.http.HttpHeaders].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].toString()"
    - "[java.lang.invoke.MethodHandle].toString()"
    - "[java.lang.invoke.MethodTypeForm].toString()"
    - "[java.util.HashMap$Node].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].toString()"
    - "[java.lang.ProcessBuilder$Redirect$2].toString()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].toString()"
    - "[java.time.temporal.ChronoUnit].toString()"
    - "[io.netty.buffer.FixedCompositeByteBuf].toString()"
    - "[java.nio.channels.FileChannel$MapMode].toString()"
    - "[sun.security.x509.SubjectAlternativeNameExtension].toString()"
    - "[io.netty.channel.DefaultChannelPipeline].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].toString()"
    - "[java.nio.ShortBuffer].toString()"
    - "[io.netty.handler.codec.string.LineSeparator].toString()"
    - "[java.util.ResourceBundle$CacheKey].toString()"
    - "[io.netty.buffer.SwappedByteBuf].toString()"
    - "[java.security.cert.CertPath].toString()"
    - "[io.netty.channel.unix.Socket].toString()"
    - "[java.lang.module.ModuleDescriptor].toString()"
    - "[sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo].toString()"
    - "[java.lang.module.ModuleDescriptor$Version].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].toString()"
    - "[java.net.HttpCookie].toString()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].toString()"
    - "[sun.util.calendar.JulianCalendar$Date].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].toString()"
    - "[java.lang.ProcessBuilder$Redirect$5].toString()"
    - "[io.netty.channel.AbstractChannel].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].toString()"
    - "[sun.security.x509.GeneralSubtree].toString()"
    - "[sun.security.x509.GeneralName].toString()"
    - "[java.lang.Byte].toString()"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams].toString()"
    - "[io.netty.handler.codec.xml.XmlDTD].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].toString()"
    - "[io.netty.bootstrap.ServerBootstrapConfig].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandType].toString()"
    - "[java.lang.Module].toString()"
    - "[sun.security.util.BitArray].toString()"
    - "[io.netty.channel.AbstractChannelHandlerContext].toString()"
    - "[java.nio.channels.FileLock].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].toString()"
    - "[io.netty.handler.codec.http.HttpScheme].toString()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].toString()"
    - "[javax.security.auth.x500.X500Principal].toString()"
    - "[java.util.logging.Level].toString()"
    - "[io.netty.util.ResourceLeakHint].toHintString()"
    functionUses: 2
    ICount: 16
    EdgeCount: 528
    BranchProfiles:
    - Branch String: "io.netty.util.ResourceLeakDetector$TraceRecord:631"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$TraceRecord:629"
        BranchSideFuncs:
        - "toString()"
        - "toHintString()"
      - BranchSide: "io.netty.util.ResourceLeakDetector$TraceRecord:628"
        BranchSideFuncs:
        - "<init>()"
        - "toString()"
        - "toHintString()"
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$TraceRecord:629,1"
      Dst: "[java.lang.Throwable].<init>()"
    - Src: "io.netty.util.ResourceLeakDetector$TraceRecord:631,1"
      Dst: "[io.netty.util.ResourceLeakHint].toHintString()"
    - Src: "io.netty.util.ResourceLeakDetector$TraceRecord:631,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedSlice(int,int)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 8
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].unwrappedDerived(io.netty.buffer.ByteBuf)"
    functionUses: 10
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:57,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].retainedSlice(int,int)"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:57,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].unwrappedDerived(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].retainedSlice(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 906
    functionLinenumberEnd: 908
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedSlice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    functionUses: 10
    ICount: 6
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:907,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedDuplicate()"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 8
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].unwrappedDerived(io.netty.buffer.ByteBuf)"
    functionUses: 9
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:62,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].retainedDuplicate()"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:62,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].unwrappedDerived(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].retainedDuplicate()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 916
    functionLinenumberEnd: 918
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.SwappedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledSlicedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.WrappedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.UnreleasableByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.EmptyByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    functionUses: 9
    ICount: 4
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:917,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 8
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].unwrappedDerived(io.netty.buffer.ByteBuf)"
    functionUses: 41
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:67,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:67,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].unwrappedDerived(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 633
    functionLinenumberEnd: 635
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    functionUses: 41
    ICount: 5
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:634,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].slice(int,int)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].newSharedLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].slice(int,int)"
    functionUses: 20
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:72,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].slice(int,int)"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:72,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].newSharedLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].slice(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 901
    functionLinenumberEnd: 903
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].slice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].slice(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].slice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].slice(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.ByteBuf].slice(int,int)"
    functionUses: 20
    ICount: 6
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:902,1"
      Dst: "[io.netty.buffer.ByteBuf].slice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].duplicate()"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].newSharedLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    functionUses: 23
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:77,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].duplicate()"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:77,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].newSharedLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].duplicate()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 911
    functionLinenumberEnd: 913
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].duplicate()"
    - "[io.netty.buffer.UnreleasableByteBuf].duplicate()"
    - "[io.netty.buffer.ReadOnlyByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].duplicate()"
    - "[io.netty.buffer.PooledSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.SlicedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractByteBuf].duplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].duplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.EmptyByteBuf].duplicate()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    functionUses: 23
    ICount: 4
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:912,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].readSlice(int)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].newSharedLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].readSlice(int)"
    functionUses: 22
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:82,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].readSlice(int)"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:82,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].newSharedLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readSlice(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 628
    functionLinenumberEnd: 630
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readSlice(int)"
    - "[io.netty.buffer.ByteBuf].readSlice(int)"
    functionUses: 22
    ICount: 5
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:629,1"
      Dst: "[io.netty.buffer.ByteBuf].readSlice(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].asReadOnly()"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].asReadOnly()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].newSharedLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    functionUses: 15
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:87,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].asReadOnly()"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:87,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].newSharedLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].asReadOnly()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnreleasableByteBuf].asReadOnly()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].asReadOnly()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].asReadOnly()"
    - "[io.netty.buffer.AbstractByteBuf].asReadOnly()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].asReadOnly()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].asReadOnly()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].asReadOnly()"
    - "[io.netty.buffer.WrappedByteBuf].asReadOnly()"
    - "[io.netty.buffer.SwappedByteBuf].asReadOnly()"
    - "[io.netty.buffer.EmptyByteBuf].asReadOnly()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].asReadOnly()"
    - "[io.netty.buffer.ReadOnlyByteBuf].asReadOnly()"
    - "[io.netty.buffer.ByteBuf].asReadOnly()"
    functionUses: 15
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:101,1"
      Dst: "[io.netty.buffer.ByteBuf].asReadOnly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].touch()"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].touch(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 107
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].closeLeak()"
    functionUses: 347
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.SimpleLeakAwareByteBuf:102"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SimpleLeakAwareByteBuf:106"
        BranchSideFuncs:
        - "closeLeak()"
      - BranchSide: "io.netty.buffer.SimpleLeakAwareByteBuf:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:102,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].release()"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:103,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].closeLeak()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].release()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 1036
    functionLinenumberEnd: 1038
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 347
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:1037,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].closeLeak()"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].close(java.lang.Object)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.ResourceLeakTracker].close(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.SimpleLeakAwareByteBuf:122"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SimpleLeakAwareByteBuf:123"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.SimpleLeakAwareByteBuf:122"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.SimpleLeakAwareByteBuf:122"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SimpleLeakAwareByteBuf:123"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.SimpleLeakAwareByteBuf:122"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:121,1"
      Dst: "[io.netty.util.ResourceLeakTracker].close(java.lang.Object)"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:122,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].release(int)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 116
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].closeLeak()"
    functionUses: 19
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.SimpleLeakAwareByteBuf:111"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SimpleLeakAwareByteBuf:115"
        BranchSideFuncs:
        - "closeLeak()"
      - BranchSide: "io.netty.buffer.SimpleLeakAwareByteBuf:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:111,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].release(int)"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:112,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].closeLeak()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].release(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 1041
    functionLinenumberEnd: 1043
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release(int)"
    - "[io.netty.buffer.WrappedByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release(int)"
    - "[io.netty.buffer.EmptyByteBuf].release(int)"
    - "[io.netty.buffer.SwappedByteBuf].release(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].release(int)"
    - "[io.netty.util.ReferenceCounted].release(int)"
    functionUses: 19
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:1042,1"
      Dst: "[io.netty.util.ReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 131
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteOrder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].newSharedLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    functionUses: 35
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.SimpleLeakAwareByteBuf:127"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SimpleLeakAwareByteBuf:130"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.SimpleLeakAwareByteBuf:129"
        BranchSideFuncs:
        - "newSharedLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
        - "order(java.nio.ByteOrder)"
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:127,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].order()"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:130,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:130,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].newSharedLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].order()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "java.nio.ByteOrder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.SwappedByteBuf].order()"
    - "[io.netty.buffer.ByteBuf].order()"
    functionUses: 28
    ICount: 4
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:86,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteOrder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 35
    ICount: 5
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:91,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker<ByteBuf>)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionDepth: 0
    returnType: "io.netty.buffer.SimpleLeakAwareByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.util.ResourceLeakTracker<ByteBuf>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:172,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker<ByteBuf>)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareByteBuf"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionDepth: 3
    returnType: "io.netty.buffer.SimpleLeakAwareByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.util.ResourceLeakTracker<ByteBuf>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareByteBuf:177,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 47
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:44,1"
      Dst: "[io.netty.buffer.ByteBuf].<init>()"
    - Src: "io.netty.buffer.WrappedByteBuf:45,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.redis.RedisEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.RedisEncoder].<init>(io.netty.handler.codec.redis.RedisMessagePool)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisEncoder:42,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].<init>(io.netty.handler.codec.redis.RedisMessagePool)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisEncoder].<init>(io.netty.handler.codec.redis.RedisMessagePool)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.redis.RedisMessagePool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisEncoder:49,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:50,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.redis.RedisMessage,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisEncoder"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 63
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.redis.RedisMessage"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.redis.RedisEncoder].writeRedisMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.RedisMessage,java.util.List)"
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisEncoder:56,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:56,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].writeRedisMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.RedisMessage,java.util.List)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:60,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CodecException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.CodecException"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CodecException:49,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisEncoder].writeRedisMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.RedisMessage,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisEncoder"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 87
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.redis.RedisMessage"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.RedisEncoder].writeInlineCommandMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.InlineCommandRedisMessage,java.util.List)"
    - "[io.netty.handler.codec.redis.RedisEncoder].writeSimpleStringMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.SimpleStringRedisMessage,java.util.List)"
    - "[io.netty.handler.codec.redis.RedisEncoder].writeErrorMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.ErrorRedisMessage,java.util.List)"
    - "[io.netty.handler.codec.redis.RedisEncoder].writeIntegerMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.IntegerRedisMessage,java.util.List)"
    - "[io.netty.handler.codec.redis.RedisEncoder].writeFullBulkStringMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.FullBulkStringRedisMessage,java.util.List)"
    - "[io.netty.handler.codec.redis.RedisEncoder].writeBulkStringContent(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.BulkStringRedisContent,java.util.List)"
    - "[io.netty.handler.codec.redis.RedisEncoder].writeBulkStringHeader(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.BulkStringHeaderRedisMessage,java.util.List)"
    - "[io.netty.handler.codec.redis.RedisEncoder].writeArrayHeader(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.ArrayHeaderRedisMessage,java.util.List)"
    - "[io.netty.handler.codec.redis.RedisEncoder].writeArrayMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.ArrayRedisMessage,java.util.List)"
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 2
    ICount: 58
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.RedisEncoder:65"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:67"
        BranchSideFuncs:
        - "writeInlineCommandMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.InlineCommandRedisMessage,java.util.List)"
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:66"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.redis.RedisEncoder:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:69"
        BranchSideFuncs:
        - "writeSimpleStringMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.SimpleStringRedisMessage,java.util.List)"
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:68"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.redis.RedisEncoder:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:71"
        BranchSideFuncs:
        - "writeErrorMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.ErrorRedisMessage,java.util.List)"
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:70"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.redis.RedisEncoder:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:73"
        BranchSideFuncs:
        - "writeIntegerMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.IntegerRedisMessage,java.util.List)"
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:72"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.redis.RedisEncoder:73"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:75"
        BranchSideFuncs:
        - "writeFullBulkStringMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.FullBulkStringRedisMessage,java.util.List)"
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:74"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.redis.RedisEncoder:75"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:77"
        BranchSideFuncs:
        - "writeBulkStringContent(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.BulkStringRedisContent,java.util.List)"
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:76"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.redis.RedisEncoder:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:79"
        BranchSideFuncs:
        - "writeBulkStringHeader(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.BulkStringHeaderRedisMessage,java.util.List)"
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:78"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.redis.RedisEncoder:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:81"
        BranchSideFuncs:
        - "writeArrayHeader(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.ArrayHeaderRedisMessage,java.util.List)"
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:80"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.redis.RedisEncoder:81"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:84"
        BranchSideFuncs:
        - "writeArrayMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.ArrayRedisMessage,java.util.List)"
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:83"
        BranchSideFuncs:
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisEncoder:66,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].writeInlineCommandMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.InlineCommandRedisMessage,java.util.List)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:68,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].writeSimpleStringMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.SimpleStringRedisMessage,java.util.List)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:70,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].writeErrorMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.ErrorRedisMessage,java.util.List)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:72,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].writeIntegerMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.IntegerRedisMessage,java.util.List)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:74,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].writeFullBulkStringMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.FullBulkStringRedisMessage,java.util.List)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:76,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].writeBulkStringContent(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.BulkStringRedisContent,java.util.List)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:78,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].writeBulkStringHeader(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.BulkStringHeaderRedisMessage,java.util.List)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:80,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].writeArrayHeader(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.ArrayHeaderRedisMessage,java.util.List)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:82,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].writeArrayMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.ArrayRedisMessage,java.util.List)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:84,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:84,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:84,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:84,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:84,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 20
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.redis.RedisEncoder].writeInlineCommandMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.InlineCommandRedisMessage,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisEncoder"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.redis.InlineCommandRedisMessage"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].content()"
    - "[io.netty.handler.codec.redis.RedisEncoder].writeString(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.RedisMessageType,java.lang.String,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisEncoder:90,1"
      Dst: "[io.netty.handler.codec.redis.AbstractStringRedisMessage].content()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:90,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].writeString(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.RedisMessageType,java.lang.String,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisEncoder].writeSimpleStringMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.SimpleStringRedisMessage,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisEncoder"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.redis.SimpleStringRedisMessage"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].content()"
    - "[io.netty.handler.codec.redis.RedisEncoder].writeString(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.RedisMessageType,java.lang.String,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisEncoder:95,1"
      Dst: "[io.netty.handler.codec.redis.AbstractStringRedisMessage].content()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:95,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].writeString(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.RedisMessageType,java.lang.String,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisEncoder].writeErrorMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.ErrorRedisMessage,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisEncoder"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.redis.ErrorRedisMessage"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].content()"
    - "[io.netty.handler.codec.redis.RedisEncoder].writeString(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.RedisMessageType,java.lang.String,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisEncoder:99,1"
      Dst: "[io.netty.handler.codec.redis.AbstractStringRedisMessage].content()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:99,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].writeString(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.RedisMessageType,java.lang.String,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisEncoder].writeString(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.RedisMessageType,java.lang.String,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisEncoder"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 111
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.redis.RedisMessageType"
    - "java.lang.String"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.handler.codec.redis.RedisMessageType].length()"
    - "[io.netty.buffer.ByteBufUtil].utf8MaxBytes(java.lang.CharSequence)"
    - "[io.netty.handler.codec.redis.RedisMessageType].writeTo(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 3
    ICount: 16
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisEncoder:104,1"
      Dst: "[io.netty.handler.codec.redis.RedisMessageType].length()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:104,1"
      Dst: "[io.netty.buffer.ByteBufUtil].utf8MaxBytes(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:104,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:106,1"
      Dst: "[io.netty.handler.codec.redis.RedisMessageType].writeTo(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:107,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:108,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:109,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisMessageType].length()"
    functionSourceFile: "io.netty.handler.codec.redis.RedisMessageType"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.RedisMessageType:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisMessageType:45"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].utf8MaxBytes(java.lang.CharSequence)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1070
    functionLinenumberEnd: 1072
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[io.netty.buffer.ByteBufUtil].utf8MaxBytes(int)"
    - "[java.lang.CharSequence].length()"
    functionUses: 4
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1071,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.buffer.ByteBufUtil:1071,1"
      Dst: "[io.netty.buffer.ByteBufUtil].utf8MaxBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].utf8MaxBytes(int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1061
    functionLinenumberEnd: 1063
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisMessageType].writeTo(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisMessageType"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Byte].byteValue()"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    functionUses: 7
    ICount: 10
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.RedisMessageType:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisMessageType:80"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.redis.RedisMessageType:79"
        BranchSideFuncs:
        - "writeByte(int)"
        - "byteValue()"
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisMessageType:80,1"
      Dst: "[java.lang.Byte].byteValue()"
    - Src: "io.netty.handler.codec.redis.RedisMessageType:80,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 759
    functionLinenumberEnd: 762
    functionDepth: 6
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[io.netty.buffer.ByteBufUtil].reserveAndWriteUtf8Seq(io.netty.buffer.ByteBuf,java.lang.CharSequence,int,int,int)"
    - "[io.netty.buffer.ByteBufUtil].utf8MaxBytes(int)"
    - "[java.lang.CharSequence].length()"
    functionUses: 6
    ICount: 6
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:760,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.buffer.ByteBufUtil:761,1"
      Dst: "[io.netty.buffer.ByteBufUtil].utf8MaxBytes(int)"
    - Src: "io.netty.buffer.ByteBufUtil:761,1"
      Dst: "[io.netty.buffer.ByteBufUtil].reserveAndWriteUtf8Seq(io.netty.buffer.ByteBuf,java.lang.CharSequence,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].reserveAndWriteUtf8Seq(io.netty.buffer.ByteBuf,java.lang.CharSequence,int,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 798
    functionLinenumberEnd: 815
    functionDepth: 5
    returnType: "int"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "java.lang.CharSequence"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].unwrap()"
    - "[io.netty.buffer.SlicedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].unwrap()"
    - "[io.netty.buffer.CompositeByteBuf].unwrap()"
    - "[io.netty.buffer.SwappedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].unwrap()"
    - "[io.netty.buffer.EmptyByteBuf].unwrap()"
    - "[io.netty.buffer.FixedCompositeByteBuf].unwrap()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].unwrap()"
    - "[io.netty.buffer.PooledByteBuf].unwrap()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.ReadOnlyByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.WrappedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable0(int)"
    - "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.AbstractByteBuf,int,int,java.lang.CharSequence,int,int)"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.util.internal.AppendableCharSequence].subSequence(int,int)"
    - "[java.lang.StringBuffer].subSequence(int,int)"
    - "[java.lang.String].subSequence(int,int)"
    - "[java.lang.StringBuilder].subSequence(int,int)"
    - "[io.netty.util.AsciiString].subSequence(int,int)"
    - "[java.lang.AbstractStringBuilder].subSequence(int,int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].unwrap()"
    - "[java.lang.CharSequence].subSequence(int,int)"
    - "[java.lang.CharSequence].toString()"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    functionUses: 2
    ICount: 30
    EdgeCount: 60
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:799"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:801"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:802"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:808"
        BranchSideFuncs:
        - "writeUtf8(io.netty.buffer.AbstractByteBuf,int,int,java.lang.CharSequence,int,int)"
        - "ensureWritable0(int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:807"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:808"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:811"
        BranchSideFuncs:
        - "subSequence(int,int)"
        - "toString()"
        - "writeBytes(byte[])"
        - "getBytes(java.nio.charset.Charset)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:801,1"
      Dst: "[io.netty.buffer.ByteBuf].unwrap()"
    - Src: "io.netty.buffer.ByteBufUtil:804,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureWritable0(int)"
    - Src: "io.netty.buffer.ByteBufUtil:805,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.AbstractByteBuf,int,int,java.lang.CharSequence,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:812,1"
      Dst: "[java.lang.CharSequence].subSequence(int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:812,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.buffer.ByteBufUtil:812,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.buffer.ByteBufUtil:813,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.AbstractByteBuf,int,int,java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 825
    functionLinenumberEnd: 850
    functionDepth: 4
    returnType: "int"
    argCount: 6
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    - "int"
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].writeAsciiString(io.netty.buffer.AbstractByteBuf,int,io.netty.util.AsciiString,int,int)"
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.util.internal.PlatformDependent].byteArrayBaseOffset()"
    - "[io.netty.buffer.ByteBufUtil].unsafeWriteUtf8(byte[],long,int,java.lang.CharSequence,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBufUtil].safeArrayWriteUtf8(byte[],int,java.lang.CharSequence,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isDirect()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.DuplicatedByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].isDirect()"
    - "[io.netty.buffer.CompositeByteBuf].isDirect()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBuf].isDirect()"
    - "[io.netty.buffer.PooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.SlicedByteBuf].isDirect()"
    - "[io.netty.buffer.PooledDirectByteBuf].isDirect()"
    - "[io.netty.buffer.FixedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isDirect()"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ByteBufUtil].safeDirectWriteUtf8(java.nio.ByteBuffer,int,java.lang.CharSequence,int,int)"
    - "[io.netty.buffer.ByteBufUtil].safeWriteUtf8(io.netty.buffer.AbstractByteBuf,int,java.lang.CharSequence,int,int)"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBuf].isDirect()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[java.nio.Buffer].position()"
    functionUses: 2
    ICount: 49
    EdgeCount: 165
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:826"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:830"
        BranchSideFuncs:
        - "writeAsciiString(io.netty.buffer.AbstractByteBuf,int,io.netty.util.AsciiString,int,int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:829"
        BranchSideFuncs:
        - "hasUnsafe()"
    - Branch String: "io.netty.buffer.ByteBufUtil:830"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:839"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:838"
        BranchSideFuncs:
        - "hasArray()"
    - Branch String: "io.netty.buffer.ByteBufUtil:831"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:835"
        BranchSideFuncs:
        - "byteArrayBaseOffset()"
      - BranchSide: "io.netty.buffer.ByteBufUtil:834"
        BranchSideFuncs:
        - "hasMemoryAddress()"
    - Branch String: "io.netty.buffer.ByteBufUtil:835"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:849"
        BranchSideFuncs:
        - "unsafeWriteUtf8(byte[],long,int,java.lang.CharSequence,int,int)"
        - "memoryAddress()"
      - BranchSide: "io.netty.buffer.ByteBufUtil:848"
        BranchSideFuncs:
        - "safeWriteUtf8(io.netty.buffer.AbstractByteBuf,int,java.lang.CharSequence,int,int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:839"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:842"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
        - "safeArrayWriteUtf8(byte[],int,java.lang.CharSequence,int,int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:841"
        BranchSideFuncs:
        - "isDirect()"
    - Branch String: "io.netty.buffer.ByteBufUtil:842"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:849"
        BranchSideFuncs:
        - "<init>()"
        - "nioBufferCount()"
      - BranchSide: "io.netty.buffer.ByteBufUtil:848"
        BranchSideFuncs:
        - "safeWriteUtf8(io.netty.buffer.AbstractByteBuf,int,java.lang.CharSequence,int,int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:843"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:844"
        BranchSideFuncs:
        - "safeDirectWriteUtf8(java.nio.ByteBuffer,int,java.lang.CharSequence,int,int)"
        - "internalNioBuffer(int,int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:843"
        BranchSideFuncs:
        - "safeDirectWriteUtf8(java.nio.ByteBuffer,int,java.lang.CharSequence,int,int)"
        - "internalNioBuffer(int,int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:843"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:844"
        BranchSideFuncs:
        - "safeDirectWriteUtf8(java.nio.ByteBuffer,int,java.lang.CharSequence,int,int)"
        - "internalNioBuffer(int,int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:843"
        BranchSideFuncs:
        - "safeDirectWriteUtf8(java.nio.ByteBuffer,int,java.lang.CharSequence,int,int)"
        - "internalNioBuffer(int,int)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:827,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeAsciiString(io.netty.buffer.AbstractByteBuf,int,io.netty.util.AsciiString,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:830,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.buffer.ByteBufUtil:831,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.buffer.ByteBufUtil:832,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.ByteBufUtil:832,1"
      Dst: "[io.netty.util.internal.PlatformDependent].byteArrayBaseOffset()"
    - Src: "io.netty.buffer.ByteBufUtil:833,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.buffer.ByteBufUtil:832,1"
      Dst: "[io.netty.buffer.ByteBufUtil].unsafeWriteUtf8(byte[],long,int,java.lang.CharSequence,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:835,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - Src: "io.netty.buffer.ByteBufUtil:836,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    - Src: "io.netty.buffer.ByteBufUtil:840,1"
      Dst: "[io.netty.buffer.ByteBufUtil].safeArrayWriteUtf8(byte[],int,java.lang.CharSequence,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:842,1"
      Dst: "[io.netty.buffer.ByteBuf].isDirect()"
    - Src: "io.netty.buffer.ByteBufUtil:843,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.buffer.ByteBufUtil:843,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.ByteBufUtil:844,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:845,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.buffer.ByteBufUtil:846,1"
      Dst: "[io.netty.buffer.ByteBufUtil].safeDirectWriteUtf8(java.nio.ByteBuffer,int,java.lang.CharSequence,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:849,1"
      Dst: "[io.netty.buffer.ByteBufUtil].safeWriteUtf8(io.netty.buffer.AbstractByteBuf,int,java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.ByteBufUtil].writeAsciiString(io.netty.buffer.AbstractByteBuf,int,io.netty.util.AsciiString,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 853
    functionLinenumberEnd: 873
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    - "io.netty.util.AsciiString"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.util.AsciiString].array()"
    - "[io.netty.util.internal.PlatformDependent].copyMemory(byte[],int,byte[],int,long)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.util.internal.PlatformDependent].copyMemory(byte[],int,long,long)"
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,byte[],int,int)"
    functionUses: 2
    ICount: 39
    EdgeCount: 145
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:856"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:867"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:866"
        BranchSideFuncs:
        - "hasArray()"
    - Branch String: "io.netty.buffer.ByteBufUtil:857"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:862"
        BranchSideFuncs:
        - "copyMemory(byte[],int,byte[],int,long)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:861"
        BranchSideFuncs:
        - "hasMemoryAddress()"
    - Branch String: "io.netty.buffer.ByteBufUtil:862"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:867"
        BranchSideFuncs:
        - "copyMemory(byte[],int,long,long)"
        - "memoryAddress()"
      - BranchSide: "io.netty.buffer.ByteBufUtil:866"
        BranchSideFuncs:
        - "hasArray()"
    - Branch String: "io.netty.buffer.ByteBufUtil:867"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:871"
        BranchSideFuncs:
        - "arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
        - "arrayOffset()"
      - BranchSide: "io.netty.buffer.ByteBufUtil:870"
        BranchSideFuncs:
        - "array()"
        - "setBytes(int,byte[],int,int)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:854,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.buffer.ByteBufUtil:856,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.buffer.ByteBufUtil:857,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.buffer.ByteBufUtil:858,1"
      Dst: "[io.netty.util.AsciiString].array()"
    - Src: "io.netty.buffer.ByteBufUtil:859,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.ByteBufUtil:859,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.buffer.ByteBufUtil:858,1"
      Dst: "[io.netty.util.internal.PlatformDependent].copyMemory(byte[],int,byte[],int,long)"
    - Src: "io.netty.buffer.ByteBufUtil:862,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - Src: "io.netty.buffer.ByteBufUtil:863,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    - Src: "io.netty.buffer.ByteBufUtil:863,1"
      Dst: "[io.netty.util.internal.PlatformDependent].copyMemory(byte[],int,long,long)"
    - Src: "io.netty.buffer.ByteBufUtil:868,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:871,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].array()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 367
    functionLinenumberEnd: 369
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].copyMemory(byte[],int,byte[],int,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 750
    functionLinenumberEnd: 754
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].copyMemory(java.lang.Object,long,java.lang.Object,long,long)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:751,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].copyMemory(java.lang.Object,long,java.lang.Object,long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].copyMemory(java.lang.Object,long,java.lang.Object,long,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 745
    functionLinenumberEnd: 752
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.Object"
    - "long"
    - "java.lang.Object"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].javaVersion()"
    - "[io.netty.util.internal.PlatformDependent0].copyMemoryWithSafePointPolling(java.lang.Object,long,java.lang.Object,long,long)"
    - "[sun.misc.Unsafe].copyMemory(java.lang.Object,long,java.lang.Object,long,long)"
    functionUses: 3
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:746"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:749"
        BranchSideFuncs:
        - "copyMemoryWithSafePointPolling(java.lang.Object,long,java.lang.Object,long,long)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:748"
        BranchSideFuncs:
        - "copyMemory(java.lang.Object,long,java.lang.Object,long,long)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:746,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].javaVersion()"
    - Src: "io.netty.util.internal.PlatformDependent0:747,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].copyMemoryWithSafePointPolling(java.lang.Object,long,java.lang.Object,long,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:749,1"
      Dst: "[sun.misc.Unsafe].copyMemory(java.lang.Object,long,java.lang.Object,long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent0].copyMemoryWithSafePointPolling(java.lang.Object,long,java.lang.Object,long,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 754
    functionLinenumberEnd: 763
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.Object"
    - "long"
    - "java.lang.Object"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(long,long)"
    - "[sun.misc.Unsafe].copyMemory(java.lang.Object,long,java.lang.Object,long,long)"
    functionUses: 1
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:755"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:762"
        BranchSideFuncs:
        - "min(long,long)"
        - "copyMemory(java.lang.Object,long,java.lang.Object,long,long)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:761"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:756,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:757,1"
      Dst: "[sun.misc.Unsafe].copyMemory(java.lang.Object,long,java.lang.Object,long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].copyMemory(byte[],int,long,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 746
    functionLinenumberEnd: 749
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].copyMemory(java.lang.Object,long,java.lang.Object,long,long)"
    functionUses: 7
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:747,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].copyMemory(java.lang.Object,long,java.lang.Object,long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].byteArrayBaseOffset()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 316
    functionLinenumberEnd: 318
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].unsafeWriteUtf8(byte[],long,int,java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1013
    functionLinenumberEnd: 1056
    functionDepth: 2
    returnType: "int"
    argCount: 6
    argTypes:
    - "byte[]"
    - "long"
    - "int"
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.internal.PlatformDependent].putByte(java.lang.Object,long,byte)"
    - "[io.netty.util.internal.StringUtil].isSurrogate(char)"
    - "[java.lang.Character].isHighSurrogate(char)"
    - "[java.lang.Character].isLowSurrogate(char)"
    - "[java.lang.Character].toCodePoint(char,char)"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 2
    ICount: 115
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:1014"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1015"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1014"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1014"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1015"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1014"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1017"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1055"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1054"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1019"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1021"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1024"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1023"
        BranchSideFuncs:
        - "isSurrogate(char)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1024"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1050"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1049"
        BranchSideFuncs:
        - "putByte(java.lang.Object,long,byte)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1025"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1030"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1029"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1030"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1034"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1033"
        BranchSideFuncs:
        - "isLowSurrogate(char)"
        - "charAt(int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1037"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1042"
        BranchSideFuncs:
        - "isHighSurrogate(char)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1041"
        BranchSideFuncs:
        - "toCodePoint(char,char)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1040"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1037"
        BranchSideFuncs:
        - "isHighSurrogate(char)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1014,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.ByteBufUtil:1018,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1020,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(java.lang.Object,long,byte)"
    - Src: "io.netty.buffer.ByteBufUtil:1024,1"
      Dst: "[io.netty.util.internal.StringUtil].isSurrogate(char)"
    - Src: "io.netty.buffer.ByteBufUtil:1025,1"
      Dst: "[java.lang.Character].isHighSurrogate(char)"
    - Src: "io.netty.buffer.ByteBufUtil:1037,1"
      Dst: "[java.lang.Character].isLowSurrogate(char)"
    - Src: "io.netty.buffer.ByteBufUtil:1042,1"
      Dst: "[java.lang.Character].toCodePoint(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 24
    CyclomaticComplexity: 10
  - functionName: "[io.netty.util.internal.PlatformDependent].putByte(java.lang.Object,long,byte)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 718
    functionLinenumberEnd: 721
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].putByte(java.lang.Object,long,byte)"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:719,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].putByte(java.lang.Object,long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].putByte(java.lang.Object,long,byte)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 703
    functionLinenumberEnd: 706
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].putByte(java.lang.Object,long,byte)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:704,1"
      Dst: "[sun.misc.Unsafe].putByte(java.lang.Object,long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].isSurrogate(char)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 614
    functionLinenumberEnd: 616
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:615"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:614"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:615"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:614"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.ByteBufUtil].safeArrayWriteUtf8(byte[],int,java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 969
    functionLinenumberEnd: 1009
    functionDepth: 1
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.internal.StringUtil].isSurrogate(char)"
    - "[java.lang.Character].isHighSurrogate(char)"
    - "[java.lang.Character].isLowSurrogate(char)"
    - "[java.lang.Character].toCodePoint(char,char)"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 1
    ICount: 104
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:971"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1008"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1007"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:973"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:975"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:978"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:977"
        BranchSideFuncs:
        - "isSurrogate(char)"
    - Branch String: "io.netty.buffer.ByteBufUtil:978"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1003"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1002"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:979"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:984"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:983"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:984"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:988"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:987"
        BranchSideFuncs:
        - "isLowSurrogate(char)"
        - "charAt(int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:991"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:995"
        BranchSideFuncs:
        - "isHighSurrogate(char)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:994"
        BranchSideFuncs:
        - "toCodePoint(char,char)"
    - Branch String: "io.netty.buffer.ByteBufUtil:993"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:991"
        BranchSideFuncs:
        - "isHighSurrogate(char)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:972,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.buffer.ByteBufUtil:978,1"
      Dst: "[io.netty.util.internal.StringUtil].isSurrogate(char)"
    - Src: "io.netty.buffer.ByteBufUtil:979,1"
      Dst: "[java.lang.Character].isHighSurrogate(char)"
    - Src: "io.netty.buffer.ByteBufUtil:991,1"
      Dst: "[java.lang.Character].isLowSurrogate(char)"
    - Src: "io.netty.buffer.ByteBufUtil:995,1"
      Dst: "[java.lang.Character].toCodePoint(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 9
  - functionName: "[io.netty.buffer.ByteBufUtil].safeDirectWriteUtf8(java.nio.ByteBuffer,int,java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 875
    functionLinenumberEnd: 919
    functionDepth: 1
    returnType: "int"
    argCount: 5
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.internal.StringUtil].isSurrogate(char)"
    - "[java.lang.Character].isHighSurrogate(char)"
    - "[java.lang.Character].isLowSurrogate(char)"
    - "[java.lang.Character].toCodePoint(char,char)"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.nio.ByteBuffer].put(int,byte)"
    functionUses: 1
    ICount: 110
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:876"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:877"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:876"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:876"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:877"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:876"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:881"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:918"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:917"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:883"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:885"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:888"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:887"
        BranchSideFuncs:
        - "isSurrogate(char)"
    - Branch String: "io.netty.buffer.ByteBufUtil:888"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:913"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:912"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:889"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:894"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:893"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:894"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:900"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:899"
        BranchSideFuncs:
        - "isLowSurrogate(char)"
        - "charAt(int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:901"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:905"
        BranchSideFuncs:
        - "isHighSurrogate(char)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:904"
        BranchSideFuncs:
        - "toCodePoint(char,char)"
    - Branch String: "io.netty.buffer.ByteBufUtil:903"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:901"
        BranchSideFuncs:
        - "isHighSurrogate(char)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:876,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.ByteBufUtil:882,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.buffer.ByteBufUtil:884,1"
      Dst: "[java.nio.ByteBuffer].put(int,byte)"
    - Src: "io.netty.buffer.ByteBufUtil:888,1"
      Dst: "[io.netty.util.internal.StringUtil].isSurrogate(char)"
    - Src: "io.netty.buffer.ByteBufUtil:889,1"
      Dst: "[java.lang.Character].isHighSurrogate(char)"
    - Src: "io.netty.buffer.ByteBufUtil:901,1"
      Dst: "[java.lang.Character].isLowSurrogate(char)"
    - Src: "io.netty.buffer.ByteBufUtil:905,1"
      Dst: "[java.lang.Character].toCodePoint(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 24
    CyclomaticComplexity: 10
  - functionName: "[io.netty.buffer.ByteBufUtil].safeWriteUtf8(io.netty.buffer.AbstractByteBuf,int,java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 922
    functionLinenumberEnd: 966
    functionDepth: 1
    returnType: "int"
    argCount: 5
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setByte(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setByte(int,int)"
    - "[io.netty.util.internal.StringUtil].isSurrogate(char)"
    - "[java.lang.Character].isHighSurrogate(char)"
    - "[java.lang.Character].isLowSurrogate(char)"
    - "[java.lang.Character].toCodePoint(char,char)"
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.buffer.AbstractByteBuf]._setByte(int,int)"
    functionUses: 1
    ICount: 120
    EdgeCount: 286
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:923"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:924"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:923"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:923"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:924"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:923"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:928"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:965"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:964"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:930"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:932"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:935"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:934"
        BranchSideFuncs:
        - "isSurrogate(char)"
    - Branch String: "io.netty.buffer.ByteBufUtil:935"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:960"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:959"
        BranchSideFuncs:
        - "_setByte(int,int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:936"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:941"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:940"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:941"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:947"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:946"
        BranchSideFuncs:
        - "isLowSurrogate(char)"
        - "charAt(int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:948"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:952"
        BranchSideFuncs:
        - "isHighSurrogate(char)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:951"
        BranchSideFuncs:
        - "toCodePoint(char,char)"
    - Branch String: "io.netty.buffer.ByteBufUtil:950"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:948"
        BranchSideFuncs:
        - "isHighSurrogate(char)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:923,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.ByteBufUtil:929,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.buffer.ByteBufUtil:931,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setByte(int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:935,1"
      Dst: "[io.netty.util.internal.StringUtil].isSurrogate(char)"
    - Src: "io.netty.buffer.ByteBufUtil:936,1"
      Dst: "[java.lang.Character].isHighSurrogate(char)"
    - Src: "io.netty.buffer.ByteBufUtil:948,1"
      Dst: "[java.lang.Character].isLowSurrogate(char)"
    - Src: "io.netty.buffer.ByteBufUtil:952,1"
      Dst: "[java.lang.Character].toCodePoint(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 24
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.codec.redis.RedisEncoder].writeIntegerMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.IntegerRedisMessage,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisEncoder"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 120
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.redis.IntegerRedisMessage"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.handler.codec.redis.RedisMessageType].writeTo(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.redis.RedisEncoder].numberToBytes(long)"
    - "[io.netty.handler.codec.redis.IntegerRedisMessage].value()"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 15
    EdgeCount: 29
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisEncoder:113,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:115,1"
      Dst: "[io.netty.handler.codec.redis.RedisMessageType].writeTo(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:116,1"
      Dst: "[io.netty.handler.codec.redis.IntegerRedisMessage].value()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:116,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].numberToBytes(long)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:116,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:117,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:118,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.IntegerRedisMessage].value()"
    functionSourceFile: "io.netty.handler.codec.redis.IntegerRedisMessage"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisEncoder].numberToBytes(long)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisEncoder"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.FixedRedisMessagePool].getByteBufOfInteger(long)"
    - "[io.netty.handler.codec.redis.RedisCodecUtil].longToAsciiBytes(long)"
    - "[io.netty.handler.codec.redis.RedisMessagePool].getByteBufOfInteger(long)"
    functionUses: 4
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.RedisEncoder:205"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:203"
        BranchSideFuncs:
        - "getByteBufOfInteger(long)"
        - "longToAsciiBytes(long)"
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisEncoder:204,1"
      Dst: "[io.netty.handler.codec.redis.RedisMessagePool].getByteBufOfInteger(long)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:205,1"
      Dst: "[io.netty.handler.codec.redis.RedisCodecUtil].longToAsciiBytes(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.redis.RedisCodecUtil].longToAsciiBytes(long)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisCodecUtil"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.lang.Long].toString(long)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisCodecUtil:30,1"
      Dst: "[java.lang.Long].toString(long)"
    - Src: "io.netty.handler.codec.redis.RedisCodecUtil:30,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisEncoder].writeBulkStringHeader(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.BulkStringHeaderRedisMessage,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisEncoder"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 134
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.handler.codec.redis.BulkStringHeaderRedisMessage].isNull()"
    - "[io.netty.handler.codec.redis.RedisMessageType].writeTo(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.redis.BulkStringHeaderRedisMessage].bulkStringLength()"
    - "[io.netty.handler.codec.redis.RedisEncoder].numberToBytes(long)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 28
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.RedisEncoder:123"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:123"
        BranchSideFuncs:
        - "writeTo(io.netty.buffer.ByteBuf)"
        - "ioBuffer(int)"
        - "isNull()"
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:122"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.redis.RedisEncoder:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:129"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:128"
        BranchSideFuncs:
        - "writeShort(int)"
        - "writeBytes(byte[])"
        - "numberToBytes(long)"
        - "bulkStringLength()"
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisEncoder:123,1"
      Dst: "[io.netty.handler.codec.redis.BulkStringHeaderRedisMessage].isNull()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:122,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:125,1"
      Dst: "[io.netty.handler.codec.redis.RedisMessageType].writeTo(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:127,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:129,1"
      Dst: "[io.netty.handler.codec.redis.BulkStringHeaderRedisMessage].bulkStringLength()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:129,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].numberToBytes(long)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:129,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:132,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.redis.BulkStringHeaderRedisMessage].isNull()"
    functionSourceFile: "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage:52"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.redis.BulkStringHeaderRedisMessage].bulkStringLength()"
    functionSourceFile: "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisEncoder].writeBulkStringContent(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.BulkStringRedisContent,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisEncoder"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 142
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.redis.BulkStringRedisContent"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].content()"
    - "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].content()"
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].content()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].retain()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.RedisEncoder:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:141"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "writeShort(int)"
        - "ioBuffer(int)"
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisEncoder:137,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:137,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:137,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:139,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:139,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.redis.RedisEncoder].writeFullBulkStringMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.FullBulkStringRedisMessage,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisEncoder"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 163
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].isNull()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].isNull()"
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.handler.codec.redis.RedisMessageType].writeTo(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].content()"
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].content()"
    - "[io.netty.handler.codec.redis.RedisEncoder].numberToBytes(long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 1
    ICount: 38
    EdgeCount: 118
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.RedisEncoder:145"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:153"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:152"
        BranchSideFuncs:
        - "writeTo(io.netty.buffer.ByteBuf)"
        - "content()"
        - "writeShort(int)"
        - "add(java.lang.Object)"
        - "retain()"
        - "ioBuffer(int)"
        - "writeBytes(byte[])"
        - "numberToBytes(long)"
        - "readableBytes()"
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisEncoder:145,1"
      Dst: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].isNull()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:146,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:148,1"
      Dst: "[io.netty.handler.codec.redis.RedisMessageType].writeTo(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:149,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:151,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:156,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:156,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:156,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].numberToBytes(long)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:156,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:159,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].isNull()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DefaultByteBufHolder].content()"
    functionSourceFile: "io.netty.buffer.DefaultByteBufHolder"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].ensureAccessible(io.netty.buffer.ByteBuf)"
    functionUses: 50
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DefaultByteBufHolder:35,1"
      Dst: "[io.netty.buffer.ByteBufUtil].ensureAccessible(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].ensureAccessible(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 128
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].isAccessible()"
    - "[io.netty.buffer.SwappedByteBuf].isAccessible()"
    - "[io.netty.buffer.ByteBuf].isAccessible()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].isAccessible()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isAccessible()"
    - "[io.netty.buffer.WrappedByteBuf].isAccessible()"
    - "[io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf].isAccessible()"
    - "[io.netty.util.IllegalReferenceCountException].<init>(int)"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 4
    ICount: 8
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:124"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:127"
        BranchSideFuncs:
        - "<init>(int)"
        - "refCnt()"
      - BranchSide: "io.netty.buffer.ByteBufUtil:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:124,1"
      Dst: "[io.netty.buffer.ByteBuf].isAccessible()"
    - Src: "io.netty.buffer.ByteBufUtil:125,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    - Src: "io.netty.buffer.ByteBufUtil:125,1"
      Dst: "[io.netty.util.IllegalReferenceCountException].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.IllegalReferenceCountException].<init>(int)"
    functionSourceFile: "io.netty.util.IllegalReferenceCountException"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.IllegalReferenceCountException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 7
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.IllegalReferenceCountException:30,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.IllegalReferenceCountException:30,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.IllegalReferenceCountException:30,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.IllegalReferenceCountException:30,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.IllegalReferenceCountException:30,1"
      Dst: "[io.netty.util.IllegalReferenceCountException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.IllegalReferenceCountException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.util.IllegalReferenceCountException"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.IllegalReferenceCountException:38,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisEncoder].writeArrayHeader(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.ArrayHeaderRedisMessage,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisEncoder"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.redis.ArrayHeaderRedisMessage"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].isNull()"
    - "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].length()"
    - "[io.netty.handler.codec.redis.RedisEncoder].writeArrayHeader(io.netty.buffer.ByteBufAllocator,boolean,long,java.util.List)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisEncoder:168,1"
      Dst: "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].isNull()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:168,1"
      Dst: "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].length()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:168,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].writeArrayHeader(io.netty.buffer.ByteBufAllocator,boolean,long,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].isNull()"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:52"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:51"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].length()"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisEncoder].writeArrayMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.ArrayRedisMessage,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisEncoder"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 184
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.redis.ArrayRedisMessage"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].isNull()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$1].isNull()"
    - "[io.netty.handler.codec.redis.RedisEncoder].writeArrayHeader(io.netty.buffer.ByteBufAllocator,boolean,long,java.util.List)"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].children()"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.redis.RedisEncoder].writeRedisMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.RedisMessage,java.util.List)"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 23
    EdgeCount: 138
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.RedisEncoder:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:178"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:177"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "isNull()"
        - "writeArrayHeader(io.netty.buffer.ByteBufAllocator,boolean,long,java.util.List)"
        - "next()"
        - "children()"
        - "size()"
    - Branch String: "io.netty.handler.codec.redis.RedisEncoder:179"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:183"
        BranchSideFuncs:
        - "writeRedisMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.RedisMessage,java.util.List)"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "children()"
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisEncoder:175,1"
      Dst: "[io.netty.handler.codec.redis.ArrayRedisMessage].isNull()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:176,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].writeArrayHeader(io.netty.buffer.ByteBufAllocator,boolean,long,java.util.List)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:178,1"
      Dst: "[io.netty.handler.codec.redis.ArrayRedisMessage].children()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:178,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:179,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:179,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:179,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:180,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].writeRedisMessage(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.redis.RedisMessage,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.redis.RedisEncoder].writeArrayHeader(io.netty.buffer.ByteBufAllocator,boolean,long,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisEncoder"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 202
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "boolean"
    - "long"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.handler.codec.redis.RedisMessageType].writeTo(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.handler.codec.redis.RedisEncoder].numberToBytes(long)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    functionUses: 3
    ICount: 27
    EdgeCount: 64
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.RedisEncoder:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:194"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.redis.RedisEncoder:193"
        BranchSideFuncs:
        - "writeTo(io.netty.buffer.ByteBuf)"
        - "writeShort(int)"
        - "add(java.lang.Object)"
        - "ioBuffer(int)"
        - "writeBytes(byte[])"
        - "numberToBytes(long)"
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisEncoder:187,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:189,1"
      Dst: "[io.netty.handler.codec.redis.RedisMessageType].writeTo(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:190,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:192,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:197,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].numberToBytes(long)"
    - Src: "io.netty.handler.codec.redis.RedisEncoder:197,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.redis.RedisEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisEncoder"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.RedisEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.redis.RedisMessage,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisEncoder:33,1"
      Dst: "[io.netty.handler.codec.redis.RedisEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.redis.RedisMessage,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf].<init>(io.netty.buffer.UnpooledByteBufAllocator,int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.UnpooledByteBufAllocator"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf:139,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf].allocateArray(int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 147
    functionDepth: 3
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].allocateArray(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledByteBufAllocator].incrementHeap(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf:144,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].allocateArray(int)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf:145,1"
      Dst: "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf:145,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator].incrementHeap(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].allocateArray(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:39,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    functionSourceFile: "io.netty.buffer.UnpooledHeapByteBuf"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBufAllocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 31
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator].incrementHeap(int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].add(long)"
    - "[java.util.concurrent.atomic.LongAdder].add(long)"
    - "[io.netty.util.internal.LongCounter].add(long)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:130,1"
      Dst: "[io.netty.util.internal.LongCounter].add(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf].freeArray(byte[])"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 155
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf].freeArray(byte[])"
    - "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledByteBufAllocator].decrementHeap(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf:152,1"
      Dst: "[io.netty.buffer.UnpooledHeapByteBuf].freeArray(byte[])"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf:153,1"
      Dst: "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf:153,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator].decrementHeap(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledHeapByteBuf].freeArray(byte[])"
    functionSourceFile: "io.netty.buffer.UnpooledHeapByteBuf"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator].decrementHeap(int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].add(long)"
    - "[java.util.concurrent.atomic.LongAdder].add(long)"
    - "[io.netty.util.internal.LongCounter].add(long)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:134,1"
      Dst: "[io.netty.util.internal.LongCounter].add(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$5].<init>(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$5"
    linkageType: ""
    functionLinenumber: 281
    functionLinenumberEnd: 283
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$5:282,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$5].run()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$5"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 297
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getDeclaredConstructor(java.lang.Class[])"
    - "[io.netty.util.internal.ReflectionUtil].trySetAccessible(java.lang.reflect.AccessibleObject,boolean)"
    - "[java.lang.Object].getClass()"
    functionUses: 4
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0$5:289"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0$5:292"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent0$5:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$5:287,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.util.internal.PlatformDependent0$5:287,1"
      Dst: "[java.lang.Class].getDeclaredConstructor(java.lang.Class[])"
    - Src: "io.netty.util.internal.PlatformDependent0$5:288,1"
      Dst: "[io.netty.util.internal.ReflectionUtil].trySetAccessible(java.lang.reflect.AccessibleObject,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Decoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Decoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - "[io.netty.handler.codec.compression.Bzip2BitReader].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:44,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:65,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitReader].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Decoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Decoder"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 333
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.handler.codec.compression.Bzip2BitReader].setByteBuf(io.netty.buffer.ByteBuf)"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedMedium()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedMedium()"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.compression.Bzip2BitReader].hasReadableBytes(int)"
    - "[io.netty.handler.codec.compression.Bzip2BitReader].readBits(int)"
    - "[io.netty.handler.codec.compression.Bzip2BitReader].readInt()"
    - "[io.netty.handler.codec.compression.Bzip2BitReader].hasReadableBits(int)"
    - "[io.netty.handler.codec.compression.Bzip2BitReader].readBoolean()"
    - "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].<init>(int,int,boolean,int,io.netty.handler.codec.compression.Bzip2BitReader)"
    - "[java.lang.Integer].bitCount(int)"
    - "[io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder].<init>(io.netty.handler.codec.compression.Bzip2BitReader,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].indexToFront(int)"
    - "[io.netty.handler.codec.compression.Bzip2BitReader].isReadable()"
    - "[io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder].createHuffmanDecodingTables()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].decodeHuffmanData(io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder)"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.handler.codec.compression.Bzip2BitReader].refill()"
    - "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].blockLength()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].read()"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].checkCRC()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[java.lang.IllegalStateException].<init>()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 1
    ICount: 271
    EdgeCount: 137
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:94"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:98"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:97"
        BranchSideFuncs:
        - "setByteBuf(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:107"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:106"
        BranchSideFuncs:
        - "readUnsignedMedium()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:111"
        BranchSideFuncs:
        - "readByte()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:114"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:116"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:115"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:122"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:125"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:137"
        BranchSideFuncs:
        - "isReadable()"
        - "<init>(int,int,boolean,int,io.netty.handler.codec.compression.Bzip2BitReader)"
        - "readerIndex()"
        - "readByte()"
        - "hasReadableBits(int)"
        - "read()"
        - "readInt()"
        - "refill()"
        - "decodeHuffmanData(io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder)"
        - "writeByte(int)"
        - "<init>(io.netty.handler.codec.compression.Bzip2BitReader,int,int)"
        - "readBoolean()"
        - "alloc()"
        - "hasReadableBytes(int)"
        - "blockLength()"
        - "buffer(int)"
        - "setByteBuf(io.netty.buffer.ByteBuf)"
        - "add(java.lang.Object)"
        - "createHuffmanDecodingTables()"
        - "indexToFront(int)"
        - "readUnsignedMedium()"
        - "checkCRC()"
        - "bitCount(int)"
        - "<init>(java.lang.String)"
        - "readBits(int)"
        - "ordinal()"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:137"
        BranchSideFuncs:
        - "isReadable()"
        - "<init>(int,int,boolean,int,io.netty.handler.codec.compression.Bzip2BitReader)"
        - "readerIndex()"
        - "readByte()"
        - "hasReadableBits(int)"
        - "read()"
        - "readInt()"
        - "refill()"
        - "decodeHuffmanData(io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder)"
        - "writeByte(int)"
        - "<init>(io.netty.handler.codec.compression.Bzip2BitReader,int,int)"
        - "readBoolean()"
        - "alloc()"
        - "hasReadableBytes(int)"
        - "blockLength()"
        - "buffer(int)"
        - "setByteBuf(io.netty.buffer.ByteBuf)"
        - "add(java.lang.Object)"
        - "createHuffmanDecodingTables()"
        - "indexToFront(int)"
        - "readUnsignedMedium()"
        - "checkCRC()"
        - "bitCount(int)"
        - "<init>(java.lang.String)"
        - "readBits(int)"
        - "ordinal()"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:131"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:134"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:133"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:137"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:138"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:137"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:137"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:140"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:139"
        BranchSideFuncs:
        - "readInt()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:147"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:146"
        BranchSideFuncs:
        - "<init>(int,int,boolean,int,io.netty.handler.codec.compression.Bzip2BitReader)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:155"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:158"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:157"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:171"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:170"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:172"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:183"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:182"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:183"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:182"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:174"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:173"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:173"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:176"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:175"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:174"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:187"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:186"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:189"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:188"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:190"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:193"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:192"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.compression.Bzip2BitReader,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:197"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:200"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:199"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:201"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:202"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:201"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:201"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:204"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:217"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:230"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:218"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:223"
        BranchSideFuncs:
        - "isReadable()"
        - "<init>(int,int,boolean,int,io.netty.handler.codec.compression.Bzip2BitReader)"
        - "readerIndex()"
        - "readByte()"
        - "hasReadableBits(int)"
        - "read()"
        - "readInt()"
        - "refill()"
        - "decodeHuffmanData(io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder)"
        - "writeByte(int)"
        - "<init>(io.netty.handler.codec.compression.Bzip2BitReader,int,int)"
        - "readBoolean()"
        - "alloc()"
        - "hasReadableBytes(int)"
        - "blockLength()"
        - "buffer(int)"
        - "setByteBuf(io.netty.buffer.ByteBuf)"
        - "add(java.lang.Object)"
        - "createHuffmanDecodingTables()"
        - "indexToFront(int)"
        - "readUnsignedMedium()"
        - "checkCRC()"
        - "bitCount(int)"
        - "<init>(java.lang.String)"
        - "readBits(int)"
        - "ordinal()"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:222"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:224"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:95"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:94"
        BranchSideFuncs:
        - "isReadable()"
        - "<init>(int,int,boolean,int,io.netty.handler.codec.compression.Bzip2BitReader)"
        - "readerIndex()"
        - "readByte()"
        - "hasReadableBits(int)"
        - "read()"
        - "readInt()"
        - "refill()"
        - "decodeHuffmanData(io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder)"
        - "writeByte(int)"
        - "<init>(io.netty.handler.codec.compression.Bzip2BitReader,int,int)"
        - "readBoolean()"
        - "alloc()"
        - "hasReadableBytes(int)"
        - "blockLength()"
        - "buffer(int)"
        - "setByteBuf(io.netty.buffer.ByteBuf)"
        - "add(java.lang.Object)"
        - "createHuffmanDecodingTables()"
        - "indexToFront(int)"
        - "readUnsignedMedium()"
        - "checkCRC()"
        - "bitCount(int)"
        - "<init>(java.lang.String)"
        - "readBits(int)"
        - "ordinal()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:244"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:279"
        BranchSideFuncs:
        - "isReadable()"
        - "<init>(int,int,boolean,int,io.netty.handler.codec.compression.Bzip2BitReader)"
        - "readerIndex()"
        - "readByte()"
        - "hasReadableBits(int)"
        - "read()"
        - "readInt()"
        - "refill()"
        - "decodeHuffmanData(io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder)"
        - "writeByte(int)"
        - "<init>(io.netty.handler.codec.compression.Bzip2BitReader,int,int)"
        - "readBoolean()"
        - "alloc()"
        - "hasReadableBytes(int)"
        - "blockLength()"
        - "buffer(int)"
        - "setByteBuf(io.netty.buffer.ByteBuf)"
        - "add(java.lang.Object)"
        - "createHuffmanDecodingTables()"
        - "indexToFront(int)"
        - "readUnsignedMedium()"
        - "checkCRC()"
        - "bitCount(int)"
        - "<init>(java.lang.String)"
        - "readBits(int)"
        - "ordinal()"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:278"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:246"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:250"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:249"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:250"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:253"
        BranchSideFuncs:
        - "readBits(int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:252"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:253"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:-1"
        BranchSideFuncs:
        - "isReadable()"
        - "<init>(int,int,boolean,int,io.netty.handler.codec.compression.Bzip2BitReader)"
        - "readerIndex()"
        - "readByte()"
        - "hasReadableBits(int)"
        - "read()"
        - "readInt()"
        - "refill()"
        - "decodeHuffmanData(io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder)"
        - "writeByte(int)"
        - "<init>(io.netty.handler.codec.compression.Bzip2BitReader,int,int)"
        - "readBoolean()"
        - "alloc()"
        - "hasReadableBytes(int)"
        - "blockLength()"
        - "buffer(int)"
        - "setByteBuf(io.netty.buffer.ByteBuf)"
        - "add(java.lang.Object)"
        - "createHuffmanDecodingTables()"
        - "indexToFront(int)"
        - "readUnsignedMedium()"
        - "checkCRC()"
        - "bitCount(int)"
        - "<init>(java.lang.String)"
        - "readBits(int)"
        - "ordinal()"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:255"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:259"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:258"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:259"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:260"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:259"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:259"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:95"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:94"
        BranchSideFuncs:
        - "isReadable()"
        - "<init>(int,int,boolean,int,io.netty.handler.codec.compression.Bzip2BitReader)"
        - "readerIndex()"
        - "readByte()"
        - "hasReadableBits(int)"
        - "read()"
        - "readInt()"
        - "refill()"
        - "decodeHuffmanData(io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder)"
        - "writeByte(int)"
        - "<init>(io.netty.handler.codec.compression.Bzip2BitReader,int,int)"
        - "readBoolean()"
        - "alloc()"
        - "hasReadableBytes(int)"
        - "blockLength()"
        - "buffer(int)"
        - "setByteBuf(io.netty.buffer.ByteBuf)"
        - "add(java.lang.Object)"
        - "createHuffmanDecodingTables()"
        - "indexToFront(int)"
        - "readUnsignedMedium()"
        - "checkCRC()"
        - "bitCount(int)"
        - "<init>(java.lang.String)"
        - "readBits(int)"
        - "ordinal()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:260"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:266"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:265"
        BranchSideFuncs:
        - "readBoolean()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:266"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:266"
        BranchSideFuncs:
        - "readBoolean()"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:265"
        BranchSideFuncs:
        - "readBoolean()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:268"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:259"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:258"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:279"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:289"
        BranchSideFuncs:
        - "isReadable()"
        - "<init>(int,int,boolean,int,io.netty.handler.codec.compression.Bzip2BitReader)"
        - "readerIndex()"
        - "readByte()"
        - "hasReadableBits(int)"
        - "read()"
        - "readInt()"
        - "refill()"
        - "decodeHuffmanData(io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder)"
        - "writeByte(int)"
        - "<init>(io.netty.handler.codec.compression.Bzip2BitReader,int,int)"
        - "readBoolean()"
        - "alloc()"
        - "hasReadableBytes(int)"
        - "blockLength()"
        - "buffer(int)"
        - "setByteBuf(io.netty.buffer.ByteBuf)"
        - "add(java.lang.Object)"
        - "createHuffmanDecodingTables()"
        - "indexToFront(int)"
        - "readUnsignedMedium()"
        - "checkCRC()"
        - "bitCount(int)"
        - "<init>(java.lang.String)"
        - "readBits(int)"
        - "ordinal()"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:288"
        BranchSideFuncs:
        - "createHuffmanDecodingTables()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:296"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:302"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:301"
        BranchSideFuncs:
        - "isReadable()"
        - "readerIndex()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:302"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:306"
        BranchSideFuncs:
        - "refill()"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:305"
        BranchSideFuncs:
        - "alloc()"
        - "blockLength()"
        - "buffer(int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:302"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:306"
        BranchSideFuncs:
        - "refill()"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:305"
        BranchSideFuncs:
        - "alloc()"
        - "blockLength()"
        - "buffer(int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:310"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:314"
        BranchSideFuncs:
        - "writeByte(int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:313"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "checkCRC()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:321"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:327"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:326"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:321"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:324"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:94,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:99,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitReader].setByteBuf(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:102,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:104,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:107,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedMedium()"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:109,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:112,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:122,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitReader].hasReadableBytes(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:126,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitReader].readBits(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:130,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitReader].readInt()"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:144,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitReader].hasReadableBits(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:147,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitReader].readBoolean()"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:150,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].<init>(int,int,boolean,int,io.netty.handler.codec.compression.Bzip2BitReader)"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:164,1"
      Dst: "[java.lang.Integer].bitCount(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:193,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder].<init>(io.netty.handler.codec.compression.Bzip2BitReader,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:227,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].indexToFront(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:255,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitReader].isReadable()"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:289,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder].createHuffmanDecodingTables()"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:294,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:295,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].decodeHuffmanData(io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder)"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:303,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitReader].refill()"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:306,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].blockLength()"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:307,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:307,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:310,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].read()"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:311,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:315,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].checkCRC()"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:318,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:322,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:329,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder:332,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 102
    CyclomaticComplexity: 35
  - functionName: "[io.netty.handler.codec.compression.Bzip2BitReader].setByteBuf(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BitReader"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2BitReader].hasReadableBytes(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BitReader"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 156
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.compression.Bzip2BitReader].hasReadableBits(int)"
    functionUses: 1
    ICount: 18
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitReader:151"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitReader:152"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitReader:151"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitReader:151"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitReader:155"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitReader:154"
        BranchSideFuncs:
        - "hasReadableBits(int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:152,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:152,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:152,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:152,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:152,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:152,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:155,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitReader].hasReadableBits(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2BitReader].hasReadableBits(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BitReader"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 143
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 8
    ICount: 25
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitReader:139"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitReader:142"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitReader:141"
        BranchSideFuncs:
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitReader:142"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitReader:141"
        BranchSideFuncs:
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitReader:142"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitReader:141"
        BranchSideFuncs:
        - "readableBytes()"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:140,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:140,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:140,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:140,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:140,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:142,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Bzip2BitReader].readBits(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BitReader"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedMedium()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedInt()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.ByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.ByteBuf].readUnsignedInt()"
    functionUses: 11
    ICount: 62
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitReader:59"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitReader:60"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitReader:59"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitReader:59"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitReader:62"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitReader:61"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitReader:65"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitReader:95"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitReader:97"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitReader:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:60,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:60,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:60,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:60,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:60,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:68,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:70,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:75,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:80,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedMedium()"
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:85,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedInt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.compression.Bzip2BitReader].readInt()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BitReader"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2BitReader].readBits(int)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:113,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitReader].readBits(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2BitReader].readBoolean()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BitReader"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2BitReader].readBits(int)"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitReader:105"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitReader:104"
        BranchSideFuncs:
        - "readBits(int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:105,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitReader].readBits(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].<init>(int,int,boolean,int,io.netty.handler.codec.compression.Bzip2BitReader)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockDecompressor"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 169
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "boolean"
    - "int"
    - "io.netty.handler.codec.compression.Bzip2BitReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Crc32].<init>()"
    - "[io.netty.handler.codec.compression.Bzip2Rand].rNums(int)"
    - "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 30
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:159,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:45,1"
      Dst: "[io.netty.handler.codec.compression.Crc32].<init>()"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:146,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2Rand].rNums(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:151,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Crc32].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.Crc32"
    linkageType: ""
    functionLinenumber: 20
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Crc32:21,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Rand].rNums(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Rand"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2MoveToFrontTable"
    linkageType: ""
    functionLinenumber: 20
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 261
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2MoveToFrontTable:21,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder].<init>(io.netty.handler.codec.compression.Bzip2BitReader,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 113
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.compression.Bzip2BitReader"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 28
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:86,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].indexToFront(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2MoveToFrontTable"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2MoveToFrontTable:79,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2BitReader].isReadable()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BitReader"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    functionUses: 3
    ICount: 10
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitReader:130"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitReader:129"
        BranchSideFuncs:
        - "isReadable()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitReader:130"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitReader:129"
        BranchSideFuncs:
        - "isReadable()"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:130,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder].createHuffmanDecodingTables()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 168
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[java.lang.Math].min(int,int)"
    functionUses: 1
    ICount: 83
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:120"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:166"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:165"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:130"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:134"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:140"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:141"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:147"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:156"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:118"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:117"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:158"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:156"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:159"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:158"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:157"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:132,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:133,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 24
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].decodeHuffmanData(io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockDecompressor"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 242
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2BitReader].hasReadableBits(int)"
    - "[io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder].nextSymbol()"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].indexToFront(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].initialiseInverseBWT()"
    functionUses: 1
    ICount: 90
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:189"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:196"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:195"
        BranchSideFuncs:
        - "nextSymbol()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:198"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:201"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:200"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:201"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:205"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:204"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:205"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:219"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:218"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:209"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:208"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:211"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:215"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:214"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:219"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:223"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:222"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:223"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:227"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:226"
        BranchSideFuncs:
        - "indexToFront(int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:234"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:239"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:238"
        BranchSideFuncs:
        - "initialiseInverseBWT()"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:189,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitReader].hasReadableBits(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:196,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder].nextSymbol()"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:207,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:227,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].indexToFront(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:235,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:235,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:235,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:235,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:240,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].initialiseInverseBWT()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 23
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder].nextSymbol()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 202
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.compression.Bzip2BitReader].readBits(int)"
    functionUses: 1
    ICount: 50
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:183"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:182"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:180"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:179"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:201"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:200"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:194"
      Branch Sides: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:178,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageDecoder:192,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitReader].readBits(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].initialiseInverseBWT()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockDecompressor"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 275
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 44
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:253"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:254"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:253"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:253"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:258"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:257"
        BranchSideFuncs:
        - "arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:259"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:266"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:267"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:254,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:258,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.compression.Bzip2BitReader].refill()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BitReader"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    functionUses: 1
    ICount: 12
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:120,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].blockLength()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockDecompressor"
    linkageType: ""
    functionLinenumber: 334
    functionLinenumberEnd: 336
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].read()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockDecompressor"
    linkageType: ""
    functionLinenumber: 281
    functionLinenumberEnd: 310
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].decodeNextBWTByte()"
    - "[io.netty.handler.codec.compression.Crc32].updateCRC(int)"
    - "[io.netty.handler.codec.compression.Crc32].updateCRC(int,int)"
    functionUses: 1
    ICount: 37
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:282"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:307"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:306"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:283"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:287"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:286"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:288"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:294"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:295"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:301"
        BranchSideFuncs:
        - "updateCRC(int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:287,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].decodeNextBWTByte()"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:293,1"
      Dst: "[io.netty.handler.codec.compression.Crc32].updateCRC(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:300,1"
      Dst: "[io.netty.handler.codec.compression.Crc32].updateCRC(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].decodeNextBWTByte()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockDecompressor"
    linkageType: ""
    functionLinenumber: 317
    functionLinenumberEnd: 332
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2Rand].rNums(int)"
    functionUses: 2
    ICount: 25
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:322"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:329"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:328"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:323"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:329"
        BranchSideFuncs:
        - "rNums(int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:328"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:326,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2Rand].rNums(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Crc32].updateCRC(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Crc32"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Crc32].updateCRC(int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Crc32"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 123
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Crc32].updateCRC(int)"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Crc32:119"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Crc32:122"
        BranchSideFuncs:
        - "updateCRC(int)"
      - BranchSide: "io.netty.handler.codec.compression.Crc32:121"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Crc32:120,1"
      Dst: "[io.netty.handler.codec.compression.Crc32].updateCRC(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockDecompressor].checkCRC()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockDecompressor"
    linkageType: ""
    functionLinenumber: 343
    functionLinenumberEnd: 349
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Crc32].getCRC()"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:345"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:348"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:347"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:344,1"
      Dst: "[io.netty.handler.codec.compression.Crc32].getCRC()"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockDecompressor:346,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Crc32].getCRC()"
    functionSourceFile: "io.netty.handler.codec.compression.Crc32"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Decoder].isClosed()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Decoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2Decoder:342"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Decoder:341"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SignatureAlgorithmConverter].<init>()"
    functionSourceFile: "io.netty.handler.ssl.SignatureAlgorithmConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SignatureAlgorithmConverter:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SignatureAlgorithmConverter].toJavaName(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SignatureAlgorithmConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].matches()"
    - "[java.util.regex.Matcher].group(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SignatureAlgorithmConverter:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SignatureAlgorithmConverter:58"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SignatureAlgorithmConverter:57"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SignatureAlgorithmConverter:59"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SignatureAlgorithmConverter:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SignatureAlgorithmConverter:71"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SignatureAlgorithmConverter:61"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SignatureAlgorithmConverter:64"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SignatureAlgorithmConverter:63"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SignatureAlgorithmConverter:64"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SignatureAlgorithmConverter:68"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SignatureAlgorithmConverter:67"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SignatureAlgorithmConverter:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SignatureAlgorithmConverter:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SignatureAlgorithmConverter:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SignatureAlgorithmConverter:58,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "io.netty.handler.ssl.SignatureAlgorithmConverter:59,1"
      Dst: "[java.util.regex.Matcher].matches()"
    - Src: "io.netty.handler.ssl.SignatureAlgorithmConverter:60,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "io.netty.handler.ssl.SignatureAlgorithmConverter:62,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.SignatureAlgorithmConverter:62,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    - Src: "io.netty.handler.ssl.SignatureAlgorithmConverter:62,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.SignatureAlgorithmConverter:62,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException:1153,1"
      Dst: "[java.lang.Exception].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException:1157,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
    linkageType: ""
    functionLinenumber: 1160
    functionLinenumberEnd: 1163
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException:1161,1"
      Dst: "[java.lang.Exception].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException:1165,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$HeadersFrame].<init>(io.netty.handler.codec.http2.StreamBufferingEncoder,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$HeadersFrame"
    linkageType: ""
    functionLinenumber: 342
    functionLinenumberEnd: 352
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "io.netty.handler.codec.http2.StreamBufferingEncoder"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "short"
    - "boolean"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$Frame].<init>(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 18
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$HeadersFrame:344,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$Frame].<init>(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$HeadersFrame].send(io.netty.channel.ChannelHandlerContext,int)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$HeadersFrame"
    linkageType: ""
    functionLinenumber: 354
    functionLinenumberEnd: 357
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$HeadersFrame:355,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 184
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 9
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "short"
    - "boolean"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$Http2ChannelClosedException].<init>()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].canCreateStream()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].isExistingStream(int)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException].<init>(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream].<init>(io.netty.channel.ChannelHandlerContext,int)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$HeadersFrame].<init>(io.netty.handler.codec.http2.StreamBufferingEncoder,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[java.util.concurrent.ConcurrentLinkedQueue].add(java.lang.Object)"
    - "[java.util.AbstractQueue].add(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].add(java.lang.Object)"
    - "[java.util.ArrayDeque].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].add(java.lang.Object)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[java.util.Queue].add(java.lang.Object)"
    functionUses: 6
    ICount: 45
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder:166"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:169"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:168"
        BranchSideFuncs:
        - "isExistingStream(int)"
        - "canCreateStream()"
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:170"
        BranchSideFuncs:
        - "writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:169"
        BranchSideFuncs:
        - "writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:173"
        BranchSideFuncs:
        - "writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:176"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "<init>(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:175"
        BranchSideFuncs:
        - "get(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:181"
        BranchSideFuncs:
        - "<init>(io.netty.channel.ChannelHandlerContext,int)"
        - "put(java.lang.Object,java.lang.Object)"
        - "valueOf(int)"
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:180"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(io.netty.handler.codec.http2.StreamBufferingEncoder,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:167,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$Http2ChannelClosedException].<init>()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:167,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:169,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder].isExistingStream(int)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:169,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder].canCreateStream()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:170,1"
      Dst: "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:174,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException].<init>(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:176,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:176,1"
      Dst: "[java.util.TreeMap].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:178,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream].<init>(io.netty.channel.ChannelHandlerContext,int)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:179,1"
      Dst: "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:181,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$HeadersFrame].<init>(io.netty.handler.codec.http2.StreamBufferingEncoder,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:181,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$Http2ChannelClosedException].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$Http2ChannelClosedException"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$Http2ChannelClosedException:68,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder].isExistingStream(int)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 288
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].lastStreamCreated()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].lastStreamCreated()"
    functionUses: 3
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:286"
        BranchSideFuncs:
        - "local()"
        - "lastStreamCreated()"
        - "connection()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:287,1"
      Dst: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].connection()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:287,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].local()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:287,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].lastStreamCreated()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].connection()"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Connection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].connection()"
    - "[io.netty.handler.codec.http2.Http2ConnectionEncoder].connection()"
    functionUses: 9
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder:41,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionEncoder].connection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder].canCreateStream()"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 284
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].local()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].numActiveStreams()"
    - "[io.netty.handler.codec.http2.Http2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].numActiveStreams()"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder:283"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:282"
        BranchSideFuncs:
        - "numActiveStreams()"
        - "local()"
        - "connection()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:283,1"
      Dst: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].connection()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:283,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].local()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:283,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].numActiveStreams()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2FrameWriter"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 9
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "short"
    - "boolean"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 6
    ICount: 13
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2FrameWriter:53,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException].<init>(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException:97,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception:41,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "io.netty.handler.codec.http2.Http2Exception$ShutdownHint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception:44,1"
      Dst: "[java.lang.Exception].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2Exception:45,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream].<init>(io.netty.channel.ChannelHandlerContext,int)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream"
    linkageType: ""
    functionLinenumber: 294
    functionLinenumberEnd: 299
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].<init>(int)"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream:295,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream:293,1"
      Dst: "[java.util.ArrayDeque].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].<init>(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:33,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].buffer()"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer()"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer()"
    functionUses: 23
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:38,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    functionUses: 78
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:43,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int,int)"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int,int)"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:48,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer()"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer()"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer()"
    functionUses: 2
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:53,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    functionUses: 26
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:58,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int,int)"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:63,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer()"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer()"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer()"
    functionUses: 8
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:68,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    functionUses: 24
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:73,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int,int)"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int,int)"
    functionUses: 11
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:78,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer()"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer()"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer()"
    functionUses: 5
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:83,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    functionUses: 24
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:88,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int,int)"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int,int)"
    functionUses: 9
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:93,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].compositeBuffer()"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PreferHeapByteBufAllocator].compositeHeapBuffer()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeHeapBuffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].compositeHeapBuffer()"
    - "[io.netty.buffer.ByteBufAllocator].compositeHeapBuffer()"
    functionUses: 2
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:98,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].compositeHeapBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].compositeBuffer(int)"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledByteBufAllocator].compositeHeapBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].compositeHeapBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeHeapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].compositeHeapBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].compositeHeapBuffer(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:103,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].compositeHeapBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].compositeHeapBuffer()"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PreferHeapByteBufAllocator].compositeHeapBuffer()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeHeapBuffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].compositeHeapBuffer()"
    - "[io.netty.buffer.ByteBufAllocator].compositeHeapBuffer()"
    functionUses: 3
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:108,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].compositeHeapBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].compositeHeapBuffer(int)"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledByteBufAllocator].compositeHeapBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].compositeHeapBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeHeapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].compositeHeapBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].compositeHeapBuffer(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:113,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].compositeHeapBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].compositeDirectBuffer()"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeDirectBuffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].compositeDirectBuffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].compositeDirectBuffer()"
    - "[io.netty.buffer.ByteBufAllocator].compositeDirectBuffer()"
    functionUses: 3
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:118,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].compositeDirectBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].compositeDirectBuffer(int)"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].compositeDirectBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeDirectBuffer(int)"
    - "[io.netty.buffer.UnpooledByteBufAllocator].compositeDirectBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].compositeDirectBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].compositeDirectBuffer(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:123,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].compositeDirectBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].isDirectBufferPooled()"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.buffer.PooledByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.buffer.UnpooledByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.buffer.ByteBufAllocator].isDirectBufferPooled()"
    functionUses: 9
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:128,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].isDirectBufferPooled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PreferHeapByteBufAllocator].calculateNewCapacity(int,int)"
    functionSourceFile: "io.netty.channel.PreferHeapByteBufAllocator"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PreferHeapByteBufAllocator].calculateNewCapacity(int,int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].calculateNewCapacity(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].calculateNewCapacity(int,int)"
    - "[io.netty.buffer.ByteBufAllocator].calculateNewCapacity(int,int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PreferHeapByteBufAllocator:133,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].calculateNewCapacity(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksRequestType].values()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksRequestType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksRequestType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksRequestType:22,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksRequestType].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksRequestType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksRequestType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksRequestType:22,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksRequestType].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksRequestType"
    linkageType: ""
    functionLinenumber: 21
    functionLinenumberEnd: 23
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksRequestType:22,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].<init>(io.netty.util.concurrent.EventExecutor,int)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor"
    linkageType: ""
    functionLinenumber: 226
    functionLinenumberEnd: 231
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].newMpscQueue()"
    - "[java.util.concurrent.atomic.AtomicInteger].<init>()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].<init>(io.netty.util.concurrent.EventExecutorGroup)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:227,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].<init>(io.netty.util.concurrent.EventExecutorGroup)"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:217,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newMpscQueue()"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:223,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor"
    linkageType: ""
    functionLinenumber: 233
    functionLinenumberEnd: 283
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].compareAndSet(int,int)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].safeExecute(java.lang.Runnable)"
    - "[java.util.concurrent.atomic.AtomicInteger].set(int)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].isEmpty()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].isEmpty()"
    - "[java.util.ArrayDeque].isEmpty()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].isEmpty()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].isEmpty()"
    - "[io.netty.util.internal.DefaultPriorityQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].isEmpty()"
    - "[io.netty.util.internal.EmptyPriorityQueue].isEmpty()"
    - "[java.util.Queue].poll()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - "[java.util.Collection].isEmpty()"
    functionUses: 52
    ICount: 59
    EdgeCount: 85
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:234"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:238"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:237"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:240"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:248"
        BranchSideFuncs:
        - "poll()"
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:247"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:242"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:235"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:234"
        BranchSideFuncs:
        - "run()"
        - "safeExecute(java.lang.Runnable)"
        - "execute(java.lang.Runnable)"
        - "poll()"
    - Branch String: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:248"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:261"
        BranchSideFuncs:
        - "run()"
        - "safeExecute(java.lang.Runnable)"
        - "execute(java.lang.Runnable)"
        - "poll()"
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:260"
        BranchSideFuncs:
        - "set(int)"
        - "isEmpty()"
        - "compareAndSet(int,int)"
    - Branch String: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:277"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:278"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:277"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:277"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:282"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:281"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:248"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:261"
        BranchSideFuncs:
        - "run()"
        - "safeExecute(java.lang.Runnable)"
        - "execute(java.lang.Runnable)"
        - "poll()"
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:260"
        BranchSideFuncs:
        - "set(int)"
        - "isEmpty()"
        - "compareAndSet(int,int)"
    - Branch String: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:277"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:278"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:277"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:277"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:281"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:280"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:234,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].compareAndSet(int,int)"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:241,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:245,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].safeExecute(java.lang.Runnable)"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:250,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].set(int)"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:251,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:277,1"
      Dst: "[java.util.Collection].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop(java.lang.Thread)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 288
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Thread"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor"
    linkageType: ""
    functionLinenumber: 291
    functionLinenumberEnd: 293
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 63
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].isShuttingDown()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor"
    linkageType: ""
    functionLinenumber: 296
    functionLinenumberEnd: 298
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.GlobalEventExecutor].isShutdown()"
    - "[java.util.concurrent.ThreadPoolExecutor].isShutdown()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].isShutdown()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].isShutdown()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].isShutdown()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].isShutdown()"
    - "[java.util.concurrent.ExecutorService].isShutdown()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:297,1"
      Dst: "[java.util.concurrent.ExecutorService].isShutdown()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].shutdownGracefully(long,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 3
    argTypes:
    - "long"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.EventExecutorGroup].shutdownGracefully(long,long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:302,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].shutdownGracefully(long,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].terminationFuture()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 308
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].terminationFuture()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].terminationFuture()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].terminationFuture()"
    - "[io.netty.util.concurrent.GlobalEventExecutor].terminationFuture()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].terminationFuture()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].terminationFuture()"
    - "[io.netty.util.concurrent.EventExecutorGroup].terminationFuture()"
    functionUses: 3
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:307,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].terminationFuture()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].shutdown()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.EventExecutorGroup].shutdown()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:312,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].shutdown()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].isShutdown()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor"
    linkageType: ""
    functionLinenumber: 316
    functionLinenumberEnd: 318
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.GlobalEventExecutor].isShutdown()"
    - "[java.util.concurrent.ThreadPoolExecutor].isShutdown()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].isShutdown()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].isShutdown()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].isShutdown()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].isShutdown()"
    - "[java.util.concurrent.ExecutorService].isShutdown()"
    functionUses: 3
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:317,1"
      Dst: "[java.util.concurrent.ExecutorService].isShutdown()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].isTerminated()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ExecutorService].isTerminated()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:322,1"
      Dst: "[java.util.concurrent.ExecutorService].isTerminated()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].awaitTermination(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ExecutorService].awaitTermination(long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:327,1"
      Dst: "[java.util.concurrent.ExecutorService].awaitTermination(long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor"
    linkageType: ""
    functionLinenumber: 331
    functionLinenumberEnd: 341
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentLinkedDeque].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.DefaultPriorityQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].offer(java.lang.Object)"
    - "[java.util.LinkedList].offer(java.lang.Object)"
    - "[java.util.ArrayDeque].offer(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].offer(java.lang.Object)"
    - "[java.util.concurrent.RejectedExecutionException].<init>()"
    - "[java.util.concurrent.atomic.AtomicInteger].compareAndSet(int,int)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[java.util.Queue].offer(java.lang.Object)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 42
    ICount: 14
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:332"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:335"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:334"
        BranchSideFuncs:
        - "compareAndSet(int,int)"
    - Branch String: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:335"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:339"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:332,1"
      Dst: "[java.util.Queue].offer(java.lang.Object)"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:333,1"
      Dst: "[java.util.concurrent.RejectedExecutionException].<init>()"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:335,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].compareAndSet(int,int)"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:338,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior].values()"
    functionSourceFile: "io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior:107,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior:107,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior:107,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$ExtendedTrustManagerVerifyCallback].<init>(io.netty.handler.ssl.OpenSslEngineMap,javax.net.ssl.X509ExtendedTrustManager)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$ExtendedTrustManagerVerifyCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.OpenSslEngineMap"
    - "javax.net.ssl.X509ExtendedTrustManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$AbstractCertificateVerifier].<init>(io.netty.handler.ssl.OpenSslEngineMap)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$ExtendedTrustManagerVerifyCallback:227,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$AbstractCertificateVerifier].<init>(io.netty.handler.ssl.OpenSslEngineMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$ExtendedTrustManagerVerifyCallback].verify(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.security.cert.X509Certificate[],java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$ExtendedTrustManagerVerifyCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    - "java.security.cert.X509Certificate[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.X509ExtendedTrustManager].checkServerTrusted(java.security.cert.X509Certificate[],java.lang.String,javax.net.ssl.SSLEngine)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$ExtendedTrustManagerVerifyCallback:234,1"
      Dst: "[javax.net.ssl.X509ExtendedTrustManager].checkServerTrusted(java.security.cert.X509Certificate[],java.lang.String,javax.net.ssl.SSLEngine)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders$InstanceInitializer].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders$InstanceInitializer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders$InstanceInitializer:185,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders$InstanceInitializer].access$000()"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders$InstanceInitializer"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.EmptyHttpHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].<init>(io.netty.buffer.CompositeByteBuf)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator"
    linkageType: ""
    functionLinenumber: 2277
    functionLinenumberEnd: 2280
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.CompositeByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].numComponents()"
    - "[io.netty.buffer.CompositeByteBuf].numComponents()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2278,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2279,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].numComponents()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator"
    linkageType: ""
    functionLinenumber: 2283
    functionLinenumberEnd: 2285
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 228
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2284"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2283"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator"
    linkageType: ""
    functionLinenumber: 2288
    functionLinenumberEnd: 2299
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].numComponents()"
    - "[io.netty.buffer.CompositeByteBuf].numComponents()"
    - "[java.util.ConcurrentModificationException].<init>()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[java.util.NoSuchElementException].<init>()"
    - "[io.netty.buffer.CompositeByteBuf].access$200(io.netty.buffer.CompositeByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf$Component].slice()"
    functionUses: 229
    ICount: 25
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2289"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2292"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2291"
        BranchSideFuncs:
        - "hasNext()"
    - Branch String: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2292"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2296"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2295"
        BranchSideFuncs:
        - "access$200(io.netty.buffer.CompositeByteBuf)"
        - "slice()"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2289,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].numComponents()"
    - Src: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2290,1"
      Dst: "[java.util.ConcurrentModificationException].<init>()"
    - Src: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2292,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - Src: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2293,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    - Src: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2296,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].access$200(io.netty.buffer.CompositeByteBuf)"
    - Src: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2296,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].slice()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].numComponents()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 901
    functionLinenumberEnd: 903
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].access$200(io.netty.buffer.CompositeByteBuf)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf$Component[]"
    argCount: 1
    argTypes:
    - "io.netty.buffer.CompositeByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf$Component].slice()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$Component"
    linkageType: ""
    functionLinenumber: 1938
    functionLinenumberEnd: 1944
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf$Component].length()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].slice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].slice(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].slice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].slice(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].srcIdx(int)"
    - "[io.netty.buffer.ByteBuf].slice(int,int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf$Component:1940"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf$Component:1943"
        BranchSideFuncs:
        - "slice(int,int)"
        - "length()"
        - "srcIdx(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf$Component:1942"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf$Component:1941,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].srcIdx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf$Component:1941,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].length()"
    - Src: "io.netty.buffer.CompositeByteBuf$Component:1941,1"
      Dst: "[io.netty.buffer.ByteBuf].slice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.CompositeByteBuf$Component].srcIdx(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$Component"
    linkageType: ""
    functionLinenumber: 1912
    functionLinenumberEnd: 1914
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf$Component].length()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$Component"
    linkageType: ""
    functionLinenumber: 1920
    functionLinenumberEnd: 1922
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].remove()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator"
    linkageType: ""
    functionLinenumber: 2303
    functionLinenumberEnd: 2305
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2304,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].<init>(io.netty.buffer.CompositeByteBuf,io.netty.buffer.CompositeByteBuf$1)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator"
    linkageType: ""
    functionLinenumber: 2277
    functionLinenumberEnd: 2279
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.CompositeByteBuf"
    - "io.netty.buffer.CompositeByteBuf$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].<init>(io.netty.buffer.CompositeByteBuf)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:2278,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].<init>(io.netty.buffer.CompositeByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpRequest"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpMethod"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,boolean)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:38,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpRequest"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 54
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpMethod"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpMessage].<init>(io.netty.handler.codec.http.HttpVersion,boolean,boolean)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 5
    ICount: 13
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:50,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpMessage].<init>(io.netty.handler.codec.http.HttpVersion,boolean,boolean)"
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:51,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpRequest"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 68
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpMethod"
    - "java.lang.String"
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpMessage].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:64,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpMessage].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:65,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpRequest].getMethod()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.HttpMethod"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpRequest].method()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:72,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].method()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpRequest].method()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpRequest"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpMethod"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpRequest].getUri()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpRequest].uri()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:83,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].uri()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpRequest].uri()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpRequest"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpRequest].setMethod(io.netty.handler.codec.http.HttpMethod)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.HttpRequest"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMethod"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:93,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpRequest].setUri(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.HttpRequest"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:99,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpRequest].setProtocolVersion(io.netty.handler.codec.http.HttpVersion)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpRequest"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpMessage].setProtocolVersion(io.netty.handler.codec.http.HttpVersion)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:105,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpMessage].setProtocolVersion(io.netty.handler.codec.http.HttpVersion)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpRequest].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpRequest"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 116
    functionDepth: 6
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMethod].hashCode()"
    - "[java.lang.String].hashCode()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].hashCode()"
    functionUses: 6
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:112,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].hashCode()"
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:113,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:114,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpMessage].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMethod].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.HttpMethod"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionDepth: 5
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[io.netty.handler.codec.http.HttpMethod].name()"
    functionUses: 6
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMethod:151,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].name()"
    - Src: "io.netty.handler.codec.http.HttpMethod:151,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMethod].name()"
    functionSourceFile: "io.netty.handler.codec.http.HttpMethod"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].toString()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMethod:139,1"
      Dst: "[io.netty.util.AsciiString].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].toString()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1156
    functionLinenumberEnd: 1163
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].toString(int)"
    functionUses: 90
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1158"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1162"
        BranchSideFuncs:
        - "toString(int)"
      - BranchSide: "io.netty.util.AsciiString:1161"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1159,1"
      Dst: "[io.netty.util.AsciiString].toString(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].toString(int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1169
    functionLinenumberEnd: 1171
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].toString(int,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1170,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:1170,1"
      Dst: "[io.netty.util.AsciiString].toString(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].toString(int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1176
    functionLinenumberEnd: 1190
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].<init>(byte[],int,int,int)"
    functionUses: 1
    ICount: 29
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1178"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1182"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1181"
        BranchSideFuncs:
        - "isOutOfBounds(int,int,int)"
    - Branch String: "io.netty.util.AsciiString:1182"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1188"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "length()"
        - "append(int)"
      - BranchSide: "io.netty.util.AsciiString:1187"
        BranchSideFuncs:
        - "<init>(byte[],int,int,int)"
    Callsites:
    - Src: "io.netty.util.AsciiString:1182,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:1182,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.util.AsciiString:1183,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.AsciiString:1183,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.AsciiString:1183,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.AsciiString:1184,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.AsciiString:1184,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.AsciiString:1184,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.util.AsciiString:1188,1"
      Dst: "[java.lang.String].<init>(byte[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpRequest].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpRequest"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 129
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMethod].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].method()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].uri()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].equals(java.lang.Object)"
    functionUses: 10
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultHttpRequest:120"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpRequest:124"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpRequest:123"
        BranchSideFuncs:
        - "method()"
    - Branch String: "io.netty.handler.codec.http.DefaultHttpRequest:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpRequest:-1"
        BranchSideFuncs:
        - "uri()"
        - "equalsIgnoreCase(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpRequest:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultHttpRequest:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpRequest:-1"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpRequest:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultHttpRequest:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpRequest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:126,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].method()"
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:126,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:127,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].uri()"
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:127,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:128,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpMessage].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.HttpMethod].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMethod"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 165
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMethod].name()"
    functionUses: 19
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpMethod:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpMethod:159"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpMethod:158"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpMethod:159"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpMethod:163"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpMethod:162"
        BranchSideFuncs:
        - "name()"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMethod:164,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].name()"
    - Src: "io.netty.handler.codec.http.HttpMethod:164,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpRequest].toString()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpRequest"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[io.netty.handler.codec.http.HttpMessageUtil].appendRequest(java.lang.StringBuilder,io.netty.handler.codec.http.HttpRequest)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:133,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:133,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].appendRequest(java.lang.StringBuilder,io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.DefaultHttpRequest:133,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMessageUtil].appendRequest(java.lang.StringBuilder,io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMessageUtil"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionDepth: 2
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMessageUtil].appendCommon(java.lang.StringBuilder,io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.handler.codec.http.HttpMessageUtil].appendInitialLine(java.lang.StringBuilder,io.netty.handler.codec.http.HttpRequest)"
    - "[io.netty.handler.codec.http.HttpMessageUtil].appendHeaders(java.lang.StringBuilder,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpMessageUtil].removeLastNewLine(java.lang.StringBuilder)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 8
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:28,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].appendCommon(java.lang.StringBuilder,io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:29,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].appendInitialLine(java.lang.StringBuilder,io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:30,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:30,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].appendHeaders(java.lang.StringBuilder,io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:31,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].removeLastNewLine(java.lang.StringBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMessageUtil].appendCommon(java.lang.StringBuilder,io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMessageUtil"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 52
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].decoderResult()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].decoderResult()"
    - "[io.netty.handler.codec.http.DefaultHttpObject].decoderResult()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage:java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.DecoderResultProvider].decoderResult()"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 2
    ICount: 14
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:44,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:44,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:46,1"
      Dst: "[io.netty.handler.codec.DecoderResultProvider].decoderResult()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:46,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:48,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:49,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMessageUtil].appendInitialLine(java.lang.StringBuilder,io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMessageUtil"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].method()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].method()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest:java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].uri()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].uri()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].uri()"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage:java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.http.HttpRequest].method()"
    - "[io.netty.handler.codec.http.HttpRequest].uri()"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    functionUses: 2
    ICount: 13
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:84,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].method()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:84,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:85,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:86,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].uri()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:86,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:88,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMessageUtil].appendHeaders(java.lang.StringBuilder,io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMessageUtil"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iterator()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry:io.netty.handler.codec.DefaultHeaders$HeaderEntry:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:java.lang.StringBuilder:java.util.AbstractMap$SimpleEntry:java.util.AbstractMap$SimpleImmutableEntry:java.util.HashMap$Node:java.util.Hashtable$Entry:java.util.TreeMap$Entry:java.util.WeakHashMap$Entry:java.util.concurrent.ConcurrentHashMap$Node].append(java.lang.String)"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.http.HttpHeaders].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    functionUses: 6
    ICount: 18
    EdgeCount: 113
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpMessageUtil:100"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpMessageUtil:106"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "append(java.lang.String)"
        - "getValue()"
        - "next()"
        - "getKey()"
      - BranchSide: "io.netty.handler.codec.http.HttpMessageUtil:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:100,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].iterator()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:100,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:100,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:101,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:101,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:103,1"
      Dst: "[java.util.Map$Entry].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpMessageUtil].removeLastNewLine(java.lang.StringBuilder)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMessageUtil"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:109,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:109,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:109,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashingStrategy$1].<init>()"
    functionSourceFile: "io.netty.util.HashingStrategy$1"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.HashingStrategy$1:62,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashingStrategy$1].hashCode(java.lang.Object)"
    functionSourceFile: "io.netty.util.HashingStrategy$1"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].hashCode()"
    - "[io.netty.handler.codec.http.HttpScheme].hashCode()"
    - "[io.netty.handler.codec.xml.XmlElement].hashCode()"
    - "[io.netty.util.concurrent.PromiseTask].hashCode()"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].hashCode()"
    - "[io.netty.channel.sctp.SctpMessage].hashCode()"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].hashCode()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].hashCode()"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].hashCode()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].hashCode()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].hashCode()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hashCode()"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].hashCode()"
    - "[java.lang.Float].hashCode()"
    - "[io.netty.handler.codec.http.DefaultHttpObject].hashCode()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].hashCode()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].hashCode()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].hashCode()"
    - "[java.lang.Boolean].hashCode()"
    - "[io.netty.channel.AbstractChannel].hashCode()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].hashCode()"
    - "[io.netty.buffer.AbstractByteBuf].hashCode()"
    - "[io.netty.util.ResourceLeakException].hashCode()"
    - "[io.netty.channel.kqueue.AcceptFilter].hashCode()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].hashCode()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].hashCode()"
    - "[java.lang.Double].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].hashCode()"
    - "[io.netty.handler.codec.string.LineSeparator].hashCode()"
    - "[io.netty.util.Signal].hashCode()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].hashCode()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].hashCode()"
    - "[io.netty.buffer.SwappedByteBuf].hashCode()"
    - "[java.lang.Byte].hashCode()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].hashCode()"
    - "[io.netty.channel.group.DefaultChannelGroup].hashCode()"
    - "[jdk.internal.module.ModuleReferenceImpl].hashCode()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].hashCode()"
    - "[io.netty.util.collection.ShortObjectHashMap].hashCode()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].hashCode()"
    - "[io.netty.handler.codec.http.HttpMethod].hashCode()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].hashCode()"
    - "[java.lang.Enum].hashCode()"
    - "[io.netty.util.ThreadDeathWatcher$Entry].hashCode()"
    - "[java.lang.Short].hashCode()"
    - "[io.netty.handler.codec.xml.XmlDTD].hashCode()"
    - "[io.netty.handler.codec.DefaultHeaders].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].hashCode()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].hashCode()"
    - "[io.netty.util.collection.IntObjectHashMap].hashCode()"
    - "[io.netty.handler.codec.xml.XmlNamespace].hashCode()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].hashCode()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].hashCode()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].hashCode()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].hashCode()"
    - "[java.lang.Character].hashCode()"
    - "[jdk.internal.org.objectweb.asm.Handle].hashCode()"
    - "[io.netty.handler.codec.dns.DnsResponseCode].hashCode()"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].hashCode()"
    - "[io.netty.handler.codec.xml.XmlAttribute].hashCode()"
    - "[io.netty.handler.codec.xml.XmlElementStart].hashCode()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].hashCode()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringPair].hashCode()"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].hashCode()"
    - "[io.netty.util.AbstractConstant].hashCode()"
    - "[io.netty.handler.codec.http.HttpVersion].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].hashCode()"
    - "[java.lang.Long].hashCode()"
    - "[jdk.internal.module.ModuleHashes].hashCode()"
    - "[io.netty.channel.local.LocalAddress].hashCode()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].hashCode()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].hashCode()"
    - "[io.netty.buffer.DefaultByteBufHolder].hashCode()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].hashCode()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].hashCode()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].hashCode()"
    - "[jaz.Zer].hashCode()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].hashCode()"
    - "[io.netty.handler.codec.xml.XmlEntityReference].hashCode()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$MqttProperty].hashCode()"
    - "[io.netty.buffer.WrappedByteBuf].hashCode()"
    - "[java.lang.Integer].hashCode()"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].hashCode()"
    - "[io.netty.handler.ssl.PemX509Certificate].hashCode()"
    - "[io.netty.handler.codec.xml.XmlContent].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].hashCode()"
    - "[io.netty.channel.unix.DomainSocketAddress].hashCode()"
    - "[io.netty.handler.codec.smtp.SmtpCommand].hashCode()"
    - "[io.netty.util.AsciiString].hashCode()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].hashCode()"
    - "[java.lang.String].hashCode()"
    - "[io.netty.util.collection.ByteObjectHashMap].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].hashCode()"
    - "[io.netty.util.collection.LongObjectHashMap].hashCode()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].hashCode()"
    - "[io.netty.util.collection.CharObjectHashMap].hashCode()"
    - "[jdk.internal.jimage.ImageReader$Node].hashCode()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].hashCode()"
    - "[java.io.File].hashCode()"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams:io.netty.buffer.EmptyByteBuf:io.netty.channel.DefaultChannelId:io.netty.channel.embedded.EmbeddedChannelId:io.netty.channel.unix.FileDescriptor:io.netty.handler.codec.EmptyHeaders:io.netty.handler.codec.dns.DnsOpCode:io.netty.handler.codec.dns.DnsRecordType:io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:io.netty.handler.codec.http2.Http2Flags:io.netty.handler.codec.socksx.v4.Socks4CommandStatus:io.netty.handler.codec.socksx.v4.Socks4CommandType:io.netty.handler.codec.socksx.v5.Socks5AddressType:io.netty.handler.codec.socksx.v5.Socks5AuthMethod:io.netty.handler.codec.socksx.v5.Socks5CommandStatus:io.netty.handler.codec.socksx.v5.Socks5CommandType:io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus:io.netty.handler.ssl.OpenSslClientSessionCache$HostPort:io.netty.handler.ssl.OpenSslSessionId:io.netty.util.internal.EmptyPriorityQueue:java.io.FilePermission:java.lang.Character$Subset:java.lang.Object:java.lang.Package:java.lang.ProcessBuilder$Redirect:java.lang.ProcessHandleImpl:java.lang.Runtime$Version:java.lang.StackTraceElement:java.lang.Thread$WeakClassKey:java.lang.invoke.ClassSpecializer$SpeciesData:java.lang.invoke.LambdaForm:java.lang.invoke.LambdaForm$Name:java.lang.invoke.LambdaForm$NamedFunction:java.lang.invoke.LambdaFormEditor$Transform:java.lang.invoke.MemberName:java.lang.invoke.MethodType:java.lang.invoke.StringConcatFactory$Key:java.lang.invoke.StringConcatFactory$Recipe:java.lang.invoke.StringConcatFactory$RecipeElement:java.lang.module.ModuleDescriptor:java.lang.module.ModuleDescriptor$Exports:java.lang.module.ModuleDescriptor$Opens:java.lang.module.ModuleDescriptor$Provides:java.lang.module.ModuleDescriptor$Requires:java.lang.module.ModuleDescriptor$Version:java.lang.module.ResolvedModule:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method:java.lang.reflect.Parameter:java.math.BigDecimal:java.math.BigInteger:java.math.MathContext:java.net.HttpCookie:java.net.Inet4Address:java.net.Inet6Address:java.net.Inet6Address$Inet6AddressHolder:java.net.InetAddress:java.net.InetSocketAddress:java.net.InetSocketAddress$InetSocketAddressHolder:java.net.InterfaceAddress:java.net.NetworkInterface:java.net.Proxy:java.net.SocketPermission:java.net.URI:java.net.URL:java.nio.ByteBuffer:java.nio.CharBuffer:java.nio.DoubleBuffer:java.nio.FloatBuffer:java.nio.IntBuffer:java.nio.LongBuffer:java.nio.ShortBuffer:java.nio.charset.Charset:java.nio.file.attribute.FileTime:java.security.AccessControlContext:java.security.AllPermission:java.security.BasicPermission:java.security.CodeSigner:java.security.CodeSource:java.security.Provider$ServiceKey:java.security.Timestamp:java.security.cert.CertPath:java.security.cert.Certificate:java.text.AttributedCharacterIterator$Attribute:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.FieldPosition:java.text.MessageFormat:java.text.NumberFormat:java.text.ParsePosition:java.text.SimpleDateFormat:java.time.Clock:java.time.Duration:java.time.Instant:java.time.LocalDate:java.time.LocalDateTime:java.time.LocalTime:java.time.OffsetDateTime:java.time.OffsetTime:java.time.Period:java.time.ZoneId:java.time.ZoneOffset:java.time.ZonedDateTime:java.time.chrono.AbstractChronology:java.time.format.DecimalStyle:java.time.temporal.ValueRange:java.time.zone.ZoneOffsetTransition:java.time.zone.ZoneOffsetTransitionRule:java.time.zone.ZoneRules:java.util.AbstractList:java.util.AbstractMap:java.util.AbstractMap$SimpleEntry:java.util.AbstractMap$SimpleImmutableEntry:java.util.AbstractSet:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.GregorianCalendar:java.util.HashMap$Node:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.Locale:java.util.Optional:java.util.OptionalDouble:java.util.OptionalInt:java.util.OptionalLong:java.util.Properties:java.util.PropertyPermission:java.util.ResourceBundle$CacheKey:java.util.TreeMap$Entry:java.util.UUID:java.util.Vector:java.util.WeakHashMap$Entry:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$Node:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Attributes$Name:java.util.jar.Manifest:java.util.logging.Level:java.util.logging.LogManager$CloseOnReset:java.util.zip.ZipEntry:java.util.zip.ZipFile$Source$Key:javax.crypto.CryptoPermission:javax.crypto.spec.SecretKeySpec:javax.net.ssl.SNIHostName:javax.net.ssl.SNIServerName:javax.security.auth.Subject:javax.security.auth.x500.X500Principal:javax.security.cert.Certificate:javax.xml.namespace.QName:jdk.internal.misc.Signal:jdk.internal.org.objectweb.asm.Type:sun.nio.ch.FileKey:sun.nio.fs.UnixFileStore:sun.nio.fs.UnixPath:sun.security.util.BitArray:sun.security.util.DerInputBuffer:sun.security.util.DerValue:sun.security.util.ObjectIdentifier:sun.security.x509.AVA:sun.security.x509.AlgorithmId:sun.security.x509.CertificateExtensions:sun.security.x509.Extension:sun.security.x509.GeneralName:sun.security.x509.GeneralNames:sun.security.x509.GeneralSubtree:sun.security.x509.GeneralSubtrees:sun.security.x509.KeyIdentifier:sun.security.x509.RDN:sun.security.x509.X500Name:sun.security.x509.X509CertInfo:sun.util.calendar.CalendarDate:sun.util.calendar.Era:sun.util.locale.BaseLocale:sun.util.locale.BaseLocale$Key:sun.util.locale.LocaleExtensions].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 10
    ICount: 7
    EdgeCount: 104
    BranchProfiles:
    - Branch String: "io.netty.util.HashingStrategy$1:65"
      Branch Sides:
      - BranchSide: "io.netty.util.HashingStrategy$1:64"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "io.netty.util.HashingStrategy$1:65,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.HashingStrategy$1].equals(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.HashingStrategy$1"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].equals(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].equals(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].equals(java.lang.Object)"
    - "[io.netty.channel.kqueue.AcceptFilter].equals(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlAttribute].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].equals(java.lang.Object)"
    - "[java.lang.Integer].equals(java.lang.Object)"
    - "[io.netty.channel.unix.DomainSocketAddress].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].equals(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].equals(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].equals(java.lang.Object)"
    - "[io.netty.buffer.AbstractByteBuf].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleReferenceImpl].equals(java.lang.Object)"
    - "[io.netty.channel.local.LocalAddress].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].equals(java.lang.Object)"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].equals(java.lang.Object)"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Flags].equals(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].equals(java.lang.Object)"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].equals(java.lang.Object)"
    - "[io.netty.util.ResourceLeakException].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].equals(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].equals(java.lang.Object)"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].equals(java.lang.Object)"
    - "[io.netty.handler.ssl.PemX509Certificate].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].equals(java.lang.Object)"
    - "[io.netty.channel.sctp.SctpMessage].equals(java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].equals(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].equals(java.lang.Object)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].equals(java.lang.Object)"
    - "[java.lang.Double].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMethod].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlContent].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlElementStart].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].equals(java.lang.Object)"
    - "[io.netty.util.AsciiString].equals(java.lang.Object)"
    - "[java.lang.Float].equals(java.lang.Object)"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].equals(java.lang.Object)"
    - "[java.lang.Short].equals(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReader$Node].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].equals(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].equals(java.lang.Object)"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].equals(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpVersion].equals(java.lang.Object)"
    - "[java.lang.Character].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlEntityReference].equals(java.lang.Object)"
    - "[io.netty.util.AbstractConstant].equals(java.lang.Object)"
    - "[java.lang.Byte].equals(java.lang.Object)"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].equals(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlDTD].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].equals(java.lang.Object)"
    - "[io.netty.handler.codec.EmptyHeaders].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlNamespace].equals(java.lang.Object)"
    - "[jaz.Zer].equals(java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttProperties$MqttProperty].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].equals(java.lang.Object)"
    - "[io.netty.handler.codec.smtp.SmtpCommand].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].equals(java.lang.Object)"
    - "[io.netty.handler.codec.string.LineSeparator].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlElement].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].equals(java.lang.Object)"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].equals(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].equals(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DnsResponseCode].equals(java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringPair].equals(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[jdk.internal.misc.Signal].equals(java.lang.Object)"
    - "[java.io.File].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpScheme].equals(java.lang.Object)"
    - "[io.netty.buffer.DefaultByteBufHolder].equals(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslSessionId].equals(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].equals(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpObject].equals(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelId].equals(java.lang.Object)"
    - "[java.lang.Long].equals(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].equals(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].equals(java.lang.Object)"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams:io.netty.channel.AbstractChannel:io.netty.channel.embedded.EmbeddedChannelId:io.netty.channel.group.DefaultChannelGroup:io.netty.channel.unix.FileDescriptor:io.netty.handler.codec.ReplayingDecoderByteBuf:io.netty.handler.codec.dns.DnsOpCode:io.netty.handler.codec.dns.DnsRecordType:io.netty.handler.codec.http2.AbstractHttp2StreamChannel:io.netty.handler.codec.socksx.v4.Socks4CommandStatus:io.netty.handler.codec.socksx.v4.Socks4CommandType:io.netty.handler.codec.socksx.v5.Socks5AddressType:io.netty.handler.codec.socksx.v5.Socks5AuthMethod:io.netty.handler.codec.socksx.v5.Socks5CommandStatus:io.netty.handler.codec.socksx.v5.Socks5CommandType:io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus:io.netty.util.Signal:io.netty.util.ThreadDeathWatcher$Entry:io.netty.util.concurrent.PromiseTask:java.io.FilePermission:java.lang.Character$Subset:java.lang.Enum:java.lang.Object:java.lang.ProcessBuilder$Redirect:java.lang.ProcessHandleImpl:java.lang.Runtime$Version:java.lang.StackTraceElement:java.lang.Thread$WeakClassKey:java.lang.invoke.ClassSpecializer$SpeciesData:java.lang.invoke.LambdaForm:java.lang.invoke.LambdaForm$Name:java.lang.invoke.LambdaForm$NamedFunction:java.lang.invoke.LambdaFormEditor$Transform:java.lang.invoke.MemberName:java.lang.invoke.MethodType:java.lang.invoke.StringConcatFactory$Key:java.lang.invoke.StringConcatFactory$Recipe:java.lang.invoke.StringConcatFactory$RecipeElement:java.lang.module.ModuleDescriptor:java.lang.module.ModuleDescriptor$Exports:java.lang.module.ModuleDescriptor$Opens:java.lang.module.ModuleDescriptor$Provides:java.lang.module.ModuleDescriptor$Requires:java.lang.module.ModuleDescriptor$Version:java.lang.module.ResolvedModule:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method:java.lang.reflect.Parameter:java.math.BigDecimal:java.math.BigInteger:java.math.MathContext:java.net.HttpCookie:java.net.Inet4Address:java.net.Inet6Address:java.net.Inet6Address$Inet6AddressHolder:java.net.InetAddress:java.net.InetSocketAddress:java.net.InetSocketAddress$InetSocketAddressHolder:java.net.InterfaceAddress:java.net.NetworkInterface:java.net.Proxy:java.net.SocketPermission:java.net.URI:java.net.URL:java.nio.ByteBuffer:java.nio.CharBuffer:java.nio.DoubleBuffer:java.nio.FloatBuffer:java.nio.IntBuffer:java.nio.LongBuffer:java.nio.ShortBuffer:java.nio.charset.Charset:java.nio.file.attribute.FileTime:java.security.AccessControlContext:java.security.AllPermission:java.security.BasicPermission:java.security.CodeSigner:java.security.CodeSource:java.security.Provider$ServiceKey:java.security.Timestamp:java.security.cert.CertPath:java.security.cert.Certificate:java.text.AttributedCharacterIterator$Attribute:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.FieldPosition:java.text.MessageFormat:java.text.NumberFormat:java.text.ParsePosition:java.text.SimpleDateFormat:java.time.Clock:java.time.Duration:java.time.Instant:java.time.LocalDate:java.time.LocalDateTime:java.time.LocalTime:java.time.OffsetDateTime:java.time.OffsetTime:java.time.Period:java.time.ZoneId:java.time.ZoneOffset:java.time.ZonedDateTime:java.time.chrono.AbstractChronology:java.time.format.DecimalStyle:java.time.temporal.ValueRange:java.time.zone.ZoneOffsetTransition:java.time.zone.ZoneOffsetTransitionRule:java.time.zone.ZoneRules:java.util.AbstractList:java.util.AbstractMap:java.util.AbstractMap$SimpleEntry:java.util.AbstractMap$SimpleImmutableEntry:java.util.AbstractSet:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.GregorianCalendar:java.util.HashMap$Node:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.Locale:java.util.Optional:java.util.OptionalDouble:java.util.OptionalInt:java.util.OptionalLong:java.util.Properties:java.util.PropertyPermission:java.util.ResourceBundle$CacheKey:java.util.TreeMap$Entry:java.util.UUID:java.util.Vector:java.util.WeakHashMap$Entry:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$Node:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Attributes$Name:java.util.jar.Manifest:java.util.logging.Level:java.util.logging.LogManager$CloseOnReset:java.util.zip.ZipFile$Source$Key:javax.crypto.CryptoPermission:javax.crypto.spec.SecretKeySpec:javax.net.ssl.SNIHostName:javax.net.ssl.SNIServerName:javax.security.auth.Subject:javax.security.auth.x500.X500Principal:javax.security.cert.Certificate:javax.xml.namespace.QName:jdk.internal.org.objectweb.asm.Type:sun.nio.ch.FileKey:sun.nio.fs.UnixFileStore:sun.nio.fs.UnixPath:sun.security.util.BitArray:sun.security.util.DerInputBuffer:sun.security.util.DerValue:sun.security.util.ObjectIdentifier:sun.security.x509.AVA:sun.security.x509.AlgorithmId:sun.security.x509.CertificateExtensions:sun.security.x509.Extension:sun.security.x509.GeneralName:sun.security.x509.GeneralNames:sun.security.x509.GeneralSubtree:sun.security.x509.GeneralSubtrees:sun.security.x509.KeyIdentifier:sun.security.x509.RDN:sun.security.x509.X500Name:sun.security.x509.X509CertInfo:sun.util.calendar.CalendarDate:sun.util.calendar.Era:sun.util.locale.BaseLocale:sun.util.locale.BaseLocale$Key:sun.util.locale.LocaleExtensions].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 8
    ICount: 11
    EdgeCount: 105
    BranchProfiles:
    - Branch String: "io.netty.util.HashingStrategy$1:70"
      Branch Sides:
      - BranchSide: "io.netty.util.HashingStrategy$1:69"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.util.HashingStrategy$1:70"
      Branch Sides:
      - BranchSide: "io.netty.util.HashingStrategy$1:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashingStrategy$1:70"
      Branch Sides:
      - BranchSide: "io.netty.util.HashingStrategy$1:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.HashingStrategy$1:70,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.ByteBufProcessor$5].<init>()"
    functionSourceFile: "io.netty.buffer.ByteBufProcessor$5"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufProcessor$5:75,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufProcessor$5].process(byte)"
    functionSourceFile: "io.netty.buffer.ByteBufProcessor$5"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufProcessor$5:78"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufProcessor$5:77"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$2].<init>(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$2"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 263
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameCodec"
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$2:262,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$2"
    linkageType: ""
    functionLinenumber: 264
    functionLinenumberEnd: 267
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    functionUses: 50
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$2:265,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$CloseFuture].<init>(io.netty.channel.AbstractChannel)"
    functionSourceFile: "io.netty.channel.AbstractChannel$CloseFuture"
    linkageType: ""
    functionLinenumber: 1139
    functionLinenumberEnd: 1142
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPromise].<init>(io.netty.channel.Channel)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$CloseFuture:1140,1"
      Dst: "[io.netty.channel.DefaultChannelPromise].<init>(io.netty.channel.Channel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    functionSourceFile: "io.netty.channel.AbstractChannel$CloseFuture"
    linkageType: ""
    functionLinenumber: 1144
    functionLinenumberEnd: 1146
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 50
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$CloseFuture:1145,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.AbstractChannel$CloseFuture"
    linkageType: ""
    functionLinenumber: 1149
    functionLinenumberEnd: 1151
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 128
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$CloseFuture:1150,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$CloseFuture].trySuccess()"
    functionSourceFile: "io.netty.channel.AbstractChannel$CloseFuture"
    linkageType: ""
    functionLinenumber: 1154
    functionLinenumberEnd: 1156
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$CloseFuture:1155,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.AbstractChannel$CloseFuture"
    linkageType: ""
    functionLinenumber: 1159
    functionLinenumberEnd: 1161
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 64
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$CloseFuture:1160,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$CloseFuture].setClosed()"
    functionSourceFile: "io.netty.channel.AbstractChannel$CloseFuture"
    linkageType: ""
    functionLinenumber: 1163
    functionLinenumberEnd: 1165
    functionDepth: 9
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPromise].trySuccess()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$CloseFuture:1164,1"
      Dst: "[io.netty.channel.DefaultChannelPromise].trySuccess()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].trySuccess()"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 8
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].trySuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    functionUses: 13
    ICount: 3
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPromise:84,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess0(java.lang.Object)"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:104,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].setSuccess0(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].setSuccess0(java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 604
    functionLinenumberEnd: 606
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setValue0(java.lang.Object)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:605"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:604"
        BranchSideFuncs:
        - "setValue0(java.lang.Object)"
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:605,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].setValue0(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.DefaultPromise].setValue0(java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 612
    functionLinenumberEnd: 621
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].checkNotifyWaiters()"
    - "[io.netty.util.concurrent.DefaultPromise].notifyListeners()"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:613"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:615"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:614"
        BranchSideFuncs:
        - "checkNotifyWaiters()"
    - Branch String: "io.netty.util.concurrent.DefaultPromise:614"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:620"
        BranchSideFuncs:
        - "checkNotifyWaiters()"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:619"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:615"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:618"
        BranchSideFuncs:
        - "notifyListeners()"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:617"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:613,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.concurrent.DefaultPromise:615,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].checkNotifyWaiters()"
    - Src: "io.netty.util.concurrent.DefaultPromise:616,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].notifyListeners()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.concurrent.DefaultPromise].checkNotifyWaiters()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 627
    functionLinenumberEnd: 632
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].notifyAll()"
    functionUses: 2
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:628"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:631"
        BranchSideFuncs:
        - "notifyAll()"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:630"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:631"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:630"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:629,1"
      Dst: "[java.lang.Object].notifyAll()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.concurrent.DefaultPromise].notifyListeners()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 483
    functionLinenumberEnd: 506
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.ScheduledFutureTask].executor()"
    - "[io.netty.handler.proxy.ProxyHandler$LazyChannelPromise].executor()"
    - "[io.netty.channel.DefaultChannelPromise].executor()"
    - "[io.netty.handler.ssl.SslHandler$LazyChannelPromise].executor()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].executor()"
    - "[io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise].executor()"
    - "[io.netty.util.concurrent.DefaultPromise].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - "[io.netty.util.internal.InternalThreadLocalMap].futureListenerStackDepth()"
    - "[io.netty.util.internal.InternalThreadLocalMap].setFutureListenerStackDepth(int)"
    - "[io.netty.util.concurrent.DefaultPromise].notifyListenersNow()"
    - "[io.netty.util.concurrent.DefaultPromise$1].<init>(io.netty.util.concurrent.DefaultPromise)"
    - "[io.netty.util.concurrent.DefaultPromise].safeExecute(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    functionUses: 3
    ICount: 21
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:485"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:499"
        BranchSideFuncs:
        - "futureListenerStackDepth()"
        - "get()"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:498"
        BranchSideFuncs:
        - "safeExecute(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
        - "<init>(io.netty.util.concurrent.DefaultPromise)"
    - Branch String: "io.netty.util.concurrent.DefaultPromise:488"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:499"
        BranchSideFuncs:
        - "notifyListenersNow()"
        - "setFutureListenerStackDepth(int)"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:498"
        BranchSideFuncs:
        - "safeExecute(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
        - "<init>(io.netty.util.concurrent.DefaultPromise)"
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:484,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].executor()"
    - Src: "io.netty.util.concurrent.DefaultPromise:485,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.util.concurrent.DefaultPromise:486,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - Src: "io.netty.util.concurrent.DefaultPromise:487,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].futureListenerStackDepth()"
    - Src: "io.netty.util.concurrent.DefaultPromise:489,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].setFutureListenerStackDepth(int)"
    - Src: "io.netty.util.concurrent.DefaultPromise:491,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].notifyListenersNow()"
    - Src: "io.netty.util.concurrent.DefaultPromise:499,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise$1].<init>(io.netty.util.concurrent.DefaultPromise)"
    - Src: "io.netty.util.concurrent.DefaultPromise:499,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].safeExecute(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].futureListenerStackDepth()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 268
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].setFutureListenerStackDepth(int)"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 270
    functionLinenumberEnd: 273
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].notifyListenersNow()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 538
    functionLinenumberEnd: 564
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].notifyListeners0(io.netty.util.concurrent.DefaultFutureListeners)"
    - "[io.netty.util.concurrent.DefaultPromise].notifyListener0(io.netty.util.concurrent.Future,io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 37
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:541"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:542"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:541"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:541"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:544"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:543"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:549"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:552"
        BranchSideFuncs:
        - "notifyListeners0(io.netty.util.concurrent.DefaultFutureListeners)"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:551"
        BranchSideFuncs:
        - "notifyListener0(io.netty.util.concurrent.Future,io.netty.util.concurrent.GenericFutureListener)"
    - Branch String: "io.netty.util.concurrent.DefaultPromise:555"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:560"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:550,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].notifyListeners0(io.netty.util.concurrent.DefaultFutureListeners)"
    - Src: "io.netty.util.concurrent.DefaultPromise:552,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].notifyListener0(io.netty.util.concurrent.Future,io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.DefaultPromise].notifyListeners0(io.netty.util.concurrent.DefaultFutureListeners)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 567
    functionLinenumberEnd: 574
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.DefaultFutureListeners"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultFutureListeners].listeners()"
    - "[io.netty.util.concurrent.DefaultFutureListeners].size()"
    - "[io.netty.util.concurrent.DefaultPromise].notifyListener0(io.netty.util.concurrent.Future,io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:570"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:572"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:568,1"
      Dst: "[io.netty.util.concurrent.DefaultFutureListeners].listeners()"
    - Src: "io.netty.util.concurrent.DefaultPromise:569,1"
      Dst: "[io.netty.util.concurrent.DefaultFutureListeners].size()"
    - Src: "io.netty.util.concurrent.DefaultPromise:571,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].notifyListener0(io.netty.util.concurrent.Future,io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.DefaultFutureListeners].listeners()"
    functionSourceFile: "io.netty.util.concurrent.DefaultFutureListeners"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "io.netty.util.concurrent.GenericFutureListener[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultFutureListeners].size()"
    functionSourceFile: "io.netty.util.concurrent.DefaultFutureListeners"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].notifyListener0(io.netty.util.concurrent.Future,io.netty.util.concurrent.GenericFutureListener)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 577
    functionLinenumberEnd: 585
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.Future"
    - "io.netty.util.concurrent.GenericFutureListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.UnaryPromiseNotifier].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$6].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$5].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsResolveContext$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsQueryContext].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.util.concurrent.PromiseCombiner$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.compression.JZlibEncoder$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.pool.FixedChannelPool$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.util.concurrent.PromiseNotifier$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.InflightNameResolver$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsQueryContext$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.socket.oio.OioSocketChannel$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.ssl.SslClientHelloHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ControlFrameLimitEncoder$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.address.ResolveAddressHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.bootstrap.Bootstrap$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.pool.SimpleChannelPool$6].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsResolveContext$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.timeout.IdleStateHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$7].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.RoundRobinInetAddressResolver$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.embedded.EmbeddedChannel$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledBase].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.ssl.SslHandler$8].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.address.DynamicAddressConnectHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.pool.SimpleChannelPool$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.InflightNameResolver$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.CompositeNameResolver$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.ThreadPerChannelEventLoop$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.util.concurrent.PromiseNotifier$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.ipfilter.UniqueIpFilter$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.socket.oio.OioSocketChannel$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod$ResultCallbackListener].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsNameResolver$6].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.bootstrap.AbstractBootstrap$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.pool.FixedChannelPool$AcquireListener].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.stream.ChunkedWriteHandler$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.CompositeNameResolver$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.MessageAggregator$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.group.DefaultChannelGroup$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.ThreadPerChannelEventLoop$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.pool.FixedChannelPool$5$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.InetSocketAddressResolver$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.ChannelFutureListener$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$5].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.bootstrap.Bootstrap$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.RoundRobinInetAddressResolver$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.ssl.SslHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.util.concurrent.PromiseAggregator].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.ssl.SslHandler$10].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.pool.AbstractChannelPoolMap$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.InetSocketAddressResolver$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsResolveContext$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.util.concurrent.PromiseNotifier].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.ssl.SslHandler$5].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.proxy.ProxyHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsQueryContext$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.pool.SimpleChannelPool$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsNameResolver$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.ChannelFutureListener$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.VoidChannelPromise$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsNameResolver$5].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.AddressResolverGroup$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.ChannelFutureListener$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.stream.ChunkedWriteHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.ssl.SslHandler$10$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.util.internal.logging.JdkLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isWarnEnabled()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.concurrent.GenericFutureListener].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 4
    ICount: 19
    EdgeCount: 135
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:580"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:584"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "operationComplete(io.netty.util.concurrent.Future)"
        - "<init>()"
        - "getName()"
        - "append(java.lang.String)"
        - "toString()"
        - "isWarnEnabled()"
        - "getClass()"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:583"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:578,1"
      Dst: "[io.netty.util.concurrent.GenericFutureListener].operationComplete(io.netty.util.concurrent.Future)"
    - Src: "io.netty.util.concurrent.DefaultPromise:580,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.util.concurrent.DefaultPromise:581,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.concurrent.DefaultPromise:581,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultPromise:581,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.util.concurrent.DefaultPromise:581,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.util.concurrent.DefaultPromise:581,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.concurrent.DefaultPromise:581,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.DefaultPromise$1].<init>(io.netty.util.concurrent.DefaultPromise)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise$1"
    linkageType: ""
    functionLinenumber: 498
    functionLinenumberEnd: 500
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.DefaultPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise$1:499,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].safeExecute(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 840
    functionLinenumberEnd: 846
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[java.util.zip.Inflater$InflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$3].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[java.util.concurrent.CompletableFuture$Completion].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[java.util.zip.Deflater$DeflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[java.util.concurrent.ThreadPoolExecutor$Worker].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[java.util.zip.ZipFile$CleanableResource].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[java.lang.invoke.MethodHandleNatives$CallSiteContext].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor$2].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[java.util.concurrent.ForkJoinWorkerThread].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[java.lang.ref.Finalizer$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$2].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[java.lang.ref.Finalizer$FinalizerThread].run()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Throwable)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    functionUses: 4
    ICount: 8
    EdgeCount: 194
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:841,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.util.concurrent.DefaultPromise:843,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].updateMaxStreams()"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:703"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:707"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:706"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:713"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:713"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:712"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:696,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:715,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:716,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].updateMaxStreams()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].incrementAndGetNextStreamId()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 720
    functionLinenumberEnd: 722
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:721"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:720"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].incrementExpectedStreamId(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 724
    functionLinenumberEnd: 731
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:725"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:728"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:727"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:725"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:728"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:727"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isValidStreamId(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 733
    functionLinenumberEnd: 735
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:734"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:733"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:734"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:733"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:734"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:733"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].mayHaveCreatedStream(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 738
    functionLinenumberEnd: 740
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isValidStreamId(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].lastStreamCreated()"
    functionUses: 4
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:739"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:738"
        BranchSideFuncs:
        - "lastStreamCreated()"
        - "isValidStreamId(int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:739"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:738"
        BranchSideFuncs:
        - "lastStreamCreated()"
        - "isValidStreamId(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:739,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isValidStreamId(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:739,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].lastStreamCreated()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].lastStreamCreated()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 842
    functionLinenumberEnd: 844
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:843"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:842"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].canOpenStream()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 743
    functionLinenumberEnd: 745
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:744"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:743"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].createStream(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 748
    functionLinenumberEnd: 762
    functionDepth: 6
    returnType: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].activeState(int,io.netty.handler.codec.http2.Http2Stream$State,boolean,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isLocal()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].checkNewStreamAllowed(int,io.netty.handler.codec.http2.Http2Stream$State)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,int,io.netty.handler.codec.http2.Http2Stream$State)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].incrementExpectedStreamId(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].addStream(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].activate()"
    functionUses: 6
    ICount: 14
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:749,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isLocal()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:749,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].activeState(int,io.netty.handler.codec.http2.Http2Stream$State,boolean,boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:751,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].checkNewStreamAllowed(int,io.netty.handler.codec.http2.Http2Stream$State)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:754,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,int,io.netty.handler.codec.http2.Http2Stream$State)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:756,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].incrementExpectedStreamId(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:758,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].addStream(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:760,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].activate()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isLocal()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 911
    functionLinenumberEnd: 913
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:912"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:911"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].activeState(int,io.netty.handler.codec.http2.Http2Stream$State,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 330
    functionLinenumberEnd: 340
    functionDepth: 5
    returnType: "io.netty.handler.codec.http2.Http2Stream$State"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Stream$State"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 29
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:333"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:332"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:333"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:332"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:331,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:339,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:339,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:339,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:339,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:339,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].checkNewStreamAllowed(int,io.netty.handler.codec.http2.Http2Stream$State)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 874
    functionLinenumberEnd: 910
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Stream$State"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isValidStreamId(int)"
    - "[io.netty.handler.codec.http2.Http2NoMoreStreamIdsException].<init>()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2Exception].closedStreamError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].canOpenStream()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].isClosed()"
    functionUses: 2
    ICount: 99
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:875"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:876"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:875"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:875"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:876"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:875"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:876"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:880"
        BranchSideFuncs:
        - "isValidStreamId(int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:876"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:880"
        BranchSideFuncs:
        - "isValidStreamId(int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:881"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:890"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:889"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:882"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:885"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:884"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:885"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:884"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:890"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:893"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:894"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:899"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:900"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:-1"
        BranchSideFuncs:
        - "canOpenStream()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:900"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:-1"
        BranchSideFuncs:
        - "canOpenStream()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:901"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:900"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:899"
        BranchSideFuncs:
        - "canOpenStream()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:901"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:902"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:901"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "append(int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:901"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:905"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:904"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:901"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:905"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:904"
        BranchSideFuncs:
        - "isClosed()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:902"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:901"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "append(int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:905"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:908"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:875,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:879,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:877,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:881,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isValidStreamId(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:883,1"
      Dst: "[io.netty.handler.codec.http2.Http2NoMoreStreamIdsException].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:885,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:891,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].closedStreamError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:897,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:901,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].canOpenStream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:902,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:902,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:902,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:902,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:905,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].isClosed()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 32
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.codec.http2.Http2NoMoreStreamIdsException].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2NoMoreStreamIdsException"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2NoMoreStreamIdsException:30,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].closedStreamError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionDepth: 4
    returnType: "io.netty.handler.codec.http2.Http2Exception"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception$ClosedStreamCreationException].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2Exception].formatErrorMessage(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception:135,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].formatErrorMessage(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.Http2Exception:135,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception$ClosedStreamCreationException].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception$ClosedStreamCreationException].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception$ClosedStreamCreationException"
    linkageType: ""
    functionLinenumber: 257
    functionLinenumberEnd: 260
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception$ClosedStreamCreationException:258,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].isClosed()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:117"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:116"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,int,io.netty.handler.codec.http2.Http2Stream$State)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 394
    functionLinenumberEnd: 399
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection"
    - "int"
    - "io.netty.handler.codec.http2.Http2Stream$State"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,io.netty.handler.codec.http2.DefaultHttp2Connection$1)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:395,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:391,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,io.netty.handler.codec.http2.DefaultHttp2Connection$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,io.netty.handler.codec.http2.DefaultHttp2Connection$1)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap"
    linkageType: ""
    functionLinenumber: 566
    functionLinenumberEnd: 568
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap:567,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap"
    linkageType: ""
    functionLinenumber: 566
    functionLinenumberEnd: 569
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap:567,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].addStream(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 799
    functionLinenumberEnd: 811
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].put(int,java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$1].onStreamAdded(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor$1].onStreamAdded(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1].onStreamAdded(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].onStreamAdded(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1].onStreamAdded(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2ConnectionAdapter].onStreamAdded(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onStreamAdded(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].access$400()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[io.netty.handler.codec.http2.Http2Connection$Listener].onStreamAdded(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 23
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:803"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:810"
        BranchSideFuncs:
        - "error(java.lang.String,java.lang.Throwable)"
        - "get(int)"
        - "access$400()"
        - "onStreamAdded(io.netty.handler.codec.http2.Http2Stream)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:809"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:800,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:800,1"
      Dst: "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:803,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:805,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:805,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Listener].onStreamAdded(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:807,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].access$400()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:807,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 401
    functionLinenumberEnd: 403
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 52
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].access$400()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].activate()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 498
    functionLinenumberEnd: 506
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].headersSent(boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].headersSent(boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].headersReceived(boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].activate(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    functionUses: 2
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:499"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:501"
        BranchSideFuncs:
        - "headersSent(boolean)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:500"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:501"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:504"
        BranchSideFuncs:
        - "headersReceived(boolean)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:503"
        BranchSideFuncs:
        - "activate(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:500,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].headersSent(boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:502,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].headersReceived(boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:504,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].activate(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].headersSent(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 422
    functionLinenumberEnd: 427
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].isHeadersSent()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isHeadersSent()"
    functionUses: 3
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:423"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:426"
        BranchSideFuncs:
        - "isHeadersSent()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:425"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:424"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:423"
        BranchSideFuncs:
        - "isHeadersSent()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:424,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isHeadersSent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isHeadersSent()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 430
    functionLinenumberEnd: 432
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:431"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:430"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].headersReceived(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 440
    functionLinenumberEnd: 445
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isHeadersReceived()"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:441"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:444"
        BranchSideFuncs:
        - "isHeadersReceived()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:443"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:442"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:441"
        BranchSideFuncs:
        - "isHeadersReceived()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:442,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isHeadersReceived()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isHeadersReceived()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 448
    functionLinenumberEnd: 450
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:449"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:448"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].activate(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams"
    linkageType: ""
    functionLinenumber: 948
    functionLinenumberEnd: 960
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].allowModifications()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].addToActiveStreams(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$1].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    - "[java.util.concurrent.ConcurrentLinkedQueue].add(java.lang.Object)"
    - "[java.util.AbstractQueue].add(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].add(java.lang.Object)"
    - "[java.util.ArrayDeque].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].add(java.lang.Object)"
    - "[java.util.Queue].add(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:949"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:952"
        BranchSideFuncs:
        - "addToActiveStreams(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:951"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:949,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].allowModifications()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:950,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].addToActiveStreams(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:952,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$1].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:952,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].allowModifications()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams"
    linkageType: ""
    functionLinenumber: 1012
    functionLinenumberEnd: 1014
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1013"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1012"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].addToActiveStreams(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams"
    linkageType: ""
    functionLinenumber: 988
    functionLinenumberEnd: 1002
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ConcurrentSet].add(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].add(java.lang.Object)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].add(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].add(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].add(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.util.TreeSet].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].createdBy()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].createdBy()"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$1].onStreamActive(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1].onStreamActive(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2ConnectionAdapter].onStreamActive(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1].onStreamActive(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].onStreamActive(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onStreamActive(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].access$400()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Throwable)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[io.netty.handler.codec.http2.Http2Connection$Listener].onStreamActive(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 24
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:989"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1000"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:993"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1001"
        BranchSideFuncs:
        - "error(java.lang.String,java.lang.Throwable)"
        - "get(int)"
        - "access$400()"
        - "onStreamActive(io.netty.handler.codec.http2.Http2Stream)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1000"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:989,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:991,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].createdBy()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:993,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:995,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:995,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Listener].onStreamActive(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:997,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].access$400()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:997,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].createdBy()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 556
    functionLinenumberEnd: 558
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isValidStreamId(int)"
    functionUses: 5
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:557"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:556"
        BranchSideFuncs:
        - "isValidStreamId(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:557,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isValidStreamId(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$1].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$1"
    linkageType: ""
    functionLinenumber: 951
    functionLinenumberEnd: 953
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams"
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$1:952,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].created(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 765
    functionLinenumberEnd: 767
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].createdBy()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].createdBy()"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:766"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:765"
        BranchSideFuncs:
        - "createdBy()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:766"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:765"
        BranchSideFuncs:
        - "createdBy()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:766,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].createdBy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isServer()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 770
    functionLinenumberEnd: 772
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].reservePushStream(int,io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 775
    functionLinenumberEnd: 796
    functionDepth: 6
    returnType: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isLocal()"
    - "[io.netty.handler.codec.http2.Http2Stream$State].localSideOpen()"
    - "[io.netty.handler.codec.http2.Http2Stream$State].remoteSideOpen()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].state()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].allowPushTo()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].opposite()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].checkNewStreamAllowed(int,io.netty.handler.codec.http2.Http2Stream$State)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,int,io.netty.handler.codec.http2.Http2Stream$State)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].incrementExpectedStreamId(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].addStream(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    - "[io.netty.handler.codec.http2.Http2Stream].state()"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].allowPushTo()"
    functionUses: 2
    ICount: 43
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:776"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:779"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:778"
        BranchSideFuncs:
        - "localSideOpen()"
        - "state()"
        - "remoteSideOpen()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:779"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:779"
        BranchSideFuncs:
        - "id()"
        - "valueOf(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:778"
        BranchSideFuncs:
        - "localSideOpen()"
        - "state()"
        - "remoteSideOpen()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:779"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:782"
        BranchSideFuncs:
        - "id()"
        - "valueOf(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:781"
        BranchSideFuncs:
        - "allowPushTo()"
        - "opposite()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:779"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:782"
        BranchSideFuncs:
        - "id()"
        - "valueOf(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:781"
        BranchSideFuncs:
        - "allowPushTo()"
        - "opposite()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:782"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:785"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:784"
        BranchSideFuncs:
        - "isLocal()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:785"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:785"
        BranchSideFuncs:
        - "incrementExpectedStreamId(int)"
        - "addStream(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
        - "<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,int,io.netty.handler.codec.http2.Http2Stream$State)"
        - "checkNewStreamAllowed(int,io.netty.handler.codec.http2.Http2Stream$State)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:784"
        BranchSideFuncs:
        - "isLocal()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:777,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:779,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isLocal()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:779,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].state()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:779,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream$State].localSideOpen()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:779,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream$State].remoteSideOpen()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:780,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:780,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:782,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].opposite()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:782,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].allowPushTo()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:786,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].checkNewStreamAllowed(int,io.netty.handler.codec.http2.Http2Stream$State)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:789,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,int,io.netty.handler.codec.http2.Http2Stream$State)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:791,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].incrementExpectedStreamId(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:794,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].addStream(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.Http2Stream$State].localSideOpen()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Stream$State"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Stream$State].remoteSideOpen()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Stream$State"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].opposite()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 866
    functionLinenumberEnd: 868
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2Connection$Endpoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isLocal()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:867"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:866"
        BranchSideFuncs:
        - "isLocal()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:867,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isLocal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].allowPushTo(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 813
    functionLinenumberEnd: 819
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:814"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:817"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:816"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:814"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:817"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:816"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:815,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].allowPushTo()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 821
    functionLinenumberEnd: 823
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].numActiveStreams()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 826
    functionLinenumberEnd: 828
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].maxActiveStreams()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 831
    functionLinenumberEnd: 833
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].maxActiveStreams(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 836
    functionLinenumberEnd: 840
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].updateMaxStreams()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:838,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].updateMaxStreams()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].updateMaxStreams()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 870
    functionLinenumberEnd: 873
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(long,long)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:871,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].lastStreamKnownByPeer()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 847
    functionLinenumberEnd: 849
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].lastStreamKnownByPeer(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 851
    functionLinenumberEnd: 854
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].flowController()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 856
    functionLinenumberEnd: 858
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FlowController"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].flowController(io.netty.handler.codec.http2.Http2FlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 861
    functionLinenumberEnd: 864
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FlowController"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:862,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].access$100(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 670
    functionLinenumberEnd: 672
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].access$200(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    linkageType: ""
    functionLinenumber: 670
    functionLinenumberEnd: 672
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].lastStreamKnownByPeer(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint:671,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].lastStreamKnownByPeer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].frameWriter(io.netty.handler.codec.http2.Http2FrameWriter)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2LocalFlowController"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2LocalFlowController].frameWriter(io.netty.handler.codec.http2.Http2FrameWriter)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:302,1"
      Dst: "[io.netty.handler.codec.http2.Http2LocalFlowController].frameWriter(io.netty.handler.codec.http2.Http2FrameWriter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].channelHandlerContext(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 309
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].channelHandlerContext(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].channelHandlerContext(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2FlowController].channelHandlerContext(io.netty.channel.ChannelHandlerContext)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:307,1"
      Dst: "[io.netty.handler.codec.http2.Http2FlowController].channelHandlerContext(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].initialWindowSize(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter"
    linkageType: ""
    functionLinenumber: 311
    functionLinenumberEnd: 314
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].initialWindowSize(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].initialWindowSize(int)"
    - "[io.netty.handler.codec.http2.Http2FlowController].initialWindowSize(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:312,1"
      Dst: "[io.netty.handler.codec.http2.Http2FlowController].initialWindowSize(int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].initialWindowSize()"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter"
    linkageType: ""
    functionLinenumber: 316
    functionLinenumberEnd: 318
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].initialWindowSize()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].initialWindowSize()"
    - "[io.netty.handler.codec.http2.Http2FlowController].initialWindowSize()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:317,1"
      Dst: "[io.netty.handler.codec.http2.Http2FlowController].initialWindowSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].windowSize(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FlowController].windowSize(io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:322,1"
      Dst: "[io.netty.handler.codec.http2.Http2FlowController].windowSize(io.netty.handler.codec.http2.Http2Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].incrementWindowSize(io.netty.handler.codec.http2.Http2Stream,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter"
    linkageType: ""
    functionLinenumber: 326
    functionLinenumberEnd: 329
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].incrementWindowSize(io.netty.handler.codec.http2.Http2Stream,int)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].incrementWindowSize(io.netty.handler.codec.http2.Http2Stream,int)"
    - "[io.netty.handler.codec.http2.Http2FlowController].incrementWindowSize(io.netty.handler.codec.http2.Http2Stream,int)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:327,1"
      Dst: "[io.netty.handler.codec.http2.Http2FlowController].incrementWindowSize(io.netty.handler.codec.http2.Http2Stream,int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].receiveFlowControlledFrame(io.netty.handler.codec.http2.Http2Stream,io.netty.buffer.ByteBuf,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter"
    linkageType: ""
    functionLinenumber: 332
    functionLinenumberEnd: 335
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].receiveFlowControlledFrame(io.netty.handler.codec.http2.Http2Stream,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].receiveFlowControlledFrame(io.netty.handler.codec.http2.Http2Stream,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2LocalFlowController].receiveFlowControlledFrame(io.netty.handler.codec.http2.Http2Stream,io.netty.buffer.ByteBuf,int,boolean)"
    functionUses: 4
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:333,1"
      Dst: "[io.netty.handler.codec.http2.Http2LocalFlowController].receiveFlowControlledFrame(io.netty.handler.codec.http2.Http2Stream,io.netty.buffer.ByteBuf,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].consumeBytes(io.netty.handler.codec.http2.Http2Stream,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter"
    linkageType: ""
    functionLinenumber: 337
    functionLinenumberEnd: 351
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].decompressor(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor].consumeBytes(int,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].consumeBytes(io.netty.handler.codec.http2.Http2Stream,int)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].consumeBytes(io.netty.handler.codec.http2.Http2Stream,int)"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.handler.codec.http2.Http2LocalFlowController].consumeBytes(io.netty.handler.codec.http2.Http2Stream,int)"
    functionUses: 7
    ICount: 19
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:339"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:343"
        BranchSideFuncs:
        - "consumeBytes(io.netty.handler.codec.http2.Http2Stream,int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:338,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].decompressor(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:341,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:341,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor].consumeBytes(int,int)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:344,1"
      Dst: "[io.netty.handler.codec.http2.Http2LocalFlowController].consumeBytes(io.netty.handler.codec.http2.Http2Stream,int)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:350,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor].consumeBytes(int,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor"
    linkageType: ""
    functionLinenumber: 408
    functionLinenumberEnd: 427
    functionDepth: 5
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Math].ceil(double)"
    - "[java.lang.Math].min(int,int)"
    functionUses: 1
    ICount: 55
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:410"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:414"
        BranchSideFuncs:
        - "min(int,int)"
        - "ceil(double)"
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:417"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:422"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:409,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:413,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:411,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:416,1"
      Dst: "[java.lang.Math].ceil(double)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor:416,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].unconsumedBytes(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter"
    linkageType: ""
    functionLinenumber: 355
    functionLinenumberEnd: 357
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].unconsumedBytes(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].unconsumedBytes(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2LocalFlowController].unconsumedBytes(io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:356,1"
      Dst: "[io.netty.handler.codec.http2.Http2LocalFlowController].unconsumedBytes(io.netty.handler.codec.http2.Http2Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].initialWindowSize(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter"
    linkageType: ""
    functionLinenumber: 360
    functionLinenumberEnd: 362
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].initialWindowSize(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].initialWindowSize(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2LocalFlowController].initialWindowSize(io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter:361,1"
      Dst: "[io.netty.handler.codec.http2.Http2LocalFlowController].initialWindowSize(io.netty.handler.codec.http2.Http2Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf].<init>(io.netty.buffer.AbstractByteBuf)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 26
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:24,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 1
    returnType: "io.netty.buffer.AbstractByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    functionUses: 105
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:29,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 86
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getByte(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 2
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getByte(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:34,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:34,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getShort(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 2
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getShort(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getShort(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:39,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:39,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getShortLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 2
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getShortLE(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:44,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:44,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getUnsignedMedium(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:49,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:49,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getUnsignedMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getUnsignedMediumLE(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:54,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:54,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getUnsignedMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getInt(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getInt(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getInt(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getInt(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getInt(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:59,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:59,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getIntLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getIntLE(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getIntLE(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:64,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:64,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getLong(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getLong(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getLong(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getLong(int)"
    functionUses: 7
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:69,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:69,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getLongLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getLongLE(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:74,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:74,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getLongLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setByte(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setByte(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setByte(int,int)"
    functionUses: 25
    ICount: 6
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:79,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:79,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setShort(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setShort(int,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:84,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:84,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledSlicedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setShortLE(int,int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:89,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:89,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setShortLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setMedium(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setMedium(int,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:94,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:94,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setMediumLE(int,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:99,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:99,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setMediumLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setInt(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setInt(int,int)"
    functionUses: 10
    ICount: 6
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:104,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:104,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setIntLE(int,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:109,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:109,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setIntLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setLong(int,long)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setLong(int,long)"
    functionUses: 8
    ICount: 6
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:114,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:114,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.UnpooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setLongLE(int,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:119,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledDuplicatedByteBuf:119,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setLongLE(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$4].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$4"
    linkageType: ""
    functionLinenumber: 1490
    functionLinenumberEnd: 1492
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$4:1491,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$4].run()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$4"
    linkageType: ""
    functionLinenumber: 1493
    functionLinenumberEnd: 1496
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 50
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$4:1494,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].<init>()"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:158,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].getApplicationProtocol(javax.net.ssl.SSLEngine)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 168
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:163,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:167,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].setApplicationProtocols(javax.net.ssl.SSLEngine,java.util.List<String>)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 186
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "java.util.List<String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getSSLParameters()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getSSLParameters()"
    - "[javax.net.ssl.SSLEngine].getSSLParameters()"
    - "[jaz.Zer].toArray(java.lang.Object[])"
    - "[java.util.AbstractCollection].toArray(java.lang.Object[])"
    - "[java.util.Vector].toArray(java.lang.Object[])"
    - "[java.util.LinkedList].toArray(java.lang.Object[])"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[java.util.concurrent.CopyOnWriteArrayList].toArray(java.lang.Object[])"
    - "[java.lang.Class].newInstance()"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setSSLParameters(javax.net.ssl.SSLParameters)"
    - "[io.netty.handler.ssl.JdkSslEngine].setSSLParameters(javax.net.ssl.SSLParameters)"
    - "[javax.net.ssl.SSLEngine].setSSLParameters(javax.net.ssl.SSLParameters)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 25
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:172,1"
      Dst: "[javax.net.ssl.SSLEngine].getSSLParameters()"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:174,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:176,1"
      Dst: "[java.lang.Class].newInstance()"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:177,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:182,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:184,1"
      Dst: "[javax.net.ssl.SSLEngine].setSSLParameters(javax.net.ssl.SSLParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].getHandshakeApplicationProtocol(javax.net.ssl.SSLEngine)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:189,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:193,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].setHandshakeApplicationProtocolSelector(javax.net.ssl.SSLEngine,java.util.function.BiFunction<SSLEngine,List<String>,String>)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 227
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "java.util.function.BiFunction<SSLEngine,List<String>,String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Proxy].newProxyInstance(java.lang.ClassLoader,java.lang.Class[],java.lang.reflect.InvocationHandler)"
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$8].<init>(java.util.function.BiFunction)"
    - "[java.lang.Class].getClassLoader()"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 22
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:201,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:201,1"
      Dst: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$8].<init>(java.util.function.BiFunction)"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:200,1"
      Dst: "[java.lang.reflect.Proxy].newProxyInstance(java.lang.ClassLoader,java.lang.Class[],java.lang.reflect.InvocationHandler)"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:220,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:224,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$8].<init>(java.util.function.BiFunction)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$8"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.function.BiFunction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$8:203,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].getHandshakeApplicationProtocolSelector(javax.net.ssl.SSLEngine)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.function.BiFunction<SSLEngine,List<String>,String>"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$9].<init>(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:231,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:232,1"
      Dst: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$9].<init>(java.lang.Object)"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils:248,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$9].<init>(java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$9"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$9:232,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].access$000()"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "java.lang.reflect.Method"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].checkTls13Ciphers(io.netty.util.internal.logging.InternalLogger,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: 462
    functionLinenumberEnd: 499
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.logging.InternalLogger"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.util.HashSet].<init>(int)"
    - "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - "[java.lang.String].split(java.lang.String)"
    - "[java.util.HashSet].isEmpty()"
    - "[java.util.HashSet].remove(java.lang.Object)"
    - "[io.netty.handler.ssl.CipherSuiteConverter].toJava(java.lang.String,java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].isInfoEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isInfoEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isInfoEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isInfoEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isInfoEnabled()"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[io.netty.util.internal.logging.Log4JLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.util.Set].isEmpty()"
    - "[java.util.Set].remove(java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].isInfoEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 69
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSsl:463"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:498"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:497"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSsl:463"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:498"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:497"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSsl:464"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:465"
        BranchSideFuncs:
        - "addAll(java.util.Collection,java.lang.Object[])"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:464"
        BranchSideFuncs:
        - "addAll(java.util.Collection,java.lang.Object[])"
    - Branch String: "io.netty.handler.ssl.OpenSsl:464"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:465"
        BranchSideFuncs:
        - "addAll(java.util.Collection,java.lang.Object[])"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:464"
        BranchSideFuncs:
        - "addAll(java.util.Collection,java.lang.Object[])"
    - Branch String: "io.netty.handler.ssl.OpenSsl:468"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:481"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSsl:480"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.ssl.OpenSsl:469"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:473"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSsl:472"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSsl:473"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:465"
        BranchSideFuncs:
        - "remove(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:464"
        BranchSideFuncs:
        - "addAll(java.util.Collection,java.lang.Object[])"
    - Branch String: "io.netty.handler.ssl.OpenSsl:474"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:465"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSsl:464"
        BranchSideFuncs:
        - "addAll(java.util.Collection,java.lang.Object[])"
    - Branch String: "io.netty.handler.ssl.OpenSsl:481"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:481"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:480"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.ssl.OpenSsl:483"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:498"
        BranchSideFuncs:
        - "isInfoEnabled()"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:497"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSsl:484"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:495"
        BranchSideFuncs:
        - "<init>(int)"
        - "split(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:494"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSsl:486"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:488"
        BranchSideFuncs:
        - "info(java.lang.String,java.lang.Object,java.lang.Object)"
        - "setLength(int)"
        - "length()"
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:463,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.ssl.OpenSsl:464,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.OpenSsl:465,1"
      Dst: "[java.util.HashSet].<init>(int)"
    - Src: "io.netty.handler.ssl.OpenSsl:466,1"
      Dst: "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.OpenSsl:468,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSsl:469,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "io.netty.handler.ssl.OpenSsl:473,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSsl:474,1"
      Dst: "[io.netty.handler.ssl.CipherSuiteConverter].toJava(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSsl:484,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isInfoEnabled()"
    - Src: "io.netty.handler.ssl.OpenSsl:485,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.ssl.OpenSsl:487,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSsl:489,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.ssl.OpenSsl:489,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "io.netty.handler.ssl.OpenSsl:490,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 24
    CyclomaticComplexity: 11
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].toJava(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: 284
    functionLinenumberEnd: 305
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.handler.ssl.CipherSuiteConverter].cacheFromOpenSsl(java.lang.String)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 5
    ICount: 25
    EdgeCount: 61
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:286"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:295"
        BranchSideFuncs:
        - "cacheFromOpenSsl(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:294"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:290"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:295"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:294"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:296"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:304"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:303"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:298"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:301"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:300"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
    Callsites:
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:285,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:287,1"
      Dst: "[io.netty.handler.ssl.CipherSuiteConverter].cacheFromOpenSsl(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:301,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:301,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:301,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:301,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].cacheFromOpenSsl(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: 307
    functionLinenumberEnd: 336
    functionDepth: 2
    returnType: "java.util.Map<String,String>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[io.netty.handler.ssl.CipherSuiteConverter].toJavaUncached0(java.lang.String,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.HashMap].<init>(int)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 35
    EdgeCount: 53
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:309"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:313"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:312"
        BranchSideFuncs:
        - "toJavaUncached0(java.lang.String,boolean)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:314"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:318"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:317"
        BranchSideFuncs:
        - "<init>(int)"
        - "put(java.lang.Object,java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "putIfAbsent(java.lang.Object,java.lang.Object)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:308,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:313,1"
      Dst: "[io.netty.handler.ssl.CipherSuiteConverter].toJavaUncached0(java.lang.String,boolean)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:318,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:318,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:318,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:322,1"
      Dst: "[java.util.HashMap].<init>(int)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:323,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:326,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:332,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].toJavaUncached0(java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: 342
    functionLinenumberEnd: 380
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].matches()"
    - "[java.util.regex.Matcher].group(int)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.ssl.CipherSuiteConverter].toJavaHandshakeAlgo(java.lang.String,boolean)"
    - "[io.netty.handler.ssl.CipherSuiteConverter].toJavaBulkCipher(java.lang.String,boolean)"
    - "[io.netty.handler.ssl.CipherSuiteConverter].toJavaHmacAlgo(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 64
    EdgeCount: 77
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:343"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:350"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:349"
        BranchSideFuncs:
        - "matcher(java.lang.CharSequence)"
        - "matches()"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:345"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:350"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:349"
        BranchSideFuncs:
        - "matcher(java.lang.CharSequence)"
        - "matches()"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:351"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:355"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:354"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:357"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:360"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:359"
        BranchSideFuncs:
        - "startsWith(java.lang.String)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:360"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:363"
        BranchSideFuncs:
        - "substring(int)"
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:362"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:363"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:379"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:369"
        BranchSideFuncs:
        - "group(int)"
        - "toJavaBulkCipher(java.lang.String,boolean)"
        - "append(java.lang.String)"
        - "toString()"
        - "append(char)"
        - "toJavaHandshakeAlgo(java.lang.String,boolean)"
        - "<init>()"
        - "contains(java.lang.CharSequence)"
        - "toJavaHmacAlgo(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:344,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:350,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:351,1"
      Dst: "[java.util.regex.Matcher].matches()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:355,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:360,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:361,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:363,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:370,1"
      Dst: "[io.netty.handler.ssl.CipherSuiteConverter].toJavaHandshakeAlgo(java.lang.String,boolean)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:371,1"
      Dst: "[io.netty.handler.ssl.CipherSuiteConverter].toJavaBulkCipher(java.lang.String,boolean)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:372,1"
      Dst: "[io.netty.handler.ssl.CipherSuiteConverter].toJavaHmacAlgo(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:374,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:374,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:374,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:374,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:379,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].toJavaHandshakeAlgo(java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: 382
    functionLinenumberEnd: 396
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].replace(char,char)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 24
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:383"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:385"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:384"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:385"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:387"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:386"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:387"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:391"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:390"
        BranchSideFuncs:
        - "replace(char,char)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:392"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:395"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:394"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:383,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:385,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:391,1"
      Dst: "[java.lang.String].replace(char,char)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:393,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:393,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:393,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].toJavaBulkCipher(java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: 399
    functionLinenumberEnd: 441
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].matches()"
    - "[java.util.regex.Matcher].replaceFirst(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].replace(char,char)"
    functionUses: 1
    ICount: 40
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:400"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:412"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:411"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:402"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:406"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:405"
        BranchSideFuncs:
        - "matches()"
        - "matcher(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:407"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:412"
        BranchSideFuncs:
        - "replaceFirst(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:411"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:412"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:416"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:415"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:416"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:424"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:423"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:417"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:420"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:419"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:424"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:432"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:431"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:425"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:428"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:427"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:432"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:440"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:439"
        BranchSideFuncs:
        - "replace(char,char)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:433"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:436"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:435"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:400,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:401,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:402,1"
      Dst: "[java.util.regex.Matcher].matches()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:403,1"
      Dst: "[java.util.regex.Matcher].replaceFirst(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:412,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:440,1"
      Dst: "[java.lang.String].replace(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 20
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].toJavaHmacAlgo(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: 449
    functionLinenumberEnd: 451
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].isSessionCacheSupported()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSsl].version()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSsl:502"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:501"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:502,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].version()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSsl].version()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: 581
    functionLinenumberEnd: 583
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSsl].isAvailable()"
    - "[io.netty.internal.tcnative.SSL].version()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSsl:582"
      Branch Sides: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:582,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].isAvailable()"
    - Src: "io.netty.handler.ssl.OpenSsl:582,1"
      Dst: "[io.netty.internal.tcnative.SSL].version()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSsl].isAvailable()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: 555
    functionLinenumberEnd: 557
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSsl:556"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:555"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSsl].selfSignedCertificate()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: 509
    functionLinenumberEnd: 511
    functionDepth: 0
    returnType: "java.security.cert.X509Certificate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.CertificateFactory].generateCertificate(java.io.InputStream)"
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:510,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.ssl.OpenSsl:510,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "io.netty.handler.ssl.OpenSsl:509,1"
      Dst: "[java.security.cert.CertificateFactory].generateCertificate(java.io.InputStream)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].doesSupportOcsp()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: 514
    functionLinenumberEnd: 531
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSsl].version()"
    - "[io.netty.internal.tcnative.SSLContext].make(int,int)"
    - "[io.netty.internal.tcnative.SSLContext].enableOcsp(long,boolean)"
    - "[io.netty.internal.tcnative.SSLContext].free(long)"
    functionUses: 1
    ICount: 26
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSsl:516"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:530"
        BranchSideFuncs:
        - "enableOcsp(long,boolean)"
        - "make(int,int)"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:529"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSsl:525"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:530"
        BranchSideFuncs:
        - "free(long)"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:529"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSsl:525"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:530"
        BranchSideFuncs:
        - "free(long)"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:529"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSsl:525"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:528"
        BranchSideFuncs:
        - "free(long)"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:527"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:516,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].version()"
    - Src: "io.netty.handler.ssl.OpenSsl:519,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].make(int,int)"
    - Src: "io.netty.handler.ssl.OpenSsl:520,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].enableOcsp(long,boolean)"
    - Src: "io.netty.handler.ssl.OpenSsl:526,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].free(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.OpenSsl].doesSupportProtocol(int,int)"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: 532
    functionLinenumberEnd: 548
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SSLContext].make(int,int)"
    - "[io.netty.internal.tcnative.SSLContext].free(long)"
    functionUses: 6
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSsl:533"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:536"
        BranchSideFuncs:
        - "make(int,int)"
    - Branch String: "io.netty.handler.ssl.OpenSsl:544"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:537"
        BranchSideFuncs:
        - "free(long)"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:536"
        BranchSideFuncs:
        - "make(int,int)"
    - Branch String: "io.netty.handler.ssl.OpenSsl:544"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:537"
        BranchSideFuncs:
        - "free(long)"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:536"
        BranchSideFuncs:
        - "make(int,int)"
    - Branch String: "io.netty.handler.ssl.OpenSsl:544"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:547"
        BranchSideFuncs:
        - "free(long)"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:546"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:539,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].make(int,int)"
    - Src: "io.netty.handler.ssl.OpenSsl:545,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].free(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSsl].isAlpnSupported()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSsl].version()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSsl:567"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:566"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:567,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].version()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSsl].isOcspSupported()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].versionString()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: 589
    functionLinenumberEnd: 591
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSsl].isAvailable()"
    - "[io.netty.internal.tcnative.SSL].versionString()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSsl:590"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:589"
        BranchSideFuncs:
        - "versionString()"
        - "isAvailable()"
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:590,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].isAvailable()"
    - Src: "io.netty.handler.ssl.OpenSsl:590,1"
      Dst: "[io.netty.internal.tcnative.SSL].versionString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSsl].ensureAvailability()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: 599
    functionLinenumberEnd: 605
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsatisfiedLinkError].<init>(java.lang.String)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSsl:600"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:604"
        BranchSideFuncs:
        - "initCause(java.lang.Throwable)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:603"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:601,1"
      Dst: "[java.lang.UnsatisfiedLinkError].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSsl:602,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].unavailabilityCause()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].availableCipherSuites()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSsl].availableOpenSslCipherSuites()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:621,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].availableOpenSslCipherSuites()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].availableOpenSslCipherSuites()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].availableJavaCipherSuites()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].isCipherSuiteAvailable(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: 644
    functionLinenumberEnd: 650
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.CipherSuiteConverter].toOpenSsl(java.lang.String,boolean)"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].contains(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[java.util.HashSet].contains(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].contains(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].contains(java.lang.Object)"
    - "[java.util.TreeSet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].contains(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].contains(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].contains(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSsl:646"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:649"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSsl:648"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:645,1"
      Dst: "[io.netty.handler.ssl.CipherSuiteConverter].toOpenSsl(java.lang.String,boolean)"
    - Src: "io.netty.handler.ssl.OpenSsl:649,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].toOpenSsl(java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 161
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.handler.ssl.CipherSuiteConverter].cacheFromJava(java.lang.String,boolean)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 3
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:160"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:159"
        BranchSideFuncs:
        - "cacheFromJava(java.lang.String,boolean)"
    Callsites:
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:156,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:160,1"
      Dst: "[io.netty.handler.ssl.CipherSuiteConverter].cacheFromJava(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].cacheFromJava(java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 188
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[io.netty.handler.ssl.CipherSuiteConverter].toOpenSslUncached(java.lang.String,boolean)"
    - "[java.util.concurrent.ConcurrentHashMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[java.lang.String].substring(int)"
    - "[java.util.HashMap].<init>(int)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 37
    EdgeCount: 48
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:165"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:169"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:168"
        BranchSideFuncs:
        - "toOpenSslUncached(java.lang.String,boolean)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:166"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:165"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:170"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:175"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:174"
        BranchSideFuncs:
        - "<init>(int)"
        - "put(java.lang.Object,java.lang.Object)"
        - "substring(int)"
        - "<init>()"
        - "putIfAbsent(java.lang.Object,java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:164,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:169,1"
      Dst: "[io.netty.handler.ssl.CipherSuiteConverter].toOpenSslUncached(java.lang.String,boolean)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:175,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:178,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:179,1"
      Dst: "[java.util.HashMap].<init>(int)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:180,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:181,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:181,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:181,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:185,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].toOpenSslUncached(java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 210
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].matches()"
    - "[java.util.regex.Matcher].group(int)"
    - "[io.netty.handler.ssl.CipherSuiteConverter].toOpenSslHandshakeAlgo(java.lang.String)"
    - "[io.netty.handler.ssl.CipherSuiteConverter].toOpenSslBulkCipher(java.lang.String)"
    - "[io.netty.handler.ssl.CipherSuiteConverter].toOpenSslHmacAlgo(java.lang.String)"
    - "[java.lang.String].isEmpty()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 49
    EdgeCount: 54
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:192"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:196"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:195"
        BranchSideFuncs:
        - "matcher(java.lang.CharSequence)"
        - "matches()"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:192"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:197"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:201"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:200"
        BranchSideFuncs:
        - "isEmpty()"
        - "toOpenSslHmacAlgo(java.lang.String)"
        - "group(int)"
        - "toOpenSslHandshakeAlgo(java.lang.String)"
        - "toOpenSslBulkCipher(java.lang.String)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:204"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:206"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:205"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:209"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:208"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(char)"
        - "<init>()"
    Callsites:
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:191,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:196,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:197,1"
      Dst: "[java.util.regex.Matcher].matches()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:201,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:201,1"
      Dst: "[io.netty.handler.ssl.CipherSuiteConverter].toOpenSslHandshakeAlgo(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:202,1"
      Dst: "[io.netty.handler.ssl.CipherSuiteConverter].toOpenSslBulkCipher(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:203,1"
      Dst: "[io.netty.handler.ssl.CipherSuiteConverter].toOpenSslHmacAlgo(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:204,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:205,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:205,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:205,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:205,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:206,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].toOpenSslHandshakeAlgo(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: 213
    functionLinenumberEnd: 234
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].isEmpty()"
    - "[java.lang.String].replace(char,char)"
    functionUses: 1
    ICount: 33
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:219"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:218"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:219"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:221"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:220"
        BranchSideFuncs:
        - "endsWith(java.lang.String)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:221"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:225"
        BranchSideFuncs:
        - "append(char)"
        - "length()"
        - "substring(int,int)"
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:224"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:233"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:232"
        BranchSideFuncs:
        - "replace(char,char)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:226"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:229"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:228"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
    Callsites:
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:214,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:216,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:216,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:219,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:222,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:222,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:222,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:222,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:226,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:233,1"
      Dst: "[java.lang.String].replace(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].toOpenSslBulkCipher(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: 236
    functionLinenumberEnd: 266
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].matches()"
    - "[java.util.regex.Matcher].replaceFirst(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].replace(char,char)"
    functionUses: 1
    ICount: 39
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:237"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:249"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:248"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:239"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:243"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:242"
        BranchSideFuncs:
        - "matches()"
        - "matcher(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:244"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:249"
        BranchSideFuncs:
        - "replaceFirst(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:248"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:249"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:253"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:252"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:253"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:254"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:253"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:253"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:257"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:256"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:257"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:258"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:257"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:257"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:261"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:260"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:261"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:265"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:264"
        BranchSideFuncs:
        - "replace(char,char)"
    Callsites:
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:237,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:238,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:239,1"
      Dst: "[java.util.regex.Matcher].matches()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:240,1"
      Dst: "[java.util.regex.Matcher].replaceFirst(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:249,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:265,1"
      Dst: "[java.lang.String].replace(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].toOpenSslHmacAlgo(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: 274
    functionLinenumberEnd: 276
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].supportsKeyManagerFactory()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].supportsHostnameValidation()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSsl].isAvailable()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:667,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].isAvailable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].useKeyManagerFactory()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].memoryAddress(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: 674
    functionLinenumberEnd: 679
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isDirect()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.DuplicatedByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].isDirect()"
    - "[io.netty.buffer.CompositeByteBuf].isDirect()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBuf].isDirect()"
    - "[io.netty.buffer.PooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.PooledDirectByteBuf].isDirect()"
    - "[io.netty.buffer.SlicedByteBuf].isDirect()"
    - "[io.netty.buffer.EmptyByteBuf].isDirect()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isDirect()"
    - "[io.netty.buffer.FixedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedByteBuf].isDirect()"
    - "[io.netty.buffer.SwappedByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isDirect()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.internal.tcnative.Buffer].address(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].isDirect()"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    functionUses: 3
    ICount: 16
    EdgeCount: 82
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSsl:675"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:676"
        BranchSideFuncs:
        - "hasMemoryAddress()"
        - "memoryAddress()"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:675"
        BranchSideFuncs:
        - "hasMemoryAddress()"
        - "memoryAddress()"
    - Branch String: "io.netty.handler.ssl.OpenSsl:675"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:676"
        BranchSideFuncs:
        - "hasMemoryAddress()"
        - "memoryAddress()"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:675"
        BranchSideFuncs:
        - "hasMemoryAddress()"
        - "memoryAddress()"
    - Branch String: "io.netty.handler.ssl.OpenSsl:676"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:677"
        BranchSideFuncs:
        - "address(java.nio.ByteBuffer)"
        - "internalNioBuffer(int,int)"
        - "readableBytes()"
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:675,1"
      Dst: "[io.netty.buffer.ByteBuf].isDirect()"
    - Src: "io.netty.handler.ssl.OpenSsl:675,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.OpenSsl:676,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - Src: "io.netty.handler.ssl.OpenSsl:676,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    - Src: "io.netty.handler.ssl.OpenSsl:678,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.ssl.OpenSsl:678,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.handler.ssl.OpenSsl:678,1"
      Dst: "[io.netty.internal.tcnative.Buffer].address(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.OpenSsl].<init>()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:681,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].loadTcNative()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: 683
    functionLinenumberEnd: 713
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].normalizedOs()"
    - "[io.netty.util.internal.PlatformDependent].normalizedArch()"
    - "[java.util.LinkedHashSet].<init>(int)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.util.internal.PlatformDependent].normalizedLinuxClassifiers()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.PlatformDependent].getClassLoader(java.lang.Class)"
    - "[io.netty.util.internal.NativeLibraryLoader].loadFirstAvailable(java.lang.ClassLoader,java.lang.String[])"
    - "[java.util.AbstractCollection].toArray(java.lang.Object[])"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 68
    EdgeCount: 182
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSsl:692"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:705"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "normalizedLinuxClassifiers()"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:704"
        BranchSideFuncs:
        - "append(char)"
    - Branch String: "io.netty.handler.ssl.OpenSsl:694"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:698"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:697"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:684,1"
      Dst: "[io.netty.util.internal.PlatformDependent].normalizedOs()"
    - Src: "io.netty.handler.ssl.OpenSsl:685,1"
      Dst: "[io.netty.util.internal.PlatformDependent].normalizedArch()"
    - Src: "io.netty.handler.ssl.OpenSsl:687,1"
      Dst: "[java.util.LinkedHashSet].<init>(int)"
    - Src: "io.netty.handler.ssl.OpenSsl:692,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSsl:693,1"
      Dst: "[io.netty.util.internal.PlatformDependent].normalizedLinuxClassifiers()"
    - Src: "io.netty.handler.ssl.OpenSsl:694,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.handler.ssl.OpenSsl:694,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ssl.OpenSsl:694,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ssl.OpenSsl:695,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.OpenSsl:695,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSsl:695,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.ssl.OpenSsl:695,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.OpenSsl:695,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSsl:710,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getClassLoader(java.lang.Class)"
    - Src: "io.netty.handler.ssl.OpenSsl:711,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.OpenSsl:710,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].loadFirstAvailable(java.lang.ClassLoader,java.lang.String[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent].normalizedLinuxClassifiers()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1477
    functionLinenumberEnd: 1479
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.NativeLibraryLoader].loadFirstAvailable(java.lang.ClassLoader,java.lang.String[])"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 117
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.ClassLoader"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[io.netty.util.internal.NativeLibraryLoader].load(java.lang.String,java.lang.ClassLoader)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder:java.util.Arrays].toString()"
    - "[io.netty.util.internal.ThrowableUtil].addSuppressedAndClear(java.lang.Throwable,java.util.List)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Arrays].toString(java.lang.Object[])"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 26
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:103"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:113"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object)"
        - "load(java.lang.String,java.lang.ClassLoader)"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:112"
        BranchSideFuncs:
        - "<init>()"
        - "addSuppressedAndClear(java.lang.Throwable,java.util.List)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader:102,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:105,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].load(java.lang.String,java.lang.ClassLoader)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:106,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:109,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:113,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:113,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:114,1"
      Dst: "[java.util.Arrays].toString(java.lang.Object[])"
    - Src: "io.netty.util.internal.NativeLibraryLoader:114,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:114,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:115,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].addSuppressedAndClear(java.lang.Throwable,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].initializeTcNative(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: 714
    functionLinenumberEnd: 716
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.Library].initialize(java.lang.String,java.lang.String)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:715,1"
      Dst: "[io.netty.internal.tcnative.Library].initialize(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].releaseIfNeeded(io.netty.util.ReferenceCounted)"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: 718
    functionLinenumberEnd: 723
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.ReferenceCounted"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].refCnt()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].refCnt()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].refCnt()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].refCnt()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].refCnt()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].refCnt()"
    - "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].refCnt()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].refCnt()"
    - "[io.netty.buffer.DefaultByteBufHolder].refCnt()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].refCnt()"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].refCnt()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.channel.DefaultAddressedEnvelope].refCnt()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].refCnt()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].refCnt()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].refCnt()"
    - "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].refCnt()"
    - "[io.netty.handler.ssl.PemX509Certificate].refCnt()"
    - "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].refCnt()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].refCnt()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].refCnt()"
    - "[io.netty.buffer.EmptyByteBuf].refCnt()"
    - "[io.netty.handler.codec.smtp.LastSmtpContent$1].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.handler.codec.memcache.LastMemcacheContent$1].refCnt()"
    - "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 1
    ICount: 5
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSsl:719"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:722"
        BranchSideFuncs:
        - "safeRelease(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:721"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:719,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    - Src: "io.netty.handler.ssl.OpenSsl:720,1"
      Dst: "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSsl].isTlsv13Supported()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: 724
    functionLinenumberEnd: 726
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].protocols(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: 728
    functionLinenumberEnd: 739
    functionDepth: 3
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String,java.lang.String)"
    - "[java.util.HashSet].<init>()"
    - "[java.lang.String].split(java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 2
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSsl:730"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:738"
        BranchSideFuncs:
        - "<init>()"
        - "split(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.OpenSsl:737"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSsl:732"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:735"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:729,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSsl:731,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "io.netty.handler.ssl.OpenSsl:732,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSsl:733,1"
      Dst: "[java.lang.String].trim()"
    - Src: "io.netty.handler.ssl.OpenSsl:734,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.SystemPropertyUtil"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 84
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.lang.String,java.lang.String)"
    - "[java.lang.System].getSecurityManager()"
    - "[java.lang.System].getProperty(java.lang.String)"
    - "[io.netty.util.internal.SystemPropertyUtil$1].<init>(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger:java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[io.netty.util.internal.SystemPropertyUtil$1].run()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 17
    ICount: 19
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.util.internal.SystemPropertyUtil:65"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:68"
        BranchSideFuncs:
        - "getProperty(java.lang.String)"
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:67"
        BranchSideFuncs:
        - "doPrivileged(java.security.PrivilegedAction)"
        - "run()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.util.internal.SystemPropertyUtil:79"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:83"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.SystemPropertyUtil:61,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.lang.String,java.lang.String)"
    - Src: "io.netty.util.internal.SystemPropertyUtil:65,1"
      Dst: "[java.lang.System].getSecurityManager()"
    - Src: "io.netty.util.internal.SystemPropertyUtil:66,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    - Src: "io.netty.util.internal.SystemPropertyUtil:68,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil$1].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.SystemPropertyUtil:68,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "io.netty.util.internal.SystemPropertyUtil:76,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ObjectUtil"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 266
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.String].isEmpty()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 16
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ObjectUtil:262"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectUtil:265"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.ObjectUtil:264"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectUtil:262,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:262,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.util.internal.ObjectUtil:263,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.ObjectUtil:263,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:263,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.ObjectUtil:263,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SystemPropertyUtil$1].<init>(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.SystemPropertyUtil$1"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SystemPropertyUtil$1:68,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSsl].defaultProtocols(boolean)"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSsl:742"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:742"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSsl:741"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSsl:743"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:746"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSsl:745"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSsl:747"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:752"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSsl:751"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSsl:748"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSsl:751"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSsl:750"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSsl:746,1"
      Dst: "[java.util.Collection].size()"
    - Src: "io.netty.handler.ssl.OpenSsl:746,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.ssl.OpenSsl:747,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.ssl.OpenSsl:747,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ssl.OpenSsl:747,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ssl.OpenSsl:748,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSsl:749,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSsl:752,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.OpenSsl].isBoringSSL()"
    functionSourceFile: "io.netty.handler.ssl.OpenSsl"
    linkageType: ""
    functionLinenumber: 755
    functionLinenumberEnd: 757
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolveContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolveContext"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 47
    functionDepth: 1
    returnType: "void"
    argCount: 9
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    - "io.netty.util.concurrent.Promise"
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.resolver.dns.DnsServerAddressStream"
    - "int"
    - "io.netty.resolver.dns.DnsCache"
    - "io.netty.resolver.dns.AuthoritativeDnsServerCache"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsResolveContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int,io.netty.handler.codec.dns.DnsRecordType[],io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int)"
    - "[io.netty.resolver.dns.DnsNameResolver].resolveRecordTypes()"
    functionUses: 3
    ICount: 16
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:42,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].resolveRecordTypes()"
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:41,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int,io.netty.handler.codec.dns.DnsRecordType[],io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolveContext].newResolverContext(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int,io.netty.handler.codec.dns.DnsRecordType[],io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolveContext"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 2
    returnType: "io.netty.resolver.dns.DnsResolveContext"
    argCount: 8
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    - "io.netty.util.concurrent.Promise"
    - "java.lang.String"
    - "int"
    - "io.netty.handler.codec.dns.DnsRecordType[]"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.resolver.dns.DnsServerAddressStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsAddressResolveContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,boolean)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:54,1"
      Dst: "[io.netty.resolver.dns.DnsAddressResolveContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].resolveRecordTypes()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 643
    functionLinenumberEnd: 645
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsRecordType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolveContext].convertRecord(io.netty.handler.codec.dns.DnsRecord,java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolveContext"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 1
    returnType: "java.net.InetAddress"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecord"
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsAddressDecoder].decodeAddress(io.netty.handler.codec.dns.DnsRecord,java.lang.String,boolean)"
    - "[io.netty.resolver.dns.DnsNameResolver].isDecodeIdn()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:60,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].isDecodeIdn()"
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:60,1"
      Dst: "[io.netty.resolver.dns.DnsAddressDecoder].decodeAddress(io.netty.handler.codec.dns.DnsRecord,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].isDecodeIdn()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 647
    functionLinenumberEnd: 649
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressDecoder].decodeAddress(io.netty.handler.codec.dns.DnsRecord,java.lang.String,boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressDecoder"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "java.net.InetAddress"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecord"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].content()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.handler.codec.smtp.LastSmtpContent$1].content()"
    - "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].content()"
    - "[io.netty.handler.ssl.PemValue].content()"
    - "[io.netty.handler.ssl.PemX509Certificate].content()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].content()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].content()"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].content()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].content()"
    - "[io.netty.handler.codec.memcache.LastMemcacheContent$1].content()"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].content()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].content()"
    - "[io.netty.handler.ssl.PemPrivateKey].content()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].content()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].content()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].content()"
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AbstractByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[java.net.IDN:java.net.InetAddress].getByAddress(java.lang.String,byte[])"
    - "[java.net.IDN].toUnicode(java.lang.String)"
    - "[java.lang.Error].<init>(java.lang.Throwable)"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    - "[java.net.InetAddress].getByAddress(java.lang.String,byte[])"
    functionUses: 2
    ICount: 25
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsAddressDecoder:46"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsAddressDecoder:49"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsAddressDecoder:48"
        BranchSideFuncs:
        - "content()"
        - "readableBytes()"
    - Branch String: "io.netty.resolver.dns.DnsAddressDecoder:51"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsAddressDecoder:55"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsAddressDecoder:54"
        BranchSideFuncs:
        - "getBytes(int,byte[])"
        - "readerIndex()"
        - "getByAddress(java.lang.String,byte[])"
        - "toUnicode(java.lang.String)"
    - Branch String: "io.netty.resolver.dns.DnsAddressDecoder:51"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsAddressDecoder:55"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsAddressDecoder:54"
        BranchSideFuncs:
        - "getBytes(int,byte[])"
        - "readerIndex()"
        - "getByAddress(java.lang.String,byte[])"
        - "toUnicode(java.lang.String)"
    - Branch String: "io.netty.resolver.dns.DnsAddressDecoder:59"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsAddressDecoder:55"
        BranchSideFuncs:
        - "content()"
        - "getBytes(int,byte[])"
        - "readerIndex()"
        - "getByAddress(java.lang.String,byte[])"
        - "readableBytes()"
        - "toUnicode(java.lang.String)"
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.resolver.dns.DnsAddressDecoder:54"
        BranchSideFuncs:
        - "getBytes(int,byte[])"
        - "readerIndex()"
        - "getByAddress(java.lang.String,byte[])"
        - "toUnicode(java.lang.String)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressDecoder:49,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.resolver.dns.DnsAddressDecoder:50,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.resolver.dns.DnsAddressDecoder:56,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.resolver.dns.DnsAddressDecoder:56,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    - Src: "io.netty.resolver.dns.DnsAddressDecoder:59,1"
      Dst: "[java.net.IDN].toUnicode(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsAddressDecoder:59,1"
      Dst: "[java.net.InetAddress].getByAddress(java.lang.String,byte[])"
    - Src: "io.netty.resolver.dns.DnsAddressDecoder:62,1"
      Dst: "[java.lang.Error].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsAddressResolveContext].filterResults(java.util.List<InetAddress>)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolveContext"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionDepth: 1
    returnType: "java.util.List<InetAddress>"
    argCount: 1
    argTypes:
    - "java.util.List<InetAddress>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.PreferredAddressTypeComparator].comparator(io.netty.channel.socket.InternetProtocolFamily)"
    - "[io.netty.resolver.dns.DnsNameResolver].preferredAddressType()"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:65,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].preferredAddressType()"
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:65,1"
      Dst: "[io.netty.resolver.dns.PreferredAddressTypeComparator].comparator(io.netty.channel.socket.InternetProtocolFamily)"
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:65,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].preferredAddressType()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 639
    functionLinenumberEnd: 641
    functionDepth: 0
    returnType: "io.netty.channel.socket.InternetProtocolFamily"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.PreferredAddressTypeComparator].comparator(io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.resolver.dns.PreferredAddressTypeComparator"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "io.netty.resolver.dns.PreferredAddressTypeComparator"
    argCount: 1
    argTypes:
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.IllegalArgumentException].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.PreferredAddressTypeComparator:31,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.resolver.dns.PreferredAddressTypeComparator:37,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolveContext].isCompleteEarly(java.net.InetAddress)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolveContext"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.InternetProtocolFamily].addressType()"
    - "[java.lang.Object].getClass()"
    - "[io.netty.resolver.dns.DnsNameResolver].preferredAddressType()"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsAddressResolveContext:71"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsAddressResolveContext:70"
        BranchSideFuncs:
        - "addressType()"
        - "preferredAddressType()"
        - "getClass()"
    - Branch String: "io.netty.resolver.dns.DnsAddressResolveContext:71"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsAddressResolveContext:70"
        BranchSideFuncs:
        - "addressType()"
        - "preferredAddressType()"
        - "getClass()"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:71,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].preferredAddressType()"
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:71,1"
      Dst: "[io.netty.channel.socket.InternetProtocolFamily].addressType()"
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:71,1"
      Dst: "[java.lang.Object].getClass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.InternetProtocolFamily].addressType()"
    functionSourceFile: "io.netty.channel.socket.InternetProtocolFamily"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolveContext].isDuplicateAllowed()"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolveContext"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolveContext].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.handler.codec.dns.DnsRecord,java.net.InetAddress)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolveContext"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.handler.codec.dns.DnsRecord"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.NoopDnsCache].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],java.net.InetAddress,long,io.netty.channel.EventLoop)"
    - "[io.netty.resolver.dns.DefaultDnsCache].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],java.net.InetAddress,long,io.netty.channel.EventLoop)"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].timeToLive()"
    - "[io.netty.handler.codec.dns.DnsRecord].timeToLive()"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.resolver.dns.DnsCache].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],java.net.InetAddress,long,io.netty.channel.EventLoop)"
    functionUses: 1
    ICount: 12
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:83,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].timeToLive()"
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:83,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:83,1"
      Dst: "[io.netty.resolver.dns.DnsCache].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],java.net.InetAddress,long,io.netty.channel.EventLoop)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolveContext].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],java.net.UnknownHostException)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolveContext"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "java.net.UnknownHostException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultDnsCache].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],java.lang.Throwable,io.netty.channel.EventLoop)"
    - "[io.netty.resolver.dns.NoopDnsCache].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],java.lang.Throwable,io.netty.channel.EventLoop)"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.resolver.dns.DnsCache].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],java.lang.Throwable,io.netty.channel.EventLoop)"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:88,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:88,1"
      Dst: "[io.netty.resolver.dns.DnsCache].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],java.lang.Throwable,io.netty.channel.EventLoop)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolveContext].doSearchDomainQuery(java.lang.String,io.netty.util.concurrent.Promise<List<InetAddress>>)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolveContext"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 99
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.util.concurrent.Promise<List<InetAddress>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].doResolveAllCached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,io.netty.channel.socket.InternetProtocolFamily[])"
    - "[io.netty.resolver.dns.DnsNameResolver].resolvedInternetProtocolFamiliesUnsafe()"
    - "[io.netty.resolver.dns.DnsResolveContext].doSearchDomainQuery(java.lang.String,io.netty.util.concurrent.Promise)"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsAddressResolveContext:94"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsAddressResolveContext:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:95,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].resolvedInternetProtocolFamiliesUnsafe()"
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:94,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].doResolveAllCached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,io.netty.channel.socket.InternetProtocolFamily[])"
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:96,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext].doSearchDomainQuery(java.lang.String,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].resolvedInternetProtocolFamiliesUnsafe()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 619
    functionLinenumberEnd: 621
    functionDepth: 0
    returnType: "io.netty.channel.socket.InternetProtocolFamily[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].doResolveAllCached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,io.netty.channel.socket.InternetProtocolFamily[])"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 1089
    functionLinenumberEnd: 1118
    functionDepth: 1
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.util.concurrent.Promise"
    - "io.netty.resolver.dns.DnsCache"
    - "io.netty.channel.socket.InternetProtocolFamily[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.NoopDnsCache].get(java.lang.String,io.netty.handler.codec.dns.DnsRecord[])"
    - "[io.netty.resolver.dns.DefaultDnsCache].get(java.lang.String,io.netty.handler.codec.dns.DnsRecord[])"
    - "[jaz.Zer].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].cause()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].cause()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].address()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].address()"
    - "[io.netty.channel.socket.InternetProtocolFamily].addressType()"
    - "[java.lang.Class].isInstance(java.lang.Object)"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[io.netty.resolver.dns.DnsNameResolver].trySuccess(io.netty.util.concurrent.Promise,java.lang.Object)"
    - "[io.netty.resolver.dns.DnsNameResolver].tryFailure(io.netty.util.concurrent.Promise,java.lang.Throwable)"
    - "[io.netty.resolver.dns.DnsCache].get(java.lang.String,io.netty.handler.codec.dns.DnsRecord[])"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    - "[io.netty.resolver.dns.DnsCacheEntry].cause()"
    - "[java.util.List].size()"
    - "[io.netty.resolver.dns.DnsCacheEntry].address()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 3
    ICount: 44
    EdgeCount: 46
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1091"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1092"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1091"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1091"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1095"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1094"
        BranchSideFuncs:
        - "cause()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1096"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1116"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1115"
        BranchSideFuncs:
        - "tryFailure(io.netty.util.concurrent.Promise,java.lang.Throwable)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1099"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1110"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1109"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1100"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1097"
        BranchSideFuncs:
        - "addressType()"
        - "get(int)"
        - "isInstance(java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1096"
        BranchSideFuncs:
        - "size()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1102"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1099"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1098"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1103"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1106"
        BranchSideFuncs:
        - "<init>(int)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1105"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "address()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1110"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1114"
        BranchSideFuncs:
        - "trySuccess(io.netty.util.concurrent.Promise,java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1113"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1090,1"
      Dst: "[io.netty.resolver.dns.DnsCache].get(java.lang.String,io.netty.handler.codec.dns.DnsRecord[])"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1091,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1095,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1095,1"
      Dst: "[io.netty.resolver.dns.DnsCacheEntry].cause()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1098,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1102,1"
      Dst: "[io.netty.channel.socket.InternetProtocolFamily].addressType()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1102,1"
      Dst: "[io.netty.resolver.dns.DnsCacheEntry].address()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1102,1"
      Dst: "[java.lang.Class].isInstance(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1104,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1106,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1111,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].trySuccess(io.netty.util.concurrent.Promise,java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1116,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].tryFailure(io.netty.util.concurrent.Promise,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 6
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].trySuccess(io.netty.util.concurrent.Promise,java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 1008
    functionLinenumberEnd: 1017
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.Promise"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].trySuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].trySuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].trySuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].trySuccess(java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 4
    ICount: 7
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1010"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1015"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1009,1"
      Dst: "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1014,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsAddressResolveContext].resolveCache()"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolveContext"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsCache"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolveContext].authoritativeDnsServerCache()"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolveContext"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "io.netty.resolver.dns.AuthoritativeDnsServerCache"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolveContext].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.handler.codec.dns.DnsRecord,java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolveContext"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.handler.codec.dns.DnsRecord"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsAddressResolveContext].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.handler.codec.dns.DnsRecord,java.net.InetAddress)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:30,1"
      Dst: "[io.netty.resolver.dns.DnsAddressResolveContext].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.handler.codec.dns.DnsRecord,java.net.InetAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolveContext].isCompleteEarly(java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolveContext"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsAddressResolveContext].isCompleteEarly(java.net.InetAddress)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressResolveContext:30,1"
      Dst: "[io.netty.resolver.dns.DnsAddressResolveContext].isCompleteEarly(java.net.InetAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise$1].run()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise$1"
    linkageType: ""
    functionLinenumber: 501
    functionLinenumberEnd: 504
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].access$200(io.netty.util.concurrent.DefaultPromise)"
    functionUses: 49
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise$1:502,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].access$200(io.netty.util.concurrent.DefaultPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].access$200(io.netty.util.concurrent.DefaultPromise)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.DefaultPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].notifyListenersNow()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:35,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].notifyListenersNow()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,int)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.InetSocketAddress"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,int,io.netty.handler.codec.dns.DnsOpCode)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:43,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsQuery].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,int,io.netty.handler.codec.dns.DnsOpCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,int,io.netty.handler.codec.dns.DnsOpCode)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 65
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.InetSocketAddress"
    - "int"
    - "io.netty.handler.codec.dns.DnsOpCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].<init>(int,io.netty.handler.codec.dns.DnsOpCode)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsQuery:58"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:62"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:61"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsQuery:58"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:62"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:56,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsQuery].<init>(int,io.netty.handler.codec.dns.DnsOpCode)"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:59,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].content()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DatagramDnsQuery"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].sender()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].recipient()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 34
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].setId(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsQuery"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].setId(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:83,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsQuery].setId(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuery].setId(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuery"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].setId(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:47,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].setId(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].setOpCode(io.netty.handler.codec.dns.DnsOpCode)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsQuery"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsOpCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].setOpCode(io.netty.handler.codec.dns.DnsOpCode)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:88,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsQuery].setOpCode(io.netty.handler.codec.dns.DnsOpCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuery].setOpCode(io.netty.handler.codec.dns.DnsOpCode)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuery"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsOpCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].setOpCode(io.netty.handler.codec.dns.DnsOpCode)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:52,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].setOpCode(io.netty.handler.codec.dns.DnsOpCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].setRecursionDesired(boolean)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsQuery"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].setRecursionDesired(boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:93,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsQuery].setRecursionDesired(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuery].setRecursionDesired(boolean)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuery"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].setRecursionDesired(boolean)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:57,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].setRecursionDesired(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].setZ(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsQuery"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].setZ(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:98,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsQuery].setZ(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuery].setZ(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuery"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].setZ(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:62,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].setZ(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].setRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsQuery"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsSection"
    - "io.netty.handler.codec.dns.DnsRecord"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].setRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:103,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsQuery].setRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuery].setRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuery"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsSection"
    - "io.netty.handler.codec.dns.DnsRecord"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].setRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:67,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].setRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsQuery"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsSection"
    - "io.netty.handler.codec.dns.DnsRecord"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:108,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsQuery].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuery].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuery"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsSection"
    - "io.netty.handler.codec.dns.DnsRecord"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:72,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].addRecord(io.netty.handler.codec.dns.DnsSection,int,io.netty.handler.codec.dns.DnsRecord)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsQuery"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.dns.DnsSection"
    - "int"
    - "io.netty.handler.codec.dns.DnsRecord"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].addRecord(io.netty.handler.codec.dns.DnsSection,int,io.netty.handler.codec.dns.DnsRecord)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:113,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsQuery].addRecord(io.netty.handler.codec.dns.DnsSection,int,io.netty.handler.codec.dns.DnsRecord)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuery].addRecord(io.netty.handler.codec.dns.DnsSection,int,io.netty.handler.codec.dns.DnsRecord)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuery"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.dns.DnsSection"
    - "int"
    - "io.netty.handler.codec.dns.DnsRecord"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].addRecord(io.netty.handler.codec.dns.DnsSection,int,io.netty.handler.codec.dns.DnsRecord)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:77,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].addRecord(io.netty.handler.codec.dns.DnsSection,int,io.netty.handler.codec.dns.DnsRecord)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].clear(io.netty.handler.codec.dns.DnsSection)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsQuery"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsSection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].clear(io.netty.handler.codec.dns.DnsSection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:118,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsQuery].clear(io.netty.handler.codec.dns.DnsSection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuery].clear(io.netty.handler.codec.dns.DnsSection)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuery"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsSection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].clear(io.netty.handler.codec.dns.DnsSection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:82,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].clear(io.netty.handler.codec.dns.DnsSection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].clear()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsQuery"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].clear()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:123,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsQuery].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuery].clear()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuery"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].clear()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:87,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].touch()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsQuery"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].touch()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:128,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsQuery].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuery].touch()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuery"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].touch()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:92,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsQuery"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].touch(java.lang.Object)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:133,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsQuery].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuery].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuery"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].touch(java.lang.Object)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:97,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].retain()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsQuery"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].retain()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:138,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsQuery].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuery].retain()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuery"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].retain()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:102,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].retain(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsQuery"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:143,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsQuery].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuery].retain(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuery"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:107,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 179
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].equals(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].sender()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].sender()"
    - "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].sender()"
    - "[java.net.InetSocketAddress].equals(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].recipient()"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].recipient()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    - "[io.netty.channel.AddressedEnvelope].sender()"
    - "[io.netty.channel.AddressedEnvelope].recipient()"
    functionUses: 9
    ICount: 32
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsQuery:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:152"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:151"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsQuery:152"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:156"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:155"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsQuery:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:161"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:160"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsQuery:162"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:166"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:165"
        BranchSideFuncs:
        - "sender()"
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsQuery:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:170"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:169"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsQuery:166"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:170"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:169"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsQuery:170"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:174"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:173"
        BranchSideFuncs:
        - "recipient()"
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsQuery:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:178"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:177"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsQuery:174"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:178"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:177"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:152,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:162,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsQuery].sender()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:163,1"
      Dst: "[io.netty.channel.AddressedEnvelope].sender()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:166,1"
      Dst: "[java.net.InetSocketAddress].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:170,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsQuery].recipient()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:171,1"
      Dst: "[io.netty.channel.AddressedEnvelope].recipient()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQuery].hashCode()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQuery"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 191
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].hashCode()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].sender()"
    - "[java.net.InetSocketAddress].hashCode()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].recipient()"
    functionUses: 5
    ICount: 16
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsQuery:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:187"
        BranchSideFuncs:
        - "sender()"
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:186"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsQuery:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:190"
        BranchSideFuncs:
        - "recipient()"
        - "hashCode()"
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQuery:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:183,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].hashCode()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:184,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsQuery].sender()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:185,1"
      Dst: "[java.net.InetSocketAddress].hashCode()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQuery:187,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsQuery].recipient()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpContentEncoder$Result].<init>(java.lang.String,io.netty.channel.embedded.EmbeddedChannel)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentEncoder$Result"
    linkageType: ""
    functionLinenumber: 365
    functionLinenumberEnd: 370
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.channel.embedded.EmbeddedChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentEncoder$Result:366,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.HttpContentEncoder$Result:367,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentEncoder$Result].targetContentEncoding()"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentEncoder$Result"
    linkageType: ""
    functionLinenumber: 371
    functionLinenumberEnd: 373
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentEncoder$Result].contentEncoder()"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentEncoder$Result"
    linkageType: ""
    functionLinenumber: 375
    functionLinenumberEnd: 377
    functionDepth: 0
    returnType: "io.netty.channel.embedded.EmbeddedChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ThreadLocalMarshallerProvider].<init>(org.jboss.marshalling.MarshallerFactory,org.jboss.marshalling.MarshallingConfiguration)"
    functionSourceFile: "io.netty.handler.codec.marshalling.ThreadLocalMarshallerProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jboss.marshalling.MarshallerFactory"
    - "org.jboss.marshalling.MarshallingConfiguration"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.ThreadLocalMarshallerProvider:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.marshalling.ThreadLocalMarshallerProvider:31,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ThreadLocalMarshallerProvider].getMarshaller(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.marshalling.ThreadLocalMarshallerProvider"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 55
    functionDepth: 6
    returnType: "org.jboss.marshalling.Marshaller"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].get()"
    - "[io.netty.util.concurrent.FastThreadLocal].set(java.lang.Object)"
    - "[org.jboss.marshalling.MarshallerFactory].createMarshaller(org.jboss.marshalling.MarshallingConfiguration)"
    functionUses: 2
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.marshalling.ThreadLocalMarshallerProvider:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.marshalling.ThreadLocalMarshallerProvider:54"
        BranchSideFuncs:
        - "set(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.marshalling.ThreadLocalMarshallerProvider:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.ThreadLocalMarshallerProvider:49,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].get()"
    - Src: "io.netty.handler.codec.marshalling.ThreadLocalMarshallerProvider:51,1"
      Dst: "[org.jboss.marshalling.MarshallerFactory].createMarshaller(org.jboss.marshalling.MarshallingConfiguration)"
    - Src: "io.netty.handler.codec.marshalling.ThreadLocalMarshallerProvider:52,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame:30,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame:30,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame:40,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame:54,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].copy()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].copy()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame:59,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].duplicate()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].duplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame:64,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retainedDuplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame:69,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame:74,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    - Src: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame:74,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    - Src: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame:74,1"
      Dst: "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].retain()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retain()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame:79,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame:85,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].touch()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].touch()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame:91,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].touch(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.PongWebSocketFrame:97,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksResponseType].values()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksResponseType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksResponseType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksResponseType:22,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksResponseType].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksResponseType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksResponseType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksResponseType:22,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksResponseType].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksResponseType"
    linkageType: ""
    functionLinenumber: 21
    functionLinenumberEnd: 23
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksResponseType:22,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.FastLzFrameEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.FastLzFrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.FastLzFrameEncoder].<init>(int,java.util.zip.Checksum)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:60,1"
      Dst: "[io.netty.handler.codec.compression.FastLzFrameEncoder].<init>(int,java.util.zip.Checksum)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.FastLzFrameEncoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.compression.FastLzFrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.FastLzFrameEncoder].<init>(int,java.util.zip.Checksum)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:72,1"
      Dst: "[io.netty.handler.codec.compression.FastLzFrameEncoder].<init>(int,java.util.zip.Checksum)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.FastLzFrameEncoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.FastLzFrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.zip.Adler32].<init>()"
    - "[io.netty.handler.codec.compression.FastLzFrameEncoder].<init>(int,java.util.zip.Checksum)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameEncoder:86"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:86"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:86,1"
      Dst: "[java.util.zip.Adler32].<init>()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:86,1"
      Dst: "[io.netty.handler.codec.compression.FastLzFrameEncoder].<init>(int,java.util.zip.Checksum)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.FastLzFrameEncoder].<init>(int,java.util.zip.Checksum)"
    functionSourceFile: "io.netty.handler.codec.compression.FastLzFrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.zip.Checksum"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.compression.ByteBufChecksum].wrapChecksum(java.util.zip.Checksum)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameEncoder:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:105"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:104"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameEncoder:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:105"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:104"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameEncoder:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:105"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:104"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameEncoder:106"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:105"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:100,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:103,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:102,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:102,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:106,1"
      Dst: "[io.netty.handler.codec.compression.ByteBufChecksum].wrapChecksum(java.util.zip.Checksum)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.compression.FastLzFrameEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.FastLzFrameEncoder"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 171
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setMedium(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].reset()"
    - "[io.netty.handler.codec.compression.Crc32c].reset()"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].reset()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].update(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.compression.ByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].getValue()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].getValue()"
    - "[io.netty.handler.codec.compression.Crc32c].getValue()"
    - "[io.netty.buffer.FixedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setInt(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.compression.FastLz].calculateOutputBufferLength(int)"
    - "[io.netty.handler.codec.compression.FastLz].compress(io.netty.buffer.ByteBuf,int,int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setShort(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setByte(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - "[java.util.zip.Checksum].reset()"
    - "[java.util.zip.Checksum].getValue()"
    - "[io.netty.buffer.ByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 1
    ICount: 76
    EdgeCount: 256
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameEncoder:114"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:117"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:116"
        BranchSideFuncs:
        - "min(int,int)"
        - "writerIndex()"
        - "setMedium(int,int)"
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameEncoder:122"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:117"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:116"
        BranchSideFuncs:
        - "min(int,int)"
        - "writerIndex()"
        - "setMedium(int,int)"
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameEncoder:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:141"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:140"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameEncoder:132"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:137"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameEncoder:141"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:147"
        BranchSideFuncs:
        - "getValue()"
        - "update(io.netty.buffer.ByteBuf,int,int)"
        - "reset()"
        - "setInt(int,int)"
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:146"
        BranchSideFuncs:
        - "readerIndex()"
        - "ensureWritable(int)"
        - "compress(io.netty.buffer.ByteBuf,int,int,io.netty.buffer.ByteBuf,int,int)"
        - "calculateOutputBufferLength(int)"
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameEncoder:152"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:159"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:158"
        BranchSideFuncs:
        - "setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameEncoder:166"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:164"
        BranchSideFuncs:
        - "skipBytes(int)"
        - "setByte(int,int)"
        - "writerIndex(int)"
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameEncoder:163"
        BranchSideFuncs:
        - "setByte(int,int)"
        - "setShort(int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:114,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:117,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:118,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:118,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:120,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:121,1"
      Dst: "[io.netty.buffer.ByteBuf].setMedium(int,int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:129,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:133,1"
      Dst: "[java.util.zip.Checksum].reset()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:134,1"
      Dst: "[io.netty.handler.codec.compression.ByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:135,1"
      Dst: "[java.util.zip.Checksum].getValue()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:135,1"
      Dst: "[io.netty.buffer.ByteBuf].setInt(int,int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:137,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:147,1"
      Dst: "[io.netty.handler.codec.compression.FastLz].calculateOutputBufferLength(int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:150,1"
      Dst: "[io.netty.handler.codec.compression.FastLz].compress(io.netty.buffer.ByteBuf,int,int,io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:156,1"
      Dst: "[io.netty.buffer.ByteBuf].setShort(int,int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:166,1"
      Dst: "[io.netty.buffer.ByteBuf].setByte(int,int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:168,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:169,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.compression.FastLz].calculateOutputBufferLength(int)"
    functionSourceFile: "io.netty.handler.codec.compression.FastLz"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLz:86,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.FastLz].compress(io.netty.buffer.ByteBuf,int,int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.FastLz"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 399
    functionDepth: 2
    returnType: "int"
    argCount: 6
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setByte(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.handler.codec.compression.FastLz].readU16(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.compression.FastLz].hashFunction(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 1
    ICount: 492
    EdgeCount: 1349
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.FastLz:99"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:101"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:100"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:99"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:123"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:139"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:138"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:133"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:131"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:130"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:139"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:144"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:151"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:375"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:374"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:180"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:181"
        BranchSideFuncs:
        - "readU16(io.netty.buffer.ByteBuf,int)"
      - BranchSide: "io.netty.handler.codec.compression.FastLz:180"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:170"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:181"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:180"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:240"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:198"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:198"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:184"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:183"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:198"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:184"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:183"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:198"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:200"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:201"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:202"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:215"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:209"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:151"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:150"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:216"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:240"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:218"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:241"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:240"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:219"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:224"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:223"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:220"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:232"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:227"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:151"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:150"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:246"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:258"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:250"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:257"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:256"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:251"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:254"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:253"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:260"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:266"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:265"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:261"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:259"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:258"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:266"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:276"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:275"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:267"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:276"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:275"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:268"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:267"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:266"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:276"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:293"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:327"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:326"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:294"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:308"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:307"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:295"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:299"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:298"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:300"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:302"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:308"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:315"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:314"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:317"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:319"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:327"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:336"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:335"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:328"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:336"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:335"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:336"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:340"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:339"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:376"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:386"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:385"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:379"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:376"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:375"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:386"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:393"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:397"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLz:126,1"
      Dst: "[io.netty.buffer.ByteBuf].setByte(int,int)"
    - Src: "io.netty.handler.codec.compression.FastLz:129,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    - Src: "io.netty.handler.codec.compression.FastLz:170,1"
      Dst: "[io.netty.handler.codec.compression.FastLz].readU16(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.FastLz:184,1"
      Dst: "[io.netty.handler.codec.compression.FastLz].hashFunction(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 90
    CyclomaticComplexity: 45
  - functionName: "[io.netty.handler.codec.compression.FastLz].readU16(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.compression.FastLz"
    linkageType: ""
    functionLinenumber: 552
    functionLinenumberEnd: 557
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    functionUses: 4
    ICount: 16
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.FastLz:553"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:556"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:555"
        BranchSideFuncs:
        - "getUnsignedByte(int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLz:553,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.FastLz:554,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.FastLz].hashFunction(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.compression.FastLz"
    linkageType: ""
    functionLinenumber: 545
    functionLinenumberEnd: 550
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.FastLz].readU16(io.netty.buffer.ByteBuf,int)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLz:546,1"
      Dst: "[io.netty.handler.codec.compression.FastLz].readU16(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.FastLzFrameEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.FastLzFrameEncoder"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.FastLzFrameEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLzFrameEncoder:45,1"
      Dst: "[io.netty.handler.codec.compression.FastLzFrameEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool$AcquireTimeoutException].<init>()"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$AcquireTimeoutException"
    linkageType: ""
    functionLinenumber: 523
    functionLinenumberEnd: 526
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.TimeoutException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireTimeoutException:524,1"
      Dst: "[java.util.concurrent.TimeoutException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool$AcquireTimeoutException].fillInStackTrace()"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$AcquireTimeoutException"
    linkageType: ""
    functionLinenumber: 529
    functionLinenumberEnd: 531
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool$AcquireTimeoutException].<init>(io.netty.channel.pool.FixedChannelPool$1)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$AcquireTimeoutException"
    linkageType: ""
    functionLinenumber: 520
    functionLinenumberEnd: 522
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.FixedChannelPool$AcquireTimeoutException].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireTimeoutException:521,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool$AcquireTimeoutException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsRecordType].valueOf(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsRecordType"
    linkageType: ""
    functionLinenumber: 335
    functionLinenumberEnd: 341
    functionDepth: 2
    returnType: "io.netty.handler.codec.dns.DnsRecordType"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.IntObjectHashMap].get(int)"
    - "[io.netty.handler.codec.dns.DnsRecordType].<init>(int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsRecordType:337"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsRecordType:340"
        BranchSideFuncs:
        - "<init>(int)"
      - BranchSide: "io.netty.handler.codec.dns.DnsRecordType:339"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsRecordType:336,1"
      Dst: "[io.netty.util.collection.IntObjectHashMap].get(int)"
    - Src: "io.netty.handler.codec.dns.DnsRecordType:338,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecordType].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsRecordType].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsRecordType"
    linkageType: ""
    functionLinenumber: 355
    functionLinenumberEnd: 358
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsRecordType].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsRecordType:356,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecordType].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsRecordType].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsRecordType"
    linkageType: ""
    functionLinenumber: 358
    functionLinenumberEnd: 366
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 41
    ICount: 19
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsRecordType:360"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsRecordType:363"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.dns.DnsRecordType:362"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsRecordType:359,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.dns.DnsRecordType:361,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.dns.DnsRecordType:361,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DnsRecordType:361,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.dns.DnsRecordType:361,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.dns.DnsRecordType:361,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsRecordType].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsRecordType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsRecordType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsRecordType:345"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsRecordType:348"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsRecordType:347"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsRecordType:344,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.dns.DnsRecordType:346,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.dns.DnsRecordType:346,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DnsRecordType:346,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.dns.DnsRecordType:346,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsRecordType].name()"
    functionSourceFile: "io.netty.handler.codec.dns.DnsRecordType"
    linkageType: ""
    functionLinenumber: 370
    functionLinenumberEnd: 372
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsRecordType].intValue()"
    functionSourceFile: "io.netty.handler.codec.dns.DnsRecordType"
    linkageType: ""
    functionLinenumber: 377
    functionLinenumberEnd: 379
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsRecordType].hashCode()"
    functionSourceFile: "io.netty.handler.codec.dns.DnsRecordType"
    linkageType: ""
    functionLinenumber: 382
    functionLinenumberEnd: 384
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsRecordType].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsRecordType"
    linkageType: ""
    functionLinenumber: 387
    functionLinenumberEnd: 389
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsRecordType:388"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsRecordType:387"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DnsRecordType:388"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsRecordType:387"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.dns.DnsRecordType].compareTo(io.netty.handler.codec.dns.DnsRecordType)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsRecordType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecordType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsRecordType].intValue()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsRecordType:393,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecordType].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsRecordType].toString()"
    functionSourceFile: "io.netty.handler.codec.dns.DnsRecordType"
    linkageType: ""
    functionLinenumber: 397
    functionLinenumberEnd: 403
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.dns.DnsRecordType].intValue()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 15
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsRecordType:399"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsRecordType:402"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "intValue()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.dns.DnsRecordType:401"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsRecordType:400,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.dns.DnsRecordType:400,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DnsRecordType:400,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.dns.DnsRecordType:400,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecordType].intValue()"
    - Src: "io.netty.handler.codec.dns.DnsRecordType:400,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.dns.DnsRecordType:400,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DnsRecordType].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsRecordType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsRecordType].compareTo(io.netty.handler.codec.dns.DnsRecordType)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsRecordType:27,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecordType].compareTo(io.netty.handler.codec.dns.DnsRecordType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.RoundRobinDnsAddressResolverGroup].<init>(io.netty.resolver.dns.DnsNameResolverBuilder)"
    functionSourceFile: "io.netty.resolver.dns.RoundRobinDnsAddressResolverGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolverBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsAddressResolverGroup].<init>(io.netty.resolver.dns.DnsNameResolverBuilder)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.RoundRobinDnsAddressResolverGroup:38,1"
      Dst: "[io.netty.resolver.dns.DnsAddressResolverGroup].<init>(io.netty.resolver.dns.DnsNameResolverBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.RoundRobinDnsAddressResolverGroup].<init>(java.lang.Class,io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    functionSourceFile: "io.netty.resolver.dns.RoundRobinDnsAddressResolverGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "io.netty.resolver.dns.DnsServerAddressStreamProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsAddressResolverGroup].<init>(java.lang.Class,io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.RoundRobinDnsAddressResolverGroup:44,1"
      Dst: "[io.netty.resolver.dns.DnsAddressResolverGroup].<init>(java.lang.Class,io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.RoundRobinDnsAddressResolverGroup].<init>(io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    functionSourceFile: "io.netty.resolver.dns.RoundRobinDnsAddressResolverGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelFactory"
    - "io.netty.resolver.dns.DnsServerAddressStreamProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsAddressResolverGroup].<init>(io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.RoundRobinDnsAddressResolverGroup:50,1"
      Dst: "[io.netty.resolver.dns.DnsAddressResolverGroup].<init>(io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.RoundRobinDnsAddressResolverGroup].newAddressResolver(io.netty.channel.EventLoop,io.netty.resolver.NameResolver<InetAddress>)"
    functionSourceFile: "io.netty.resolver.dns.RoundRobinDnsAddressResolverGroup"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 1
    returnType: "io.netty.resolver.AddressResolver<InetSocketAddress>"
    argCount: 2
    argTypes:
    - "io.netty.channel.EventLoop"
    - "io.netty.resolver.NameResolver<InetAddress>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.RoundRobinInetAddressResolver].<init>(io.netty.util.concurrent.EventExecutor,io.netty.resolver.NameResolver)"
    - "[io.netty.resolver.InetNameResolver].asAddressResolver()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.RoundRobinDnsAddressResolverGroup:64,1"
      Dst: "[io.netty.resolver.RoundRobinInetAddressResolver].<init>(io.netty.util.concurrent.EventExecutor,io.netty.resolver.NameResolver)"
    - Src: "io.netty.resolver.dns.RoundRobinDnsAddressResolverGroup:64,1"
      Dst: "[io.netty.resolver.InetNameResolver].asAddressResolver()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.RoundRobinInetAddressResolver].<init>(io.netty.util.concurrent.EventExecutor,io.netty.resolver.NameResolver)"
    functionSourceFile: "io.netty.resolver.RoundRobinInetAddressResolver"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    - "io.netty.resolver.NameResolver"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.InetNameResolver].<init>(io.netty.util.concurrent.EventExecutor)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver:46,1"
      Dst: "[io.netty.resolver.InetNameResolver].<init>(io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.protobuf.ProtobufEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.protobuf.ProtobufEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoder:62,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.protobuf.ProtobufEncoder].encode(io.netty.channel.ChannelHandlerContext,com.google.protobuf.MessageLiteOrBuilder,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.protobuf.ProtobufEncoder"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 74
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "com.google.protobuf.MessageLiteOrBuilder"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[com.google.protobuf.MessageLite].toByteArray()"
    - "[java.util.List].add(java.lang.Object)"
    - "[com.google.protobuf.MessageLite$Builder].build()"
    functionUses: 1
    ICount: 19
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.protobuf.ProtobufEncoder:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufEncoder:70"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufEncoder:69"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.protobuf.ProtobufEncoder:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufEncoder:73"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "wrappedBuffer(byte[])"
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufEncoder:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoder:67,1"
      Dst: "[com.google.protobuf.MessageLite].toByteArray()"
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoder:67,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoder:67,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoder:71,1"
      Dst: "[com.google.protobuf.MessageLite$Builder].build()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.protobuf.ProtobufEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.protobuf.ProtobufEncoder"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.protobuf.ProtobufEncoder].encode(io.netty.channel.ChannelHandlerContext,com.google.protobuf.MessageLiteOrBuilder,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoder:61,1"
      Dst: "[io.netty.handler.codec.protobuf.ProtobufEncoder].encode(io.netty.channel.ChannelHandlerContext,com.google.protobuf.MessageLiteOrBuilder,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2FrameWriter)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    - "io.netty.handler.codec.http2.Http2FrameWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayDeque].<init>(int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].<init>(io.netty.handler.codec.http2.Http2Connection)"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController(io.netty.handler.codec.http2.Http2FlowController)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:58"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:52,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:49,1"
      Dst: "[java.util.ArrayDeque].<init>(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:53,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:55,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:55,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:56,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].<init>(io.netty.handler.codec.http2.Http2Connection)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:56,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController(io.netty.handler.codec.http2.Http2FlowController)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2LifecycleManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:62,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].frameWriter()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameWriter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].connection()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Connection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].flowController()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2RemoteFlowController"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].flowController()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController()"
    functionUses: 11
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:77,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].connection()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:77,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:77,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 119
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Settings].pushEnabled()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].configuration()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].headersConfiguration()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].frameSizePolicy()"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].isServer()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].allowPushTo(boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Settings].maxConcurrentStreams()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].local()"
    - "[java.lang.Long].longValue()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].maxActiveStreams(int)"
    - "[java.lang.Math].min(long,long)"
    - "[io.netty.handler.codec.http2.Http2Settings].headerTableSize()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersEncoder].maxHeaderTableSize(long)"
    - "[io.netty.handler.codec.http2.Http2Settings].maxHeaderListSize()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersEncoder].maxHeaderListSize(long)"
    - "[io.netty.handler.codec.http2.Http2Settings].maxFrameSize()"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].maxFrameSize(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].maxFrameSize(int)"
    - "[io.netty.handler.codec.http2.Http2Settings].initialWindowSize()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].flowController()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].initialWindowSize(int)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter$Configuration].headersConfiguration()"
    - "[io.netty.handler.codec.http2.Http2FrameWriter$Configuration].frameSizePolicy()"
    - "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].allowPushTo(boolean)"
    - "[io.netty.handler.codec.http2.Http2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].maxActiveStreams(int)"
    - "[io.netty.handler.codec.http2.Http2HeadersEncoder$Configuration].maxHeaderTableSize(long)"
    - "[io.netty.handler.codec.http2.Http2HeadersEncoder$Configuration].maxHeaderListSize(long)"
    - "[io.netty.handler.codec.http2.Http2FrameSizePolicy].maxFrameSize(int)"
    - "[io.netty.handler.codec.http2.Http2FlowController].initialWindowSize(int)"
    functionUses: 4
    ICount: 49
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:86"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:94"
        BranchSideFuncs:
        - "isServer()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:93"
        BranchSideFuncs:
        - "maxConcurrentStreams()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:87"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:91"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:90"
        BranchSideFuncs:
        - "booleanValue()"
        - "allowPushTo(boolean)"
        - "remote()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:87"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:91"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:90"
        BranchSideFuncs:
        - "booleanValue()"
        - "allowPushTo(boolean)"
        - "remote()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:99"
        BranchSideFuncs:
        - "maxActiveStreams(int)"
        - "local()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:98"
        BranchSideFuncs:
        - "headerTableSize()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:100"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:104"
        BranchSideFuncs:
        - "min(long,long)"
        - "maxHeaderTableSize(long)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:103"
        BranchSideFuncs:
        - "maxHeaderListSize()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:105"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:109"
        BranchSideFuncs:
        - "longValue()"
        - "maxHeaderListSize(long)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:108"
        BranchSideFuncs:
        - "maxFrameSize()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:110"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:114"
        BranchSideFuncs:
        - "maxFrameSize(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:113"
        BranchSideFuncs:
        - "initialWindowSize()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:115"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:118"
        BranchSideFuncs:
        - "initialWindowSize(int)"
        - "flowController()"
        - "intValue()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:82,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].pushEnabled()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:83,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].configuration()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:84,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter$Configuration].headersConfiguration()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:85,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter$Configuration].frameSizePolicy()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:87,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:87,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:88,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:91,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:91,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].allowPushTo(boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:94,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].maxConcurrentStreams()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:96,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].local()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:96,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:96,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:96,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].maxActiveStreams(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:99,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].headerTableSize()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:101,1"
      Dst: "[io.netty.handler.codec.http2.Http2HeadersEncoder$Configuration].maxHeaderTableSize(long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:104,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].maxHeaderListSize()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:106,1"
      Dst: "[io.netty.handler.codec.http2.Http2HeadersEncoder$Configuration].maxHeaderListSize(long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:109,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].maxFrameSize()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:111,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:111,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameSizePolicy].maxFrameSize(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:114,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].initialWindowSize()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:116,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].flowController()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:116,1"
      Dst: "[io.netty.handler.codec.http2.Http2FlowController].initialWindowSize(int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].pushEnabled()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap].get(char)"
    - "[java.lang.Long].equals(java.lang.Object)"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 3
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2Settings:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:104"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:103"
        BranchSideFuncs:
        - "valueOf(boolean)"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:100,1"
      Dst: "[io.netty.util.collection.CharObjectHashMap].get(char)"
    - Src: "io.netty.handler.codec.http2.Http2Settings:104,1"
      Dst: "[java.lang.Long].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2Settings:104,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].configuration()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 407
    functionLinenumberEnd: 409
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameWriter$Configuration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].configuration()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].configuration()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].configuration()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].configuration()"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].configuration()"
    functionUses: 4
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:408,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].configuration()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].maxConcurrentStreams()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 0
    returnType: "java.lang.Long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap].get(char)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:119,1"
      Dst: "[io.netty.util.collection.CharObjectHashMap].get(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].headerTableSize()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "java.lang.Long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap].get(char)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:83,1"
      Dst: "[io.netty.util.collection.CharObjectHashMap].get(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].maxHeaderListSize()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionDepth: 0
    returnType: "java.lang.Long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap].get(char)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:170,1"
      Dst: "[io.netty.util.collection.CharObjectHashMap].get(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].maxFrameSize()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 1
    returnType: "java.lang.Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Settings].getIntValue(char)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:153,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].getIntValue(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].getIntValue(char)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 203
    functionDepth: 0
    returnType: "java.lang.Integer"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap].get(char)"
    - "[java.lang.Long].intValue()"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2Settings:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:202"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:201"
        BranchSideFuncs:
        - "intValue()"
        - "valueOf(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:198,1"
      Dst: "[io.netty.util.collection.CharObjectHashMap].get(char)"
    - Src: "io.netty.handler.codec.http2.Http2Settings:202,1"
      Dst: "[java.lang.Long].intValue()"
    - Src: "io.netty.handler.codec.http2.Http2Settings:202,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].initialWindowSize()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionDepth: 1
    returnType: "java.lang.Integer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Settings].getIntValue(char)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:136,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].getIntValue(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 146
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 6
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].unvoid()"
    - "[io.netty.channel.VoidChannelPromise].unvoid()"
    - "[io.netty.channel.DefaultChannelPromise].unvoid()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].requireStream(int)"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].state()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.handler.codec.http2.Http2Stream,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].addFlowControlled(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].flowController()"
    - "[io.netty.channel.ChannelPromise].unvoid()"
    - "[io.netty.handler.codec.http2.Http2Stream].state()"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2RemoteFlowController].addFlowControlled(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    functionUses: 5
    ICount: 37
    EdgeCount: 37
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:123,1"
      Dst: "[io.netty.channel.ChannelPromise].unvoid()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:126,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].requireStream(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:129,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].state()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:129,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:135,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:135,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:135,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:135,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:135,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:135,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:135,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:138,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:139,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:143,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].flowController()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:143,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.handler.codec.http2.Http2Stream,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:143,1"
      Dst: "[io.netty.handler.codec.http2.Http2RemoteFlowController].addFlowControlled(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].requireStream(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 411
    functionLinenumberEnd: 423
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].streamMayHaveExisted(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.Http2Connection].streamMayHaveExisted(int)"
    functionUses: 2
    ICount: 23
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:413"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:421"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:415"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:418"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:417"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:412,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:415,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].streamMayHaveExisted(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:416,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:416,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:416,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:416,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:420,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.handler.codec.http2.Http2Stream,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData"
    linkageType: ""
    functionLinenumber: 446
    functionLinenumberEnd: 453
    functionDepth: 4
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledBase].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.handler.codec.http2.Http2Stream,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CoalescingBufferQueue].<init>(io.netty.channel.Channel)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.DefaultChannelPromise].channel()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].channel()"
    - "[io.netty.channel.VoidChannelPromise].channel()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].add(io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].readableBytes()"
    - "[io.netty.channel.ChannelPromise].channel()"
    functionUses: 1
    ICount: 19
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:448,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledBase].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.handler.codec.http2.Http2Stream,int,boolean,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:449,1"
      Dst: "[io.netty.channel.ChannelPromise].channel()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:449,1"
      Dst: "[io.netty.channel.CoalescingBufferQueue].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:450,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].add(io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:451,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].readableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CoalescingBufferQueue].<init>(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.CoalescingBufferQueue"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CoalescingBufferQueue].<init>(io.netty.channel.Channel,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CoalescingBufferQueue:39,1"
      Dst: "[io.netty.channel.CoalescingBufferQueue].<init>(io.netty.channel.Channel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CoalescingBufferQueue].<init>(io.netty.channel.Channel,int)"
    functionSourceFile: "io.netty.channel.CoalescingBufferQueue"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CoalescingBufferQueue].<init>(io.netty.channel.Channel,int,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CoalescingBufferQueue:43,1"
      Dst: "[io.netty.channel.CoalescingBufferQueue].<init>(io.netty.channel.Channel,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CoalescingBufferQueue].<init>(io.netty.channel.Channel,int,boolean)"
    functionSourceFile: "io.netty.channel.CoalescingBufferQueue"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.Channel"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractCoalescingBufferQueue].<init>(io.netty.channel.Channel,int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.CoalescingBufferQueue:47"
      Branch Sides:
      - BranchSide: "io.netty.channel.CoalescingBufferQueue:47"
        BranchSideFuncs:
        - "<init>(io.netty.channel.Channel,int)"
        - "checkNotNull(java.lang.Object,java.lang.String)"
      - BranchSide: "io.netty.channel.CoalescingBufferQueue:46"
        BranchSideFuncs:
        - "<init>(io.netty.channel.Channel,int)"
    Callsites:
    - Src: "io.netty.channel.CoalescingBufferQueue:47,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].<init>(io.netty.channel.Channel,int)"
    - Src: "io.netty.channel.CoalescingBufferQueue:48,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 6
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeHeaders0(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 6
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:151,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeHeaders0(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeHeaders0(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 273
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 10
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "boolean"
    - "int"
    - "short"
    - "boolean"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].createStream(int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].local()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].mayHaveCreatedStream(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].remote()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].state()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].open(boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].open(boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].flowController()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].hasFlowControlled(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].unvoid()"
    - "[io.netty.channel.DefaultChannelPromise].unvoid()"
    - "[io.netty.channel.VoidChannelPromise].unvoid()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].unvoid()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].isServer()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].validateHeadersSentState(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].sendHeaders(io.netty.handler.codec.http2.Http2FrameWriter,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].headersSent(boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].headersSent(boolean)"
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].notifyLifecycleManagerOnError(io.netty.channel.ChannelFuture,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].closeStreamLocal(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].addFlowControlled(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    - "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.Http2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].createStream(int,boolean)"
    - "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].mayHaveCreatedStream(int)"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2Stream].state()"
    - "[io.netty.handler.codec.http2.Http2Stream].open(boolean)"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.handler.codec.http2.Http2RemoteFlowController].hasFlowControlled(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.channel.ChannelPromise].unvoid()"
    - "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.handler.codec.http2.Http2Stream].headersSent(boolean)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.handler.codec.http2.Http2LifecycleManager].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2LifecycleManager].closeStreamLocal(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    - "[io.netty.handler.codec.http2.Http2RemoteFlowController].addFlowControlled(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    functionUses: 2
    ICount: 87
    EdgeCount: 60
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:194"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:209"
        BranchSideFuncs:
        - "ordinal()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:203"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:201"
        BranchSideFuncs:
        - "local()"
        - "remote()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "createStream(int,boolean)"
        - "mayHaveCreatedStream(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:200"
        BranchSideFuncs:
        - "local()"
        - "remote()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "createStream(int,boolean)"
        - "mayHaveCreatedStream(int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:227"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:230"
        BranchSideFuncs:
        - "onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
        - "isSuccess()"
        - "validateHeadersSentState(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean)"
        - "notifyLifecycleManagerOnError(io.netty.channel.ChannelFuture,io.netty.channel.ChannelHandlerContext)"
        - "tryFailure(java.lang.Throwable)"
        - "closeStreamLocal(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
        - "cause()"
        - "<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
        - "addFlowControlled(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
        - "hasFlowControlled(io.netty.handler.codec.http2.Http2Stream)"
        - "isServer()"
        - "unvoid()"
        - "sendHeaders(io.netty.handler.codec.http2.Http2FrameWriter,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
        - "headersSent(boolean)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:229"
        BranchSideFuncs:
        - "validateHeadersSentState(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean)"
        - "cause()"
        - "isServer()"
        - "unvoid()"
        - "sendHeaders(io.netty.handler.codec.http2.Http2FrameWriter,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:227"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:264"
        BranchSideFuncs:
        - "onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
        - "isSuccess()"
        - "validateHeadersSentState(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean)"
        - "notifyLifecycleManagerOnError(io.netty.channel.ChannelFuture,io.netty.channel.ChannelHandlerContext)"
        - "tryFailure(java.lang.Throwable)"
        - "closeStreamLocal(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
        - "cause()"
        - "<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
        - "addFlowControlled(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
        - "hasFlowControlled(io.netty.handler.codec.http2.Http2Stream)"
        - "isServer()"
        - "unvoid()"
        - "sendHeaders(io.netty.handler.codec.http2.Http2FrameWriter,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
        - "headersSent(boolean)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:263"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
        - "addFlowControlled(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:238"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:251"
        BranchSideFuncs:
        - "onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
        - "isSuccess()"
        - "validateHeadersSentState(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean)"
        - "notifyLifecycleManagerOnError(io.netty.channel.ChannelFuture,io.netty.channel.ChannelHandlerContext)"
        - "tryFailure(java.lang.Throwable)"
        - "closeStreamLocal(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
        - "cause()"
        - "<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
        - "addFlowControlled(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
        - "hasFlowControlled(io.netty.handler.codec.http2.Http2Stream)"
        - "isServer()"
        - "unvoid()"
        - "sendHeaders(io.netty.handler.codec.http2.Http2FrameWriter,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
        - "headersSent(boolean)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:250"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:246"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:254"
        BranchSideFuncs:
        - "onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
        - "isSuccess()"
        - "validateHeadersSentState(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean)"
        - "notifyLifecycleManagerOnError(io.netty.channel.ChannelFuture,io.netty.channel.ChannelHandlerContext)"
        - "tryFailure(java.lang.Throwable)"
        - "closeStreamLocal(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
        - "cause()"
        - "<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
        - "addFlowControlled(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
        - "hasFlowControlled(io.netty.handler.codec.http2.Http2Stream)"
        - "isServer()"
        - "unvoid()"
        - "sendHeaders(io.netty.handler.codec.http2.Http2FrameWriter,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
        - "headersSent(boolean)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:253"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:254"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:261"
        BranchSideFuncs:
        - "onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
        - "isSuccess()"
        - "validateHeadersSentState(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean)"
        - "notifyLifecycleManagerOnError(io.netty.channel.ChannelFuture,io.netty.channel.ChannelHandlerContext)"
        - "tryFailure(java.lang.Throwable)"
        - "closeStreamLocal(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
        - "cause()"
        - "<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
        - "addFlowControlled(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
        - "hasFlowControlled(io.netty.handler.codec.http2.Http2Stream)"
        - "isServer()"
        - "unvoid()"
        - "sendHeaders(io.netty.handler.codec.http2.Http2FrameWriter,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
        - "headersSent(boolean)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:260"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:193,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:201,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].local()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:201,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].createStream(int,boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:203,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:203,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].mayHaveCreatedStream(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:204,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:204,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:204,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:204,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:204,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:204,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:210,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].state()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:210,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:212,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].open(boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:219,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:220,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:220,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:226,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].flowController()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:227,1"
      Dst: "[io.netty.handler.codec.http2.Http2RemoteFlowController].hasFlowControlled(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:230,1"
      Dst: "[io.netty.channel.ChannelPromise].unvoid()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:231,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:231,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].validateHeadersSentState(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:233,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].sendHeaders(io.netty.handler.codec.http2.Http2FrameWriter,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:237,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:244,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].headersSent(boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:246,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:248,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].notifyLifecycleManagerOnError(io.netty.channel.ChannelFuture,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:251,1"
      Dst: "[io.netty.handler.codec.http2.Http2LifecycleManager].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:258,1"
      Dst: "[io.netty.handler.codec.http2.Http2LifecycleManager].closeStreamLocal(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:264,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:264,1"
      Dst: "[io.netty.handler.codec.http2.Http2RemoteFlowController].addFlowControlled(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 20
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].validateHeadersSentState(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 161
    functionDepth: 3
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.EmptyHttp2Headers].status()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].status()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].status()"
    - "[io.netty.handler.codec.http.HttpStatusClass].valueOf(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].isHeadersSent()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isHeadersSent()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isTrailersSent()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http2.Http2Headers].status()"
    - "[io.netty.handler.codec.http2.Http2Stream].isHeadersSent()"
    - "[io.netty.handler.codec.http2.Http2Stream].isTrailersSent()"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    functionUses: 2
    ICount: 33
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:-1"
        BranchSideFuncs:
        - "valueOf(java.lang.CharSequence)"
        - "isTrailersSent()"
        - "status()"
        - "isHeadersSent()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:-1"
        BranchSideFuncs:
        - "valueOf(java.lang.CharSequence)"
        - "isTrailersSent()"
        - "status()"
        - "isHeadersSent()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:156"
        BranchSideFuncs:
        - "append(boolean)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "id()"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:155"
        BranchSideFuncs:
        - "valueOf(java.lang.CharSequence)"
        - "isTrailersSent()"
        - "status()"
        - "isHeadersSent()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:156"
        BranchSideFuncs:
        - "append(boolean)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "id()"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:155"
        BranchSideFuncs:
        - "valueOf(java.lang.CharSequence)"
        - "isTrailersSent()"
        - "status()"
        - "isHeadersSent()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:158"
        BranchSideFuncs:
        - "append(boolean)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "id()"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:157"
        BranchSideFuncs:
        - "append(boolean)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "id()"
        - "append(int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:160"
        BranchSideFuncs:
        - "append(boolean)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "id()"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:156,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers].status()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:156,1"
      Dst: "[io.netty.handler.codec.http.HttpStatusClass].valueOf(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:157,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].isHeadersSent()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:157,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].isTrailersSent()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:158,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:158,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:158,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:158,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:158,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:158,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:158,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http.HttpStatusClass].valueOf(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.HttpStatusClass"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 88
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.HttpStatusClass"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[io.netty.handler.codec.http.HttpStatusClass].digit(char)"
    - "[io.netty.handler.codec.http.HttpStatusClass].isDigit(char)"
    - "[io.netty.handler.codec.http.HttpStatusClass].valueOf(int)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 2
    ICount: 21
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpStatusClass:82"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:87"
        BranchSideFuncs:
        - "isDigit(char)"
        - "valueOf(int)"
        - "digit(char)"
        - "charAt(int)"
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:86"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpStatusClass:82"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:87"
        BranchSideFuncs:
        - "isDigit(char)"
        - "valueOf(int)"
        - "digit(char)"
        - "charAt(int)"
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:86"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpStatusClass:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:82"
        BranchSideFuncs:
        - "isDigit(char)"
        - "valueOf(int)"
        - "digit(char)"
        - "charAt(int)"
    - Branch String: "io.netty.handler.codec.http.HttpStatusClass:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:82"
        BranchSideFuncs:
        - "isDigit(char)"
        - "valueOf(int)"
        - "digit(char)"
        - "charAt(int)"
    - Branch String: "io.netty.handler.codec.http.HttpStatusClass:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:82"
        BranchSideFuncs:
        - "isDigit(char)"
        - "valueOf(int)"
        - "digit(char)"
        - "charAt(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpStatusClass:82,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http.HttpStatusClass:83,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.http.HttpStatusClass:84,1"
      Dst: "[io.netty.handler.codec.http.HttpStatusClass].isDigit(char)"
    - Src: "io.netty.handler.codec.http.HttpStatusClass:84,1"
      Dst: "[io.netty.handler.codec.http.HttpStatusClass].digit(char)"
    - Src: "io.netty.handler.codec.http.HttpStatusClass:84,1"
      Dst: "[io.netty.handler.codec.http.HttpStatusClass].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.HttpStatusClass].isDigit(char)"
    functionSourceFile: "io.netty.handler.codec.http.HttpStatusClass"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpStatusClass:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:94"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpStatusClass:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:94"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpStatusClass].digit(char)"
    functionSourceFile: "io.netty.handler.codec.http.HttpStatusClass"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpStatusClass].valueOf(int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpStatusClass"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 75
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.HttpStatusClass"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpStatusClass].contains(int)"
    - "[io.netty.handler.codec.http.HttpStatusClass:io.netty.handler.codec.http.HttpStatusClass$1].contains(int)"
    functionUses: 3
    ICount: 28
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpStatusClass:59"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:62"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:61"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpStatusClass:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:65"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:64"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpStatusClass:65"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:68"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:67"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpStatusClass:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:71"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:70"
        BranchSideFuncs:
        - "contains(int)"
    - Branch String: "io.netty.handler.codec.http.HttpStatusClass:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:74"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpStatusClass:59,1"
      Dst: "[io.netty.handler.codec.http.HttpStatusClass].contains(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpStatusClass].contains(int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpStatusClass"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpStatusClass:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpStatusClass:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass:111"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].sendHeaders(io.netty.handler.codec.http2.Http2FrameWriter,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 179
    functionLinenumberEnd: 185
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 11
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameWriter"
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "boolean"
    - "int"
    - "short"
    - "boolean"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 16
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:180"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:184"
        BranchSideFuncs:
        - "writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:183"
        BranchSideFuncs:
        - "writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:181,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:184,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].notifyLifecycleManagerOnError(io.netty.channel.ChannelFuture,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 529
    functionLinenumberEnd: 540
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 7
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:530,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:530,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders"
    linkageType: ""
    functionLinenumber: 554
    functionLinenumberEnd: 563
    functionDepth: 0
    returnType: "void"
    argCount: 10
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "boolean"
    - "int"
    - "short"
    - "boolean"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledBase].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.handler.codec.http2.Http2Stream,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.VoidChannelPromise].unvoid()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].unvoid()"
    - "[io.netty.channel.DefaultChannelPromise].unvoid()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].unvoid()"
    - "[io.netty.channel.ChannelPromise].unvoid()"
    functionUses: 1
    ICount: 20
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:556,1"
      Dst: "[io.netty.channel.ChannelPromise].unvoid()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:556,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledBase].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder,io.netty.handler.codec.http2.Http2Stream,int,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 9
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "short"
    - "boolean"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeHeaders0(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 4
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:167,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeHeaders0(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writePriority(io.netty.channel.ChannelHandlerContext,int,int,short,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 278
    functionLinenumberEnd: 280
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 6
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    - "short"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writePriority(io.netty.channel.ChannelHandlerContext,int,int,short,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writePriority(io.netty.channel.ChannelHandlerContext,int,int,short,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writePriority(io.netty.channel.ChannelHandlerContext,int,int,short,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writePriority(io.netty.channel.ChannelHandlerContext,int,int,short,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writePriority(io.netty.channel.ChannelHandlerContext,int,int,short,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 4
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:279,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writePriority(io.netty.channel.ChannelHandlerContext,int,int,short,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 285
    functionLinenumberEnd: 287
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].resetStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2LifecycleManager].resetStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    functionUses: 5
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:286,1"
      Dst: "[io.netty.handler.codec.http2.Http2LifecycleManager].resetStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 291
    functionLinenumberEnd: 303
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Settings"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentLinkedQueue].add(java.lang.Object)"
    - "[java.util.AbstractQueue].add(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].add(java.lang.Object)"
    - "[java.util.ArrayDeque].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Settings].pushEnabled()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].isServer()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    - "[java.util.Queue].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    functionUses: 5
    ICount: 22
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:295"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:300"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:299"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:295"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:300"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:299"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:292,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:294,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].pushEnabled()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:295,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:296,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:299,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:302,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeSettingsAck(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 333
    functionDepth: 11
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeSettingsAck(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeSettingsAck(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2ControlFrameLimitEncoder].writeSettingsAck(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeSettingsAck(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeSettingsAck(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].<init>(io.netty.channel.ChannelPromise,io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].newPromise()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].doneAllocatingPromises()"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeSettingsAck(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[java.util.Queue].poll()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.handler.codec.http2.Http2LifecycleManager].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    functionUses: 6
    ICount: 34
    EdgeCount: 59
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:307"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:310"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:309"
        BranchSideFuncs:
        - "poll()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:311"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:315"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:314"
        BranchSideFuncs:
        - "newPromise()"
        - "setFailure(java.lang.Throwable)"
        - "channel()"
        - "setSuccess()"
        - "<init>(io.netty.channel.ChannelPromise,io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
        - "onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
        - "writeSettingsAck(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
        - "remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
        - "executor()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:308,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeSettingsAck(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:310,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:312,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:312,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:315,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:316,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:316,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].<init>(io.netty.channel.ChannelPromise,io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:320,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].newPromise()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:326,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:327,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:330,1"
      Dst: "[io.netty.handler.codec.http2.Http2LifecycleManager].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:332,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].doneAllocatingPromises()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].<init>(io.netty.channel.ChannelPromise,io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator"
    linkageType: ""
    functionLinenumber: 268
    functionLinenumberEnd: 273
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelPromise"
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPromise].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[java.util.concurrent.Future].isDone()"
    functionUses: 7
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:270"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:271"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:270"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:270"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:269"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:268"
        BranchSideFuncs:
        - "<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
        - "<init>()"
        - "isDone()"
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:270"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:271"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:270"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:269,1"
      Dst: "[io.netty.channel.DefaultChannelPromise].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:270,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:270,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].newPromise()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator"
    linkageType: ""
    functionLinenumber: 279
    functionLinenumberEnd: 283
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    functionUses: 27
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:280"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:281"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:280"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:280"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:281"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:280"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:280,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].doneAllocatingPromises()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 298
    functionDepth: 10
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setPromise()"
    functionUses: 17
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:291"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:297"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:296"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:293"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:294"
        BranchSideFuncs:
        - "setPromise()"
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:293"
        BranchSideFuncs:
        - "setPromise()"
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:293"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:297"
        BranchSideFuncs:
        - "setPromise()"
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:296"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:294,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setPromise()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setPromise()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator"
    linkageType: ""
    functionLinenumber: 370
    functionLinenumberEnd: 377
    functionDepth: 9
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Void)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 3
    ICount: 13
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:371"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:375"
        BranchSideFuncs:
        - "setSuccess(java.lang.Void)"
        - "setSuccess()"
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:374"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:372,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:373,1"
      Dst: "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Void)"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:375,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:376,1"
      Dst: "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Void)"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionDepth: 8
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "java.lang.Void"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPromise:78,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 100
    functionDepth: 7
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess0(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 44
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:96"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:99"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:98"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:96,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].setSuccess0(java.lang.Object)"
    - Src: "io.netty.util.concurrent.DefaultPromise:99,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.concurrent.DefaultPromise:99,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultPromise:99,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.util.concurrent.DefaultPromise:99,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.concurrent.DefaultPromise:99,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionDepth: 8
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    functionUses: 131
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPromise:89,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 113
    functionDepth: 7
    returnType: "io.netty.util.concurrent.Promise<V>"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setFailure0(java.lang.Throwable)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 33
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:109"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:111"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:109,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].setFailure0(java.lang.Throwable)"
    - Src: "io.netty.util.concurrent.DefaultPromise:112,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.concurrent.DefaultPromise:112,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultPromise:112,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.util.concurrent.DefaultPromise:112,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.concurrent.DefaultPromise:112,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].setFailure0(java.lang.Throwable)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 608
    functionLinenumberEnd: 610
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise$CauseHolder].<init>(java.lang.Throwable)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].setValue0(java.lang.Object)"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:609,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultPromise:609,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise$CauseHolder].<init>(java.lang.Throwable)"
    - Src: "io.netty.util.concurrent.DefaultPromise:609,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].setValue0(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise$CauseHolder].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise$CauseHolder"
    linkageType: ""
    functionLinenumber: 833
    functionLinenumberEnd: 837
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise$CauseHolder:834,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writePing(io.netty.channel.ChannelHandlerContext,boolean,long,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 336
    functionLinenumberEnd: 338
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "boolean"
    - "long"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writePing(io.netty.channel.ChannelHandlerContext,boolean,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writePing(io.netty.channel.ChannelHandlerContext,boolean,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2ControlFrameLimitEncoder].writePing(io.netty.channel.ChannelHandlerContext,boolean,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writePing(io.netty.channel.ChannelHandlerContext,boolean,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writePing(io.netty.channel.ChannelHandlerContext,boolean,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writePing(io.netty.channel.ChannelHandlerContext,boolean,long,io.netty.channel.ChannelPromise)"
    functionUses: 5
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:337,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writePing(io.netty.channel.ChannelHandlerContext,boolean,long,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writePushPromise(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 343
    functionLinenumberEnd: 374
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 6
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].goAwayReceived()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].requireStream(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].local()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].reservePushStream(int,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].unvoid()"
    - "[io.netty.channel.DefaultChannelPromise].unvoid()"
    - "[io.netty.channel.VoidChannelPromise].unvoid()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].unvoid()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writePushPromise(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writePushPromise(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writePushPromise(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writePushPromise(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].pushPromiseSent()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].pushPromiseSent()"
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].notifyLifecycleManagerOnError(io.netty.channel.ChannelFuture,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2Connection].goAwayReceived()"
    - "[io.netty.handler.codec.http2.Http2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].reservePushStream(int,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.channel.ChannelPromise].unvoid()"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writePushPromise(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.handler.codec.http2.Http2Stream].pushPromiseSent()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.handler.codec.http2.Http2LifecycleManager].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 5
    ICount: 37
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:344"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:348"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:347"
        BranchSideFuncs:
        - "local()"
        - "unvoid()"
        - "requireStream(int)"
        - "reservePushStream(int,io.netty.handler.codec.http2.Http2Stream)"
        - "writePushPromise(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int,io.netty.channel.ChannelPromise)"
        - "cause()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:357"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:367"
        BranchSideFuncs:
        - "local()"
        - "onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
        - "unvoid()"
        - "pushPromiseSent()"
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "requireStream(int)"
        - "reservePushStream(int,io.netty.handler.codec.http2.Http2Stream)"
        - "isSuccess()"
        - "notifyLifecycleManagerOnError(io.netty.channel.ChannelFuture,io.netty.channel.ChannelHandlerContext)"
        - "writePushPromise(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int,io.netty.channel.ChannelPromise)"
        - "tryFailure(java.lang.Throwable)"
        - "cause()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:366"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:362"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:369"
        BranchSideFuncs:
        - "local()"
        - "onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
        - "unvoid()"
        - "pushPromiseSent()"
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "requireStream(int)"
        - "reservePushStream(int,io.netty.handler.codec.http2.Http2Stream)"
        - "isSuccess()"
        - "notifyLifecycleManagerOnError(io.netty.channel.ChannelFuture,io.netty.channel.ChannelHandlerContext)"
        - "writePushPromise(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int,io.netty.channel.ChannelPromise)"
        - "tryFailure(java.lang.Throwable)"
        - "cause()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:368"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:344,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].goAwayReceived()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:345,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:348,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].requireStream(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:350,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].local()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:350,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].reservePushStream(int,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:352,1"
      Dst: "[io.netty.channel.ChannelPromise].unvoid()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:353,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writePushPromise(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:356,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:360,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].pushPromiseSent()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:362,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:364,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].notifyLifecycleManagerOnError(io.netty.channel.ChannelFuture,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:367,1"
      Dst: "[io.netty.handler.codec.http2.Http2LifecycleManager].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:372,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeGoAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 379
    functionLinenumberEnd: 381
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].goAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2LifecycleManager].goAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:380,1"
      Dst: "[io.netty.handler.codec.http2.Http2LifecycleManager].goAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeWindowUpdate(io.netty.channel.ChannelHandlerContext,int,int,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 385
    functionLinenumberEnd: 387
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 3
    ICount: 9
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:386,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:386,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 392
    functionLinenumberEnd: 394
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 6
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "byte"
    - "int"
    - "io.netty.handler.codec.http2.Http2Flags"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    functionUses: 4
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:393,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].close()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 397
    functionLinenumberEnd: 400
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].close()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].close()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].close()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].close()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].close()"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].close()"
    functionUses: 5
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:398,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].pollSentSettings()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 402
    functionLinenumberEnd: 404
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Settings"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[java.util.Queue].poll()"
    functionUses: 2
    ICount: 5
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:403,1"
      Dst: "[java.util.Queue].poll()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].consumeReceivedSettings(io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 426
    functionLinenumberEnd: 432
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].<init>(int)"
    - "[java.util.concurrent.ConcurrentLinkedQueue].add(java.lang.Object)"
    - "[java.util.AbstractQueue].add(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].add(java.lang.Object)"
    - "[java.util.ArrayDeque].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].add(java.lang.Object)"
    - "[java.util.Queue].add(java.lang.Object)"
    functionUses: 2
    ICount: 10
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:427"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:430"
        BranchSideFuncs:
        - "<init>(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:429"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:428,1"
      Dst: "[java.util.ArrayDeque].<init>(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:430,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$100(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Connection"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$200(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 4
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].validateHeadersSentState(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:43,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].validateHeadersSentState(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$300(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameWriter"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$400(io.netty.handler.codec.http2.Http2FrameWriter,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 11
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameWriter"
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "boolean"
    - "int"
    - "short"
    - "boolean"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].sendHeaders(io.netty.handler.codec.http2.Http2FrameWriter,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder:43,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].sendHeaders(io.netty.handler.codec.http2.Http2FrameWriter,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.search.BitapSearchProcessorFactory].<init>(byte[])"
    functionSourceFile: "io.netty.buffer.search.BitapSearchProcessorFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.search.AbstractSearchProcessorFactory].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.search.BitapSearchProcessorFactory:56"
      Branch Sides:
      - BranchSide: "io.netty.buffer.search.BitapSearchProcessorFactory:60"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.search.BitapSearchProcessorFactory:59"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.search.BitapSearchProcessorFactory:61"
      Branch Sides:
      - BranchSide: "io.netty.buffer.search.BitapSearchProcessorFactory:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.search.BitapSearchProcessorFactory:55,1"
      Dst: "[io.netty.buffer.search.AbstractSearchProcessorFactory].<init>()"
    - Src: "io.netty.buffer.search.BitapSearchProcessorFactory:57,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.search.BitapSearchProcessorFactory:57,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.search.BitapSearchProcessorFactory:57,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.search.BitapSearchProcessorFactory:57,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.search.BitapSearchProcessorFactory:57,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.search.BitapSearchProcessorFactory].newSearchProcessor()"
    functionSourceFile: "io.netty.buffer.search.BitapSearchProcessorFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.search.BitapSearchProcessorFactory$Processor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.search.BitapSearchProcessorFactory$Processor].<init>(long[],long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.search.BitapSearchProcessorFactory:74,1"
      Dst: "[io.netty.buffer.search.BitapSearchProcessorFactory$Processor].<init>(long[],long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.search.BitapSearchProcessorFactory$Processor].<init>(long[],long)"
    functionSourceFile: "io.netty.buffer.search.BitapSearchProcessorFactory$Processor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long[]"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.search.BitapSearchProcessorFactory$Processor:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler,io.netty.channel.ChannelPromise,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler"
    - "io.netty.channel.ChannelPromise"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.HttpRequest"
    - "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1:98,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 114
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.FailedChannelFuture:io.netty.channel.SucceededChannelFuture:io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].trySuccess()"
    - "[io.netty.channel.DefaultChannelPromise].trySuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].trySuccess()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$HandshakeComplete].<init>(java.lang.String,io.netty.handler.codec.http.HttpHeaders,java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].selectedSubprotocol()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].uri()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].uri()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].uri()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].trySuccess()"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpRequest].uri()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 27
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1:105"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
        - "tryFailure(java.lang.Throwable)"
        - "cause()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1:104"
        BranchSideFuncs:
        - "fireUserEventTriggered(java.lang.Object)"
        - "trySuccess()"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1:101,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1:102,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1:102,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1:103,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1:105,1"
      Dst: "[io.netty.channel.ChannelPromise].trySuccess()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1:107,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1:111,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].uri()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1:111,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1:111,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].selectedSubprotocol()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1:111,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$HandshakeComplete].<init>(java.lang.String,io.netty.handler.codec.http.HttpHeaders,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$HandshakeComplete].<init>(java.lang.String,io.netty.handler.codec.http.HttpHeaders,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$HandshakeComplete"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$HandshakeComplete:83,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1:98,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.IntegerUnixChannelOption].<init>(java.lang.String,int,int)"
    functionSourceFile: "io.netty.channel.unix.IntegerUnixChannelOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.GenericUnixChannelOption].<init>(java.lang.String,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.IntegerUnixChannelOption:30,1"
      Dst: "[io.netty.channel.unix.GenericUnixChannelOption].<init>(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].<init>(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].<init>(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:32,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].<init>(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].initLength(int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].length()"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].capacity()"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 67
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionUses: 19
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].nioBuffers(int,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "java.nio.ByteBuffer[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffers(int,int)"
    functionUses: 19
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffers(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].nioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffer(int,int)"
    functionUses: 20
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    functionUses: 45
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionUses: 8
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    functionUses: 8
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionUses: 8
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionUses: 10
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 20
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].setBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    functionUses: 13
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setLongLE(int,long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setLongLE(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].setLong(int,long)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setLong(int,long)"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setIntLE(int,int)"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setIntLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].setInt(int,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    functionUses: 26
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMediumLE(int,int)"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMediumLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMedium(int,int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShortLE(int,int)"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShortLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].setShort(int,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShort(int,int)"
    functionUses: 18
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].getCharSequence(int,int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getCharSequence(int,int,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getCharSequence(int,int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].setByte(int,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    functionUses: 65
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].getBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    functionUses: 17
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 15
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].slice(int,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].slice(int,int)"
    functionUses: 22
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].slice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].copy(int,int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].copy(int,int)"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].copy(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].duplicate()"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].duplicate()"
    functionUses: 23
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].getLongLE(int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLongLE(int)"
    functionUses: 13
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLongLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].getLong(int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLong(int)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].getIntLE(int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getIntLE(int)"
    functionUses: 14
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].getInt(int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getInt(int)"
    functionUses: 25
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMediumLE(int)"
    functionUses: 14
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMedium(int)"
    functionUses: 15
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].getShortLE(int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShortLE(int)"
    functionUses: 13
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].getShort(int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShort(int)"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    functionUses: 136
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    functionUses: 38
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    functionUses: 39
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    functionUses: 58
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].array()"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    functionUses: 63
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].hasArray()"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    functionUses: 46
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].capacity(int)"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].capacity(int)"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].capacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].isDirect()"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].isDirect()"
    functionUses: 17
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].isDirect()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].order()"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "java.nio.ByteOrder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    functionUses: 29
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].alloc()"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBufAllocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].alloc()"
    functionUses: 26
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].alloc()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SlicedByteBuf].unwrap()"
    functionSourceFile: "io.netty.buffer.SlicedByteBuf"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].unwrap()"
    functionUses: 85
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SlicedByteBuf:26,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].unwrap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent$3].<init>()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent$3"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent$3:145,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent$3].current()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent$3"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 5
    returnType: "java.util.Random"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ThreadLocalRandom].current()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent$3:148,1"
      Dst: "[io.netty.util.internal.ThreadLocalRandom].current()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadLocalRandom].current()"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 268
    functionDepth: 4
    returnType: "io.netty.util.internal.ThreadLocalRandom"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - "[io.netty.util.internal.InternalThreadLocalMap].random()"
    functionUses: 1
    ICount: 3
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadLocalRandom:267,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - Src: "io.netty.util.internal.ThreadLocalRandom:267,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].random()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].random()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 274
    functionLinenumberEnd: 280
    functionDepth: 3
    returnType: "io.netty.util.internal.ThreadLocalRandom"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ThreadLocalRandom].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:276"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:279"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:277,1"
      Dst: "[io.netty.util.internal.ThreadLocalRandom].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.ThreadLocalRandom].<init>()"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom"
    linkageType: ""
    functionLinenumber: 256
    functionLinenumberEnd: 260
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Random].<init>(long)"
    - "[io.netty.util.internal.ThreadLocalRandom].newSeed()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadLocalRandom:257,1"
      Dst: "[io.netty.util.internal.ThreadLocalRandom].newSeed()"
    - Src: "io.netty.util.internal.ThreadLocalRandom:257,1"
      Dst: "[java.util.Random].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadLocalRandom].newSeed()"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 220
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].get()"
    - "[io.netty.util.internal.ThreadLocalRandom].getInitialSeedUniquifier()"
    - "[java.util.concurrent.atomic.AtomicLong].compareAndSet(long,long)"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Long].valueOf(long)"
    - "[java.util.concurrent.TimeUnit].toMillis(long)"
    - "[java.lang.System].nanoTime()"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    functionUses: 1
    ICount: 43
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:201"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:199"
        BranchSideFuncs:
        - "getInitialSeedUniquifier()"
        - "get()"
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:206"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:219"
        BranchSideFuncs:
        - "isDebugEnabled()"
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:218"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:207"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:217"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:216"
        BranchSideFuncs:
        - "nanoTime()"
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:207"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:217"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:216"
        BranchSideFuncs:
        - "nanoTime()"
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:208"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:213"
        BranchSideFuncs:
        - "debug(java.lang.String)"
        - "format(java.lang.String,java.lang.Object[])"
        - "valueOf(long)"
    Callsites:
    - Src: "io.netty.util.internal.ThreadLocalRandom:200,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].get()"
    - Src: "io.netty.util.internal.ThreadLocalRandom:201,1"
      Dst: "[io.netty.util.internal.ThreadLocalRandom].getInitialSeedUniquifier()"
    - Src: "io.netty.util.internal.ThreadLocalRandom:206,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].compareAndSet(long,long)"
    - Src: "io.netty.util.internal.ThreadLocalRandom:207,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.util.internal.ThreadLocalRandom:211,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.util.internal.ThreadLocalRandom:212,1"
      Dst: "[java.util.concurrent.TimeUnit].toMillis(long)"
    - Src: "io.netty.util.internal.ThreadLocalRandom:209,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.util.internal.ThreadLocalRandom:209,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - Src: "io.netty.util.internal.ThreadLocalRandom:217,1"
      Dst: "[java.lang.System].nanoTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[io.netty.util.internal.ThreadLocalRandom].getInitialSeedUniquifier()"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 196
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.TimeUnit].toNanos(long)"
    - "[java.lang.System].nanoTime()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll(long,java.util.concurrent.TimeUnit)"
    - "[java.util.concurrent.LinkedBlockingQueue].poll(long,java.util.concurrent.TimeUnit)"
    - "[java.lang.Long].longValue()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String)"
    - "[java.lang.Thread].interrupt()"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.Long].reverse(long)"
    - "[java.lang.Thread].currentThread()"
    - "[java.util.Queue].poll()"
    - "[java.util.concurrent.BlockingQueue].poll(long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    functionUses: 1
    ICount: 67
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:131"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:135"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:134"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:137"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:143"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:142"
        BranchSideFuncs:
        - "toNanos(long)"
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:149"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:152"
        BranchSideFuncs:
        - "poll()"
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:151"
        BranchSideFuncs:
        - "poll(long,java.util.concurrent.TimeUnit)"
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:155"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:163"
        BranchSideFuncs:
        - "longValue()"
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:162"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:165"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:173"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Object)"
        - "valueOf(long)"
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:181"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:190"
        BranchSideFuncs:
        - "nanoTime()"
        - "warn(java.lang.String,java.lang.Object)"
        - "currentThread()"
        - "reverse(long)"
        - "warn(java.lang.String)"
        - "poll(long,java.util.concurrent.TimeUnit)"
        - "longValue()"
        - "poll()"
        - "interrupt()"
        - "valueOf(long)"
        - "toNanos(long)"
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:189"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:190"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:194"
        BranchSideFuncs:
        - "nanoTime()"
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadLocalRandom:143,1"
      Dst: "[java.util.concurrent.TimeUnit].toNanos(long)"
    - Src: "io.netty.util.internal.ThreadLocalRandom:146,1"
      Dst: "[java.lang.System].nanoTime()"
    - Src: "io.netty.util.internal.ThreadLocalRandom:150,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.util.internal.ThreadLocalRandom:152,1"
      Dst: "[java.util.concurrent.BlockingQueue].poll(long,java.util.concurrent.TimeUnit)"
    - Src: "io.netty.util.internal.ThreadLocalRandom:156,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "io.netty.util.internal.ThreadLocalRandom:161,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String)"
    - Src: "io.netty.util.internal.ThreadLocalRandom:166,1"
      Dst: "[java.lang.Thread].interrupt()"
    - Src: "io.netty.util.internal.ThreadLocalRandom:169,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.util.internal.ThreadLocalRandom:167,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.ThreadLocalRandom:177,1"
      Dst: "[java.lang.Long].reverse(long)"
    - Src: "io.netty.util.internal.ThreadLocalRandom:183,1"
      Dst: "[java.lang.Thread].currentThread()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].<init>(io.netty.channel.AbstractChannel$AbstractUnsafe)"
    functionSourceFile: "io.netty.channel.AbstractChannel$AbstractUnsafe$3"
    linkageType: ""
    functionLinenumber: 601
    functionLinenumberEnd: 603
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannel$AbstractUnsafe"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$3:602,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    functionSourceFile: "io.netty.channel.AbstractChannel$AbstractUnsafe$3"
    linkageType: ""
    functionLinenumber: 604
    functionLinenumberEnd: 607
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].access$500(io.netty.channel.AbstractChannel)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelInactive()"
    functionUses: 49
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$3:605,1"
      Dst: "[io.netty.channel.AbstractChannel].access$500(io.netty.channel.AbstractChannel)"
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$3:605,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].fireChannelInactive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.LimitingByteInput].<init>(org.jboss.marshalling.ByteInput,long)"
    functionSourceFile: "io.netty.handler.codec.marshalling.LimitingByteInput"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 41
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jboss.marshalling.ByteInput"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(long,java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.LimitingByteInput:37,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.marshalling.LimitingByteInput:39,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.LimitingByteInput].close()"
    functionSourceFile: "io.netty.handler.codec.marshalling.LimitingByteInput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.LimitingByteInput].available()"
    functionSourceFile: "io.netty.handler.codec.marshalling.LimitingByteInput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jboss.marshalling.ByteInput].available()"
    - "[io.netty.handler.codec.marshalling.LimitingByteInput].readable(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.LimitingByteInput:49,1"
      Dst: "[org.jboss.marshalling.ByteInput].available()"
    - Src: "io.netty.handler.codec.marshalling.LimitingByteInput:49,1"
      Dst: "[io.netty.handler.codec.marshalling.LimitingByteInput].readable(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.LimitingByteInput].readable(int)"
    functionSourceFile: "io.netty.handler.codec.marshalling.LimitingByteInput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(long,long)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.LimitingByteInput:94,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.LimitingByteInput].read()"
    functionSourceFile: "io.netty.handler.codec.marshalling.LimitingByteInput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.marshalling.LimitingByteInput].readable(int)"
    - "[org.jboss.marshalling.ByteInput].read()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.marshalling.LimitingByteInput:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.marshalling.LimitingByteInput:60"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.marshalling.LimitingByteInput:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.LimitingByteInput:54,1"
      Dst: "[io.netty.handler.codec.marshalling.LimitingByteInput].readable(int)"
    - Src: "io.netty.handler.codec.marshalling.LimitingByteInput:56,1"
      Dst: "[org.jboss.marshalling.ByteInput].read()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.LimitingByteInput].read(byte[])"
    functionSourceFile: "io.netty.handler.codec.marshalling.LimitingByteInput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.marshalling.LimitingByteInput].read(byte[],int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.LimitingByteInput:66,1"
      Dst: "[io.netty.handler.codec.marshalling.LimitingByteInput].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.LimitingByteInput].read(byte[],int,int)"
    functionSourceFile: "io.netty.handler.codec.marshalling.LimitingByteInput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.marshalling.LimitingByteInput].readable(int)"
    - "[org.jboss.marshalling.ByteInput].read(byte[],int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.marshalling.LimitingByteInput:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.marshalling.LimitingByteInput:77"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.marshalling.LimitingByteInput:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.LimitingByteInput:71,1"
      Dst: "[io.netty.handler.codec.marshalling.LimitingByteInput].readable(int)"
    - Src: "io.netty.handler.codec.marshalling.LimitingByteInput:73,1"
      Dst: "[org.jboss.marshalling.ByteInput].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.LimitingByteInput].skip(long)"
    functionSourceFile: "io.netty.handler.codec.marshalling.LimitingByteInput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.marshalling.LimitingByteInput].readable(int)"
    - "[org.jboss.marshalling.ByteInput].skip(long)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.marshalling.LimitingByteInput:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.marshalling.LimitingByteInput:89"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.marshalling.LimitingByteInput:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.LimitingByteInput:83,1"
      Dst: "[io.netty.handler.codec.marshalling.LimitingByteInput].readable(int)"
    - Src: "io.netty.handler.codec.marshalling.LimitingByteInput:85,1"
      Dst: "[org.jboss.marshalling.ByteInput].skip(long)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.MarshallingDecoder].<init>(io.netty.handler.codec.marshalling.UnmarshallerProvider)"
    functionSourceFile: "io.netty.handler.codec.marshalling.MarshallingDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.marshalling.UnmarshallerProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.marshalling.MarshallingDecoder].<init>(io.netty.handler.codec.marshalling.UnmarshallerProvider,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.MarshallingDecoder:45,1"
      Dst: "[io.netty.handler.codec.marshalling.MarshallingDecoder].<init>(io.netty.handler.codec.marshalling.UnmarshallerProvider,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.MarshallingDecoder].<init>(io.netty.handler.codec.marshalling.UnmarshallerProvider,int)"
    functionSourceFile: "io.netty.handler.codec.marshalling.MarshallingDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.marshalling.UnmarshallerProvider"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].<init>(int,int,int,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.MarshallingDecoder:57,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].<init>(int,int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.MarshallingDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.marshalling.MarshallingDecoder"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 81
    functionDepth: 7
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.marshalling.ContextBoundUnmarshallerProvider].getUnmarshaller(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.marshalling.ThreadLocalUnmarshallerProvider].getUnmarshaller(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.marshalling.DefaultUnmarshallerProvider].getUnmarshaller(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.marshalling.ChannelBufferByteInput].<init>(io.netty.buffer.ByteBuf)"
    - "[org.jboss.marshalling.Unmarshaller].start(org.jboss.marshalling.ByteInput)"
    - "[org.jboss.marshalling.Unmarshaller].readObject()"
    - "[org.jboss.marshalling.Unmarshaller].finish()"
    - "[io.netty.handler.codec.marshalling.UnmarshallerProvider].getUnmarshaller(io.netty.channel.ChannelHandlerContext)"
    - "[org.jboss.marshalling.Unmarshaller].close()"
    functionUses: 1
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.marshalling.MarshallingDecoder:64"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.marshalling.MarshallingDecoder:68"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.marshalling.MarshallingDecoder:67"
        BranchSideFuncs:
        - "readObject()"
        - "<init>(io.netty.buffer.ByteBuf)"
        - "getUnmarshaller(io.netty.channel.ChannelHandlerContext)"
        - "start(org.jboss.marshalling.ByteInput)"
        - "finish()"
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.MarshallingDecoder:63,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.marshalling.MarshallingDecoder:68,1"
      Dst: "[io.netty.handler.codec.marshalling.UnmarshallerProvider].getUnmarshaller(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.marshalling.MarshallingDecoder:69,1"
      Dst: "[io.netty.handler.codec.marshalling.ChannelBufferByteInput].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.marshalling.MarshallingDecoder:72,1"
      Dst: "[org.jboss.marshalling.Unmarshaller].start(org.jboss.marshalling.ByteInput)"
    - Src: "io.netty.handler.codec.marshalling.MarshallingDecoder:73,1"
      Dst: "[org.jboss.marshalling.Unmarshaller].readObject()"
    - Src: "io.netty.handler.codec.marshalling.MarshallingDecoder:74,1"
      Dst: "[org.jboss.marshalling.Unmarshaller].finish()"
    - Src: "io.netty.handler.codec.marshalling.MarshallingDecoder:79,1"
      Dst: "[org.jboss.marshalling.Unmarshaller].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ChannelBufferByteInput].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.marshalling.ChannelBufferByteInput"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.MarshallingDecoder].extractFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.marshalling.MarshallingDecoder"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].slice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].slice(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].slice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].slice(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.ByteBuf].slice(int,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.MarshallingDecoder:85,1"
      Dst: "[io.netty.buffer.ByteBuf].slice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder$1].<init>(io.netty.handler.codec.compression.JZlibEncoder,io.netty.channel.ChannelPromise,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.compression.JZlibEncoder"
    - "io.netty.channel.ChannelPromise"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder$1:237,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder$1"
    linkageType: ""
    functionLinenumber: 239
    functionLinenumberEnd: 243
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JZlibEncoder].access$000(io.netty.handler.codec.compression.JZlibEncoder)"
    - "[io.netty.handler.codec.compression.JZlibEncoder].access$100(io.netty.handler.codec.compression.JZlibEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.PromiseNotifier].cascade(io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    functionUses: 49
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder$1:240,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].access$000(io.netty.handler.codec.compression.JZlibEncoder)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder$1:240,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].access$100(io.netty.handler.codec.compression.JZlibEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder$1:241,1"
      Dst: "[io.netty.util.concurrent.PromiseNotifier].cascade(io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].access$000(io.netty.handler.codec.compression.JZlibEncoder)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 1
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.compression.JZlibEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JZlibEncoder].ctx()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:36,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].ctx()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].ctx()"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: 248
    functionLinenumberEnd: 254
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JZlibEncoder:250"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:253"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:252"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:251,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].access$100(io.netty.handler.codec.compression.JZlibEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.compression.JZlibEncoder"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JZlibEncoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:36,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: 345
    functionLinenumberEnd: 388
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[com.jcraft.jzlib.Deflater].deflate(int)"
    - "[io.netty.handler.codec.compression.ZlibUtil].deflaterException(com.jcraft.jzlib.Deflater,java.lang.String,int)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[],int,int)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[com.jcraft.jzlib.Deflater].deflateEnd()"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 62
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JZlibEncoder:346"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:350"
        BranchSideFuncs:
        - "setSuccess()"
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:349"
        BranchSideFuncs:
        - "deflate(int)"
    - Branch String: "io.netty.handler.codec.compression.JZlibEncoder:367"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:370"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "deflaterException(com.jcraft.jzlib.Deflater,java.lang.String,int)"
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:369"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JZlibEncoder:367"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:370"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "deflaterException(com.jcraft.jzlib.Deflater,java.lang.String,int)"
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:369"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JZlibEncoder:370"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:375"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "deflate(int)"
        - "wrappedBuffer(byte[],int,int)"
        - "deflaterException(com.jcraft.jzlib.Deflater,java.lang.String,int)"
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:374"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:347,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:366,1"
      Dst: "[com.jcraft.jzlib.Deflater].deflate(int)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:368,1"
      Dst: "[io.netty.handler.codec.compression.ZlibUtil].deflaterException(com.jcraft.jzlib.Deflater,java.lang.String,int)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:368,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:378,1"
      Dst: "[com.jcraft.jzlib.Deflater].deflateEnd()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:373,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[],int,int)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:387,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.PromiseNotifier].cascade(io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.util.concurrent.PromiseNotifier"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 4
    returnType: "io.netty.util.concurrent.Future"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.Future"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseNotifier].cascade(boolean,io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseNotifier:76,1"
      Dst: "[io.netty.util.concurrent.PromiseNotifier].cascade(boolean,io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.AbstractSocks5Message].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 19
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:34"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:37"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:36"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:37"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:41"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:30,1"
      Dst: "[io.netty.handler.codec.socksx.v5.AbstractSocks5Message].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:31,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:34,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:35,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].username()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].password()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].toString()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 71
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.AbstractSocksMessage].decoderResult()"
    - "[io.netty.handler.codec.DecoderResult].isSuccess()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].username()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 17
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:65"
        BranchSideFuncs:
        - "append(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:57,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:57,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:59,1"
      Dst: "[io.netty.handler.codec.socksx.AbstractSocksMessage].decoderResult()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:60,1"
      Dst: "[io.netty.handler.codec.DecoderResult].isSuccess()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:61,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:62,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:67,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].username()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest:70,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper].<init>()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper:146,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper].wrapIfNeeded(javax.net.ssl.X509TrustManager)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.X509TrustManager"
    argCount: 1
    argTypes:
    - "javax.net.ssl.X509TrustManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$TrustManagerWrapper].wrapIfNeeded(javax.net.ssl.X509TrustManager)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper:149,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$TrustManagerWrapper].wrapIfNeeded(javax.net.ssl.X509TrustManager)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper].newSSLContext()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.SSLContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLContext].getInstance(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper:159,1"
      Dst: "[javax.net.ssl.SSLContext].getInstance(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.NoSuchAlgorithmException"
      - "java.security.NoSuchProviderException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper].access$000()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "javax.net.ssl.SSLContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper].newSSLContext()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper:45,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper].newSSLContext()"
    JavaMethodInfo:
      exceptions:
      - "java.security.NoSuchAlgorithmException"
      - "java.security.NoSuchProviderException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].<init>()"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.EmptyPriorityQueue:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].instance()"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.internal.EmptyPriorityQueue"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].removeTyped(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].containsTyped(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].priorityChanged(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].size()"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].isEmpty()"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].contains(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Collections:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].emptyList()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.Collections].emptyList()"
    - "[java.util.List].iterator()"
    functionUses: 58
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.EmptyPriorityQueue:68,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.util.internal.EmptyPriorityQueue:68,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].toArray()"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].toArray(java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.EmptyPriorityQueue:78"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.EmptyPriorityQueue:81"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.EmptyPriorityQueue:80"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].add(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].remove(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].containsAll(java.util.Collection<?>)"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection<?>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].addAll(java.util.Collection<?\
      \ extends T>)"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection<? extends T>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].removeAll(java.util.Collection<?>)"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection<?>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].retainAll(java.util.Collection<?>)"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection<?>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].clear()"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].clearIgnoringIndexes()"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].equals(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.DefaultPriorityQueue:io.netty.util.internal.EmptyPriorityQueue].isEmpty()"
    - "[java.util.Collection].isEmpty()"
    functionUses: 9
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.EmptyPriorityQueue:124"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.EmptyPriorityQueue:123"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.util.internal.EmptyPriorityQueue:124"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.EmptyPriorityQueue:123"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "io.netty.util.internal.EmptyPriorityQueue:124,1"
      Dst: "[java.util.Collection].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].hashCode()"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].offer(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].remove()"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.NoSuchElementException].<init>()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.EmptyPriorityQueue:139,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 42
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].element()"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.NoSuchElementException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.EmptyPriorityQueue:149,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].peek()"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyPriorityQueue].toString()"
    functionSourceFile: "io.netty.util.internal.EmptyPriorityQueue"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getSimpleName()"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.EmptyPriorityQueue:159,1"
      Dst: "[java.lang.Class].getSimpleName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$3].<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,io.netty.channel.Channel)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$3"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.AbstractHttp2StreamChannel"
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].<init>(io.netty.channel.Channel)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$3:185,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].<init>(io.netty.channel.Channel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$3].incrementPendingOutboundBytes(long)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$3"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$200(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,long,boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$3:188,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$200(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$3].decrementPendingOutboundBytes(long)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$3"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$300(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,long,boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$3:193,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$300(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].<init>(io.netty.util.HashedWheelTimer,io.netty.util.TimerTask,long)"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.util.HashedWheelTimer"
    - "io.netty.util.TimerTask"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:645,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].timer()"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.Timer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].task()"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    linkageType: ""
    functionLinenumber: 657
    functionLinenumberEnd: 659
    functionDepth: 0
    returnType: "io.netty.util.TimerTask"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].cancel()"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].compareAndSetState(int,int)"
    - "[io.netty.util.HashedWheelTimer].access$1100(io.netty.util.HashedWheelTimer)"
    - "[java.util.Queue].add(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:664"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:670"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:669"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:664,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].compareAndSetState(int,int)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:670,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$1100(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:670,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].compareAndSetState(int,int)"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    linkageType: ""
    functionLinenumber: 683
    functionLinenumberEnd: 685
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:684,1"
      Dst: "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer].access$1100(io.netty.util.HashedWheelTimer)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "java.util.Queue"
    argCount: 1
    argTypes:
    - "io.netty.util.HashedWheelTimer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].remove()"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    linkageType: ""
    functionLinenumber: 674
    functionLinenumberEnd: 682
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer$HashedWheelBucket].remove(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
    - "[io.netty.util.HashedWheelTimer].access$1200(io.netty.util.HashedWheelTimer)"
    - "[java.util.concurrent.atomic.AtomicLong].decrementAndGet()"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:676"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:679"
        BranchSideFuncs:
        - "remove(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:678"
        BranchSideFuncs:
        - "access$1200(io.netty.util.HashedWheelTimer)"
        - "decrementAndGet()"
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:677,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelBucket].remove(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:679,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$1200(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:679,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].decrementAndGet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelBucket].remove(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelBucket"
    linkageType: ""
    functionLinenumber: 809
    functionLinenumberEnd: 837
    functionDepth: 1
    returnType: "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    argCount: 1
    argTypes:
    - "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer].access$1200(io.netty.util.HashedWheelTimer)"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].access$1400(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
    - "[java.util.concurrent.atomic.AtomicLong].decrementAndGet()"
    functionUses: 3
    ICount: 32
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelBucket:812"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:815"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:814"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelBucket:815"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:819"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:818"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelBucket:819"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:826"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelBucket:821"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:825"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:824"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelBucket:827"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:831"
        BranchSideFuncs:
        - "access$1200(io.netty.util.HashedWheelTimer)"
        - "access$1400(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
        - "decrementAndGet()"
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelBucket:835,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].access$1400(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelBucket:835,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$1200(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelBucket:835,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].decrementAndGet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].access$1400(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    linkageType: ""
    functionLinenumber: 617
    functionLinenumberEnd: 619
    functionDepth: 0
    returnType: "io.netty.util.HashedWheelTimer"
    argCount: 1
    argTypes:
    - "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer].access$1200(io.netty.util.HashedWheelTimer)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "java.util.concurrent.atomic.AtomicLong"
    argCount: 1
    argTypes:
    - "io.netty.util.HashedWheelTimer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].state()"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    linkageType: ""
    functionLinenumber: 687
    functionLinenumberEnd: 689
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].isCancelled()"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    linkageType: ""
    functionLinenumber: 692
    functionLinenumberEnd: 694
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].state()"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:693"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:692"
        BranchSideFuncs:
        - "state()"
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:693,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].state()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].isExpired()"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    linkageType: ""
    functionLinenumber: 697
    functionLinenumberEnd: 699
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].state()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:698"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:697"
        BranchSideFuncs:
        - "state()"
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:698,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].state()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].expire()"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    linkageType: ""
    functionLinenumber: 701
    functionLinenumberEnd: 715
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].compareAndSetState(int,int)"
    - "[io.netty.util.HashedWheelTimer].access$1300(io.netty.util.HashedWheelTimer)"
    - "[io.netty.util.concurrent.ThreadPerTaskExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateExecutor].execute(java.lang.Runnable)"
    - "[java.util.concurrent.ForkJoinPool].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[java.util.concurrent.ScheduledThreadPoolExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.internal.ThreadExecutorMap$1].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.AbstractEventExecutorGroup].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[java.util.concurrent.ThreadPoolExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.util.internal.logging.JdkLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isWarnEnabled()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 23
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:702"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:707"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:706"
        BranchSideFuncs:
        - "run()"
        - "warn(java.lang.String,java.lang.Throwable)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "isWarnEnabled()"
        - "execute(java.lang.Runnable)"
        - "access$1300(io.netty.util.HashedWheelTimer)"
        - "getSimpleName()"
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:709"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:714"
        BranchSideFuncs:
        - "run()"
        - "warn(java.lang.String,java.lang.Throwable)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "isWarnEnabled()"
        - "execute(java.lang.Runnable)"
        - "access$1300(io.netty.util.HashedWheelTimer)"
        - "getSimpleName()"
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:713"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:702,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].compareAndSetState(int,int)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:707,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$1300(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:707,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:709,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:710,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:710,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:710,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:710,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:710,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.HashedWheelTimer].access$1300(io.netty.util.HashedWheelTimer)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "java.util.concurrent.Executor"
    argCount: 1
    argTypes:
    - "io.netty.util.HashedWheelTimer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    linkageType: ""
    functionLinenumber: 718
    functionLinenumberEnd: 726
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.JdkLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isWarnEnabled()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.TimerTask].run(io.netty.util.Timeout)"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 50
    ICount: 19
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:721"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:725"
        BranchSideFuncs:
        - "append(char)"
        - "warn(java.lang.String,java.lang.Throwable)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "isWarnEnabled()"
        - "getSimpleName()"
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:724"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:719,1"
      Dst: "[io.netty.util.TimerTask].run(io.netty.util.Timeout)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:721,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:722,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:722,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:722,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:722,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:722,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:722,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].toString()"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    linkageType: ""
    functionLinenumber: 728
    functionLinenumberEnd: 754
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].nanoTime()"
    - "[io.netty.util.HashedWheelTimer].access$200(io.netty.util.HashedWheelTimer)"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(long)"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].isCancelled()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].task()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 36
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:736"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:739"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:738"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:739"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:743"
        BranchSideFuncs:
        - "append(long)"
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:742"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:746"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:750"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:749"
        BranchSideFuncs:
        - "append(java.lang.String)"
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:729,1"
      Dst: "[java.lang.System].nanoTime()"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:730,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$200(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:732,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:733,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:733,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:734,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:737,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:746,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].isCancelled()"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:751,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].task()"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:751,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelTimeout:753,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.HashedWheelTimer].access$200(io.netty.util.HashedWheelTimer)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.util.HashedWheelTimer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].access$900(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    linkageType: ""
    functionLinenumber: 617
    functionLinenumberEnd: 619
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyCodecUtil].<init>()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyCodecUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyCodecUtil:240,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyCodecUtil].isServerId(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyCodecUtil"
    linkageType: ""
    functionLinenumber: 284
    functionLinenumberEnd: 286
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyCodecUtil:285"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyCodecUtil:284"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyCodecUtil].validateHeaderName(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyCodecUtil"
    linkageType: ""
    functionLinenumber: 291
    functionLinenumberEnd: 314
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.lang.CharSequence,java.lang.String)"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 1
    ICount: 46
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyCodecUtil:295"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyCodecUtil:299"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyCodecUtil:298"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyCodecUtil:299"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyCodecUtil:313"
        BranchSideFuncs:
        - "charAt(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyCodecUtil:312"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyCodecUtil:301"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyCodecUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyCodecUtil:305"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyCodecUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyCodecUtil:305"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyCodecUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyCodecUtil:308"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyCodecUtil:299"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyCodecUtil:298"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyCodecUtil:292,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.lang.CharSequence,java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyCodecUtil:295,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.spdy.SpdyCodecUtil:296,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyCodecUtil:296,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyCodecUtil:296,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyCodecUtil:296,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.spdy.SpdyCodecUtil:296,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyCodecUtil:300,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.lang.CharSequence,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ObjectUtil"
    linkageType: ""
    functionLinenumber: 285
    functionLinenumberEnd: 290
    functionDepth: 1
    returnType: "java.lang.CharSequence"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.CharSequence].length()"
    functionUses: 1
    ICount: 16
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ObjectUtil:286"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectUtil:289"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.ObjectUtil:288"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectUtil:286,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:286,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.internal.ObjectUtil:287,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.ObjectUtil:287,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:287,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.ObjectUtil:287,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$3].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$3"
    linkageType: ""
    functionLinenumber: 773
    functionLinenumberEnd: 775
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$3:774,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$3].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$3"
    linkageType: ""
    functionLinenumber: 776
    functionLinenumberEnd: 779
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$1000(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$3:777,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$1000(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$1000(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 12
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].closeConnectionOnError(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:66,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].closeConnectionOnError(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].closeConnectionOnError(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 916
    functionLinenumberEnd: 921
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onConnectionError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onConnectionError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].cause()"
    functionUses: 2
    ICount: 8
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:917"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:920"
        BranchSideFuncs:
        - "onConnectionError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception)"
        - "cause()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:919"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:917,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:918,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:918,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].onConnectionError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].onConnectionError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 681
    functionLinenumberEnd: 694
    functionDepth: 10
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "boolean"
    - "java.lang.Throwable"
    - "io.netty.handler.codec.http2.Http2Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Throwable)"
    - "[java.io.InvalidClassException].getMessage()"
    - "[java.nio.file.InvalidPathException].getMessage()"
    - "[java.lang.Throwable].getMessage()"
    - "[sun.nio.fs.UnixException].getMessage()"
    - "[java.net.URISyntaxException].getMessage()"
    - "[java.util.regex.PatternSyntaxException].getMessage()"
    - "[java.nio.file.FileSystemException].getMessage()"
    - "[java.security.cert.CertificateRevokedException].getMessage()"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].goAway(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Exception,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2Exception].shutdownHint()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].doGracefulShutdown(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].newClosingChannelFutureListener(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 4
    ICount: 22
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:682"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:686"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Throwable)"
        - "getMessage()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:685"
        BranchSideFuncs:
        - "newPromise()"
        - "shutdownHint()"
        - "goAway(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Exception,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:688"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:691"
        BranchSideFuncs:
        - "doGracefulShutdown(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:690"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "newClosingChannelFutureListener(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:683,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:683,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:686,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:687,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].goAway(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Exception,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:688,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].shutdownHint()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:689,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].doGracefulShutdown(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:691,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].newClosingChannelFutureListener(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:691,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].goAway(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Exception,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 892
    functionLinenumberEnd: 905
    functionDepth: 9
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Exception"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Error].code()"
    - "[io.netty.handler.codec.http2.Http2Exception].error()"
    - "[io.netty.handler.codec.http2.Http2Exception].shutdownHint()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].lastStreamCreated()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].goAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil].toByteBuf(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].lastStreamCreated()"
    functionUses: 2
    ICount: 23
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:893"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:893"
        BranchSideFuncs:
        - "error()"
        - "code()"
        - "shutdownHint()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:892"
        BranchSideFuncs:
        - "error()"
        - "code()"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:895"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:901"
        BranchSideFuncs:
        - "lastStreamCreated()"
        - "remote()"
        - "connection()"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:895"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:901"
        BranchSideFuncs:
        - "lastStreamCreated()"
        - "remote()"
        - "connection()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:893,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].error()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:893,1"
      Dst: "[io.netty.handler.codec.http2.Http2Error].code()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:895,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].shutdownHint()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:902,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:902,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:902,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].lastStreamCreated()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:904,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].toByteBuf(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:904,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].goAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].error()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Error"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Error].code()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Error"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].shutdownHint()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Exception$ShutdownHint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Connection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].connection()"
    - "[io.netty.handler.codec.http2.Http2ConnectionEncoder].connection()"
    functionUses: 37
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:132,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionEncoder].connection()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil].toByteBuf(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 198
    functionDepth: 8
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InvalidClassException].getMessage()"
    - "[java.nio.file.InvalidPathException].getMessage()"
    - "[java.lang.Throwable].getMessage()"
    - "[sun.nio.fs.UnixException].getMessage()"
    - "[java.net.URISyntaxException].getMessage()"
    - "[java.util.regex.PatternSyntaxException].getMessage()"
    - "[java.nio.file.FileSystemException].getMessage()"
    - "[java.security.cert.CertificateRevokedException].getMessage()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.ByteBufAllocator,java.lang.CharSequence)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    functionUses: 1
    ICount: 11
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:194"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:193"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:197"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:196"
        BranchSideFuncs:
        - "getMessage()"
        - "alloc()"
        - "writeUtf8(io.netty.buffer.ByteBufAllocator,java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:193,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:197,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:197,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.ByteBufAllocator,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.ByteBufAllocator,java.lang.CharSequence)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 745
    functionLinenumberEnd: 749
    functionDepth: 7
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBufUtil].utf8MaxBytes(java.lang.CharSequence)"
    - "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:746,1"
      Dst: "[io.netty.buffer.ByteBufUtil].utf8MaxBytes(java.lang.CharSequence)"
    - Src: "io.netty.buffer.ByteBufUtil:746,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.buffer.ByteBufUtil:747,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].goAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 834
    functionLinenumberEnd: 866
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].unvoid()"
    - "[io.netty.channel.DefaultChannelPromise].unvoid()"
    - "[io.netty.channel.VoidChannelPromise].unvoid()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].unvoid()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].goAwaySent(int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].trySuccess()"
    - "[io.netty.channel.DefaultChannelPromise].trySuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].trySuccess()"
    - "[io.netty.channel.VoidChannelPromise].trySuccess()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].frameWriter()"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeGoAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeGoAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeGoAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeGoAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].processGoAwayWriteResult(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelFuture)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$5].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelPromise].unvoid()"
    - "[io.netty.handler.codec.http2.Http2Connection].goAwaySent(int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.ChannelPromise].trySuccess()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[io.netty.buffer.ByteBuf].retain()"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeGoAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 3
    ICount: 29
    EdgeCount: 69
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:838"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:847"
        BranchSideFuncs:
        - "trySuccess()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:846"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:854"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:857"
        BranchSideFuncs:
        - "processGoAwayWriteResult(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelFuture)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:856"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:835,1"
      Dst: "[io.netty.channel.ChannelPromise].unvoid()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:836,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:838,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].goAwaySent(int,long,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:839,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:840,1"
      Dst: "[io.netty.channel.ChannelPromise].trySuccess()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:845,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:851,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:852,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].frameWriter()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:852,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeGoAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:854,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:855,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].processGoAwayWriteResult(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelFuture)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:857,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$5].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:857,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].frameWriter()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 759
    functionLinenumberEnd: 761
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2FrameWriter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].encoder()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].frameWriter()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].frameWriter()"
    - "[io.netty.handler.codec.http2.Http2ConnectionEncoder].frameWriter()"
    functionUses: 3
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:760,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].encoder()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:760,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionEncoder].frameWriter()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].encoder()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].processGoAwayWriteResult(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 931
    functionLinenumberEnd: 954
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.handler.codec.http2.Http2Error].code()"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].toString(java.nio.charset.Charset)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Long].valueOf(long)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 2
    ICount: 54
    EdgeCount: 90
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:932"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:942"
        BranchSideFuncs:
        - "code()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:941"
        BranchSideFuncs:
        - "isDebugEnabled()"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:933"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:951"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:950"
        BranchSideFuncs:
        - "release()"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:934"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:938"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:942"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:947"
        BranchSideFuncs:
        - "channel()"
        - "toString(java.nio.charset.Charset)"
        - "isDebugEnabled()"
        - "debug(java.lang.String,java.lang.Object[])"
        - "valueOf(int)"
        - "valueOf(long)"
        - "cause()"
        - "close()"
        - "release()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:946"
        BranchSideFuncs:
        - "close()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:932,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:933,1"
      Dst: "[io.netty.handler.codec.http2.Http2Error].code()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:934,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:937,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:937,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:937,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:937,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:937,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:935,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:939,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:951,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$5].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$5"
    linkageType: ""
    functionLinenumber: 856
    functionLinenumberEnd: 858
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$5:857,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].doGracefulShutdown(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 503
    functionLinenumberEnd: 531
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].newClosingChannelFutureListener(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].isGracefulShutdownComplete()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].isGracefulShutdownComplete()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$1].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelFutureListener,io.netty.channel.ChannelFutureListener)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 19
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:505"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:513"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:514"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:516"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:515"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:516"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:530"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelFutureListener,io.netty.channel.ChannelFutureListener)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:529"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:504,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].newClosingChannelFutureListener(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:505,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].isGracefulShutdownComplete()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:508,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:518,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$1].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelFutureListener,io.netty.channel.ChannelFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].newClosingChannelFutureListener(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 496
    functionLinenumberEnd: 499
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFutureListener"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener].<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener].<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:498"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:496"
        BranchSideFuncs:
        - "<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise,long,java.util.concurrent.TimeUnit)"
        - "<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:498,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener].<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:498,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener].<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener].<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener"
    linkageType: ""
    functionLinenumber: 963
    functionLinenumberEnd: 969
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener:964,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener].<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener"
    linkageType: ""
    functionLinenumber: 970
    functionLinenumberEnd: 981
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    functionUses: 1
    ICount: 14
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener:971,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener:974,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener:974,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener:974,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1"
    linkageType: ""
    functionLinenumber: 973
    functionLinenumberEnd: 975
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1:974,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].isGracefulShutdownComplete()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 666
    functionLinenumberEnd: 668
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].numActiveStreams()"
    - "[io.netty.handler.codec.http2.Http2Connection].numActiveStreams()"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:667"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:666"
        BranchSideFuncs:
        - "numActiveStreams()"
        - "connection()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:667,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:667,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].numActiveStreams()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$1].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelFutureListener,io.netty.channel.ChannelFutureListener)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$1"
    linkageType: ""
    functionLinenumber: 517
    functionLinenumberEnd: 519
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    - "io.netty.channel.ChannelFutureListener"
    - "io.netty.channel.ChannelFutureListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$1:518,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$3].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$3"
    linkageType: ""
    functionLinenumber: 773
    functionLinenumberEnd: 775
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$3].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$3:774,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$3].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackEncoder$NameEntry].<init>(int,java.lang.CharSequence,int,io.netty.handler.codec.http2.HpackEncoder$NameEntry)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackEncoder$NameEntry"
    linkageType: ""
    functionLinenumber: 518
    functionLinenumberEnd: 525
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.lang.CharSequence"
    - "int"
    - "io.netty.handler.codec.http2.HpackEncoder$NameEntry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackEncoder$NameEntry:519,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackEncoder$NameEntry].unlink()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackEncoder$NameEntry"
    linkageType: ""
    functionLinenumber: 526
    functionLinenumberEnd: 529
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelDuplexHandler].<init>()"
    functionSourceFile: "io.netty.channel.ChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelDuplexHandler:29,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelDuplexHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelDuplexHandler:41,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelDuplexHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelDuplexHandler:54,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelDuplexHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelDuplexHandler:67,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelDuplexHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelDuplexHandler:79,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelDuplexHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].deregister(io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelDuplexHandler:91,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].deregister(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelDuplexHandler].read(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.ChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].read()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].read()"
    - "[io.netty.channel.ChannelHandlerContext].read()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelDuplexHandler:103,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].read()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelDuplexHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 7
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelDuplexHandler:115,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelDuplexHandler].flush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.ChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelDuplexHandler:127,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator].generate(java.lang.String,java.security.KeyPair,java.security.SecureRandom,java.util.Date,java.util.Date,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "java.lang.String[]"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.security.KeyPair"
    - "java.security.SecureRandom"
    - "java.util.Date"
    - "java.util.Date"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.KeyPair].getPrivate()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[org.bouncycastle.asn1.x500.X500Name].<init>(java.lang.String)"
    - "[java.math.BigInteger].<init>(int,java.util.Random)"
    - "[java.security.KeyPair].getPublic()"
    - "[org.bouncycastle.cert.jcajce.JcaX509v3CertificateBuilder].<init>(org.bouncycastle.asn1.x500.X500Name,java.math.BigInteger,java.util.Date,java.util.Date,org.bouncycastle.asn1.x500.X500Name,java.security.PublicKey)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[org.bouncycastle.operator.jcajce.JcaContentSignerBuilder].<init>(java.lang.String)"
    - "[org.bouncycastle.operator.jcajce.JcaContentSignerBuilder].build(java.security.PrivateKey)"
    - "[org.bouncycastle.cert.X509v3CertificateBuilder].build(org.bouncycastle.operator.ContentSigner)"
    - "[org.bouncycastle.cert.jcajce.JcaX509CertificateConverter].<init>()"
    - "[org.bouncycastle.cert.jcajce.JcaX509CertificateConverter].setProvider(java.security.Provider)"
    - "[org.bouncycastle.cert.jcajce.JcaX509CertificateConverter].getCertificate(org.bouncycastle.cert.X509CertificateHolder)"
    - "[java.security.cert.Certificate].verify(java.security.PublicKey)"
    - "[io.netty.handler.ssl.util.SelfSignedCertificate].newSelfSignedCertificate(java.lang.String,java.security.PrivateKey,java.security.cert.X509Certificate)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:47"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:46"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:47,1"
      Dst: "[java.security.KeyPair].getPrivate()"
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:50,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:50,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:50,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:50,1"
      Dst: "[org.bouncycastle.asn1.x500.X500Name].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:51,1"
      Dst: "[java.math.BigInteger].<init>(int,java.util.Random)"
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:52,1"
      Dst: "[java.security.KeyPair].getPublic()"
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:52,1"
      Dst: "[org.bouncycastle.cert.jcajce.JcaX509v3CertificateBuilder].<init>(org.bouncycastle.asn1.x500.X500Name,java.math.BigInteger,java.util.Date,java.util.Date,org.bouncycastle.asn1.x500.X500Name,java.security.PublicKey)"
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:55,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:55,1"
      Dst: "[org.bouncycastle.operator.jcajce.JcaContentSignerBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:55,1"
      Dst: "[org.bouncycastle.operator.jcajce.JcaContentSignerBuilder].build(java.security.PrivateKey)"
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:56,1"
      Dst: "[org.bouncycastle.cert.X509v3CertificateBuilder].build(org.bouncycastle.operator.ContentSigner)"
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:57,1"
      Dst: "[org.bouncycastle.cert.jcajce.JcaX509CertificateConverter].<init>()"
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:57,1"
      Dst: "[org.bouncycastle.cert.jcajce.JcaX509CertificateConverter].setProvider(java.security.Provider)"
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:57,1"
      Dst: "[org.bouncycastle.cert.jcajce.JcaX509CertificateConverter].getCertificate(org.bouncycastle.cert.X509CertificateHolder)"
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:58,1"
      Dst: "[java.security.cert.Certificate].verify(java.security.PublicKey)"
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:60,1"
      Dst: "[io.netty.handler.ssl.util.SelfSignedCertificate].newSelfSignedCertificate(java.lang.String,java.security.PrivateKey,java.security.cert.X509Certificate)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator].<init>()"
    functionSourceFile: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator:63,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    - "io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyFrameDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:87,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    - "io.netty.handler.codec.spdy.SpdyFrameDecoderDelegate"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.spdy.SpdyVersion].getVersion()"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:93,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:94,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:94,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyVersion].getVersion()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder:96,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZstdEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.ZstdEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ZstdEncoder].<init>(int,int,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:51,1"
      Dst: "[io.netty.handler.codec.compression.ZstdEncoder].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZstdEncoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.compression.ZstdEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ZstdEncoder].<init>(int,int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:60,1"
      Dst: "[io.netty.handler.codec.compression.ZstdEncoder].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZstdEncoder].<init>(int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.ZstdEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ZstdEncoder].<init>(int,int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:71,1"
      Dst: "[io.netty.handler.codec.compression.ZstdEncoder].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZstdEncoder].<init>(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.ZstdEncoder"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 88
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToByteEncoder].<init>(boolean)"
    - "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 2
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:83,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].<init>(boolean)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:84,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:85,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZstdEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.ZstdEncoder"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 116
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    - "[java.lang.Math].min(int,int)"
    - "[com.github.luben.zstd.Zstd].compressBound(long)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    functionUses: 2
    ICount: 50
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZstdEncoder:91"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:96"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:95"
        BranchSideFuncs:
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.compression.ZstdEncoder:99"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.ZstdEncoder:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:110"
        BranchSideFuncs:
        - "min(int,int)"
        - "compressBound(long)"
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:109"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.ZstdEncoder:110"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:111"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:110"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.compression.ZstdEncoder:110"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:115"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:114"
        BranchSideFuncs:
        - "alloc()"
        - "directBuffer(int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:92,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:96,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:100,1"
      Dst: "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:105,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:107,1"
      Dst: "[com.github.luben.zstd.Zstd].compressBound(long)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:111,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:111,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:111,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:111,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:111,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:115,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:115,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.ZstdEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.ZstdEncoder"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 136
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isWritable()"
    - "[io.netty.buffer.ReadOnlyByteBuf].isWritable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isWritable()"
    - "[io.netty.buffer.WrappedByteBuf].isWritable()"
    - "[io.netty.buffer.SwappedByteBuf].isWritable()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isWritable()"
    - "[io.netty.buffer.AbstractByteBuf].isWritable()"
    - "[io.netty.buffer.EmptyByteBuf].isWritable()"
    - "[io.netty.buffer.FixedCompositeByteBuf].isWritable()"
    - "[io.netty.handler.codec.compression.ZstdEncoder].flushBufferedData(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].isWritable()"
    functionUses: 1
    ICount: 20
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZstdEncoder:120"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:125"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:124"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.ZstdEncoder:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:135"
        BranchSideFuncs:
        - "readBytes(io.netty.buffer.ByteBuf,int)"
        - "min(int,int)"
        - "isWritable()"
        - "writableBytes()"
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:134"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.ZstdEncoder:131"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:134"
        BranchSideFuncs:
        - "flushBufferedData(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:121,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:127,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:128,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:128,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:129,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:131,1"
      Dst: "[io.netty.buffer.ByteBuf].isWritable()"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:132,1"
      Dst: "[io.netty.handler.codec.compression.ZstdEncoder].flushBufferedData(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.ZstdEncoder].flushBufferedData(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.ZstdEncoder"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 160
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[com.github.luben.zstd.Zstd].compressBound(long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[com.github.luben.zstd.Zstd].compress(java.nio.ByteBuffer,java.nio.ByteBuffer,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.handler.codec.compression.CompressionException].<init>(java.lang.Throwable)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].clear()"
    - "[io.netty.buffer.WrappedByteBuf].clear()"
    - "[io.netty.buffer.SwappedByteBuf].clear()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].clear()"
    - "[io.netty.buffer.EmptyByteBuf].clear()"
    - "[io.netty.buffer.CompositeByteBuf].clear()"
    - "[io.netty.buffer.AbstractByteBuf].clear()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].clear()"
    functionUses: 2
    ICount: 29
    EdgeCount: 82
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZstdEncoder:139"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:143"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:142"
        BranchSideFuncs:
        - "compressBound(long)"
        - "compress(java.nio.ByteBuffer,java.nio.ByteBuffer,int)"
        - "readerIndex()"
        - "ensureWritable(int)"
        - "writerIndex()"
        - "writableBytes()"
        - "internalNioBuffer(int,int)"
        - "<init>(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:138,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:143,1"
      Dst: "[com.github.luben.zstd.Zstd].compressBound(long)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:144,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:145,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:148,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:148,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:151,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:149,1"
      Dst: "[com.github.luben.zstd.Zstd].compress(java.nio.ByteBuffer,java.nio.ByteBuffer,int)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:154,1"
      Dst: "[io.netty.handler.codec.compression.CompressionException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:157,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:158,1"
      Dst: "[io.netty.buffer.ByteBuf].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.CompressionException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.compression.CompressionException"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.EncoderException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.CompressionException:51,1"
      Dst: "[io.netty.handler.codec.EncoderException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EncoderException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.EncoderException"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.Throwable)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EncoderException:49,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZstdEncoder].flush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.compression.ZstdEncoder"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 170
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.handler.codec.compression.ZstdEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.handler.codec.MessageToByteEncoder].isPreferDirect()"
    - "[io.netty.handler.codec.compression.ZstdEncoder].flushBufferedData(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 2
    ICount: 14
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZstdEncoder:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:168"
        BranchSideFuncs:
        - "flushBufferedData(io.netty.buffer.ByteBuf)"
        - "allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean)"
        - "write(java.lang.Object)"
        - "isPreferDirect()"
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:167"
        BranchSideFuncs:
        - "flush()"
    - Branch String: "io.netty.handler.codec.compression.ZstdEncoder:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:168"
        BranchSideFuncs:
        - "flushBufferedData(io.netty.buffer.ByteBuf)"
        - "allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean)"
        - "write(java.lang.Object)"
        - "isPreferDirect()"
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:167"
        BranchSideFuncs:
        - "flush()"
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:163,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:164,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].isPreferDirect()"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:164,1"
      Dst: "[io.netty.handler.codec.compression.ZstdEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:165,1"
      Dst: "[io.netty.handler.codec.compression.ZstdEncoder].flushBufferedData(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:166,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:168,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.ZstdEncoder].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.compression.ZstdEncoder"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 176
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].clear()"
    - "[io.netty.buffer.WrappedByteBuf].clear()"
    - "[io.netty.buffer.SwappedByteBuf].clear()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].clear()"
    - "[io.netty.buffer.EmptyByteBuf].clear()"
    - "[io.netty.buffer.CompositeByteBuf].clear()"
    - "[io.netty.buffer.AbstractByteBuf].clear()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.ByteBuf].clear()"
    functionUses: 5
    ICount: 9
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:173,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:173,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:174,1"
      Dst: "[io.netty.buffer.ByteBuf].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZstdEncoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.compression.ZstdEncoder"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 185
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerAdapter].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    functionUses: 4
    ICount: 9
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZstdEncoder:180"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:184"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.compression.ZstdEncoder:183"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:179,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:181,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.ZstdEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.ZstdEncoder"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ZstdEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:36,1"
      Dst: "[io.netty.handler.codec.compression.ZstdEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZstdEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,java.lang.Object,boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.ZstdEncoder"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ZstdEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZstdEncoder:36,1"
      Dst: "[io.netty.handler.codec.compression.ZstdEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.sctp.SctpMessageCompletionHandler].<init>()"
    functionSourceFile: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    - "[io.netty.util.collection.IntObjectHashMap].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:35,1"
      Dst: "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:36,1"
      Dst: "[io.netty.util.collection.IntObjectHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.sctp.SctpMessageCompletionHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.channel.sctp.SctpMessage,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 71
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.sctp.SctpMessage"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.channel.sctp.SctpMessage].protocolIdentifier()"
    - "[io.netty.channel.sctp.SctpMessage].streamIdentifier()"
    - "[io.netty.channel.sctp.SctpMessage].isComplete()"
    - "[io.netty.channel.sctp.SctpMessage].isUnordered()"
    - "[io.netty.util.collection.IntObjectHashMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].remove(int)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].put(int,java.lang.Object)"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(io.netty.buffer.ByteBuf[])"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.channel.sctp.SctpMessage].<init>(int,int,boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.util.collection.IntObjectMap].remove(int)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 1
    ICount: 44
    EdgeCount: 48
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:51"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:50"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:53"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:53"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:54"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:56"
        BranchSideFuncs:
        - "isReadable()"
    - Branch String: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:54"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:56"
        BranchSideFuncs:
        - "isReadable()"
    - Branch String: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:57"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:66"
        BranchSideFuncs:
        - "put(int,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:57"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:66"
        BranchSideFuncs:
        - "put(int,java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:40,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:41,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].protocolIdentifier()"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:42,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].streamIdentifier()"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:43,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].isComplete()"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:44,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].isUnordered()"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:46,1"
      Dst: "[io.netty.util.collection.IntObjectMap].remove(int)"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:51,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:53,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:56,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(io.netty.buffer.ByteBuf[])"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:56,1"
      Dst: "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:63,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].<init>(int,int,boolean,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:69,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 8
  - functionName: "[io.netty.channel.sctp.SctpMessage].protocolIdentifier()"
    functionSourceFile: "io.netty.channel.sctp.SctpMessage"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.SctpMessage].streamIdentifier()"
    functionSourceFile: "io.netty.channel.sctp.SctpMessage"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.SctpMessage].isComplete()"
    functionSourceFile: "io.netty.channel.sctp.SctpMessage"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.sun.nio.sctp.MessageInfo].isComplete()"
    functionUses: 3
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.SctpMessage:104"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.SctpMessage:108"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.SctpMessage:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.SctpMessage:105,1"
      Dst: "[com.sun.nio.sctp.MessageInfo].isComplete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.SctpMessage].isUnordered()"
    functionSourceFile: "io.netty.channel.sctp.SctpMessage"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].wrappedBuffer(io.netty.buffer.ByteBuf[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: 254
    functionLinenumberEnd: 256
    functionDepth: 6
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].wrappedBuffer(int,io.netty.buffer.ByteBuf[])"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:255,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(int,io.netty.buffer.ByteBuf[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].wrappedBuffer(int,io.netty.buffer.ByteBuf[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: 309
    functionLinenumberEnd: 332
    functionDepth: 5
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int,io.netty.buffer.ByteBuf[],int)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 1
    ICount: 29
    EdgeCount: 51
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:315"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:318"
        BranchSideFuncs:
        - "wrappedBuffer(io.netty.buffer.ByteBuf)"
        - "order(java.nio.ByteOrder)"
      - BranchSide: "io.netty.buffer.Unpooled:317"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:322"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:331"
        BranchSideFuncs:
        - "isReadable()"
      - BranchSide: "io.netty.buffer.Unpooled:330"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:324"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:null"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBufAllocator,boolean,int,io.netty.buffer.ByteBuf[],int)"
    Callsites:
    - Src: "io.netty.buffer.Unpooled:315,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.buffer.Unpooled:316,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.buffer.Unpooled:316,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.Unpooled:318,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.buffer.Unpooled:325,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int,io.netty.buffer.ByteBuf[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.Unpooled].wrappedBuffer(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: 229
    functionLinenumberEnd: 235
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice()"
    - "[io.netty.buffer.SwappedByteBuf].slice()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice()"
    - "[io.netty.buffer.AbstractByteBuf].slice()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice()"
    - "[io.netty.buffer.WrappedByteBuf].slice()"
    - "[io.netty.buffer.UnreleasableByteBuf].slice()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice()"
    - "[io.netty.buffer.EmptyByteBuf].slice()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].slice()"
    functionUses: 1
    ICount: 8
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:230"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:233"
        BranchSideFuncs:
        - "slice()"
      - BranchSide: "io.netty.buffer.Unpooled:232"
        BranchSideFuncs:
        - "release()"
    Callsites:
    - Src: "io.netty.buffer.Unpooled:230,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.buffer.Unpooled:231,1"
      Dst: "[io.netty.buffer.ByteBuf].slice()"
    - Src: "io.netty.buffer.Unpooled:233,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int,io.netty.buffer.ByteBuf[],int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 93
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "boolean"
    - "int"
    - "io.netty.buffer.ByteBuf[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].addComponents0(boolean,int,io.netty.buffer.ByteBuf[],int)"
    - "[io.netty.buffer.CompositeByteBuf].consolidateIfNeeded()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.AbstractByteBuf].setIndex0(int,int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:87,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:89,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponents0(boolean,int,io.netty.buffer.ByteBuf[],int)"
    - Src: "io.netty.buffer.CompositeByteBuf:90,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].consolidateIfNeeded()"
    - Src: "io.netty.buffer.CompositeByteBuf:91,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].capacity()"
    - Src: "io.netty.buffer.CompositeByteBuf:91,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setIndex0(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 76
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "boolean"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].<init>(int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.CompositeByteBuf].newCompArray(int,int)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 2
    ICount: 24
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:67"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:72"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:71"
        BranchSideFuncs:
        - "newCompArray(int,int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:64,1"
      Dst: "[io.netty.buffer.AbstractReferenceCountedByteBuf].<init>(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:66,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.CompositeByteBuf:68,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.CompositeByteBuf:68,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.CompositeByteBuf:68,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:68,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.CompositeByteBuf:68,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.CompositeByteBuf:74,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].newCompArray(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].newCompArray(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf$Component[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:141,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:142,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].addComponents0(boolean,int,io.netty.buffer.ByteBuf[],int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 372
    functionLinenumberEnd: 420
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 4
    argTypes:
    - "boolean"
    - "int"
    - "io.netty.buffer.ByteBuf[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.CompositeByteBuf].checkForOverflow(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].shiftComps(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureAccessible(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].newComponent(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].removeCompRange(int,int)"
    - "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf].updateComponentOffsets(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 1
    ICount: 101
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:377"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:389"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:388"
        BranchSideFuncs:
        - "checkComponentIndex(int)"
        - "shiftComps(int,int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:379"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:393"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:389"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:388"
        BranchSideFuncs:
        - "checkComponentIndex(int)"
        - "shiftComps(int,int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:394"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:406"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:405"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:396"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:393"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:392"
        BranchSideFuncs:
        - "newComponent(io.netty.buffer.ByteBuf,int)"
        - "ensureAccessible(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:406"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:416"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:415"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:407"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:413"
        BranchSideFuncs:
        - "updateComponentOffsets(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:410"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:413"
        BranchSideFuncs:
        - "updateComponentOffsets(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:416"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:403"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:402"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:416"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:403"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:402"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:416"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:403"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:402"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:406"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:416"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:415"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:407"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:413"
        BranchSideFuncs:
        - "updateComponentOffsets(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:410"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:413"
        BranchSideFuncs:
        - "updateComponentOffsets(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:416"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:419"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:418"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:416"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:419"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:418"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:416"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:419"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:418"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:376,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].capacity()"
    - Src: "io.netty.buffer.CompositeByteBuf:382,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.CompositeByteBuf:386,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].checkForOverflow(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:391,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:392,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].shiftComps(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:399,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].ensureAccessible(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.CompositeByteBuf:399,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].newComponent(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:409,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].removeCompRange(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:411,1"
      Dst: "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - Src: "io.netty.buffer.CompositeByteBuf:414,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].updateComponentOffsets(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 35
    CyclomaticComplexity: 17
  - functionName: "[io.netty.buffer.CompositeByteBuf].capacity()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 838
    functionLinenumberEnd: 841
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 76
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:840"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:838"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.CompositeByteBuf].checkForOverflow(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 270
    functionLinenumberEnd: 276
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 17
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:271"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:275"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:272,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.CompositeByteBuf:272,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.CompositeByteBuf:272,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:272,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.CompositeByteBuf:272,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 575
    functionLinenumberEnd: 583
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 4
    ICount: 17
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:577"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:578"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:577"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:577"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:582"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:581"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:576,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.CompositeByteBuf:580,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:578,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.buffer.CompositeByteBuf:578,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.CompositeByteBuf].shiftComps(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2339
    functionLinenumberEnd: 2363
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.Math].max(int,int)"
    - "[java.util.Arrays].copyOf(java.lang.Object[],int,java.lang.Class)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 2
    ICount: 43
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:2341"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2342"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2341"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:2341"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2340"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2339"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:2341"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2340"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2339"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:2341"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2342"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2341"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:2342"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2341"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:2346"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2349"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int,java.lang.Class)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2348"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:2350"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2353"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2352"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:2353"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2357"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2356"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:2342"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2360"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2341,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.CompositeByteBuf:2344,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:2347,1"
      Dst: "[java.util.Arrays].copyOf(java.lang.Object[],int,java.lang.Class)"
    - Src: "io.netty.buffer.CompositeByteBuf:2351,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 9
  - functionName: "[io.netty.buffer.CompositeByteBuf].ensureAccessible(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 312
    functionLinenumberEnd: 317
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].isAccessible()"
    - "[io.netty.buffer.SwappedByteBuf].isAccessible()"
    - "[io.netty.buffer.ByteBuf].isAccessible()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].isAccessible()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isAccessible()"
    - "[io.netty.buffer.WrappedByteBuf].isAccessible()"
    - "[io.netty.buffer.CompositeByteBuf].isAccessible()"
    - "[io.netty.util.IllegalReferenceCountException].<init>(int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:313"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:316"
        BranchSideFuncs:
        - "<init>(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:315"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:313"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:316"
        BranchSideFuncs:
        - "<init>(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:315"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:313,1"
      Dst: "[io.netty.buffer.ByteBuf].isAccessible()"
    - Src: "io.netty.buffer.CompositeByteBuf:314,1"
      Dst: "[io.netty.util.IllegalReferenceCountException].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.CompositeByteBuf].newComponent(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 320
    functionLinenumberEnd: 348
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf$Component"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].unwrap()"
    - "[io.netty.buffer.SlicedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].unwrap()"
    - "[io.netty.buffer.CompositeByteBuf].unwrap()"
    - "[io.netty.buffer.SwappedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].unwrap()"
    - "[io.netty.buffer.EmptyByteBuf].unwrap()"
    - "[io.netty.buffer.FixedCompositeByteBuf].unwrap()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].unwrap()"
    - "[io.netty.buffer.PooledByteBuf].unwrap()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.ReadOnlyByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.WrappedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.CompositeByteBuf$Component].<init>(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf,int,int,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 3
    ICount: 44
    EdgeCount: 125
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:327"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:328"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:327"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:327"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:332"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:331"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:332"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:335"
        BranchSideFuncs:
        - "idx(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:334"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:335"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:338"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:337"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:338"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:339"
        BranchSideFuncs:
        - "unwrap()"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:338"
        BranchSideFuncs:
        - "unwrap()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:338"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:344"
        BranchSideFuncs:
        - "unwrap()"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:343"
        BranchSideFuncs:
        - "capacity()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:344"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:343"
        BranchSideFuncs:
        - "capacity()"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:321,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.CompositeByteBuf:322,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.CompositeByteBuf:328,1"
      Dst: "[io.netty.buffer.ByteBuf].unwrap()"
    - Src: "io.netty.buffer.CompositeByteBuf:333,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:344,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.buffer.CompositeByteBuf:346,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.buffer.CompositeByteBuf:347,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].<init>(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf,int,int,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 8
  - functionName: "[io.netty.buffer.CompositeByteBuf$Component].<init>(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf,int,int,int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$Component"
    linkageType: ""
    functionLinenumber: 1901
    functionLinenumberEnd: 1911
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 20
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf$Component:1902,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].removeCompRange(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2318
    functionLinenumberEnd: 2333
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 8
    ICount: 28
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:2319"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2322"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2321"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:2323"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2324"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2323"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:2323"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2322"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2321"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:2323"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2324"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2323"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:2324"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2327"
        BranchSideFuncs:
        - "arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2326"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:2328"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2330"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2323,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.CompositeByteBuf:2325,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[io.netty.buffer.CompositeByteBuf].updateComponentOffsets(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 594
    functionLinenumberEnd: 607
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf$Component].reposition(int)"
    functionUses: 6
    ICount: 21
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:596"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:600"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:599"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:600"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:600"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:599"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:601"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:605"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:603,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].reposition(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.CompositeByteBuf$Component].reposition(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$Component"
    linkageType: ""
    functionLinenumber: 1924
    functionLinenumberEnd: 1931
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].consolidateIfNeeded()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 568
    functionLinenumberEnd: 574
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].consolidate0(int,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:570"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:573"
        BranchSideFuncs:
        - "consolidate0(int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:572"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:571,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].consolidate0(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.CompositeByteBuf].consolidate0(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1750
    functionLinenumberEnd: 1770
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].allocBuffer(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].transferTo(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].removeCompRange(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].newComponent(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].updateComponentOffsets(int)"
    functionUses: 1
    ICount: 36
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1751"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1755"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1754"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1756"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1755"
        BranchSideFuncs:
        - "allocBuffer(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1754"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1760"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1762"
        BranchSideFuncs:
        - "removeCompRange(int,int)"
        - "newComponent(io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1766"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1767"
        BranchSideFuncs:
        - "updateComponentOffsets(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1766"
        BranchSideFuncs:
        - "updateComponentOffsets(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1766"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1769"
        BranchSideFuncs:
        - "updateComponentOffsets(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1768"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1758,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].allocBuffer(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1761,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].transferTo(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.CompositeByteBuf:1764,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].removeCompRange(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1765,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].newComponent(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1767,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].updateComponentOffsets(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[io.netty.buffer.CompositeByteBuf].allocBuffer(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1878
    functionLinenumberEnd: 1880
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.CompositeByteBuf].alloc()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    functionUses: 3
    ICount: 10
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1879"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1878"
        BranchSideFuncs:
        - "heapBuffer(int)"
        - "alloc()"
        - "directBuffer(int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1879,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].alloc()"
    - Src: "io.netty.buffer.CompositeByteBuf:1879,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1879,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.CompositeByteBuf].alloc()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 889
    functionLinenumberEnd: 891
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBufAllocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 30
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf$Component].transferTo(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$Component"
    linkageType: ""
    functionLinenumber: 1933
    functionLinenumberEnd: 1937
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].length()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].free()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf$Component:1934,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf$Component:1934,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].length()"
    - Src: "io.netty.buffer.CompositeByteBuf$Component:1934,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf$Component:1935,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].free()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$Component"
    linkageType: ""
    functionLinenumber: 1916
    functionLinenumberEnd: 1918
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 37
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf$Component].free()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$Component"
    linkageType: ""
    functionLinenumber: 1955
    functionLinenumberEnd: 1961
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 9
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf$Component:1959,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.SctpMessage].<init>(int,int,boolean,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.sctp.SctpMessage"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 57
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "boolean"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 4
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.SctpMessage:51,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.sctp.SctpMessageCompletionHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.IntObjectHashMap].values()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].values()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].clear()"
    - "[io.netty.util.collection.IntObjectHashMap].clear()"
    - "[io.netty.channel.ChannelHandlerAdapter].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[java.util.Map].clear()"
    functionUses: 3
    ICount: 15
    EdgeCount: 146
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:74"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:77"
        BranchSideFuncs:
        - "values()"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "release()"
      - BranchSide: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:76"
        BranchSideFuncs:
        - "handlerRemoved(io.netty.channel.ChannelHandlerContext)"
        - "clear()"
    Callsites:
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:74,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:74,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:74,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:74,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:75,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:77,1"
      Dst: "[java.util.Map].clear()"
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:78,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.sctp.SctpMessageCompletionHandler].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.sctp.SctpMessageCompletionHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.channel.sctp.SctpMessage,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.sctp.SctpMessageCompletionHandler:35,1"
      Dst: "[io.netty.handler.codec.sctp.SctpMessageCompletionHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.channel.sctp.SctpMessage,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:39,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:39,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extrasLength()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].keyLength()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setTotalBodyLength(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setTotalBodyLength(int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:51,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:52,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:53,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].keyLength()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:53,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extrasLength()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:53,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:53,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setTotalBodyLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].content()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].retain()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionDepth: 1
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].retain()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:63,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].retain()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].retain()"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest:74,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].retain(int)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheRequest"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:69,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].retain(int)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest:80,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].touch()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionDepth: 1
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].touch()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:75,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].touch()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].touch()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest:86,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionDepth: 1
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheRequest"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.SimpleLeakAwareByteBuf:io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 4
    ICount: 6
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:81,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].touch(java.lang.Object)"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:82,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].touch(java.lang.Object)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest:92,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].deallocate()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].deallocate()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.util.ReferenceCounted].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:88,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].deallocate()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:89,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].copy()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].key()"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extras()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].content()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].newInstance(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:98"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:97"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:99"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:94,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].key()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:96,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:98,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extras()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:102,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].content()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:102,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].newInstance(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].newInstance(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].copyMeta(io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:137,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:138,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].copyMeta(io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setMagic(byte)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest:57,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest:58,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setMagic(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].copyMeta(io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].copyMeta(io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest:102,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].copyMeta(io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].duplicate()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].key()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extras()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].content()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].newInstance(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:111"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:115"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:107,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].key()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:109,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:111,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extras()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:115,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].content()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:115,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].newInstance(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].content()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:120,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].content()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:120,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:120,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheRequest"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].key()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extras()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].newInstance(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:129"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:128"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:130"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:133"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:125,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].key()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:127,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:129,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extras()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest:133,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].newInstance(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.AdaptiveRecvByteBufAllocator].newHandle()"
    functionSourceFile: "io.netty.channel.AdaptiveRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 198
    functionDepth: 3
    returnType: "io.netty.channel.RecvByteBufAllocator$Handle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].<init>(io.netty.channel.AdaptiveRecvByteBufAllocator,int,int,int)"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AdaptiveRecvByteBufAllocator:197,1"
      Dst: "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].<init>(io.netty.channel.AdaptiveRecvByteBufAllocator,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].<init>(io.netty.channel.AdaptiveRecvByteBufAllocator,int,int,int)"
    functionSourceFile: "io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 108
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.AdaptiveRecvByteBufAllocator"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].<init>(io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator)"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator].access$000(int)"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator].access$100()"
    functionUses: 1
    ICount: 16
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl:101,1"
      Dst: "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].<init>(io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator)"
    - Src: "io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl:105,1"
      Dst: "[io.netty.channel.AdaptiveRecvByteBufAllocator].access$000(int)"
    - Src: "io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl:106,1"
      Dst: "[io.netty.channel.AdaptiveRecvByteBufAllocator].access$100()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AdaptiveRecvByteBufAllocator].access$000(int)"
    functionSourceFile: "io.netty.channel.AdaptiveRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator].getSizeTableIndex(int)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AdaptiveRecvByteBufAllocator:35,1"
      Dst: "[io.netty.channel.AdaptiveRecvByteBufAllocator].getSizeTableIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AdaptiveRecvByteBufAllocator].access$100()"
    functionSourceFile: "io.netty.channel.AdaptiveRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "int[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AdaptiveRecvByteBufAllocator].respectMaybeMoreData(boolean)"
    functionSourceFile: "io.netty.channel.AdaptiveRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.AdaptiveRecvByteBufAllocator"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator].respectMaybeMoreData(boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AdaptiveRecvByteBufAllocator:202,1"
      Dst: "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator].respectMaybeMoreData(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$2].<init>(java.lang.Class,java.lang.Class)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$2"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$2:85,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$2].run()"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$2"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "java.lang.reflect.Method"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$2:88,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].<init>(io.netty.handler.codec.http.cookie.DefaultCookie,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.cookie.DefaultCookie"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:160,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].mergeMaxAgeAndExpires()"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].isValueDefined(int,int)"
    - "[io.netty.handler.codec.DateFormatter].parseHttpDate(java.lang.CharSequence,int,int)"
    - "[java.util.Date].getTime()"
    - "[java.lang.System].currentTimeMillis()"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:169"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:168"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:176"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:175"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:176"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:175"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:171"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:169,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].isValueDefined(int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:170,1"
      Dst: "[io.netty.handler.codec.DateFormatter].parseHttpDate(java.lang.CharSequence,int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:172,1"
      Dst: "[java.util.Date].getTime()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:172,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].isValueDefined(int,int)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:256"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:255"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:256"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:255"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.DateFormatter].parseHttpDate(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "java.util.Date"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.DateFormatter].formatter()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.DateFormatter].parse0(java.lang.CharSequence,int,int)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DateFormatter:99"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:101"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:100"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:103"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:107"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:102,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.DateFormatter:107,1"
      Dst: "[io.netty.handler.codec.DateFormatter].formatter()"
    - Src: "io.netty.handler.codec.DateFormatter:107,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.DateFormatter:107,1"
      Dst: "[io.netty.handler.codec.DateFormatter].parse0(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DateFormatter].formatter()"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionDepth: 5
    returnType: "io.netty.handler.codec.DateFormatter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].get()"
    - "[io.netty.handler.codec.DateFormatter].reset()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:130,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].get()"
    - Src: "io.netty.handler.codec.DateFormatter:131,1"
      Dst: "[io.netty.handler.codec.DateFormatter].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DateFormatter].reset()"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 179
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Calendar].clear()"
    - "[java.lang.StringBuilder].setLength(int)"
    functionUses: 2
    ICount: 22
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:176,1"
      Dst: "[java.util.Calendar].clear()"
    - Src: "io.netty.handler.codec.DateFormatter:177,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DateFormatter].parse0(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "java.util.Date"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DateFormatter].parse1(java.lang.CharSequence,int,int)"
    - "[io.netty.handler.codec.DateFormatter].normalizeAndValidate()"
    - "[io.netty.handler.codec.DateFormatter].computeDate()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DateFormatter:367"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:365"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:367"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:365"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:366,1"
      Dst: "[io.netty.handler.codec.DateFormatter].parse1(java.lang.CharSequence,int,int)"
    - Src: "io.netty.handler.codec.DateFormatter:367,1"
      Dst: "[io.netty.handler.codec.DateFormatter].normalizeAndValidate()"
    - Src: "io.netty.handler.codec.DateFormatter:367,1"
      Dst: "[io.netty.handler.codec.DateFormatter].computeDate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.DateFormatter].parse1(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.handler.codec.DateFormatter].isDelim(char)"
    - "[io.netty.handler.codec.DateFormatter].parseToken(java.lang.CharSequence,int,int)"
    - "[java.lang.CharSequence].length()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DateFormatter:374"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:377"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:378"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:371"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:380"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:385"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:371"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:392"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:391"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:392"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:391"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:375,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.DateFormatter:377,1"
      Dst: "[io.netty.handler.codec.DateFormatter].isDelim(char)"
    - Src: "io.netty.handler.codec.DateFormatter:380,1"
      Dst: "[io.netty.handler.codec.DateFormatter].parseToken(java.lang.CharSequence,int,int)"
    - Src: "io.netty.handler.codec.DateFormatter:392,1"
      Dst: "[java.lang.CharSequence].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.DateFormatter].isDelim(char)"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.BitSet].get(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:137,1"
      Dst: "[java.util.BitSet].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DateFormatter].parseToken(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DateFormatter].tryParseTime(java.lang.CharSequence,int,int)"
    - "[io.netty.handler.codec.DateFormatter].tryParseDayOfMonth(java.lang.CharSequence,int,int)"
    - "[io.netty.handler.codec.DateFormatter].tryParseMonth(java.lang.CharSequence,int,int)"
    - "[io.netty.handler.codec.DateFormatter].tryParseYear(java.lang.CharSequence,int,int)"
    functionUses: 0
    ICount: 68
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DateFormatter:338"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:345"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:344"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:340"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:345"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:344"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:341"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:341"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:341"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:345"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:352"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:351"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:347"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:352"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:351"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:348"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:348"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:348"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:352"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:359"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:358"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:354"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:359"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:358"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:355"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:355"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:355"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:359"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:362"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:361"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:362"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:362"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:362"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:362"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:339,1"
      Dst: "[io.netty.handler.codec.DateFormatter].tryParseTime(java.lang.CharSequence,int,int)"
    - Src: "io.netty.handler.codec.DateFormatter:346,1"
      Dst: "[io.netty.handler.codec.DateFormatter].tryParseDayOfMonth(java.lang.CharSequence,int,int)"
    - Src: "io.netty.handler.codec.DateFormatter:353,1"
      Dst: "[io.netty.handler.codec.DateFormatter].tryParseMonth(java.lang.CharSequence,int,int)"
    - Src: "io.netty.handler.codec.DateFormatter:360,1"
      Dst: "[io.netty.handler.codec.DateFormatter].tryParseYear(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 33
    CyclomaticComplexity: 18
  - functionName: "[io.netty.handler.codec.DateFormatter].tryParseTime(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.handler.codec.DateFormatter].isDigit(char)"
    - "[io.netty.handler.codec.DateFormatter].getNumericalValue(char)"
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DateFormatter:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:185"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:184"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:195"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:229"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:228"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:197"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:188"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:187"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:202"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:225"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:224"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:203"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:206"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:229"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:233"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:234"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:241"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:240"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:234"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:241"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:240"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:234"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:241"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:240"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:196,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.DateFormatter:197,1"
      Dst: "[io.netty.handler.codec.DateFormatter].isDigit(char)"
    - Src: "io.netty.handler.codec.DateFormatter:198,1"
      Dst: "[io.netty.handler.codec.DateFormatter].getNumericalValue(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 25
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.DateFormatter].isDigit(char)"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DateFormatter:141"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:140"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:141"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:140"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.DateFormatter].getNumericalValue(char)"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DateFormatter].tryParseDayOfMonth(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.handler.codec.DateFormatter].isDigit(char)"
    - "[io.netty.handler.codec.DateFormatter].getNumericalValue(char)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DateFormatter:247"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:245"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:244"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:249"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:254"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:253"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:247"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:263"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:262"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:257"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:263"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:262"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:257"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:263"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:262"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:248,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.DateFormatter:249,1"
      Dst: "[io.netty.handler.codec.DateFormatter].isDigit(char)"
    - Src: "io.netty.handler.codec.DateFormatter:250,1"
      Dst: "[io.netty.handler.codec.DateFormatter].getNumericalValue(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.DateFormatter].tryParseMonth(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.util.AsciiString].toLowerCase(char)"
    functionUses: 0
    ICount: 113
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DateFormatter:269"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:273"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:272"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:277"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:277"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:277"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:279"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:279"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:279"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:281"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:281"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:281"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:283"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:283"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:283"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:285"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:285"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:285"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:289"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:289"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:289"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:291"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:291"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:291"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:293"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:293"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:293"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:295"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:295"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:295"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:297"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:297"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:297"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:299"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:302"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:301"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:299"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:302"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:301"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:299"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:302"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:301"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:273,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.DateFormatter:273,1"
      Dst: "[io.netty.util.AsciiString].toLowerCase(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 52
    CyclomaticComplexity: 36
  - functionName: "[io.netty.handler.codec.DateFormatter].tryParseYear(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.handler.codec.DateFormatter].isDigit(char)"
    - "[io.netty.handler.codec.DateFormatter].getNumericalValue(char)"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DateFormatter:311"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:309"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:308"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:314"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:319"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:318"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:314"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:319"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:318"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:311"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:333"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:332"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:324"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:333"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:332"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:324"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:333"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:332"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:324"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:333"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:332"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:324"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:333"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:332"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:312,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.DateFormatter:314,1"
      Dst: "[io.netty.handler.codec.DateFormatter].isDigit(char)"
    - Src: "io.netty.handler.codec.DateFormatter:315,1"
      Dst: "[io.netty.handler.codec.DateFormatter].getNumericalValue(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.DateFormatter].normalizeAndValidate()"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DateFormatter:396"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:400"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:396"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:400"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:396"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:400"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:396"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:400"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:396"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:403"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:404"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:406"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:405"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:404"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:406"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:405"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:406"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:408"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:407"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:406"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:408"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DateFormatter:407"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DateFormatter:408"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:411"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.DateFormatter].computeDate()"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Calendar].set(int,int)"
    - "[java.util.Calendar].getTime()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:416,1"
      Dst: "[java.util.Calendar].set(int,int)"
    - Src: "io.netty.handler.codec.DateFormatter:422,1"
      Dst: "[java.util.Calendar].getTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].cookie()"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.handler.codec.http.cookie.Cookie"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].setDomain(java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].setPath(java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].mergeMaxAgeAndExpires()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].setMaxAge(long)"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].setSecure(boolean)"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].setHttpOnly(boolean)"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].setSameSite(io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:180,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].setDomain(java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:181,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].setPath(java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:182,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].mergeMaxAgeAndExpires()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:182,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].setMaxAge(long)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:183,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].setSecure(boolean)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:184,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].setHttpOnly(boolean)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:185,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].setSameSite(io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].setDomain(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.CookieUtil].validateAttributeValue(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:80,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].validateAttributeValue(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.CookieUtil].validateAttributeValue(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.CookieUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[java.lang.String].isEmpty()"
    - "[io.netty.handler.codec.http.cookie.CookieUtil].firstInvalidOctet(java.lang.CharSequence,java.util.BitSet)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.CookieUtil:166"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieUtil:169"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieUtil:168"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.CookieUtil:170"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieUtil:173"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieUtil:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.CookieUtil:174"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieUtil:177"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieUtil:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:169,1"
      Dst: "[java.lang.String].trim()"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:170,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:173,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].firstInvalidOctet(java.lang.CharSequence,java.util.BitSet)"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:175,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:175,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:175,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:175,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:175,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:175,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.CookieUtil].firstInvalidOctet(java.lang.CharSequence,java.util.BitSet)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.CookieUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.util.BitSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.util.BitSet].get(int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.CookieUtil:143"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.CookieUtil:145"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieUtil:143"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieUtil:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:143,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:144,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:145,1"
      Dst: "[java.util.BitSet].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].setPath(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.CookieUtil].validateAttributeValue(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:90,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].validateAttributeValue(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].setMaxAge(long)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].setSecure(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].setHttpOnly(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].setSameSite(io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].appendAttribute(int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].parse4(int,int,int)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].parse6(int,int,int)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].parse7(int,int,int)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].parse8(int,int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:205"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:207"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:206"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:207"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:209"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:208"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:209"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:211"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:210"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:211"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:214"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:213"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:206,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].parse4(int,int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:208,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].parse6(int,int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:210,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].parse7(int,int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:212,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].parse8(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].parse4(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].computeValue(int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:217"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:220"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:219"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:217,1"
      Dst: "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:218,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].computeValue(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].computeValue(int,int)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].isValueDefined(int,int)"
    - "[java.lang.String].substring(int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:260"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:260,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].isValueDefined(int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:260,1"
      Dst: "[java.lang.String].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].parse6(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].computeValue(int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:223"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:225"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:224"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:228"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:227"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:223,1"
      Dst: "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:224,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].computeValue(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].parse7(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].computeValue(int,int)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].setMaxAge(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:239"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:242"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:241"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:242"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:245"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:244"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:239,1"
      Dst: "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:243,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].computeValue(int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:243,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].setMaxAge(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].setMaxAge(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].parseLong(java.lang.String)"
    - "[java.lang.Math].max(long,long)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:232,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:232,1"
      Dst: "[java.lang.Math].max(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].parse8(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].computeValue(int,int)"
    - "[io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite].of(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:248"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:250"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:249"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:250"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:253"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:252"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:248,1"
      Dst: "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:251,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].computeValue(int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder:251,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite].of(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite].of(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getEnumConstants()"
    - "[java.lang.Enum].name()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite:49"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite:56"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite:55"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite:56"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite:55"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite:50"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite:50,1"
      Dst: "[java.lang.Class].getEnumConstants()"
    - Src: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite:51,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite:51,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].<init>(io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1"
    linkageType: ""
    functionLinenumber: 821
    functionLinenumberEnd: 823
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:822,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].recvBufAllocHandle()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1"
    linkageType: ""
    functionLinenumber: 824
    functionLinenumberEnd: 826
    functionDepth: 0
    returnType: "io.netty.channel.RecvByteBufAllocator$Handle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].recvBufAllocHandle()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:825,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].recvBufAllocHandle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].localAddress()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1"
    linkageType: ""
    functionLinenumber: 829
    functionLinenumberEnd: 831
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].localAddress()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:830,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].remoteAddress()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1"
    linkageType: ""
    functionLinenumber: 834
    functionLinenumberEnd: 836
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].remoteAddress()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:835,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].register(io.netty.channel.EventLoop,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1"
    linkageType: ""
    functionLinenumber: 839
    functionLinenumberEnd: 843
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.EventLoop"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].register(io.netty.channel.EventLoop,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:840,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].register(io.netty.channel.EventLoop,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:841,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1"
    linkageType: ""
    functionLinenumber: 845
    functionLinenumberEnd: 849
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:846,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:847,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1"
    linkageType: ""
    functionLinenumber: 851
    functionLinenumberEnd: 855
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:852,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:853,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe"
    linkageType: ""
    functionLinenumber: 910
    functionLinenumberEnd: 913
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].safeSetSuccess(io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe:911,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].safeSetSuccess(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].disconnect(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1"
    linkageType: ""
    functionLinenumber: 857
    functionLinenumberEnd: 861
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:858,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].disconnect(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:859,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].close(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1"
    linkageType: ""
    functionLinenumber: 863
    functionLinenumberEnd: 867
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    functionUses: 12
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:864,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:865,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].closeForcibly()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1"
    linkageType: ""
    functionLinenumber: 869
    functionLinenumberEnd: 873
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].closeForcibly()"
    - "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    functionUses: 10
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:870,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].closeForcibly()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:871,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].deregister(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1"
    linkageType: ""
    functionLinenumber: 875
    functionLinenumberEnd: 879
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:876,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].deregister(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:877,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].beginRead()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1"
    linkageType: ""
    functionLinenumber: 881
    functionLinenumberEnd: 885
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].beginRead()"
    - "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:882,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].beginRead()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:883,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1"
    linkageType: ""
    functionLinenumber: 887
    functionLinenumberEnd: 891
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:888,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:889,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].flush()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1"
    linkageType: ""
    functionLinenumber: 893
    functionLinenumberEnd: 897
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].flush()"
    - "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:894,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].flush()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:895,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].voidPromise()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1"
    linkageType: ""
    functionLinenumber: 899
    functionLinenumberEnd: 901
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    functionUses: 13
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:900,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].outboundBuffer()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1"
    linkageType: ""
    functionLinenumber: 904
    functionLinenumberEnd: 906
    functionDepth: 0
    returnType: "io.netty.channel.ChannelOutboundBuffer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].outboundBuffer()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1:905,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].outboundBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].values()"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames:124,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames:124,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].<init>(java.lang.String,int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 173
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    - "[io.netty.util.AsciiString].cached(java.lang.String)"
    functionUses: 6
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames:170,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames:171,1"
      Dst: "[io.netty.util.AsciiString].cached(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionDepth: 0
    returnType: "io.netty.util.AsciiString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer$2"
    linkageType: ""
    functionLinenumber: 621
    functionLinenumberEnd: 624
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelWritabilityChanged()"
    - "[io.netty.channel.ChannelPipeline].fireChannelWritabilityChanged()"
    functionUses: 49
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer$2:622,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelWritabilityChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackStaticTable].newEmptyHeaderField(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackStaticTable"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionDepth: 5
    returnType: "io.netty.handler.codec.http2.HpackHeaderField"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackHeaderField].<init>(java.lang.CharSequence,java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].cached(java.lang.String)"
    functionUses: 47
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackStaticTable:113,1"
      Dst: "[io.netty.util.AsciiString].cached(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HpackStaticTable:113,1"
      Dst: "[io.netty.handler.codec.http2.HpackHeaderField].<init>(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].cached(java.lang.String)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1400
    functionLinenumberEnd: 1404
    functionDepth: 4
    returnType: "io.netty.util.AsciiString"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    functionUses: 214
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1401,1"
      Dst: "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].<init>(java.lang.CharSequence,int,int)"
    - "[java.nio.CharBuffer].length()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.lang.CharSequence].length()"
    functionUses: 7
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:210,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:210,1"
      Dst: "[io.netty.util.AsciiString].<init>(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].<init>(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 230
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - "[io.netty.util.AsciiString].c2b(char)"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 2
    ICount: 37
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:218"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:223"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "length()"
        - "append(int)"
      - BranchSide: "io.netty.util.AsciiString:222"
        BranchSideFuncs:
        - "allocateUninitializedArray(int)"
    - Branch String: "io.netty.util.AsciiString:224"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:226"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:217,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.AsciiString:218,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:218,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.util.AsciiString:219,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.AsciiString:219,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.AsciiString:219,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.AsciiString:220,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.AsciiString:220,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.AsciiString:220,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.util.AsciiString:223,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - Src: "io.netty.util.AsciiString:225,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.AsciiString:225,1"
      Dst: "[io.netty.util.AsciiString].c2b(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].c2b(char)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1856
    functionLinenumberEnd: 1858
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1857"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1856"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackHeaderField].<init>(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHeaderField"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 4
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackHeaderField:52,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.HpackHeaderField:53,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackStaticTable].newHeaderField(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackStaticTable"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionDepth: 5
    returnType: "io.netty.handler.codec.http2.HpackHeaderField"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackHeaderField].<init>(java.lang.CharSequence,java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].cached(java.lang.String)"
    functionUses: 14
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackStaticTable:117,1"
      Dst: "[io.netty.util.AsciiString].cached(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HpackStaticTable:117,1"
      Dst: "[io.netty.handler.codec.http2.HpackHeaderField].<init>(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackStaticTable].getEntry(int)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackStaticTable"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.HpackHeaderField"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.List].get(int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackStaticTable:177,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackStaticTable].getIndex(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackStaticTable"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionDepth: 10
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackStaticTable].getEntry(java.lang.CharSequence)"
    functionUses: 3
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackStaticTable:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackStaticTable:184"
        BranchSideFuncs:
        - "getEntry(java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackStaticTable:185,1"
      Dst: "[io.netty.handler.codec.http2.HpackStaticTable].getEntry(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.HpackStaticTable].getEntry(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackStaticTable"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 216
    functionDepth: 9
    returnType: "io.netty.handler.codec.http2.HpackStaticTable$HeaderNameIndex"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackStaticTable].headerNameBucket(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.HpackUtil].equalsVariableTime(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 2
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackStaticTable:212"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackStaticTable:215"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackStaticTable:214"
        BranchSideFuncs:
        - "equalsVariableTime(java.lang.CharSequence,java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http2.HpackStaticTable:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackStaticTable:214"
        BranchSideFuncs:
        - "equalsVariableTime(java.lang.CharSequence,java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackStaticTable:210,1"
      Dst: "[io.netty.handler.codec.http2.HpackStaticTable].headerNameBucket(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HpackStaticTable:215,1"
      Dst: "[io.netty.handler.codec.http2.HpackUtil].equalsVariableTime(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.HpackStaticTable].headerNameBucket(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackStaticTable"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 220
    functionDepth: 5
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackStaticTable].bucket(java.lang.CharSequence,int,int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackStaticTable:219,1"
      Dst: "[io.netty.handler.codec.http2.HpackStaticTable].bucket(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackStaticTable].bucket(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackStaticTable"
    linkageType: ""
    functionLinenumber: 226
    functionLinenumberEnd: 228
    functionDepth: 4
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackStaticTable:227,1"
      Dst: "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1411
    functionLinenumberEnd: 1420
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[io.netty.util.AsciiString].hashCode()"
    - "[java.lang.Object].hashCode()"
    - "[java.nio.CharBuffer].hashCode()"
    - "[io.netty.util.internal.PlatformDependent].hashCodeAscii(java.lang.CharSequence)"
    functionUses: 18
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1412"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1415"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1414"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1415"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1419"
        BranchSideFuncs:
        - "hashCode()"
      - BranchSide: "io.netty.util.AsciiString:1418"
        BranchSideFuncs:
        - "hashCodeAscii(java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.util.AsciiString:1416,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "io.netty.util.AsciiString:1419,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hashCodeAscii(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].hashCodeAscii(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 945
    functionLinenumberEnd: 983
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[io.netty.util.internal.PlatformDependent].hashCodeAsciiCompute(java.lang.CharSequence,int,int)"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.internal.PlatformDependent].hashCodeAsciiSanitizeByte(char)"
    - "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(int)"
    - "[io.netty.util.internal.PlatformDependent].hashCodeAsciiSanitizeShort(java.lang.CharSequence,int)"
    - "[io.netty.util.internal.PlatformDependent].hashCodeAsciiSanitizeInt(java.lang.CharSequence,int)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 1
    ICount: 97
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:952"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:956"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:955"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:953"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:952"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:956"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:965"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:964"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:958"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:965"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:964"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:960"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:965"
        BranchSideFuncs:
        - "hashCodeAsciiCompute(java.lang.CharSequence,int,int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:964"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:965"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:968"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:967"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:969"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:967"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:969"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:969"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:967"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:969"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:972"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:973"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:973"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:972"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:973"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:973"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:973"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:972"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:973"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:978"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:977"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:974"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:974"
        BranchSideFuncs:
        - "hashCodeAsciiSanitizeShort(java.lang.CharSequence,int)"
        - "hashCodeAsciiSanitize(int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:973"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:978"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:982"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:981"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:979"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:978"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:979"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:979"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:978"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:946,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.internal.PlatformDependent:954,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hashCodeAsciiCompute(java.lang.CharSequence,int,int)"
    - Src: "io.netty.util.internal.PlatformDependent:970,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.internal.PlatformDependent:970,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hashCodeAsciiSanitizeByte(char)"
    - Src: "io.netty.util.internal.PlatformDependent:975,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hashCodeAsciiSanitizeShort(java.lang.CharSequence,int)"
    - Src: "io.netty.util.internal.PlatformDependent:975,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(int)"
    - Src: "io.netty.util.internal.PlatformDependent:980,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hashCodeAsciiSanitizeInt(java.lang.CharSequence,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 48
    CyclomaticComplexity: 18
  - functionName: "[io.netty.util.internal.PlatformDependent].hashCodeAsciiCompute(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 646
    functionLinenumberEnd: 659
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].hashCodeAsciiSanitizeInt(java.lang.CharSequence,int)"
    functionUses: 4
    ICount: 21
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:647"
      Branch Sides: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:650,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hashCodeAsciiSanitizeInt(java.lang.CharSequence,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].hashCodeAsciiSanitizeInt(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 664
    functionLinenumberEnd: 676
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 5
    ICount: 48
    EdgeCount: 56
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:665"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:671"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:667,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].hashCodeAsciiSanitizeByte(char)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 694
    functionLinenumberEnd: 696
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].hashCodeAsciiSanitizeShort(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 681
    functionLinenumberEnd: 689
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 1
    ICount: 24
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:682"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:686"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:684,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 890
    functionLinenumberEnd: 892
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackUtil].equalsVariableTime(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackUtil"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 8
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].contentEquals(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackUtil:75,1"
      Dst: "[io.netty.util.AsciiString].contentEquals(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].contentEquals(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1502
    functionLinenumberEnd: 1524
    functionDepth: 7
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].contentEquals(java.lang.CharSequence)"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 6
    ICount: 35
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1503"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1504"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1503"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1503"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1507"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1506"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1504"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1503"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1507"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1511"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1510"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1511"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1515"
        BranchSideFuncs:
        - "contentEquals(java.lang.CharSequence)"
      - BranchSide: "io.netty.util.AsciiString:1514"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1515"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1518"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1517"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.util.AsciiString:1518"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1523"
        BranchSideFuncs:
        - "charAt(int)"
      - BranchSide: "io.netty.util.AsciiString:1522"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1519"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1518"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1517"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "io.netty.util.AsciiString:1508,1"
      Dst: "[io.netty.util.AsciiString].contentEquals(java.lang.CharSequence)"
    - Src: "io.netty.util.AsciiString:1515,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:1519,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.AsciiString].contentEquals(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1034
    functionLinenumberEnd: 1052
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[io.netty.util.AsciiString].equals(java.lang.Object)"
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[io.netty.util.AsciiString].b2c(byte)"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 9
    ICount: 29
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1035"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1039"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1038"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1039"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1040"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1039"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1039"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1042"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1041"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1042"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1046"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.util.AsciiString:1045"
        BranchSideFuncs:
        - "arrayOffset()"
        - "length()"
    - Branch String: "io.netty.util.AsciiString:1046"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1051"
        BranchSideFuncs:
        - "b2c(byte)"
        - "charAt(int)"
      - BranchSide: "io.netty.util.AsciiString:1050"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1047"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1046"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1045"
        BranchSideFuncs:
        - "arrayOffset()"
        - "length()"
    Callsites:
    - Src: "io.netty.util.AsciiString:1039,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:1039,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:1043,1"
      Dst: "[io.netty.util.AsciiString].equals(java.lang.Object)"
    - Src: "io.netty.util.AsciiString:1046,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.util.AsciiString:1047,1"
      Dst: "[io.netty.util.AsciiString].b2c(byte)"
    - Src: "io.netty.util.AsciiString:1047,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.AsciiString].equals(java.lang.Object)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1137
    functionLinenumberEnd: 1149
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].hashCode()"
    - "[io.netty.util.AsciiString].array()"
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[io.netty.util.internal.PlatformDependent].equals(byte[],int,byte[],int,int)"
    functionUses: 13
    ICount: 26
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1138"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1139"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1138"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1138"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1141"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1140"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1141"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1145"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1144"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1146"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:-1"
        BranchSideFuncs:
        - "hashCode()"
      - BranchSide: "io.netty.util.AsciiString:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1147"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:-1"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
        - "equals(byte[],int,byte[],int,int)"
        - "length()"
      - BranchSide: "io.netty.util.AsciiString:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1148"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1138,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.util.AsciiString:1146,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:1147,1"
      Dst: "[io.netty.util.AsciiString].hashCode()"
    - Src: "io.netty.util.AsciiString:1148,1"
      Dst: "[io.netty.util.AsciiString].array()"
    - Src: "io.netty.util.AsciiString:1148,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.util.AsciiString:1148,1"
      Dst: "[io.netty.util.internal.PlatformDependent].equals(byte[],int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.AsciiString].hashCode()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1127
    functionLinenumberEnd: 1134
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].hashCodeAscii(byte[],int,int)"
    functionUses: 16
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1129"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1133"
        BranchSideFuncs:
        - "hashCodeAscii(byte[],int,int)"
      - BranchSide: "io.netty.util.AsciiString:1132"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1130,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hashCodeAscii(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].hashCodeAscii(byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 929
    functionLinenumberEnd: 933
    functionDepth: 3
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.util.internal.PlatformDependent0].unalignedAccess()"
    - "[io.netty.util.internal.PlatformDependent].hashCodeAsciiSafe(byte[],int,int)"
    - "[io.netty.util.internal.PlatformDependent0].hashCodeAscii(byte[],int,int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:930"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:931"
        BranchSideFuncs:
        - "hashCodeAsciiSafe(byte[],int,int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:930"
        BranchSideFuncs:
        - "hashCodeAsciiSafe(byte[],int,int)"
    - Branch String: "io.netty.util.internal.PlatformDependent:930"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:932"
        BranchSideFuncs:
        - "hashCodeAsciiSafe(byte[],int,int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:931"
        BranchSideFuncs:
        - "hashCodeAscii(byte[],int,int)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:930,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.util.internal.PlatformDependent:930,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].unalignedAccess()"
    - Src: "io.netty.util.internal.PlatformDependent:931,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hashCodeAsciiSafe(byte[],int,int)"
    - Src: "io.netty.util.internal.PlatformDependent:932,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].hashCodeAscii(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent0].unalignedAccess()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 532
    functionLinenumberEnd: 534
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].hashCodeAsciiSafe(byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1437
    functionLinenumberEnd: 1466
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getLongSafe(byte[],int)"
    - "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiCompute(long,int)"
    - "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(byte)"
    - "[io.netty.util.internal.PlatformDependent].getShortSafe(byte[],int)"
    - "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(short)"
    - "[io.netty.util.internal.PlatformDependent].getIntSafe(byte[],int)"
    - "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(int)"
    functionUses: 1
    ICount: 76
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1441"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1443"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1442,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getLongSafe(byte[],int)"
    - Src: "io.netty.util.internal.PlatformDependent:1442,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiCompute(long,int)"
    - Src: "io.netty.util.internal.PlatformDependent:1446,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(byte)"
    - Src: "io.netty.util.internal.PlatformDependent:1447,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getShortSafe(byte[],int)"
    - Src: "io.netty.util.internal.PlatformDependent:1447,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(short)"
    - Src: "io.netty.util.internal.PlatformDependent:1448,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getIntSafe(byte[],int)"
    - Src: "io.netty.util.internal.PlatformDependent:1448,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].getLongSafe(byte[],int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 602
    functionLinenumberEnd: 614
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 94
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:603"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:613"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:612"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiCompute(long,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 884
    functionLinenumberEnd: 886
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(int)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:885,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(byte)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 898
    functionLinenumberEnd: 900
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].getShortSafe(byte[],int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 636
    functionLinenumberEnd: 641
    functionDepth: 0
    returnType: "short"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:637"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:640"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:639"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(short)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 894
    functionLinenumberEnd: 896
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].getIntSafe(byte[],int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 623
    functionLinenumberEnd: 631
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:624"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:630"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:629"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].hashCodeAscii(byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 852
    functionLinenumberEnd: 878
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getLong(java.lang.Object,long)"
    - "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiCompute(long,int)"
    - "[sun.misc.Unsafe].getByte(java.lang.Object,long)"
    - "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(byte)"
    - "[sun.misc.Unsafe].getShort(java.lang.Object,long)"
    - "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(short)"
    - "[sun.misc.Unsafe].getInt(java.lang.Object,long)"
    - "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(int)"
    functionUses: 1
    ICount: 84
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:857"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:859"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:860"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:863"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent0:862"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:864"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:863"
        BranchSideFuncs:
        - "getByte(java.lang.Object,long)"
        - "hashCodeAsciiSanitize(byte)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:862"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:864"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:-1"
        BranchSideFuncs:
        - "getByte(java.lang.Object,long)"
        - "hashCodeAsciiSanitize(byte)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:864"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:863"
        BranchSideFuncs:
        - "getByte(java.lang.Object,long)"
        - "hashCodeAsciiSanitize(byte)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:862"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:864"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:869"
        BranchSideFuncs:
        - "getByte(java.lang.Object,long)"
        - "hashCodeAsciiSanitize(byte)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:868"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:869"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:869"
        BranchSideFuncs:
        - "getShort(java.lang.Object,long)"
        - "hashCodeAsciiSanitize(short)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:868"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:869"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:-1"
        BranchSideFuncs:
        - "getShort(java.lang.Object,long)"
        - "hashCodeAsciiSanitize(short)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:869"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:869"
        BranchSideFuncs:
        - "getShort(java.lang.Object,long)"
        - "hashCodeAsciiSanitize(short)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:868"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:869"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:874"
        BranchSideFuncs:
        - "getShort(java.lang.Object,long)"
        - "hashCodeAsciiSanitize(short)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:873"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:871"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:870"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent0:869"
        BranchSideFuncs:
        - "getShort(java.lang.Object,long)"
        - "hashCodeAsciiSanitize(short)"
    - Branch String: "io.netty.util.internal.PlatformDependent0:874"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:877"
        BranchSideFuncs:
        - "getInt(java.lang.Object,long)"
        - "hashCodeAsciiSanitize(int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:876"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:858,1"
      Dst: "[sun.misc.Unsafe].getLong(java.lang.Object,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:858,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiCompute(long,int)"
    - Src: "io.netty.util.internal.PlatformDependent0:865,1"
      Dst: "[sun.misc.Unsafe].getByte(java.lang.Object,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:865,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(byte)"
    - Src: "io.netty.util.internal.PlatformDependent0:870,1"
      Dst: "[sun.misc.Unsafe].getShort(java.lang.Object,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:870,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(short)"
    - Src: "io.netty.util.internal.PlatformDependent0:875,1"
      Dst: "[sun.misc.Unsafe].getInt(java.lang.Object,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:875,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].hashCodeAsciiSanitize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 33
    CyclomaticComplexity: 11
  - functionName: "[io.netty.util.internal.PlatformDependent].equals(byte[],int,byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 874
    functionLinenumberEnd: 878
    functionDepth: 1
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.util.internal.PlatformDependent0].unalignedAccess()"
    - "[io.netty.util.internal.PlatformDependent].equalsSafe(byte[],int,byte[],int,int)"
    - "[io.netty.util.internal.PlatformDependent0].equals(byte[],int,byte[],int,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:875"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:876"
        BranchSideFuncs:
        - "equalsSafe(byte[],int,byte[],int,int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:875"
        BranchSideFuncs:
        - "equalsSafe(byte[],int,byte[],int,int)"
    - Branch String: "io.netty.util.internal.PlatformDependent:875"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:877"
        BranchSideFuncs:
        - "equalsSafe(byte[],int,byte[],int,int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:876"
        BranchSideFuncs:
        - "equals(byte[],int,byte[],int,int)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:875,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.util.internal.PlatformDependent:875,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].unalignedAccess()"
    - Src: "io.netty.util.internal.PlatformDependent:876,1"
      Dst: "[io.netty.util.internal.PlatformDependent].equalsSafe(byte[],int,byte[],int,int)"
    - Src: "io.netty.util.internal.PlatformDependent:877,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].equals(byte[],int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent].equalsSafe(byte[],int,byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1414
    functionLinenumberEnd: 1422
    functionDepth: 0
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1416"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1421"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1420"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1417"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1416"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1415"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent0].equals(byte[],int,byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 772
    functionLinenumberEnd: 799
    functionDepth: 0
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getLong(java.lang.Object,long)"
    - "[sun.misc.Unsafe].getInt(java.lang.Object,long)"
    - "[sun.misc.Unsafe].getChar(java.lang.Object,long)"
    - "[sun.misc.Unsafe].getByte(java.lang.Object,long)"
    functionUses: 1
    ICount: 77
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:776"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:784"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent0:783"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:778"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:784"
        BranchSideFuncs:
        - "getLong(java.lang.Object,long)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:783"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:779"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:777"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent0:776"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:784"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:791"
        BranchSideFuncs:
        - "getInt(java.lang.Object,long)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:790"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:787"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:791"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent0:790"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:792"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:797"
        BranchSideFuncs:
        - "getChar(java.lang.Object,long)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:796"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:793"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:793"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:792"
        BranchSideFuncs:
        - "getChar(java.lang.Object,long)"
    - Branch String: "io.netty.util.internal.PlatformDependent0:795"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:797"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:797"
        BranchSideFuncs:
        - "getByte(java.lang.Object,long)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:796"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:798"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:796"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:779,1"
      Dst: "[sun.misc.Unsafe].getLong(java.lang.Object,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:787,1"
      Dst: "[sun.misc.Unsafe].getInt(java.lang.Object,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:793,1"
      Dst: "[sun.misc.Unsafe].getChar(java.lang.Object,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:795,1"
      Dst: "[sun.misc.Unsafe].getByte(java.lang.Object,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.http2.HpackStaticTable].getIndexInsensitive(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackStaticTable"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 207
    functionDepth: 10
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[io.netty.handler.codec.http2.HpackStaticTable].getEntry(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.HpackStaticTable].headerBucket(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.HpackUtil].equalsVariableTime(java.lang.CharSequence,java.lang.CharSequence)"
    - "[java.lang.CharSequence].length()"
    functionUses: 2
    ICount: 29
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackStaticTable:194"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackStaticTable:198"
        BranchSideFuncs:
        - "getEntry(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http2.HpackStaticTable:197"
        BranchSideFuncs:
        - "headerBucket(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http2.HpackStaticTable:196"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http2.HpackStaticTable:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackStaticTable:194"
        BranchSideFuncs:
        - "getEntry(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http2.HpackStaticTable:200"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackStaticTable:203"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackStaticTable:202"
        BranchSideFuncs:
        - "equalsVariableTime(java.lang.CharSequence,java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http2.HpackStaticTable:203"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackStaticTable:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackStaticTable:203"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackStaticTable:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackStaticTable:194,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http2.HpackStaticTable:195,1"
      Dst: "[io.netty.handler.codec.http2.HpackStaticTable].getEntry(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HpackStaticTable:198,1"
      Dst: "[io.netty.handler.codec.http2.HpackStaticTable].headerBucket(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HpackStaticTable:203,1"
      Dst: "[io.netty.handler.codec.http2.HpackUtil].equalsVariableTime(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.HpackStaticTable].headerBucket(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackStaticTable"
    linkageType: ""
    functionLinenumber: 222
    functionLinenumberEnd: 224
    functionDepth: 5
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackStaticTable].bucket(java.lang.CharSequence,int,int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackStaticTable:223,1"
      Dst: "[io.netty.handler.codec.http2.HpackStaticTable].bucket(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackStaticTable].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackStaticTable"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackStaticTable:255,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.AbstractNioByteChannel$1].<init>(io.netty.channel.nio.AbstractNioByteChannel)"
    functionSourceFile: "io.netty.channel.nio.AbstractNioByteChannel$1"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.nio.AbstractNioByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$1:49,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    functionSourceFile: "io.netty.channel.nio.AbstractNioByteChannel$1"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe].flush0()"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    functionUses: 49
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$1:54,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$1:54,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe].flush0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe].<init>(io.netty.channel.kqueue.AbstractKQueueStreamChannel)"
    functionSourceFile: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe"
    linkageType: ""
    functionLinenumber: 503
    functionLinenumberEnd: 505
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.AbstractKQueueStreamChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:504,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe].prepareToClose()"
    functionSourceFile: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe"
    linkageType: ""
    functionLinenumber: 507
    functionLinenumberEnd: 509
    functionDepth: 0
    returnType: "java.util.concurrent.Executor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].prepareToClose()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:508,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].prepareToClose()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe].readReady(io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle)"
    functionSourceFile: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe"
    linkageType: ""
    functionLinenumber: 512
    functionLinenumberEnd: 575
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].shouldBreakReadReady(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].clearReadFilter0()"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReadyBefore()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].shutdownInput(boolean)"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe].handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReadyFinally(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].config()"
    - "[io.netty.channel.ChannelConfig].getAllocator()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    functionUses: 4
    ICount: 60
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:514"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:518"
        BranchSideFuncs:
        - "clearReadFilter0()"
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:517"
        BranchSideFuncs:
        - "reset(io.netty.channel.ChannelConfig)"
        - "pipeline()"
        - "readReadyBefore()"
        - "getAllocator()"
    - Branch String: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:531"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:542"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "continueReading()"
        - "readReadyFinally(io.netty.channel.ChannelConfig)"
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "reset(io.netty.channel.ChannelConfig)"
        - "pipeline()"
        - "fireChannelRead(java.lang.Object)"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "readReadyBefore()"
        - "incMessagesRead(int)"
        - "handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle)"
        - "getAllocator()"
        - "readComplete()"
        - "shutdownInput(boolean)"
        - "lastBytesRead()"
        - "release()"
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:541"
        BranchSideFuncs:
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "fireChannelRead(java.lang.Object)"
        - "incMessagesRead(int)"
    - Branch String: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:535"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:-1"
        BranchSideFuncs:
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:536"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:563"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "continueReading()"
        - "readReadyFinally(io.netty.channel.ChannelConfig)"
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "reset(io.netty.channel.ChannelConfig)"
        - "pipeline()"
        - "fireChannelRead(java.lang.Object)"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "readReadyBefore()"
        - "incMessagesRead(int)"
        - "handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle)"
        - "getAllocator()"
        - "readComplete()"
        - "shutdownInput(boolean)"
        - "lastBytesRead()"
        - "release()"
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:562"
        BranchSideFuncs:
        - "fireChannelReadComplete()"
        - "readComplete()"
    - Branch String: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:547"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:561"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "continueReading()"
        - "readReadyFinally(io.netty.channel.ChannelConfig)"
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "reset(io.netty.channel.ChannelConfig)"
        - "pipeline()"
        - "fireChannelRead(java.lang.Object)"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "readReadyBefore()"
        - "incMessagesRead(int)"
        - "handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle)"
        - "getAllocator()"
        - "readComplete()"
        - "shutdownInput(boolean)"
        - "lastBytesRead()"
        - "release()"
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:560"
        BranchSideFuncs:
        - "continueReading()"
    - Branch String: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:561"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:529"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "continueReading()"
        - "readReadyFinally(io.netty.channel.ChannelConfig)"
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "reset(io.netty.channel.ChannelConfig)"
        - "pipeline()"
        - "fireChannelRead(java.lang.Object)"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "readReadyBefore()"
        - "incMessagesRead(int)"
        - "handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle)"
        - "getAllocator()"
        - "readComplete()"
        - "shutdownInput(boolean)"
        - "lastBytesRead()"
        - "release()"
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:528"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
    - Branch String: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:566"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:572"
        BranchSideFuncs:
        - "shutdownInput(boolean)"
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:571"
        BranchSideFuncs:
        - "readReadyFinally(io.netty.channel.ChannelConfig)"
    Callsites:
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:513,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].config()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:514,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].shouldBreakReadReady(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:515,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].clearReadFilter0()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:518,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:519,1"
      Dst: "[io.netty.channel.ChannelConfig].getAllocator()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:520,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].reset(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:521,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReadyBefore()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:529,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:530,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:530,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].lastBytesRead(int)"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:531,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:533,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:542,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:544,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:561,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:563,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:564,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:567,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].shutdownInput(boolean)"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:572,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReadyFinally(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:570,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe].handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].reset(io.netty.channel.ChannelConfig)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].getRcvAllocTransportProvidesGuess()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].delegate()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].reset(io.netty.channel.ChannelConfig)"
    functionUses: 15
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:54,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].getRcvAllocTransportProvidesGuess()"
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:55,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].delegate()"
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:55,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].reset(io.netty.channel.ChannelConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].getRcvAllocTransportProvidesGuess()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].delegate()"
    functionSourceFile: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionDepth: 0
    returnType: "io.netty.channel.RecvByteBufAllocator$Handle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].updateAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].guess0()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].delegate()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].allocate(io.netty.buffer.ByteBufAllocator)"
    functionUses: 12
    ICount: 14
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:62"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:63"
        BranchSideFuncs:
        - "delegate()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
      - BranchSide: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:62"
        BranchSideFuncs:
        - "delegate()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:61,1"
      Dst: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].updateAllocator(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:62,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].guess0()"
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:62,1"
      Dst: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:63,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].delegate()"
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:63,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].allocate(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].updateAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].guess0()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(long,long)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:110,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    functionUses: 27
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:53,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].lastBytesRead(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 71
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(long,long)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].delegate()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].lastBytesRead(int)"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl:io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead(int)"
    functionUses: 22
    ICount: 13
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:68"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:68"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "delegate()"
        - "max(long,long)"
      - BranchSide: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:67"
        BranchSideFuncs:
        - "max(long,long)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:68,1"
      Dst: "[java.lang.Math].max(long,long)"
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:69,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].delegate()"
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:69,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    functionSourceFile: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].lastBytesRead()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].lastBytesRead()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead()"
    functionUses: 26
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle:165,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    functionSourceFile: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].incMessagesRead(int)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].incMessagesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].incMessagesRead(int)"
    functionUses: 18
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle:155,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].incMessagesRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    functionUses: 13
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:80,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.util.UncheckedBooleanSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].delegate()"
    - "[io.netty.channel.RecvByteBufAllocator$ExtendedHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    functionUses: 6
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:74,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].delegate()"
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:74,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$ExtendedHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    functionSourceFile: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].readComplete()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].readComplete()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].readComplete()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].readComplete()"
    functionUses: 24
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle:185,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].readComplete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe].handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle)"
    functionSourceFile: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe"
    linkageType: ""
    functionLinenumber: 577
    functionLinenumberEnd: 598
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelPipeline"
    - "io.netty.buffer.ByteBuf"
    - "java.lang.Throwable"
    - "boolean"
    - "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].failConnectPromise(java.lang.Throwable)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].shutdownInput(boolean)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 1
    ICount: 25
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:578"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:586"
        BranchSideFuncs:
        - "isReadable()"
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:585"
        BranchSideFuncs:
        - "failConnectPromise(java.lang.Throwable)"
    - Branch String: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:579"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:583"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:582"
        BranchSideFuncs:
        - "release()"
    - Branch String: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:586"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:597"
        BranchSideFuncs:
        - "fireChannelReadComplete()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "readComplete()"
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:596"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:593"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:594"
        BranchSideFuncs:
        - "shutdownInput(boolean)"
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:593"
        BranchSideFuncs:
        - "shutdownInput(boolean)"
    - Branch String: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:593"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:594"
        BranchSideFuncs:
        - "shutdownInput(boolean)"
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:593"
        BranchSideFuncs:
        - "shutdownInput(boolean)"
    - Branch String: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:593"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:597"
        BranchSideFuncs:
        - "shutdownInput(boolean)"
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:596"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:579,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:581,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:583,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:586,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].failConnectPromise(java.lang.Throwable)"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:587,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:588,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:589,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe:594,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].shutdownInput(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.CookieDecoder].<init>(boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:47,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieDecoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder].decode(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "io.netty.handler.codec.http.cookie.Cookie"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].indexOf(int,int)"
    - "[io.netty.handler.codec.http.cookie.CookieDecoder].initCookie(java.lang.String,int,int,int,int)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].<init>(io.netty.handler.codec.http.cookie.DefaultCookie,java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].appendAttribute(int,int,int,int)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].cookie()"
    functionUses: 0
    ICount: 89
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:58"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:62"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:61"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:71"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:70"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:72"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:78"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:78"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:78"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:78"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:78"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:78"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:84"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:92"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:98"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:102"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:107"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:108"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:107"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:117"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:122"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:125"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:129"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:125"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:129"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:130"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:140"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:138"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:137"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:56,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:56,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:71,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:110,1"
      Dst: "[java.lang.String].indexOf(int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:132,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieDecoder].initCookie(java.lang.String,int,int,int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:138,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].<init>(io.netty.handler.codec.http.cookie.DefaultCookie,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:141,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].appendAttribute(int,int,int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieDecoder:144,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieDecoder$CookieBuilder].cookie()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 41
    CyclomaticComplexity: 19
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$ServerHandshakeStateEvent].values()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$ServerHandshakeStateEvent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$ServerHandshakeStateEvent[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$ServerHandshakeStateEvent:59,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$ServerHandshakeStateEvent].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$ServerHandshakeStateEvent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$ServerHandshakeStateEvent"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$ServerHandshakeStateEvent:59,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$ServerHandshakeStateEvent].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$ServerHandshakeStateEvent"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$ServerHandshakeStateEvent:59,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise].<init>(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise"
    linkageType: ""
    functionLinenumber: 486
    functionLinenumberEnd: 489
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPromise].<init>(io.netty.channel.Channel)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise:487,1"
      Dst: "[io.netty.channel.DefaultChannelPromise].<init>(io.netty.channel.Channel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise].registered()"
    functionSourceFile: "io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise"
    linkageType: ""
    functionLinenumber: 490
    functionLinenumberEnd: 493
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise].executor()"
    functionSourceFile: "io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise"
    linkageType: ""
    functionLinenumber: 495
    functionLinenumberEnd: 504
    functionDepth: 2
    returnType: "io.netty.util.concurrent.EventExecutor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPromise].executor()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise:496"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise:502"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise:500,1"
      Dst: "[io.netty.channel.DefaultChannelPromise].executor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].executor()"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 63
    functionDepth: 1
    returnType: "io.netty.util.concurrent.EventExecutor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].executor()"
    - "[io.netty.channel.DefaultChannelPromise].channel()"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.channel.Channel].eventLoop()"
    functionUses: 4
    ICount: 7
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPromise:59"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPromise:62"
        BranchSideFuncs:
        - "channel()"
        - "eventLoop()"
      - BranchSide: "io.netty.channel.DefaultChannelPromise:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPromise:58,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].executor()"
    - Src: "io.netty.channel.DefaultChannelPromise:60,1"
      Dst: "[io.netty.channel.DefaultChannelPromise].channel()"
    - Src: "io.netty.channel.DefaultChannelPromise:60,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].channel()"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "io.netty.channel.Channel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.misc.Signal$NativeHandler].getHandler()"
    functionSourceFile: "jdk.internal.misc.Signal$NativeHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.misc.Signal$NativeHandler].<init>(long)"
    functionSourceFile: "jdk.internal.misc.Signal$NativeHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.misc.Signal$NativeHandler:275,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.misc.Signal$NativeHandler].handle(jdk.internal.misc.Signal)"
    functionSourceFile: "jdk.internal.misc.Signal$NativeHandler"
    linkageType: ""
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "jdk.internal.misc.Signal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.misc.Signal$NativeHandler:280,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.misc.Signal$NativeHandler].toString()"
    functionSourceFile: "jdk.internal.misc.Signal$NativeHandler"
    linkageType: ""
    functionLinenumber: 283
    functionLinenumberEnd: 286
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].toString()"
    functionUses: 19
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "jdk.internal.misc.Signal$NativeHandler:284"
      Branch Sides:
      - BranchSide: "jdk.internal.misc.Signal$NativeHandler:285"
        BranchSideFuncs:
        - "toString()"
      - BranchSide: "jdk.internal.misc.Signal$NativeHandler:284"
        BranchSideFuncs:
        - "toString()"
    - Branch String: "jdk.internal.misc.Signal$NativeHandler:285"
      Branch Sides:
      - BranchSide: "jdk.internal.misc.Signal$NativeHandler:284"
        BranchSideFuncs:
        - "toString()"
    Callsites:
    - Src: "jdk.internal.misc.Signal$NativeHandler:285,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.logging.JdkLoggerFactory].<init>()"
    functionSourceFile: "io.netty.util.internal.logging.JdkLoggerFactory"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.InternalLoggerFactory].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.JdkLoggerFactory:34,1"
      Dst: "[io.netty.util.internal.logging.InternalLoggerFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.JdkLoggerFactory].newInstance(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.JdkLoggerFactory"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 1
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.JdkLogger].<init>(java.util.logging.Logger)"
    - "[java.util.logging.Logger].getLogger(java.lang.String)"
    functionUses: 5
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.JdkLoggerFactory:39,1"
      Dst: "[java.util.logging.Logger].getLogger(java.lang.String)"
    - Src: "io.netty.util.internal.logging.JdkLoggerFactory:39,1"
      Dst: "[io.netty.util.internal.logging.JdkLogger].<init>(java.util.logging.Logger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.JdkLogger].<init>(java.util.logging.Logger)"
    functionSourceFile: "io.netty.util.internal.logging.JdkLogger"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.logging.Logger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.AbstractInternalLogger].<init>(java.lang.String)"
    - "[java.util.logging.Logger].getName()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.JdkLogger:57,1"
      Dst: "[java.util.logging.Logger].getName()"
    - Src: "io.netty.util.internal.logging.JdkLogger:57,1"
      Dst: "[io.netty.util.internal.logging.AbstractInternalLogger].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel$OioSctpServerChannelConfig].<init>(io.netty.channel.sctp.oio.OioSctpServerChannel,io.netty.channel.sctp.oio.OioSctpServerChannel,com.sun.nio.sctp.SctpServerChannel)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel$OioSctpServerChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.sctp.oio.OioSctpServerChannel"
    - "io.netty.channel.sctp.oio.OioSctpServerChannel"
    - "com.sun.nio.sctp.SctpServerChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].<init>(io.netty.channel.sctp.SctpServerChannel,com.sun.nio.sctp.SctpServerChannel)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel$OioSctpServerChannelConfig:300,1"
      Dst: "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].<init>(io.netty.channel.sctp.SctpServerChannel,com.sun.nio.sctp.SctpServerChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel$OioSctpServerChannelConfig].autoReadCleared()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel$OioSctpServerChannelConfig"
    linkageType: ""
    functionLinenumber: 304
    functionLinenumberEnd: 307
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].access$100(io.netty.channel.sctp.oio.OioSctpServerChannel)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel$OioSctpServerChannelConfig:305,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpServerChannel].access$100(io.netty.channel.sctp.oio.OioSctpServerChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].access$100(io.netty.channel.sctp.oio.OioSctpServerChannel)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.sctp.oio.OioSctpServerChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.oio.AbstractOioChannel].clearReadPending()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:54,1"
      Dst: "[io.netty.channel.oio.AbstractOioChannel].clearReadPending()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel$OioSctpServerChannelConfig].<init>(io.netty.channel.sctp.oio.OioSctpServerChannel,io.netty.channel.sctp.oio.OioSctpServerChannel,com.sun.nio.sctp.SctpServerChannel,io.netty.channel.sctp.oio.OioSctpServerChannel$1)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel$OioSctpServerChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.sctp.oio.OioSctpServerChannel"
    - "io.netty.channel.sctp.oio.OioSctpServerChannel"
    - "com.sun.nio.sctp.SctpServerChannel"
    - "io.netty.channel.sctp.oio.OioSctpServerChannel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$OioSctpServerChannelConfig].<init>(io.netty.channel.sctp.oio.OioSctpServerChannel,io.netty.channel.sctp.oio.OioSctpServerChannel,com.sun.nio.sctp.SctpServerChannel)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel$OioSctpServerChannelConfig:298,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpServerChannel$OioSctpServerChannelConfig].<init>(io.netty.channel.sctp.oio.OioSctpServerChannel,io.netty.channel.sctp.oio.OioSctpServerChannel,com.sun.nio.sctp.SctpServerChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame"
    linkageType: ""
    functionLinenumber: 22
    functionLinenumberEnd: 24
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame].name()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame].toString()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    functionUses: 19
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame:31,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool$2].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool$2"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.pool.SimpleChannelPool"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool$2:181,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool$2"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 186
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].access$000(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.ChannelFuture,io.netty.util.concurrent.Promise)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool$2:184,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].access$000(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.ChannelFuture,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].access$000(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.ChannelFuture,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.pool.SimpleChannelPool"
    - "io.netty.channel.ChannelFuture"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].notifyConnect(io.netty.channel.ChannelFuture,io.netty.util.concurrent.Promise)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:43,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].notifyConnect(io.netty.channel.ChannelFuture,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool$2"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool$2:181,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool$2].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.DecoderResult"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 2
    returnType: "io.netty.handler.codec.DecoderResult"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderResult].<init>(java.lang.Throwable)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 16
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DecoderResult:30,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.DecoderResult:30,1"
      Dst: "[io.netty.handler.codec.DecoderResult].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DecoderResult].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.DecoderResult"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DecoderResult:35,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.DecoderResult:36,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DecoderResult].isFinished()"
    functionSourceFile: "io.netty.handler.codec.DecoderResult"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DecoderResult:40"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DecoderResult:39"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.DecoderResult].isFailure()"
    functionSourceFile: "io.netty.handler.codec.DecoderResult"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DecoderResult:48"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DecoderResult:47"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DecoderResult:48"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DecoderResult:47"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.DecoderResult].cause()"
    functionSourceFile: "io.netty.handler.codec.DecoderResult"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionDepth: 1
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderResult].isFailure()"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DecoderResult:52"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DecoderResult:55"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DecoderResult:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DecoderResult:52,1"
      Dst: "[io.netty.handler.codec.DecoderResult].isFailure()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DecoderResult].toString()"
    functionSourceFile: "io.netty.handler.codec.DecoderResult"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 74
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderResult].isFinished()"
    - "[io.netty.handler.codec.DecoderResult].isSuccess()"
    - "[io.netty.handler.codec.DecoderResult].cause()"
    - "[java.lang.Throwable].toString()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].toString()"
    - "[io.netty.util.Signal].toString()"
    - "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].toString()"
    - "[javax.naming.NamingException].toString()"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 18
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DecoderResult:61"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DecoderResult:73"
        BranchSideFuncs:
        - "isSuccess()"
      - BranchSide: "io.netty.handler.codec.DecoderResult:72"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DecoderResult:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DecoderResult:66"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DecoderResult:65"
        BranchSideFuncs:
        - "<init>(int)"
        - "length()"
        - "cause()"
    Callsites:
    - Src: "io.netty.handler.codec.DecoderResult:61,1"
      Dst: "[io.netty.handler.codec.DecoderResult].isFinished()"
    - Src: "io.netty.handler.codec.DecoderResult:62,1"
      Dst: "[io.netty.handler.codec.DecoderResult].isSuccess()"
    - Src: "io.netty.handler.codec.DecoderResult:66,1"
      Dst: "[io.netty.handler.codec.DecoderResult].cause()"
    - Src: "io.netty.handler.codec.DecoderResult:66,1"
      Dst: "[java.lang.Throwable].toString()"
    - Src: "io.netty.handler.codec.DecoderResult:67,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.DecoderResult:67,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.DecoderResult:68,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.DecoderResult:70,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.DecoderResult:71,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultLastHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:35,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:35,1"
      Dst: "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultLastHttpContent"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>(io.netty.buffer.ByteBuf,boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:39,1"
      Dst: "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>(io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>(io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultLastHttpContent"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 47
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpContent].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent$TrailingHttpHeaders].<init>(boolean)"
    functionUses: 5
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:43,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:44,1"
      Dst: "[io.netty.handler.codec.http.DefaultLastHttpContent$TrailingHttpHeaders].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>(io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultLastHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpContent].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:49,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:50,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultLastHttpContent].copy()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultLastHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpContent].content()"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:56,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].content()"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:56,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:56,1"
      Dst: "[io.netty.handler.codec.http.DefaultLastHttpContent].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpContent].content()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpContent"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 30
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultLastHttpContent].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultLastHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>(io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpHeaders].set(io.netty.handler.codec.http.HttpHeaders)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:71,1"
      Dst: "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>(io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:72,1"
      Dst: "[io.netty.handler.codec.http.DefaultLastHttpContent].trailingHeaders()"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:72,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(io.netty.handler.codec.http.HttpHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpContent].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpContent"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpObject].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 14
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:32,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpObject].<init>()"
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:33,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpObject].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpObject"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpObject:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultLastHttpContent$TrailingHttpHeaders].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultLastHttpContent$TrailingHttpHeaders"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(boolean,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultLastHttpContent$TrailingHttpHeaders:140"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultLastHttpContent$TrailingHttpHeaders:140"
        BranchSideFuncs:
        - "<init>(boolean,io.netty.handler.codec.DefaultHeaders$NameValidator)"
      - BranchSide: "io.netty.handler.codec.http.DefaultLastHttpContent$TrailingHttpHeaders:139"
        BranchSideFuncs:
        - "<init>(boolean,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent$TrailingHttpHeaders:140,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(boolean,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(boolean,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 88
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.handler.codec.DefaultHeaders$NameValidator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(io.netty.handler.codec.DefaultHeaders)"
    - "[io.netty.handler.codec.DefaultHeadersImpl].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].valueValidator(boolean)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:86,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].valueValidator(boolean)"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:86,1"
      Dst: "[io.netty.handler.codec.DefaultHeadersImpl].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:81,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(io.netty.handler.codec.DefaultHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].valueValidator(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 359
    functionLinenumberEnd: 361
    functionDepth: 0
    returnType: "io.netty.handler.codec.ValueValidator<CharSequence>"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultHttpHeaders:360"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders:359"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.DefaultHeadersImpl].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeadersImpl"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.util.HashingStrategy"
    - "io.netty.handler.codec.ValueConverter"
    - "io.netty.handler.codec.DefaultHeaders$NameValidator"
    - "int"
    - "io.netty.handler.codec.DefaultHeaders$ValueValidator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeadersImpl:32,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(io.netty.handler.codec.DefaultHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.DefaultHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpHeaders].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:89,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultLastHttpContent].trailingHeaders()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultLastHttpContent"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultLastHttpContent].duplicate()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultLastHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpContent].content()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:61,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].content()"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:61,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:61,1"
      Dst: "[io.netty.handler.codec.http.DefaultLastHttpContent].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultLastHttpContent].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultLastHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpContent].content()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:66,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].content()"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:66,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:66,1"
      Dst: "[io.netty.handler.codec.http.DefaultLastHttpContent].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultLastHttpContent].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultLastHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpContent].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:78,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpContent].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpContent"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:74,1"
      Dst: "[io.netty.buffer.ByteBuf].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultLastHttpContent].retain()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultLastHttpContent"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpContent].retain()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:84,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpContent].retain()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpContent"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 5
    ICount: 4
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:68,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultLastHttpContent].touch()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultLastHttpContent"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpContent].touch()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:90,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpContent].touch()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpContent"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.SwappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.SimpleLeakAwareByteBuf:io.netty.buffer.UnreleasableByteBuf].touch()"
    - "[io.netty.buffer.ByteBuf].touch()"
    functionUses: 3
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:80,1"
      Dst: "[io.netty.buffer.ByteBuf].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultLastHttpContent].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultLastHttpContent"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpContent].touch(java.lang.Object)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:96,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpContent].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpContent"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpContent"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.SimpleLeakAwareByteBuf:io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 3
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:86,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultLastHttpContent].toString()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultLastHttpContent"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 114
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.DefaultHttpContent].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].appendHeaders(java.lang.StringBuilder)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].length()"
    functionUses: 20
    ICount: 14
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:107,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].toString()"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:107,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:108,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:109,1"
      Dst: "[io.netty.handler.codec.http.DefaultLastHttpContent].appendHeaders(java.lang.StringBuilder)"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:112,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:112,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:112,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:113,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpContent].toString()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpContent"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 104
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.http.DefaultHttpContent].content()"
    - "[io.netty.handler.codec.http.DefaultHttpObject].decoderResult()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 21
    ICount: 14
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:102,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:102,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:102,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:103,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].content()"
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:103,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:103,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpObject].decoderResult()"
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:103,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:103,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpObject].decoderResult()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpObject"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "io.netty.handler.codec.DecoderResult"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultLastHttpContent].appendHeaders(java.lang.StringBuilder)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultLastHttpContent"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 124
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iterator()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].trailingHeaders()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry:io.netty.handler.codec.DefaultHeaders$HeaderEntry:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:java.lang.StringBuilder:java.util.AbstractMap$SimpleEntry:java.util.AbstractMap$SimpleImmutableEntry:java.util.HashMap$Node:java.util.Hashtable$Entry:java.util.TreeMap$Entry:java.util.WeakHashMap$Entry:java.util.concurrent.ConcurrentHashMap$Node].append(java.lang.String)"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.http.HttpHeaders].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    functionUses: 1
    ICount: 19
    EdgeCount: 114
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultLastHttpContent:117"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultLastHttpContent:123"
        BranchSideFuncs:
        - "trailingHeaders()"
        - "hasNext()"
        - "iterator()"
        - "append(java.lang.String)"
        - "getValue()"
        - "next()"
        - "getKey()"
      - BranchSide: "io.netty.handler.codec.http.DefaultLastHttpContent:122"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:117,1"
      Dst: "[io.netty.handler.codec.http.DefaultLastHttpContent].trailingHeaders()"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:117,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].iterator()"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:117,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:117,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:118,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:118,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.DefaultLastHttpContent:120,1"
      Dst: "[java.util.Map$Entry].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].<init>(int,byte,io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 39
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "byte"
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].<init>(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttProperties)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 3
    ICount: 21
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:33"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:34"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:33"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:33"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:36"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:35"
        BranchSideFuncs:
        - "withEmptyDefaults(io.netty.handler.codec.mqtt.MqttProperties)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:32,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].<init>(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:34,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:34,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:34,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:34,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:34,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:37,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].reasonCode()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].properties()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].toString()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].messageId()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 19
    ICount: 18
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:50,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:50,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:50,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:51,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].messageId()"
    - Src: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:51,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:51,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:51,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader:51,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].messageId()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleState].values()"
    functionSourceFile: "io.netty.handler.timeout.IdleState"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionDepth: 0
    returnType: "io.netty.handler.timeout.IdleState[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleState:24,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleState].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.timeout.IdleState"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.timeout.IdleState"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleState:24,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleState].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.timeout.IdleState"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleState:24,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.search.BitapSearchProcessorFactory$Processor].process(byte)"
    functionSourceFile: "io.netty.buffer.search.BitapSearchProcessorFactory$Processor"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getLong(long[],long)"
    functionUses: 2
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.search.BitapSearchProcessorFactory$Processor:46"
      Branch Sides:
      - BranchSide: "io.netty.buffer.search.BitapSearchProcessorFactory$Processor:44"
        BranchSideFuncs:
        - "getLong(long[],long)"
    Callsites:
    - Src: "io.netty.buffer.search.BitapSearchProcessorFactory$Processor:45,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getLong(long[],long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].getLong(long[],long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 598
    functionLinenumberEnd: 600
    functionDepth: 1
    returnType: "long"
    argCount: 2
    argTypes:
    - "long[]"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getLong(long[],long)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:599,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getLong(long[],long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].getLong(long[],long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 679
    functionLinenumberEnd: 681
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "long[]"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getLong(java.lang.Object,long)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:680,1"
      Dst: "[sun.misc.Unsafe].getLong(java.lang.Object,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.search.BitapSearchProcessorFactory$Processor].reset()"
    functionSourceFile: "io.netty.buffer.search.BitapSearchProcessorFactory$Processor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionStats].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslContext)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionStats"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:36,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionStats].number()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionStats"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[io.netty.internal.tcnative.SSLContext].sessionNumber(long)"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:44,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:45,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:47,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].sessionNumber(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:49,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionStats].connect()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionStats"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[io.netty.internal.tcnative.SSLContext].sessionConnect(long)"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:57,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:58,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:60,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].sessionConnect(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:62,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionStats].connectGood()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionStats"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[io.netty.internal.tcnative.SSLContext].sessionConnectGood(long)"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:70,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:71,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:73,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].sessionConnectGood(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:75,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionStats].connectRenegotiate()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionStats"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[io.netty.internal.tcnative.SSLContext].sessionConnectRenegotiate(long)"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:83,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:84,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:86,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].sessionConnectRenegotiate(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:88,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionStats].accept()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionStats"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[io.netty.internal.tcnative.SSLContext].sessionAccept(long)"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:96,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:97,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:99,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].sessionAccept(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:101,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionStats].acceptGood()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionStats"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[io.netty.internal.tcnative.SSLContext].sessionAcceptGood(long)"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:109,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:110,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:112,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].sessionAcceptGood(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:114,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionStats].acceptRenegotiate()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionStats"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[io.netty.internal.tcnative.SSLContext].sessionAcceptRenegotiate(long)"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:122,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:123,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:125,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].sessionAcceptRenegotiate(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:127,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionStats].hits()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionStats"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[io.netty.internal.tcnative.SSLContext].sessionHits(long)"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:137,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:138,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:140,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].sessionHits(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:142,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionStats].cbHits()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionStats"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[io.netty.internal.tcnative.SSLContext].sessionCbHits(long)"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:150,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:151,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:153,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].sessionCbHits(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:155,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionStats].misses()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionStats"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[io.netty.internal.tcnative.SSLContext].sessionMisses(long)"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:164,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:165,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:167,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].sessionMisses(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:169,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionStats].timeouts()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionStats"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[io.netty.internal.tcnative.SSLContext].sessionTimeouts(long)"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:179,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:180,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:182,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].sessionTimeouts(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:184,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionStats].cacheFull()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionStats"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[io.netty.internal.tcnative.SSLContext].sessionCacheFull(long)"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:192,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:193,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:195,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].sessionCacheFull(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:197,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionStats].ticketKeyFail()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionStats"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[io.netty.internal.tcnative.SSLContext].sessionTicketKeyFail(long)"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:205,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:206,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:208,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].sessionTicketKeyFail(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:210,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionStats].ticketKeyNew()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionStats"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[io.netty.internal.tcnative.SSLContext].sessionTicketKeyNew(long)"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:218,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:219,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:221,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].sessionTicketKeyNew(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:223,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionStats].ticketKeyRenew()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionStats"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[io.netty.internal.tcnative.SSLContext].sessionTicketKeyRenew(long)"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:232,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:233,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:235,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].sessionTicketKeyRenew(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:237,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionStats].ticketKeyResume()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionStats"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[io.netty.internal.tcnative.SSLContext].sessionTicketKeyResume(long)"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:245,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:246,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:248,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].sessionTicketKeyResume(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionStats:250,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].<init>()"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:25,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].get(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].get(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getAndRemove(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getAndRemove(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getAll(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptyList()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:48,1"
      Dst: "[java.util.Collections].emptyList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getAllAndRemove(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptyList()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:53,1"
      Dst: "[java.util.Collections].emptyList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getBoolean(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getBoolean(java.lang.Object,boolean)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getByte(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Byte"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getByte(java.lang.Object,byte)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getChar(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Character"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getChar(java.lang.Object,char)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "char"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getShort(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Short"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getShort(java.lang.Object,short)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "short"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getInt(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getInt(java.lang.Object,int)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getLong(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Long"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getLong(java.lang.Object,long)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getFloat(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Float"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getFloat(java.lang.Object,float)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "float"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getDouble(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Double"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getDouble(java.lang.Object,double)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getTimeMillis(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Long"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getTimeMillis(java.lang.Object,long)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getBooleanAndRemove(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getBooleanAndRemove(java.lang.Object,boolean)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getByteAndRemove(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Byte"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getByteAndRemove(java.lang.Object,byte)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getCharAndRemove(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Character"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getCharAndRemove(java.lang.Object,char)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "char"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getShortAndRemove(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Short"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getShortAndRemove(java.lang.Object,short)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "short"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getIntAndRemove(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getIntAndRemove(java.lang.Object,int)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getLongAndRemove(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Long"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getLongAndRemove(java.lang.Object,long)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getFloatAndRemove(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Float"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getFloatAndRemove(java.lang.Object,float)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "float"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getDoubleAndRemove(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Double"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getDoubleAndRemove(java.lang.Object,double)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getTimeMillisAndRemove(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Long"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].getTimeMillisAndRemove(java.lang.Object,long)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].contains(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].contains(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].containsObject(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].containsBoolean(java.lang.Object,boolean)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].containsByte(java.lang.Object,byte)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].containsChar(java.lang.Object,char)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].containsShort(java.lang.Object,short)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].containsInt(java.lang.Object,int)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].containsLong(java.lang.Object,long)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].containsFloat(java.lang.Object,float)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].containsDouble(java.lang.Object,double)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].containsTimeMillis(java.lang.Object,long)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].size()"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: 297
    functionLinenumberEnd: 299
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].isEmpty()"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: 302
    functionLinenumberEnd: 304
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].names()"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: 307
    functionLinenumberEnd: 309
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptySet()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:308,1"
      Dst: "[java.util.Collections].emptySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].add(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: 312
    functionLinenumberEnd: 314
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 7
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:313,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].add(java.lang.Object,java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:318,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].add(java.lang.Object,java.lang.Object[])"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:323,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].addObject(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:328,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].addObject(java.lang.Object,java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:333,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].addObject(java.lang.Object,java.lang.Object[])"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:338,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].addBoolean(java.lang.Object,boolean)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:343,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].addByte(java.lang.Object,byte)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:348,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].addChar(java.lang.Object,char)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:353,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].addShort(java.lang.Object,short)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:358,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].addInt(java.lang.Object,int)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:363,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].addLong(java.lang.Object,long)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:368,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].addFloat(java.lang.Object,float)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:373,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].addDouble(java.lang.Object,double)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:378,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].addTimeMillis(java.lang.Object,long)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:383,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].add(io.netty.handler.codec.Headers<?\
      \ extends K,? extends V,?>)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.Headers<? extends K,? extends V,?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:388,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].set(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: 392
    functionLinenumberEnd: 394
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:393,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].set(java.lang.Object,java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:398,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].set(java.lang.Object,java.lang.Object[])"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:403,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].setObject(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:408,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].setObject(java.lang.Object,java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:413,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].setObject(java.lang.Object,java.lang.Object[])"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:418,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].setBoolean(java.lang.Object,boolean)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:423,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].setByte(java.lang.Object,byte)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:428,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].setChar(java.lang.Object,char)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:433,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].setShort(java.lang.Object,short)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:438,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].setInt(java.lang.Object,int)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:443,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].setLong(java.lang.Object,long)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: 447
    functionLinenumberEnd: 449
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:448,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].setFloat(java.lang.Object,float)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:453,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].setDouble(java.lang.Object,double)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:458,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].setTimeMillis(java.lang.Object,long)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:463,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].set(io.netty.handler.codec.Headers<?\
      \ extends K,? extends V,?>)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.Headers<? extends K,? extends V,?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:468,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].setAll(io.netty.handler.codec.Headers<?\
      \ extends K,? extends V,?>)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.Headers<? extends K,? extends V,?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:473,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].remove(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: 477
    functionLinenumberEnd: 479
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].clear()"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.Headers"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.EmptyHeaders].thisT()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:483,1"
      Dst: "[io.netty.handler.codec.EmptyHeaders].thisT()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].thisT()"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].valueIterator(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptyList()"
    - "[java.util.List].iterator()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:492,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.codec.EmptyHeaders:493,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].iterator()"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: 497
    functionLinenumberEnd: 500
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptyList()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.List].iterator()"
    functionUses: 29
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:498,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.codec.EmptyHeaders:499,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: 503
    functionLinenumberEnd: 510
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.EmptyHeaders].isEmpty()"
    - "[io.netty.handler.codec.DefaultHeaders].isEmpty()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].isEmpty()"
    - "[io.netty.handler.codec.Headers].isEmpty()"
    functionUses: 10
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.EmptyHeaders:504"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.EmptyHeaders:508"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.EmptyHeaders:507"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.codec.EmptyHeaders:509"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.EmptyHeaders:507"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.codec.EmptyHeaders:509"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.EmptyHeaders:507"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:509,1"
      Dst: "[io.netty.handler.codec.EmptyHeaders].isEmpty()"
    - Src: "io.netty.handler.codec.EmptyHeaders:509,1"
      Dst: "[io.netty.handler.codec.Headers].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.EmptyHeaders].hashCode()"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: 513
    functionLinenumberEnd: 515
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EmptyHeaders].toString()"
    functionSourceFile: "io.netty.handler.codec.EmptyHeaders"
    linkageType: ""
    functionLinenumber: 518
    functionLinenumberEnd: 520
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EmptyHeaders:519,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.codec.EmptyHeaders:519,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "io.netty.handler.codec.EmptyHeaders:519,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.EmptyHeaders:519,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.EmptyHeaders:519,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufProcessor$10].<init>()"
    functionSourceFile: "io.netty.buffer.ByteBufProcessor$10"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufProcessor$10:130,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufProcessor$10].process(byte)"
    functionSourceFile: "io.netty.buffer.ByteBufProcessor$10"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufProcessor$10:133"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufProcessor$10:132"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufProcessor$10:133"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufProcessor$10:132"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.kqueue.AbstractKQueueChannel$1].<init>(io.netty.channel.kqueue.AbstractKQueueChannel,io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe)"
    functionSourceFile: "io.netty.channel.kqueue.AbstractKQueueChannel$1"
    linkageType: ""
    functionLinenumber: 322
    functionLinenumberEnd: 324
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.kqueue.AbstractKQueueChannel"
    - "io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AbstractKQueueChannel$1:323,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    functionSourceFile: "io.netty.channel.kqueue.AbstractKQueueChannel$1"
    linkageType: ""
    functionLinenumber: 325
    functionLinenumberEnd: 331
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].isAutoRead()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].clearReadFilter0()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].config()"
    functionUses: 50
    ICount: 11
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.AbstractKQueueChannel$1:326"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueChannel$1:329"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.AbstractKQueueChannel$1:326"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AbstractKQueueChannel$1:329"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AbstractKQueueChannel$1:326,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].config()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueChannel$1:326,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].isAutoRead()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueChannel$1:328,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].clearReadFilter0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.DefaultChannelConfig].isAutoRead()"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 333
    functionLinenumberEnd: 335
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 47
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelConfig:334"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:333"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$1].<init>(io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$1"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$1:100,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$1"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$1:103,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$1"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$1:100,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpContentCompressor].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:67,1"
      Dst: "[io.netty.handler.codec.http.HttpContentCompressor].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpContentCompressor].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:81,1"
      Dst: "[io.netty.handler.codec.http.HttpContentCompressor].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor].<init>(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpContentCompressor].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:105,1"
      Dst: "[io.netty.handler.codec.http.HttpContentCompressor].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor].<init>(int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpContentEncoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:132,1"
      Dst: "[io.netty.handler.codec.http.HttpContentEncoder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:133,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:136,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor].<init>(io.netty.handler.codec.compression.CompressionOptions[])"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.compression.CompressionOptions[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpContentCompressor].<init>(int,io.netty.handler.codec.compression.CompressionOptions[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:153,1"
      Dst: "[io.netty.handler.codec.http.HttpContentCompressor].<init>(int,io.netty.handler.codec.compression.CompressionOptions[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor].<init>(int,io.netty.handler.codec.compression.CompressionOptions[])"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.compression.CompressionOptions[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpContentEncoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[io.netty.handler.codec.compression.Brotli].isAvailable()"
    - "[io.netty.handler.codec.compression.StandardCompressionOptions].brotli()"
    - "[io.netty.handler.codec.compression.StandardCompressionOptions].gzip()"
    - "[io.netty.handler.codec.compression.StandardCompressionOptions].deflate()"
    - "[io.netty.handler.codec.compression.Zstd].isAvailable()"
    - "[io.netty.handler.codec.compression.StandardCompressionOptions].zstd()"
    - "[io.netty.util.internal.ObjectUtil].deepCheckNotNull(java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.HashMap].<init>()"
    - "[io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor,io.netty.handler.codec.http.HttpContentCompressor$1)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor,io.netty.handler.codec.http.HttpContentCompressor$1)"
    - "[io.netty.handler.codec.http.HttpContentCompressor$BrEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor,io.netty.handler.codec.http.HttpContentCompressor$1)"
    - "[io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor,io.netty.handler.codec.http.HttpContentCompressor$1)"
    functionUses: 0
    ICount: 106
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:174"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:179"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:178"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:174"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:174"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:180"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:202"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:201"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:189"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:188"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:189"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:188"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:189"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:191"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:190"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:191"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:193"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:192"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:196"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:195"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:209"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:212"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:211"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:212"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:215"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:214"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:218"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:217"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:218"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:217"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:218"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:167,1"
      Dst: "[io.netty.handler.codec.http.HttpContentEncoder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:168,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:174,1"
      Dst: "[io.netty.handler.codec.compression.Brotli].isAvailable()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:174,1"
      Dst: "[io.netty.handler.codec.compression.StandardCompressionOptions].brotli()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:175,1"
      Dst: "[io.netty.handler.codec.compression.StandardCompressionOptions].gzip()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:176,1"
      Dst: "[io.netty.handler.codec.compression.StandardCompressionOptions].deflate()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:177,1"
      Dst: "[io.netty.handler.codec.compression.Zstd].isAvailable()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:177,1"
      Dst: "[io.netty.handler.codec.compression.StandardCompressionOptions].zstd()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:179,1"
      Dst: "[io.netty.util.internal.ObjectUtil].deepCheckNotNull(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:196,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:196,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:196,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:196,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:196,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:196,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:207,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:210,1"
      Dst: "[io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor,io.netty.handler.codec.http.HttpContentCompressor$1)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:210,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:213,1"
      Dst: "[io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor,io.netty.handler.codec.http.HttpContentCompressor$1)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:216,1"
      Dst: "[io.netty.handler.codec.http.HttpContentCompressor$BrEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor,io.netty.handler.codec.http.HttpContentCompressor$1)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:219,1"
      Dst: "[io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor,io.netty.handler.codec.http.HttpContentCompressor$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 32
    CyclomaticComplexity: 15
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor"
    linkageType: ""
    functionLinenumber: 229
    functionLinenumberEnd: 232
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor].beginEncode(io.netty.handler.codec.http.HttpResponse,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor"
    linkageType: ""
    functionLinenumber: 234
    functionLinenumberEnd: 286
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.HttpContentEncoder$Result"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.LastHttpContent$1].content()"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].content()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpContentCompressor].determineEncoding(java.lang.String)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.lang.Error].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelMetadata].hasDisconnect()"
    - "[io.netty.channel.AbstractChannel].id()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].id()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].metadata()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].metadata()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].metadata()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].metadata()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].metadata()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].metadata()"
    - "[io.netty.channel.nio.AbstractNioByteChannel].metadata()"
    - "[io.netty.channel.kqueue.AbstractKQueueDatagramChannel].metadata()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].metadata()"
    - "[io.netty.channel.oio.AbstractOioByteChannel].metadata()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].metadata()"
    - "[io.netty.bootstrap.FailedChannel].metadata()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].metadata()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].metadata()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].metadata()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].metadata()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].metadata()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].metadata()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].metadata()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].metadata()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].metadata()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].metadata()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].metadata()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].metadata()"
    - "[io.netty.channel.local.LocalChannel].metadata()"
    - "[io.netty.channel.AbstractServerChannel].metadata()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].metadata()"
    - "[io.netty.channel.embedded.EmbeddedChannel].metadata()"
    - "[io.netty.handler.codec.http.HttpContentEncoder$Result].<init>(java.lang.String,io.netty.channel.embedded.EmbeddedChannel)"
    - "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,boolean,io.netty.channel.ChannelConfig,io.netty.channel.ChannelHandler[])"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.embedded.EmbeddedChannel].config()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].config()"
    - "[io.netty.bootstrap.FailedChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.local.LocalServerChannel].config()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].config()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].config()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.handler.codec.http.HttpContentCompressor$DeflateEncoderFactory].createEncoder()"
    - "[io.netty.handler.codec.http.HttpContentCompressor$BrEncoderFactory].createEncoder()"
    - "[io.netty.handler.codec.http.HttpContentCompressor$GzipEncoderFactory].createEncoder()"
    - "[io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory].createEncoder()"
    - "[io.netty.handler.codec.http.HttpContentCompressor].determineWrapper(java.lang.String)"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibEncoder(io.netty.handler.codec.compression.ZlibWrapper,int,int,int)"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].id()"
    - "[io.netty.channel.Channel].metadata()"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.handler.codec.http.CompressionEncoderFactory].createEncoder()"
    functionUses: 1
    ICount: 83
    EdgeCount: 194
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:235"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:242"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:241"
        BranchSideFuncs:
        - "headers()"
        - "get(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:236"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:242"
        BranchSideFuncs:
        - "content()"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:241"
        BranchSideFuncs:
        - "headers()"
        - "get(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:237"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:242"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:241"
        BranchSideFuncs:
        - "headers()"
        - "get(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:243"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:248"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:249"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:265"
        BranchSideFuncs:
        - "determineEncoding(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:264"
        BranchSideFuncs:
        - "determineWrapper(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:251"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:255"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:254"
        BranchSideFuncs:
        - "get(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:257"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:261"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:260"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:266"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:271"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:270"
        BranchSideFuncs:
        - "ordinal()"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:237,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:237,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:242,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:242,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:250,1"
      Dst: "[io.netty.handler.codec.http.HttpContentCompressor].determineEncoding(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:255,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:258,1"
      Dst: "[java.lang.Error].<init>()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:262,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:262,1"
      Dst: "[io.netty.channel.Channel].id()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:262,1"
      Dst: "[io.netty.channel.Channel].metadata()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:262,1"
      Dst: "[io.netty.channel.ChannelMetadata].hasDisconnect()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:263,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:263,1"
      Dst: "[io.netty.handler.codec.http.CompressionEncoderFactory].createEncoder()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:263,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,boolean,io.netty.channel.ChannelConfig,io.netty.channel.ChannelHandler[])"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:263,1"
      Dst: "[io.netty.handler.codec.http.HttpContentEncoder$Result].<init>(java.lang.String,io.netty.channel.embedded.EmbeddedChannel)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:265,1"
      Dst: "[io.netty.handler.codec.http.HttpContentCompressor].determineWrapper(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:271,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:285,1"
      Dst: "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibEncoder(io.netty.handler.codec.compression.ZlibWrapper,int,int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor].determineEncoding(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor"
    linkageType: ""
    functionLinenumber: 291
    functionLinenumberEnd: 346
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].split(java.lang.String)"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.Float].parseFloat(java.lang.String)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    functionUses: 1
    ICount: 120
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:297"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:320"
        BranchSideFuncs:
        - "indexOf(int)"
        - "split(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:319"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:300"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:307"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:308"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:310"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:309"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:310"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:312"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:311"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:310"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:312"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:311"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:312"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:314"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:313"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:312"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:314"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:313"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:314"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:316"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:315"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:314"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:316"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:315"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:316"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:292"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:291"
        BranchSideFuncs:
        - "split(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:316"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:292"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:291"
        BranchSideFuncs:
        - "split(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:320"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:321"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:320"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:320"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:321"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:320"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:320"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:321"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:320"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:320"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:331"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:330"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:321"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:323"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:322"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:321"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:323"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:322"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:321"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:323"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:322"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:323"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:325"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:324"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:323"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:325"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:324"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:323"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:325"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:324"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:325"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:327"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:326"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:325"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:327"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:326"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:325"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:327"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:326"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:327"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:331"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:330"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:327"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:331"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:330"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:331"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:345"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:344"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:332"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:335"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:334"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:332"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:335"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:334"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:335"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:338"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:337"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:335"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:338"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:337"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:338"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:341"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:340"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:338"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:341"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:340"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:341"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:345"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:344"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:341"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:345"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:344"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:297,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:299,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:302,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:302,1"
      Dst: "[java.lang.Float].parseFloat(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:308,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 53
    CyclomaticComplexity: 28
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor].determineWrapper(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor"
    linkageType: ""
    functionLinenumber: 350
    functionLinenumberEnd: 389
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.ZlibWrapper"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].split(java.lang.String)"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.Float].parseFloat(java.lang.String)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    functionUses: 1
    ICount: 64
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:354"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:373"
        BranchSideFuncs:
        - "indexOf(int)"
        - "split(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:372"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:357"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:364"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:365"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:367"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:366"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:367"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:369"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:368"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:367"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:369"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:368"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:369"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:351"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:350"
        BranchSideFuncs:
        - "split(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:369"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:351"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:350"
        BranchSideFuncs:
        - "split(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:373"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:374"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:373"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:373"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:380"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:379"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:374"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:377"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:376"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:380"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:388"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:387"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:381"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:384"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:383"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpContentCompressor:384"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:388"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpContentCompressor:387"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:354,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:356,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:359,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:359,1"
      Dst: "[java.lang.Float].parseFloat(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor:365,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 25
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor].access$600(io.netty.handler.codec.http.HttpContentCompressor)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.BrotliOptions"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpContentCompressor"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor].access$700(io.netty.handler.codec.http.HttpContentCompressor)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.ZstdOptions"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpContentCompressor"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsServerAddresses$2].<init>(java.lang.String,java.util.List)"
    functionSourceFile: "io.netty.resolver.dns.DnsServerAddresses$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultDnsServerAddresses].<init>(java.lang.String,java.util.List)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsServerAddresses$2:112,1"
      Dst: "[io.netty.resolver.dns.DefaultDnsServerAddresses].<init>(java.lang.String,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsServerAddresses$2].stream()"
    functionSourceFile: "io.netty.resolver.dns.DnsServerAddresses$2"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionDepth: 3
    returnType: "io.netty.resolver.dns.DnsServerAddressStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].<init>(java.util.List)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsServerAddresses$2:115,1"
      Dst: "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].<init>(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].<init>(java.util.List)"
    functionSourceFile: "io.netty.resolver.dns.ShuffledDnsServerAddressStream"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 40
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].shuffle()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.ShuffledDnsServerAddressStream:35,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.ShuffledDnsServerAddressStream:38,1"
      Dst: "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].shuffle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].shuffle()"
    functionSourceFile: "io.netty.resolver.dns.ShuffledDnsServerAddressStream"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].shuffle(java.util.List,java.util.Random)"
    - "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.ShuffledDnsServerAddressStream:47,1"
      Dst: "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - Src: "io.netty.resolver.dns.ShuffledDnsServerAddressStream:47,1"
      Dst: "[java.util.Collections].shuffle(java.util.List,java.util.Random)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttConnectVariableHeader,io.netty.handler.codec.mqtt.MqttConnectPayload)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectMessage"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "io.netty.handler.codec.mqtt.MqttConnectVariableHeader"
    - "io.netty.handler.codec.mqtt.MqttConnectPayload"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnectMessage:28,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectMessage].variableHeader()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectMessage"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttConnectVariableHeader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnectMessage:33,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectMessage].payload()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectMessage"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttConnectPayload"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].payload()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnectMessage:38,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].payload()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FailedFuture].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.concurrent.FailedFuture"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 40
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.CompleteFuture].<init>(io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 4
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FailedFuture:37,1"
      Dst: "[io.netty.util.concurrent.CompleteFuture].<init>(io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.util.concurrent.FailedFuture:38,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FailedFuture].cause()"
    functionSourceFile: "io.netty.util.concurrent.FailedFuture"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FailedFuture].isSuccess()"
    functionSourceFile: "io.netty.util.concurrent.FailedFuture"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 22
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FailedFuture].sync()"
    functionSourceFile: "io.netty.util.concurrent.FailedFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FailedFuture:53,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FailedFuture].syncUninterruptibly()"
    functionSourceFile: "io.netty.util.concurrent.FailedFuture"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionDepth: 3
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FailedFuture:59,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FailedFuture].getNow()"
    functionSourceFile: "io.netty.util.concurrent.FailedFuture"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$6].run()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$6"
    linkageType: ""
    functionLinenumber: 1140
    functionLinenumberEnd: 1143
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].access$100(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 50
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$6:1141,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].access$100(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$4].<init>(java.nio.channels.SocketChannel,java.net.SocketAddress)"
    functionSourceFile: "io.netty.util.internal.SocketUtils$4"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.SocketChannel"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$4:102,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$4].run()"
    functionSourceFile: "io.netty.util.internal.SocketUtils$4"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.SocketChannel].bind(java.net.SocketAddress)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$4:105,1"
      Dst: "[java.nio.channels.SocketChannel].bind(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpVersion].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpVersion"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 81
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.HttpVersion"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].isEmpty()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.HttpVersion].version0(java.lang.String)"
    - "[io.netty.handler.codec.http.HttpVersion].<init>(java.lang.String,boolean)"
    functionUses: 4
    ICount: 15
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpVersion:64"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:76"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:75"
        BranchSideFuncs:
        - "version0(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.HttpVersion:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:80"
        BranchSideFuncs:
        - "<init>(java.lang.String,boolean)"
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpVersion:60,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpVersion:62,1"
      Dst: "[java.lang.String].trim()"
    - Src: "io.netty.handler.codec.http.HttpVersion:64,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.codec.http.HttpVersion:65,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpVersion:76,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].version0(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpVersion:78,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].<init>(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpVersion].version0(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpVersion"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpVersion"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpVersion:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:87"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:86"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.HttpVersion:87"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpVersion:84,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpVersion].<init>(java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpVersion"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 126
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNonEmptyAfterTrim(java.lang.String,java.lang.String)"
    - "[java.lang.String].toUpperCase()"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].matches()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.regex.Matcher].group(int)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 2
    ICount: 41
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpVersion:115"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:119"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:118"
        BranchSideFuncs:
        - "<init>()"
        - "parseInt(java.lang.String)"
        - "toString()"
        - "group(int)"
        - "append(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpVersion:111,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.HttpVersion:112,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmptyAfterTrim(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpVersion:112,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "io.netty.handler.codec.http.HttpVersion:114,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpVersion:115,1"
      Dst: "[java.util.regex.Matcher].matches()"
    - Src: "io.netty.handler.codec.http.HttpVersion:116,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpVersion:116,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpVersion:116,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.HttpVersion:116,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpVersion:119,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "io.netty.handler.codec.http.HttpVersion:120,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpVersion:122,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.HttpVersion:122,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectUtil].checkNonEmptyAfterTrim(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ObjectUtil"
    linkageType: ""
    functionLinenumber: 303
    functionLinenumberEnd: 306
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.String].trim()"
    - "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.lang.String,java.lang.String)"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectUtil:304,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:304,1"
      Dst: "[java.lang.String].trim()"
    - Src: "io.netty.util.internal.ObjectUtil:305,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpVersion].<init>(java.lang.String,int,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpVersion"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpVersion].<init>(java.lang.String,int,int,boolean,boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpVersion:141,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].<init>(java.lang.String,int,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpVersion].<init>(java.lang.String,int,int,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpVersion"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 171
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNonEmptyAfterTrim(java.lang.String,java.lang.String)"
    - "[java.lang.String].toUpperCase()"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].isISOControl(char)"
    - "[java.lang.Character].isWhitespace(char)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    functionUses: 3
    ICount: 46
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpVersion:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:156"
        BranchSideFuncs:
        - "isISOControl(char)"
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:155"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "checkPositiveOrZero(int,java.lang.String)"
        - "append(int)"
        - "append(char)"
        - "<init>()"
    - Branch String: "io.netty.handler.codec.http.HttpVersion:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:152"
        BranchSideFuncs:
        - "isWhitespace(char)"
        - "charAt(int)"
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:151"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.HttpVersion:151"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:146"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:145"
        BranchSideFuncs:
        - "length()"
        - "checkNonEmptyAfterTrim(java.lang.String,java.lang.String)"
        - "toUpperCase()"
    - Branch String: "io.netty.handler.codec.http.HttpVersion:165"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:168"
        BranchSideFuncs:
        - "getBytes(java.nio.charset.Charset)"
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpVersion:146,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.HttpVersion:147,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmptyAfterTrim(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpVersion:147,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "io.netty.handler.codec.http.HttpVersion:149,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.HttpVersion:150,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.HttpVersion:150,1"
      Dst: "[java.lang.Character].isISOControl(char)"
    - Src: "io.netty.handler.codec.http.HttpVersion:151,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    - Src: "io.netty.handler.codec.http.HttpVersion:152,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpVersion:156,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpVersion:162,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpVersion:162,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpVersion:162,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.HttpVersion:162,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.HttpVersion:162,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.HttpVersion:166,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.HttpVersion].protocolName()"
    functionSourceFile: "io.netty.handler.codec.http.HttpVersion"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpVersion].majorVersion()"
    functionSourceFile: "io.netty.handler.codec.http.HttpVersion"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpVersion].minorVersion()"
    functionSourceFile: "io.netty.handler.codec.http.HttpVersion"
    linkageType: ""
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpVersion].text()"
    functionSourceFile: "io.netty.handler.codec.http.HttpVersion"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 198
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpVersion].isKeepAliveDefault()"
    functionSourceFile: "io.netty.handler.codec.http.HttpVersion"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 206
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpVersion].toString()"
    functionSourceFile: "io.netty.handler.codec.http.HttpVersion"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpVersion].text()"
    functionUses: 21
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpVersion:213,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].text()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpVersion].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.HttpVersion"
    linkageType: ""
    functionLinenumber: 217
    functionLinenumberEnd: 220
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[io.netty.handler.codec.http.HttpVersion].majorVersion()"
    - "[io.netty.handler.codec.http.HttpVersion].protocolName()"
    - "[io.netty.handler.codec.http.HttpVersion].minorVersion()"
    functionUses: 6
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpVersion:218,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].protocolName()"
    - Src: "io.netty.handler.codec.http.HttpVersion:218,1"
      Dst: "[java.lang.String].hashCode()"
    - Src: "io.netty.handler.codec.http.HttpVersion:218,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].majorVersion()"
    - Src: "io.netty.handler.codec.http.HttpVersion:219,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].minorVersion()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpVersion].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.HttpVersion"
    linkageType: ""
    functionLinenumber: 223
    functionLinenumberEnd: 232
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpVersion].minorVersion()"
    - "[io.netty.handler.codec.http.HttpVersion].majorVersion()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpVersion].protocolName()"
    functionUses: 10
    ICount: 20
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpVersion:224"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:228"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:227"
        BranchSideFuncs:
        - "minorVersion()"
    - Branch String: "io.netty.handler.codec.http.HttpVersion:229"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:-1"
        BranchSideFuncs:
        - "majorVersion()"
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpVersion:230"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:-1"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "protocolName()"
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpVersion:231"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpVersion:229,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].minorVersion()"
    - Src: "io.netty.handler.codec.http.HttpVersion:230,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].majorVersion()"
    - Src: "io.netty.handler.codec.http.HttpVersion:231,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].protocolName()"
    - Src: "io.netty.handler.codec.http.HttpVersion:231,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.HttpVersion].compareTo(io.netty.handler.codec.http.HttpVersion)"
    functionSourceFile: "io.netty.handler.codec.http.HttpVersion"
    linkageType: ""
    functionLinenumber: 235
    functionLinenumberEnd: 247
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].compareTo(java.lang.String)"
    - "[io.netty.handler.codec.http.HttpVersion].protocolName()"
    - "[io.netty.handler.codec.http.HttpVersion].majorVersion()"
    - "[io.netty.handler.codec.http.HttpVersion].minorVersion()"
    functionUses: 1
    ICount: 16
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpVersion:237"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:241"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:240"
        BranchSideFuncs:
        - "majorVersion()"
    - Branch String: "io.netty.handler.codec.http.HttpVersion:242"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:246"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:245"
        BranchSideFuncs:
        - "minorVersion()"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpVersion:236,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].protocolName()"
    - Src: "io.netty.handler.codec.http.HttpVersion:236,1"
      Dst: "[java.lang.String].compareTo(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpVersion:241,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].majorVersion()"
    - Src: "io.netty.handler.codec.http.HttpVersion:246,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].minorVersion()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpVersion].encode(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.HttpVersion"
    linkageType: ""
    functionLinenumber: 249
    functionLinenumberEnd: 256
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    functionUses: 2
    ICount: 11
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpVersion:250"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:253"
        BranchSideFuncs:
        - "writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
      - BranchSide: "io.netty.handler.codec.http.HttpVersion:252"
        BranchSideFuncs:
        - "writeBytes(byte[])"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpVersion:251,1"
      Dst: "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.HttpVersion:253,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpVersion].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.HttpVersion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpVersion].compareTo(io.netty.handler.codec.http.HttpVersion)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpVersion:33,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].compareTo(io.netty.handler.codec.http.HttpVersion)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].<init>(io.netty.handler.timeout.WriteTimeoutHandler,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 201
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.timeout.WriteTimeoutHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:197,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    functionSourceFile: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 216
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler].writeTimedOut(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.handler.timeout.WriteTimeoutHandler].access$100(io.netty.handler.timeout.WriteTimeoutHandler,io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 50
    ICount: 14
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:207"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:213"
        BranchSideFuncs:
        - "access$100(io.netty.handler.timeout.WriteTimeoutHandler,io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask)"
    Callsites:
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:207,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:209,1"
      Dst: "[io.netty.handler.timeout.WriteTimeoutHandler].writeTimedOut(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:211,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:214,1"
      Dst: "[io.netty.handler.timeout.WriteTimeoutHandler].access$100(io.netty.handler.timeout.WriteTimeoutHandler,io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.timeout.WriteTimeoutHandler].writeTimedOut(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.timeout.WriteTimeoutHandler"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 185
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close()"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 1
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.WriteTimeoutHandler:179"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler:184"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
        - "close()"
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler:183"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler:180,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler:181,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.timeout.WriteTimeoutHandler].access$100(io.netty.handler.timeout.WriteTimeoutHandler,io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask)"
    functionSourceFile: "io.netty.handler.timeout.WriteTimeoutHandler"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.timeout.WriteTimeoutHandler"
    - "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.WriteTimeoutHandler].removeWriteTimeoutTask(io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler:66,1"
      Dst: "[io.netty.handler.timeout.WriteTimeoutHandler].removeWriteTimeoutTask(io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.WriteTimeoutHandler].removeWriteTimeoutTask(io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask)"
    functionSourceFile: "io.netty.handler.timeout.WriteTimeoutHandler"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 174
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].access$000(io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    functionUses: 1
    ICount: 47
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.WriteTimeoutHandler:153"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler:154"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler:153"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.WriteTimeoutHandler:153"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler:154"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler:153"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.WriteTimeoutHandler:154"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler:160"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.WriteTimeoutHandler:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler:157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler:156"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.WriteTimeoutHandler:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler:157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler:156"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.WriteTimeoutHandler:158"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler:171"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler:170"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.WriteTimeoutHandler:161"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler:163"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.WriteTimeoutHandler:161"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler:163"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.WriteTimeoutHandler:164"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler:153,1"
      Dst: "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].access$000(io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask)"
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler:153,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler:153,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler:153,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].access$000(io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask)"
    functionSourceFile: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask"
    linkageType: ""
    functionLinenumber: 219
    functionLinenumberEnd: 235
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cancel(boolean)"
    - "[io.netty.util.concurrent.CompleteFuture].cancel(boolean)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cancel(boolean)"
    - "[io.netty.channel.VoidChannelPromise].cancel(boolean)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler].access$100(io.netty.handler.timeout.WriteTimeoutHandler,io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.util.concurrent.Future].cancel(boolean)"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[java.util.concurrent.Future].isDone()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 1
    ICount: 23
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:224"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:231"
        BranchSideFuncs:
        - "access$100(io.netty.handler.timeout.WriteTimeoutHandler,io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask)"
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:230"
        BranchSideFuncs:
        - "<init>()"
        - "isDone()"
    - Branch String: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:231"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:232"
        BranchSideFuncs:
        - "run()"
        - "execute(java.lang.Runnable)"
        - "executor()"
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:231"
        BranchSideFuncs:
        - "run()"
        - "execute(java.lang.Runnable)"
        - "executor()"
    - Branch String: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:231"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:232"
        BranchSideFuncs:
        - "run()"
        - "execute(java.lang.Runnable)"
        - "executor()"
      - BranchSide: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:231"
        BranchSideFuncs:
        - "run()"
        - "execute(java.lang.Runnable)"
        - "executor()"
    Callsites:
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:220,1"
      Dst: "[io.netty.util.concurrent.Future].cancel(boolean)"
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:224,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:224,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:225,1"
      Dst: "[io.netty.handler.timeout.WriteTimeoutHandler].access$100(io.netty.handler.timeout.WriteTimeoutHandler,io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask)"
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:231,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:231,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:232,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask:186,1"
      Dst: "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandType].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandType"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 41
    functionDepth: 3
    returnType: "io.netty.handler.codec.socksx.v5.Socks5CommandType"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].<init>(int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandType:40,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5CommandType].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandType].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandType"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandType:48,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5CommandType].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandType].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandType"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 4
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandType:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandType:52,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandType].byteValue()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandType"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandType].hashCode()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandType"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandType].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandType"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5CommandType:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5CommandType:71"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5CommandType:70"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5CommandType:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5CommandType:70"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandType].compareTo(io.netty.handler.codec.socksx.v5.Socks5CommandType)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.socksx.v5.Socks5CommandType"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandType].toString()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandType"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 19
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5CommandType:82"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5CommandType:85"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "toString()"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5CommandType:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandType:83,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandType:83,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandType:83,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandType:83,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandType:83,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandType].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].compareTo(io.netty.handler.codec.socksx.v5.Socks5CommandType)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandType:24,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5CommandType].compareTo(io.netty.handler.codec.socksx.v5.Socks5CommandType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.ReadTimeoutException].<init>()"
    functionSourceFile: "io.netty.handler.timeout.ReadTimeoutException"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.TimeoutException].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.ReadTimeoutException:31,1"
      Dst: "[io.netty.handler.timeout.TimeoutException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.ReadTimeoutException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.timeout.ReadTimeoutException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.TimeoutException].<init>(java.lang.String,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.ReadTimeoutException:34,1"
      Dst: "[io.netty.handler.timeout.TimeoutException].<init>(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.ReadTimeoutException].<init>(boolean)"
    functionSourceFile: "io.netty.handler.timeout.ReadTimeoutException"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.TimeoutException].<init>(java.lang.String,boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.ReadTimeoutException:38,1"
      Dst: "[io.netty.handler.timeout.TimeoutException].<init>(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString$1].<init>()"
    functionSourceFile: "io.netty.util.AsciiString$1"
    linkageType: ""
    functionLinenumber: 1360
    functionLinenumberEnd: 1362
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString$1:1361,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString$1].hashCode(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString$1"
    linkageType: ""
    functionLinenumber: 1363
    functionLinenumberEnd: 1365
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString$1:1364,1"
      Dst: "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString$1].equals(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString$1"
    linkageType: ""
    functionLinenumber: 1368
    functionLinenumberEnd: 1370
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString$1:1369,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1440
    functionLinenumberEnd: 1461
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].equalsIgnoreCase(char,char)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 24
    ICount: 34
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1441"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1442"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1441"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1441"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1445"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1444"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1442"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1441"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1445"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1448"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1447"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1448"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1452"
        BranchSideFuncs:
        - "contentEqualsIgnoreCase(java.lang.CharSequence)"
      - BranchSide: "io.netty.util.AsciiString:1451"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1452"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1455"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1454"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.util.AsciiString:1455"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1460"
        BranchSideFuncs:
        - "equalsIgnoreCase(char,char)"
        - "charAt(int)"
      - BranchSide: "io.netty.util.AsciiString:1459"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1456"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1455"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1454"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "io.netty.util.AsciiString:1446,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - Src: "io.netty.util.AsciiString:1452,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:1456,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.AsciiString:1456,1"
      Dst: "[io.netty.util.AsciiString].equalsIgnoreCase(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.AsciiString$1].equals(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.AsciiString$1"
    linkageType: ""
    functionLinenumber: 1360
    functionLinenumberEnd: 1362
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString$1].equals(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString$1:1361,1"
      Dst: "[io.netty.util.AsciiString$1].equals(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString$1].hashCode(java.lang.Object)"
    functionSourceFile: "io.netty.util.AsciiString$1"
    linkageType: ""
    functionLinenumber: 1360
    functionLinenumberEnd: 1362
    functionDepth: 5
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString$1].hashCode(java.lang.CharSequence)"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString$1:1361,1"
      Dst: "[io.netty.util.AsciiString$1].hashCode(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.Hidden$NettyBlockHoundIntegration].<init>()"
    functionSourceFile: "io.netty.util.internal.Hidden$NettyBlockHoundIntegration"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.Hidden$NettyBlockHoundIntegration:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.Hidden$NettyBlockHoundIntegration].applyTo(reactor.blockhound.BlockHound$Builder)"
    functionSourceFile: "io.netty.util.internal.Hidden$NettyBlockHoundIntegration"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "reactor.blockhound.BlockHound$Builder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[reactor.blockhound.BlockHound$Builder].allowBlockingCallsInside(java.lang.String,java.lang.String)"
    - "[io.netty.util.internal.Hidden$NettyBlockHoundIntegration$1].<init>(io.netty.util.internal.Hidden$NettyBlockHoundIntegration)"
    - "[reactor.blockhound.BlockHound$Builder].nonBlockingThreadPredicate(java.util.function.Function)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.Hidden$NettyBlockHoundIntegration:43,1"
      Dst: "[reactor.blockhound.BlockHound$Builder].allowBlockingCallsInside(java.lang.String,java.lang.String)"
    - Src: "io.netty.util.internal.Hidden$NettyBlockHoundIntegration:166,1"
      Dst: "[io.netty.util.internal.Hidden$NettyBlockHoundIntegration$1].<init>(io.netty.util.internal.Hidden$NettyBlockHoundIntegration)"
    - Src: "io.netty.util.internal.Hidden$NettyBlockHoundIntegration:166,1"
      Dst: "[reactor.blockhound.BlockHound$Builder].nonBlockingThreadPredicate(java.util.function.Function)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.Hidden$NettyBlockHoundIntegration$1].<init>(io.netty.util.internal.Hidden$NettyBlockHoundIntegration)"
    functionSourceFile: "io.netty.util.internal.Hidden$NettyBlockHoundIntegration$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.Hidden$NettyBlockHoundIntegration"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.Hidden$NettyBlockHoundIntegration$1:166,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.Hidden$NettyBlockHoundIntegration].compareTo(reactor.blockhound.integration.BlockHoundIntegration)"
    functionSourceFile: "io.netty.util.internal.Hidden$NettyBlockHoundIntegration"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "reactor.blockhound.integration.BlockHoundIntegration"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.Hidden$NettyBlockHoundIntegration].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.Hidden$NettyBlockHoundIntegration"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.Hidden$NettyBlockHoundIntegration].compareTo(reactor.blockhound.integration.BlockHoundIntegration)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.Hidden$NettyBlockHoundIntegration:37,1"
      Dst: "[io.netty.util.internal.Hidden$NettyBlockHoundIntegration].compareTo(reactor.blockhound.integration.BlockHoundIntegration)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop$1].<init>(io.netty.channel.kqueue.KQueueEventLoop)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.KQueueEventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop$1:65,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop$1].get()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop$1"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 8
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueEventLoop].access$000(io.netty.channel.kqueue.KQueueEventLoop)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop$1:68,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].access$000(io.netty.channel.kqueue.KQueueEventLoop)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].access$000(io.netty.channel.kqueue.KQueueEventLoop)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 7
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.KQueueEventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueEventLoop].kqueueWaitNow()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:47,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].kqueueWaitNow()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].kqueueWaitNow()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionDepth: 6
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueEventLoop].kqueueWait(int,int)"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:175,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].kqueueWait(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].kqueueWait(int,int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 182
    functionDepth: 5
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.kqueue.Native].keventWait(int,io.netty.channel.kqueue.KQueueEventArray,io.netty.channel.kqueue.KQueueEventArray,int,int)"
    - "[io.netty.channel.kqueue.KQueueEventArray].clear()"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:179,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:179,1"
      Dst: "[io.netty.channel.kqueue.Native].keventWait(int,io.netty.channel.kqueue.KQueueEventArray,io.netty.channel.kqueue.KQueueEventArray,int,int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:180,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].clear()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].clear()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Constants].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Constants"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Constants:107,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliDecoder].pull(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliDecoder"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[com.aayushatharva.brotli4j.decoder.DecoderJNI$Wrapper].pull()"
    - "[java.nio.Buffer].remaining()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(java.nio.ByteBuffer)"
    functionUses: 2
    ICount: 8
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:68,1"
      Dst: "[com.aayushatharva.brotli4j.decoder.DecoderJNI$Wrapper].pull()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:70,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:70,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:71,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliDecoder].decompress(io.netty.buffer.ByteBuf,java.util.List<Object>,io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliDecoder"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 106
    functionDepth: 1
    returnType: "io.netty.handler.codec.compression.BrotliDecoder$State"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.aayushatharva.brotli4j.decoder.DecoderJNI$Status].ordinal()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.compression.BrotliDecoder].pull(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.handler.codec.compression.BrotliDecoder].readBytes(io.netty.buffer.ByteBuf,java.nio.ByteBuffer)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[com.aayushatharva.brotli4j.decoder.DecoderJNI$Wrapper].getStatus()"
    - "[com.aayushatharva.brotli4j.decoder.DecoderJNI$Wrapper].push(int)"
    - "[com.aayushatharva.brotli4j.decoder.DecoderJNI$Wrapper].hasOutput()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[com.aayushatharva.brotli4j.decoder.DecoderJNI$Wrapper].getInputBuffer()"
    - "[java.nio.ByteBuffer].clear()"
    functionUses: 1
    ICount: 36
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.BrotliDecoder:86"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.BrotliDecoder:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.BrotliDecoder:89"
        BranchSideFuncs:
        - "isReadable()"
    - Branch String: "io.netty.handler.codec.compression.BrotliDecoder:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.BrotliDecoder:94"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.BrotliDecoder:93"
        BranchSideFuncs:
        - "readBytes(io.netty.buffer.ByteBuf,java.nio.ByteBuffer)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:77,1"
      Dst: "[com.aayushatharva.brotli4j.decoder.DecoderJNI$Wrapper].getStatus()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:77,1"
      Dst: "[com.aayushatharva.brotli4j.decoder.DecoderJNI$Status].ordinal()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:82,1"
      Dst: "[com.aayushatharva.brotli4j.decoder.DecoderJNI$Wrapper].push(int)"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:86,1"
      Dst: "[com.aayushatharva.brotli4j.decoder.DecoderJNI$Wrapper].hasOutput()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:87,1"
      Dst: "[io.netty.handler.codec.compression.BrotliDecoder].pull(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:87,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:90,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:94,1"
      Dst: "[com.aayushatharva.brotli4j.decoder.DecoderJNI$Wrapper].getInputBuffer()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:95,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:96,1"
      Dst: "[io.netty.handler.codec.compression.BrotliDecoder].readBytes(io.netty.buffer.ByteBuf,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.compression.BrotliDecoder].readBytes(io.netty.buffer.ByteBuf,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliDecoder"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:java.lang.Math].min(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[java.nio.Buffer].remaining()"
    - "[java.lang.Math].min(int,int)"
    - "[java.nio.ByteBuffer].slice()"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[io.netty.buffer.ByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].position(int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:111,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:111,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:111,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:112,1"
      Dst: "[java.nio.ByteBuffer].slice()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:113,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:114,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:115,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:115,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliDecoder].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliDecoder"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.aayushatharva.brotli4j.decoder.DecoderJNI$Wrapper].<init>(int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:121,1"
      Dst: "[com.aayushatharva.brotli4j.decoder.DecoderJNI$Wrapper].<init>(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliDecoder"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 148
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.compression.BrotliDecoder].decompress(io.netty.buffer.ByteBuf,java.util.List,io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.codec.compression.BrotliDecoder].destroy()"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    functionUses: 1
    ICount: 28
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.BrotliDecoder:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.BrotliDecoder:131"
        BranchSideFuncs:
        - "isReadable()"
    - Branch String: "io.netty.handler.codec.compression.BrotliDecoder:132"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.BrotliDecoder:137"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.BrotliDecoder:136"
        BranchSideFuncs:
        - "decompress(io.netty.buffer.ByteBuf,java.util.List,io.netty.buffer.ByteBufAllocator)"
        - "alloc()"
    - Branch String: "io.netty.handler.codec.compression.BrotliDecoder:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.BrotliDecoder:140"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.BrotliDecoder:139"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.BrotliDecoder:140"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.BrotliDecoder:146"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.BrotliDecoder:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:128,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:128,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:132,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:137,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:137,1"
      Dst: "[io.netty.handler.codec.compression.BrotliDecoder].decompress(io.netty.buffer.ByteBuf,java.util.List,io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:139,1"
      Dst: "[io.netty.handler.codec.compression.BrotliDecoder].destroy()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:141,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliDecoder].destroy()"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliDecoder"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 155
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.aayushatharva.brotli4j.decoder.DecoderJNI$Wrapper].destroy()"
    functionUses: 4
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.BrotliDecoder:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.BrotliDecoder:154"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.BrotliDecoder:153"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:152,1"
      Dst: "[com.aayushatharva.brotli4j.decoder.DecoderJNI$Wrapper].destroy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.BrotliDecoder].handlerRemoved0(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliDecoder"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 164
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.BrotliDecoder].destroy()"
    - "[io.netty.handler.codec.ByteToMessageDecoder].handlerRemoved0(io.netty.channel.ChannelHandlerContext)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:159,1"
      Dst: "[io.netty.handler.codec.compression.BrotliDecoder].destroy()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:161,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].handlerRemoved0(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliDecoder"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 173
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.BrotliDecoder].destroy()"
    - "[io.netty.handler.codec.ByteToMessageDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:168,1"
      Dst: "[io.netty.handler.codec.compression.BrotliDecoder].destroy()"
    - Src: "io.netty.handler.codec.compression.BrotliDecoder:170,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.AbstractMemcacheObjectAggregator].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:35,1"
      Dst: "[io.netty.handler.codec.memcache.AbstractMemcacheObjectAggregator].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator].isStartMessage(io.netty.handler.codec.memcache.MemcacheObject)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.memcache.MemcacheObject"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator].beginAggregation(io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 55
    functionDepth: 3
    returnType: "io.netty.handler.codec.memcache.FullMemcacheMessage"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator].toFullRequest(io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator].toFullResponse(io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse,io.netty.buffer.ByteBuf)"
    - "[java.lang.Error].<init>()"
    functionUses: 1
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:45"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:49"
        BranchSideFuncs:
        - "toFullRequest(io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:48"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:49"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:54"
        BranchSideFuncs:
        - "toFullResponse(io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:53"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:46,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator].toFullRequest(io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:50,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator].toFullResponse(io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:54,1"
      Dst: "[java.lang.Error].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator].toFullRequest(io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 74
    functionDepth: 2
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheRequest"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].key()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extras()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].magic()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setMagic(byte)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].opcode()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setOpcode(byte)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].keyLength()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setKeyLength(short)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extrasLength()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setExtrasLength(byte)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].dataType()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setDataType(byte)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setTotalBodyLength(int)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].totalBodyLength()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].opaque()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setOpaque(int)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].cas()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setCas(long)"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].reserved()"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].setReserved(short)"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].key()"
    - "[io.netty.buffer.ByteBuf].retain()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].extras()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].magic()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].opcode()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].keyLength()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].extrasLength()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].dataType()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].totalBodyLength()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].opaque()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].cas()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest].reserved()"
    functionUses: 1
    ICount: 36
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:58"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:58"
        BranchSideFuncs:
        - "extras()"
        - "key()"
        - "retain()"
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:57"
        BranchSideFuncs:
        - "key()"
    - Branch String: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:59"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:58"
        BranchSideFuncs:
        - "setReserved(short)"
        - "setOpcode(byte)"
        - "setCas(long)"
        - "magic()"
        - "keyLength()"
        - "setExtrasLength(byte)"
        - "setOpaque(int)"
        - "reserved()"
        - "setKeyLength(short)"
        - "dataType()"
        - "extrasLength()"
        - "opaque()"
        - "<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
        - "totalBodyLength()"
        - "cas()"
        - "setMagic(byte)"
        - "opcode()"
        - "setDataType(byte)"
        - "setTotalBodyLength(int)"
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:57"
        BranchSideFuncs:
        - "extras()"
        - "key()"
        - "retain()"
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:58,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].key()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:58,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:59,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].extras()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:60,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:63,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].magic()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:63,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setMagic(byte)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:64,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].opcode()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:64,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setOpcode(byte)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:65,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].keyLength()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:65,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setKeyLength(short)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:66,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].extrasLength()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:66,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setExtrasLength(byte)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:67,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].dataType()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:67,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setDataType(byte)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:68,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].totalBodyLength()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:68,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setTotalBodyLength(int)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:69,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].opaque()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:69,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setOpaque(int)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:70,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].cas()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:70,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setCas(long)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:71,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest].reserved()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:71,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].setReserved(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].setReserved(short)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator].toFullResponse(io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 93
    functionDepth: 2
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheResponse"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].key()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extras()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].magic()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setMagic(byte)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].opcode()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setOpcode(byte)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].keyLength()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setKeyLength(short)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extrasLength()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setExtrasLength(byte)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].dataType()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setDataType(byte)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setTotalBodyLength(int)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].totalBodyLength()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].opaque()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setOpaque(int)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].cas()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setCas(long)"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].setStatus(short)"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].status()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].key()"
    - "[io.netty.buffer.ByteBuf].retain()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].extras()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].magic()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].opcode()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].keyLength()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].extrasLength()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].dataType()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].totalBodyLength()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].opaque()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].cas()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse].status()"
    functionUses: 1
    ICount: 36
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:77"
        BranchSideFuncs:
        - "extras()"
        - "key()"
        - "retain()"
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:76"
        BranchSideFuncs:
        - "key()"
    - Branch String: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:77"
        BranchSideFuncs:
        - "setOpcode(byte)"
        - "setCas(long)"
        - "magic()"
        - "keyLength()"
        - "status()"
        - "setExtrasLength(byte)"
        - "setOpaque(int)"
        - "setKeyLength(short)"
        - "dataType()"
        - "extrasLength()"
        - "opaque()"
        - "setStatus(short)"
        - "<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
        - "totalBodyLength()"
        - "cas()"
        - "setMagic(byte)"
        - "opcode()"
        - "setDataType(byte)"
        - "setTotalBodyLength(int)"
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:76"
        BranchSideFuncs:
        - "extras()"
        - "key()"
        - "retain()"
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:77,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].key()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:77,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:78,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].extras()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:79,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:82,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].magic()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:82,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setMagic(byte)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:83,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].opcode()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:83,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setOpcode(byte)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:84,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].keyLength()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:84,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setKeyLength(short)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:85,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].extrasLength()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:85,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setExtrasLength(byte)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:86,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].dataType()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:86,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setDataType(byte)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:87,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].totalBodyLength()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:87,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setTotalBodyLength(int)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:88,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].opaque()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:88,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setOpaque(int)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:89,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].cas()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:89,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setCas(long)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:90,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse].status()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:90,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].setStatus(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extrasLength()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].keyLength()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setTotalBodyLength(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setTotalBodyLength(int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:51,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:52,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:53,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].keyLength()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:53,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extrasLength()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:53,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:53,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setTotalBodyLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setMagic(byte)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse:57,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse:58,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setMagic(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].setStatus(short)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator].beginAggregation(java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBufHolder"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator].beginAggregation(io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage,io.netty.buffer.ByteBuf)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:31,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator].beginAggregation(io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator].isStartMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator].isStartMessage(io.netty.handler.codec.memcache.MemcacheObject)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator:31,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheObjectAggregator].isStartMessage(io.netty.handler.codec.memcache.MemcacheObject)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].<init>(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1"
    linkageType: ""
    functionLinenumber: 594
    functionLinenumberEnd: 596
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1:595,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1"
    linkageType: ""
    functionLinenumber: 597
    functionLinenumberEnd: 600
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$400(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    functionUses: 50
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1:598,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$400(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$400(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 361
    functionLinenumberEnd: 363
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].remove0()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:362,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].remove0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].remove0()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 604
    functionLinenumberEnd: 615
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DatagramPacketEncoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.DatagramPacketDecoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.flush.FlushConsolidationHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.timeout.IdleStateHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ChannelDuplexHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.ByteToMessageCodec].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.HttpContentDecoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.flow.FlowControlHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.timeout.WriteTimeoutHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.ApplicationProtocolNegotiationHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelInitializer].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.compression.ZstdEncoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.sctp.SctpMessageCompletionHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.HttpContentEncoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.pcap.PcapWriteHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandlerAdapter].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.MessageAggregator].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$2].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.compression.LzfEncoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[java.lang.StringBuilder].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPipelineException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.ChannelHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionUses: 2
    ICount: 20
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:605"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:614"
        BranchSideFuncs:
        - "handlerRemoved(io.netty.channel.ChannelHandlerContext)"
        - "<init>()"
        - "getName()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "append(java.lang.String)"
        - "toString()"
        - "getClass()"
        - "<init>(java.lang.String,java.lang.Throwable)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:613"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:608,1"
      Dst: "[io.netty.channel.ChannelHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:610,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:611,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:611,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:611,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:611,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:611,1"
      Dst: "[io.netty.channel.ChannelPipelineException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:610,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 423
    functionLinenumberEnd: 426
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 56
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:424,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].<init>()"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.BootstrapConfig].<init>(io.netty.bootstrap.Bootstrap)"
    - "[io.netty.bootstrap.AbstractBootstrap].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:59,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].<init>()"
    - Src: "io.netty.bootstrap.Bootstrap:52,1"
      Dst: "[io.netty.bootstrap.BootstrapConfig].<init>(io.netty.bootstrap.Bootstrap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].<init>(io.netty.bootstrap.Bootstrap)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 66
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.bootstrap.Bootstrap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.BootstrapConfig].<init>(io.netty.bootstrap.Bootstrap)"
    - "[io.netty.bootstrap.AbstractBootstrap].<init>(io.netty.bootstrap.AbstractBootstrap)"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:62,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].<init>(io.netty.bootstrap.AbstractBootstrap)"
    - Src: "io.netty.bootstrap.Bootstrap:52,1"
      Dst: "[io.netty.bootstrap.BootstrapConfig].<init>(io.netty.bootstrap.Bootstrap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].resolver(io.netty.resolver.AddressResolverGroup<?>)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.bootstrap.Bootstrap"
    argCount: 1
    argTypes:
    - "io.netty.resolver.AddressResolverGroup<?>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.bootstrap.Bootstrap:77"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.Bootstrap:77"
        BranchSideFuncs: []
      - BranchSide: "io.netty.bootstrap.Bootstrap:76"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.bootstrap.Bootstrap].remoteAddress(java.net.SocketAddress)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.bootstrap.Bootstrap"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].remoteAddress(java.lang.String,int)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.bootstrap.Bootstrap"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].createUnresolved(java.lang.String,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:94,1"
      Dst: "[java.net.InetSocketAddress].createUnresolved(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].remoteAddress(java.net.InetAddress,int)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.bootstrap.Bootstrap"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:102,1"
      Dst: "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].connect()"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 117
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.Bootstrap].validate()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.bootstrap.Bootstrap].doResolveAndConnect(java.net.SocketAddress,java.net.SocketAddress)"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].localAddress()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.bootstrap.Bootstrap:112"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.Bootstrap:116"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.bootstrap.Bootstrap:115"
        BranchSideFuncs:
        - "localAddress()"
        - "doResolveAndConnect(java.net.SocketAddress,java.net.SocketAddress)"
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:110,1"
      Dst: "[io.netty.bootstrap.Bootstrap].validate()"
    - Src: "io.netty.bootstrap.Bootstrap:113,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.bootstrap.Bootstrap:116,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrapConfig].localAddress()"
    - Src: "io.netty.bootstrap.Bootstrap:116,1"
      Dst: "[io.netty.bootstrap.Bootstrap].doResolveAndConnect(java.net.SocketAddress,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].validate()"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: 269
    functionLinenumberEnd: 275
    functionDepth: 0
    returnType: "io.netty.bootstrap.Bootstrap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.AbstractBootstrap].validate()"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].handler()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.bootstrap.Bootstrap:271"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.Bootstrap:274"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.bootstrap.Bootstrap:273"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:270,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].validate()"
    - Src: "io.netty.bootstrap.Bootstrap:271,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrapConfig].handler()"
    - Src: "io.netty.bootstrap.Bootstrap:272,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].doResolveAndConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 185
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.AbstractBootstrap].initAndRegister()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.CompleteChannelFuture].channel()"
    - "[io.netty.channel.DefaultChannelPromise].channel()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].channel()"
    - "[io.netty.channel.VoidChannelPromise].channel()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.bootstrap.Bootstrap].doResolveAndConnect0(io.netty.channel.Channel,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].newPromise()"
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise].<init>(io.netty.channel.Channel)"
    - "[io.netty.bootstrap.Bootstrap$1].<init>(io.netty.bootstrap.Bootstrap,io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise,io.netty.channel.Channel,java.net.SocketAddress,java.net.SocketAddress)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelFuture].channel()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 19
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.bootstrap.Bootstrap:158"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.Bootstrap:165"
        BranchSideFuncs:
        - "isSuccess()"
      - BranchSide: "io.netty.bootstrap.Bootstrap:164"
        BranchSideFuncs:
        - "<init>(io.netty.channel.Channel)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.bootstrap.Bootstrap,io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise,io.netty.channel.Channel,java.net.SocketAddress,java.net.SocketAddress)"
    - Branch String: "io.netty.bootstrap.Bootstrap:159"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.Bootstrap:162"
        BranchSideFuncs: []
      - BranchSide: "io.netty.bootstrap.Bootstrap:161"
        BranchSideFuncs:
        - "newPromise()"
        - "doResolveAndConnect0(io.netty.channel.Channel,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:155,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].initAndRegister()"
    - Src: "io.netty.bootstrap.Bootstrap:156,1"
      Dst: "[io.netty.channel.ChannelFuture].channel()"
    - Src: "io.netty.bootstrap.Bootstrap:158,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.bootstrap.Bootstrap:159,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.bootstrap.Bootstrap:162,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.bootstrap.Bootstrap:162,1"
      Dst: "[io.netty.bootstrap.Bootstrap].doResolveAndConnect0(io.netty.channel.Channel,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.bootstrap.Bootstrap:165,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.bootstrap.Bootstrap:166,1"
      Dst: "[io.netty.bootstrap.Bootstrap$1].<init>(io.netty.bootstrap.Bootstrap,io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise,io.netty.channel.Channel,java.net.SocketAddress,java.net.SocketAddress)"
    - Src: "io.netty.bootstrap.Bootstrap:166,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].doResolveAndConnect0(io.netty.channel.Channel,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 238
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "io.netty.channel.Channel"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.resolver.AddressResolverGroup].getResolver(io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.channel.AbstractChannel].close()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].close()"
    - "[io.netty.channel.embedded.EmbeddedChannel].close()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.resolver.AbstractAddressResolver].isResolved(java.net.SocketAddress)"
    - "[io.netty.resolver.AbstractAddressResolver].isSupported(java.net.SocketAddress)"
    - "[io.netty.bootstrap.Bootstrap].doConnect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.resolver.AbstractAddressResolver].resolve(java.net.SocketAddress)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.util.concurrent.FailedFuture].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.util.concurrent.SucceededFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].getNow()"
    - "[io.netty.channel.VoidChannelPromise].getNow()"
    - "[io.netty.util.concurrent.SucceededFuture].getNow()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].getNow()"
    - "[io.netty.util.concurrent.FailedFuture].getNow()"
    - "[io.netty.channel.CompleteChannelFuture].getNow()"
    - "[io.netty.bootstrap.Bootstrap$2].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.Channel,io.netty.channel.ChannelPromise,java.net.SocketAddress)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.CompleteFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.resolver.AddressResolver].isSupported(java.net.SocketAddress)"
    - "[io.netty.resolver.AddressResolver].isResolved(java.net.SocketAddress)"
    - "[io.netty.resolver.AddressResolver].resolve(java.net.SocketAddress)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.concurrent.Future].getNow()"
    - "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 2
    ICount: 38
    EdgeCount: 64
    BranchProfiles:
    - Branch String: "io.netty.bootstrap.Bootstrap:200"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.Bootstrap:201"
        BranchSideFuncs: []
    - Branch String: "io.netty.bootstrap.Bootstrap:200"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.Bootstrap:205"
        BranchSideFuncs:
        - "resolve(java.net.SocketAddress)"
        - "isDone()"
    - Branch String: "io.netty.bootstrap.Bootstrap:208"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.Bootstrap:223"
        BranchSideFuncs:
        - "cause()"
      - BranchSide: "io.netty.bootstrap.Bootstrap:222"
        BranchSideFuncs:
        - "<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.Channel,io.netty.channel.ChannelPromise,java.net.SocketAddress)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "tryFailure(java.lang.Throwable)"
    - Branch String: "io.netty.bootstrap.Bootstrap:211"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.Bootstrap:217"
        BranchSideFuncs:
        - "resolve(java.net.SocketAddress)"
        - "isDone()"
        - "<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.Channel,io.netty.channel.ChannelPromise,java.net.SocketAddress)"
        - "doConnect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
        - "setFailure(java.lang.Throwable)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "tryFailure(java.lang.Throwable)"
        - "getNow()"
        - "close()"
        - "cause()"
      - BranchSide: "io.netty.bootstrap.Bootstrap:216"
        BranchSideFuncs:
        - "doConnect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
        - "getNow()"
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:191,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.bootstrap.Bootstrap:194,1"
      Dst: "[io.netty.resolver.AddressResolverGroup].getResolver(io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.bootstrap.Bootstrap:196,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    - Src: "io.netty.bootstrap.Bootstrap:197,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.bootstrap.Bootstrap:200,1"
      Dst: "[io.netty.resolver.AddressResolver].isSupported(java.net.SocketAddress)"
    - Src: "io.netty.bootstrap.Bootstrap:200,1"
      Dst: "[io.netty.resolver.AddressResolver].isResolved(java.net.SocketAddress)"
    - Src: "io.netty.bootstrap.Bootstrap:202,1"
      Dst: "[io.netty.bootstrap.Bootstrap].doConnect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.bootstrap.Bootstrap:206,1"
      Dst: "[io.netty.resolver.AddressResolver].resolve(java.net.SocketAddress)"
    - Src: "io.netty.bootstrap.Bootstrap:208,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.bootstrap.Bootstrap:209,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.bootstrap.Bootstrap:217,1"
      Dst: "[io.netty.util.concurrent.Future].getNow()"
    - Src: "io.netty.bootstrap.Bootstrap:223,1"
      Dst: "[io.netty.bootstrap.Bootstrap$2].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.Channel,io.netty.channel.ChannelPromise,java.net.SocketAddress)"
    - Src: "io.netty.bootstrap.Bootstrap:223,1"
      Dst: "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.bootstrap.Bootstrap:235,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 2
  - functionName: "[io.netty.bootstrap.Bootstrap].doConnect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 258
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.DefaultChannelPromise].channel()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].channel()"
    - "[io.netty.channel.VoidChannelPromise].channel()"
    - "[io.netty.bootstrap.Bootstrap$3].<init>(java.net.SocketAddress,io.netty.channel.Channel,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.channel.ChannelPromise].channel()"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 3
    ICount: 9
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:245,1"
      Dst: "[io.netty.channel.ChannelPromise].channel()"
    - Src: "io.netty.bootstrap.Bootstrap:246,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.bootstrap.Bootstrap:246,1"
      Dst: "[io.netty.bootstrap.Bootstrap$3].<init>(java.net.SocketAddress,io.netty.channel.Channel,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.bootstrap.Bootstrap:246,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap$3].<init>(java.net.SocketAddress,io.netty.channel.Channel,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap$3"
    linkageType: ""
    functionLinenumber: 245
    functionLinenumberEnd: 247
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.net.SocketAddress"
    - "io.netty.channel.Channel"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap$3:246,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap$2].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.Channel,io.netty.channel.ChannelPromise,java.net.SocketAddress)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap$2"
    linkageType: ""
    functionLinenumber: 222
    functionLinenumberEnd: 224
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.bootstrap.Bootstrap"
    - "io.netty.channel.Channel"
    - "io.netty.channel.ChannelPromise"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap$2:223,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap$1].<init>(io.netty.bootstrap.Bootstrap,io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise,io.netty.channel.Channel,java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap$1"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.bootstrap.Bootstrap"
    - "io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise"
    - "io.netty.channel.Channel"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap$1:166,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].connect(java.lang.String,int)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].createUnresolved(java.lang.String,int)"
    - "[io.netty.bootstrap.Bootstrap].connect(java.net.SocketAddress)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:123,1"
      Dst: "[java.net.InetSocketAddress].createUnresolved(java.lang.String,int)"
    - Src: "io.netty.bootstrap.Bootstrap:123,1"
      Dst: "[io.netty.bootstrap.Bootstrap].connect(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].connect(java.net.SocketAddress)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 140
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.bootstrap.Bootstrap].validate()"
    - "[io.netty.bootstrap.Bootstrap].doResolveAndConnect(java.net.SocketAddress,java.net.SocketAddress)"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].localAddress()"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:137,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.bootstrap.Bootstrap:138,1"
      Dst: "[io.netty.bootstrap.Bootstrap].validate()"
    - Src: "io.netty.bootstrap.Bootstrap:139,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrapConfig].localAddress()"
    - Src: "io.netty.bootstrap.Bootstrap:139,1"
      Dst: "[io.netty.bootstrap.Bootstrap].doResolveAndConnect(java.net.SocketAddress,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].connect(java.net.InetAddress,int)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    - "[io.netty.bootstrap.Bootstrap].connect(java.net.SocketAddress)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:130,1"
      Dst: "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    - Src: "io.netty.bootstrap.Bootstrap:130,1"
      Dst: "[io.netty.bootstrap.Bootstrap].connect(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].connect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.bootstrap.Bootstrap].validate()"
    - "[io.netty.bootstrap.Bootstrap].doResolveAndConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:146,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.bootstrap.Bootstrap:147,1"
      Dst: "[io.netty.bootstrap.Bootstrap].validate()"
    - Src: "io.netty.bootstrap.Bootstrap:148,1"
      Dst: "[io.netty.bootstrap.Bootstrap].doResolveAndConnect(java.net.SocketAddress,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].init(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: 260
    functionLinenumberEnd: 267
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].handler()"
    - "[io.netty.bootstrap.AbstractBootstrap].newOptionsArray()"
    - "[io.netty.bootstrap.AbstractBootstrap].setChannelOptions(io.netty.channel.Channel,java.util.Map$Entry[],io.netty.util.internal.logging.InternalLogger)"
    - "[io.netty.bootstrap.AbstractBootstrap].newAttributesArray()"
    - "[io.netty.bootstrap.AbstractBootstrap].setAttributes(io.netty.channel.Channel,java.util.Map$Entry[])"
    - "[io.netty.channel.Channel].pipeline()"
    - "[io.netty.channel.ChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    functionUses: 1
    ICount: 14
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:261,1"
      Dst: "[io.netty.channel.Channel].pipeline()"
    - Src: "io.netty.bootstrap.Bootstrap:262,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrapConfig].handler()"
    - Src: "io.netty.bootstrap.Bootstrap:262,1"
      Dst: "[io.netty.channel.ChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - Src: "io.netty.bootstrap.Bootstrap:264,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].newOptionsArray()"
    - Src: "io.netty.bootstrap.Bootstrap:264,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].setChannelOptions(io.netty.channel.Channel,java.util.Map$Entry[],io.netty.util.internal.logging.InternalLogger)"
    - Src: "io.netty.bootstrap.Bootstrap:265,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].newAttributesArray()"
    - Src: "io.netty.bootstrap.Bootstrap:265,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].setAttributes(io.netty.channel.Channel,java.util.Map$Entry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].clone()"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionDepth: 2
    returnType: "io.netty.bootstrap.Bootstrap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.Bootstrap].<init>(io.netty.bootstrap.Bootstrap)"
    functionUses: 80
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:280,1"
      Dst: "[io.netty.bootstrap.Bootstrap].<init>(io.netty.bootstrap.Bootstrap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.BootstrapConfig].<init>(io.netty.bootstrap.Bootstrap)"
    functionSourceFile: "io.netty.bootstrap.BootstrapConfig"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.bootstrap.Bootstrap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.AbstractBootstrapConfig].<init>(io.netty.bootstrap.AbstractBootstrap)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.BootstrapConfig:29,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrapConfig].<init>(io.netty.bootstrap.AbstractBootstrap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].clone(io.netty.channel.EventLoopGroup)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.bootstrap.Bootstrap"
    argCount: 1
    argTypes:
    - "io.netty.channel.EventLoopGroup"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.Bootstrap].<init>(io.netty.bootstrap.Bootstrap)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:289,1"
      Dst: "[io.netty.bootstrap.Bootstrap].<init>(io.netty.bootstrap.Bootstrap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].config()"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionDepth: 0
    returnType: "io.netty.bootstrap.BootstrapConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].remoteAddress()"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: 299
    functionLinenumberEnd: 301
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].resolver()"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: 303
    functionLinenumberEnd: 305
    functionDepth: 0
    returnType: "io.netty.resolver.AddressResolverGroup"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].access$000(io.netty.bootstrap.Bootstrap,io.netty.channel.Channel,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 5
    argTypes:
    - "io.netty.bootstrap.Bootstrap"
    - "io.netty.channel.Channel"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.Bootstrap].doResolveAndConnect0(io.netty.channel.Channel,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:46,1"
      Dst: "[io.netty.bootstrap.Bootstrap].doResolveAndConnect0(io.netty.channel.Channel,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap].access$100(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.Bootstrap].doConnect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap:46,1"
      Dst: "[io.netty.bootstrap.Bootstrap].doConnect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$3].<init>(io.netty.resolver.dns.DnsResolveContext,io.netty.util.concurrent.Future,java.net.InetSocketAddress,io.netty.resolver.dns.DnsServerAddressStream,int,io.netty.handler.codec.dns.DnsQuestion,io.netty.resolver.dns.DnsQueryLifecycleObserver,io.netty.util.concurrent.Promise,java.lang.Throwable)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$3"
    linkageType: ""
    functionLinenumber: 497
    functionLinenumberEnd: 499
    functionDepth: 0
    returnType: "void"
    argCount: 9
    argTypes:
    - "io.netty.resolver.dns.DnsResolveContext"
    - "io.netty.util.concurrent.Future"
    - "java.net.InetSocketAddress"
    - "io.netty.resolver.dns.DnsServerAddressStream"
    - "int"
    - "io.netty.handler.codec.dns.DnsQuestion"
    - "io.netty.resolver.dns.DnsQueryLifecycleObserver"
    - "io.netty.util.concurrent.Promise"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 21
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$3:498,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$3].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$3"
    linkageType: ""
    functionLinenumber: 501
    functionLinenumberEnd: 516
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsResolveContext].access$200(io.netty.resolver.dns.DnsResolveContext)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].remove(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.HashSet].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].remove(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].remove(java.lang.Object)"
    - "[java.util.TreeSet].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].remove(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.AbstractCollection].remove(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].remove(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.util.concurrent.FailedFuture].isSuccess()"
    - "[io.netty.util.concurrent.SucceededFuture].isSuccess()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].getNow()"
    - "[io.netty.channel.VoidChannelPromise].getNow()"
    - "[io.netty.util.concurrent.SucceededFuture].getNow()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].getNow()"
    - "[io.netty.util.concurrent.FailedFuture].getNow()"
    - "[io.netty.channel.CompleteChannelFuture].getNow()"
    - "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].<init>(io.netty.resolver.dns.DnsResolveContext,java.net.InetSocketAddress,java.util.List,io.netty.resolver.dns.DnsServerAddressStream)"
    - "[io.netty.resolver.dns.DnsResolveContext].access$600(io.netty.resolver.dns.DnsResolveContext,io.netty.resolver.dns.DnsServerAddressStream,int,io.netty.handler.codec.dns.DnsQuestion,io.netty.resolver.dns.DnsQueryLifecycleObserver,boolean,io.netty.util.concurrent.Promise,java.lang.Throwable)"
    - "[java.util.Set].remove(java.lang.Object)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].getNow()"
    functionUses: 1
    ICount: 33
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$3:504"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$3:512"
        BranchSideFuncs:
        - "getNow()"
        - "<init>(io.netty.resolver.dns.DnsResolveContext,java.net.InetSocketAddress,java.util.List,io.netty.resolver.dns.DnsServerAddressStream)"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$3:511"
        BranchSideFuncs:
        - "access$600(io.netty.resolver.dns.DnsResolveContext,io.netty.resolver.dns.DnsServerAddressStream,int,io.netty.handler.codec.dns.DnsQuestion,io.netty.resolver.dns.DnsQueryLifecycleObserver,boolean,io.netty.util.concurrent.Promise,java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$3:502,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext].access$200(io.netty.resolver.dns.DnsResolveContext)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$3:502,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$3:504,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$3:505,1"
      Dst: "[io.netty.util.concurrent.Future].getNow()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$3:506,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].<init>(io.netty.resolver.dns.DnsResolveContext,java.net.InetSocketAddress,java.util.List,io.netty.resolver.dns.DnsServerAddressStream)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$3:508,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext].access$600(io.netty.resolver.dns.DnsResolveContext,io.netty.resolver.dns.DnsServerAddressStream,int,io.netty.handler.codec.dns.DnsQuestion,io.netty.resolver.dns.DnsQueryLifecycleObserver,boolean,io.netty.util.concurrent.Promise,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].<init>(io.netty.resolver.dns.DnsResolveContext,java.net.InetSocketAddress,java.util.List,io.netty.resolver.dns.DnsServerAddressStream)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream"
    linkageType: ""
    functionLinenumber: 1127
    functionLinenumberEnd: 1134
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.resolver.dns.DnsResolveContext"
    - "java.net.InetSocketAddress"
    - "java.util.List"
    - "io.netty.resolver.dns.DnsServerAddressStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.List].iterator()"
    functionUses: 2
    ICount: 13
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1128,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1132,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].<init>(java.util.Comparator,int)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Comparator"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractQueue].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:41"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:39"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:38"
        BranchSideFuncs:
        - "<init>()"
        - "checkNotNull(java.lang.Object,java.lang.String)"
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:39,1"
      Dst: "[java.util.AbstractQueue].<init>()"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:40,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].size()"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].isEmpty()"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:51"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:50"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].contains(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    - "[io.netty.util.internal.DefaultPriorityQueue].contains(io.netty.util.internal.PriorityQueueNode,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:56"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:59"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:58"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:60,1"
      Dst: "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:60,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].contains(io.netty.util.internal.PriorityQueueNode,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].contains(io.netty.util.internal.PriorityQueueNode,int)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 240
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.PriorityQueueNode"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].equals(java.lang.Object)"
    functionUses: 3
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:239"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:239"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:239"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:239,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].containsTyped(io.netty.util.internal.PriorityQueueNode)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.PriorityQueueNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.DefaultPriorityQueue].contains(io.netty.util.internal.PriorityQueueNode,int)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    - "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    functionUses: 1
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:65,1"
      Dst: "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:65,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].contains(io.netty.util.internal.PriorityQueueNode,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].clear()"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    - "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    functionUses: 9
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:70"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:77"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:76"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:72"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:70"
        BranchSideFuncs:
        - "priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:73,1"
      Dst: "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].clearIgnoringIndexes()"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].offer(io.netty.util.internal.PriorityQueueNode)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 103
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.PriorityQueueNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Arrays].copyOf(java.lang.Object[],int)"
    - "[io.netty.util.internal.DefaultPriorityQueue].bubbleUp(int,io.netty.util.internal.PriorityQueueNode)"
    - "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 1
    ICount: 45
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:87"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:93"
        BranchSideFuncs:
        - "<init>()"
        - "priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:92"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:93"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:100"
        BranchSideFuncs:
        - "bubbleUp(int,io.netty.util.internal.PriorityQueueNode)"
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:96"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:95"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int)"
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:87,1"
      Dst: "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:88,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:88,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:88,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:88,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:88,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:88,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:96,1"
      Dst: "[java.util.Arrays].copyOf(java.lang.Object[],int)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:101,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].bubbleUp(int,io.netty.util.internal.PriorityQueueNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].bubbleUp(int,io.netty.util.internal.PriorityQueueNode)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 273
    functionLinenumberEnd: 296
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.util.internal.PriorityQueueNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.jimage.ImageBufferCache$2].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieEncoder$1].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor$1].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator].compare(java.lang.Object,java.lang.Object)"
    - "[sun.security.util.ByteArrayLexOrder].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.resolver.dns.NameServerComparator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.resolver.dns.PreferredAddressTypeComparator].compare(java.lang.Object,java.lang.Object)"
    - "[java.text.Collator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamComparator].compare(java.lang.Object,java.lang.Object)"
    - "[sun.security.util.ByteArrayTagOrder].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StatePseudoTimeComparator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.CaseIgnoringComparator].compare(java.lang.Object,java.lang.Object)"
    - "[jaz.Zer].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRuleComparator].compare(java.lang.Object,java.lang.Object)"
    - "[java.lang.String$CaseInsensitiveComparator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    - "[java.util.Comparator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    functionUses: 3
    ICount: 21
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:274"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:293"
        BranchSideFuncs:
        - "compare(java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:292"
        BranchSideFuncs:
        - "priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:280"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:285"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:284"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:280,1"
      Dst: "[java.util.Comparator].compare(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:286,1"
      Dst: "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 120
    functionDepth: 1
    returnType: "io.netty.util.internal.PriorityQueueNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    - "[io.netty.util.internal.DefaultPriorityQueue].bubbleDown(int,io.netty.util.internal.PriorityQueueNode)"
    - "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    functionUses: 42
    ICount: 20
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:107"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:110"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:109"
        BranchSideFuncs:
        - "priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:115"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:119"
        BranchSideFuncs:
        - "bubbleDown(int,io.netty.util.internal.PriorityQueueNode)"
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:111,1"
      Dst: "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:116,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].bubbleDown(int,io.netty.util.internal.PriorityQueueNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].bubbleDown(int,io.netty.util.internal.PriorityQueueNode)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 242
    functionLinenumberEnd: 272
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.util.internal.PriorityQueueNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.jimage.ImageBufferCache$2].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieEncoder$1].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor$1].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator].compare(java.lang.Object,java.lang.Object)"
    - "[sun.security.util.ByteArrayLexOrder].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.resolver.dns.NameServerComparator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.resolver.dns.PreferredAddressTypeComparator].compare(java.lang.Object,java.lang.Object)"
    - "[java.text.Collator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamComparator].compare(java.lang.Object,java.lang.Object)"
    - "[sun.security.util.ByteArrayTagOrder].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StatePseudoTimeComparator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.CaseIgnoringComparator].compare(java.lang.Object,java.lang.Object)"
    - "[jaz.Zer].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRuleComparator].compare(java.lang.Object,java.lang.Object)"
    - "[java.lang.String$CaseInsensitiveComparator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    - "[java.util.Comparator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    functionUses: 4
    ICount: 34
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:244"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:268"
        BranchSideFuncs:
        - "priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:251"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:256"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:255"
        BranchSideFuncs:
        - "compare(java.lang.Object,java.lang.Object)"
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:251"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:256"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:255"
        BranchSideFuncs:
        - "compare(java.lang.Object,java.lang.Object)"
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:256"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:261"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:260"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:251,1"
      Dst: "[java.util.Comparator].compare(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:262,1"
      Dst: "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].peek()"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "io.netty.util.internal.PriorityQueueNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:124"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:123"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].remove(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 137
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.DefaultPriorityQueue].removeTyped(io.netty.util.internal.PriorityQueueNode)"
    functionUses: 5
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:136,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].removeTyped(io.netty.util.internal.PriorityQueueNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].removeTyped(io.netty.util.internal.PriorityQueueNode)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 165
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.PriorityQueueNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    - "[io.netty.util.internal.DefaultPriorityQueue].contains(io.netty.util.internal.PriorityQueueNode,int)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieEncoder$1].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor$1].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator].compare(java.lang.Object,java.lang.Object)"
    - "[sun.security.util.ByteArrayLexOrder].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.resolver.dns.NameServerComparator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.resolver.dns.PreferredAddressTypeComparator].compare(java.lang.Object,java.lang.Object)"
    - "[java.text.Collator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamComparator].compare(java.lang.Object,java.lang.Object)"
    - "[sun.security.util.ByteArrayTagOrder].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StatePseudoTimeComparator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.CaseIgnoringComparator].compare(java.lang.Object,java.lang.Object)"
    - "[jaz.Zer].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRuleComparator].compare(java.lang.Object,java.lang.Object)"
    - "[jdk.internal.jimage.ImageBufferCache$2].compare(java.lang.Object,java.lang.Object)"
    - "[java.lang.String$CaseInsensitiveComparator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.DefaultPriorityQueue].bubbleDown(int,io.netty.util.internal.PriorityQueueNode)"
    - "[io.netty.util.internal.DefaultPriorityQueue].bubbleUp(int,io.netty.util.internal.PriorityQueueNode)"
    - "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    - "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    - "[java.util.Comparator].compare(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 32
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:142"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:147"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:147"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:153"
        BranchSideFuncs:
        - "compare(java.lang.Object,java.lang.Object)"
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:159"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:162"
        BranchSideFuncs:
        - "bubbleDown(int,io.netty.util.internal.PriorityQueueNode)"
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:161"
        BranchSideFuncs:
        - "bubbleUp(int,io.netty.util.internal.PriorityQueueNode)"
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:141,1"
      Dst: "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:142,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].contains(io.netty.util.internal.PriorityQueueNode,int)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:146,1"
      Dst: "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:159,1"
      Dst: "[java.util.Comparator].compare(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:160,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].bubbleDown(int,io.netty.util.internal.PriorityQueueNode)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:162,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].bubbleUp(int,io.netty.util.internal.PriorityQueueNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].priorityChanged(io.netty.util.internal.PriorityQueueNode)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 188
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.PriorityQueueNode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    - "[io.netty.util.internal.DefaultPriorityQueue].contains(io.netty.util.internal.PriorityQueueNode,int)"
    - "[io.netty.util.internal.DefaultPriorityQueue].bubbleDown(int,io.netty.util.internal.PriorityQueueNode)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieEncoder$1].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor$1].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator].compare(java.lang.Object,java.lang.Object)"
    - "[sun.security.util.ByteArrayLexOrder].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.resolver.dns.NameServerComparator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.resolver.dns.PreferredAddressTypeComparator].compare(java.lang.Object,java.lang.Object)"
    - "[java.text.Collator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamComparator].compare(java.lang.Object,java.lang.Object)"
    - "[sun.security.util.ByteArrayTagOrder].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StatePseudoTimeComparator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.CaseIgnoringComparator].compare(java.lang.Object,java.lang.Object)"
    - "[jaz.Zer].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRuleComparator].compare(java.lang.Object,java.lang.Object)"
    - "[jdk.internal.jimage.ImageBufferCache$2].compare(java.lang.Object,java.lang.Object)"
    - "[java.lang.String$CaseInsensitiveComparator].compare(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.DefaultPriorityQueue].bubbleUp(int,io.netty.util.internal.PriorityQueueNode)"
    - "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    - "[java.util.Comparator].compare(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:170"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:175"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:174"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:175"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:179"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:178"
        BranchSideFuncs:
        - "compare(java.lang.Object,java.lang.Object)"
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:181"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:184"
        BranchSideFuncs:
        - "bubbleUp(int,io.netty.util.internal.PriorityQueueNode)"
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:183"
        BranchSideFuncs:
        - "bubbleDown(int,io.netty.util.internal.PriorityQueueNode)"
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:169,1"
      Dst: "[io.netty.util.internal.PriorityQueueNode].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:170,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].contains(io.netty.util.internal.PriorityQueueNode,int)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:176,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].bubbleDown(int,io.netty.util.internal.PriorityQueueNode)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:181,1"
      Dst: "[java.util.Comparator].compare(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:182,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].bubbleUp(int,io.netty.util.internal.PriorityQueueNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].toArray()"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].copyOf(java.lang.Object[],int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:191,1"
      Dst: "[java.util.Arrays].copyOf(java.lang.Object[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].toArray(java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 205
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].copyOf(java.lang.Object[],int,java.lang.Class)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 5
    ICount: 20
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:197"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:200"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int,java.lang.Class)"
        - "getClass()"
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:199"
        BranchSideFuncs:
        - "arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue:201"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:198,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:198,1"
      Dst: "[java.util.Arrays].copyOf(java.lang.Object[],int,java.lang.Class)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue:200,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 213
    functionDepth: 2
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].<init>(io.netty.util.internal.DefaultPriorityQueue,io.netty.util.internal.DefaultPriorityQueue$1)"
    functionUses: 58
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:212,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].<init>(io.netty.util.internal.DefaultPriorityQueue,io.netty.util.internal.DefaultPriorityQueue$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].<init>(io.netty.util.internal.DefaultPriorityQueue,io.netty.util.internal.DefaultPriorityQueue$1)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 216
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.DefaultPriorityQueue"
    - "io.netty.util.internal.DefaultPriorityQueue$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].<init>(io.netty.util.internal.DefaultPriorityQueue)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator:215,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].<init>(io.netty.util.internal.DefaultPriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].<init>(io.netty.util.internal.DefaultPriorityQueue)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 216
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.DefaultPriorityQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator:215,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].offer(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.DefaultPriorityQueue].offer(io.netty.util.internal.PriorityQueueNode)"
    functionUses: 15
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:31,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].offer(io.netty.util.internal.PriorityQueueNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].priorityChanged(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.DefaultPriorityQueue].priorityChanged(io.netty.util.internal.PriorityQueueNode)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:31,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].priorityChanged(io.netty.util.internal.PriorityQueueNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].containsTyped(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.DefaultPriorityQueue].containsTyped(io.netty.util.internal.PriorityQueueNode)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:31,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].containsTyped(io.netty.util.internal.PriorityQueueNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].removeTyped(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.DefaultPriorityQueue].removeTyped(io.netty.util.internal.PriorityQueueNode)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue:31,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].removeTyped(io.netty.util.internal.PriorityQueueNode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].access$100(io.netty.util.internal.DefaultPriorityQueue)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.DefaultPriorityQueue"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue].access$200(io.netty.util.internal.DefaultPriorityQueue)"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "io.netty.util.internal.PriorityQueueNode[]"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.DefaultPriorityQueue"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$2].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5,java.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$2"
    linkageType: ""
    functionLinenumber: 653
    functionLinenumberEnd: 655
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5"
    - "java.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$2:654,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$2"
    linkageType: ""
    functionLinenumber: 656
    functionLinenumberEnd: 659
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cancel(boolean)"
    - "[java.util.concurrent.CompletableFuture$MinimalStage].cancel(boolean)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[java.util.concurrent.CompletableFuture].cancel(boolean)"
    - "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    - "[java.util.concurrent.ForkJoinTask].cancel(boolean)"
    - "[io.netty.util.concurrent.CompleteFuture].cancel(boolean)"
    - "[io.netty.channel.VoidChannelPromise].cancel(boolean)"
    - "[io.netty.resolver.dns.Cache$1].cancel(boolean)"
    - "[java.util.concurrent.Future].cancel(boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$2:657,1"
      Dst: "[java.util.concurrent.Future].cancel(boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$2"
    linkageType: ""
    functionLinenumber: 653
    functionLinenumberEnd: 655
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$2:654,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$2].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].<init>(java.io.OutputStream)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].<init>(java.io.OutputStream,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:48,1"
      Dst: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].<init>(java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].<init>(java.io.OutputStream,int)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[java.io.DataOutputStream].<init>(java.io.OutputStream)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:73"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:66,1"
      Dst: "[java.io.OutputStream].<init>()"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:67,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:68,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:73,1"
      Dst: "[java.io.DataOutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].writeObject(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.buffer.ByteBufOutputStream].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.serialization.CompactObjectOutputStream].<init>(java.io.OutputStream)"
    - "[java.io.ObjectOutputStream].writeObject(java.lang.Object)"
    - "[java.io.ObjectOutputStream].flush()"
    - "[java.io.ObjectOutputStream].close()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:80,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:83,1"
      Dst: "[io.netty.buffer.ByteBufOutputStream].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:83,1"
      Dst: "[io.netty.handler.codec.serialization.CompactObjectOutputStream].<init>(java.io.OutputStream)"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:86,1"
      Dst: "[java.io.ObjectOutputStream].writeObject(java.lang.Object)"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:87,1"
      Dst: "[java.io.ObjectOutputStream].flush()"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:89,1"
      Dst: "[java.io.ObjectOutputStream].close()"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:92,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:93,1"
      Dst: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].writeInt(int)"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:94,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.io.OutputStream,int)"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:96,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufOutputStream].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 53
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    functionUses: 3
    ICount: 9
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufOutputStream:49,1"
      Dst: "[java.io.OutputStream].<init>()"
    - Src: "io.netty.buffer.ByteBufOutputStream:50,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.ByteBufOutputStream:51,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.CompactObjectOutputStream].<init>(java.io.OutputStream)"
    functionSourceFile: "io.netty.handler.codec.serialization.CompactObjectOutputStream"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectOutputStream].<init>(java.io.OutputStream)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.CompactObjectOutputStream:29,1"
      Dst: "[java.io.ObjectOutputStream].<init>(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].writeInt(int)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutputStream].writeInt(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:166,1"
      Dst: "[java.io.DataOutputStream].writeInt(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].write(int)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutputStream].write(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:102,1"
      Dst: "[java.io.DataOutputStream].write(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].close()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FilterOutputStream].close()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:107,1"
      Dst: "[java.io.FilterOutputStream].close()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].flush()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutputStream].flush()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:112,1"
      Dst: "[java.io.DataOutputStream].flush()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].size()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutputStream].size()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:116,1"
      Dst: "[java.io.DataOutputStream].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].write(byte[],int,int)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutputStream].write(byte[],int,int)"
    functionUses: 7
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:121,1"
      Dst: "[java.io.DataOutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].write(byte[])"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FilterOutputStream].write(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:126,1"
      Dst: "[java.io.FilterOutputStream].write(byte[])"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].writeBoolean(boolean)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutputStream].writeBoolean(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:131,1"
      Dst: "[java.io.DataOutputStream].writeBoolean(boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].writeByte(int)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutputStream].writeByte(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:136,1"
      Dst: "[java.io.DataOutputStream].writeByte(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].writeBytes(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutputStream].writeBytes(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:141,1"
      Dst: "[java.io.DataOutputStream].writeBytes(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].writeChar(int)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutputStream].writeChar(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:146,1"
      Dst: "[java.io.DataOutputStream].writeChar(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].writeChars(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutputStream].writeChars(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:151,1"
      Dst: "[java.io.DataOutputStream].writeChars(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].writeDouble(double)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutputStream].writeDouble(double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:156,1"
      Dst: "[java.io.DataOutputStream].writeDouble(double)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].writeFloat(float)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutputStream].writeFloat(float)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:161,1"
      Dst: "[java.io.DataOutputStream].writeFloat(float)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].writeLong(long)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutputStream].writeLong(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:171,1"
      Dst: "[java.io.DataOutputStream].writeLong(long)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].writeShort(int)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutputStream].writeShort(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:176,1"
      Dst: "[java.io.DataOutputStream].writeShort(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].writeUTF(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataOutputStream].writeUTF(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoderOutputStream:181,1"
      Dst: "[java.io.DataOutputStream].writeUTF(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpRequestEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.HttpRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectEncoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:28,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpRequestEncoder].acceptOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.HttpRequestEncoder"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectEncoder].acceptOutboundMessage(java.lang.Object)"
    functionUses: 3
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpRequestEncoder:36"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpRequestEncoder:35"
        BranchSideFuncs:
        - "acceptOutboundMessage(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.HttpRequestEncoder:36"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpRequestEncoder:35"
        BranchSideFuncs:
        - "acceptOutboundMessage(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:36,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectEncoder].acceptOutboundMessage(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpRequestEncoder].encodeInitialLine(io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.HttpRequestEncoder"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 80
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMethod].asciiName()"
    - "[io.netty.buffer.ByteBufUtil].copy(io.netty.util.AsciiString,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].method()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].method()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].uri()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].uri()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest:io.netty.handler.codec.http.HttpMethod].uri()"
    - "[java.lang.String].isEmpty()"
    - "[io.netty.buffer.ByteBufUtil].writeMediumBE(io.netty.buffer.ByteBuf,int)"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].indexOf(int,int)"
    - "[java.lang.String].lastIndexOf(int)"
    - "[java.lang.String].lastIndexOf(int,int)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.DefaultHttpMessage:java.lang.StringBuilder].insert(int,char)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBufUtil].writeShortBE(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.http.HttpVersion].encode(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpRequest].method()"
    - "[io.netty.handler.codec.http.HttpRequest].uri()"
    - "[java.lang.StringBuilder].insert(int,char)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    functionUses: 1
    ICount: 44
    EdgeCount: 47
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpRequestEncoder:45"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpRequestEncoder:49"
        BranchSideFuncs:
        - "indexOf(java.lang.String)"
        - "charAt(int)"
    - Branch String: "io.netty.handler.codec.http.HttpRequestEncoder:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpRequestEncoder:68"
        BranchSideFuncs:
        - "indexOf(int,int)"
      - BranchSide: "io.netty.handler.codec.http.HttpRequestEncoder:67"
        BranchSideFuncs:
        - "writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - Branch String: "io.netty.handler.codec.http.HttpRequestEncoder:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpRequestEncoder:68"
        BranchSideFuncs:
        - "indexOf(int,int)"
      - BranchSide: "io.netty.handler.codec.http.HttpRequestEncoder:67"
        BranchSideFuncs:
        - "writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - Branch String: "io.netty.handler.codec.http.HttpRequestEncoder:58"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpRequestEncoder:63"
        BranchSideFuncs:
        - "lastIndexOf(int)"
      - BranchSide: "io.netty.handler.codec.http.HttpRequestEncoder:62"
        BranchSideFuncs:
        - "lastIndexOf(int,int)"
    - Branch String: "io.netty.handler.codec.http.HttpRequestEncoder:59"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpRequestEncoder:68"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpRequestEncoder:67"
        BranchSideFuncs:
        - "writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - Branch String: "io.netty.handler.codec.http.HttpRequestEncoder:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpRequestEncoder:68"
        BranchSideFuncs:
        - "insert(int,char)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.HttpRequestEncoder:67"
        BranchSideFuncs:
        - "writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - Branch String: "io.netty.handler.codec.http.HttpRequestEncoder:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpRequestEncoder:72"
        BranchSideFuncs:
        - "writeByte(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:41,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].method()"
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:41,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].asciiName()"
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:41,1"
      Dst: "[io.netty.buffer.ByteBufUtil].copy(io.netty.util.AsciiString,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:43,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].uri()"
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:45,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:48,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeMediumBE(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:52,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:53,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:57,1"
      Dst: "[java.lang.String].indexOf(int,int)"
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:59,1"
      Dst: "[java.lang.String].lastIndexOf(int)"
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:63,1"
      Dst: "[java.lang.String].lastIndexOf(int,int)"
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:64,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:64,1"
      Dst: "[java.lang.StringBuilder].insert(int,char)"
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:68,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:68,1"
      Dst: "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:71,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeShortBE(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:77,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:77,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].encode(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.http.HttpMethod].asciiName()"
    functionSourceFile: "io.netty.handler.codec.http.HttpMethod"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionDepth: 0
    returnType: "io.netty.util.AsciiString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].copy(io.netty.util.AsciiString,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1346
    functionLinenumberEnd: 1349
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.AsciiString"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].copy(io.netty.util.AsciiString,int,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.util.AsciiString].length()"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1347,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.buffer.ByteBufUtil:1347,1"
      Dst: "[io.netty.buffer.ByteBufUtil].copy(io.netty.util.AsciiString,int,io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].copy(io.netty.util.AsciiString,int,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1378
    functionLinenumberEnd: 1386
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.util.AsciiString"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].array()"
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    functionUses: 1
    ICount: 28
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:1379"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1384"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "length()"
        - "append(int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1383"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
        - "writeBytes(byte[],int,int)"
        - "checkNotNull(java.lang.Object,java.lang.String)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1379,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.buffer.ByteBufUtil:1379,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1380,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.ByteBufUtil:1380,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil:1380,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1381,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.buffer.ByteBufUtil:1381,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.ByteBufUtil:1381,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil:1384,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil:1384,1"
      Dst: "[io.netty.util.AsciiString].array()"
    - Src: "io.netty.buffer.ByteBufUtil:1384,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.buffer.ByteBufUtil:1384,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].writeMediumBE(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 689
    functionLinenumberEnd: 692
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.SwappedByteBuf].order()"
    - "[io.netty.buffer.EmptyByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeMedium(int)"
    - "[io.netty.buffer.ByteBufUtil].swapMedium(int)"
    - "[io.netty.buffer.ByteBuf].order()"
    - "[io.netty.buffer.ByteBuf].writeMedium(int)"
    functionUses: 2
    ICount: 10
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:690"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:691"
        BranchSideFuncs:
        - "swapMedium(int)"
        - "writeMedium(int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:690"
        BranchSideFuncs:
        - "swapMedium(int)"
        - "writeMedium(int)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:690,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    - Src: "io.netty.buffer.ByteBufUtil:690,1"
      Dst: "[io.netty.buffer.ByteBuf].writeMedium(int)"
    - Src: "io.netty.buffer.ByteBufUtil:691,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].swapMedium(int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 645
    functionLinenumberEnd: 651
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:647"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:650"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:649"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].writeShortBE(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 671
    functionLinenumberEnd: 674
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.SwappedByteBuf].order()"
    - "[io.netty.buffer.EmptyByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    - "[io.netty.buffer.ByteBuf].order()"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    functionUses: 10
    ICount: 12
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:672"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:673"
        BranchSideFuncs:
        - "writeShort(int)"
        - "swapShort(short)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:672"
        BranchSideFuncs:
        - "writeShort(int)"
        - "swapShort(short)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:672,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    - Src: "io.netty.buffer.ByteBufUtil:672,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.buffer.ByteBufUtil:673,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 638
    functionLinenumberEnd: 640
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Short].reverseBytes(short)"
    functionUses: 13
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:639,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpRequestEncoder].encodeInitialLine(io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpRequestEncoder"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpRequestEncoder].encodeInitialLine(io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpRequest)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpRequestEncoder:28,1"
      Dst: "[io.netty.handler.codec.http.HttpRequestEncoder].encodeInitialLine(io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpRequest)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlProcessingInstruction"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlProcessingInstruction:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlProcessingInstruction].data()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlProcessingInstruction"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlProcessingInstruction].target()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlProcessingInstruction"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlProcessingInstruction].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlProcessingInstruction"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 9
    ICount: 31
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.xml.XmlProcessingInstruction:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:44"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:43"
        BranchSideFuncs:
        - "getClass()"
    - Branch String: "io.netty.handler.codec.xml.XmlProcessingInstruction:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:45"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:44"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlProcessingInstruction:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:47"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlProcessingInstruction:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:47"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlProcessingInstruction:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:53"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:52"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.xml.XmlProcessingInstruction:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:53"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:52"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.xml.XmlProcessingInstruction:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:53"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:52"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.xml.XmlProcessingInstruction:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:57"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:56"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlProcessingInstruction:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:57"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlProcessingInstruction:44,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.codec.xml.XmlProcessingInstruction:50,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.xml.XmlProcessingInstruction].hashCode()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlProcessingInstruction"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 5
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.xml.XmlProcessingInstruction:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:62"
        BranchSideFuncs:
        - "hashCode()"
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:61"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlProcessingInstruction:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:63"
        BranchSideFuncs:
        - "hashCode()"
      - BranchSide: "io.netty.handler.codec.xml.XmlProcessingInstruction:62"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlProcessingInstruction:62,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.xml.XmlProcessingInstruction].toString()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlProcessingInstruction"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 19
    ICount: 14
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlProcessingInstruction:69,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.xml.XmlProcessingInstruction:69,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlProcessingInstruction:69,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.xml.XmlProcessingInstruction:69,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpProxyConnectException].<init>(java.lang.String,io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpProxyConnectException"
    linkageType: ""
    functionLinenumber: 219
    functionLinenumberEnd: 223
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.proxy.ProxyConnectException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpProxyConnectException:220,1"
      Dst: "[io.netty.handler.proxy.ProxyConnectException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpProxyConnectException].headers()"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpProxyConnectException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].anyInterfaceSupportsIpV6()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 186
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.NetworkInterface].getNetworkInterfaces()"
    - "[jdk.internal.loader.URLClassPath$1].hasMoreElements()"
    - "[jdk.internal.loader.Loader$3].hasMoreElements()"
    - "[io.netty.handler.ssl.OpenSslSessionContext$1].hasMoreElements()"
    - "[jdk.internal.loader.BuiltinClassLoader$1].hasMoreElements()"
    - "[jdk.internal.loader.URLClassPath$2].hasMoreElements()"
    - "[java.util.StringTokenizer].hasMoreElements()"
    - "[jdk.internal.loader.URLClassPath$2].nextElement()"
    - "[jdk.internal.loader.BuiltinClassLoader$1].nextElement()"
    - "[jdk.internal.loader.Loader$3].nextElement()"
    - "[jdk.internal.loader.URLClassPath$1].nextElement()"
    - "[io.netty.handler.ssl.OpenSslSessionContext$1].nextElement()"
    - "[java.util.StringTokenizer].nextElement()"
    - "[java.net.NetworkInterface].getInetAddresses()"
    - "[java.net.Inet6Address].isAnyLocalAddress()"
    - "[java.net.Inet4Address].isAnyLocalAddress()"
    - "[java.net.InetAddress].isAnyLocalAddress()"
    - "[java.net.InetAddress].isLinkLocalAddress()"
    - "[java.net.Inet6Address].isLinkLocalAddress()"
    - "[java.net.Inet4Address].isLinkLocalAddress()"
    - "[java.net.InetAddress].isLoopbackAddress()"
    - "[java.net.Inet6Address].isLoopbackAddress()"
    - "[java.net.Inet4Address].isLoopbackAddress()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 26
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:170"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:184"
        BranchSideFuncs:
        - "getInetAddresses()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:183"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:173"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:180"
        BranchSideFuncs:
        - "isAnyLocalAddress()"
        - "nextElement()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:179"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:175"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:179"
        BranchSideFuncs:
        - "isLoopbackAddress()"
        - "isLinkLocalAddress()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:178"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:175"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:179"
        BranchSideFuncs:
        - "isLoopbackAddress()"
        - "isLinkLocalAddress()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:178"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:176"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:179"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:178"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:176"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:179"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:169,1"
      Dst: "[java.net.NetworkInterface].getNetworkInterfaces()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:170,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:171,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:172,1"
      Dst: "[java.net.NetworkInterface].getInetAddresses()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:175,1"
      Dst: "[java.net.InetAddress].isAnyLocalAddress()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:176,1"
      Dst: "[java.net.InetAddress].isLoopbackAddress()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:176,1"
      Dst: "[java.net.InetAddress].isLinkLocalAddress()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:182,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 6
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].getSearchDomainsHack()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 203
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[java.lang.Class].forName(java.lang.String)"
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.util.Collections].emptyList()"
    functionUses: 1
    ICount: 15
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:192"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:201"
        BranchSideFuncs:
        - "emptyList()"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:192,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:195,1"
      Dst: "[java.lang.Class].forName(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:196,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "io.netty.resolver.dns.DnsNameResolver:198,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.resolver.dns.DnsNameResolver:202,1"
      Dst: "[java.util.Collections].emptyList()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].<init>(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.DnsQueryLifecycleObserverFactory,long,io.netty.resolver.ResolvedAddressTypes,boolean,int,boolean,int,boolean,io.netty.resolver.HostsFileEntriesResolver,io.netty.resolver.dns.DnsServerAddressStreamProvider,java.lang.String[],int,boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 17
    argTypes:
    - "io.netty.channel.EventLoop"
    - "io.netty.channel.ChannelFactory"
    - "io.netty.resolver.dns.DnsCache"
    - "io.netty.resolver.dns.DnsCache"
    - "io.netty.resolver.dns.DnsQueryLifecycleObserverFactory"
    - "long"
    - "io.netty.resolver.ResolvedAddressTypes"
    - "boolean"
    - "int"
    - "boolean"
    - "int"
    - "boolean"
    - "io.netty.resolver.HostsFileEntriesResolver"
    - "io.netty.resolver.dns.DnsServerAddressStreamProvider"
    - "java.lang.String[]"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter].<init>(io.netty.resolver.dns.DnsCache)"
    - "[io.netty.resolver.dns.DnsNameResolver].<init>(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,io.netty.resolver.dns.DnsQueryLifecycleObserverFactory,long,io.netty.resolver.ResolvedAddressTypes,boolean,int,boolean,int,boolean,io.netty.resolver.HostsFileEntriesResolver,io.netty.resolver.dns.DnsServerAddressStreamProvider,java.lang.String[],int,boolean)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:317,1"
      Dst: "[io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter].<init>(io.netty.resolver.dns.DnsCache)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:317,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].<init>(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,io.netty.resolver.dns.DnsQueryLifecycleObserverFactory,long,io.netty.resolver.ResolvedAddressTypes,boolean,int,boolean,int,boolean,io.netty.resolver.HostsFileEntriesResolver,io.netty.resolver.dns.DnsServerAddressStreamProvider,java.lang.String[],int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].<init>(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,io.netty.resolver.dns.DnsQueryLifecycleObserverFactory,long,io.netty.resolver.ResolvedAddressTypes,boolean,int,boolean,int,boolean,io.netty.resolver.HostsFileEntriesResolver,io.netty.resolver.dns.DnsServerAddressStreamProvider,java.lang.String[],int,boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 17
    argTypes:
    - "io.netty.channel.EventLoop"
    - "io.netty.channel.ChannelFactory"
    - "io.netty.resolver.dns.DnsCache"
    - "io.netty.resolver.dns.AuthoritativeDnsServerCache"
    - "io.netty.resolver.dns.DnsQueryLifecycleObserverFactory"
    - "long"
    - "io.netty.resolver.ResolvedAddressTypes"
    - "boolean"
    - "int"
    - "boolean"
    - "int"
    - "boolean"
    - "io.netty.resolver.HostsFileEntriesResolver"
    - "io.netty.resolver.dns.DnsServerAddressStreamProvider"
    - "java.lang.String[]"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].<init>(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.DnsCnameCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,io.netty.resolver.dns.DnsQueryLifecycleObserverFactory,long,io.netty.resolver.ResolvedAddressTypes,boolean,int,boolean,int,boolean,io.netty.resolver.HostsFileEntriesResolver,io.netty.resolver.dns.DnsServerAddressStreamProvider,java.lang.String[],int,boolean,boolean)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:369,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].<init>(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.DnsCnameCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,io.netty.resolver.dns.DnsQueryLifecycleObserverFactory,long,io.netty.resolver.ResolvedAddressTypes,boolean,int,boolean,int,boolean,io.netty.resolver.HostsFileEntriesResolver,io.netty.resolver.dns.DnsServerAddressStreamProvider,java.lang.String[],int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].<init>(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.DnsCnameCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,io.netty.resolver.dns.DnsQueryLifecycleObserverFactory,long,io.netty.resolver.ResolvedAddressTypes,boolean,int,boolean,int,boolean,io.netty.resolver.HostsFileEntriesResolver,io.netty.resolver.dns.DnsServerAddressStreamProvider,java.lang.String[],int,boolean,boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 20
    argTypes:
    - "io.netty.channel.EventLoop"
    - "io.netty.channel.ChannelFactory"
    - "io.netty.channel.ChannelFactory"
    - "io.netty.resolver.dns.DnsCache"
    - "io.netty.resolver.dns.DnsCnameCache"
    - "io.netty.resolver.dns.AuthoritativeDnsServerCache"
    - "io.netty.resolver.dns.DnsQueryLifecycleObserverFactory"
    - "long"
    - "io.netty.resolver.ResolvedAddressTypes"
    - "boolean"
    - "int"
    - "boolean"
    - "int"
    - "boolean"
    - "io.netty.resolver.HostsFileEntriesResolver"
    - "io.netty.resolver.dns.DnsServerAddressStreamProvider"
    - "java.lang.String[]"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].<init>(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.DnsCnameCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,java.net.SocketAddress,io.netty.resolver.dns.DnsQueryLifecycleObserverFactory,long,io.netty.resolver.ResolvedAddressTypes,boolean,int,boolean,int,boolean,io.netty.resolver.HostsFileEntriesResolver,io.netty.resolver.dns.DnsServerAddressStreamProvider,java.lang.String[],int,boolean,boolean)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:396,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].<init>(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.DnsCnameCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,java.net.SocketAddress,io.netty.resolver.dns.DnsQueryLifecycleObserverFactory,long,io.netty.resolver.ResolvedAddressTypes,boolean,int,boolean,int,boolean,io.netty.resolver.HostsFileEntriesResolver,io.netty.resolver.dns.DnsServerAddressStreamProvider,java.lang.String[],int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].<init>(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.DnsCnameCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,java.net.SocketAddress,io.netty.resolver.dns.DnsQueryLifecycleObserverFactory,long,io.netty.resolver.ResolvedAddressTypes,boolean,int,boolean,int,boolean,io.netty.resolver.HostsFileEntriesResolver,io.netty.resolver.dns.DnsServerAddressStreamProvider,java.lang.String[],int,boolean,boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 424
    functionLinenumberEnd: 536
    functionDepth: 4
    returnType: "void"
    argCount: 21
    argTypes:
    - "io.netty.channel.EventLoop"
    - "io.netty.channel.ChannelFactory"
    - "io.netty.channel.ChannelFactory"
    - "io.netty.resolver.dns.DnsCache"
    - "io.netty.resolver.dns.DnsCnameCache"
    - "io.netty.resolver.dns.AuthoritativeDnsServerCache"
    - "java.net.SocketAddress"
    - "io.netty.resolver.dns.DnsQueryLifecycleObserverFactory"
    - "long"
    - "io.netty.resolver.ResolvedAddressTypes"
    - "boolean"
    - "int"
    - "boolean"
    - "int"
    - "boolean"
    - "io.netty.resolver.HostsFileEntriesResolver"
    - "io.netty.resolver.dns.DnsServerAddressStreamProvider"
    - "java.lang.String[]"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsQueryContextManager].<init>()"
    - "[io.netty.resolver.dns.DnsNameResolver$2].<init>(io.netty.resolver.dns.DnsNameResolver)"
    - "[io.netty.resolver.InetNameResolver].<init>(io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.resolver.dns.UnixResolverOptions].timeout()"
    - "[java.util.concurrent.TimeUnit].toMillis(long)"
    - "[io.netty.resolver.dns.UnixResolverOptions].attempts()"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.resolver.dns.BiDnsQueryLifecycleObserverFactory].<init>(io.netty.resolver.dns.DnsQueryLifecycleObserverFactory,io.netty.resolver.dns.DnsQueryLifecycleObserverFactory)"
    - "[io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory].<init>()"
    - "[java.util.TreeSet].clone()"
    - "[javax.crypto.MacSpi].clone()"
    - "[java.util.GregorianCalendar].clone()"
    - "[java.util.Hashtable].clone()"
    - "[java.util.Hashtable$Entry].clone()"
    - "[java.util.LinkedList].clone()"
    - "[java.lang.Thread].clone()"
    - "[java.util.IdentityHashMap].clone()"
    - "[java.util.Locale].clone()"
    - "[java.util.ArrayList].clone()"
    - "[java.util.concurrent.CopyOnWriteArrayList].clone()"
    - "[java.lang.Object].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[java.util.ArrayDeque].clone()"
    - "[java.util.jar.Manifest].clone()"
    - "[java.security.Signature].clone()"
    - "[java.util.zip.ZipEntry].clone()"
    - "[java.util.TimeZone].clone()"
    - "[java.util.AbstractMap].clone()"
    - "[java.text.NumberFormat].clone()"
    - "[java.util.EnumSet].clone()"
    - "[java.security.MessageDigest].clone()"
    - "[sun.security.x509.GeneralSubtrees].clone()"
    - "[java.lang.ref.Reference].clone()"
    - "[java.text.SimpleDateFormat].clone()"
    - "[java.util.BitSet].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[sun.util.calendar.CalendarDate].clone()"
    - "[java.text.Collator].clone()"
    - "[jaz.Zer].clone()"
    - "[sun.text.normalizer.UCharacterIterator].clone()"
    - "[java.security.MessageDigestSpi].clone()"
    - "[java.util.Vector].clone()"
    - "[sun.security.x509.NameConstraintsExtension].clone()"
    - "[java.util.jar.Attributes].clone()"
    - "[java.text.DateFormat].clone()"
    - "[java.util.HashMap].clone()"
    - "[java.text.BreakIterator].clone()"
    - "[java.text.MessageFormat].clone()"
    - "[javax.crypto.Mac].clone()"
    - "[java.util.Properties].clone()"
    - "[java.lang.invoke.MemberName].clone()"
    - "[java.util.Date].clone()"
    - "[java.security.SignatureSpi].clone()"
    - "[java.util.Calendar].clone()"
    - "[sun.security.util.BitArray].clone()"
    - "[java.text.Format].clone()"
    - "[java.util.TreeMap].clone()"
    - "[java.text.DecimalFormatSymbols].clone()"
    - "[java.util.HashSet].clone()"
    - "[java.net.HttpCookie].clone()"
    - "[java.text.DateFormatSymbols].clone()"
    - "[io.netty.resolver.dns.UnixResolverOptions].ndots()"
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.resolver.dns.DnsNameResolver].preferredAddressType(io.netty.resolver.ResolvedAddressTypes)"
    - "[io.netty.resolver.dns.NameServerComparator].<init>(java.lang.Class)"
    - "[io.netty.channel.socket.InternetProtocolFamily].addressType()"
    - "[io.netty.bootstrap.Bootstrap].<init>()"
    - "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - "[io.netty.bootstrap.AbstractBootstrap].group(io.netty.channel.EventLoopGroup)"
    - "[io.netty.bootstrap.AbstractBootstrap].channelFactory(io.netty.channel.ChannelFactory)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].newPromise()"
    - "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise)"
    - "[io.netty.resolver.dns.DnsNameResolver$3].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler)"
    - "[io.netty.bootstrap.AbstractBootstrap].handler(io.netty.channel.ChannelHandler)"
    - "[io.netty.bootstrap.AbstractBootstrap].option(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.bootstrap.AbstractBootstrap].register()"
    - "[io.netty.bootstrap.AbstractBootstrap].bind(java.net.SocketAddress)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.resolver.dns.DnsNameResolver$4].<init>(io.netty.resolver.dns.DnsNameResolver)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.CompleteChannelFuture].channel()"
    - "[io.netty.channel.DefaultChannelPromise].channel()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].channel()"
    - "[io.netty.channel.VoidChannelPromise].channel()"
    - "[io.netty.channel.FixedRecvByteBufAllocator].<init>(int)"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.embedded.EmbeddedChannel].config()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].config()"
    - "[io.netty.bootstrap.FailedChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.local.LocalServerChannel].config()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].config()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].config()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2StreamChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.resolver.dns.DnsNameResolver$5].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.DnsCnameCache,io.netty.resolver.dns.AuthoritativeDnsServerCache)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].closeFuture()"
    - "[io.netty.channel.AbstractChannel].closeFuture()"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelFuture].channel()"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.channel.ChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.Channel].closeFuture()"
    functionUses: 1
    ICount: 203
    EdgeCount: 180
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:426"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:427"
        BranchSideFuncs:
        - "timeout()"
        - "toMillis(long)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:429"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:428"
        BranchSideFuncs:
        - "attempts()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:427"
        BranchSideFuncs:
        - "timeout()"
        - "toMillis(long)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:431"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:429"
        BranchSideFuncs:
        - "attempts()"
        - "checkPositive(int,java.lang.String)"
        - "<init>(io.netty.resolver.dns.DnsQueryLifecycleObserverFactory,io.netty.resolver.dns.DnsQueryLifecycleObserverFactory)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:428"
        BranchSideFuncs:
        - "attempts()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:439"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:443"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:439"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:430"
        BranchSideFuncs:
        - "attempts()"
        - "checkPositive(int,java.lang.String)"
        - "<init>(io.netty.resolver.dns.DnsQueryLifecycleObserverFactory,io.netty.resolver.dns.DnsQueryLifecycleObserverFactory)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:445"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:444"
        BranchSideFuncs:
        - "ndots()"
        - "clone()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:443"
        BranchSideFuncs:
        - "clone()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:446"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:445"
        BranchSideFuncs:
        - "ndots()"
        - "ordinal()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:444"
        BranchSideFuncs:
        - "ndots()"
        - "clone()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:496"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:500"
        BranchSideFuncs:
        - "valueOf(boolean)"
        - "register()"
        - "option(io.netty.channel.ChannelOption,java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:499"
        BranchSideFuncs:
        - "bind(java.net.SocketAddress)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:502"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:514"
        BranchSideFuncs:
        - "cause()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:513"
        BranchSideFuncs:
        - "<init>(io.netty.resolver.dns.DnsNameResolver)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:504"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:513"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:512"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:505"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:508"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:507"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:508"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:511"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:510"
        BranchSideFuncs:
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:425,1"
      Dst: "[io.netty.resolver.InetNameResolver].<init>(io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:235,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContextManager].<init>()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:244,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$2].<init>(io.netty.resolver.dns.DnsNameResolver)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:428,1"
      Dst: "[io.netty.resolver.dns.UnixResolverOptions].timeout()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:428,1"
      Dst: "[java.util.concurrent.TimeUnit].toMillis(long)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:431,1"
      Dst: "[io.netty.resolver.dns.UnixResolverOptions].attempts()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:432,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:434,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:439,1"
      Dst: "[io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory].<init>()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:439,1"
      Dst: "[io.netty.resolver.dns.BiDnsQueryLifecycleObserverFactory].<init>(io.netty.resolver.dns.DnsQueryLifecycleObserverFactory,io.netty.resolver.dns.DnsQueryLifecycleObserverFactory)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:445,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:446,1"
      Dst: "[io.netty.resolver.dns.UnixResolverOptions].ndots()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:450,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:476,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:476,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:476,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:476,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:476,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:478,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].preferredAddressType(io.netty.resolver.ResolvedAddressTypes)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:480,1"
      Dst: "[io.netty.channel.socket.InternetProtocolFamily].addressType()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:480,1"
      Dst: "[io.netty.resolver.dns.NameServerComparator].<init>(java.lang.Class)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:482,1"
      Dst: "[io.netty.bootstrap.Bootstrap].<init>()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:483,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:483,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].group(io.netty.channel.EventLoopGroup)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:484,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].channelFactory(io.netty.channel.ChannelFactory)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:485,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:486,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:488,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$3].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:488,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].handler(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:497,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:497,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].option(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:498,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].register()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:500,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].bind(java.net.SocketAddress)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:502,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:503,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:511,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:514,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$4].<init>(io.netty.resolver.dns.DnsNameResolver)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:514,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:524,1"
      Dst: "[io.netty.channel.ChannelFuture].channel()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:525,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:525,1"
      Dst: "[io.netty.channel.FixedRecvByteBufAllocator].<init>(int)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:525,1"
      Dst: "[io.netty.channel.ChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:527,1"
      Dst: "[io.netty.channel.Channel].closeFuture()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:527,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$5].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.DnsCnameCache,io.netty.resolver.dns.AuthoritativeDnsServerCache)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 39
    CyclomaticComplexity: 13
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].preferredAddressType(io.netty.resolver.ResolvedAddressTypes)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 537
    functionLinenumberEnd: 547
    functionDepth: 0
    returnType: "io.netty.channel.socket.InternetProtocolFamily"
    argCount: 1
    argTypes:
    - "io.netty.resolver.ResolvedAddressTypes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 17
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:538,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:546,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:546,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:546,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:546,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:546,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].newRedirectServerAddress(java.net.InetAddress)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 551
    functionLinenumberEnd: 553
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:552,1"
      Dst: "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].dnsQueryLifecycleObserverFactory()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 555
    functionLinenumberEnd: 557
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsQueryLifecycleObserverFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].newRedirectDnsServerStream(java.lang.String,java.util.List<InetSocketAddress>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 571
    functionLinenumberEnd: 580
    functionDepth: 1
    returnType: "io.netty.resolver.dns.DnsServerAddressStream"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.List<InetSocketAddress>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].authoritativeDnsServerCache()"
    - "[io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter].get(java.lang.String)"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].get(java.lang.String)"
    - "[io.netty.resolver.dns.NoopAuthoritativeDnsServerCache].get(java.lang.String)"
    - "[io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache].get(java.lang.String)"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].size()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].size()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].size()"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].<init>(java.util.List,int)"
    - "[io.netty.resolver.dns.AuthoritativeDnsServerCache].get(java.lang.String)"
    - "[io.netty.resolver.dns.DnsServerAddressStream].size()"
    functionUses: 1
    ICount: 14
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:573"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:575"
        BranchSideFuncs:
        - "sort(java.util.List,java.util.Comparator)"
        - "<init>(java.util.List,int)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:573"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:578"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:572,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].authoritativeDnsServerCache()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:572,1"
      Dst: "[io.netty.resolver.dns.AuthoritativeDnsServerCache].get(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:573,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStream].size()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:576,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:577,1"
      Dst: "[io.netty.resolver.dns.SequentialDnsServerAddressStream].<init>(java.util.List,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].authoritativeDnsServerCache()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 599
    functionLinenumberEnd: 601
    functionDepth: 0
    returnType: "io.netty.resolver.dns.AuthoritativeDnsServerCache"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.SequentialDnsServerAddressStream].<init>(java.util.List,int)"
    functionSourceFile: "io.netty.resolver.dns.SequentialDnsServerAddressStream"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.SequentialDnsServerAddressStream:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].resolveCache()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 585
    functionLinenumberEnd: 587
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsCache"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].cnameCache()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 592
    functionLinenumberEnd: 594
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsCnameCache"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].queryTimeoutMillis()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 607
    functionLinenumberEnd: 609
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].resolvedAddressTypes()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.resolver.ResolvedAddressTypes"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].searchDomains()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 623
    functionLinenumberEnd: 625
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].ndots()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 627
    functionLinenumberEnd: 629
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].supportsAAAARecords()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 631
    functionLinenumberEnd: 633
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].supportsARecords()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 635
    functionLinenumberEnd: 637
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].isRecursionDesired()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 655
    functionLinenumberEnd: 657
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].maxQueriesPerResolve()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 663
    functionLinenumberEnd: 665
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].maxPayloadSize()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 670
    functionLinenumberEnd: 672
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].isOptResourceEnabled()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 678
    functionLinenumberEnd: 680
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].hostsFileEntriesResolver()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.resolver.HostsFileEntriesResolver"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].close()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 696
    functionLinenumberEnd: 701
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isOpen()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isOpen()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isOpen()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isOpen()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isOpen()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isOpen()"
    - "[io.netty.channel.local.LocalChannel].isOpen()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isOpen()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isOpen()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isOpen()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isOpen()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isOpen()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isOpen()"
    - "[io.netty.channel.rxtx.RxtxChannel].isOpen()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isOpen()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isOpen()"
    - "[io.netty.channel.nio.AbstractNioChannel].isOpen()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isOpen()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isOpen()"
    - "[io.netty.channel.local.LocalServerChannel].isOpen()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isOpen()"
    - "[io.netty.bootstrap.FailedChannel].isOpen()"
    - "[io.netty.channel.AbstractChannel].close()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].close()"
    - "[io.netty.channel.embedded.EmbeddedChannel].close()"
    - "[io.netty.channel.Channel].isOpen()"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 4
    ICount: 7
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:697"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:700"
        BranchSideFuncs:
        - "close()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:699"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:697,1"
      Dst: "[io.netty.channel.Channel].isOpen()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:698,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].executor()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 703
    functionLinenumberEnd: 705
    functionDepth: 0
    returnType: "io.netty.channel.EventLoop"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.SimpleNameResolver].executor()"
    functionUses: 18
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:704,1"
      Dst: "[io.netty.resolver.SimpleNameResolver].executor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].resolveHostsFileEntry(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 707
    functionLinenumberEnd: 713
    functionDepth: 2
    returnType: "java.net.InetAddress"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.DefaultHostsFileEntriesResolver].address(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
    - "[io.netty.resolver.dns.DnsNameResolver].isLocalWindowsHost(java.lang.String)"
    - "[io.netty.resolver.HostsFileEntriesResolver].address(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:708"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:711"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:710"
        BranchSideFuncs:
        - "isLocalWindowsHost(java.lang.String)"
        - "address(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:712"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:710"
        BranchSideFuncs:
        - "isLocalWindowsHost(java.lang.String)"
        - "address(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:712"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:710"
        BranchSideFuncs:
        - "isLocalWindowsHost(java.lang.String)"
        - "address(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:711,1"
      Dst: "[io.netty.resolver.HostsFileEntriesResolver].address(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:712,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].isLocalWindowsHost(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].isLocalWindowsHost(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 738
    functionLinenumberEnd: 742
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].isWindows()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:739"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:740"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:739"
        BranchSideFuncs:
        - "equalsIgnoreCase(java.lang.String)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:738"
        BranchSideFuncs:
        - "isWindows()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:740"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:-1"
        BranchSideFuncs:
        - "equalsIgnoreCase(java.lang.String)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:741"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:739,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isWindows()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:740,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].resolveHostsFileEntries(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 715
    functionLinenumberEnd: 729
    functionDepth: 4
    returnType: "java.util.List<InetAddress>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.DefaultHostsFileEntriesResolver].addresses(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
    - "[io.netty.resolver.DefaultHostsFileEntriesResolver].address(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[io.netty.resolver.dns.DnsNameResolver].isLocalWindowsHost(java.lang.String)"
    - "[io.netty.resolver.HostsFileEntriesResolver].address(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
    functionUses: 1
    ICount: 29
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:716"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:720"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:719"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:720"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:724"
        BranchSideFuncs:
        - "addresses(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:723"
        BranchSideFuncs:
        - "address(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:725"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:723"
        BranchSideFuncs:
        - "address(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:727"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:727"
        BranchSideFuncs:
        - "singletonList(java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:726"
        BranchSideFuncs:
        - "isLocalWindowsHost(java.lang.String)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:727"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:727"
        BranchSideFuncs:
        - "singletonList(java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:726"
        BranchSideFuncs:
        - "isLocalWindowsHost(java.lang.String)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:722,1"
      Dst: "[io.netty.resolver.DefaultHostsFileEntriesResolver].addresses(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:724,1"
      Dst: "[io.netty.resolver.HostsFileEntriesResolver].address(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:725,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:727,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].isLocalWindowsHost(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.resolver.DefaultHostsFileEntriesResolver].addresses(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
    functionSourceFile: "io.netty.resolver.DefaultHostsFileEntriesResolver"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 102
    functionDepth: 3
    returnType: "java.util.List<InetAddress>"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.resolver.ResolvedAddressTypes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.DefaultHostsFileEntriesResolver].normalize(java.lang.String)"
    - "[io.netty.resolver.DefaultHostsFileEntriesResolver].ensureHostsFileEntriesAreFresh()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap:io.netty.util.collection.CharCollections$EmptyMap:io.netty.util.collection.IntCollections$EmptyMap:io.netty.util.collection.LongCollections$EmptyMap:io.netty.util.collection.ShortCollections$EmptyMap:java.security.Provider:java.util.AbstractMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.LinkedHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.resolver.DefaultHostsFileEntriesResolver].allAddresses(java.util.List,java.util.List)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 2
    ICount: 51
    EdgeCount: 105
    BranchProfiles:
    - Branch String: "io.netty.resolver.DefaultHostsFileEntriesResolver:94"
      Branch Sides: []
    - Branch String: "io.netty.resolver.DefaultHostsFileEntriesResolver:98"
      Branch Sides: []
    Callsites:
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:84,1"
      Dst: "[io.netty.resolver.DefaultHostsFileEntriesResolver].normalize(java.lang.String)"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:85,1"
      Dst: "[io.netty.resolver.DefaultHostsFileEntriesResolver].ensureHostsFileEntriesAreFresh()"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:87,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:89,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:94,1"
      Dst: "[io.netty.resolver.DefaultHostsFileEntriesResolver].allAddresses(java.util.List,java.util.List)"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:101,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:101,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:101,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:101,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:101,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.DefaultHostsFileEntriesResolver].normalize(java.lang.String)"
    functionSourceFile: "io.netty.resolver.DefaultHostsFileEntriesResolver"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].toLowerCase(java.util.Locale)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:123,1"
      Dst: "[java.lang.String].toLowerCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.DefaultHostsFileEntriesResolver].ensureHostsFileEntriesAreFresh()"
    functionSourceFile: "io.netty.resolver.DefaultHostsFileEntriesResolver"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 120
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].get()"
    - "[java.lang.System].nanoTime()"
    - "[java.util.concurrent.atomic.AtomicLong].compareAndSet(long,long)"
    - "[io.netty.resolver.DefaultHostsFileEntriesResolver].parseEntries(io.netty.resolver.HostsFileEntriesProvider$Parser)"
    - "[io.netty.resolver.HostsFileEntriesProvider].ipv4Entries()"
    - "[io.netty.resolver.HostsFileEntriesProvider].ipv6Entries()"
    functionUses: 1
    ICount: 22
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.resolver.DefaultHostsFileEntriesResolver:107"
      Branch Sides:
      - BranchSide: "io.netty.resolver.DefaultHostsFileEntriesResolver:110"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.DefaultHostsFileEntriesResolver:109"
        BranchSideFuncs:
        - "nanoTime()"
        - "get()"
    - Branch String: "io.netty.resolver.DefaultHostsFileEntriesResolver:112"
      Branch Sides:
      - BranchSide: "io.netty.resolver.DefaultHostsFileEntriesResolver:119"
        BranchSideFuncs:
        - "compareAndSet(long,long)"
      - BranchSide: "io.netty.resolver.DefaultHostsFileEntriesResolver:118"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.DefaultHostsFileEntriesResolver:113"
      Branch Sides:
      - BranchSide: "io.netty.resolver.DefaultHostsFileEntriesResolver:119"
        BranchSideFuncs:
        - "parseEntries(io.netty.resolver.HostsFileEntriesProvider$Parser)"
        - "ipv4Entries()"
        - "ipv6Entries()"
      - BranchSide: "io.netty.resolver.DefaultHostsFileEntriesResolver:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:110,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].get()"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:111,1"
      Dst: "[java.lang.System].nanoTime()"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:113,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].compareAndSet(long,long)"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:114,1"
      Dst: "[io.netty.resolver.DefaultHostsFileEntriesResolver].parseEntries(io.netty.resolver.HostsFileEntriesProvider$Parser)"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:115,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider].ipv4Entries()"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:116,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider].ipv6Entries()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.DefaultHostsFileEntriesResolver].parseEntries(io.netty.resolver.HostsFileEntriesProvider$Parser)"
    functionSourceFile: "io.netty.resolver.DefaultHostsFileEntriesResolver"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 147
    functionDepth: 1
    returnType: "io.netty.resolver.HostsFileEntriesProvider"
    argCount: 1
    argTypes:
    - "io.netty.resolver.HostsFileEntriesProvider$Parser"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].isWindows()"
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parseSilently(java.nio.charset.Charset[])"
    - "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parseSilently()"
    - "[io.netty.resolver.HostsFileEntriesProvider$Parser].parseSilently(java.nio.charset.Charset[])"
    - "[io.netty.resolver.HostsFileEntriesProvider$Parser].parseSilently()"
    functionUses: 2
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.resolver.DefaultHostsFileEntriesResolver:140"
      Branch Sides:
      - BranchSide: "io.netty.resolver.DefaultHostsFileEntriesResolver:145"
        BranchSideFuncs:
        - "parseSilently()"
    Callsites:
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:140,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isWindows()"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:144,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:144,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$Parser].parseSilently(java.nio.charset.Charset[])"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:146,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$Parser].parseSilently()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileEntriesProvider].ipv4Entries()"
    functionSourceFile: "io.netty.resolver.HostsFileEntriesProvider"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileEntriesProvider].ipv6Entries()"
    functionSourceFile: "io.netty.resolver.HostsFileEntriesProvider"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].resolve(java.lang.String,java.lang.Iterable<DnsRecord>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future<InetAddress>"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Iterable<DnsRecord>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[io.netty.resolver.dns.DnsNameResolver].resolve(java.lang.String,java.lang.Iterable,io.netty.util.concurrent.Promise)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:753,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:753,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:753,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].resolve(java.lang.String,java.lang.Iterable,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].resolve(java.lang.String,java.lang.Iterable<DnsRecord>,io.netty.util.concurrent.Promise<InetAddress>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future<InetAddress>"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Iterable<DnsRecord>"
    - "io.netty.util.concurrent.Promise<InetAddress>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.resolver.dns.DnsNameResolver].toArray(java.lang.Iterable,boolean)"
    - "[io.netty.resolver.dns.DnsNameResolver].doResolve(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache)"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:767,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:768,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].toArray(java.lang.Iterable,boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:770,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].doResolve(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:773,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].resolveAll(java.lang.String,java.lang.Iterable<DnsRecord>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future<List<InetAddress>>"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Iterable<DnsRecord>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[io.netty.resolver.dns.DnsNameResolver].resolveAll(java.lang.String,java.lang.Iterable,io.netty.util.concurrent.Promise)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:786,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:786,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:786,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].resolveAll(java.lang.String,java.lang.Iterable,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].resolveAll(java.lang.String,java.lang.Iterable<DnsRecord>,io.netty.util.concurrent.Promise<List<InetAddress>>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future<List<InetAddress>>"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Iterable<DnsRecord>"
    - "io.netty.util.concurrent.Promise<List<InetAddress>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.resolver.dns.DnsNameResolver].toArray(java.lang.Iterable,boolean)"
    - "[io.netty.resolver.dns.DnsNameResolver].doResolveAll(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache)"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:800,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:801,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].toArray(java.lang.Iterable,boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:803,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].doResolveAll(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:806,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].doResolve(java.lang.String,io.netty.util.concurrent.Promise<InetAddress>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 811
    functionLinenumberEnd: 814
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.util.concurrent.Promise<InetAddress>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].doResolve(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:812,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].doResolve(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].resolveAll(io.netty.handler.codec.dns.DnsQuestion)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future<List<DnsRecord>>"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsQuestion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[io.netty.resolver.dns.DnsNameResolver].resolveAll(io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:827,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:827,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:827,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].resolveAll(io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].resolveAll(io.netty.handler.codec.dns.DnsQuestion,java.lang.Iterable<DnsRecord>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future<List<DnsRecord>>"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsQuestion"
    - "java.lang.Iterable<DnsRecord>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[io.netty.resolver.dns.DnsNameResolver].resolveAll(io.netty.handler.codec.dns.DnsQuestion,java.lang.Iterable,io.netty.util.concurrent.Promise)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:843,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:843,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:843,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].resolveAll(io.netty.handler.codec.dns.DnsQuestion,java.lang.Iterable,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].resolveAll(io.netty.handler.codec.dns.DnsQuestion,java.lang.Iterable<DnsRecord>,io.netty.util.concurrent.Promise<List<DnsRecord>>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future<List<DnsRecord>>"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.dns.DnsQuestion"
    - "java.lang.Iterable<DnsRecord>"
    - "io.netty.util.concurrent.Promise<List<DnsRecord>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].toArray(java.lang.Iterable,boolean)"
    - "[io.netty.resolver.dns.DnsNameResolver].resolveAll(io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:861,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].toArray(java.lang.Iterable,boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:862,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].resolveAll(io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].resolveAll(io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise<List<DnsRecord>>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.util.concurrent.Future<List<DnsRecord>>"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.dns.DnsQuestion"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.util.concurrent.Promise<List<DnsRecord>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.dns.DnsRecord].type()"
    - "[io.netty.handler.codec.dns.DnsRecord].name()"
    - "[io.netty.resolver.dns.DnsNameResolver].resolveHostsFileEntries(java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.net.InetAddress].getAddress()"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].<init>(java.lang.String,io.netty.handler.codec.dns.DnsRecordType,long,io.netty.buffer.ByteBuf)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    - "[io.netty.resolver.dns.DnsNameResolver].trySuccess(io.netty.util.concurrent.Promise,java.lang.Object)"
    - "[io.netty.resolver.dns.DnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.DnsRecordResolveContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int)"
    - "[io.netty.resolver.dns.DnsResolveContext].resolve(io.netty.util.concurrent.Promise)"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:874"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:875"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:874"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:874"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:905"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:904"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:876"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:905"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:904"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:878"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:896"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:895"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:880"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:884"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:883"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:881"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:889"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:888"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:884"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:889"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:888"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:885"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:889"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:888"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:889"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:893"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:896"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:905"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:904"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:867,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:871,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].type()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:872,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].name()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:875,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].resolveHostsFileEntries(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:877,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:878,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:878,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:878,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:882,1"
      Dst: "[java.net.InetAddress].getAddress()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:882,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.resolver.dns.DnsNameResolver:892,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsRawRecord].<init>(java.lang.String,io.netty.handler.codec.dns.DnsRecordType,long,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:892,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:896,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:897,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].trySuccess(io.netty.util.concurrent.Promise,java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:905,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:906,1"
      Dst: "[io.netty.resolver.dns.DnsRecordResolveContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:907,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext].resolve(io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsRawRecord].<init>(java.lang.String,io.netty.handler.codec.dns.DnsRecordType,long,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsRawRecord"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecordType"
    - "long"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].<init>(java.lang.String,io.netty.handler.codec.dns.DnsRecordType,int,long,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsRawRecord:40,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsRawRecord].<init>(java.lang.String,io.netty.handler.codec.dns.DnsRecordType,int,long,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsRawRecord].<init>(java.lang.String,io.netty.handler.codec.dns.DnsRecordType,int,long,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsRawRecord"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecordType"
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].<init>(java.lang.String,io.netty.handler.codec.dns.DnsRecordType,int,long)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsRawRecord:61,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsRecord].<init>(java.lang.String,io.netty.handler.codec.dns.DnsRecordType,int,long)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRawRecord:62,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsRecordResolveContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int)"
    functionSourceFile: "io.netty.resolver.dns.DnsRecordResolveContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    - "io.netty.util.concurrent.Promise"
    - "io.netty.handler.codec.dns.DnsQuestion"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.resolver.dns.DnsServerAddressStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsRecord].name()"
    - "[io.netty.handler.codec.dns.DnsRecord].dnsClass()"
    - "[io.netty.handler.codec.dns.DnsRecord].type()"
    - "[io.netty.resolver.dns.DnsRecordResolveContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int,io.netty.handler.codec.dns.DnsRecordType[],io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsRecordResolveContext:32,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].name()"
    - Src: "io.netty.resolver.dns.DnsRecordResolveContext:32,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].dnsClass()"
    - Src: "io.netty.resolver.dns.DnsRecordResolveContext:33,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].type()"
    - Src: "io.netty.resolver.dns.DnsRecordResolveContext:32,1"
      Dst: "[io.netty.resolver.dns.DnsRecordResolveContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int,io.netty.handler.codec.dns.DnsRecordType[],io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsRecordResolveContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int,io.netty.handler.codec.dns.DnsRecordType[],io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int)"
    functionSourceFile: "io.netty.resolver.dns.DnsRecordResolveContext"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    - "io.netty.util.concurrent.Promise"
    - "java.lang.String"
    - "int"
    - "io.netty.handler.codec.dns.DnsRecordType[]"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.resolver.dns.DnsServerAddressStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsResolveContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int,io.netty.handler.codec.dns.DnsRecordType[],io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsRecordResolveContext:42,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int,io.netty.handler.codec.dns.DnsRecordType[],io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].toArray(java.lang.Iterable<DnsRecord>,boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.dns.DnsRecord[]"
    argCount: 2
    argTypes:
    - "java.lang.Iterable<DnsRecord>"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.resolver.dns.DnsNameResolver].validateAdditional(io.netty.handler.codec.dns.DnsRecord,boolean)"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:913"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:921"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:920"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:915"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:918"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:917"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:922"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:925"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:924"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:930"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:926"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:912,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:915,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:915,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:915,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:916,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].validateAdditional(io.netty.handler.codec.dns.DnsRecord,boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:918,1"
      Dst: "[java.util.Collection].size()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:918,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    - Src: "io.netty.resolver.dns.DnsNameResolver:925,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:929,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:932,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:932,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].validateAdditional(io.netty.handler.codec.dns.DnsRecord,boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecord"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:937"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:940"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:939"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:937"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:940"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:939"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:936,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:938,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:938,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:938,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:938,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:938,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].loopbackAddress()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 942
    functionLinenumberEnd: 944
    functionDepth: 1
    returnType: "java.net.InetAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.InternetProtocolFamily].localhost()"
    - "[io.netty.resolver.dns.DnsNameResolver].preferredAddressType()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:943,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].preferredAddressType()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:943,1"
      Dst: "[io.netty.channel.socket.InternetProtocolFamily].localhost()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.InternetProtocolFamily].localhost()"
    functionSourceFile: "io.netty.channel.socket.InternetProtocolFamily"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "java.net.InetAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 17
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.InternetProtocolFamily:59,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.channel.socket.InternetProtocolFamily:65,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.socket.InternetProtocolFamily:65,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.socket.InternetProtocolFamily:65,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.channel.socket.InternetProtocolFamily:65,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.socket.InternetProtocolFamily:65,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].doResolve(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise<InetAddress>,io.netty.resolver.dns.DnsCache)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 953
    functionLinenumberEnd: 978
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.util.concurrent.Promise<InetAddress>"
    - "io.netty.resolver.dns.DnsCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    - "[io.netty.resolver.dns.DnsNameResolver].loopbackAddress()"
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setSuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.NetUtil].createInetAddressFromIpAddressString(java.lang.String)"
    - "[io.netty.resolver.dns.DnsNameResolver].hostname(java.lang.String)"
    - "[io.netty.resolver.dns.DnsNameResolver].resolveHostsFileEntry(java.lang.String)"
    - "[io.netty.resolver.dns.DnsNameResolver].doResolveCached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache)"
    - "[io.netty.resolver.dns.DnsNameResolver].doResolveUncached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
    - "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    functionUses: 1
    ICount: 24
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:954"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:955"
        BranchSideFuncs:
        - "loopbackAddress()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:954"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:958"
        BranchSideFuncs:
        - "createInetAddressFromIpAddressString(java.lang.String)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:960"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:965"
        BranchSideFuncs:
        - "hostname(java.lang.String)"
        - "resolveHostsFileEntry(java.lang.String)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:969"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:974"
        BranchSideFuncs:
        - "setSuccess(java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:973"
        BranchSideFuncs:
        - "doResolveCached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:974"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:977"
        BranchSideFuncs:
        - "doResolveUncached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:976"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:954,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:956,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].loopbackAddress()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:956,1"
      Dst: "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:959,1"
      Dst: "[io.netty.util.NetUtil].createInetAddressFromIpAddressString(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:966,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].hostname(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:968,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].resolveHostsFileEntry(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:974,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].doResolveCached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:975,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].doResolveUncached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.NetUtil].createInetAddressFromIpAddressString(java.lang.String)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 296
    functionLinenumberEnd: 343
    functionDepth: 7
    returnType: "java.net.InetAddress"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - "[io.netty.util.NetUtil].validIpV4ToBytes(java.lang.String)"
    - "[java.net.InetAddress].getByAddress(byte[])"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    - "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.lang.String].substring(int)"
    - "[io.netty.util.NetUtil].getIPv6ByName(java.lang.CharSequence,boolean)"
    - "[java.net.Inet6Address].getByAddress(java.lang.String,byte[],int)"
    functionUses: 2
    ICount: 45
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:297"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:307"
        BranchSideFuncs:
        - "validIpV4ToBytes(java.lang.String)"
      - BranchSide: "io.netty.util.NetUtil:306"
        BranchSideFuncs:
        - "isValidIpV6Address(java.lang.String)"
    - Branch String: "io.netty.util.NetUtil:307"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:342"
        BranchSideFuncs:
        - "charAt(int)"
      - BranchSide: "io.netty.util.NetUtil:341"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:308"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:312"
        BranchSideFuncs:
        - "length()"
      - BranchSide: "io.netty.util.NetUtil:311"
        BranchSideFuncs:
        - "indexOf(int)"
    - Branch String: "io.netty.util.NetUtil:313"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:331"
        BranchSideFuncs:
        - "substring(int)"
        - "indexOf(int)"
        - "length()"
        - "substring(int,int)"
        - "<init>(java.lang.Throwable)"
        - "getIPv6ByName(java.lang.CharSequence,boolean)"
        - "getByAddress(java.lang.String,byte[],int)"
        - "isValidIpV6Address(java.lang.String)"
        - "parseInt(java.lang.String)"
        - "getByAddress(byte[])"
        - "charAt(int)"
      - BranchSide: "io.netty.util.NetUtil:330"
        BranchSideFuncs:
        - "getIPv6ByName(java.lang.CharSequence,boolean)"
    - Branch String: "io.netty.util.NetUtil:318"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:322"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:321"
        BranchSideFuncs:
        - "getByAddress(java.lang.String,byte[],int)"
    - Branch String: "io.netty.util.NetUtil:332"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:336"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:335"
        BranchSideFuncs:
        - "getByAddress(byte[])"
    Callsites:
    - Src: "io.netty.util.NetUtil:297,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - Src: "io.netty.util.NetUtil:298,1"
      Dst: "[io.netty.util.NetUtil].validIpV4ToBytes(java.lang.String)"
    - Src: "io.netty.util.NetUtil:300,1"
      Dst: "[java.net.InetAddress].getByAddress(byte[])"
    - Src: "io.netty.util.NetUtil:303,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    - Src: "io.netty.util.NetUtil:307,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - Src: "io.netty.util.NetUtil:308,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.util.NetUtil:309,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.util.NetUtil:309,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.util.NetUtil:312,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "io.netty.util.NetUtil:315,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "io.netty.util.NetUtil:315,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "io.netty.util.NetUtil:317,1"
      Dst: "[io.netty.util.NetUtil].getIPv6ByName(java.lang.CharSequence,boolean)"
    - Src: "io.netty.util.NetUtil:322,1"
      Dst: "[java.net.Inet6Address].getByAddress(java.lang.String,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 617
    functionLinenumberEnd: 619
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    functionUses: 12
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtil:618,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.util.NetUtil:618,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String,int,int)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 628
    functionLinenumberEnd: 636
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int,int)"
    - "[io.netty.util.NetUtil].isValidIpV4Word(java.lang.CharSequence,int,int)"
    functionUses: 2
    ICount: 30
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:631"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:631"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:632"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:632"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:633"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs:
        - "indexOf(int,int)"
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:633"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs:
        - "indexOf(int,int)"
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:634"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs:
        - "isValidIpV4Word(java.lang.CharSequence,int,int)"
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:634"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs:
        - "isValidIpV4Word(java.lang.CharSequence,int,int)"
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:635"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.NetUtil:632,1"
      Dst: "[java.lang.String].indexOf(int,int)"
    - Src: "io.netty.util.NetUtil:632,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Word(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 10
  - functionName: "[io.netty.util.NetUtil].isValidIpV4Word(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 560
    functionLinenumberEnd: 573
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.NetUtil].isValidNumericChar(char)"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 12
    ICount: 50
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:563"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:564"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:563"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:563"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:564"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:563"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:563"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:566"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:565"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:566"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:567"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:568"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:568"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:568"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:568"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:566"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:568"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:568"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:568"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:566"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:568"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:568"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:572"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:572"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:571"
        BranchSideFuncs:
        - "isValidNumericChar(char)"
        - "charAt(int)"
    - Branch String: "io.netty.util.NetUtil:572"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.NetUtil:563,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.NetUtil:572,1"
      Dst: "[io.netty.util.NetUtil].isValidNumericChar(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 24
    CyclomaticComplexity: 16
  - functionName: "[io.netty.util.NetUtil].isValidNumericChar(char)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 579
    functionLinenumberEnd: 581
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:580"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:579"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:580"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:579"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.NetUtil].validIpV4ToBytes(java.lang.String)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 365
    functionLinenumberEnd: 371
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int,int)"
    - "[io.netty.util.NetUtil].ipv4WordToByte(java.lang.String,int,int)"
    - "[java.lang.String].length()"
    functionUses: 2
    ICount: 20
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtil:367,1"
      Dst: "[java.lang.String].indexOf(int,int)"
    - Src: "io.netty.util.NetUtil:367,1"
      Dst: "[io.netty.util.NetUtil].ipv4WordToByte(java.lang.String,int,int)"
    - Src: "io.netty.util.NetUtil:370,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].ipv4WordToByte(java.lang.String,int,int)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 349
    functionLinenumberEnd: 361
    functionDepth: 1
    returnType: "byte"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.NetUtil].decimalDigit(java.lang.String,int)"
    functionUses: 4
    ICount: 20
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:352"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:355"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:354"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:357"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:360"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:359"
        BranchSideFuncs:
        - "decimalDigit(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.util.NetUtil:350,1"
      Dst: "[io.netty.util.NetUtil].decimalDigit(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].decimalDigit(java.lang.String,int)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 345
    functionLinenumberEnd: 347
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].charAt(int)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtil:346,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 436
    functionLinenumberEnd: 438
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.CharSequence)"
    functionUses: 12
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtil:437,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 440
    functionLinenumberEnd: 556
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.NetUtil].isValidHexChar(char)"
    - "[io.netty.util.NetUtil].isValidIPv4MappedChar(char)"
    - "[io.netty.util.AsciiString].indexOf(java.lang.CharSequence,char,int)"
    - "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.CharSequence,int,int)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 1
    ICount: 128
    EdgeCount: 91
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:442"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:448"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:447"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:449"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:451"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:454"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:463"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:471"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:465"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:468"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:467"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:478"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:551"
        BranchSideFuncs:
        - "isValidHexChar(char)"
      - BranchSide: "io.netty.util.NetUtil:550"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:480"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:481"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:485"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:484"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:490"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:493"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:492"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:493"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:499"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:498"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:494"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:497"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:496"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:507"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:506"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:507"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:510"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:507"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:506"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:507"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:510"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:507"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:516"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:519"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:528"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:527"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:520"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:523"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:522"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:521"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:523"
        BranchSideFuncs:
        - "isValidIPv4MappedChar(char)"
      - BranchSide: "io.netty.util.NetUtil:522"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:522"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:528"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:536"
        BranchSideFuncs:
        - "charAt(int)"
      - BranchSide: "io.netty.util.NetUtil:535"
        BranchSideFuncs:
        - "indexOf(java.lang.CharSequence,char,int)"
    - Branch String: "io.netty.util.NetUtil:530"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:530"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:537"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:540"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:539"
        BranchSideFuncs:
        - "isValidIpV4Address(java.lang.CharSequence,int,int)"
    - Branch String: "io.netty.util.NetUtil:551"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:555"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:554"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:552"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:551"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:552"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:551"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:555"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:554"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:555"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:555"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:554"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:555"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.NetUtil:441,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.NetUtil:448,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.NetUtil:480,1"
      Dst: "[io.netty.util.NetUtil].isValidHexChar(char)"
    - Src: "io.netty.util.NetUtil:519,1"
      Dst: "[io.netty.util.NetUtil].isValidIPv4MappedChar(char)"
    - Src: "io.netty.util.NetUtil:536,1"
      Dst: "[io.netty.util.AsciiString].indexOf(java.lang.CharSequence,char,int)"
    - Src: "io.netty.util.NetUtil:540,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 63
    CyclomaticComplexity: 23
  - functionName: "[io.netty.util.NetUtil].isValidHexChar(char)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 575
    functionLinenumberEnd: 577
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:576"
      Branch Sides: []
    - Branch String: "io.netty.util.NetUtil:576"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:575"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:576"
      Branch Sides: []
    - Branch String: "io.netty.util.NetUtil:576"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:575"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:576"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:575"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:576"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:575"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 7
  - functionName: "[io.netty.util.NetUtil].isValidIPv4MappedChar(char)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 583
    functionLinenumberEnd: 585
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:584"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:583"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:584"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:583"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.AsciiString].indexOf(java.lang.CharSequence,char,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1800
    functionLinenumberEnd: 1816
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "char"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int,int)"
    - "[io.netty.util.AsciiString].indexOf(char,int)"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 9
    ICount: 33
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1801"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1803"
        BranchSideFuncs:
        - "indexOf(int,int)"
      - BranchSide: "io.netty.util.AsciiString:1802"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1803"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1806"
        BranchSideFuncs:
        - "indexOf(char,int)"
      - BranchSide: "io.netty.util.AsciiString:1805"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1806"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1809"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1808"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.util.AsciiString:1810"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1809"
        BranchSideFuncs:
        - "charAt(int)"
      - BranchSide: "io.netty.util.AsciiString:1808"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.util.AsciiString:1810"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:null"
        BranchSideFuncs:
        - "charAt(int)"
    - Branch String: "io.netty.util.AsciiString:1811"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1809"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1808"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "io.netty.util.AsciiString:1802,1"
      Dst: "[java.lang.String].indexOf(int,int)"
    - Src: "io.netty.util.AsciiString:1804,1"
      Dst: "[io.netty.util.AsciiString].indexOf(char,int)"
    - Src: "io.netty.util.AsciiString:1809,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:1811,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.AsciiString].indexOf(char,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 718
    functionLinenumberEnd: 735
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "char"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].c2b0(char)"
    functionUses: 4
    ICount: 28
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:719"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:723"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:722"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:723"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:727"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:726"
        BranchSideFuncs:
        - "c2b0(char)"
    - Branch String: "io.netty.util.AsciiString:729"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:730"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:727"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:726"
        BranchSideFuncs:
        - "c2b0(char)"
    Callsites:
    - Src: "io.netty.util.AsciiString:727,1"
      Dst: "[io.netty.util.AsciiString].c2b0(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.AsciiString].c2b0(char)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1860
    functionLinenumberEnd: 1862
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 621
    functionLinenumberEnd: 625
    functionDepth: 4
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String,int,int)"
    - "[io.netty.util.NetUtil].isValidIpV4Address(io.netty.util.AsciiString,int,int)"
    - "[io.netty.util.NetUtil].isValidIpV4Address0(java.lang.CharSequence,int,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:622"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:622"
        BranchSideFuncs:
        - "isValidIpV4Address(io.netty.util.AsciiString,int,int)"
      - BranchSide: "io.netty.util.NetUtil:621"
        BranchSideFuncs:
        - "isValidIpV4Address(java.lang.String,int,int)"
    - Branch String: "io.netty.util.NetUtil:622"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:624"
        BranchSideFuncs:
        - "isValidIpV4Address(io.netty.util.AsciiString,int,int)"
      - BranchSide: "io.netty.util.NetUtil:623"
        BranchSideFuncs:
        - "isValidIpV4Address0(java.lang.CharSequence,int,int)"
    Callsites:
    - Src: "io.netty.util.NetUtil:622,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String,int,int)"
    - Src: "io.netty.util.NetUtil:623,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Address(io.netty.util.AsciiString,int,int)"
    - Src: "io.netty.util.NetUtil:624,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Address0(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.NetUtil].isValidIpV4Address(io.netty.util.AsciiString,int,int)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 639
    functionLinenumberEnd: 647
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "io.netty.util.AsciiString"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].indexOf(char,int)"
    - "[io.netty.util.NetUtil].isValidIpV4Word(java.lang.CharSequence,int,int)"
    functionUses: 1
    ICount: 30
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:642"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:642"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:643"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:643"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:644"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs:
        - "indexOf(char,int)"
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:644"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs:
        - "indexOf(char,int)"
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:645"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs:
        - "isValidIpV4Word(java.lang.CharSequence,int,int)"
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:645"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs:
        - "isValidIpV4Word(java.lang.CharSequence,int,int)"
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:646"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.NetUtil:643,1"
      Dst: "[io.netty.util.AsciiString].indexOf(char,int)"
    - Src: "io.netty.util.NetUtil:643,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Word(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 10
  - functionName: "[io.netty.util.NetUtil].isValidIpV4Address0(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 650
    functionLinenumberEnd: 658
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].indexOf(java.lang.CharSequence,char,int)"
    - "[io.netty.util.NetUtil].isValidIpV4Word(java.lang.CharSequence,int,int)"
    functionUses: 1
    ICount: 30
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:653"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:653"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:654"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:654"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:655"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs:
        - "indexOf(java.lang.CharSequence,char,int)"
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:655"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs:
        - "indexOf(java.lang.CharSequence,char,int)"
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:656"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs:
        - "isValidIpV4Word(java.lang.CharSequence,int,int)"
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:656"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs:
        - "isValidIpV4Word(java.lang.CharSequence,int,int)"
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:657"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.NetUtil:654,1"
      Dst: "[io.netty.util.AsciiString].indexOf(java.lang.CharSequence,char,int)"
    - Src: "io.netty.util.NetUtil:654,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Word(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 10
  - functionName: "[io.netty.util.NetUtil].getIPv6ByName(java.lang.CharSequence,boolean)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 712
    functionLinenumberEnd: 876
    functionDepth: 3
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.NetUtil].isValidIPv4Mapped(byte[],int,int,int)"
    - "[io.netty.util.NetUtil].isValidNumericChar(char)"
    - "[io.netty.util.NetUtil].isValidHexChar(char)"
    - "[io.netty.util.internal.StringUtil].decodeHexNibble(char)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.util.Arrays].fill(byte[],int,int,byte)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 3
    ICount: 277
    EdgeCount: 138
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:724"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:811"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:810"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:729"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:731"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:729"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:731"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:729"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:731"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:729"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:733"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:736"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:743"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:742"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:746"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:756"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:755"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:746"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:756"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:755"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:748"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:749"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:748"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:748"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:751"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:750"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:748"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:751"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:750"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:762"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:777"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:762"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:777"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:762"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:777"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:762"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:759"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:762"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:777"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:762"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:777"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:762"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:777"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:762"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:779"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:762"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:777"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:762"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:759"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:770"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:777"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:762"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:759"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:772"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:778"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:777"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:773"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:778"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:777"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:774"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:778"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:777"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:762"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:759"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:775"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:778"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:777"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:776"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:778"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:777"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:762"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:779"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:777"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:780"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:779"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:786"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:789"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:788"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:794"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:795"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:794"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:794"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:797"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:796"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:794"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:797"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:796"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:797"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:799"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:798"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:799"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:806"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:805"
        BranchSideFuncs:
        - "decodeHexNibble(char)"
    - Branch String: "io.netty.util.NetUtil:811"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:811"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:810"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:813"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:836"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:835"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:814"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:813"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:814"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:816"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:814"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:816"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:814"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:818"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:819"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:825"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:824"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:819"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:823"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:822"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:819"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:819"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:818"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:819"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:819"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:818"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:820"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:824"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:819"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:823"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:822"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:819"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:823"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:822"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:822"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:825"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:824"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:822"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:825"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:824"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:831"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:834"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:833"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:837"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:835"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:837"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:847"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:837"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:847"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:837"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:835"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:837"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:847"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:840"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:847"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:840"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:847"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:837"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:835"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:837"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:847"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:837"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:835"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:837"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:835"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:843"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:848"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:847"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:837"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:835"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:844"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:847"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:837"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:847"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:837"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:835"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:846"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:848"
        BranchSideFuncs:
        - "charAt(int)"
      - BranchSide: "io.netty.util.NetUtil:847"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:837"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:849"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:847"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:850"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:849"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:850"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:856"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:855"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:850"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:856"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:855"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:860"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:868"
        BranchSideFuncs:
        - "arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
        - "fill(byte[],int,int,byte)"
      - BranchSide: "io.netty.util.NetUtil:867"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:868"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:874"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.NetUtil:714,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.NetUtil:725,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.NetUtil:770,1"
      Dst: "[io.netty.util.NetUtil].isValidIPv4Mapped(byte[],int,int,int)"
    - Src: "io.netty.util.NetUtil:772,1"
      Dst: "[io.netty.util.NetUtil].isValidNumericChar(char)"
    - Src: "io.netty.util.NetUtil:794,1"
      Dst: "[io.netty.util.NetUtil].isValidHexChar(char)"
    - Src: "io.netty.util.NetUtil:806,1"
      Dst: "[io.netty.util.internal.StringUtil].decodeHexNibble(char)"
    - Src: "io.netty.util.NetUtil:863,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "io.netty.util.NetUtil:865,1"
      Dst: "[java.util.Arrays].fill(byte[],int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 103
    CyclomaticComplexity: 69
  - functionName: "[io.netty.util.NetUtil].isValidIPv4Mapped(byte[],int,int,int)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 594
    functionLinenumberEnd: 599
    functionDepth: 2
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.NetUtil].isValidIPv4MappedSeparators(byte,byte,boolean)"
    - "[io.netty.util.internal.PlatformDependent].isZero(byte[],int,int)"
    functionUses: 1
    ICount: 29
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:595"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:596"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs:
        - "isValidIPv4MappedSeparators(byte,byte,boolean)"
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:596"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs:
        - "isValidIPv4MappedSeparators(byte,byte,boolean)"
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:596"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:595"
        BranchSideFuncs:
        - "isValidIPv4MappedSeparators(byte,byte,boolean)"
      - BranchSide: "io.netty.util.NetUtil:594"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:596"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs:
        - "isValidIPv4MappedSeparators(byte,byte,boolean)"
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:597"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs:
        - "isZero(byte[],int,int)"
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:598"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.NetUtil:597,1"
      Dst: "[io.netty.util.NetUtil].isValidIPv4MappedSeparators(byte,byte,boolean)"
    - Src: "io.netty.util.NetUtil:598,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isZero(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 8
  - functionName: "[io.netty.util.NetUtil].isValidIPv4MappedSeparators(byte,byte,boolean)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 590
    functionLinenumberEnd: 592
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "byte"
    - "byte"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:591"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:591"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:590"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:591"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:591"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.internal.PlatformDependent].isZero(byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 887
    functionLinenumberEnd: 891
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.util.internal.PlatformDependent0].unalignedAccess()"
    - "[io.netty.util.internal.PlatformDependent].isZeroSafe(byte[],int,int)"
    - "[io.netty.util.internal.PlatformDependent0].isZero(byte[],int,int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:888"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:889"
        BranchSideFuncs:
        - "isZeroSafe(byte[],int,int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:888"
        BranchSideFuncs:
        - "isZeroSafe(byte[],int,int)"
    - Branch String: "io.netty.util.internal.PlatformDependent:888"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:890"
        BranchSideFuncs:
        - "isZeroSafe(byte[],int,int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:889"
        BranchSideFuncs:
        - "isZero(byte[],int,int)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:888,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.util.internal.PlatformDependent:888,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].unalignedAccess()"
    - Src: "io.netty.util.internal.PlatformDependent:889,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isZeroSafe(byte[],int,int)"
    - Src: "io.netty.util.internal.PlatformDependent:890,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].isZero(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent].isZeroSafe(byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1424
    functionLinenumberEnd: 1432
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1426"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1431"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1430"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1427"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1426"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1425"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent0].isZero(byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 826
    functionLinenumberEnd: 850
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getLong(java.lang.Object,long)"
    - "[sun.misc.Unsafe].getInt(java.lang.Object,long)"
    - "[sun.misc.Unsafe].getChar(java.lang.Object,long)"
    functionUses: 1
    ICount: 51
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:827"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:830"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent0:829"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:833"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:839"
        BranchSideFuncs:
        - "getLong(java.lang.Object,long)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:838"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:834"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:830"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent0:829"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:839"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:845"
        BranchSideFuncs:
        - "getInt(java.lang.Object,long)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:844"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:841"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:845"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent0:844"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:845"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:849"
        BranchSideFuncs:
        - "getChar(java.lang.Object,long)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:848"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:846"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:846"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:845"
        BranchSideFuncs:
        - "getChar(java.lang.Object,long)"
    - Branch String: "io.netty.util.internal.PlatformDependent0:846"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:849"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:848"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:834,1"
      Dst: "[sun.misc.Unsafe].getLong(java.lang.Object,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:841,1"
      Dst: "[sun.misc.Unsafe].getInt(java.lang.Object,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:846,1"
      Dst: "[sun.misc.Unsafe].getChar(java.lang.Object,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 7
  - functionName: "[io.netty.util.internal.StringUtil].decodeHexNibble(char)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 255
    functionLinenumberEnd: 260
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    functionUses: 5
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:256"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:258"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:256"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:258"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:256,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].hostname(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 1161
    functionLinenumberEnd: 1168
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.IDN].toASCII(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].endsWith(java.lang.CharSequence,char)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 13
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1164"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1167"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1166"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1164"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1167"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1166"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1162,1"
      Dst: "[java.net.IDN].toASCII(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1164,1"
      Dst: "[io.netty.util.internal.StringUtil].endsWith(java.lang.CharSequence,char)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1165,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1165,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1165,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.StringUtil].endsWith(java.lang.CharSequence,char)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 629
    functionLinenumberEnd: 632
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.CharBuffer].length()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 5
    ICount: 13
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:631"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:629"
        BranchSideFuncs:
        - "length()"
        - "charAt(int)"
    - Branch String: "io.netty.util.internal.StringUtil:631"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:629"
        BranchSideFuncs:
        - "length()"
        - "charAt(int)"
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:630,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.internal.StringUtil:631,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].doResolveCached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise<InetAddress>,io.netty.resolver.dns.DnsCache)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 982
    functionLinenumberEnd: 1005
    functionDepth: 1
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.util.concurrent.Promise<InetAddress>"
    - "io.netty.resolver.dns.DnsCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.NoopDnsCache].get(java.lang.String,io.netty.handler.codec.dns.DnsRecord[])"
    - "[io.netty.resolver.dns.DefaultDnsCache].get(java.lang.String,io.netty.handler.codec.dns.DnsRecord[])"
    - "[jaz.Zer].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].cause()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].cause()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].address()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].address()"
    - "[io.netty.channel.socket.InternetProtocolFamily].addressType()"
    - "[java.lang.Class].isInstance(java.lang.Object)"
    - "[io.netty.resolver.dns.DnsNameResolver].trySuccess(io.netty.util.concurrent.Promise,java.lang.Object)"
    - "[io.netty.resolver.dns.DnsNameResolver].tryFailure(io.netty.util.concurrent.Promise,java.lang.Throwable)"
    - "[io.netty.resolver.dns.DnsCache].get(java.lang.String,io.netty.handler.codec.dns.DnsRecord[])"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    - "[io.netty.resolver.dns.DnsCacheEntry].cause()"
    - "[java.util.List].size()"
    - "[io.netty.resolver.dns.DnsCacheEntry].address()"
    functionUses: 1
    ICount: 38
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:984"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:985"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:984"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:984"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:988"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:987"
        BranchSideFuncs:
        - "cause()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:989"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1003"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1002"
        BranchSideFuncs:
        - "tryFailure(io.netty.util.concurrent.Promise,java.lang.Throwable)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:992"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1001"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1000"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:993"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:990"
        BranchSideFuncs:
        - "addressType()"
        - "get(int)"
        - "isInstance(java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:989"
        BranchSideFuncs:
        - "size()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:995"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:992"
        BranchSideFuncs:
        - "address()"
        - "trySuccess(io.netty.util.concurrent.Promise,java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:991"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:983,1"
      Dst: "[io.netty.resolver.dns.DnsCache].get(java.lang.String,io.netty.handler.codec.dns.DnsRecord[])"
    - Src: "io.netty.resolver.dns.DnsNameResolver:984,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:988,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:988,1"
      Dst: "[io.netty.resolver.dns.DnsCacheEntry].cause()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:990,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:995,1"
      Dst: "[io.netty.channel.socket.InternetProtocolFamily].addressType()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:995,1"
      Dst: "[io.netty.resolver.dns.DnsCacheEntry].address()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:995,1"
      Dst: "[java.lang.Class].isInstance(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:996,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].trySuccess(io.netty.util.concurrent.Promise,java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1003,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].tryFailure(io.netty.util.concurrent.Promise,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 4
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].tryFailure(io.netty.util.concurrent.Promise<?>,java.lang.Throwable)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 1019
    functionLinenumberEnd: 1027
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.Promise<?>"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 7
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1020"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1025"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1020,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1024,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].doResolveUncached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise<InetAddress>,io.netty.resolver.dns.DnsCache,boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 1031
    functionLinenumberEnd: 1045
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.util.concurrent.Promise<InetAddress>"
    - "io.netty.resolver.dns.DnsCache"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].newPromise()"
    - "[io.netty.resolver.dns.DnsNameResolver].doResolveAllUncached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
    - "[io.netty.resolver.dns.DnsNameResolver$6].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 13
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1032,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1032,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1033,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].doResolveAllUncached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1034,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$6].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1034,1"
      Dst: "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$6].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$6"
    linkageType: ""
    functionLinenumber: 1033
    functionLinenumberEnd: 1035
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$6:1034,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].doResolveAll(java.lang.String,io.netty.util.concurrent.Promise<List<InetAddress>>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 1047
    functionLinenumberEnd: 1050
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.util.concurrent.Promise<List<InetAddress>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].doResolveAll(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1048,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].doResolveAll(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].doResolveAll(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise<List<InetAddress>>,io.netty.resolver.dns.DnsCache)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 1058
    functionLinenumberEnd: 1084
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.util.concurrent.Promise<List<InetAddress>>"
    - "io.netty.resolver.dns.DnsCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    - "[io.netty.resolver.dns.DnsNameResolver].loopbackAddress()"
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setSuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[io.netty.util.NetUtil].createInetAddressFromIpAddressString(java.lang.String)"
    - "[io.netty.resolver.dns.DnsNameResolver].hostname(java.lang.String)"
    - "[io.netty.resolver.dns.DnsNameResolver].resolveHostsFileEntries(java.lang.String)"
    - "[io.netty.resolver.dns.DnsNameResolver].doResolveAllCached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,io.netty.channel.socket.InternetProtocolFamily[])"
    - "[io.netty.resolver.dns.DnsNameResolver].doResolveAllUncached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
    - "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    functionUses: 1
    ICount: 28
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1059"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1060"
        BranchSideFuncs:
        - "loopbackAddress()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1059"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1063"
        BranchSideFuncs:
        - "createInetAddressFromIpAddressString(java.lang.String)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1065"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1070"
        BranchSideFuncs:
        - "hostname(java.lang.String)"
        - "resolveHostsFileEntries(java.lang.String)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1074"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1079"
        BranchSideFuncs:
        - "setSuccess(java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1078"
        BranchSideFuncs:
        - "doResolveAllCached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,io.netty.channel.socket.InternetProtocolFamily[])"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1079"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1083"
        BranchSideFuncs:
        - "doResolveAllUncached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1082"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1059,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1061,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].loopbackAddress()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1061,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1061,1"
      Dst: "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1064,1"
      Dst: "[io.netty.util.NetUtil].createInetAddressFromIpAddressString(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1071,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].hostname(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1073,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].resolveHostsFileEntries(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1079,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].doResolveAllCached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,io.netty.channel.socket.InternetProtocolFamily[])"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1080,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].doResolveAllUncached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].doResolveAllUncached(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise<?>,io.netty.util.concurrent.Promise<List<InetAddress>>,io.netty.resolver.dns.DnsCache,boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 1128
    functionLinenumberEnd: 1143
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.util.concurrent.Promise<?>"
    - "io.netty.util.concurrent.Promise<List<InetAddress>>"
    - "io.netty.resolver.dns.DnsCache"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.resolver.dns.DnsNameResolver].doResolveAllUncached0(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
    - "[io.netty.resolver.dns.DnsNameResolver$7].<init>(io.netty.resolver.dns.DnsNameResolver,java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 2
    ICount: 16
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1130"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1134"
        BranchSideFuncs:
        - "doResolveAllUncached0(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1133"
        BranchSideFuncs:
        - "run()"
        - "execute(java.lang.Runnable)"
        - "<init>(io.netty.resolver.dns.DnsNameResolver,java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1129,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1130,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1131,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].doResolveAllUncached0(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1134,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$7].<init>(io.netty.resolver.dns.DnsNameResolver,java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1134,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$7].<init>(io.netty.resolver.dns.DnsNameResolver,java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$7"
    linkageType: ""
    functionLinenumber: 1133
    functionLinenumberEnd: 1135
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.util.concurrent.Promise"
    - "io.netty.util.concurrent.Promise"
    - "io.netty.resolver.dns.DnsCache"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$7:1134,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].doResolveAllUncached0(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise<?>,io.netty.util.concurrent.Promise<List<InetAddress>>,io.netty.resolver.dns.DnsCache,boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 1150
    functionLinenumberEnd: 1160
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.util.concurrent.Promise<?>"
    - "io.netty.util.concurrent.Promise<List<InetAddress>>"
    - "io.netty.resolver.dns.DnsCache"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.resolver.dns.UniSequentialDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.MultiDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.DefaultDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.DnsAddressResolveContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,boolean)"
    - "[io.netty.resolver.dns.DnsResolveContext].resolve(io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.resolver.dns.DnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    functionUses: 2
    ICount: 23
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1151"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1153"
        BranchSideFuncs:
        - "nameServerAddressStream(java.lang.String)"
        - "<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,boolean)"
        - "resolve(io.netty.util.concurrent.Promise)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1151"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1153"
        BranchSideFuncs:
        - "nameServerAddressStream(java.lang.String)"
        - "<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,boolean)"
        - "resolve(io.netty.util.concurrent.Promise)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1151,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1151,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1151,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1154,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1155,1"
      Dst: "[io.netty.resolver.dns.DnsAddressResolveContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1158,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext].resolve(io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].query(io.netty.handler.codec.dns.DnsQuestion)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.util.concurrent.Future<AddressedEnvelope<DnsResponse,InetSocketAddress>>"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsQuestion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].nextNameServerAddress()"
    - "[io.netty.resolver.dns.DnsNameResolver].query(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1174,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].nextNameServerAddress()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1174,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].query(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].nextNameServerAddress()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].get()"
    - "[io.netty.resolver.dns.DnsServerAddressStream].next()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1194,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].get()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1194,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStream].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].query(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.util.concurrent.Future<AddressedEnvelope<DnsResponse,InetSocketAddress>>"
    argCount: 2
    argTypes:
    - "java.net.InetSocketAddress"
    - "io.netty.handler.codec.dns.DnsQuestion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[io.netty.resolver.dns.DnsNameResolver].query0(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],boolean,io.netty.channel.ChannelPromise,io.netty.util.concurrent.Promise)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1203,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1204,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1204,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1203,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].query0(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],boolean,io.netty.channel.ChannelPromise,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].query0(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],boolean,io.netty.channel.ChannelPromise,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 1265
    functionLinenumberEnd: 1276
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future"
    argCount: 6
    argTypes:
    - "java.net.InetSocketAddress"
    - "io.netty.handler.codec.dns.DnsQuestion"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isVoid()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].isVoid()"
    - "[io.netty.channel.VoidChannelPromise].isVoid()"
    - "[io.netty.channel.DefaultChannelPromise].isVoid()"
    - "[io.netty.resolver.dns.DnsNameResolver].cast(io.netty.util.concurrent.Promise)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.resolver.dns.DatagramDnsQueryContext].<init>(io.netty.resolver.dns.DnsNameResolver,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
    - "[io.netty.resolver.dns.DnsQueryContext].query(boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelFuture].isVoid()"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 24
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1266"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1269"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "query(boolean,io.netty.channel.ChannelPromise)"
        - "cast(io.netty.util.concurrent.Promise)"
        - "isVoid()"
        - "checkNotNull(java.lang.Object,java.lang.String)"
        - "<init>(io.netty.resolver.dns.DnsNameResolver,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1268"
        BranchSideFuncs:
        - "query(boolean,io.netty.channel.ChannelPromise)"
        - "checkNotNull(java.lang.Object,java.lang.String)"
        - "<init>(io.netty.resolver.dns.DnsNameResolver,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1266"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1269"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "query(boolean,io.netty.channel.ChannelPromise)"
        - "cast(io.netty.util.concurrent.Promise)"
        - "isVoid()"
        - "checkNotNull(java.lang.Object,java.lang.String)"
        - "<init>(io.netty.resolver.dns.DnsNameResolver,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1268"
        BranchSideFuncs:
        - "query(boolean,io.netty.channel.ChannelPromise)"
        - "checkNotNull(java.lang.Object,java.lang.String)"
        - "<init>(io.netty.resolver.dns.DnsNameResolver,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1266,1"
      Dst: "[io.netty.channel.ChannelFuture].isVoid()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1266,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1269,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1268,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].cast(io.netty.util.concurrent.Promise)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1271,1"
      Dst: "[io.netty.resolver.dns.DatagramDnsQueryContext].<init>(io.netty.resolver.dns.DnsNameResolver,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1272,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].query(boolean,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1275,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DatagramDnsQueryContext].<init>(io.netty.resolver.dns.DnsNameResolver,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.resolver.dns.DatagramDnsQueryContext"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    - "java.net.InetSocketAddress"
    - "io.netty.handler.codec.dns.DnsQuestion"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsQueryContext].<init>(io.netty.resolver.dns.DnsNameResolver,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DatagramDnsQueryContext:34,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].<init>(io.netty.resolver.dns.DnsNameResolver,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].query(io.netty.handler.codec.dns.DnsQuestion,java.lang.Iterable<DnsRecord>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.util.concurrent.Future<AddressedEnvelope<DnsResponse,InetSocketAddress>>"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsQuestion"
    - "java.lang.Iterable<DnsRecord>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].nextNameServerAddress()"
    - "[io.netty.resolver.dns.DnsNameResolver].query(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,java.lang.Iterable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1182,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].nextNameServerAddress()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1182,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].query(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].query(io.netty.handler.codec.dns.DnsQuestion,io.netty.util.concurrent.Promise<AddressedEnvelope<?\
      \ extends DnsResponse,InetSocketAddress>>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.util.concurrent.Future<AddressedEnvelope<DnsResponse,InetSocketAddress>>"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsQuestion"
    - "io.netty.util.concurrent.Promise<AddressedEnvelope<? extends DnsResponse,InetSocketAddress>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].nextNameServerAddress()"
    - "[java.util.Collections].emptyList()"
    - "[io.netty.resolver.dns.DnsNameResolver].query(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,java.lang.Iterable,io.netty.util.concurrent.Promise)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1190,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].nextNameServerAddress()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1190,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1190,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].query(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,java.lang.Iterable,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].query(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,java.lang.Iterable<DnsRecord>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.util.concurrent.Future<AddressedEnvelope<DnsResponse,InetSocketAddress>>"
    argCount: 3
    argTypes:
    - "java.net.InetSocketAddress"
    - "io.netty.handler.codec.dns.DnsQuestion"
    - "java.lang.Iterable<DnsRecord>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].toArray(java.lang.Iterable,boolean)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[io.netty.resolver.dns.DnsNameResolver].query0(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],boolean,io.netty.channel.ChannelPromise,io.netty.util.concurrent.Promise)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1213,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].toArray(java.lang.Iterable,boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1213,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1214,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1214,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1213,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].query0(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],boolean,io.netty.channel.ChannelPromise,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].query(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.util.concurrent.Promise<AddressedEnvelope<?\
      \ extends DnsResponse,InetSocketAddress>>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.util.concurrent.Future<AddressedEnvelope<DnsResponse,InetSocketAddress>>"
    argCount: 3
    argTypes:
    - "java.net.InetSocketAddress"
    - "io.netty.handler.codec.dns.DnsQuestion"
    - "io.netty.util.concurrent.Promise<AddressedEnvelope<? extends DnsResponse,InetSocketAddress>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.resolver.dns.DnsNameResolver].query0(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],boolean,io.netty.channel.ChannelPromise,io.netty.util.concurrent.Promise)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1224,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1224,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].query0(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],boolean,io.netty.channel.ChannelPromise,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].query(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,java.lang.Iterable<DnsRecord>,io.netty.util.concurrent.Promise<AddressedEnvelope<?\
      \ extends DnsResponse,InetSocketAddress>>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.util.concurrent.Future<AddressedEnvelope<DnsResponse,InetSocketAddress>>"
    argCount: 4
    argTypes:
    - "java.net.InetSocketAddress"
    - "io.netty.handler.codec.dns.DnsQuestion"
    - "java.lang.Iterable<DnsRecord>"
    - "io.netty.util.concurrent.Promise<AddressedEnvelope<? extends DnsResponse,InetSocketAddress>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].toArray(java.lang.Iterable,boolean)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.resolver.dns.DnsNameResolver].query0(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],boolean,io.netty.channel.ChannelPromise,io.netty.util.concurrent.Promise)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1235,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].toArray(java.lang.Iterable,boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1235,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.resolver.dns.DnsNameResolver:1235,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].query0(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],boolean,io.netty.channel.ChannelPromise,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].isTransportOrTimeoutError(java.lang.Throwable)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 1243
    functionLinenumberEnd: 1245
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.InvocationTargetException].getCause()"
    - "[java.io.UncheckedIOException].getCause()"
    - "[java.lang.Throwable].getCause()"
    - "[java.lang.ClassNotFoundException].getCause()"
    - "[java.lang.reflect.UndeclaredThrowableException].getCause()"
    - "[java.security.PrivilegedActionException].getCause()"
    - "[java.lang.ExceptionInInitializerError].getCause()"
    - "[javax.naming.NamingException].getCause()"
    functionUses: 1
    ICount: 9
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1244"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1243"
        BranchSideFuncs:
        - "getCause()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1244"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1243"
        BranchSideFuncs:
        - "getCause()"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1244,1"
      Dst: "[java.lang.Throwable].getCause()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].isTimeoutError(java.lang.Throwable)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].getCause()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1253"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1252"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver:1253"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver:1252"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1253,1"
      Dst: "[java.lang.Throwable].getCause()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].flushQueries()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 1256
    functionLinenumberEnd: 1259
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].flush()"
    - "[io.netty.channel.AbstractChannel].flush()"
    - "[io.netty.channel.Channel].flush()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1257,1"
      Dst: "[io.netty.channel.Channel].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].cast(io.netty.util.concurrent.Promise<?>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 1280
    functionLinenumberEnd: 1282
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Promise<AddressedEnvelope<DnsResponse,InetSocketAddress>>"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Promise<?>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].newNameServerAddressStream(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 1284
    functionLinenumberEnd: 1286
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsServerAddressStream"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.UniSequentialDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.MultiDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.DefaultDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.DnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    functionUses: 2
    ICount: 5
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:1285,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].access$000()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].access$100(io.netty.resolver.dns.DnsNameResolver)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsServerAddressStreamProvider"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].access$200()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].access$300()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].access$400(io.netty.util.concurrent.Promise,java.lang.Throwable)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.Promise"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].tryFailure(io.netty.util.concurrent.Promise,java.lang.Throwable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:91,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].tryFailure(io.netty.util.concurrent.Promise,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].access$500(io.netty.resolver.dns.DnsNameResolver,java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.util.concurrent.Promise"
    - "io.netty.util.concurrent.Promise"
    - "io.netty.resolver.dns.DnsCache"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].doResolveAllUncached0(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver:91,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].doResolveAllUncached0(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].access$600(io.netty.resolver.dns.DnsNameResolver)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFactory"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].access$700()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.TcpDnsQueryEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver].access$800()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsRecord[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].<init>(io.netty.handler.codec.compression.Bzip2BitWriter,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockCompressor"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 104
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.compression.Bzip2BitWriter"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2BlockCompressor$1].<init>(io.netty.handler.codec.compression.Bzip2BlockCompressor)"
    - "[io.netty.handler.codec.compression.Crc32].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 24
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:96,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:38,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockCompressor$1].<init>(io.netty.handler.codec.compression.Bzip2BlockCompressor)"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:53,1"
      Dst: "[io.netty.handler.codec.compression.Crc32].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].writeSymbolMap(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockCompressor"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 135
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBoolean(io.netty.buffer.ByteBuf,boolean)"
    functionUses: 1
    ICount: 43
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockCompressor:114"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:123"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:122"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockCompressor:115"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:109"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:108"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockCompressor:116"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:115"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:114"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockCompressor:123"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:126"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockCompressor:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:134"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:133"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockCompressor:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:127"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:126"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockCompressor:129"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:126"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:124,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBoolean(io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBoolean(io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BitWriter"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    functionUses: 6
    ICount: 22
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitWriter:64"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:63"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:62"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitWriter:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:71"
        BranchSideFuncs:
        - "writeInt(int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:67,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].writeRun(int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockCompressor"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 177
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Crc32].updateCRC(int,int)"
    functionUses: 3
    ICount: 46
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:146,1"
      Dst: "[io.netty.handler.codec.compression.Crc32].updateCRC(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].write(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockCompressor"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 207
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2BlockCompressor].writeRun(int,int)"
    functionUses: 1
    ICount: 26
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockCompressor:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:187"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:186"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockCompressor:190"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:193"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:192"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockCompressor:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:198"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockCompressor:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:203"
        BranchSideFuncs:
        - "writeRun(int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:202"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:195,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].writeRun(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].write(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockCompressor"
    linkageType: ""
    functionLinenumber: 217
    functionLinenumberEnd: 220
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.DuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ReadOnlyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionUses: 1
    ICount: 12
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockCompressor:219"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:217"
        BranchSideFuncs:
        - "forEachByte(int,int,io.netty.util.ByteProcessor)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:218,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].close(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockCompressor"
    linkageType: ""
    functionLinenumber: 226
    functionLinenumberEnd: 263
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2BlockCompressor].writeRun(int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].<init>(byte[],int[],int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].bwt()"
    - "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBits(io.netty.buffer.ByteBuf,int,long)"
    - "[io.netty.handler.codec.compression.Crc32].getCRC()"
    - "[io.netty.handler.codec.compression.Bzip2BitWriter].writeInt(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBoolean(io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.handler.codec.compression.Bzip2BlockCompressor].writeSymbolMap(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].<init>(int[],int,boolean[])"
    - "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].encode()"
    - "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].mtfBlock()"
    - "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].mtfLength()"
    - "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].mtfAlphabetSize()"
    - "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].<init>(io.netty.handler.codec.compression.Bzip2BitWriter,char[],int,int,int[])"
    - "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].mtfSymbolFrequencies()"
    - "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].encode(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 43
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockCompressor:227"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:232"
        BranchSideFuncs:
        - "writeRun(int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:231"
        BranchSideFuncs:
        - "writeBoolean(io.netty.buffer.ByteBuf,boolean)"
        - "writeBits(io.netty.buffer.ByteBuf,int,long)"
        - "getCRC()"
        - "writeSymbolMap(io.netty.buffer.ByteBuf)"
        - "encode()"
        - "writeInt(io.netty.buffer.ByteBuf,int)"
        - "encode(io.netty.buffer.ByteBuf)"
        - "<init>(byte[],int[],int)"
        - "mtfSymbolFrequencies()"
        - "mtfLength()"
        - "mtfAlphabetSize()"
        - "<init>(io.netty.handler.codec.compression.Bzip2BitWriter,char[],int,int,int[])"
        - "<init>(int[],int,boolean[])"
        - "bwt()"
        - "mtfBlock()"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:228,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].writeRun(int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:235,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].<init>(byte[],int[],int)"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:236,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].bwt()"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:241,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBits(io.netty.buffer.ByteBuf,int,long)"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:243,1"
      Dst: "[io.netty.handler.codec.compression.Crc32].getCRC()"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:243,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitWriter].writeInt(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:244,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBoolean(io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:248,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].writeSymbolMap(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:251,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].<init>(int[],int,boolean[])"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:253,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].encode()"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:257,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].mtfBlock()"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:258,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].mtfLength()"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:259,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].mtfAlphabetSize()"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:260,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].mtfSymbolFrequencies()"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:260,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].<init>(io.netty.handler.codec.compression.Bzip2BitWriter,char[],int,int,int[])"
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:261,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].encode(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].<init>(byte[],int[],int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:53,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].bwt()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 2095
    functionLinenumberEnd: 2116
    functionDepth: 7
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].sortTypeBstar(int[],int[])"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].constructBWT(int[],int[])"
    functionUses: 1
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2103"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2106"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2105"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2106"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2111"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2110"
        BranchSideFuncs:
        - "sortTypeBstar(int[],int[])"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2115"
        BranchSideFuncs:
        - "constructBWT(int[],int[])"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2114"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:2111,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].sortTypeBstar(int[],int[])"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:2113,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].constructBWT(int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].sortTypeBstar(int[],int[])"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 1863
    functionLinenumberEnd: 2019
    functionDepth: 6
    returnType: "int"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].BUCKET_BSTAR(int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].BUCKET_B(int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].subStringSort(int,int,int,int[],int,int,int,boolean,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trSort(int,int,int)"
    functionUses: 1
    ICount: 423
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1875"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1883"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1882"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1876"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1875"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1874"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1877"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1883"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1882"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1887"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1888"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1887"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1887"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1899"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1898"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1887"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1899"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1898"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1888"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1894"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1898"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1894"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1898"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1899"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1910"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1902"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1903"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1902"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1902"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1901"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1900"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1903"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1899"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1898"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1906"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1898"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1906"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1898"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1912"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1919"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1918"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1913"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1915"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1919"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1930"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1929"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1923"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1918"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1932"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1937"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1946"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1952"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1951"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1952"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1961"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1960"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1953"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1955"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1953"
        BranchSideFuncs:
        - "subStringSort(int,int,int,int[],int,int,int,boolean,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1952"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1956"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1955"
        BranchSideFuncs:
        - "subStringSort(int,int,int,int[],int,int,int,boolean,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1961"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1979"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1978"
        BranchSideFuncs:
        - "trSort(int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1962"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1972"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1971"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1966"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1967"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1966"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1966"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1965"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1964"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1968"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1972"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1971"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1975"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1973"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1982"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1983"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1982"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1982"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1990"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1989"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1982"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1990"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1989"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1983"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1986"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1990"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1989"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1986"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1990"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1989"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1990"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2002"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2001"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1991"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1994"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1993"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1991"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1994"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1993"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1994"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1990"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1989"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1996"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1990"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1989"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1996"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1990"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1989"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2002"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2018"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2017"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2003"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2011"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2010"
        BranchSideFuncs:
        - "BUCKET_B(int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2007"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2013"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs:
        - "BUCKET_BSTAR(int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1889,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].BUCKET_BSTAR(int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1892,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].BUCKET_B(int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1956,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].subStringSort(int,int,int,int[],int,int,int,boolean,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1979,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trSort(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 93
    CyclomaticComplexity: 47
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].BUCKET_BSTAR(int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 1859
    functionLinenumberEnd: 1861
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].BUCKET_B(int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 1855
    functionLinenumberEnd: 1857
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].subStringSort(int,int,int,int[],int,int,int,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 863
    functionLinenumberEnd: 912
    functionDepth: 4
    returnType: "void"
    argCount: 9
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int[]"
    - "int"
    - "int"
    - "int"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMultiKeyIntroSort(int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMerge(int,int,int,int,int[],int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssCompareLast(int,int,int,int,int)"
    functionUses: 1
    ICount: 80
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:872"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:875"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:874"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:875"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:890"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:889"
        BranchSideFuncs:
        - "ssMultiKeyIntroSort(int,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:880"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:885"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:884"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:885"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:874"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:892"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:899"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:898"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:893"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:890"
        BranchSideFuncs:
        - "ssMerge(int,int,int,int,int[],int,int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:889"
        BranchSideFuncs:
        - "ssMultiKeyIntroSort(int,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:899"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:910"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:902"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:905"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:902"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:902"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:905"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:906"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:909"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:908"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:876,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMultiKeyIntroSort(int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:886,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMerge(int,int,int,int,int[],int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:902,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssCompareLast(int,int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 25
    CyclomaticComplexity: 12
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMultiKeyIntroSort(int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 353
    functionLinenumberEnd: 530
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssLog(int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssInsertionSort(int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssHeapSort(int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssSubstringPartition(int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort$StackEntry].<init>(int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssPivot(int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].swapElements(int[],int,int[],int)"
    functionUses: 2
    ICount: 405
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:367"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:382"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:381"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:368"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:371"
        BranchSideFuncs:
        - "ssInsertionSort(int,int,int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:370"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:371"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:383"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:386"
        BranchSideFuncs:
        - "ssHeapSort(int,int,int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:385"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:386"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:423"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:422"
        BranchSideFuncs:
        - "ssPivot(int,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:387"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:396"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:395"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:388"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:387"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:386"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:389"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:392"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:391"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:396"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:399"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:398"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:399"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:410"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:409"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:400"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:406"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:405"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:410"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:415"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:414"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:428"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:431"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:430"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:428"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:431"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:430"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:431"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:440"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:439"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:431"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:440"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:439"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:432"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:440"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:439"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:432"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:440"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:439"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:433"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:432"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:431"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:441"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:444"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:443"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:441"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:444"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:443"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:444"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:452"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:451"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:444"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:452"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:451"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:445"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:452"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:451"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:445"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:452"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:451"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:446"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:452"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:468"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:467"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:454"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:454"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:455"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:454"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:453"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:460"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:452"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:451"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:460"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:452"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:451"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:461"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:468"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:524"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:523"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:471"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:474"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:473"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:474"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:476"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:477"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:480"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:479"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:480"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:483"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:486"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:483"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:488"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:506"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:505"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:489"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:493"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:492"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:493"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:498"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:497"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:506"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:510"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:509"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:510"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:515"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:514"
        BranchSideFuncs:
        - "<init>(int,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:525"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:529"
        BranchSideFuncs:
        - "ssSubstringPartition(int,int,int,int)"
        - "ssLog(int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:528"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:366,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssLog(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:369,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssInsertionSort(int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:384,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssHeapSort(int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:397,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssSubstringPartition(int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:401,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort$StackEntry].<init>(int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:423,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssPivot(int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:425,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].swapElements(int[],int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 84
    CyclomaticComplexity: 46
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssLog(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 305
    functionLinenumberEnd: 307
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:306"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:305"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssInsertionSort(int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 141
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssCompare(int,int,int)"
    functionUses: 1
    ICount: 35
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:140"
        BranchSideFuncs:
        - "ssCompare(int,int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:139"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:134"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:130"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:131"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:130"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:130"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:129"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:128"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:131"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:127"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:126"
        BranchSideFuncs:
        - "ssCompare(int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:135"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:127,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssCompare(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssCompare(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:81"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:80"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:81"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:80"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:81"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:80"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:81"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:80"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:81"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:80"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:81"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:80"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssHeapSort(int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 194
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].swapElements(int[],int,int[],int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssFixdown(int,int,int,int,int)"
    functionUses: 1
    ICount: 61
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:178"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:177"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:178"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:177"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:181"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:182"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:187"
        BranchSideFuncs:
        - "swapElements(int[],int,int[],int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:186"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:192"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:174,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].swapElements(int[],int,int[],int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:179,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssFixdown(int,int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].swapElements(int[],int,int[],int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 36
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssFixdown(int,int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:160"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:159"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:152"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:143"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:142"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssSubstringPartition(int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 311
    functionLinenumberEnd: 337
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:318"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:318"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:322"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:326"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:325"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:322"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:326"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:325"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:326"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:329"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:328"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:333"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:336"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:335"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort$StackEntry].<init>(int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort$StackEntry"
    linkageType: ""
    functionLinenumber: 344
    functionLinenumberEnd: 351
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 43
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort$StackEntry:345,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssPivot(int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 285
    functionLinenumberEnd: 302
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMedian3(int,int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMedian5(int,int,int,int,int,int,int)"
    functionUses: 1
    ICount: 37
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:289"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:296"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:295"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:290"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:293"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:292"
        BranchSideFuncs:
        - "ssMedian5(int,int,int,int,int,int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:291,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMedian3(int,int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:294,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMedian5(int,int,int,int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMedian3(int,int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 218
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:203"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:211"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:217"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:216"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:212"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:215"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:214"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMedian5(int,int,int,int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 220
    functionLinenumberEnd: 280
    functionDepth: 0
    returnType: "int"
    argCount: 7
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 95
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:232"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:240"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:248"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:260"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:268"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:276"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:279"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:278"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMerge(int,int,int,int,int[],int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 745
    functionLinenumberEnd: 858
    functionDepth: 3
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "int[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMergeBackward(int,int[],int,int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMergeCheckEqual(int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMergeForward(int,int[],int,int,int,int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].getIDX(int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssCompare(int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssBlockSwap(int[],int,int[],int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort$StackEntry].<init>(int,int,int,int)"
    functionUses: 2
    ICount: 166
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:757"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:779"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:778"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:758"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:762"
        BranchSideFuncs:
        - "ssMergeBackward(int,int[],int,int,int,int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:761"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:758"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:762"
        BranchSideFuncs:
        - "ssMergeBackward(int,int[],int,int,int,int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:761"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:762"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:765"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:764"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:765"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:768"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:767"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:768"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:779"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:800"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:799"
        BranchSideFuncs:
        - "min(int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:780"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:783"
        BranchSideFuncs:
        - "ssMergeForward(int,int[],int,int,int,int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:782"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:783"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:786"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:785"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:786"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:789"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:788"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:789"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:801"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:811"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:810"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:804"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:801"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:811"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:842"
        BranchSideFuncs:
        - "ssBlockSwap(int[],int,int[],int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:841"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:815"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:827"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:826"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:816"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:822"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:821"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:817"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:820"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:819"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:822"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:827"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:833"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:832"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:833"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:833"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:842"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:845"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:844"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:846"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:849"
        BranchSideFuncs:
        - "ssMergeCheckEqual(int,int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:848"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:849"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:759,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMergeBackward(int,int[],int,int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:763,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMergeCheckEqual(int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:781,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMergeForward(int,int[],int,int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:800,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:804,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].getIDX(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:804,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssCompare(int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:812,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssBlockSwap(int[],int,int[],int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:828,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort$StackEntry].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 50
    CyclomaticComplexity: 23
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMergeBackward(int,int[],int,int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 606
    functionLinenumberEnd: 727
    functionDepth: 2
    returnType: "void"
    argCount: 7
    argTypes:
    - "int"
    - "int[]"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssBlockSwap(int[],int,int[],int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssCompare(int,int,int)"
    functionUses: 1
    ICount: 231
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:620"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:624"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:623"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:626"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:630"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:629"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:635"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:656"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:655"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:636"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:642"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:640"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:638"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:637"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:644"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:648"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:647"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:650"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:654"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:653"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:656"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:683"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:682"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:657"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:663"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:661"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:659"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:658"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:666"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:676"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:675"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:667"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:671"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:670"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:676"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:680"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:679"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:683"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:687"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:685"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:684"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:691"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:695"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:694"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:697"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:701"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:699"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:698"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:706"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:716"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:715"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:707"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:711"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:710"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:716"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:720"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:719"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:722"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:726"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:725"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:617,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssBlockSwap(int[],int,int[],int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:634,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssCompare(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 45
    CyclomaticComplexity: 20
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssBlockSwap(int[],int,int[],int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 537
    functionLinenumberEnd: 542
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "int[]"
    - "int"
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].swapElements(int[],int,int[],int)"
    functionUses: 3
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:538"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:540"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:539,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].swapElements(int[],int,int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMergeCheckEqual(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 736
    functionLinenumberEnd: 743
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].getIDX(int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssCompare(int,int,int)"
    functionUses: 7
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:739"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:742"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:741"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:739"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:742"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:741"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:739,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].getIDX(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:739,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssCompare(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].getIDX(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 732
    functionLinenumberEnd: 734
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:733"
      Branch Sides: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssMergeForward(int,int[],int,int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 544
    functionLinenumberEnd: 601
    functionDepth: 2
    returnType: "void"
    argCount: 7
    argTypes:
    - "int"
    - "int[]"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssBlockSwap(int[],int,int[],int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssCompare(int,int,int)"
    functionUses: 1
    ICount: 108
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:557"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:565"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:560"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:564"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:563"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:565"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:559"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:558"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:566"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:578"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:570"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:577"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:576"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:571"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:574"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:573"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:577"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:567"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:582"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:586"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:585"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:587"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:580"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:592"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:600"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:599"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:593"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:597"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:596"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:600"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:589"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:553,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssBlockSwap(int[],int,int[],int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:556,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssCompare(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 23
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].ssCompareLast(int,int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 74
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:100"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:99"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:100"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:99"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:100"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:99"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:100"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:100"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:103"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:107"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:109"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:114"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:109"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:114"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:109"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:114"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:114"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:114"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:114"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:113"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 25
    CyclomaticComplexity: 11
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trSort(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 1823
    functionLinenumberEnd: 1852
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget].<init>(int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trLog(int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trIntroSort(int,int,int,int,int,io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].lsSort(int,int,int)"
    functionUses: 1
    ICount: 37
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1829"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1851"
        BranchSideFuncs:
        - "trLog(int)"
        - "<init>(int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1850"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1832"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1835"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1834"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1836"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1847"
        BranchSideFuncs:
        - "trIntroSort(int,int,int,int,int,io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1846"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1838"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1846"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1840"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1843"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1842"
        BranchSideFuncs:
        - "lsSort(int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1849"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1831"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1830,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trLog(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1830,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget].<init>(int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1837,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trIntroSort(int,int,int,int,int,io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1843,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].lsSort(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trLog(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 995
    functionLinenumberEnd: 997
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:996"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:996"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:995"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:996"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:995"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget].<init>(int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget"
    linkageType: ""
    functionLinenumber: 1805
    functionLinenumberEnd: 1810
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget:1806,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trIntroSort(int,int,int,int,int,io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 1453
    functionLinenumberEnd: 1801
    functionDepth: 3
    returnType: "void"
    argCount: 7
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trLog(int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget].update(int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trPartition(int,int,int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort$StackEntry].<init>(int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trCopy(int,int,int,int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trInsertionSort(int,int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trHeapSort(int,int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trGetC(int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trPivot(int,int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].swapElements(int[],int,int[],int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].lsUpdateGroup(int,int,int)"
    functionUses: 1
    ICount: 624
    EdgeCount: 61
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1465"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1592"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1591"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1466"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1467"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1470"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1469"
        BranchSideFuncs:
        - "trPartition(int,int,int,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1473"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1474"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1473"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1473"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1523"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1522"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1474"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1479"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1478"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1475"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1478"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1479"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1485"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1484"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1480"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1484"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1487"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1504"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1503"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1488"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1491"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1490"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1491"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1494"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1493"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1494"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1504"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1508"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1507"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1508"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1512"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1511"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1512"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1523"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1525"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1526"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1466"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1548"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1547"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1539"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1548"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1555"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1554"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1552"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1553"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1552"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1552"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1551"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1550"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1555"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1579"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1578"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1559"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1558"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1557"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1560"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1561"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1567"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1566"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1562"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1566"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1567"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1571"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1570"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1571"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1575"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1574"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1579"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1592"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1601"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1600"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1593"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1596"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1595"
        BranchSideFuncs:
        - "trInsertionSort(int,int,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1601"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1617"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1616"
        BranchSideFuncs:
        - "trPivot(int,int,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1602"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1605"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1604"
        BranchSideFuncs:
        - "trHeapSort(int,int,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1606"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1608"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1604"
        BranchSideFuncs:
        - "trHeapSort(int,int,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1608"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1604"
        BranchSideFuncs:
        - "trHeapSort(int,int,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1623"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1626"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1625"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1623"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1626"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1625"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1626"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1635"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1634"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1626"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1635"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1634"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1627"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1635"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1634"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1627"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1635"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1634"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1628"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1627"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1626"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1636"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1639"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1638"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1636"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1639"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1638"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1639"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1647"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1646"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1639"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1647"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1646"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1640"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1647"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1646"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1640"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1647"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1646"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1641"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1647"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1663"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1662"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1649"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1649"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1650"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1649"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1648"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1655"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1647"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1646"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1655"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1647"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1646"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1656"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1663"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1788"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1787"
        BranchSideFuncs:
        - "update(int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1666"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1669"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1668"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1669"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1671"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1672"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1675"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1674"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1675"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1678"
        BranchSideFuncs:
        - "trLog(int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1681"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs:
        - "trLog(int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1683"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1685"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1686"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1691"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1690"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1687"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1690"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1691"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1743"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1742"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1692"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1715"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1714"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1693"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1697"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1696"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1697"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1700"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1699"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1700"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1706"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1705"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1706"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1715"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1730"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1729"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1716"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1720"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1719"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1720"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1727"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1726"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1730"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1738"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1737"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1743"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1759"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1758"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1744"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1748"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1747"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1748"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1751"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1750"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1751"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1757"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1756"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1759"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1774"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1773"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1760"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1764"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1763"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1764"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1771"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1770"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1774"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1782"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1781"
        BranchSideFuncs:
        - "<init>(int,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1788"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1791"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1790"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1795"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1800"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1799"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1796"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1795"
        BranchSideFuncs:
        - "lsUpdateGroup(int,int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1794"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1464,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trLog(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1467,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget].update(int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1470,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trPartition(int,int,int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1485,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort$StackEntry].<init>(int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1538,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trCopy(int,int,int,int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1596,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trInsertionSort(int,int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1605,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trHeapSort(int,int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1607,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trGetC(int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1617,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trPivot(int,int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1619,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].swapElements(int[],int,int[],int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1797,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].lsUpdateGroup(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 176
    CyclomaticComplexity: 84
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget].update(int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget"
    linkageType: ""
    functionLinenumber: 1811
    functionLinenumberEnd: 1820
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget:1813"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget:1819"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget:1818"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget:1814"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget:1817"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort$TRBudget:1816"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trPartition(int,int,int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 1355
    functionLinenumberEnd: 1421
    functionDepth: 1
    returnType: "io.netty.handler.codec.compression.Bzip2DivSufSort$PartitionResult"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trGetC(int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].swapElements(int[],int,int[],int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort$PartitionResult].<init>(int,int)"
    functionUses: 1
    ICount: 113
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1363"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1366"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1365"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1363"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1366"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1365"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1366"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1375"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1374"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1366"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1375"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1374"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1367"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1375"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1374"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1367"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1375"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1374"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1368"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1367"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1366"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1376"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1379"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1378"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1376"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1379"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1378"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1379"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1387"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1386"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1379"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1387"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1386"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1380"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1387"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1386"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1380"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1387"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1386"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1381"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1387"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1403"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1402"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1389"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1389"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1390"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1389"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1388"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1395"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1387"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1386"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1395"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1387"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1386"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1396"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1403"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1420"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1419"
        BranchSideFuncs:
        - "<init>(int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1405"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1408"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1407"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1408"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1410"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1411"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1414"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1413"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1414"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1416"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1363,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trGetC(int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1369,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].swapElements(int[],int,int[],int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1420,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort$PartitionResult].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 43
    CyclomaticComplexity: 27
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trGetC(int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 915
    functionLinenumberEnd: 917
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:916"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:915"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort$PartitionResult].<init>(int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort$PartitionResult"
    linkageType: ""
    functionLinenumber: 1347
    functionLinenumberEnd: 1352
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort$PartitionResult:1348,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trCopy(int,int,int,int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 1424
    functionLinenumberEnd: 1451
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 50
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1432"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1441"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1440"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1433"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1436"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1435"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1436"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1425"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1424"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1441"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1450"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1449"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1442"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1445"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1444"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1445"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trInsertionSort(int,int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 973
    functionLinenumberEnd: 994
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trGetC(int,int,int,int)"
    functionUses: 2
    ICount: 36
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:979"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:993"
        BranchSideFuncs:
        - "trGetC(int,int,int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:992"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:980"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:987"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:983"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:984"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:983"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:983"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:982"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:981"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:984"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:980"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:979"
        BranchSideFuncs:
        - "trGetC(int,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:988"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:980,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trGetC(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trHeapSort(int,int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 942
    functionLinenumberEnd: 972
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trGetC(int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].swapElements(int[],int,int[],int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trFixdown(int,int,int,int,int,int)"
    functionUses: 2
    ICount: 49
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:949"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:956"
        BranchSideFuncs:
        - "trGetC(int,int,int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:955"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:951"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:956"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:955"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:956"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:959"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:960"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:965"
        BranchSideFuncs:
        - "swapElements(int[],int,int[],int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:964"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:965"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:970"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:951,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trGetC(int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:952,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].swapElements(int[],int,int[],int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:957,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trFixdown(int,int,int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trFixdown(int,int,int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 921
    functionLinenumberEnd: 941
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trGetC(int,int,int,int)"
    functionUses: 3
    ICount: 37
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:928"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:939"
        BranchSideFuncs:
        - "trGetC(int,int,int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:938"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:931"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:935"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:934"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:935"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:922"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:921"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:928,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trGetC(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trPivot(int,int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 1090
    functionLinenumberEnd: 1112
    functionDepth: 2
    returnType: "int"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trMedian3(int,int,int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trMedian5(int,int,int,int,int,int,int,int)"
    functionUses: 2
    ICount: 38
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1094"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1106"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1105"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1095"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1098"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1097"
        BranchSideFuncs:
        - "trMedian5(int,int,int,int,int,int,int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1096,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trMedian3(int,int,int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1099,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trMedian5(int,int,int,int,int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trMedian3(int,int,int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 1001
    functionLinenumberEnd: 1024
    functionDepth: 1
    returnType: "int"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trGetC(int,int,int,int)"
    functionUses: 5
    ICount: 27
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1008"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1016"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1015"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1016"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1023"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1022"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1019"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1004,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trGetC(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trMedian5(int,int,int,int,int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 1026
    functionLinenumberEnd: 1085
    functionDepth: 1
    returnType: "int"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trGetC(int,int,int,int)"
    functionUses: 1
    ICount: 60
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1037"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1045"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1044"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1045"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1053"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1052"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1053"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1064"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1065"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1073"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1072"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1073"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1080"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1081"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1084"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1083"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1029,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trGetC(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].lsUpdateGroup(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 1117
    functionLinenumberEnd: 1144
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1123"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1143"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1142"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1124"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1134"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1133"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1129"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1128"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1127"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1126"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1130"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1134"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1133"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1137"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1136"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1135"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1141"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1139"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].lsSort(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 1297
    functionLinenumberEnd: 1341
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].lsIntroSort(int,int,int,int,int)"
    functionUses: 1
    ICount: 54
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1304"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1340"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1339"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1308"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1312"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1311"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1312"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1316"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1315"
        BranchSideFuncs:
        - "lsIntroSort(int,int,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1320"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1308"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1307"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1321"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1324"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1323"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1324"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1298"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1297"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1327"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1330"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1329"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1331"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1333"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1336"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1327"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1326"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1317,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].lsIntroSort(int,int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 23
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].lsIntroSort(int,int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 1145
    functionLinenumberEnd: 1294
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trLog(int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trInsertionSort(int,int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].lsUpdateGroup(int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trHeapSort(int,int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trGetC(int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].trPivot(int,int,int,int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].swapElements(int[],int,int[],int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort$StackEntry].<init>(int,int,int,int)"
    functionUses: 1
    ICount: 228
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1157"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1174"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1173"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1158"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1161"
        BranchSideFuncs:
        - "trInsertionSort(int,int,int,int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1160"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1161"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1164"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1163"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1164"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1174"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1194"
        BranchSideFuncs:
        - "trHeapSort(int,int,int,int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1193"
        BranchSideFuncs:
        - "trPivot(int,int,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1176"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1183"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1182"
        BranchSideFuncs:
        - "lsUpdateGroup(int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1174"
        BranchSideFuncs:
        - "trHeapSort(int,int,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1174"
        BranchSideFuncs:
        - "trHeapSort(int,int,int,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1184"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1202"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1201"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1202"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1201"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1202"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1211"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1210"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1202"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1211"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1210"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1203"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1211"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1210"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1203"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1211"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1210"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1204"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1203"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1202"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1212"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1215"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1214"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1212"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1215"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1214"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1223"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1222"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1223"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1222"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1216"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1223"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1222"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1216"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1223"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1222"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1217"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1223"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1239"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1238"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1226"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1225"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1224"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1231"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1223"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1222"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1231"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1223"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1222"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1232"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1239"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1286"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1285"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1242"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1245"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1244"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1245"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1247"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1248"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1251"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1250"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1251"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1254"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1258"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1260"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1261"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1266"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1265"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1262"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1265"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1266"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1270"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1269"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1270"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1278"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1277"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1271"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1275"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1274"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1278"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1282"
        BranchSideFuncs:
        - "<init>(int,int,int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:1281"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:1286"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1156,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trLog(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1159,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trInsertionSort(int,int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1160,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].lsUpdateGroup(int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1175,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trHeapSort(int,int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1177,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trGetC(int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1194,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].trPivot(int,int,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1195,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].swapElements(int[],int,int[],int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:1272,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort$StackEntry].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 80
    CyclomaticComplexity: 42
  - functionName: "[io.netty.handler.codec.compression.Bzip2DivSufSort].constructBWT(int[],int[])"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2DivSufSort"
    linkageType: ""
    functionLinenumber: 2021
    functionLinenumberEnd: 2089
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].BUCKET_BSTAR(int,int)"
    - "[io.netty.handler.codec.compression.Bzip2DivSufSort].BUCKET_B(int,int)"
    functionUses: 1
    ICount: 130
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2031"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2059"
        BranchSideFuncs:
        - "BUCKET_BSTAR(int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2058"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2033"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2035"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2036"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2039"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2038"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2039"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2041"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2041"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2044"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2047"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2046"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2047"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2050"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2049"
        BranchSideFuncs:
        - "BUCKET_B(int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2059"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2088"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2087"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2060"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2061"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2064"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2063"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2064"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2081"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2080"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2065"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2065"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2068"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2071"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2074"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2073"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2DivSufSort:2081"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2085"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2DivSufSort:2084"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:2032,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].BUCKET_BSTAR(int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2DivSufSort:2048,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2DivSufSort].BUCKET_B(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 39
    CyclomaticComplexity: 19
  - functionName: "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBits(io.netty.buffer.ByteBuf,int,long)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BitWriter"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    functionUses: 11
    ICount: 32
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitWriter:42"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:43"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:42"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitWriter:42"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:45"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:44"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitWriter:49"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:54"
        BranchSideFuncs:
        - "writeInt(int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:43,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:43,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:43,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:43,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:43,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:50,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Bzip2BitWriter].writeInt(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BitWriter"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBits(io.netty.buffer.ByteBuf,int,long)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:95,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBits(io.netty.buffer.ByteBuf,int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].<init>(int[],int,boolean[])"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "boolean[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 14
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:70,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].encode()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 157
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].<init>()"
    - "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].valueToFront(byte)"
    functionUses: 1
    ICount: 101
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:95"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:94"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:91"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:81"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:80"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:130"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:105"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:108"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:107"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:125"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:115"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:114"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:119"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:122"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:121"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:131"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:149"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:138"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:137"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:142"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:145"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:87,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].<init>()"
    - Src: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder:103,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].valueToFront(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 29
    CyclomaticComplexity: 11
  - functionName: "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].valueToFront(byte)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2MoveToFrontTable"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2MoveToFrontTable:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MoveToFrontTable:69"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MoveToFrontTable:68"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2MoveToFrontTable:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MoveToFrontTable:69"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2MoveToFrontTable:68"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].mtfBlock()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionDepth: 0
    returnType: "char[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].mtfLength()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].mtfAlphabetSize()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder].mtfSymbolFrequencies()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2MTFAndRLE2StageEncoder"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionDepth: 0
    returnType: "int[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].<init>(io.netty.handler.codec.compression.Bzip2BitWriter,char[],int,int,int[])"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 95
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.compression.Bzip2BitWriter"
    - "char[]"
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].selectTableCount(int)"
    functionUses: 1
    ICount: 23
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:82,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:89,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].selectTableCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].selectTableCount(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:102"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:105"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:104"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:105"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:108"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:107"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:111"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:114"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:113"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].encode(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder"
    linkageType: ""
    functionLinenumber: 363
    functionLinenumberEnd: 374
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].generateHuffmanOptimisationSeeds()"
    - "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].optimiseSelectorsAndHuffmanTables(boolean)"
    - "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].assignHuffmanCodeSymbols()"
    - "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].writeSelectorsAndHuffmanTables(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].writeBlockData(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 17
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:365"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:368"
        BranchSideFuncs:
        - "optimiseSelectorsAndHuffmanTables(boolean)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:367"
        BranchSideFuncs:
        - "writeBlockData(io.netty.buffer.ByteBuf)"
        - "writeSelectorsAndHuffmanTables(io.netty.buffer.ByteBuf)"
        - "assignHuffmanCodeSymbols()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:366"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:365"
        BranchSideFuncs:
        - "optimiseSelectorsAndHuffmanTables(boolean)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:364,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].generateHuffmanOptimisationSeeds()"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:366,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].optimiseSelectorsAndHuffmanTables(boolean)"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:368,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].assignHuffmanCodeSymbols()"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:371,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].writeSelectorsAndHuffmanTables(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:372,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].writeBlockData(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].generateHuffmanOptimisationSeeds()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 196
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:172"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:194"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:182"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:181"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:182"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:181"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:182"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:186"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:185"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:182"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:186"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:185"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:182"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:186"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:185"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:182"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:186"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:185"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:189"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:188"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:186"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:185"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 11
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].optimiseSelectorsAndHuffmanTables(boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 260
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].generateHuffmanCodeLengths(int,int[],int[])"
    functionUses: 1
    ICount: 67
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:218"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:255"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:224"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:232"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:231"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:226"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:219"
        BranchSideFuncs:
        - "min(int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:234"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:243"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:242"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:236"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:232"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:231"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:244"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:248"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:249"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:252"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:251"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:256"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:258"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:220,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:257,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].generateHuffmanCodeLengths(int,int[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 23
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].generateHuffmanCodeLengths(int,int[],int[])"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 155
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].sort(int[])"
    - "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].allocateHuffmanCodeLengths(int[],int)"
    functionUses: 1
    ICount: 31
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:140"
        BranchSideFuncs:
        - "sort(int[])"
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:142"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:147"
        BranchSideFuncs:
        - "allocateHuffmanCodeLengths(int[],int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:151"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:153"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:141,1"
      Dst: "[java.util.Arrays].sort(int[])"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:148,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].allocateHuffmanCodeLengths(int[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].allocateHuffmanCodeLengths(int[],int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 182
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].setExtendedParentPointers(int[])"
    - "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].findNodesToRelocate(int[],int)"
    - "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].allocateNodeLengths(int[])"
    - "[java.lang.Integer].numberOfLeadingZeros(int)"
    - "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].allocateNodeLengthsWithRelocation(int[],int,int)"
    functionUses: 1
    ICount: 21
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:178"
        BranchSideFuncs:
        - "allocateNodeLengths(int[])"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:177"
        BranchSideFuncs:
        - "allocateNodeLengthsWithRelocation(int[],int,int)"
        - "numberOfLeadingZeros(int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:169,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].setExtendedParentPointers(int[])"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:172,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].findNodesToRelocate(int[],int)"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:176,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].allocateNodeLengths(int[])"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:178,1"
      Dst: "[java.lang.Integer].numberOfLeadingZeros(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:179,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].allocateNodeLengthsWithRelocation(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].setExtendedParentPointers(int[])"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:79"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:65"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:66"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:65"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:65"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:69"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:68"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:73"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:72"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:76"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:75"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:76"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:75"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].findNodesToRelocate(int[],int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].first(int[],int,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:92"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:91,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].first(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].first(int[],int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    functionUses: 3
    ICount: 30
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:38"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:42"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:41"
        BranchSideFuncs:
        - "max(int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:38"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:42"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:41"
        BranchSideFuncs:
        - "max(int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:52"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:51"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:49"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:42,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].allocateNodeLengths(int[])"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 115
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].first(int[],int,int)"
    functionUses: 1
    ICount: 27
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:114"
        BranchSideFuncs:
        - "first(int[],int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:108"
      Branch Sides: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:106,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].first(int[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].allocateNodeLengthsWithRelocation(int[],int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 151
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].first(int[],int,int)"
    - "[java.lang.Math].min(int,int)"
    functionUses: 1
    ICount: 56
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:124"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:123"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:125"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:129"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:150"
        BranchSideFuncs:
        - "first(int[],int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:149"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:131"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:130"
        BranchSideFuncs:
        - "first(int[],int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:129"
        BranchSideFuncs:
        - "first(int[],int,int)"
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:136"
        BranchSideFuncs:
        - "min(int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:135"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:143"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:142"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:143"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:142"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:143"
      Branch Sides: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:131,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].first(int[],int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:135,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].assignHuffmanCodeSymbols()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder"
    linkageType: ""
    functionLinenumber: 264
    functionLinenumberEnd: 298
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:271"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:297"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:296"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:276"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:286"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:285"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:278"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:281"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:280"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:281"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:272"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:271"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:265"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:264"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:288"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:289"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:288"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:287"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].writeSelectorsAndHuffmanTables(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder"
    linkageType: ""
    functionLinenumber: 302
    functionLinenumberEnd: 337
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBits(io.netty.buffer.ByteBuf,int,long)"
    - "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].<init>()"
    - "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].valueToFront(byte)"
    - "[io.netty.handler.codec.compression.Bzip2BitWriter].writeUnary(io.netty.buffer.ByteBuf,int)"
    - "[java.lang.Math].abs(int)"
    - "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBoolean(io.netty.buffer.ByteBuf,boolean)"
    functionUses: 1
    ICount: 53
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:315"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:319"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:320"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:336"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:335"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:325"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:320"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:319"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:327"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:326"
        BranchSideFuncs:
        - "abs(int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:325"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:329"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:null"
        BranchSideFuncs:
        - "writeBits(io.netty.buffer.ByteBuf,int,long)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:310,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBits(io.netty.buffer.ByteBuf,int,long)"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:314,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].<init>()"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:316,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2MoveToFrontTable].valueToFront(byte)"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:316,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitWriter].writeUnary(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:328,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:332,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBoolean(io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.compression.Bzip2BitWriter].writeUnary(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BitWriter"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 89
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBoolean(io.netty.buffer.ByteBuf,boolean)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 1
    ICount: 21
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitWriter:81"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:84"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:83"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitWriter:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:87"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:86"
        BranchSideFuncs:
        - "writeBoolean(io.netty.buffer.ByteBuf,boolean)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:82,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:82,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:82,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:82,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:85,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBoolean(io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder].writeBlockData(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder"
    linkageType: ""
    functionLinenumber: 341
    functionLinenumberEnd: 358
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBits(io.netty.buffer.ByteBuf,int,long)"
    functionUses: 1
    ICount: 30
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:348"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:357"
        BranchSideFuncs:
        - "min(int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:356"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:352"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:356"
        BranchSideFuncs:
        - "writeBits(io.netty.buffer.ByteBuf,int,long)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:355"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:349,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanStageEncoder:354,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBits(io.netty.buffer.ByteBuf,int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].availableSize()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockCompressor"
    linkageType: ""
    functionLinenumber: 268
    functionLinenumberEnd: 273
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockCompressor:269"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:272"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:271"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].isFull()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockCompressor"
    linkageType: ""
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockCompressor:280"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:279"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].isEmpty()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockCompressor"
    linkageType: ""
    functionLinenumber: 287
    functionLinenumberEnd: 289
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockCompressor:288"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:287"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BlockCompressor:288"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BlockCompressor:287"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].crc()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockCompressor"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Crc32].getCRC()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor:296,1"
      Dst: "[io.netty.handler.codec.compression.Crc32].getCRC()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel$4].<init>(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel$4"
    linkageType: ""
    functionLinenumber: 243
    functionLinenumberEnd: 245
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.socket.oio.OioSocketChannel"
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel$4:244,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel$4].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel$4"
    linkageType: ""
    functionLinenumber: 246
    functionLinenumberEnd: 249
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel].access$300(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel$4:247,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].access$300(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].access$300(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel].shutdownDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:46,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 255
    functionLinenumberEnd: 270
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    functionUses: 2
    ICount: 16
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:258"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:264"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:263"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:259"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:263"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Throwable)"
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:262"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:264"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:267"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:266"
        BranchSideFuncs:
        - "setSuccess()"
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:256,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:260,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:263,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:267,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel$4].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel$4"
    linkageType: ""
    functionLinenumber: 243
    functionLinenumberEnd: 245
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel$4].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel$4:244,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel$4].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$2].<init>(sun.misc.Unsafe)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$2"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "sun.misc.Unsafe"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$2:145,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$2].run()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$2"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 156
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    functionUses: 4
    ICount: 18
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$2:149,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.util.internal.PlatformDependent0$2:149,1"
      Dst: "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpStatusClass$1].<init>(java.lang.String,int,int,int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpStatusClass$1"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpStatusClass].<init>(java.lang.String,int,int,int,java.lang.String,io.netty.handler.codec.http.HttpStatusClass$1)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpStatusClass$1:48,1"
      Dst: "[io.netty.handler.codec.http.HttpStatusClass].<init>(java.lang.String,int,int,int,java.lang.String,io.netty.handler.codec.http.HttpStatusClass$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpStatusClass$1].contains(int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpStatusClass$1"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpStatusClass$1:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass$1:50"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpStatusClass$1:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpStatusClass$1:50"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].'from'(int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].<init>(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:30"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:31"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:30"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:30"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:33"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:32"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:31,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:31,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:31,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:31,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:31,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:33,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:36,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].toString()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 51
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 19
    ICount: 11
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:46,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:46,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:47,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:48,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:48,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:50,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].withEmptyProperties()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 2
    returnType: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].<init>(int,io.netty.handler.codec.mqtt.MqttProperties)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:54,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].<init>(int,io.netty.handler.codec.mqtt.MqttProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].<init>(int,io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 35
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].<init>(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttProperties)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 4
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader:30"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader:31"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader:30"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader:30"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader:33"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader:32"
        BranchSideFuncs:
        - "withEmptyDefaults(io.netty.handler.codec.mqtt.MqttProperties)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader:29,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].<init>(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader:31,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader:31,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader:31,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader:31,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader:31,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader:33,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttProperties"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:106"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:109"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:108"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].withDefaultEmptyProperties()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].withEmptyProperties()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader:58,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].withEmptyProperties()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$8].<init>(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.SocketUtils$8"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$8:153,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$8].run()"
    functionSourceFile: "io.netty.util.internal.SocketUtils$8"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "java.net.InetAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetAddress].getByName(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$8:156,1"
      Dst: "[java.net.InetAddress].getByName(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.net.UnknownHostException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$13].<init>(java.net.NetworkInterface)"
    functionSourceFile: "io.netty.util.internal.SocketUtils$13"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.NetworkInterface"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$13:222,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$13].run()"
    functionSourceFile: "io.netty.util.internal.SocketUtils$13"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.NetworkInterface].getHardwareAddress()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$13:225,1"
      Dst: "[java.net.NetworkInterface].getHardwareAddress()"
    JavaMethodInfo:
      exceptions:
      - "java.net.SocketException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseNotifier$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.util.concurrent.PromiseNotifier$1"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isCancelled()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isCancelled()"
    - "[io.netty.util.concurrent.CompleteFuture].isCancelled()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cancel(boolean)"
    - "[io.netty.channel.VoidChannelPromise:io.netty.channel.group.VoidChannelGroupFuture:io.netty.util.concurrent.CompleteFuture].cancel(boolean)"
    - "[java.util.concurrent.Future].isCancelled()"
    - "[io.netty.util.concurrent.Future].cancel(boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.PromiseNotifier$1:97"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseNotifier$1:100"
        BranchSideFuncs:
        - "cancel(boolean)"
      - BranchSide: "io.netty.util.concurrent.PromiseNotifier$1:99"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseNotifier$1:97,1"
      Dst: "[java.util.concurrent.Future].isCancelled()"
    - Src: "io.netty.util.concurrent.PromiseNotifier$1:98,1"
      Dst: "[io.netty.util.concurrent.Future].cancel(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$FrameDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$FrameDecoder"
    linkageType: ""
    functionLinenumber: 388
    functionLinenumberEnd: 390
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.handler.codec.http2.Http2ConnectionHandler$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$FrameDecoder:389,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.handler.codec.http2.Http2ConnectionHandler$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$FrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$FrameDecoder"
    linkageType: ""
    functionLinenumber: 392
    functionLinenumberEnd: 398
    functionDepth: 15
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$800(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].decodeFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].decodeFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2ConnectionDecoder].decodeFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    functionUses: 2
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$FrameDecoder:393,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$800(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$FrameDecoder:393,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionDecoder].decodeFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$FrameDecoder:395,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$800(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2ConnectionDecoder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 646
    functionLinenumberEnd: 660
    functionDepth: 14
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "boolean"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil].getEmbeddedHttp2Exception(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2Exception].isStreamError(io.netty.handler.codec.http2.Http2Exception)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onStreamError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception$StreamException)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onStreamError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception$StreamException)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onConnectionError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onConnectionError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 17
    ICount: 24
    EdgeCount: 123
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:648"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:650"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:649"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:650"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:656"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:655"
        BranchSideFuncs:
        - "onConnectionError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception)"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:652"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:655"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "onStreamError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception$StreamException)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:654"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:647,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].getEmbeddedHttp2Exception(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:648,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].isStreamError(io.netty.handler.codec.http2.Http2Exception)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:649,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].onStreamError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception$StreamException)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:652,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].iterator()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:652,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:652,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:656,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].onConnectionError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:658,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil].getEmbeddedHttp2Exception(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 186
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Exception"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.InvocationTargetException].getCause()"
    - "[java.io.UncheckedIOException].getCause()"
    - "[java.lang.Throwable].getCause()"
    - "[java.lang.ClassNotFoundException].getCause()"
    - "[java.lang.reflect.UndeclaredThrowableException].getCause()"
    - "[java.security.PrivilegedActionException].getCause()"
    - "[java.lang.ExceptionInInitializerError].getCause()"
    - "[javax.naming.NamingException].getCause()"
    functionUses: 2
    ICount: 9
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil:179"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:185"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:184"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil:180"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:183"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:182"
        BranchSideFuncs:
        - "getCause()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:183,1"
      Dst: "[java.lang.Throwable].getCause()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].isStreamError(io.netty.handler.codec.http2.Http2Exception)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 216
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Exception"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].onStreamError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception$StreamException)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 705
    functionLinenumberEnd: 747
    functionDepth: 13
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "boolean"
    - "java.lang.Throwable"
    - "io.netty.handler.codec.http2.Http2Exception$StreamException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception$StreamException].streamId()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.Http2Exception$HeaderListSizeException].duringDecode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].isServer()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].createStream(int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Error].code()"
    - "[io.netty.handler.codec.http2.Http2Exception].error()"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].resetUnknownStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].isHeadersSent()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isHeadersSent()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].handleServerHeaderDecodeSizeError(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].local()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].mayHaveCreatedStream(int)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].resetStream(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - "[io.netty.handler.codec.http2.Http2ConnectionEncoder].connection()"
    - "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].createStream(int,boolean)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.handler.codec.http2.Http2Stream].isHeadersSent()"
    - "[io.netty.handler.codec.http2.Http2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].mayHaveCreatedStream(int)"
    functionUses: 4
    ICount: 55
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:710"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:739"
        BranchSideFuncs:
        - "duringDecode()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:738"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:711"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:739"
        BranchSideFuncs:
        - "isServer()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:738"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:712"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:738"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:720"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:729"
        BranchSideFuncs:
        - "isHeadersSent()"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:730"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:739"
        BranchSideFuncs:
        - "onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
        - "isHeadersSent()"
        - "handleServerHeaderDecodeSizeError(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream)"
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:738"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:730"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:739"
        BranchSideFuncs:
        - "onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
        - "isHeadersSent()"
        - "handleServerHeaderDecodeSizeError(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream)"
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:738"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:739"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:744"
        BranchSideFuncs:
        - "local()"
        - "mayHaveCreatedStream(int)"
        - "connection()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:743"
        BranchSideFuncs:
        - "resetStream(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,long,io.netty.channel.ChannelPromise)"
        - "error()"
        - "newPromise()"
        - "code()"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:740"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:741"
        BranchSideFuncs:
        - "resetUnknownStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:740"
        BranchSideFuncs:
        - "resetUnknownStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:740"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:746"
        BranchSideFuncs:
        - "resetUnknownStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:745"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:706,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception$StreamException].streamId()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:707,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:707,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:711,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception$HeaderListSizeException].duringDecode()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:712,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:722,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionEncoder].connection()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:722,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:722,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].createStream(int,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:724,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].error()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:724,1"
      Dst: "[io.netty.handler.codec.http2.Http2Error].code()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:724,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:724,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].resetUnknownStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:730,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].isHeadersSent()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:732,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].handleServerHeaderDecodeSizeError(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:734,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:734,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:740,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].local()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:740,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].mayHaveCreatedStream(int)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:744,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].resetStream(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,long,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.http2.Http2Exception$StreamException].streamId()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception$StreamException"
    linkageType: ""
    functionLinenumber: 283
    functionLinenumberEnd: 285
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception$HeaderListSizeException].duringDecode()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception$HeaderListSizeException"
    linkageType: ""
    functionLinenumber: 298
    functionLinenumberEnd: 300
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].resetUnknownStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 769
    functionLinenumberEnd: 782
    functionDepth: 12
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].frameWriter()"
    - "[io.netty.handler.codec.http2.Http2ControlFrameLimitEncoder].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].closeConnectionOnError(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$3].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 3
    ICount: 15
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:771"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:774"
        BranchSideFuncs:
        - "closeConnectionOnError(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:773"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:770,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].frameWriter()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:770,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:771,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:772,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].closeConnectionOnError(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:774,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$3].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:774,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].handleServerHeaderDecodeSizeError(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 755
    functionLinenumberEnd: 758
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].encoder()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 9
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:756,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].encoder()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:756,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:756,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:756,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].resetStream(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,long,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 796
    functionLinenumberEnd: 830
    functionDepth: 12
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Stream"
    - "long"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].unvoid()"
    - "[io.netty.channel.DefaultChannelPromise].unvoid()"
    - "[io.netty.channel.VoidChannelPromise].unvoid()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].unvoid()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].isResetSent()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isResetSent()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].resetSent()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].resetSent()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].state()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].created(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].isHeadersSent()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isHeadersSent()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].isPushPromiseSent()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isPushPromiseSent()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].frameWriter()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.Http2ControlFrameLimitEncoder].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].processRstStreamWriteResult(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$4].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelPromise].unvoid()"
    - "[io.netty.handler.codec.http2.Http2Stream].isResetSent()"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.handler.codec.http2.Http2Stream].resetSent()"
    - "[io.netty.handler.codec.http2.Http2Stream].state()"
    - "[io.netty.handler.codec.http2.Http2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].created(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2Stream].isHeadersSent()"
    - "[io.netty.handler.codec.http2.Http2Stream].isPushPromiseSent()"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 39
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:798"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:806"
        BranchSideFuncs:
        - "resetSent()"
        - "state()"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:812"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:814"
        BranchSideFuncs:
        - "local()"
        - "isHeadersSent()"
        - "created(io.netty.handler.codec.http2.Http2Stream)"
        - "isPushPromiseSent()"
        - "connection()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:813"
        BranchSideFuncs:
        - "setSuccess()"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:813"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:816"
        BranchSideFuncs:
        - "setSuccess()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:815"
        BranchSideFuncs:
        - "frameWriter()"
        - "id()"
        - "writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:813"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:816"
        BranchSideFuncs:
        - "setSuccess()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:815"
        BranchSideFuncs:
        - "frameWriter()"
        - "id()"
        - "writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:813"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:816"
        BranchSideFuncs:
        - "setSuccess()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:815"
        BranchSideFuncs:
        - "frameWriter()"
        - "id()"
        - "writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:818"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:821"
        BranchSideFuncs:
        - "processRstStreamWriteResult(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:820"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:797,1"
      Dst: "[io.netty.channel.ChannelPromise].unvoid()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:798,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].isResetSent()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:800,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:807,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].resetSent()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:812,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].state()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:813,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:813,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].local()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:813,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].created(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:813,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].isHeadersSent()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:813,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].isPushPromiseSent()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:816,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].frameWriter()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:816,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:816,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:818,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:819,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].processRstStreamWriteResult(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:821,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$4].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:821,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].processRstStreamWriteResult(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 907
    functionLinenumberEnd: 915
    functionDepth: 11
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].closeStream(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onConnectionError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onConnectionError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].cause()"
    functionUses: 2
    ICount: 11
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:908"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:912"
        BranchSideFuncs:
        - "closeStream(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:911"
        BranchSideFuncs:
        - "onConnectionError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception)"
        - "cause()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:908,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:909,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].closeStream(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:912,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:912,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].onConnectionError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable,io.netty.handler.codec.http2.Http2Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].closeStream(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 627
    functionLinenumberEnd: 641
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].close()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].close()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].checkCloseConnection(io.netty.channel.ChannelFuture)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$2].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http2.Http2Stream].close()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 4
    ICount: 12
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:630"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:633"
        BranchSideFuncs:
        - "checkCloseConnection(io.netty.channel.ChannelFuture)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:632"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http2.Http2ConnectionHandler)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:628,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].close()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:630,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:631,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].checkCloseConnection(io.netty.channel.ChannelFuture)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:633,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$2].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:633,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].checkCloseConnection(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 874
    functionLinenumberEnd: 887
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].isGracefulShutdownComplete()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].isGracefulShutdownComplete()"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$6].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$5].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.bootstrap.AbstractBootstrap$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.compression.JZlibEncoder$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.stream.ChunkedWriteHandler$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.MessageAggregator$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.group.DefaultChannelGroup$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.ThreadPerChannelEventLoop$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.socket.oio.OioSocketChannel$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ControlFrameLimitEncoder$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.ChannelFutureListener$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$5].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.bootstrap.Bootstrap$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.ssl.SslHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.util.concurrent.PromiseAggregator].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.ssl.SslHandler$10].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.timeout.IdleStateHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$7].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.util.concurrent.PromiseNotifier].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.embedded.EmbeddedChannel$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.proxy.ProxyHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledBase].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsQueryContext$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.pool.SimpleChannelPool$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.address.DynamicAddressConnectHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsNameResolver$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.ChannelFutureListener$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.VoidChannelPromise$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.ThreadPerChannelEventLoop$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsNameResolver$5].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.ChannelFutureListener$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.ipfilter.UniqueIpFilter$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.socket.oio.OioSocketChannel$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.stream.ChunkedWriteHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.concurrent.GenericFutureListener].operationComplete(io.netty.util.concurrent.Future)"
    functionUses: 2
    ICount: 15
    EdgeCount: 84
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:875"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:886"
        BranchSideFuncs:
        - "operationComplete(io.netty.util.concurrent.Future)"
        - "<init>(java.lang.String,java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:885"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:875"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:886"
        BranchSideFuncs:
        - "operationComplete(io.netty.util.concurrent.Future)"
        - "<init>(java.lang.String,java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:885"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:875,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].isGracefulShutdownComplete()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:881,1"
      Dst: "[io.netty.util.concurrent.GenericFutureListener].operationComplete(io.netty.util.concurrent.Future)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:883,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$2].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$2"
    linkageType: ""
    functionLinenumber: 632
    functionLinenumberEnd: 634
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$2:633,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$4].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$4"
    linkageType: ""
    functionLinenumber: 820
    functionLinenumberEnd: 822
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$4:821,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].iterator()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception$CompositeStreamException"
    linkageType: ""
    functionLinenumber: 320
    functionLinenumberEnd: 322
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jaz.Zer].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.List].iterator()"
    functionUses: 25
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception$CompositeStreamException:321,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$FrameDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.handler.codec.http2.Http2ConnectionHandler$1)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$FrameDecoder"
    linkageType: ""
    functionLinenumber: 388
    functionLinenumberEnd: 390
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    - "io.netty.handler.codec.http2.Http2ConnectionHandler$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$FrameDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$FrameDecoder:389,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$FrameDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].<init>(io.netty.handler.traffic.GlobalChannelTrafficShapingHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$PerChannel,long)"
    functionSourceFile: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2"
    linkageType: ""
    functionLinenumber: 733
    functionLinenumberEnd: 735
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$PerChannel"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2:734,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    functionSourceFile: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2"
    linkageType: ""
    functionLinenumber: 736
    functionLinenumberEnd: 739
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].access$100(io.netty.handler.traffic.GlobalChannelTrafficShapingHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$PerChannel,long)"
    functionUses: 49
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2:737,1"
      Dst: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].access$100(io.netty.handler.traffic.GlobalChannelTrafficShapingHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$PerChannel,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].access$100(io.netty.handler.traffic.GlobalChannelTrafficShapingHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$PerChannel,long)"
    functionSourceFile: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$PerChannel"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].sendAllValid(io.netty.channel.ChannelHandlerContext,io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$PerChannel,long)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:91,1"
      Dst: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].sendAllValid(io.netty.channel.ChannelHandlerContext,io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$PerChannel,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].sendAllValid(io.netty.channel.ChannelHandlerContext,io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$PerChannel,long)"
    functionSourceFile: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: 743
    functionLinenumberEnd: 766
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$PerChannel"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].pollFirst()"
    - "[io.netty.handler.traffic.TrafficCounter].bytesRealWriteFlowControl(long)"
    - "[java.util.concurrent.atomic.AtomicLong].addAndGet(long)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[java.util.ArrayDeque].addFirst(java.lang.Object)"
    - "[java.util.ArrayDeque].isEmpty()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].releaseWriteSuspended(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 1
    ICount: 47
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:746"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:760"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:759"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:747"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:756"
        BranchSideFuncs:
        - "bytesRealWriteFlowControl(long)"
        - "addAndGet(long)"
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:755"
        BranchSideFuncs:
        - "addFirst(java.lang.Object)"
    - Branch String: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:760"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:763"
        BranchSideFuncs:
        - "releaseWriteSuspended(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:762"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:745,1"
      Dst: "[java.util.ArrayDeque].pollFirst()"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:749,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].bytesRealWriteFlowControl(long)"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:752,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].addAndGet(long)"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:753,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:756,1"
      Dst: "[java.util.ArrayDeque].addFirst(java.lang.Object)"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:760,1"
      Dst: "[java.util.ArrayDeque].isEmpty()"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:761,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].releaseWriteSuspended(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:764,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.traffic.TrafficCounter].bytesRealWriteFlowControl(long)"
    functionSourceFile: "io.netty.handler.traffic.TrafficCounter"
    linkageType: ""
    functionLinenumber: 345
    functionLinenumberEnd: 348
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].addAndGet(long)"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.TrafficCounter:346,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].addAndGet(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].toPEM(io.netty.buffer.ByteBufAllocator,boolean,java.security.cert.X509Certificate[])"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 99
    functionDepth: 5
    returnType: "io.netty.handler.ssl.PemEncoded"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "boolean"
    - "java.security.cert.X509Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.lang.Object[],java.lang.String)"
    - "[io.netty.handler.ssl.PemX509Certificate].retain()"
    - "[io.netty.handler.ssl.PemValue].retain()"
    - "[io.netty.handler.ssl.PemPrivateKey].retain()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.util.ReferenceCounted:java.lang.StringBuilder:java.util.Arrays].toString()"
    - "[io.netty.handler.ssl.PemX509Certificate].append(io.netty.buffer.ByteBufAllocator,boolean,io.netty.handler.ssl.PemEncoded,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.ssl.PemX509Certificate].append(io.netty.buffer.ByteBufAllocator,boolean,java.security.cert.X509Certificate,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.ssl.PemValue].<init>(io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.handler.ssl.PemEncoded].retain()"
    - "[java.util.Arrays].toString(java.lang.Object[])"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 50
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.PemX509Certificate:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:74"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:73"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.PemX509Certificate:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:74"
        BranchSideFuncs:
        - "retain()"
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:73"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.PemX509Certificate:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:89"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf,boolean)"
    - Branch String: "io.netty.handler.ssl.PemX509Certificate:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:83"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:82"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.PemX509Certificate:83"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:86"
        BranchSideFuncs:
        - "append(io.netty.buffer.ByteBufAllocator,boolean,io.netty.handler.ssl.PemEncoded,int,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:85"
        BranchSideFuncs:
        - "append(io.netty.buffer.ByteBufAllocator,boolean,java.security.cert.X509Certificate,int,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.ssl.PemX509Certificate:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:90"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:89"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf,boolean)"
    - Branch String: "io.netty.handler.ssl.PemX509Certificate:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:90"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:89"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf,boolean)"
    - Branch String: "io.netty.handler.ssl.PemX509Certificate:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:98"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:97"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.PemX509Certificate:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:98"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:60,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.lang.Object[],java.lang.String)"
    - Src: "io.netty.handler.ssl.PemX509Certificate:70,1"
      Dst: "[io.netty.handler.ssl.PemEncoded].retain()"
    - Src: "io.netty.handler.ssl.PemX509Certificate:80,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.PemX509Certificate:80,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.PemX509Certificate:80,1"
      Dst: "[java.util.Arrays].toString(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.PemX509Certificate:80,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.PemX509Certificate:80,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.PemX509Certificate:84,1"
      Dst: "[io.netty.handler.ssl.PemX509Certificate].append(io.netty.buffer.ByteBufAllocator,boolean,io.netty.handler.ssl.PemEncoded,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.PemX509Certificate:86,1"
      Dst: "[io.netty.handler.ssl.PemX509Certificate].append(io.netty.buffer.ByteBufAllocator,boolean,java.security.cert.X509Certificate,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.PemX509Certificate:90,1"
      Dst: "[io.netty.handler.ssl.PemValue].<init>(io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.ssl.PemX509Certificate:96,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateEncodingException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 7
  - functionName: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.lang.Object[],java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ObjectUtil"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 215
    functionDepth: 1
    returnType: "java.lang.Object[]"
    argCount: 2
    argTypes:
    - "java.lang.Object[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 16
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ObjectUtil:211"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectUtil:214"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.ObjectUtil:213"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectUtil:211,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:212,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.ObjectUtil:212,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:212,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.ObjectUtil:212,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].append(io.netty.buffer.ByteBufAllocator,boolean,io.netty.handler.ssl.PemEncoded,int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 117
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "boolean"
    - "io.netty.handler.ssl.PemEncoded"
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.PemX509Certificate].content()"
    - "[io.netty.handler.ssl.PemPrivateKey].content()"
    - "[io.netty.handler.ssl.PemValue].content()"
    - "[io.netty.handler.ssl.PemX509Certificate].newBuffer(io.netty.buffer.ByteBufAllocator,boolean,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice()"
    - "[io.netty.buffer.SwappedByteBuf].slice()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice()"
    - "[io.netty.buffer.AbstractByteBuf].slice()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice()"
    - "[io.netty.buffer.WrappedByteBuf].slice()"
    - "[io.netty.buffer.UnreleasableByteBuf].slice()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].slice()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 13
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.PemX509Certificate:110"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:114"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "slice()"
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:108,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.ssl.PemX509Certificate:112,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.ssl.PemX509Certificate:112,1"
      Dst: "[io.netty.handler.ssl.PemX509Certificate].newBuffer(io.netty.buffer.ByteBufAllocator,boolean,int)"
    - Src: "io.netty.handler.ssl.PemX509Certificate:115,1"
      Dst: "[io.netty.buffer.ByteBuf].slice()"
    - Src: "io.netty.handler.ssl.PemX509Certificate:115,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].newBuffer(io.netty.buffer.ByteBufAllocator,boolean,int)"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.PemX509Certificate:152"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:151"
        BranchSideFuncs:
        - "directBuffer(int)"
        - "buffer(int)"
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:152,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - Src: "io.netty.handler.ssl.PemX509Certificate:152,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].append(io.netty.buffer.ByteBufAllocator,boolean,java.security.cert.X509Certificate,int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 149
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "boolean"
    - "java.security.cert.X509Certificate"
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.PemX509Certificate].getEncoded()"
    - "[io.netty.handler.ssl.util.LazyX509Certificate].getEncoded()"
    - "[sun.security.x509.X509CertImpl].getEncoded()"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[io.netty.handler.ssl.SslUtils].toBase64(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.ssl.PemX509Certificate].newBuffer(io.netty.buffer.ByteBufAllocator,boolean,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[java.security.cert.Certificate].getEncoded()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 34
    EdgeCount: 91
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.PemX509Certificate:130"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:137"
        BranchSideFuncs:
        - "writeBytes(byte[])"
        - "writeBytes(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:126,1"
      Dst: "[java.security.cert.Certificate].getEncoded()"
    - Src: "io.netty.handler.ssl.PemX509Certificate:126,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.handler.ssl.PemX509Certificate:128,1"
      Dst: "[io.netty.handler.ssl.SslUtils].toBase64(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.PemX509Certificate:135,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.ssl.PemX509Certificate:134,1"
      Dst: "[io.netty.handler.ssl.PemX509Certificate].newBuffer(io.netty.buffer.ByteBufAllocator,boolean,int)"
    - Src: "io.netty.handler.ssl.PemX509Certificate:138,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - Src: "io.netty.handler.ssl.PemX509Certificate:139,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.PemX509Certificate:142,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateEncodingException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslUtils].toBase64(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 470
    functionLinenumberEnd: 475
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,int,int,boolean,io.netty.handler.codec.base64.Base64Dialect,io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 26
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:471,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.ssl.SslUtils:472,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.ssl.SslUtils:471,1"
      Dst: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,int,int,boolean,io.netty.handler.codec.base64.Base64Dialect,io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.handler.ssl.SslUtils:473,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.ssl.SslUtils:473,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemValue].<init>(io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.ssl.PemValue"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 41
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemValue:37,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].<init>()"
    - Src: "io.netty.handler.ssl.PemValue:38,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].valueOf(byte[])"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.ssl.PemX509Certificate"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[io.netty.handler.ssl.PemX509Certificate].valueOf(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:162,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.handler.ssl.PemX509Certificate:162,1"
      Dst: "[io.netty.handler.ssl.PemX509Certificate].valueOf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].valueOf(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.ssl.PemX509Certificate"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.PemX509Certificate].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:172,1"
      Dst: "[io.netty.handler.ssl.PemX509Certificate].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.X509Certificate].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:177,1"
      Dst: "[java.security.cert.X509Certificate].<init>()"
    - Src: "io.netty.handler.ssl.PemX509Certificate:178,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].isSensitive()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].refCnt()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.buffer.EmptyByteBuf].refCnt()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 4
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:189,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].content()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 200
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.PemX509Certificate].refCnt()"
    - "[io.netty.util.IllegalReferenceCountException].<init>(int)"
    functionUses: 15
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.PemX509Certificate:195"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:199"
        BranchSideFuncs:
        - "<init>(int)"
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:198"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:194,1"
      Dst: "[io.netty.handler.ssl.PemX509Certificate].refCnt()"
    - Src: "io.netty.handler.ssl.PemX509Certificate:196,1"
      Dst: "[io.netty.util.IllegalReferenceCountException].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].copy()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.ssl.PemX509Certificate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.ssl.PemX509Certificate].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:204,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.ssl.PemX509Certificate:204,1"
      Dst: "[io.netty.handler.ssl.PemX509Certificate].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.ssl.PemX509Certificate"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.PemX509Certificate].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:219,1"
      Dst: "[io.netty.handler.ssl.PemX509Certificate].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].duplicate()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.ssl.PemX509Certificate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.handler.ssl.PemX509Certificate].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:209,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.ssl.PemX509Certificate:209,1"
      Dst: "[io.netty.handler.ssl.PemX509Certificate].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.ssl.PemX509Certificate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.ssl.PemX509Certificate].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:214,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.ssl.PemX509Certificate:214,1"
      Dst: "[io.netty.handler.ssl.PemX509Certificate].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].retain()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: 223
    functionLinenumberEnd: 226
    functionDepth: 0
    returnType: "io.netty.handler.ssl.PemX509Certificate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 3
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:224,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].retain(int)"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.PemX509Certificate"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:230,1"
      Dst: "[io.netty.buffer.ByteBuf].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].touch()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: 235
    functionLinenumberEnd: 238
    functionDepth: 0
    returnType: "io.netty.handler.ssl.PemX509Certificate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.SwappedByteBuf].touch()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch()"
    - "[io.netty.buffer.EmptyByteBuf].touch()"
    - "[io.netty.buffer.WrappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    - "[io.netty.buffer.UnreleasableByteBuf].touch()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.CompositeByteBuf].touch()"
    - "[io.netty.buffer.ByteBuf].touch()"
    functionUses: 1
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:236,1"
      Dst: "[io.netty.buffer.ByteBuf].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: 241
    functionLinenumberEnd: 244
    functionDepth: 0
    returnType: "io.netty.handler.ssl.PemX509Certificate"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:242,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].release()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 249
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    functionUses: 9
    ICount: 4
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:248,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].release(int)"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: 252
    functionLinenumberEnd: 254
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release(int)"
    - "[io.netty.buffer.WrappedByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release(int)"
    - "[io.netty.buffer.EmptyByteBuf].release(int)"
    - "[io.netty.buffer.SwappedByteBuf].release(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].release(int)"
    - "[io.netty.util.ReferenceCounted].release(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:253,1"
      Dst: "[io.netty.util.ReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getEncoded()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: 257
    functionLinenumberEnd: 259
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:258,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].hasUnsupportedCriticalExtension()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:263,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getCriticalExtensionOIDs()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:268,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getNonCriticalExtensionOIDs()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:273,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getExtensionValue(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:278,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].checkValidity()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:283,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].checkValidity(java.util.Date)"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Date"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:288,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getVersion()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:293,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getSerialNumber()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:298,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getIssuerDN()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.Principal"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:303,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getSubjectDN()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.Principal"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:308,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getNotBefore()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:313,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getNotAfter()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:318,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getTBSCertificate()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:323,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getSignature()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:328,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getSigAlgName()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:333,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getSigAlgOID()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:338,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getSigAlgParams()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:343,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getIssuerUniqueID()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:348,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getSubjectUniqueID()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:353,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getKeyUsage()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:358,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getBasicConstraints()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:363,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].verify(java.security.PublicKey)"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.PublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:368,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].verify(java.security.PublicKey,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.PublicKey"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:373,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].getPublicKey()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.PublicKey"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:378,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: 382
    functionLinenumberEnd: 392
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].equals(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].equals(java.lang.Object)"
    functionUses: 9
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.PemX509Certificate:383"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:386"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:385"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.PemX509Certificate:386"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:390"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.PemX509Certificate:389"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:391,1"
      Dst: "[io.netty.buffer.ByteBuf].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].hashCode()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: 395
    functionLinenumberEnd: 397
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].hashCode()"
    - "[io.netty.buffer.SwappedByteBuf].hashCode()"
    - "[io.netty.buffer.AbstractByteBuf].hashCode()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hashCode()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hashCode()"
    - "[io.netty.buffer.EmptyByteBuf].hashCode()"
    - "[io.netty.buffer.ByteBuf].hashCode()"
    functionUses: 5
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:396,1"
      Dst: "[io.netty.buffer.ByteBuf].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemX509Certificate].toString()"
    functionSourceFile: "io.netty.handler.ssl.PemX509Certificate"
    linkageType: ""
    functionLinenumber: 400
    functionLinenumberEnd: 402
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    functionUses: 21
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemX509Certificate:401,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractServerChannel$DefaultServerUnsafe].<init>(io.netty.channel.AbstractServerChannel)"
    functionSourceFile: "io.netty.channel.AbstractServerChannel$DefaultServerUnsafe"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractServerChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].<init>(io.netty.channel.AbstractChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractServerChannel$DefaultServerUnsafe:76,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].<init>(io.netty.channel.AbstractChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractServerChannel$DefaultServerUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.AbstractServerChannel$DefaultServerUnsafe"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].safeSetFailure(io.netty.channel.ChannelPromise,java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractServerChannel$DefaultServerUnsafe:79,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    - Src: "io.netty.channel.AbstractServerChannel$DefaultServerUnsafe:79,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].safeSetFailure(io.netty.channel.ChannelPromise,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractServerChannel$DefaultServerUnsafe].<init>(io.netty.channel.AbstractServerChannel,io.netty.channel.AbstractServerChannel$1)"
    functionSourceFile: "io.netty.channel.AbstractServerChannel$DefaultServerUnsafe"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.AbstractServerChannel"
    - "io.netty.channel.AbstractServerChannel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractServerChannel$DefaultServerUnsafe].<init>(io.netty.channel.AbstractServerChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractServerChannel$DefaultServerUnsafe:76,1"
      Dst: "[io.netty.channel.AbstractServerChannel$DefaultServerUnsafe].<init>(io.netty.channel.AbstractServerChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "long"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].<init>(java.lang.String,java.nio.charset.Charset,long)"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].setFilename(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].setContentType(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].setContentTransferEncoding(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskFileUpload:56"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:52"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:51"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:52,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].<init>(java.lang.String,java.nio.charset.Charset,long)"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:53,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskFileUpload].setFilename(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:54,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskFileUpload].setContentType(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:55,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskFileUpload].setContentTransferEncoding(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long,java.lang.String,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:62,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].getHttpDataType()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData$HttpDataType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].getFilename()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].setFilename(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:78,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.FileUploadUtil].hashCode(io.netty.handler.codec.http.multipart.FileUpload)"
    functionUses: 6
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:83,1"
      Dst: "[io.netty.handler.codec.http.multipart.FileUploadUtil].hashCode(io.netty.handler.codec.http.multipart.FileUpload)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.FileUploadUtil].hashCode(io.netty.handler.codec.http.multipart.FileUpload)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.FileUploadUtil"
    linkageType: ""
    functionLinenumber: 22
    functionLinenumberEnd: 24
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.FileUpload"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].getName()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - "[java.lang.String].hashCode()"
    - "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    functionUses: 2
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.FileUploadUtil:23,1"
      Dst: "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.FileUploadUtil:23,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.FileUploadUtil].equals(io.netty.handler.codec.http.multipart.FileUpload,io.netty.handler.codec.http.multipart.FileUpload)"
    functionUses: 10
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskFileUpload:88"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:87"
        BranchSideFuncs:
        - "equals(io.netty.handler.codec.http.multipart.FileUpload,io.netty.handler.codec.http.multipart.FileUpload)"
    - Branch String: "io.netty.handler.codec.http.multipart.DiskFileUpload:88"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:87"
        BranchSideFuncs:
        - "equals(io.netty.handler.codec.http.multipart.FileUpload,io.netty.handler.codec.http.multipart.FileUpload)"
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:88,1"
      Dst: "[io.netty.handler.codec.http.multipart.FileUploadUtil].equals(io.netty.handler.codec.http.multipart.FileUpload,io.netty.handler.codec.http.multipart.FileUpload)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.multipart.FileUploadUtil].equals(io.netty.handler.codec.http.multipart.FileUpload,io.netty.handler.codec.http.multipart.FileUpload)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.FileUploadUtil"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.multipart.FileUpload"
    - "io.netty.handler.codec.http.multipart.FileUpload"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].getName()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    functionUses: 2
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.FileUploadUtil:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.FileUploadUtil:27,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].getHttpDataType()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getHttpDataType()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.ClassCastException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].compareTo(io.netty.handler.codec.http.multipart.FileUpload)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskFileUpload:93"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:97"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:94,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:94,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:94,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskFileUpload].getHttpDataType()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:94,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:95,1"
      Dst: "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getHttpDataType()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:95,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:95,1"
      Dst: "[java.lang.ClassCastException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:97,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskFileUpload].compareTo(io.netty.handler.codec.http.multipart.FileUpload)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].compareTo(io.netty.handler.codec.http.multipart.FileUpload)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.FileUpload"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.FileUploadUtil].compareTo(io.netty.handler.codec.http.multipart.FileUpload,io.netty.handler.codec.http.multipart.FileUpload)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:101,1"
      Dst: "[io.netty.handler.codec.http.multipart.FileUploadUtil].compareTo(io.netty.handler.codec.http.multipart.FileUpload,io.netty.handler.codec.http.multipart.FileUpload)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.FileUploadUtil].compareTo(io.netty.handler.codec.http.multipart.FileUpload,io.netty.handler.codec.http.multipart.FileUpload)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.FileUploadUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.multipart.FileUpload"
    - "io.netty.handler.codec.http.multipart.FileUpload"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - "[java.lang.String].compareToIgnoreCase(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.FileUploadUtil:31,1"
      Dst: "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.FileUploadUtil:31,1"
      Dst: "[java.lang.String].compareToIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].setContentType(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:106,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].getContentType()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].getContentTransferEncoding()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].setContentTransferEncoding(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].toString()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 142
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].getFile()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getCharset()"
    - "[java.nio.charset.Charset].name()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(long)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].length()"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].isCompleted()"
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].isInMemory()"
    - "[java.io.File].getAbsolutePath()"
    functionUses: 20
    ICount: 68
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskFileUpload:137"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:133"
        BranchSideFuncs:
        - "isInMemory()"
        - "append(boolean)"
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
        - "toString()"
        - "append(long)"
        - "length()"
        - "append(char)"
        - "getCharset()"
        - "name()"
        - "isCompleted()"
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:132"
        BranchSideFuncs:
        - "append(java.lang.Object)"
        - "append(char)"
        - "getCharset()"
        - "name()"
        - "<init>()"
        - "getName()"
    - Branch String: "io.netty.handler.codec.http.multipart.DiskFileUpload:140"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:141"
        BranchSideFuncs:
        - "getAbsolutePath()"
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:140"
        BranchSideFuncs:
        - "getAbsolutePath()"
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:128,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].getFile()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:133,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:133,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:133,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:134,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:137,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getCharset()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:137,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:137,1"
      Dst: "[java.nio.charset.Charset].name()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:137,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:138,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].length()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:138,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:139,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].isCompleted()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:139,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:140,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].isInMemory()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:141,1"
      Dst: "[java.io.File].getAbsolutePath()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].deleteOnExit()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].getBaseDirectory()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].getDiskFilename()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].getPostfix()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].getPrefix()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].copy()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskFileUpload:172"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:170"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:171,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:172,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:172,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskFileUpload].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].getFilename()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].getContentType()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].getContentTransferEncoding()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getCharset()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].setContent(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].isCompleted()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].setCompleted(boolean)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskFileUpload:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:212"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:204,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:204,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskFileUpload].getFilename()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:204,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskFileUpload].getContentType()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:204,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskFileUpload].getContentTransferEncoding()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:204,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getCharset()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:204,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long,java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:208,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].setContent(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:210,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:213,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].isCompleted()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:213,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].setCompleted(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].duplicate()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskFileUpload:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:177,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:178,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:178,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskFileUpload].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskFileUpload:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:197"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:196"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.DiskFileUpload:192"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:185"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:184"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.DiskFileUpload:192"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:195"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskFileUpload:194"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:183,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:185,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:188,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskFileUpload].replace(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:193,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:219,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].retain()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 227
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].retain()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:225,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].touch()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 233
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].touch()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:231,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: 236
    functionLinenumberEnd: 239
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].touch(java.lang.Object)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:237,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskFileUpload].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskFileUpload:31,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskFileUpload].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexHandler$3].<init>(io.netty.handler.codec.http2.Http2MultiplexHandler,io.netty.handler.codec.http2.Http2GoAwayFrame,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexHandler$3"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 308
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2MultiplexHandler"
    - "io.netty.handler.codec.http2.Http2GoAwayFrame"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler$3:307,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexHandler$3].visit(io.netty.handler.codec.http2.Http2FrameStream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexHandler$3"
    linkageType: ""
    functionLinenumber: 309
    functionLinenumberEnd: 317
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].id()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil].isStreamIdValid(int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].lastStreamId()"
    - "[io.netty.channel.DefaultChannelPipeline].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].retainedDuplicate()"
    - "[io.netty.handler.codec.http2.Http2FrameStream].id()"
    - "[io.netty.handler.codec.http2.Http2GoAwayFrame].lastStreamId()"
    - "[io.netty.handler.codec.http2.Http2GoAwayFrame].retainedDuplicate()"
    - "[io.netty.channel.ChannelPipeline].fireUserEventTriggered(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexHandler$3:311"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexHandler$3:316"
        BranchSideFuncs:
        - "pipeline()"
        - "fireUserEventTriggered(java.lang.Object)"
        - "retainedDuplicate()"
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexHandler$3:315"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexHandler$3:311"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexHandler$3:316"
        BranchSideFuncs:
        - "pipeline()"
        - "fireUserEventTriggered(java.lang.Object)"
        - "retainedDuplicate()"
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexHandler$3:315"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler$3:310,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameStream].id()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler$3:311,1"
      Dst: "[io.netty.handler.codec.http2.Http2GoAwayFrame].lastStreamId()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler$3:311,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].isStreamIdValid(int,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler$3:314,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler$3:314,1"
      Dst: "[io.netty.handler.codec.http2.Http2GoAwayFrame].retainedDuplicate()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler$3:314,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireUserEventTriggered(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil].isStreamIdValid(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil].isStreamIdValid(int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:155"
        BranchSideFuncs:
        - "isStreamIdValid(int)"
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:155"
        BranchSideFuncs:
        - "isStreamIdValid(int)"
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:155"
        BranchSideFuncs:
        - "isStreamIdValid(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:156,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].isStreamIdValid(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil].isStreamIdValid(int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil:152"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:151"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].<init>(io.netty.handler.ssl.OpenSslEngineMap)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslEngineMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$1].<init>(io.netty.handler.ssl.OpenSslSessionCache)"
    - "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:77,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:54,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$1].<init>(io.netty.handler.ssl.OpenSslSessionCache)"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:70,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].setSessionTimeout(int)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].getAndSet(int)"
    - "[io.netty.handler.ssl.OpenSslSessionCache].clear()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:83"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:82,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].getAndSet(int)"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:86,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].clear()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: 270
    functionLinenumberEnd: 280
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.LongObjectHashMap].entrySet()"
    - "[java.security.Provider].entrySet()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].entrySet()"
    - "[java.util.concurrent.ConcurrentHashMap].entrySet()"
    - "[io.netty.util.collection.ShortObjectHashMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].entrySet()"
    - "[java.util.TreeMap].entrySet()"
    - "[java.util.stream.Collectors$Partition].entrySet()"
    - "[java.util.Properties].entrySet()"
    - "[java.util.WeakHashMap].entrySet()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[io.netty.util.collection.IntObjectHashMap].entrySet()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].entrySet()"
    - "[java.util.jar.Attributes].entrySet()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].entrySet()"
    - "[java.util.IdentityHashMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.util.collection.ByteObjectHashMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].entrySet()"
    - "[java.util.HashMap].entrySet()"
    - "[io.netty.util.collection.CharObjectHashMap].entrySet()"
    - "[java.util.Hashtable].entrySet()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].remove()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].remove()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].remove()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].remove()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].remove()"
    - "[io.netty.channel.nio.NioEventLoop$7].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].remove()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].remove()"
    - "[io.netty.util.internal.ReadOnlyIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].remove()"
    - "[io.netty.channel.group.CombinedIterator].remove()"
    - "[java.util.Iterator].remove()"
    - "[io.netty.handler.ssl.OpenSslSessionCache].notifyRemovalAndFree(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    functionUses: 2
    ICount: 14
    EdgeCount: 230
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:272"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:279"
        BranchSideFuncs:
        - "getValue()"
        - "next()"
        - "remove()"
        - "notifyRemovalAndFree(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:271,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:271,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:272,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:273,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:273,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:274,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:277,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].notifyRemovalAndFree(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].notifyRemovalAndFree(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: 231
    functionLinenumberEnd: 235
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslClientSessionCache].sessionRemoved(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    - "[io.netty.handler.ssl.OpenSslSessionCache].sessionRemoved(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].free()"
    functionUses: 2
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:232,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].sessionRemoved(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:233,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].free()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].sessionRemoved(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].free()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 327
    functionLinenumberEnd: 331
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].close()"
    - "[io.netty.internal.tcnative.SSLSession].free(long)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:328,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].close()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:329,1"
      Dst: "[io.netty.internal.tcnative.SSLSession].free(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].close()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 332
    functionLinenumberEnd: 340
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].invalidate()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].close(java.lang.Object)"
    - "[io.netty.util.ResourceLeakTracker].close(java.lang.Object)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:333"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:334"
        BranchSideFuncs:
        - "invalidate()"
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:333"
        BranchSideFuncs:
        - "invalidate()"
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:333"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:334"
        BranchSideFuncs:
        - "invalidate()"
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:333"
        BranchSideFuncs:
        - "invalidate()"
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:336"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:339"
        BranchSideFuncs:
        - "close(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:338"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:333,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:335,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].invalidate()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:337,1"
      Dst: "[io.netty.util.ResourceLeakTracker].close(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].invalidate()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 391
    functionLinenumberEnd: 394
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].getSessionTimeout()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].get()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:91,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].sessionCreated(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].setSessionCacheSize(int)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].getAndSet(int)"
    - "[io.netty.handler.ssl.OpenSslSessionCache].clear()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:114"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:112,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].getAndSet(int)"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:115,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].getSessionCacheSize()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].get()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:120,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].expungeInvalidSessions()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].isEmpty()"
    - "[java.lang.System].currentTimeMillis()"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].isValid(long)"
    - "[java.util.Iterator].remove()"
    - "[io.netty.handler.ssl.OpenSslSessionCache].notifyRemovalAndFree(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:127"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:126"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:129"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:141"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:140"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:137"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:124,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:127,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:128,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:128,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:129,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:130,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:130,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:134,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].isValid(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:137,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:139,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].notifyRemovalAndFree(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].isValid(long)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 346
    functionLinenumberEnd: 348
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:347"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:346"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:347"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:346"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].sessionCreated(long,long)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslEngineMap].get(long)"
    - "[javax.net.ssl.SSLEngine].getPeerHost()"
    - "[javax.net.ssl.SSLEngine].getPeerPort()"
    - "[io.netty.handler.ssl.OpenSslSessionCache].getSessionTimeout()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].<init>(long,java.lang.String,int,long)"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].sessionId()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setSessionId(io.netty.handler.ssl.OpenSslSessionId)"
    - "[io.netty.handler.ssl.OpenSslSessionCache].expungeInvalidSessions()"
    - "[io.netty.handler.ssl.OpenSslSessionCache].sessionCreated(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].close()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslSessionCache].notifyRemovalAndFree(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:146"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:149"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:161"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:160"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:161"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:167"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:172"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:171"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:145,1"
      Dst: "[io.netty.handler.ssl.OpenSslEngineMap].get(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:150,1"
      Dst: "[javax.net.ssl.SSLEngine].getPeerHost()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:150,1"
      Dst: "[javax.net.ssl.SSLEngine].getPeerPort()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:151,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].getSessionTimeout()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:151,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].<init>(long,java.lang.String,int,long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:152,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].sessionId()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:152,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setSessionId(io.netty.handler.ssl.OpenSslSessionId)"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:158,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].expungeInvalidSessions()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:161,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].sessionCreated(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:164,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].close()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:168,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:170,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].notifyRemovalAndFree(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].<init>(long,java.lang.String,int,long)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "java.lang.String"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].currentTimeMillis()"
    - "[io.netty.internal.tcnative.SSLSession].getSessionId(long)"
    - "[io.netty.handler.ssl.OpenSslSessionId].<init>(byte[])"
    - "[io.netty.util.ResourceLeakDetector].track(java.lang.Object)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:298,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:293,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:303,1"
      Dst: "[io.netty.internal.tcnative.SSLSession].getSessionId(long)"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:303,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionId].<init>(byte[])"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:304,1"
      Dst: "[io.netty.util.ResourceLeakDetector].track(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionId].<init>(byte[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionId"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Arrays].hashCode(byte[])"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionId:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslSessionId:36,1"
      Dst: "[java.util.Arrays].hashCode(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].sessionId()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 342
    functionLinenumberEnd: 344
    functionDepth: 0
    returnType: "io.netty.handler.ssl.OpenSslSessionId"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setSessionId(io.netty.handler.ssl.OpenSslSessionId)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslSessionId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslSession].setSessionId(io.netty.handler.ssl.OpenSslSessionId)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2317,1"
      Dst: "[io.netty.handler.ssl.OpenSslSession].setSessionId(io.netty.handler.ssl.OpenSslSessionId)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].getSession(long,byte[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslSessionId].<init>(byte[])"
    - "[java.util.Map].get(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].isValid()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].upRef()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].sessionId()"
    - "[io.netty.handler.ssl.OpenSslSessionCache].removeSessionWithId(io.netty.handler.ssl.OpenSslSessionId)"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].shouldBeSingleUse()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].updateLastAccessedTime()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].session()"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:182"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:188"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:187"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:194"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:199"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:200"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:204"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:178,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionId].<init>(byte[])"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:181,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:188,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].isValid()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:193,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].upRef()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:195,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].sessionId()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:195,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].removeSessionWithId(io.netty.handler.ssl.OpenSslSessionId)"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:200,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].shouldBeSingleUse()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:206,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].updateLastAccessedTime()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:207,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].session()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].isValid()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 396
    functionLinenumberEnd: 398
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].currentTimeMillis()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].isValid(long)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:397,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:397,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].isValid(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].upRef()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.internal.tcnative.SSLSession].upRef(long)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:323"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:324"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:323"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:323"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:324"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:323,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:324,1"
      Dst: "[io.netty.internal.tcnative.SSLSession].upRef(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].removeSessionWithId(io.netty.handler.ssl.OpenSslSessionId)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: 217
    functionLinenumberEnd: 223
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslSessionId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].remove(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].remove(java.lang.Object)"
    - "[java.util.Hashtable].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].remove(java.lang.Object)"
    - "[java.util.IdentityHashMap].remove(java.lang.Object)"
    - "[java.util.AbstractMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[java.util.Properties].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].remove(java.lang.Object)"
    - "[java.util.WeakHashMap].remove(java.lang.Object)"
    - "[java.util.jar.Attributes].remove(java.lang.Object)"
    - "[java.util.TreeMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].remove(java.lang.Object)"
    - "[java.security.Provider].remove(java.lang.Object)"
    - "[java.util.HashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].remove(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslSessionCache].notifyRemovalAndFree(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:219"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:222"
        BranchSideFuncs:
        - "notifyRemovalAndFree(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:218,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:220,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].notifyRemovalAndFree(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].shouldBeSingleUse()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 312
    functionLinenumberEnd: 315
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.internal.tcnative.SSLSession].shouldBeSingleUse(long)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:313"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:314"
        BranchSideFuncs:
        - "shouldBeSingleUse(long)"
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:313"
        BranchSideFuncs:
        - "shouldBeSingleUse(long)"
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:313"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:314"
        BranchSideFuncs:
        - "shouldBeSingleUse(long)"
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:313"
        BranchSideFuncs:
        - "shouldBeSingleUse(long)"
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:313,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:314,1"
      Dst: "[io.netty.internal.tcnative.SSLSession].shouldBeSingleUse(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].updateLastAccessedTime()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 381
    functionLinenumberEnd: 384
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].currentTimeMillis()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:382,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].session()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 317
    functionLinenumberEnd: 320
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:318"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:319"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:318"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:318"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:319"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:318"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:318,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].setSession(long,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 213
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].containsSessionWithId(io.netty.handler.ssl.OpenSslSessionId)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslSessionId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:228,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].getSession(io.netty.handler.ssl.OpenSslSessionId)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.ssl.OpenSslSession"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslSessionId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].isValid()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].sessionId()"
    - "[io.netty.handler.ssl.OpenSslSessionCache].removeSessionWithId(io.netty.handler.ssl.OpenSslSessionId)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:241"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:246"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:241"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:246"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:240,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:241,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].isValid()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:244,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].sessionId()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:244,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].removeSessionWithId(io.netty.handler.ssl.OpenSslSessionId)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].getIds()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    - "[java.util.ArrayList].<init>(int)"
    - "[javax.net.ssl.SSLSession].isValid()"
    - "[io.netty.handler.ssl.OpenSslSession].sessionId()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:259"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:264"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:263"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache:260"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:259"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache:258"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:256,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:256,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:258,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:260,1"
      Dst: "[javax.net.ssl.SSLSession].isValid()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:261,1"
      Dst: "[io.netty.handler.ssl.OpenSslSession].sessionId()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache:261,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache].access$000(io.netty.handler.ssl.OpenSslSessionCache)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.concurrent.atomic.AtomicInteger"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslSessionCache"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ExtendedClosedChannelException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.ExtendedClosedChannelException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.ClosedChannelException].<init>()"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ExtendedClosedChannelException:23"
      Branch Sides:
      - BranchSide: "io.netty.channel.ExtendedClosedChannelException:26"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ExtendedClosedChannelException:25"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ExtendedClosedChannelException:22,1"
      Dst: "[java.nio.channels.ClosedChannelException].<init>()"
    - Src: "io.netty.channel.ExtendedClosedChannelException:24,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ExtendedClosedChannelException].fillInStackTrace()"
    functionSourceFile: "io.netty.channel.ExtendedClosedChannelException"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 59
    functionDepth: 3
    returnType: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].<init>(int)"
    functionUses: 1
    ICount: 25
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:58,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:66,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 73
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 10
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:69,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:70,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].byteValue()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].isSuccess()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:78"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].hashCode()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:93"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:92"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:93"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:92"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].compareTo(io.netty.handler.codec.socksx.v5.Socks5CommandStatus)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.socksx.v5.Socks5CommandStatus"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].toString()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 19
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:107"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "toString()"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:106"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:105,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:105,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:105,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:105,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:105,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].compareTo(io.netty.handler.codec.socksx.v5.Socks5CommandStatus)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandStatus:24,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].compareTo(io.netty.handler.codec.socksx.v5.Socks5CommandStatus)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpResponse].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].<init>(int,java.util.List)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpResponse:36,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpResponse].<init>(int,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpResponse].<init>(int,java.lang.CharSequence[])"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.CharSequence[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.SmtpUtils].toUnmodifiableList(java.lang.CharSequence[])"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].<init>(int,java.util.List)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpResponse:43,1"
      Dst: "[io.netty.handler.codec.smtp.SmtpUtils].toUnmodifiableList(java.lang.CharSequence[])"
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpResponse:43,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpResponse].<init>(int,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpResponse].<init>(int,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpResponse"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.Collections].emptyList()"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.smtp.DefaultSmtpResponse:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.DefaultSmtpResponse:48"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.smtp.DefaultSmtpResponse:47"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.smtp.DefaultSmtpResponse:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.DefaultSmtpResponse:50"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.smtp.DefaultSmtpResponse:49"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.DefaultSmtpResponse:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.DefaultSmtpResponse:54"
        BranchSideFuncs:
        - "emptyList()"
      - BranchSide: "io.netty.handler.codec.smtp.DefaultSmtpResponse:53"
        BranchSideFuncs:
        - "unmodifiableList(java.util.List)"
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpResponse:46,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpResponse:48,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpResponse:52,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpResponse:54,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpResponse].code()"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpResponse"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpResponse].details()"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpResponse"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpResponse].hashCode()"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpResponse"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jaz.Zer].hashCode()"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].hashCode()"
    - "[java.util.List].hashCode()"
    functionUses: 5
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpResponse:70,1"
      Dst: "[java.util.List].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpResponse].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpResponse"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 87
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].code()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].details()"
    - "[jaz.Zer].equals(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].equals(java.lang.Object)"
    - "[java.util.List].equals(java.lang.Object)"
    functionUses: 9
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.smtp.DefaultSmtpResponse:75"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.DefaultSmtpResponse:79"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.DefaultSmtpResponse:78"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.DefaultSmtpResponse:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.DefaultSmtpResponse:83"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.DefaultSmtpResponse:82"
        BranchSideFuncs:
        - "code()"
    - Branch String: "io.netty.handler.codec.smtp.DefaultSmtpResponse:85"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.DefaultSmtpResponse:83"
        BranchSideFuncs:
        - "details()"
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.smtp.DefaultSmtpResponse:82"
        BranchSideFuncs:
        - "code()"
    - Branch String: "io.netty.handler.codec.smtp.DefaultSmtpResponse:86"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.DefaultSmtpResponse:82"
        BranchSideFuncs:
        - "code()"
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpResponse:85,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpResponse].code()"
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpResponse:86,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpResponse].details()"
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpResponse:86,1"
      Dst: "[java.util.List].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpResponse].toString()"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpResponse"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 19
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpResponse:91,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpResponse:91,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpResponse:91,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpResponse:91,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpResponse:91,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpResponse:91,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoder:37,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoder].encode(io.netty.channel.ChannelHandlerContext,java.io.Serializable,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoder"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 63
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.io.Serializable"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBufOutputStream].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBufOutputStream].write(byte[])"
    - "[io.netty.handler.codec.serialization.CompactObjectOutputStream].<init>(java.io.OutputStream)"
    - "[java.io.ObjectOutputStream].writeObject(java.lang.Object)"
    - "[java.io.ObjectOutputStream].flush()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:java.io.ObjectOutputStream].close()"
    - "[io.netty.buffer.ByteBufOutputStream].close()"
    - "[io.netty.buffer.FixedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setInt(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[java.io.ObjectOutputStream].close()"
    - "[io.netty.buffer.ByteBuf].setInt(int,int)"
    functionUses: 1
    ICount: 31
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.serialization.ObjectEncoder:52"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.serialization.ObjectEncoder:55"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.serialization.ObjectEncoder:54"
        BranchSideFuncs:
        - "close()"
    - Branch String: "io.netty.handler.codec.serialization.ObjectEncoder:52"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.serialization.ObjectEncoder:55"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.serialization.ObjectEncoder:54"
        BranchSideFuncs:
        - "close()"
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoder:42,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoder:44,1"
      Dst: "[io.netty.buffer.ByteBufOutputStream].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoder:47,1"
      Dst: "[io.netty.buffer.ByteBufOutputStream].write(byte[])"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoder:48,1"
      Dst: "[io.netty.handler.codec.serialization.CompactObjectOutputStream].<init>(java.io.OutputStream)"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoder:49,1"
      Dst: "[java.io.ObjectOutputStream].writeObject(java.lang.Object)"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoder:50,1"
      Dst: "[java.io.ObjectOutputStream].flush()"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoder:53,1"
      Dst: "[java.io.ObjectOutputStream].close()"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoder:55,1"
      Dst: "[io.netty.buffer.ByteBufOutputStream].close()"
    - Src: "io.netty.handler.codec.serialization.ObjectEncoder:61,1"
      Dst: "[io.netty.buffer.ByteBuf].setInt(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufOutputStream].write(byte[])"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufOutputStream:72,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufOutputStream].close()"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 168
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].close()"
    - "[java.io.FilterOutputStream].close()"
    functionUses: 8
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufOutputStream:155"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufOutputStream:158"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufOutputStream:157"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufOutputStream:163"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufOutputStream:167"
        BranchSideFuncs:
        - "close()"
      - BranchSide: "io.netty.buffer.ByteBufOutputStream:166"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufOutputStream:163"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufOutputStream:166"
        BranchSideFuncs:
        - "close()"
      - BranchSide: "io.netty.buffer.ByteBufOutputStream:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufOutputStream:161,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "io.netty.buffer.ByteBufOutputStream:164,1"
      Dst: "[java.io.FilterOutputStream].close()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.serialization.ObjectEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectEncoder"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.serialization.ObjectEncoder].encode(io.netty.channel.ChannelHandlerContext,java.io.Serializable,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectEncoder:36,1"
      Dst: "[io.netty.handler.codec.serialization.ObjectEncoder].encode(io.netty.channel.ChannelHandlerContext,java.io.Serializable,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].<init>(io.netty.channel.epoll.AbstractEpollStreamChannel)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.AbstractEpollStreamChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$2:227,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$2"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 233
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].access$000(io.netty.channel.epoll.AbstractEpollStreamChannel)"
    functionUses: 49
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$2:231,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].access$000(io.netty.channel.epoll.AbstractEpollStreamChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder$1].<init>(io.netty.handler.codec.dns.DatagramDnsResponseDecoder,io.netty.handler.codec.dns.DnsRecordDecoder)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder$1"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DatagramDnsResponseDecoder"
    - "io.netty.handler.codec.dns.DnsRecordDecoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsResponseDecoder].<init>(io.netty.handler.codec.dns.DnsRecordDecoder)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder$1:48,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponseDecoder].<init>(io.netty.handler.codec.dns.DnsRecordDecoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder$1].newResponse(java.net.InetSocketAddress,java.net.InetSocketAddress,int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder$1"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 4
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 5
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.InetSocketAddress"
    - "int"
    - "io.netty.handler.codec.dns.DnsOpCode"
    - "io.netty.handler.codec.dns.DnsResponseCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder$1:52,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponse].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 79
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.InetSocketAddress"
    - "int"
    - "io.netty.handler.codec.dns.DnsOpCode"
    - "io.netty.handler.codec.dns.DnsResponseCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].<init>(int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsResponse:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:76"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:75"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsResponse:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:76"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:70,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].<init>(int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:73,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].<init>(int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.handler.codec.dns.DnsOpCode"
    - "io.netty.handler.codec.dns.DnsResponseCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].<init>(int,io.netty.handler.codec.dns.DnsOpCode)"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].setCode(io.netty.handler.codec.dns.DnsResponseCode)"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].setCode(io.netty.handler.codec.dns.DnsResponseCode)"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:61,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].<init>(int,io.netty.handler.codec.dns.DnsOpCode)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:62,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].setCode(io.netty.handler.codec.dns.DnsResponseCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].setCode(io.netty.handler.codec.dns.DnsResponseCode)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsResponseCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:105,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder$1].newResponse(java.net.SocketAddress,java.net.SocketAddress,int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder$1"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 5
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 5
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "int"
    - "io.netty.handler.codec.dns.DnsOpCode"
    - "io.netty.handler.codec.dns.DnsResponseCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder$1].newResponse(java.net.InetSocketAddress,java.net.InetSocketAddress,int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder$1:48,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder$1].newResponse(java.net.InetSocketAddress,java.net.InetSocketAddress,int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator].<init>(int,io.netty.handler.codec.http.HttpHeaders,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator"
    linkageType: ""
    functionLinenumber: 667
    functionLinenumberEnd: 673
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:671"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:668"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:667"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:668,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator].translateHeaders(java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator"
    linkageType: ""
    functionLinenumber: 675
    functionLinenumberEnd: 709
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].iterator()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.buffer.CompositeByteBuf].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.channel.pool.AbstractChannelPoolMap].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.channel.DefaultChannelPipeline].iterator()"
    - "[io.netty.channel.group.ChannelGroupException].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$1].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$1].iterator()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$1].iterator()"
    - "[io.netty.handler.codec.EmptyHeaders].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.buffer.PoolChunkList].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    - "[java.util.AbstractMap$SimpleEntry].getKey()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.util.AsciiString].of(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].isPseudoHeader(java.lang.CharSequence)"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.util.AsciiString].equals(java.lang.Object)"
    - "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - "[io.netty.util.internal.InternalThreadLocalMap].stringBuilder()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 1
    ICount: 54
    EdgeCount: 266
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:678"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:705"
        BranchSideFuncs:
        - "hasNext()"
        - "getValue()"
        - "next()"
        - "get(java.lang.Object)"
        - "iterator()"
        - "getKey()"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:704"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:682"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:684"
        BranchSideFuncs:
        - "of(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:683"
        BranchSideFuncs:
        - "isPseudoHeader(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:684"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:703"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:687"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:688"
        BranchSideFuncs:
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:687"
        BranchSideFuncs:
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:687"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:691"
        BranchSideFuncs:
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:690"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:691"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:700"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:694"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:696"
        BranchSideFuncs:
        - "stringBuilder()"
        - "get()"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:695"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:696"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:699"
        BranchSideFuncs:
        - "append(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:698"
        BranchSideFuncs:
        - "append(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:705"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:708"
        BranchSideFuncs:
        - "add(java.lang.CharSequence,java.lang.Object)"
        - "toString()"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:707"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:678,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:678,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:678,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:679,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:680,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:681,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:683,1"
      Dst: "[io.netty.util.AsciiString].of(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:683,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:684,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].isPseudoHeader(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:687,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:687,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:688,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:691,1"
      Dst: "[io.netty.util.AsciiString].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:695,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:695,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].stringBuilder()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:696,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:697,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:699,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator:706,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 167
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.HashingStrategy$1].hashCode(java.lang.Object)"
    - "[io.netty.util.AsciiString$1].hashCode(java.lang.Object)"
    - "[io.netty.util.AsciiString$2].hashCode(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].index(int)"
    - "[io.netty.util.AsciiString$2].equals(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.HashingStrategy$1].equals(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.AsciiString$1].equals(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.HashingStrategy].hashCode(java.lang.Object)"
    - "[io.netty.util.HashingStrategy].equals(java.lang.Object,java.lang.Object)"
    functionUses: 16
    ICount: 20
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders:159"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:166"
        BranchSideFuncs:
        - "equals(java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:165"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders:160"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:164"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:163"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders:160"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:164"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:152,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.DefaultHeaders:154,1"
      Dst: "[io.netty.util.HashingStrategy].hashCode(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:155,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].index(int)"
    - Src: "io.netty.handler.codec.DefaultHeaders:160,1"
      Dst: "[io.netty.util.HashingStrategy].equals(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.DefaultHeaders].index(int)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 1031
    functionLinenumberEnd: 1033
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].of(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1390
    functionLinenumberEnd: 1392
    functionDepth: 4
    returnType: "io.netty.util.AsciiString"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1391"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1390"
        BranchSideFuncs:
        - "<init>(java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.util.AsciiString:1391,1"
      Dst: "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].isPseudoHeader(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:107,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 230
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    functionUses: 7
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders:229"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:228"
        BranchSideFuncs:
        - "get(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:229,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].stringBuilder()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 232
    functionDepth: 0
    returnType: "java.lang.StringBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].capacity()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].trimToSize()"
    functionUses: 3
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:223"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:226"
        BranchSideFuncs:
        - "<init>(int)"
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:225"
        BranchSideFuncs:
        - "capacity()"
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:226"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:230"
        BranchSideFuncs:
        - "trimToSize()"
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:229"
        BranchSideFuncs:
        - "setLength(int)"
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:224,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:226,1"
      Dst: "[java.lang.StringBuilder].capacity()"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:227,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:228,1"
      Dst: "[java.lang.StringBuilder].trimToSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder].<init>(io.netty.handler.codec.http.HttpServerCodec,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http.HttpServerCodec"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpRequestDecoder].<init>(int,int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder:110,1"
      Dst: "[io.netty.handler.codec.http.HttpRequestDecoder].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder].<init>(io.netty.handler.codec.http.HttpServerCodec,int,int,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http.HttpServerCodec"
    - "int"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpRequestDecoder].<init>(int,int,int,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder:115,1"
      Dst: "[io.netty.handler.codec.http.HttpRequestDecoder].<init>(int,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder].<init>(io.netty.handler.codec.http.HttpServerCodec,int,int,int,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.handler.codec.http.HttpServerCodec"
    - "int"
    - "int"
    - "int"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpRequestDecoder].<init>(int,int,int,boolean,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder:121,1"
      Dst: "[io.netty.handler.codec.http.HttpRequestDecoder].<init>(int,int,int,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder].<init>(io.netty.handler.codec.http.HttpServerCodec,int,int,int,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "io.netty.handler.codec.http.HttpServerCodec"
    - "int"
    - "int"
    - "int"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpRequestDecoder].<init>(int,int,int,boolean,int,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder:126,1"
      Dst: "[io.netty.handler.codec.http.HttpRequestDecoder].<init>(int,int,int,boolean,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder].<init>(io.netty.handler.codec.http.HttpServerCodec,int,int,int,boolean,int,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "io.netty.handler.codec.http.HttpServerCodec"
    - "int"
    - "int"
    - "int"
    - "boolean"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpRequestDecoder].<init>(int,int,int,boolean,int,boolean,boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder:133,1"
      Dst: "[io.netty.handler.codec.http.HttpRequestDecoder].<init>(int,int,int,boolean,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 149
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.http.HttpObjectDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.handler.codec.http.HttpServerCodec].access$100(io.netty.handler.codec.http.HttpServerCodec)"
    - "[java.util.concurrent.ConcurrentLinkedQueue].add(java.lang.Object)"
    - "[java.util.AbstractQueue].add(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].add(java.lang.Object)"
    - "[java.util.ArrayDeque].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].method()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].method()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].method()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[io.netty.handler.codec.http.HttpRequest].method()"
    - "[java.util.Queue].add(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder:142"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder:148"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder:147"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder:139"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "method()"
        - "access$100(io.netty.handler.codec.http.HttpServerCodec)"
      - BranchSide: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder:138"
        BranchSideFuncs:
        - "decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
        - "size()"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder:139,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder:140,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    - Src: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder:143,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder:145,1"
      Dst: "[io.netty.handler.codec.http.HttpServerCodec].access$100(io.netty.handler.codec.http.HttpServerCodec)"
    - Src: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder:145,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].method()"
    - Src: "io.netty.handler.codec.http.HttpServerCodec$HttpServerRequestDecoder:145,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpServerCodec].access$100(io.netty.handler.codec.http.HttpServerCodec)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerCodec"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "java.util.Queue"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpServerCodec"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannel].<init>()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].newSocketStream()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    - "[java.util.Collections].emptyList()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].<init>(io.netty.channel.epoll.EpollSocketChannel)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannel:50,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].newSocketStream()"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:50,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:47,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:51,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].<init>(io.netty.channel.epoll.EpollSocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannel].<init>(io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].newSocketStream(io.netty.channel.socket.InternetProtocolFamily)"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    - "[java.util.Collections].emptyList()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].<init>(io.netty.channel.epoll.EpollSocketChannel)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannel:55,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].newSocketStream(io.netty.channel.socket.InternetProtocolFamily)"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:55,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:47,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:56,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].<init>(io.netty.channel.epoll.EpollSocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannel].<init>(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(int)"
    - "[java.util.Collections].emptyList()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].<init>(io.netty.channel.epoll.EpollSocketChannel)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannel:60,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:47,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:61,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].<init>(io.netty.channel.epoll.EpollSocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.epoll.LinuxSocket"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    - "[java.util.Collections].emptyList()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].<init>(io.netty.channel.epoll.EpollSocketChannel)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannel:65,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:47,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:66,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].<init>(io.netty.channel.epoll.EpollSocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannel].<init>(io.netty.channel.Channel,io.netty.channel.epoll.LinuxSocket,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannel"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 77
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.channel.epoll.LinuxSocket"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptyList()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(io.netty.channel.Channel,io.netty.channel.epoll.LinuxSocket,java.net.SocketAddress)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].<init>(io.netty.channel.epoll.EpollSocketChannel)"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].tcpMd5SigAddresses()"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollSocketChannel:73"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannel:76"
        BranchSideFuncs:
        - "tcpMd5SigAddresses()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannel:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannel:70,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].<init>(io.netty.channel.Channel,io.netty.channel.epoll.LinuxSocket,java.net.SocketAddress)"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:47,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:71,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].<init>(io.netty.channel.epoll.EpollSocketChannel)"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:74,1"
      Dst: "[io.netty.channel.epoll.EpollServerSocketChannel].tcpMd5SigAddresses()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollSocketChannel].tcpInfo()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollTcpInfo"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollTcpInfo].<init>()"
    - "[io.netty.channel.epoll.EpollSocketChannel].tcpInfo(io.netty.channel.epoll.EpollTcpInfo)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannel:83,1"
      Dst: "[io.netty.channel.epoll.EpollTcpInfo].<init>()"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:83,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannel].tcpInfo(io.netty.channel.epoll.EpollTcpInfo)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollTcpInfo].<init>()"
    functionSourceFile: "io.netty.channel.epoll.EpollTcpInfo"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollTcpInfo:62,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannel].tcpInfo(io.netty.channel.epoll.EpollTcpInfo)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollTcpInfo"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.EpollTcpInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getTcpInfo(io.netty.channel.epoll.EpollTcpInfo)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannel:92,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getTcpInfo(io.netty.channel.epoll.EpollTcpInfo)"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:95,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getTcpInfo(io.netty.channel.epoll.EpollTcpInfo)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.EpollTcpInfo"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].getTcpInfo(int,long[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:227,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:227,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getTcpInfo(int,long[])"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getTcpInfo(int,long[])"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannel"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannel:101,1"
      Dst: "[io.netty.channel.AbstractChannel].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannel].localAddress()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannel"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannel:106,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannel].config()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannel"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 66
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannel].parent()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannel"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "io.netty.channel.socket.ServerSocketChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].parent()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannel:116,1"
      Dst: "[io.netty.channel.AbstractChannel].parent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannel].newUnsafe()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannel"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 3
    returnType: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe].<init>(io.netty.channel.epoll.EpollSocketChannel,io.netty.channel.epoll.EpollSocketChannel$1)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannel:121,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe].<init>(io.netty.channel.epoll.EpollSocketChannel,io.netty.channel.epoll.EpollSocketChannel$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe].<init>(io.netty.channel.epoll.EpollSocketChannel,io.netty.channel.epoll.EpollSocketChannel$1)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.epoll.EpollSocketChannel"
    - "io.netty.channel.epoll.EpollSocketChannel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe].<init>(io.netty.channel.epoll.EpollSocketChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe:147,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe].<init>(io.netty.channel.epoll.EpollSocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe].<init>(io.netty.channel.epoll.EpollSocketChannel)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.EpollSocketChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe].<init>(io.netty.channel.epoll.AbstractEpollStreamChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe:147,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe].<init>(io.netty.channel.epoll.AbstractEpollStreamChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannel].doConnect0(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannel"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 145
    functionDepth: 8
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].isTcpFastOpenConnect()"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].outboundBuffer()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].outboundBuffer()"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.ChannelOutboundBuffer].addFlush()"
    - "[io.netty.channel.ChannelOutboundBuffer].current()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].doWriteOrSendBytes(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,boolean)"
    - "[io.netty.channel.ChannelOutboundBuffer].removeBytes(long)"
    - "[io.netty.channel.epoll.AbstractEpollChannel].doConnect0(java.net.SocketAddress)"
    - "[io.netty.channel.Channel$Unsafe].outboundBuffer()"
    functionUses: 1
    ICount: 23
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollSocketChannel:126"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannel:144"
        BranchSideFuncs:
        - "outboundBuffer()"
        - "current()"
        - "unsafe()"
        - "addFlush()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannel:143"
        BranchSideFuncs:
        - "doConnect0(java.net.SocketAddress)"
    - Branch String: "io.netty.channel.epoll.EpollSocketChannel:126"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannel:144"
        BranchSideFuncs:
        - "outboundBuffer()"
        - "current()"
        - "unsafe()"
        - "addFlush()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannel:143"
        BranchSideFuncs:
        - "doConnect0(java.net.SocketAddress)"
    - Branch String: "io.netty.channel.epoll.EpollSocketChannel:130"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannel:144"
        BranchSideFuncs:
        - "doWriteOrSendBytes(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,boolean)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannel:143"
        BranchSideFuncs:
        - "doConnect0(java.net.SocketAddress)"
    - Branch String: "io.netty.channel.epoll.EpollSocketChannel:136"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannel:143"
        BranchSideFuncs:
        - "doConnect0(java.net.SocketAddress)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannel:126,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].isTcpFastOpenConnect()"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:127,1"
      Dst: "[io.netty.channel.AbstractChannel].unsafe()"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:127,1"
      Dst: "[io.netty.channel.Channel$Unsafe].outboundBuffer()"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:128,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].addFlush()"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:130,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].current()"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:134,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].doWriteOrSendBytes(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:139,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].removeBytes(long)"
    - Src: "io.netty.channel.epoll.EpollSocketChannel:144,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].doConnect0(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].isTcpFastOpenConnect()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 568
    functionLinenumberEnd: 570
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].addFlush()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 161
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setUncancellable()"
    - "[io.netty.util.concurrent.DefaultPromise].setUncancellable()"
    - "[io.netty.channel.VoidChannelPromise].setUncancellable()"
    - "[io.netty.channel.ChannelOutboundBuffer$Entry].cancel()"
    - "[io.netty.channel.ChannelOutboundBuffer].decrementPendingOutboundBytes(long,boolean,boolean)"
    - "[io.netty.util.concurrent.Promise].setUncancellable()"
    functionUses: 3
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:142"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:160"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:159"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:143"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:147"
        BranchSideFuncs:
        - "setUncancellable()"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:149"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:153"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:155"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:147"
        BranchSideFuncs:
        - "setUncancellable()"
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:149,1"
      Dst: "[io.netty.util.concurrent.Promise].setUncancellable()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:151,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer$Entry].cancel()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:152,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].decrementPendingOutboundBytes(long,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.ChannelOutboundBuffer$Entry].cancel()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer$Entry"
    linkageType: ""
    functionLinenumber: 833
    functionLinenumberEnd: 850
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer$Entry:834"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer$Entry:849"
        BranchSideFuncs:
        - "safeRelease(java.lang.Object)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer$Entry:848"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer$Entry:839,1"
      Dst: "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].removeBytes(long)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 336
    functionLinenumberEnd: 363
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].current()"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.channel.ChannelOutboundBuffer].progress(long)"
    - "[io.netty.channel.ChannelOutboundBuffer].remove()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.channel.ChannelOutboundBuffer].clearNioBuffers()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 14
    ICount: 38
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:338"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:343"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:342"
        BranchSideFuncs:
        - "readerIndex()"
        - "writerIndex()"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:339"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:360"
        BranchSideFuncs:
        - "clearNioBuffers()"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:339"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:360"
        BranchSideFuncs:
        - "clearNioBuffers()"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:347"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:354"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:353"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:348"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:352"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:351"
        BranchSideFuncs:
        - "remove()"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:354"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:361"
        BranchSideFuncs:
        - "progress(long)"
        - "readerIndex(int)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:360"
        BranchSideFuncs:
        - "clearNioBuffers()"
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:337,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].current()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:339,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:344,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:345,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:349,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].progress(long)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:352,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].remove()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:355,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:361,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].clearNioBuffers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].progress(long)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 240
    functionLinenumberEnd: 250
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].tryProgress(long,long)"
    - "[io.netty.util.concurrent.ProgressivePromise].tryProgress(long,long)"
    functionUses: 10
    ICount: 19
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:242"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:243"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:242"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:242"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:243"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:242"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:246"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:249"
        BranchSideFuncs:
        - "tryProgress(long,long)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:242,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:247,1"
      Dst: "[io.netty.util.concurrent.ProgressivePromise].tryProgress(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.epoll.EpollSocketChannel].setTcpMd5Sig(java.util.Map<InetAddress,byte[]>)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannel"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 176
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map<InetAddress,byte[]>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.TcpMd5Util].newTcpMd5Sigs(io.netty.channel.epoll.AbstractEpollChannel,java.util.Collection,java.util.Map)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannel:173,1"
      Dst: "[io.netty.channel.epoll.TcpMd5Util].newTcpMd5Sigs(io.netty.channel.epoll.AbstractEpollChannel,java.util.Collection,java.util.Map)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler].<init>(int,int)"
    functionSourceFile: "io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler].<init>(int,int,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler:40,1"
      Dst: "[io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler].<init>(int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler].<init>(int,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler:48,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.SctpMessage].<init>(int,int,boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.ByteBuf].retain()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler:56,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    - Src: "io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler:56,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].<init>(int,int,boolean,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler:56,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler:30,1"
      Dst: "[io.netty.handler.codec.sctp.SctpOutboundByteStreamHandler].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension].<init>(int,java.lang.String,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.String"
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension:97,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension].rsv()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension].newExtensionEncoder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateEncoder].<init>(int,int,boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider$1].encoderFilter()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider].encoderFilter()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension:111,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider].encoderFilter()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension:111,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateEncoder].<init>(int,int,boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateEncoder].<init>(int,int,boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateEncoder"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder].<init>(int,int,boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateEncoder:51,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateEncoder].<init>(int,int,boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension].newExtensionDecoder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionDecoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder].<init>(boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider$1].decoderFilter()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider].decoderFilter()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension:116,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider].decoderFilter()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension:116,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder].<init>(boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder].<init>(boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder].<init>(boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:46,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder].<init>(boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension].newReponseData()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].<init>(java.lang.String,java.util.Map)"
    - "[java.util.Collections].emptyMap()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension:121,1"
      Dst: "[java.util.Collections].emptyMap()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension:121,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].<init>(java.lang.String,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].<init>(java.lang.String,java.util.Map)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 38
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 6
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData:33,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData:34,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData:35,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].<init>(boolean,java.security.cert.X509Certificate[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.security.cert.X509Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.KeyStoreSpi].<init>()"
    - "[java.util.Date].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:301,1"
      Dst: "[java.security.KeyStoreSpi].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:303,1"
      Dst: "[java.util.Date].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineGetKey(java.lang.String,char[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.security.Key"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineContainsAlias(java.lang.String)"
    - "[java.lang.String].<init>(char[])"
    - "[io.netty.internal.tcnative.SSL].loadPrivateKeyFromEngine(java.lang.String,java.lang.String)"
    - "[java.security.UnrecoverableKeyException].<init>(java.lang.String)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    - "[io.netty.handler.ssl.OpenSslPrivateKey].<init>(long)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:307"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:323"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:309"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:313"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:312"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:313"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:313"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:312"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:307,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineContainsAlias(java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:313,1"
      Dst: "[java.lang.String].<init>(char[])"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:313,1"
      Dst: "[io.netty.internal.tcnative.SSL].loadPrivateKeyFromEngine(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:316,1"
      Dst: "[java.security.UnrecoverableKeyException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:318,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:322,1"
      Dst: "[io.netty.handler.ssl.OpenSslPrivateKey].<init>(long)"
    JavaMethodInfo:
      exceptions:
      - "java.security.UnrecoverableKeyException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineContainsAlias(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:370,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey].<init>(long)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey:31,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineGetCertificateChain(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.security.cert.Certificate[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineContainsAlias(java.lang.String)"
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:329"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:328"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:329,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineContainsAlias(java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:329,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineGetCertificate(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.security.cert.Certificate"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineContainsAlias(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:334"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:333"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:334,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineContainsAlias(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineGetCreationDate(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Date"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineContainsAlias(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:339"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:338"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:339,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineContainsAlias(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineSetKeyEntry(java.lang.String,java.security.Key,char[],java.security.cert.Certificate[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.security.Key"
    - "char[]"
    - "java.security.cert.Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.KeyStoreException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:345,1"
      Dst: "[java.security.KeyStoreException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.KeyStoreException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineSetKeyEntry(java.lang.String,byte[],java.security.cert.Certificate[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "byte[]"
    - "java.security.cert.Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.KeyStoreException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:350,1"
      Dst: "[java.security.KeyStoreException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.KeyStoreException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineSetCertificateEntry(java.lang.String,java.security.cert.Certificate)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.security.cert.Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.KeyStoreException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:355,1"
      Dst: "[java.security.KeyStoreException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.KeyStoreException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineDeleteEntry(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.KeyStoreException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:360,1"
      Dst: "[java.security.KeyStoreException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.KeyStoreException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineAliases()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].singleton(java.lang.Object)"
    - "[java.util.Collections].enumeration(java.util.Collection)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:365,1"
      Dst: "[java.util.Collections].singleton(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:365,1"
      Dst: "[java.util.Collections].enumeration(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineSize()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineIsKeyEntry(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineContainsAlias(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:380,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineContainsAlias(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineIsCertificateEntry(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineContainsAlias(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:385,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineContainsAlias(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineGetCertificateAlias(java.security.cert.Certificate)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.security.cert.Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.Certificate].equals(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:390"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:397"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:396"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:391"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:397"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:396"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:392"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:391"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:390"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:392,1"
      Dst: "[java.security.cert.Certificate].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineStore(java.io.OutputStream,char[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:402,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].engineLoad(java.io.InputStream,char[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:407"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:410"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:409"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:407"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:410"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:409"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1:408,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.redis.FixedRedisMessagePool].<init>()"
    functionSourceFile: "io.netty.handler.codec.redis.FixedRedisMessagePool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisReplyKey].values()"
    - "[java.util.HashMap].<init>(int,float)"
    - "[java.lang.Enum].name()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[io.netty.buffer.Unpooled].unreleasableBuffer(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].asReadOnly()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[java.lang.String].<init>(byte[])"
    - "[io.netty.handler.codec.redis.SimpleStringRedisMessage].<init>(java.lang.String)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].values()"
    - "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].toString()"
    - "[io.netty.handler.codec.redis.ErrorRedisMessage].<init>(java.lang.String)"
    - "[io.netty.util.collection.LongObjectHashMap].<init>(int,float)"
    - "[io.netty.handler.codec.redis.RedisCodecUtil].longToAsciiBytes(long)"
    - "[io.netty.handler.codec.redis.IntegerRedisMessage].<init>(long)"
    - "[io.netty.util.collection.LongObjectMap].put(long,java.lang.Object)"
    functionUses: 0
    ICount: 120
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.FixedRedisMessagePool:100"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.FixedRedisMessagePool:109"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.redis.FixedRedisMessagePool:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.FixedRedisMessagePool:122"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.redis.FixedRedisMessagePool:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.FixedRedisMessagePool:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:96,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:97,1"
      Dst: "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisReplyKey].values()"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:97,1"
      Dst: "[java.util.HashMap].<init>(int,float)"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:102,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:102,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:101,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:101,1"
      Dst: "[io.netty.buffer.Unpooled].unreleasableBuffer(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:102,1"
      Dst: "[io.netty.buffer.ByteBuf].asReadOnly()"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:104,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:104,1"
      Dst: "[java.lang.String].<init>(byte[])"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:104,1"
      Dst: "[io.netty.handler.codec.redis.SimpleStringRedisMessage].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:105,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:110,1"
      Dst: "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].values()"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:115,1"
      Dst: "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].toString()"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:117,1"
      Dst: "[io.netty.handler.codec.redis.ErrorRedisMessage].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:124,1"
      Dst: "[io.netty.util.collection.LongObjectHashMap].<init>(int,float)"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:127,1"
      Dst: "[io.netty.handler.codec.redis.RedisCodecUtil].longToAsciiBytes(long)"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:129,1"
      Dst: "[io.netty.handler.codec.redis.IntegerRedisMessage].<init>(long)"
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:131,1"
      Dst: "[io.netty.util.collection.LongObjectMap].put(long,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.redis.FixedRedisMessagePool].getSimpleString(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.redis.FixedRedisMessagePool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.SimpleStringRedisMessage"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:138,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FixedRedisMessagePool].getSimpleString(io.netty.handler.codec.redis.FixedRedisMessagePool$RedisReplyKey)"
    functionSourceFile: "io.netty.handler.codec.redis.FixedRedisMessagePool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.SimpleStringRedisMessage"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.redis.FixedRedisMessagePool$RedisReplyKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:146,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FixedRedisMessagePool].getSimpleString(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.redis.FixedRedisMessagePool"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.SimpleStringRedisMessage"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 27
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:151,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FixedRedisMessagePool].getError(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.redis.FixedRedisMessagePool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.ErrorRedisMessage"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:156,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FixedRedisMessagePool].getError(io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey)"
    functionSourceFile: "io.netty.handler.codec.redis.FixedRedisMessagePool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.ErrorRedisMessage"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:164,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FixedRedisMessagePool].getError(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.redis.FixedRedisMessagePool"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.ErrorRedisMessage"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 27
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:169,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FixedRedisMessagePool].getInteger(long)"
    functionSourceFile: "io.netty.handler.codec.redis.FixedRedisMessagePool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.IntegerRedisMessage"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.LongObjectMap].get(long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:174,1"
      Dst: "[io.netty.util.collection.LongObjectMap].get(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FixedRedisMessagePool].getInteger(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.redis.FixedRedisMessagePool"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.IntegerRedisMessage"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 27
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:179,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FixedRedisMessagePool].getByteBufOfInteger(long)"
    functionSourceFile: "io.netty.handler.codec.redis.FixedRedisMessagePool"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(long)"
    - "[io.netty.util.collection.LongObjectHashMap].get(long)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(long)"
    - "[io.netty.util.collection.LongObjectMap].get(long)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool:184,1"
      Dst: "[io.netty.util.collection.LongObjectMap].get(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttVersion].values()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttVersion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttVersion[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttVersion:25,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttVersion].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttVersion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttVersion"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttVersion:25,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttVersion].<init>(java.lang.String,int,java.lang.String,byte)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttVersion"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.lang.String"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttVersion:33,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttVersion:34,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttVersion].protocolName()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttVersion"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttVersion].protocolNameBytes()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttVersion"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttVersion:43,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttVersion].protocolLevel()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttVersion"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttVersion].fromProtocolNameAndLevel(java.lang.String,byte)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttVersion"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 72
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttVersion"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttUnacceptableProtocolVersionException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.AbstractStringBuilder:java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 3
    ICount: 35
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttVersion:65"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttVersion:68"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttVersion:67"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttVersion:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttVersion:71"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttVersion:70"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttVersion:66,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttVersion:66,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttVersion:66,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttVersion:66,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnacceptableProtocolVersionException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttVersion:68,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttVersion:71,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnacceptableProtocolVersionException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnacceptableProtocolVersionException"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnacceptableProtocolVersionException:44,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.RoundRobinInetAddressResolver$1].<init>(io.netty.resolver.RoundRobinInetAddressResolver,io.netty.util.concurrent.Promise,java.lang.String)"
    functionSourceFile: "io.netty.resolver.RoundRobinInetAddressResolver$1"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.resolver.RoundRobinInetAddressResolver"
    - "io.netty.util.concurrent.Promise"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$1:55,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.RoundRobinInetAddressResolver$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.resolver.RoundRobinInetAddressResolver$1"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 72
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.util.concurrent.FailedFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].getNow()"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.resolver.RoundRobinInetAddressResolver].access$000(int)"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setSuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    - "[java.net.UnknownHostException].<init>(java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture:io.netty.channel.SucceededChannelFuture:io.netty.channel.VoidChannelPromise:io.netty.channel.group.VoidChannelGroupFuture:io.netty.util.concurrent.FailedFuture:io.netty.util.concurrent.SucceededFuture].cause()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].getNow()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].cause()"
    functionUses: 1
    ICount: 23
    EdgeCount: 48
    BranchProfiles:
    - Branch String: "io.netty.resolver.RoundRobinInetAddressResolver$1:58"
      Branch Sides:
      - BranchSide: "io.netty.resolver.RoundRobinInetAddressResolver$1:69"
        BranchSideFuncs:
        - "getNow()"
        - "size()"
      - BranchSide: "io.netty.resolver.RoundRobinInetAddressResolver$1:68"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "cause()"
    - Branch String: "io.netty.resolver.RoundRobinInetAddressResolver$1:61"
      Branch Sides:
      - BranchSide: "io.netty.resolver.RoundRobinInetAddressResolver$1:65"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$1:58,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$1:59,1"
      Dst: "[io.netty.util.concurrent.Future].getNow()"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$1:60,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$1:64,1"
      Dst: "[io.netty.resolver.RoundRobinInetAddressResolver].access$000(int)"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$1:64,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$1:64,1"
      Dst: "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$1:66,1"
      Dst: "[java.net.UnknownHostException].<init>(java.lang.String)"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$1:66,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$1:69,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.RoundRobinInetAddressResolver].access$000(int)"
    functionSourceFile: "io.netty.resolver.RoundRobinInetAddressResolver"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.RoundRobinInetAddressResolver].randomIndex(int)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver:37,1"
      Dst: "[io.netty.resolver.RoundRobinInetAddressResolver].randomIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.RoundRobinInetAddressResolver].randomIndex(int)"
    functionSourceFile: "io.netty.resolver.RoundRobinInetAddressResolver"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextInt(int)"
    - "[java.util.Random:java.util.concurrent.ThreadLocalRandom].nextInt(int)"
    - "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - "[java.util.Random].nextInt(int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.resolver.RoundRobinInetAddressResolver:99"
      Branch Sides:
      - BranchSide: "io.netty.resolver.RoundRobinInetAddressResolver:98"
        BranchSideFuncs:
        - "threadLocalRandom()"
        - "nextInt(int)"
    Callsites:
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver:99,1"
      Dst: "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver:99,1"
      Dst: "[java.util.Random].nextInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].record()"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak"
    linkageType: ""
    functionLinenumber: 397
    functionLinenumberEnd: 400
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].record0(java.lang.Object)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:398,1"
      Dst: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].record0(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].record0(java.lang.Object)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak"
    linkageType: ""
    functionLinenumber: 433
    functionLinenumberEnd: 460
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector].access$200()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].access$300(io.netty.util.ResourceLeakDetector$TraceRecord)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextInt(int)"
    - "[java.util.Random].nextInt(int)"
    - "[java.util.concurrent.ThreadLocalRandom].nextInt(int)"
    - "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].access$400(io.netty.util.ResourceLeakDetector$TraceRecord)"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].<init>(io.netty.util.ResourceLeakDetector$TraceRecord)"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].<init>(io.netty.util.ResourceLeakDetector$TraceRecord,java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].get(java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].incrementAndGet(java.lang.Object)"
    functionUses: 2
    ICount: 44
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:434"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:458"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:440"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:443"
        BranchSideFuncs:
        - "access$300(io.netty.util.ResourceLeakDetector$TraceRecord)"
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:445"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:451"
        BranchSideFuncs:
        - "threadLocalRandom()"
        - "access$200()"
        - "min(int,int)"
        - "nextInt(int)"
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:450"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:447"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:-1"
        BranchSideFuncs:
        - "access$400(io.netty.util.ResourceLeakDetector$TraceRecord)"
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:447"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:450"
        BranchSideFuncs:
        - "access$400(io.netty.util.ResourceLeakDetector$TraceRecord)"
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:449"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:453"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:453"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:452"
        BranchSideFuncs:
        - "<init>(io.netty.util.ResourceLeakDetector$TraceRecord,java.lang.Object)"
        - "<init>(io.netty.util.ResourceLeakDetector$TraceRecord)"
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:454"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:440"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:439"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:455"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:459"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:458"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:434,1"
      Dst: "[io.netty.util.ResourceLeakDetector].access$200()"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:440,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].get(java.lang.Object)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:444,1"
      Dst: "[io.netty.util.ResourceLeakDetector$TraceRecord].access$300(io.netty.util.ResourceLeakDetector$TraceRecord)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:446,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:447,1"
      Dst: "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:447,1"
      Dst: "[java.util.Random].nextInt(int)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:448,1"
      Dst: "[io.netty.util.ResourceLeakDetector$TraceRecord].access$400(io.netty.util.ResourceLeakDetector$TraceRecord)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:453,1"
      Dst: "[io.netty.util.ResourceLeakDetector$TraceRecord].<init>(io.netty.util.ResourceLeakDetector$TraceRecord,java.lang.Object)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:453,1"
      Dst: "[io.netty.util.ResourceLeakDetector$TraceRecord].<init>(io.netty.util.ResourceLeakDetector$TraceRecord)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:454,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:456,1"
      Dst: "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].incrementAndGet(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 8
  - functionName: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].record(java.lang.Object)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak"
    linkageType: ""
    functionLinenumber: 402
    functionLinenumberEnd: 405
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].record0(java.lang.Object)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:403,1"
      Dst: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].record0(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].close()"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak"
    linkageType: ""
    functionLinenumber: 467
    functionLinenumberEnd: 475
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].remove(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.HashSet].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].remove(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].remove(java.lang.Object)"
    - "[java.util.TreeSet].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].remove(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.AbstractCollection].remove(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].remove(java.lang.Object)"
    - "[java.lang.ref.Reference].clear()"
    - "[java.util.Set].remove(java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].set(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:468"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:473"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:468,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:470,1"
      Dst: "[java.lang.ref.Reference].clear()"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:471,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].set(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].close(java.lang.Object)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak"
    linkageType: ""
    functionLinenumber: 479
    functionLinenumberEnd: 491
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.System].identityHashCode(java.lang.Object)"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].close()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].reachabilityFence0(java.lang.Object)"
    functionUses: 9
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:480"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:483"
        BranchSideFuncs:
        - "<init>()"
        - "identityHashCode(java.lang.Object)"
        - "reachabilityFence0(java.lang.Object)"
        - "close()"
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:482"
        BranchSideFuncs:
        - "close()"
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:480"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:483"
        BranchSideFuncs:
        - "<init>()"
        - "identityHashCode(java.lang.Object)"
        - "reachabilityFence0(java.lang.Object)"
        - "close()"
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:482"
        BranchSideFuncs:
        - "close()"
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:480,1"
      Dst: "[java.lang.System].identityHashCode(java.lang.Object)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:480,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:483,1"
      Dst: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].close()"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:489,1"
      Dst: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].reachabilityFence0(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].reachabilityFence0(java.lang.Object)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak"
    linkageType: ""
    functionLinenumber: 512
    functionLinenumberEnd: 519
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:513"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:518"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:517"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].toString()"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak"
    linkageType: ""
    functionLinenumber: 521
    functionLinenumberEnd: 524
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].generateReport(io.netty.util.ResourceLeakDetector$TraceRecord)"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].get(java.lang.Object)"
    functionUses: 19
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:522,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].get(java.lang.Object)"
    - Src: "io.netty.util.ResourceLeakDetector$DefaultResourceLeak:523,1"
      Dst: "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].generateReport(io.netty.util.ResourceLeakDetector$TraceRecord)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2FrameReader)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    - "io.netty.handler.codec.http2.Http2FrameReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2FrameReader,io.netty.handler.codec.http2.Http2PromisedRequestVerifier)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:69,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2FrameReader,io.netty.handler.codec.http2.Http2PromisedRequestVerifier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2FrameReader,io.netty.handler.codec.http2.Http2PromisedRequestVerifier)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    - "io.netty.handler.codec.http2.Http2FrameReader"
    - "io.netty.handler.codec.http2.Http2PromisedRequestVerifier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2FrameReader,io.netty.handler.codec.http2.Http2PromisedRequestVerifier,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:76,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2FrameReader,io.netty.handler.codec.http2.Http2PromisedRequestVerifier,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2FrameReader,io.netty.handler.codec.http2.Http2PromisedRequestVerifier,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    - "io.netty.handler.codec.http2.Http2FrameReader"
    - "io.netty.handler.codec.http2.Http2PromisedRequestVerifier"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2FrameReader,io.netty.handler.codec.http2.Http2PromisedRequestVerifier,boolean,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:96,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2FrameReader,io.netty.handler.codec.http2.Http2PromisedRequestVerifier,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2FrameReader,io.netty.handler.codec.http2.Http2PromisedRequestVerifier,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    - "io.netty.handler.codec.http2.Http2FrameReader"
    - "io.netty.handler.codec.http2.Http2PromisedRequestVerifier"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder,io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$1)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2Connection].newKey()"
    - "[io.netty.handler.codec.http2.Http2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].<init>(io.netty.handler.codec.http2.Http2Connection)"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController(io.netty.handler.codec.http2.Http2FlowController)"
    - "[io.netty.handler.codec.http2.Http2ConnectionEncoder].frameWriter()"
    - "[io.netty.handler.codec.http2.Http2LocalFlowController].frameWriter(io.netty.handler.codec.http2.Http2FrameWriter)"
    functionUses: 0
    ICount: 55
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:121"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:124"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:123"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:128"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:127"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:135"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:138"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:119,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:55,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder,io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$1)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:125,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:125,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:125,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:125,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:125,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:130,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:131,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].newKey()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:135,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].local()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:135,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:136,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].<init>(io.netty.handler.codec.http2.Http2Connection)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:136,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController(io.netty.handler.codec.http2.Http2FlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:138,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionEncoder].frameWriter()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:138,1"
      Dst: "[io.netty.handler.codec.http2.Http2LocalFlowController].frameWriter(io.netty.handler.codec.http2.Http2FrameWriter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2LifecycleManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:143,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].connection()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Connection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].flowController()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2LocalFlowController"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].flowController()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController()"
    functionUses: 6
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:153,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].local()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:153,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].frameListener(io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:158,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].frameListener()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameListener"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].prefaceReceived()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    functionUses: 5
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:168"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:167"
        BranchSideFuncs:
        - "getClass()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:168,1"
      Dst: "[java.lang.Object].getClass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].decodeFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].readFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.Http2FrameReader].readFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:173,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameReader].readFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].localSettings()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 192
    functionDepth: 4
    returnType: "io.netty.handler.codec.http2.Http2Settings"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Settings].<init>()"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].configuration()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].configuration()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].headersConfiguration()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].frameSizePolicy()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].flowController()"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].initialWindowSize()"
    - "[io.netty.handler.codec.http2.Http2Settings].initialWindowSize(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].initialWindowSize()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].maxActiveStreams()"
    - "[io.netty.handler.codec.http2.Http2Settings].maxConcurrentStreams(long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Settings].headerTableSize(long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].maxHeaderTableSize()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].maxFrameSize()"
    - "[io.netty.handler.codec.http2.Http2Settings].maxFrameSize(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].maxFrameSize()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].maxHeaderListSize()"
    - "[io.netty.handler.codec.http2.Http2Settings].maxHeaderListSize(long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].isServer()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].allowPushTo()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Settings].pushEnabled(boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameReader].configuration()"
    - "[io.netty.handler.codec.http2.Http2FrameReader$Configuration].headersConfiguration()"
    - "[io.netty.handler.codec.http2.Http2FrameReader$Configuration].frameSizePolicy()"
    - "[io.netty.handler.codec.http2.Http2FlowController].initialWindowSize()"
    - "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].maxActiveStreams()"
    - "[io.netty.handler.codec.http2.Http2HeadersDecoder$Configuration].maxHeaderTableSize()"
    - "[io.netty.handler.codec.http2.Http2FrameSizePolicy].maxFrameSize()"
    - "[io.netty.handler.codec.http2.Http2HeadersDecoder$Configuration].maxHeaderListSize()"
    - "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - "[io.netty.handler.codec.http2.Http2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].allowPushTo()"
    functionUses: 2
    ICount: 29
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:178,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:179,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameReader].configuration()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:180,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameReader$Configuration].headersConfiguration()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:181,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameReader$Configuration].frameSizePolicy()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:182,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].flowController()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:182,1"
      Dst: "[io.netty.handler.codec.http2.Http2FlowController].initialWindowSize()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:182,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].initialWindowSize(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:183,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:183,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].maxActiveStreams()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:183,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].maxConcurrentStreams(long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:184,1"
      Dst: "[io.netty.handler.codec.http2.Http2HeadersDecoder$Configuration].maxHeaderTableSize()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:184,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].headerTableSize(long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:185,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameSizePolicy].maxFrameSize()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:185,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].maxFrameSize(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:186,1"
      Dst: "[io.netty.handler.codec.http2.Http2HeadersDecoder$Configuration].maxHeaderListSize()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:186,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].maxHeaderListSize(long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:187,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:189,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].local()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:189,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].allowPushTo()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:189,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].pushEnabled(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Settings].<init>(int)"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:56,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap].<init>(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:64,1"
      Dst: "[io.netty.util.collection.CharObjectHashMap].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].initialWindowSize(int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionDepth: 3
    returnType: "io.netty.handler.codec.http2.Http2Settings"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Long)"
    - "[java.lang.Long].valueOf(long)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:145,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.Http2Settings:145,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionDepth: 2
    returnType: "java.lang.Long"
    argCount: 2
    argTypes:
    - "char"
    - "java.lang.Long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Settings].verifyStandardSetting(int,java.lang.Long)"
    - "[io.netty.util.collection.CharObjectHashMap].put(char,java.lang.Object)"
    functionUses: 8
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:75,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].verifyStandardSetting(int,java.lang.Long)"
    - Src: "io.netty.handler.codec.http2.Http2Settings:76,1"
      Dst: "[io.netty.util.collection.CharObjectHashMap].put(char,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].verifyStandardSetting(int,java.lang.Long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 245
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.Long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Long].longValue()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Long].intValue()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil].isMaxFrameSizeValid(int)"
    functionUses: 1
    ICount: 94
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2Settings:209"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:210"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:209"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2Settings:209"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:244"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:243"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2Settings:214"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:244"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:243"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2Settings:214"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:244"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:243"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2Settings:219"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:220"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:219"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2Settings:219"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:244"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:243"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2Settings:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:226"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:225"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2Settings:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:244"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:243"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2Settings:231"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:244"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:243"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2Settings:236"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:237"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:236"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http2.Http2Settings:236"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:244"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:243"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:206,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2Settings:209,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "io.netty.handler.codec.http2.Http2Settings:210,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2Settings:210,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2Settings:210,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2Settings:210,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.Http2Settings:210,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2Settings:231,1"
      Dst: "[java.lang.Long].intValue()"
    - Src: "io.netty.handler.codec.http2.Http2Settings:231,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].isMaxFrameSizeValid(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 12
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil].isMaxFrameSizeValid(int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:162"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:162"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].maxConcurrentStreams(long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionDepth: 3
    returnType: "io.netty.handler.codec.http2.Http2Settings"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Long)"
    - "[java.lang.Long].valueOf(long)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:128,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.Http2Settings:128,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].headerTableSize(long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionDepth: 3
    returnType: "io.netty.handler.codec.http2.Http2Settings"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Long)"
    - "[java.lang.Long].valueOf(long)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:92,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.Http2Settings:92,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].maxFrameSize(int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 164
    functionDepth: 3
    returnType: "io.netty.handler.codec.http2.Http2Settings"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Long)"
    - "[java.lang.Long].valueOf(long)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:162,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.Http2Settings:162,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].maxHeaderListSize(long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionDepth: 3
    returnType: "io.netty.handler.codec.http2.Http2Settings"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Long)"
    - "[java.lang.Long].valueOf(long)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:179,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.Http2Settings:179,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].pushEnabled(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionDepth: 3
    returnType: "io.netty.handler.codec.http2.Http2Settings"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Long)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2Settings:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:111"
        BranchSideFuncs:
        - "put(char,java.lang.Long)"
      - BranchSide: "io.netty.handler.codec.http2.Http2Settings:110"
        BranchSideFuncs:
        - "put(char,java.lang.Long)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:111,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].close()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 198
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].close()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].close()"
    - "[io.netty.handler.codec.http2.Http2FrameReader].close()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:196,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameReader].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].calculateMaxHeaderListSizeGoAway(long)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 208
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil].calculateMaxHeaderListSizeGoAway(long)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:207,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].calculateMaxHeaderListSizeGoAway(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil].calculateMaxHeaderListSizeGoAway(long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].unconsumedBytes(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].flowController()"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].unconsumedBytes(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].unconsumedBytes(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2LocalFlowController].unconsumedBytes(io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 1
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:211,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].flowController()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:211,1"
      Dst: "[io.netty.handler.codec.http2.Http2LocalFlowController].unconsumedBytes(io.netty.handler.codec.http2.Http2Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].onGoAwayRead0(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 219
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].goAwayReceived(int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2Connection].goAwayReceived(int,long,io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 10
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:216,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:217,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].goAwayReceived(int,long,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].onUnknownFrame0(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 224
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "byte"
    - "int"
    - "io.netty.handler.codec.http2.Http2Flags"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 9
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:222,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].verifyContentLength(io.netty.handler.codec.http2.Http2Stream,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 226
    functionLinenumberEnd: 238
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength].increaseReceivedBytes(boolean,int,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].isServer()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].removeProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.handler.codec.http2.Http2Stream].removeProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionUses: 1
    ICount: 22
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:228"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:236"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:232"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:237"
        BranchSideFuncs:
        - "removeProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:236"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:232"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:235"
        BranchSideFuncs:
        - "removeProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:227,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:230,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:230,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:230,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength].increaseReceivedBytes(boolean,int,int,boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:233,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].removeProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength].increaseReceivedBytes(boolean,int,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength"
    linkageType: ""
    functionLinenumber: 785
    functionLinenumberEnd: 811
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Long].valueOf(long)"
    functionUses: 1
    ICount: 57
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength:788"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength:792"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength:793"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength:797"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength:798"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength:810"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength:809"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength:799"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength:804"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength:799"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength:804"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength:805"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength:809"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength:790,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength:789,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].access$100(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Connection"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].access$200(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder,io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].unconsumedBytes(io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:53,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].unconsumedBytes(io.netty.handler.codec.http2.Http2Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].access$300(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder,io.netty.handler.codec.http2.Http2Stream,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    - "io.netty.handler.codec.http2.Http2Stream"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].verifyContentLength(io.netty.handler.codec.http2.Http2Stream,int,boolean)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder:53,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].verifyContentLength(io.netty.handler.codec.http2.Http2Stream,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].access$400(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameListener"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].access$500(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2LifecycleManager"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].access$600(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Connection$PropertyKey"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].access$700(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].access$800(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameReader"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].access$900(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2SettingsReceivedConsumer"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].access$1000(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].access$1100(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2PromisedRequestVerifier"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].access$1200()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].access$1300(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameListener"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].access$1302(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameListener"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].<init>()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newOpenSslKeyManagerFactorySpi(java.security.Provider)"
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].<init>(io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:71,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newOpenSslKeyManagerFactorySpi(java.security.Provider)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:71,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].<init>(io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].<init>(java.security.Provider)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newOpenSslKeyManagerFactorySpi(java.security.Provider)"
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].<init>(io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:75,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newOpenSslKeyManagerFactorySpi(java.security.Provider)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:75,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].<init>(io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].<init>(java.lang.String,java.security.Provider)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newOpenSslKeyManagerFactorySpi(java.lang.String,java.security.Provider)"
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].<init>(io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:79,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newOpenSslKeyManagerFactorySpi(java.lang.String,java.security.Provider)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:79,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].<init>(io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi)"
    JavaMethodInfo:
      exceptions:
      - "java.security.NoSuchAlgorithmException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].<init>(io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.KeyManagerFactory].getProvider()"
    - "[javax.net.ssl.KeyManagerFactory].getAlgorithm()"
    - "[javax.net.ssl.KeyManagerFactory].<init>(javax.net.ssl.KeyManagerFactorySpi,java.security.Provider,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:83,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].getProvider()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:83,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].getAlgorithm()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:83,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].<init>(javax.net.ssl.KeyManagerFactorySpi,java.security.Provider,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newOpenSslKeyManagerFactorySpi(java.security.Provider)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newOpenSslKeyManagerFactorySpi(java.lang.String,java.security.Provider)"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:89,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newOpenSslKeyManagerFactorySpi(java.lang.String,java.security.Provider)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:92,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newOpenSslKeyManagerFactorySpi(java.lang.String,java.security.Provider)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.KeyManagerFactory].getDefaultAlgorithm()"
    - "[javax.net.ssl.KeyManagerFactory].getInstance(java.lang.String)"
    - "[javax.net.ssl.KeyManagerFactory].getInstance(java.lang.String,java.security.Provider)"
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi].<init>(javax.net.ssl.KeyManagerFactory)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:98"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:101"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:100"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:99,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].getDefaultAlgorithm()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:102,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].getInstance(java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:103,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].getInstance(java.lang.String,java.security.Provider)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:103,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi].<init>(javax.net.ssl.KeyManagerFactory)"
    JavaMethodInfo:
      exceptions:
      - "java.security.NoSuchAlgorithmException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi].<init>(javax.net.ssl.KeyManagerFactory)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.KeyManagerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.KeyManagerFactorySpi].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi:114,1"
      Dst: "[javax.net.ssl.KeyManagerFactorySpi].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi:115,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newProvider()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 12
    returnType: "io.netty.handler.ssl.OpenSslKeyMaterialProvider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi].newProvider()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:107,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi].newProvider()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi].newProvider()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "io.netty.handler.ssl.OpenSslKeyMaterialProvider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory].newProvider()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi:160"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi:158,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi:160,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory].newProvider()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory].newProvider()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "io.netty.handler.ssl.OpenSslKeyMaterialProvider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider].<init>(javax.net.ssl.X509KeyManager,java.lang.String,java.lang.Iterable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory:175,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider].<init>(javax.net.ssl.X509KeyManager,java.lang.String,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider].<init>(javax.net.ssl.X509KeyManager,java.lang.String,java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "javax.net.ssl.X509KeyManager"
    - "java.lang.String"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].<init>(javax.net.ssl.X509KeyManager,java.lang.String)"
    - "[java.util.HashMap].<init>()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].chooseKeyMaterial(io.netty.buffer.ByteBufAllocator,java.lang.String)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider].destroy()"
    - "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.util.Map,java.lang.String)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:192"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:206"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:205"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:202"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:202"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:210"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:209"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:209"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:188,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].<init>(javax.net.ssl.X509KeyManager,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:189,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:192,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:192,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:192,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:193,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:195,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].chooseKeyMaterial(io.netty.buffer.ByteBufAllocator,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:195,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:207,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider].destroy()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:210,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.util.Map,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].<init>(javax.net.ssl.X509KeyManager,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslKeyMaterialProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.net.ssl.X509KeyManager"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].chooseKeyMaterial(io.netty.buffer.ByteBufAllocator,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslKeyMaterialProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.handler.ssl.OpenSslKeyMaterial"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.X509KeyManager].getCertificateChain(java.lang.String)"
    - "[javax.net.ssl.X509KeyManager].getPrivateKey(java.lang.String)"
    - "[io.netty.handler.ssl.PemX509Certificate].toPEM(io.netty.buffer.ByteBufAllocator,boolean,java.security.cert.X509Certificate[])"
    - "[io.netty.handler.ssl.PemEncoded].retain()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].toBIO(io.netty.buffer.ByteBufAllocator,io.netty.handler.ssl.PemEncoded)"
    - "[io.netty.internal.tcnative.SSL].parseX509Chain(long)"
    - "[io.netty.handler.ssl.OpenSslPrivateKey].newKeyMaterial(long,java.security.cert.X509Certificate[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].toBIO(io.netty.buffer.ByteBufAllocator,java.security.PrivateKey)"
    - "[io.netty.internal.tcnative.SSL].parsePrivateKey(long,java.lang.String)"
    - "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].<init>(long,long,java.security.cert.X509Certificate[])"
    - "[io.netty.internal.tcnative.SSL].freeBIO(long)"
    - "[io.netty.internal.tcnative.SSL].freeX509Chain(long)"
    - "[io.netty.internal.tcnative.SSL].freePrivateKey(long)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 0
    ICount: 59
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:107"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:108"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:107"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:107"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:111"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:122"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:125"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:124"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:125"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:124"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:141"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:140"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:141"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:144"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:143"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:141"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:140"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:141"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:144"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:106,1"
      Dst: "[javax.net.ssl.X509KeyManager].getCertificateChain(java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:111,1"
      Dst: "[javax.net.ssl.X509KeyManager].getPrivateKey(java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:112,1"
      Dst: "[io.netty.handler.ssl.PemX509Certificate].toPEM(io.netty.buffer.ByteBufAllocator,boolean,java.security.cert.X509Certificate[])"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:118,1"
      Dst: "[io.netty.handler.ssl.PemEncoded].retain()"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:118,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].toBIO(io.netty.buffer.ByteBufAllocator,io.netty.handler.ssl.PemEncoded)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:119,1"
      Dst: "[io.netty.internal.tcnative.SSL].parseX509Chain(long)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:123,1"
      Dst: "[io.netty.handler.ssl.OpenSslPrivateKey].newKeyMaterial(long,java.security.cert.X509Certificate[])"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:125,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].toBIO(io.netty.buffer.ByteBufAllocator,java.security.PrivateKey)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:126,1"
      Dst: "[io.netty.internal.tcnative.SSL].parsePrivateKey(long,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:127,1"
      Dst: "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].<init>(long,long,java.security.cert.X509Certificate[])"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:136,1"
      Dst: "[io.netty.internal.tcnative.SSL].freeBIO(long)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:139,1"
      Dst: "[io.netty.internal.tcnative.SSL].freeX509Chain(long)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:142,1"
      Dst: "[io.netty.internal.tcnative.SSL].freePrivateKey(long)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialProvider:144,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey].newKeyMaterial(long,java.security.cert.X509Certificate[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.ssl.OpenSslKeyMaterial"
    argCount: 2
    argTypes:
    - "long"
    - "java.security.cert.X509Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].<init>(io.netty.handler.ssl.OpenSslPrivateKey,long,java.security.cert.X509Certificate[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey:118,1"
      Dst: "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].<init>(io.netty.handler.ssl.OpenSslPrivateKey,long,java.security.cert.X509Certificate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].<init>(io.netty.handler.ssl.OpenSslPrivateKey,long,java.security.cert.X509Certificate[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.OpenSslPrivateKey"
    - "long"
    - "java.security.cert.X509Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].<init>()"
    - "[io.netty.handler.ssl.OpenSslPrivateKey].retain()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:130"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:128"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:128,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:132,1"
      Dst: "[io.netty.handler.ssl.OpenSslPrivateKey].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey].retain()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "io.netty.handler.ssl.OpenSslPrivateKey"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].retain()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey:66,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].<init>(long,long,java.security.cert.X509Certificate[])"
    functionSourceFile: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "long"
    - "java.security.cert.X509Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].<init>()"
    - "[io.netty.util.ResourceLeakDetector].track(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:36,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].<init>()"
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:40,1"
      Dst: "[io.netty.util.ResourceLeakDetector].track(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider].destroy()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider"
    linkageType: ""
    functionLinenumber: 227
    functionLinenumberEnd: 233
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.util.Hashtable].values()"
    - "[java.security.Provider].values()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].values()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].values()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].values()"
    - "[java.util.HashMap].values()"
    - "[io.netty.util.collection.IntObjectHashMap].values()"
    - "[java.util.jar.Attributes].values()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.CharObjectHashMap].values()"
    - "[io.netty.util.collection.LongObjectHashMap].values()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].values()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].values()"
    - "[io.netty.util.collection.ByteObjectHashMap].values()"
    - "[java.util.IdentityHashMap].values()"
    - "[java.util.LinkedHashMap].values()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].values()"
    - "[java.util.Properties].values()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].values()"
    - "[java.util.concurrent.ConcurrentHashMap].values()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].values()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].values()"
    - "[io.netty.util.collection.ShortObjectHashMap].values()"
    - "[java.util.WeakHashMap].values()"
    - "[java.util.AbstractMap].values()"
    - "[java.util.TreeMap].values()"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[java.util.jar.Attributes].clear()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].clear()"
    - "[java.util.Hashtable].clear()"
    - "[io.netty.util.collection.IntObjectHashMap].clear()"
    - "[java.util.IdentityHashMap].clear()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].clear()"
    - "[io.netty.util.collection.ByteObjectHashMap].clear()"
    - "[java.util.concurrent.ConcurrentHashMap].clear()"
    - "[io.netty.util.collection.LongObjectHashMap].clear()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].clear()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].clear()"
    - "[java.util.Properties].clear()"
    - "[java.util.WeakHashMap].clear()"
    - "[java.util.AbstractMap].clear()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].clear()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].clear()"
    - "[java.security.Provider].clear()"
    - "[java.util.TreeMap].clear()"
    - "[io.netty.util.collection.CharObjectHashMap].clear()"
    - "[java.util.LinkedHashMap].clear()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].clear()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].clear()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].clear()"
    - "[java.util.HashMap].clear()"
    - "[io.netty.util.collection.ShortObjectHashMap].clear()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].clear()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].clear()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].clear()"
    functionUses: 1
    ICount: 12
    EdgeCount: 220
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:228"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:231"
        BranchSideFuncs:
        - "values()"
        - "hasNext()"
        - "iterator()"
        - "release(java.lang.Object)"
        - "next()"
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:230"
        BranchSideFuncs:
        - "clear()"
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:228,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:228,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:228,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:228,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:229,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:231,1"
      Dst: "[java.util.Map].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.util.Map,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ObjectUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Map].isEmpty()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ObjectUtil:274"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectUtil:277"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.ObjectUtil:276"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectUtil:274,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:274,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "io.netty.util.internal.ObjectUtil:275,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.ObjectUtil:275,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:275,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.ObjectUtil:275,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newEngineBased(java.io.File,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.File)"
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newEngineBased(java.security.cert.X509Certificate[],java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:246,1"
      Dst: "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.File)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:246,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newEngineBased(java.security.cert.X509Certificate[],java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      - "java.io.IOException"
      - "java.security.KeyStoreException"
      - "java.security.NoSuchAlgorithmException"
      - "java.security.UnrecoverableKeyException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newEngineBased(java.security.cert.X509Certificate[],java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory"
    argCount: 2
    argTypes:
    - "java.security.cert.X509Certificate[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Object].clone()"
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore].<init>(java.security.cert.X509Certificate[],boolean,io.netty.handler.ssl.OpenSslX509KeyManagerFactory$1)"
    - "[java.security.KeyStore].load(java.io.InputStream,char[])"
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].<init>()"
    - "[java.lang.String].toCharArray()"
    - "[javax.net.ssl.KeyManagerFactory].init(java.security.KeyStore,char[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:262"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:258"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:257"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:258,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:259,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:259,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore].<init>(java.security.cert.X509Certificate[],boolean,io.netty.handler.ssl.OpenSslX509KeyManagerFactory$1)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:260,1"
      Dst: "[java.security.KeyStore].load(java.io.InputStream,char[])"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:261,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:262,1"
      Dst: "[java.lang.String].toCharArray()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:262,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].init(java.security.KeyStore,char[])"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      - "java.io.IOException"
      - "java.security.KeyStoreException"
      - "java.security.NoSuchAlgorithmException"
      - "java.security.UnrecoverableKeyException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore].<init>(java.security.cert.X509Certificate[],boolean,io.netty.handler.ssl.OpenSslX509KeyManagerFactory$1)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.security.cert.X509Certificate[]"
    - "boolean"
    - "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore].<init>(java.security.cert.X509Certificate[],boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore:299,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore].<init>(java.security.cert.X509Certificate[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore].<init>(java.security.cert.X509Certificate[],boolean)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.cert.X509Certificate[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].<init>(boolean,java.security.cert.X509Certificate[])"
    - "[java.security.KeyStore].<init>(java.security.KeyStoreSpi,java.security.Provider,java.lang.String)"
    - "[io.netty.handler.ssl.OpenSsl].ensureAvailability()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore:301,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore$1].<init>(boolean,java.security.cert.X509Certificate[])"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore:301,1"
      Dst: "[java.security.KeyStore].<init>(java.security.KeyStoreSpi,java.security.Provider,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore:413,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].ensureAvailability()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newKeyless(java.io.File)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.File)"
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newKeyless(java.security.cert.X509Certificate[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:272,1"
      Dst: "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.File)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:272,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newKeyless(java.security.cert.X509Certificate[])"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      - "java.io.IOException"
      - "java.security.KeyStoreException"
      - "java.security.NoSuchAlgorithmException"
      - "java.security.UnrecoverableKeyException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newKeyless(java.security.cert.X509Certificate[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory"
    argCount: 1
    argTypes:
    - "java.security.cert.X509Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Object].clone()"
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore].<init>(java.security.cert.X509Certificate[],boolean,io.netty.handler.ssl.OpenSslX509KeyManagerFactory$1)"
    - "[java.security.KeyStore].load(java.io.InputStream,char[])"
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].<init>()"
    - "[javax.net.ssl.KeyManagerFactory].init(java.security.KeyStore,char[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:291,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:292,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:292,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyStore].<init>(java.security.cert.X509Certificate[],boolean,io.netty.handler.ssl.OpenSslX509KeyManagerFactory$1)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:293,1"
      Dst: "[java.security.KeyStore].load(java.io.InputStream,char[])"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:294,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:295,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].init(java.security.KeyStore,char[])"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      - "java.io.IOException"
      - "java.security.KeyStoreException"
      - "java.security.NoSuchAlgorithmException"
      - "java.security.UnrecoverableKeyException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newKeyless(java.io.InputStream)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.InputStream)"
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newKeyless(java.security.cert.X509Certificate[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:281,1"
      Dst: "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.InputStream)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory:281,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].newKeyless(java.security.cert.X509Certificate[])"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      - "java.io.IOException"
      - "java.security.KeyStoreException"
      - "java.security.NoSuchAlgorithmException"
      - "java.security.UnrecoverableKeyException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.oio.OioByteStreamChannel$2].<init>()"
    functionSourceFile: "io.netty.channel.oio.OioByteStreamChannel$2"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.oio.OioByteStreamChannel$2:48,1"
      Dst: "[java.io.OutputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.oio.OioByteStreamChannel$2].write(int)"
    functionSourceFile: "io.netty.channel.oio.OioByteStreamChannel$2"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.ClosedChannelException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.oio.OioByteStreamChannel$2:51,1"
      Dst: "[java.nio.channels.ClosedChannelException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException:297,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException:301,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException:305,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException:309,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder$2].<init>(io.netty.handler.codec.compression.Bzip2Encoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder$2"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 208
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.compression.Bzip2Encoder"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder$2:207,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder$2"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder$2:210,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder$2"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 208
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2Encoder$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder$2:207,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2Encoder$2].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.Ciphers].<init>()"
    functionSourceFile: "io.netty.handler.ssl.Ciphers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.Ciphers:751,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultFutureListeners].<init>(io.netty.util.concurrent.GenericFutureListener,io.netty.util.concurrent.GenericFutureListener)"
    functionSourceFile: "io.netty.util.concurrent.DefaultFutureListeners"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener"
    - "io.netty.util.concurrent.GenericFutureListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 22
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultFutureListeners:33"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultFutureListeners:36"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultFutureListeners:35"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultFutureListeners:36"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultFutureListeners:39"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultFutureListeners:38"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultFutureListeners:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.concurrent.DefaultFutureListeners].add(io.netty.util.concurrent.GenericFutureListener<?\
      \ extends Future<?>>)"
    functionSourceFile: "io.netty.util.concurrent.DefaultFutureListeners"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener<? extends Future<?>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].copyOf(java.lang.Object[],int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultFutureListeners:44"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultFutureListeners:47"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int)"
      - BranchSide: "io.netty.util.concurrent.DefaultFutureListeners:46"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultFutureListeners:50"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultFutureListeners:53"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultFutureListeners:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultFutureListeners:45,1"
      Dst: "[java.util.Arrays].copyOf(java.lang.Object[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.concurrent.DefaultFutureListeners].remove(io.netty.util.concurrent.GenericFutureListener<?\
      \ extends Future<?>>)"
    functionSourceFile: "io.netty.util.concurrent.DefaultFutureListeners"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener<? extends Future<?>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 26
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultFutureListeners:58"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultFutureListeners:73"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultFutureListeners:72"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultFutureListeners:59"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultFutureListeners:56"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultFutureListeners:55"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultFutureListeners:61"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultFutureListeners:null"
        BranchSideFuncs:
        - "arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Branch String: "io.netty.util.concurrent.DefaultFutureListeners:67"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultFutureListeners:70"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultFutureListeners:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultFutureListeners:62,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.concurrent.DefaultFutureListeners].progressiveSize()"
    functionSourceFile: "io.netty.util.concurrent.DefaultFutureListeners"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe:26,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].copy()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.stomp.LastStompContentSubframe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].copy()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe:31,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].copy()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompContentSubframe"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.stomp.StompContentSubframe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].copy()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompContentSubframe:35,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].duplicate()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.stomp.LastStompContentSubframe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].duplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe:36,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].duplicate()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompContentSubframe"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.stomp.StompContentSubframe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].duplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompContentSubframe:40,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.stomp.LastStompContentSubframe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].retainedDuplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe:41,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompContentSubframe"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.stomp.StompContentSubframe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retainedDuplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompContentSubframe:45,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 4
    returnType: "io.netty.handler.codec.stomp.LastStompContentSubframe"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe:46,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompContentSubframe"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompContentSubframe:30,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].retain()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionDepth: 2
    returnType: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].retain()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe:51,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].retain()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompContentSubframe"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionDepth: 1
    returnType: "io.netty.handler.codec.stomp.StompContentSubframe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retain()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompContentSubframe:55,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].retain(int)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.stomp.LastStompContentSubframe"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe:57,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].retain(int)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompContentSubframe"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.stomp.StompContentSubframe"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompContentSubframe:61,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].touch()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionDepth: 2
    returnType: "io.netty.handler.codec.stomp.LastStompContentSubframe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].touch()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe:63,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].touch()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompContentSubframe"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionDepth: 1
    returnType: "io.netty.handler.codec.stomp.StompContentSubframe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].touch()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompContentSubframe:67,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionDepth: 2
    returnType: "io.netty.handler.codec.stomp.LastStompContentSubframe"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].touch(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe:69,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompContentSubframe"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionDepth: 1
    returnType: "io.netty.handler.codec.stomp.StompContentSubframe"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].touch(java.lang.Object)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompContentSubframe:73,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].toString()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].decoderResult()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 20
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe:75,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe:75,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe:76,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].decoderResult()"
    - Src: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe:76,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe:76,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.stomp.DefaultLastStompContentSubframe:76,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].decoderResult()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompContentSubframe"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "io.netty.handler.codec.DecoderResult"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsCache$1].<init>(io.netty.resolver.dns.DefaultDnsCache)"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCache$1"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DefaultDnsCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.Cache].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultDnsCache$1:36,1"
      Dst: "[io.netty.resolver.dns.Cache].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsCache$1].shouldReplaceAll(io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry)"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCache$1"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].cause()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DefaultDnsCache$1:40"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DefaultDnsCache$1:39"
        BranchSideFuncs:
        - "cause()"
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultDnsCache$1:40,1"
      Dst: "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].cause()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].cause()"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsCache$1].equals(io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry,io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry)"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCache$1"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 52
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry"
    - "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].address()"
    - "[java.net.Inet4Address].equals(java.lang.Object)"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry:io.netty.util.Signal:java.lang.Object].cause()"
    - "[io.netty.util.ResourceLeakException].equals(java.lang.Object)"
    - "[java.net.InetAddress].equals(java.lang.Object)"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].cause()"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DefaultDnsCache$1:45"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DefaultDnsCache$1:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DefaultDnsCache$1:47"
        BranchSideFuncs:
        - "address()"
    - Branch String: "io.netty.resolver.dns.DefaultDnsCache$1:48"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DefaultDnsCache$1:51"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DefaultDnsCache$1:50"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "cause()"
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultDnsCache$1:45,1"
      Dst: "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].address()"
    - Src: "io.netty.resolver.dns.DefaultDnsCache$1:46,1"
      Dst: "[java.net.InetAddress].equals(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DefaultDnsCache$1:51,1"
      Dst: "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].cause()"
    - Src: "io.netty.resolver.dns.DefaultDnsCache$1:51,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].address()"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionDepth: 0
    returnType: "java.net.InetAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsCache$1].equals(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCache$1"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultDnsCache$1].equals(io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry,io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultDnsCache$1:36,1"
      Dst: "[io.netty.resolver.dns.DefaultDnsCache$1].equals(io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry,io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsCache$1].shouldReplaceAll(java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCache$1"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultDnsCache$1].shouldReplaceAll(io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultDnsCache$1:36,1"
      Dst: "[io.netty.resolver.dns.DefaultDnsCache$1].shouldReplaceAll(io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$5].<init>(io.netty.channel.AbstractChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$5"
    linkageType: ""
    functionLinenumber: 327
    functionLinenumberEnd: 329
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$5:328,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$5"
    linkageType: ""
    functionLinenumber: 330
    functionLinenumberEnd: 333
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].access$400(io.netty.channel.AbstractChannelHandlerContext,java.lang.Throwable)"
    functionUses: 50
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$5:331,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].access$400(io.netty.channel.AbstractChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannelRegistry].register(io.netty.channel.Channel,io.netty.channel.local.LocalAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.local.LocalChannelRegistry"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 49
    functionDepth: 1
    returnType: "io.netty.channel.local.LocalAddress"
    argCount: 3
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.channel.local.LocalAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.local.LocalAddress].equals(java.lang.Object)"
    - "[io.netty.channel.local.LocalAddress].<init>(io.netty.channel.Channel)"
    - "[java.util.concurrent.ConcurrentHashMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 38
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalChannelRegistry:32"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannelRegistry:35"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.local.LocalChannelRegistry:34"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannelRegistry:35"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannelRegistry:39"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "append(java.lang.String)"
      - BranchSide: "io.netty.channel.local.LocalChannelRegistry:38"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.channel.local.LocalChannelRegistry:40"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannelRegistry:44"
        BranchSideFuncs:
        - "<init>(io.netty.channel.Channel)"
      - BranchSide: "io.netty.channel.local.LocalChannelRegistry:43"
        BranchSideFuncs:
        - "putIfAbsent(java.lang.Object,java.lang.Object)"
    - Branch String: "io.netty.channel.local.LocalChannelRegistry:45"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannelRegistry:48"
        BranchSideFuncs:
        - "<init>()"
        - "toString()"
        - "append(java.lang.Object)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.local.LocalChannelRegistry:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannelRegistry:33,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String)"
    - Src: "io.netty.channel.local.LocalChannelRegistry:36,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.local.LocalChannelRegistry:36,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.local.LocalChannelRegistry:36,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.channel.local.LocalChannelRegistry:36,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.local.LocalChannelRegistry:40,1"
      Dst: "[io.netty.channel.local.LocalAddress].equals(java.lang.Object)"
    - Src: "io.netty.channel.local.LocalChannelRegistry:41,1"
      Dst: "[io.netty.channel.local.LocalAddress].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.channel.local.LocalChannelRegistry:44,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.local.LocalChannelRegistry:46,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.local.LocalAddress].equals(java.lang.Object)"
    functionSourceFile: "io.netty.channel.local.LocalAddress"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 10
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalAddress:81"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalAddress:85"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.local.LocalAddress:84"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.local.LocalAddress:85,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalAddress].<init>(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.local.LocalAddress"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.SocketAddress].<init>()"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.channel.AbstractChannel].hashCode()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].hashCode()"
    - "[java.lang.Long].toHexString(long)"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    - "[java.lang.StringBuilder].substring(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Object].hashCode()"
    functionUses: 2
    ICount: 18
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalAddress:43,1"
      Dst: "[java.net.SocketAddress].<init>()"
    - Src: "io.netty.channel.local.LocalAddress:44,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.channel.local.LocalAddress:45,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.local.LocalAddress:46,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "io.netty.channel.local.LocalAddress:46,1"
      Dst: "[java.lang.Long].toHexString(long)"
    - Src: "io.netty.channel.local.LocalAddress:47,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    - Src: "io.netty.channel.local.LocalAddress:48,1"
      Dst: "[java.lang.StringBuilder].substring(int)"
    - Src: "io.netty.channel.local.LocalAddress:49,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannelRegistry].get(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.local.LocalChannelRegistry"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "io.netty.channel.Channel"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannelRegistry:52,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannelRegistry].unregister(io.netty.channel.local.LocalAddress)"
    functionSourceFile: "io.netty.channel.local.LocalChannelRegistry"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.local.LocalAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].remove(java.lang.Object)"
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannelRegistry:56,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannelRegistry].<init>()"
    functionSourceFile: "io.netty.channel.local.LocalChannelRegistry"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannelRegistry:59,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf].<init>(io.netty.buffer.AbstractByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].<init>(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:24,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].<init>(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].maxCapacity()"
    functionUses: 68
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:29,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].maxCapacity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "io.netty.buffer.AbstractByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].unwrap()"
    functionUses: 106
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:34,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].unwrap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._getByte(int)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getByte(int)"
    functionUses: 16
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:39,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:39,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:39,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._getShort(int)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getShort(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getShort(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:44,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:44,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:44,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._getShortLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getShortLE(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:49,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:49,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:49,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getUnsignedMedium(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:54,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:54,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:54,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getUnsignedMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getUnsignedMediumLE(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:59,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:59,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:59,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getUnsignedMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._getInt(int)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getInt(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getInt(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getInt(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getInt(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:64,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:64,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:64,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._getIntLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getIntLE(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getIntLE(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:69,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:69,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:69,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._getLong(int)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getLong(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getLong(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getLong(int)"
    functionUses: 7
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:74,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:74,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:74,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._getLongLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getLongLE(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:79,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:79,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:79,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getLongLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._setByte(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setByte(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setByte(int,int)"
    functionUses: 25
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:84,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:84,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:84,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._setShort(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setShort(int,int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:89,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:89,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:89,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledSlicedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setShortLE(int,int)"
    functionUses: 5
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:94,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:94,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:94,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setShortLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setMedium(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setMedium(int,int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:99,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:99,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:99,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setMediumLE(int,int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:104,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:104,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:104,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setMediumLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._setInt(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setInt(int,int)"
    functionUses: 10
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:109,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:109,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:109,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setIntLE(int,int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:114,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:114,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:114,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setIntLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._setLong(int,long)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setLong(int,long)"
    functionUses: 8
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:119,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:119,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:119,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledSlicedByteBuf]._setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.UnpooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractByteBuf]._setLongLE(int,long)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:124,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:124,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.UnpooledSlicedByteBuf:124,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setLongLE(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$5].run()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$5"
    linkageType: ""
    functionLinenumber: 881
    functionLinenumberEnd: 884
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].access$300(io.netty.channel.DefaultChannelPipeline,java.lang.Thread,io.netty.channel.AbstractChannelHandlerContext,boolean)"
    - "[java.lang.Thread].currentThread()"
    functionUses: 50
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$5:882,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "io.netty.channel.DefaultChannelPipeline$5:882,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].access$300(io.netty.channel.DefaultChannelPipeline,java.lang.Thread,io.netty.channel.AbstractChannelHandlerContext,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].dropPongFrames()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].sendCloseFrame()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].forceCloseTimeoutMillis()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].<init>(boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,long)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:114,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:114,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].dropPongFrames()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:115,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].sendCloseFrame()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:116,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].forceCloseTimeoutMillis()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:114,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].<init>(boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:122,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,boolean,long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:126,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,boolean,long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:130,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,boolean,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "boolean"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,boolean,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:134,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:138,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:142,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:146,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,long)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:151,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,long)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:156,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,long)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:161,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,long)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:166,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "int"
    - "boolean"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,boolean,long)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:172,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,boolean,long)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:178,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,boolean,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "int"
    - "boolean"
    - "boolean"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,boolean,boolean,long)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:185,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,boolean,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,boolean,boolean,long)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:192,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,boolean,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,int,boolean,boolean,boolean,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].newBuilder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].maxFramePayloadLength(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowMaskMismatch(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowExtensions(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].build()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,boolean,long,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:200,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].newBuilder()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:201,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].maxFramePayloadLength(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:202,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowMaskMismatch(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:203,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowExtensions(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:204,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].build()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:199,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,boolean,long,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(java.lang.String,java.lang.String,boolean,boolean,long,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "boolean"
    - "long"
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].newBuilder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].websocketPath(java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].subprotocols(java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].checkStartsWith(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].handshakeTimeoutMillis(long)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].dropPongFrames(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].decoderConfig(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].build()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:210,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].newBuilder()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:211,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].websocketPath(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:212,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].subprotocols(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:213,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].checkStartsWith(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:214,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].handshakeTimeoutMillis(long)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:215,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].dropPongFrames(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:216,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].decoderConfig(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:217,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].build()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:210,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 234
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].get(java.lang.Class)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig)"
    - "[io.netty.channel.DefaultChannelPipeline].addBefore(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[java.lang.Class].getName()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].name()"
    - "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].decoderConfig()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].withUTF8Validator()"
    - "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].<init>(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].closeOnProtocolViolation()"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].get(java.lang.Class)"
    - "[io.netty.channel.ChannelHandlerContext].name()"
    - "[io.netty.channel.ChannelPipeline].addBefore(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    functionUses: 5
    ICount: 28
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:223"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:227"
        BranchSideFuncs:
        - "get(java.lang.Class)"
        - "withUTF8Validator()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:228"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:232"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:228"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:232"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:222,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:223,1"
      Dst: "[io.netty.channel.ChannelPipeline].get(java.lang.Class)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:225,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].name()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:225,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:225,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:225,1"
      Dst: "[io.netty.channel.ChannelPipeline].addBefore(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:228,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].decoderConfig()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:228,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].withUTF8Validator()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:231,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].closeOnProtocolViolation()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:231,1"
      Dst: "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:53,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:54,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].decoderConfig()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: 236
    functionLinenumberEnd: 251
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].handleCloseFrames()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].getHandshaker(io.netty.channel.Channel)"
    - "[io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame].retain()"
    - "[io.netty.handler.codec.http.websocketx.PingWebSocketFrame].retain()"
    - "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].retain()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retain()"
    - "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].retain()"
    - "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].retain()"
    - "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].retain()"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].closeSent(io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker00].close(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.CloseWebSocketFrame,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].close(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.CloseWebSocketFrame,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 25
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:237"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:249"
        BranchSideFuncs:
        - "channel()"
        - "getHandshaker(io.netty.channel.Channel)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:248"
        BranchSideFuncs:
        - "decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:237"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:249"
        BranchSideFuncs:
        - "channel()"
        - "getHandshaker(io.netty.channel.Channel)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:248"
        BranchSideFuncs:
        - "decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:239"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:245"
        BranchSideFuncs:
        - "newPromise()"
        - "retain()"
        - "close(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.CloseWebSocketFrame,io.netty.channel.ChannelPromise)"
        - "closeSent(io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:244"
        BranchSideFuncs:
        - "writeAndFlush(java.lang.Object)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:237,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].handleCloseFrames()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:238,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:238,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].getHandshaker(io.netty.channel.Channel)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:240,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retain()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:241,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:242,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].closeSent(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:243,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].close(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.CloseWebSocketFrame,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:245,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:245,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:249,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].handleCloseFrames()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].getHandshaker(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: 269
    functionLinenumberEnd: 271
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DefaultAttributeMap].attr(io.netty.util.AttributeKey)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - "[io.netty.util.Attribute].get()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:270,1"
      Dst: "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:270,1"
      Dst: "[io.netty.util.Attribute].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].buildHandshakeException(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: 253
    functionLinenumberEnd: 255
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:254,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException].<init>(java.lang.String,io.netty.handler.codec.http.HttpRequest)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException:36,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException].<init>(java.lang.String,io.netty.handler.codec.http.HttpRequest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException].<init>(java.lang.String,io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 48
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketHandshakeException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].method()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].method()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].method()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].uri()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].uri()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage:io.netty.handler.codec.http.DefaultHttpRequest].uri()"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpRequest].method()"
    - "[io.netty.handler.codec.http.HttpRequest].uri()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 8
    ICount: 15
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException:45"
        BranchSideFuncs:
        - "protocolVersion()"
        - "method()"
        - "uri()"
        - "headers()"
        - "<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.handler.codec.http.HttpHeaders)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException:44"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException:40,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketHandshakeException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException:42,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException:42,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].method()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException:43,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].uri()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException:43,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException:43,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.handler.codec.http.HttpHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: 258
    functionLinenumberEnd: 268
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
    - "[java.lang.String].getBytes()"
    - "[java.io.InvalidClassException].getMessage()"
    - "[java.nio.file.InvalidPathException].getMessage()"
    - "[java.lang.Throwable].getMessage()"
    - "[sun.nio.fs.UnixException].getMessage()"
    - "[java.net.URISyntaxException].getMessage()"
    - "[java.util.regex.PatternSyntaxException].getMessage()"
    - "[java.nio.file.FileSystemException].getMessage()"
    - "[java.security.cert.CertificateRevokedException].getMessage()"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.AbstractChannel].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 4
    ICount: 20
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:259"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:264"
        BranchSideFuncs:
        - "writeAndFlush(java.lang.Object)"
        - "wrappedBuffer(byte[])"
        - "channel()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
        - "getBytes()"
        - "getMessage()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:263"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
        - "close()"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:261,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:261,1"
      Dst: "[java.lang.String].getBytes()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:261,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:261,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:262,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:262,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:262,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:264,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:265,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpResponseStatus"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,boolean)"
    functionUses: 14
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:43,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpResponseStatus"
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,boolean,boolean)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:57,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 67
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpResponseStatus"
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean,boolean)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(boolean)"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders].<init>(boolean)"
    functionUses: 3
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultFullHttpResponse:64"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpResponse:62"
        BranchSideFuncs:
        - "<init>(boolean)"
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpResponse:61"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean,boolean)"
        - "<init>(boolean)"
        - "checkNotNull(java.lang.Object,java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:62,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean,boolean)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:63,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:64,1"
      Dst: "[io.netty.handler.codec.http.CombinedHttpHeaders].<init>(boolean)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:64,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpResponse"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 67
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpResponseStatus"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpMessage].<init>(io.netty.handler.codec.http.HttpVersion,boolean,boolean)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpResponse:64,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpMessage].<init>(io.netty.handler.codec.http.HttpVersion,boolean,boolean)"
    - Src: "io.netty.handler.codec.http.DefaultHttpResponse:65,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.CombinedHttpHeaders].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.CombinedHttpHeaders"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(io.netty.handler.codec.DefaultHeaders)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].nameValidator(boolean)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].valueConverter()"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].valueValidator(boolean)"
    functionUses: 2
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CombinedHttpHeaders:41,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].valueConverter()"
    - Src: "io.netty.handler.codec.http.CombinedHttpHeaders:41,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].nameValidator(boolean)"
    - Src: "io.netty.handler.codec.http.CombinedHttpHeaders:42,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].valueValidator(boolean)"
    - Src: "io.netty.handler.codec.http.CombinedHttpHeaders:42,1"
      Dst: "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
    - Src: "io.netty.handler.codec.http.CombinedHttpHeaders:41,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(io.netty.handler.codec.DefaultHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].valueConverter()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 354
    functionLinenumberEnd: 356
    functionDepth: 0
    returnType: "io.netty.handler.codec.ValueConverter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].nameValidator(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 365
    functionLinenumberEnd: 367
    functionDepth: 0
    returnType: "io.netty.handler.codec.NameValidator<CharSequence>"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultHttpHeaders:366"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders:365"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
    functionSourceFile: "io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.util.HashingStrategy"
    - "io.netty.handler.codec.ValueConverter"
    - "io.netty.handler.codec.DefaultHeaders$NameValidator"
    - "io.netty.handler.codec.DefaultHeaders$ValueValidator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl:94,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(boolean,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].nameValidator(boolean)"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:77,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].nameValidator(boolean)"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:77,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(boolean,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].setHandshaker(io.netty.channel.Channel,io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: 273
    functionLinenumberEnd: 276
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DefaultAttributeMap].attr(io.netty.util.AttributeKey)"
    - "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    - "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - "[io.netty.util.Attribute].set(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:274,1"
      Dst: "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:274,1"
      Dst: "[io.netty.util.Attribute].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].flush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].flush(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:54,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].flush(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].read(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].read(io.netty.channel.ChannelHandlerContext)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:54,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].read(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:54,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:54,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:54,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:54,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:54,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:54,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler:54,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].<init>(byte[])"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 63
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.X509Certificate].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:60,1"
      Dst: "[java.security.cert.X509Certificate].<init>()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:61,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].checkValidity()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].checkValidity()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:66,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:66,1"
      Dst: "[java.security.cert.X509Certificate].checkValidity()"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateExpiredException"
      - "java.security.cert.CertificateNotYetValidException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 241
    functionDepth: 0
    returnType: "java.security.cert.X509Certificate"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayInputStream].<init>(byte[])"
    - "[java.security.cert.CertificateFactory].generateCertificate(java.io.InputStream)"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.util.LazyX509Certificate:232"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.LazyX509Certificate:239"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:234,1"
      Dst: "[java.io.ByteArrayInputStream].<init>(byte[])"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:234,1"
      Dst: "[java.security.cert.CertificateFactory].generateCertificate(java.io.InputStream)"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:237,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].checkValidity(java.util.Date)"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Date"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].checkValidity(java.util.Date)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:71,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:71,1"
      Dst: "[java.security.cert.X509Certificate].checkValidity(java.util.Date)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateExpiredException"
      - "java.security.cert.CertificateNotYetValidException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getIssuerX500Principal()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "javax.security.auth.x500.X500Principal"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getIssuerX500Principal()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:76,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:76,1"
      Dst: "[java.security.cert.X509Certificate].getIssuerX500Principal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getSubjectX500Principal()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "javax.security.auth.x500.X500Principal"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getSubjectX500Principal()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:81,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:81,1"
      Dst: "[java.security.cert.X509Certificate].getSubjectX500Principal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getExtendedKeyUsage()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getExtendedKeyUsage()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:86,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:86,1"
      Dst: "[java.security.cert.X509Certificate].getExtendedKeyUsage()"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateParsingException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getSubjectAlternativeNames()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getSubjectAlternativeNames()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:91,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:91,1"
      Dst: "[java.security.cert.X509Certificate].getSubjectAlternativeNames()"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateParsingException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getIssuerAlternativeNames()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getSubjectAlternativeNames()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:96,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:96,1"
      Dst: "[java.security.cert.X509Certificate].getSubjectAlternativeNames()"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateParsingException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].verify(java.security.PublicKey,java.security.Provider)"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.PublicKey"
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].verify(java.security.PublicKey,java.security.Provider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:103,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:103,1"
      Dst: "[java.security.cert.X509Certificate].verify(java.security.PublicKey,java.security.Provider)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      - "java.security.NoSuchAlgorithmException"
      - "java.security.InvalidKeyException"
      - "java.security.SignatureException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getVersion()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getVersion()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:108,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:108,1"
      Dst: "[java.security.cert.X509Certificate].getVersion()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getSerialNumber()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getSerialNumber()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:113,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:113,1"
      Dst: "[java.security.cert.X509Certificate].getSerialNumber()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getIssuerDN()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.security.Principal"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getIssuerDN()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:118,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:118,1"
      Dst: "[java.security.cert.X509Certificate].getIssuerDN()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getSubjectDN()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.security.Principal"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getSubjectDN()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:123,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:123,1"
      Dst: "[java.security.cert.X509Certificate].getSubjectDN()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getNotBefore()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getNotBefore()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:128,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:128,1"
      Dst: "[java.security.cert.X509Certificate].getNotBefore()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getNotAfter()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getNotAfter()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:133,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:133,1"
      Dst: "[java.security.cert.X509Certificate].getNotAfter()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getTBSCertificate()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getTBSCertificate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:138,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:138,1"
      Dst: "[java.security.cert.X509Certificate].getTBSCertificate()"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateEncodingException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getSignature()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getSignature()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:143,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:143,1"
      Dst: "[java.security.cert.X509Certificate].getSignature()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getSigAlgName()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getSigAlgName()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:148,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:148,1"
      Dst: "[java.security.cert.X509Certificate].getSigAlgName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getSigAlgOID()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getSigAlgOID()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:153,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:153,1"
      Dst: "[java.security.cert.X509Certificate].getSigAlgOID()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getSigAlgParams()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getSigAlgParams()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:158,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:158,1"
      Dst: "[java.security.cert.X509Certificate].getSigAlgParams()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getIssuerUniqueID()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getIssuerUniqueID()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:163,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:163,1"
      Dst: "[java.security.cert.X509Certificate].getIssuerUniqueID()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getSubjectUniqueID()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getSubjectUniqueID()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:168,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:168,1"
      Dst: "[java.security.cert.X509Certificate].getSubjectUniqueID()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getKeyUsage()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getKeyUsage()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:173,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:173,1"
      Dst: "[java.security.cert.X509Certificate].getKeyUsage()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getBasicConstraints()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Certificate].getBasicConstraints()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:178,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:178,1"
      Dst: "[java.security.cert.X509Certificate].getBasicConstraints()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getEncoded()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.text.DateFormatSymbols].clone()"
    - "[java.util.TreeSet].clone()"
    - "[javax.crypto.MacSpi].clone()"
    - "[java.util.GregorianCalendar].clone()"
    - "[java.util.Hashtable].clone()"
    - "[java.util.Hashtable$Entry].clone()"
    - "[java.util.LinkedList].clone()"
    - "[java.lang.Thread].clone()"
    - "[java.util.IdentityHashMap].clone()"
    - "[java.util.Locale].clone()"
    - "[java.util.ArrayList].clone()"
    - "[java.util.concurrent.CopyOnWriteArrayList].clone()"
    - "[java.lang.Object].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[java.util.ArrayDeque].clone()"
    - "[java.util.jar.Manifest].clone()"
    - "[java.security.Signature].clone()"
    - "[java.util.zip.ZipEntry].clone()"
    - "[java.util.TimeZone].clone()"
    - "[java.util.AbstractMap].clone()"
    - "[java.text.NumberFormat].clone()"
    - "[java.util.EnumSet].clone()"
    - "[java.security.MessageDigest].clone()"
    - "[sun.security.x509.GeneralSubtrees].clone()"
    - "[java.lang.ref.Reference].clone()"
    - "[java.text.SimpleDateFormat].clone()"
    - "[java.util.BitSet].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[sun.util.calendar.CalendarDate].clone()"
    - "[java.text.Collator].clone()"
    - "[jaz.Zer].clone()"
    - "[sun.text.normalizer.UCharacterIterator].clone()"
    - "[java.security.MessageDigestSpi].clone()"
    - "[java.util.Vector].clone()"
    - "[sun.security.x509.NameConstraintsExtension].clone()"
    - "[java.util.jar.Attributes].clone()"
    - "[java.text.DateFormat].clone()"
    - "[java.util.HashMap].clone()"
    - "[java.text.BreakIterator].clone()"
    - "[java.text.MessageFormat].clone()"
    - "[javax.crypto.Mac].clone()"
    - "[java.util.Properties].clone()"
    - "[java.lang.invoke.MemberName].clone()"
    - "[java.util.Date].clone()"
    - "[java.security.SignatureSpi].clone()"
    - "[java.util.Calendar].clone()"
    - "[sun.security.util.BitArray].clone()"
    - "[java.text.Format].clone()"
    - "[java.util.TreeMap].clone()"
    - "[java.text.DecimalFormatSymbols].clone()"
    - "[java.util.HashSet].clone()"
    - "[java.net.HttpCookie].clone()"
    functionUses: 1
    ICount: 5
    EdgeCount: 53
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:183,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].verify(java.security.PublicKey)"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.PublicKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.Certificate].verify(java.security.PublicKey)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:190,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:190,1"
      Dst: "[java.security.cert.Certificate].verify(java.security.PublicKey)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      - "java.security.NoSuchAlgorithmException"
      - "java.security.InvalidKeyException"
      - "java.security.NoSuchProviderException"
      - "java.security.SignatureException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].verify(java.security.PublicKey,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.PublicKey"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.Certificate].verify(java.security.PublicKey,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:197,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:197,1"
      Dst: "[java.security.cert.Certificate].verify(java.security.PublicKey,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      - "java.security.NoSuchAlgorithmException"
      - "java.security.InvalidKeyException"
      - "java.security.NoSuchProviderException"
      - "java.security.SignatureException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].toString()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].toString()"
    - "[io.netty.handler.ssl.PemX509Certificate].toString()"
    - "[sun.security.x509.X509CertImpl].toString()"
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.Certificate].toString()"
    functionUses: 20
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:202,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:202,1"
      Dst: "[java.security.cert.Certificate].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getPublicKey()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.security.PublicKey"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.Certificate].getPublicKey()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:207,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:207,1"
      Dst: "[java.security.cert.Certificate].getPublicKey()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].hasUnsupportedCriticalExtension()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Extension].hasUnsupportedCriticalExtension()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:212,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:212,1"
      Dst: "[java.security.cert.X509Extension].hasUnsupportedCriticalExtension()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getCriticalExtensionOIDs()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Extension].getCriticalExtensionOIDs()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:217,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:217,1"
      Dst: "[java.security.cert.X509Extension].getCriticalExtensionOIDs()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getNonCriticalExtensionOIDs()"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Extension].getNonCriticalExtensionOIDs()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:222,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:222,1"
      Dst: "[java.security.cert.X509Extension].getNonCriticalExtensionOIDs()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.LazyX509Certificate].getExtensionValue(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.util.LazyX509Certificate"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - "[java.security.cert.X509Extension].getExtensionValue(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:227,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].unwrap()"
    - Src: "io.netty.handler.ssl.util.LazyX509Certificate:227,1"
      Dst: "[java.security.cert.X509Extension].getExtensionValue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop$4].<init>(io.netty.channel.nio.NioEventLoop,java.lang.Class,java.nio.channels.Selector,io.netty.channel.nio.SelectedSelectionKeySet)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$4"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.nio.NioEventLoop"
    - "java.lang.Class"
    - "java.nio.channels.Selector"
    - "io.netty.channel.nio.SelectedSelectionKeySet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$4:213,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop$4].run()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$4"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 253
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getDeclaredField(java.lang.String)"
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.util.internal.PlatformDependent].objectFieldOffset(java.lang.reflect.Field)"
    - "[io.netty.util.internal.PlatformDependent].putObject(java.lang.Object,long,java.lang.Object)"
    - "[io.netty.util.internal.ReflectionUtil].trySetAccessible(java.lang.reflect.AccessibleObject,boolean)"
    - "[java.lang.reflect.Field].set(java.lang.Object,java.lang.Object)"
    functionUses: 4
    ICount: 39
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop$4:220"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop$4:236"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop$4:220"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop$4:236"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop$4:227"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop$4:237"
        BranchSideFuncs:
        - "putObject(java.lang.Object,long,java.lang.Object)"
      - BranchSide: "io.netty.channel.nio.NioEventLoop$4:236"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop$4:227"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop$4:237"
        BranchSideFuncs:
        - "putObject(java.lang.Object,long,java.lang.Object)"
      - BranchSide: "io.netty.channel.nio.NioEventLoop$4:236"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop$4:238"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop$4:241"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop$4:240"
        BranchSideFuncs:
        - "trySetAccessible(java.lang.reflect.AccessibleObject,boolean)"
    - Branch String: "io.netty.channel.nio.NioEventLoop$4:242"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop$4:246"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop$4:245"
        BranchSideFuncs:
        - "set(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$4:217,1"
      Dst: "[java.lang.Class].getDeclaredField(java.lang.String)"
    - Src: "io.netty.channel.nio.NioEventLoop$4:220,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.nio.NioEventLoop$4:220,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.channel.nio.NioEventLoop$4:223,1"
      Dst: "[io.netty.util.internal.PlatformDependent].objectFieldOffset(java.lang.reflect.Field)"
    - Src: "io.netty.channel.nio.NioEventLoop$4:228,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putObject(java.lang.Object,long,java.lang.Object)"
    - Src: "io.netty.channel.nio.NioEventLoop$4:237,1"
      Dst: "[io.netty.util.internal.ReflectionUtil].trySetAccessible(java.lang.reflect.AccessibleObject,boolean)"
    - Src: "io.netty.channel.nio.NioEventLoop$4:246,1"
      Dst: "[java.lang.reflect.Field].set(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].objectFieldOffset(java.lang.reflect.Field)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 738
    functionLinenumberEnd: 740
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Field"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].objectFieldOffset(java.lang.reflect.Field)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:739,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].objectFieldOffset(java.lang.reflect.Field)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].objectFieldOffset(java.lang.reflect.Field)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 627
    functionLinenumberEnd: 629
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.lang.reflect.Field"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].objectFieldOffset(java.lang.reflect.Field)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:628,1"
      Dst: "[sun.misc.Unsafe].objectFieldOffset(java.lang.reflect.Field)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].putObject(java.lang.Object,long,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 734
    functionLinenumberEnd: 737
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "long"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].putObject(java.lang.Object,long,java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:735,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].putObject(java.lang.Object,long,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].putObject(java.lang.Object,long,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 719
    functionLinenumberEnd: 722
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "long"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].putObject(java.lang.Object,long,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:720,1"
      Dst: "[sun.misc.Unsafe].putObject(java.lang.Object,long,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,int)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.bootstrap.Bootstrap"
    - "io.netty.channel.pool.ChannelPoolHandler"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.FixedChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:79,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,int,int)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.bootstrap.Bootstrap"
    - "io.netty.channel.pool.ChannelPoolHandler"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.FixedChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker,io.netty.channel.pool.FixedChannelPool$AcquireTimeoutAction,long,int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:95,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker,io.netty.channel.pool.FixedChannelPool$AcquireTimeoutAction,long,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker,io.netty.channel.pool.FixedChannelPool$AcquireTimeoutAction,long,int,int)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "io.netty.bootstrap.Bootstrap"
    - "io.netty.channel.pool.ChannelPoolHandler"
    - "io.netty.channel.pool.ChannelHealthChecker"
    - "io.netty.channel.pool.FixedChannelPool$AcquireTimeoutAction"
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.FixedChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker,io.netty.channel.pool.FixedChannelPool$AcquireTimeoutAction,long,int,int,boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:120,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker,io.netty.channel.pool.FixedChannelPool$AcquireTimeoutAction,long,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker,io.netty.channel.pool.FixedChannelPool$AcquireTimeoutAction,long,int,int,boolean)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "io.netty.bootstrap.Bootstrap"
    - "io.netty.channel.pool.ChannelPoolHandler"
    - "io.netty.channel.pool.ChannelHealthChecker"
    - "io.netty.channel.pool.FixedChannelPool$AcquireTimeoutAction"
    - "long"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.FixedChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker,io.netty.channel.pool.FixedChannelPool$AcquireTimeoutAction,long,int,int,boolean,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:147,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker,io.netty.channel.pool.FixedChannelPool$AcquireTimeoutAction,long,int,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker,io.netty.channel.pool.FixedChannelPool$AcquireTimeoutAction,long,int,int,boolean,boolean)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 9
    argTypes:
    - "io.netty.bootstrap.Bootstrap"
    - "io.netty.channel.pool.ChannelPoolHandler"
    - "io.netty.channel.pool.ChannelHealthChecker"
    - "io.netty.channel.pool.FixedChannelPool$AcquireTimeoutAction"
    - "long"
    - "int"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker,boolean,boolean)"
    - "[java.util.ArrayDeque].<init>()"
    - "[java.util.concurrent.atomic.AtomicInteger].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.concurrent.TimeUnit].toNanos(long)"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.channel.pool.FixedChannelPool$1].<init>(io.netty.channel.pool.FixedChannelPool)"
    - "[io.netty.channel.pool.FixedChannelPool$2].<init>(io.netty.channel.pool.FixedChannelPool)"
    - "[java.lang.Error].<init>()"
    - "[io.netty.bootstrap.Bootstrap].config()"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].group()"
    - "[io.netty.channel.EventLoopGroup].next()"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.FixedChannelPool:180"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:183"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:182"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool:180"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:183"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:182"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool:183"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:185"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:184"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool:183"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:185"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:184"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool:185"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:188"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:187"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool:185"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:188"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:187"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:177,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker,boolean,boolean)"
    - Src: "io.netty.channel.pool.FixedChannelPool:62,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "io.netty.channel.pool.FixedChannelPool:65,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].<init>()"
    - Src: "io.netty.channel.pool.FixedChannelPool:178,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.channel.pool.FixedChannelPool:184,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "io.netty.channel.pool.FixedChannelPool:186,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.pool.FixedChannelPool:186,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.pool.FixedChannelPool:186,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.channel.pool.FixedChannelPool:186,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.pool.FixedChannelPool:186,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.channel.pool.FixedChannelPool:188,1"
      Dst: "[java.util.concurrent.TimeUnit].toNanos(long)"
    - Src: "io.netty.channel.pool.FixedChannelPool:189,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.channel.pool.FixedChannelPool:191,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool$1].<init>(io.netty.channel.pool.FixedChannelPool)"
    - Src: "io.netty.channel.pool.FixedChannelPool:200,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool$2].<init>(io.netty.channel.pool.FixedChannelPool)"
    - Src: "io.netty.channel.pool.FixedChannelPool:212,1"
      Dst: "[java.lang.Error].<init>()"
    - Src: "io.netty.channel.pool.FixedChannelPool:215,1"
      Dst: "[io.netty.bootstrap.Bootstrap].config()"
    - Src: "io.netty.channel.pool.FixedChannelPool:215,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrapConfig].group()"
    - Src: "io.netty.channel.pool.FixedChannelPool:215,1"
      Dst: "[io.netty.channel.EventLoopGroup].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.pool.FixedChannelPool].acquiredChannelCount()"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].get()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:222,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].acquire(io.netty.util.concurrent.Promise<Channel>)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future<Channel>"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Promise<Channel>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.channel.pool.FixedChannelPool].acquire0(io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.pool.FixedChannelPool$3].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.FixedChannelPool:228"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:231"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:228,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.pool.FixedChannelPool:229,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].acquire0(io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.FixedChannelPool:231,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool$3].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.FixedChannelPool:231,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.channel.pool.FixedChannelPool:239,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.pool.FixedChannelPool$3].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$3"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$3:231,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].acquire0(io.netty.util.concurrent.Promise<Channel>)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 245
    functionLinenumberEnd: 285
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Promise<Channel>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].setFailure(java.lang.Throwable)"
    - "[java.util.concurrent.atomic.AtomicInteger].get()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].newPromise()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].newPromise()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].newPromise()"
    - "[io.netty.channel.pool.FixedChannelPool$AcquireListener].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.pool.FixedChannelPool$AcquireListener].acquired()"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.pool.SimpleChannelPool].acquire(io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.pool.FixedChannelPool].tooManyOutstanding(io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.pool.FixedChannelPool$AcquireTask].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.DefaultPriorityQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].offer(java.lang.Object)"
    - "[java.util.LinkedList].offer(java.lang.Object)"
    - "[java.util.ArrayDeque].offer(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].offer(java.lang.Object)"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[java.util.Queue].offer(java.lang.Object)"
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 70
    EdgeCount: 66
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.FixedChannelPool:246"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:248"
        BranchSideFuncs:
        - "schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "acquire(io.netty.util.concurrent.Promise)"
        - "acquired()"
        - "tooManyOutstanding(io.netty.util.concurrent.Promise)"
        - "get()"
        - "offer(java.lang.Object)"
        - "newPromise()"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(java.lang.String)"
        - "<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
        - "tryFailure(java.lang.Throwable)"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:247"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool:246"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:248"
        BranchSideFuncs:
        - "schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "acquire(io.netty.util.concurrent.Promise)"
        - "acquired()"
        - "tooManyOutstanding(io.netty.util.concurrent.Promise)"
        - "get()"
        - "offer(java.lang.Object)"
        - "newPromise()"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(java.lang.String)"
        - "<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
        - "tryFailure(java.lang.Throwable)"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:247"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool:248"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:252"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:251"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool:252"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:263"
        BranchSideFuncs:
        - "get()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:262"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool:253"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:257"
        BranchSideFuncs:
        - "schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "acquire(io.netty.util.concurrent.Promise)"
        - "acquired()"
        - "tooManyOutstanding(io.netty.util.concurrent.Promise)"
        - "get()"
        - "offer(java.lang.Object)"
        - "newPromise()"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(java.lang.String)"
        - "<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
        - "tryFailure(java.lang.Throwable)"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:256"
        BranchSideFuncs:
        - "acquire(io.netty.util.concurrent.Promise)"
        - "acquired()"
        - "newPromise()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Branch String: "io.netty.channel.pool.FixedChannelPool:253"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:257"
        BranchSideFuncs:
        - "schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "acquire(io.netty.util.concurrent.Promise)"
        - "acquired()"
        - "tooManyOutstanding(io.netty.util.concurrent.Promise)"
        - "get()"
        - "offer(java.lang.Object)"
        - "newPromise()"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(java.lang.String)"
        - "<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
        - "tryFailure(java.lang.Throwable)"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:256"
        BranchSideFuncs:
        - "acquire(io.netty.util.concurrent.Promise)"
        - "acquired()"
        - "newPromise()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Branch String: "io.netty.channel.pool.FixedChannelPool:263"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:266"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:265"
        BranchSideFuncs:
        - "offer(java.lang.Object)"
        - "<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    - Branch String: "io.netty.channel.pool.FixedChannelPool:267"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:275"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:274"
        BranchSideFuncs:
        - "tooManyOutstanding(io.netty.util.concurrent.Promise)"
    - Branch String: "io.netty.channel.pool.FixedChannelPool:270"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:279"
        BranchSideFuncs:
        - "schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:278"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.channel.pool.FixedChannelPool:279"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:283"
        BranchSideFuncs:
        - "schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "acquire(io.netty.util.concurrent.Promise)"
        - "acquired()"
        - "tooManyOutstanding(io.netty.util.concurrent.Promise)"
        - "get()"
        - "offer(java.lang.Object)"
        - "newPromise()"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(java.lang.String)"
        - "<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
        - "tryFailure(java.lang.Throwable)"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:282"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool:279"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:283"
        BranchSideFuncs:
        - "schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "acquire(io.netty.util.concurrent.Promise)"
        - "acquired()"
        - "tooManyOutstanding(io.netty.util.concurrent.Promise)"
        - "get()"
        - "offer(java.lang.Object)"
        - "newPromise()"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(java.lang.String)"
        - "<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
        - "tryFailure(java.lang.Throwable)"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:246,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.pool.FixedChannelPool:246,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.pool.FixedChannelPool:249,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.channel.pool.FixedChannelPool:249,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.pool.FixedChannelPool:252,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].get()"
    - Src: "io.netty.channel.pool.FixedChannelPool:257,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.channel.pool.FixedChannelPool:258,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool$AcquireListener].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.FixedChannelPool:259,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool$AcquireListener].acquired()"
    - Src: "io.netty.channel.pool.FixedChannelPool:260,1"
      Dst: "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.channel.pool.FixedChannelPool:261,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].acquire(io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.FixedChannelPool:264,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].tooManyOutstanding(io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.FixedChannelPool:266,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool$AcquireTask].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.FixedChannelPool:267,1"
      Dst: "[java.util.Queue].offer(java.lang.Object)"
    - Src: "io.netty.channel.pool.FixedChannelPool:271,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - Src: "io.netty.channel.pool.FixedChannelPool:282,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 22
    CyclomaticComplexity: 8
  - functionName: "[io.netty.channel.pool.FixedChannelPool$AcquireListener].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$AcquireListener"
    linkageType: ""
    functionLinenumber: 404
    functionLinenumberEnd: 408
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireListener:405,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool$AcquireListener].acquired()"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$AcquireListener"
    linkageType: ""
    functionLinenumber: 439
    functionLinenumberEnd: 446
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.FixedChannelPool].access$1100(io.netty.channel.pool.FixedChannelPool)"
    - "[java.util.concurrent.atomic.AtomicInteger].incrementAndGet()"
    functionUses: 3
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.FixedChannelPool$AcquireListener:440"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$AcquireListener:443"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$AcquireListener:442"
        BranchSideFuncs:
        - "access$1100(io.netty.channel.pool.FixedChannelPool)"
        - "incrementAndGet()"
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireListener:443,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].access$1100(io.netty.channel.pool.FixedChannelPool)"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireListener:443,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].incrementAndGet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].access$1100(io.netty.channel.pool.FixedChannelPool)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "java.util.concurrent.atomic.AtomicInteger"
    argCount: 1
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool$AcquireTask].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$AcquireTask"
    linkageType: ""
    functionLinenumber: 368
    functionLinenumberEnd: 375
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.FixedChannelPool].access$700(io.netty.channel.pool.FixedChannelPool)"
    - "[java.lang.System].nanoTime()"
    - "[io.netty.channel.pool.FixedChannelPool$AcquireListener].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.pool.FixedChannelPool].access$400(io.netty.channel.pool.FixedChannelPool)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].newPromise()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].newPromise()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].newPromise()"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 15
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireTask:370,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool$AcquireListener].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireTask:366,1"
      Dst: "[java.lang.System].nanoTime()"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireTask:366,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].access$700(io.netty.channel.pool.FixedChannelPool)"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireTask:373,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].access$400(io.netty.channel.pool.FixedChannelPool)"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireTask:373,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireTask:373,1"
      Dst: "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].access$700(io.netty.channel.pool.FixedChannelPool)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].access$400(io.netty.channel.pool.FixedChannelPool)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "io.netty.util.concurrent.EventExecutor"
    argCount: 1
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].tooManyOutstanding(io.netty.util.concurrent.Promise<?>)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 289
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Promise<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    functionUses: 2
    ICount: 6
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:287,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.channel.pool.FixedChannelPool:287,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].release(io.netty.channel.Channel,io.netty.util.concurrent.Promise<Void>)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 291
    functionLinenumberEnd: 325
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future<Void>"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.Promise<Void>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].newPromise()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].newPromise()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].newPromise()"
    - "[io.netty.channel.pool.FixedChannelPool$4].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.pool.SimpleChannelPool].release(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 11
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:292,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.pool.FixedChannelPool:293,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.channel.pool.FixedChannelPool:294,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool$4].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.FixedChannelPool:294,1"
      Dst: "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.channel.pool.FixedChannelPool:294,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].release(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool$4].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$4"
    linkageType: ""
    functionLinenumber: 293
    functionLinenumberEnd: 295
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$4:294,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].decrementAndRunTaskQueue()"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 328
    functionLinenumberEnd: 338
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].decrementAndGet()"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.pool.FixedChannelPool].runTaskQueue()"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.FixedChannelPool:330"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:335"
        BranchSideFuncs:
        - "runTaskQueue()"
    - Branch String: "io.netty.channel.pool.FixedChannelPool:330"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:335"
        BranchSideFuncs:
        - "runTaskQueue()"
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:329,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].decrementAndGet()"
    - Src: "io.netty.channel.pool.FixedChannelPool:330,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.pool.FixedChannelPool:336,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].runTaskQueue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.pool.FixedChannelPool].runTaskQueue()"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 339
    functionLinenumberEnd: 362
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].get()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.resolver.dns.Cache$1].cancel(boolean)"
    - "[io.netty.channel.pool.FixedChannelPool$AcquireListener].acquired()"
    - "[io.netty.channel.pool.SimpleChannelPool].acquire(io.netty.util.concurrent.Promise)"
    - "[java.lang.AssertionError].<init>()"
    - "[java.util.Queue].poll()"
    - "[java.util.concurrent.Future].cancel(boolean)"
    functionUses: 2
    ICount: 36
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.FixedChannelPool:340"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:359"
        BranchSideFuncs:
        - "poll()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:358"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool:342"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:347"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:346"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool:348"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:352"
        BranchSideFuncs:
        - "cancel(boolean)"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:351"
        BranchSideFuncs:
        - "acquire(io.netty.util.concurrent.Promise)"
        - "acquired()"
    - Branch String: "io.netty.channel.pool.FixedChannelPool:359"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:360"
        BranchSideFuncs:
        - "<init>()"
        - "get()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:359"
        BranchSideFuncs:
        - "<init>()"
        - "get()"
    - Branch String: "io.netty.channel.pool.FixedChannelPool:359"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:360"
        BranchSideFuncs:
        - "<init>()"
        - "get()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:359"
        BranchSideFuncs:
        - "<init>()"
        - "get()"
    - Branch String: "io.netty.channel.pool.FixedChannelPool:360"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:361"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:360"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool:360"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:361"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:360"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:340,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].get()"
    - Src: "io.netty.channel.pool.FixedChannelPool:341,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.channel.pool.FixedChannelPool:349,1"
      Dst: "[java.util.concurrent.Future].cancel(boolean)"
    - Src: "io.netty.channel.pool.FixedChannelPool:353,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool$AcquireListener].acquired()"
    - Src: "io.netty.channel.pool.FixedChannelPool:355,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].acquire(io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.FixedChannelPool:359,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.pool.FixedChannelPool].close()"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 450
    functionLinenumberEnd: 457
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].await()"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].await()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].await()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].await()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].await()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].await()"
    - "[io.netty.util.concurrent.CompleteFuture].await()"
    - "[io.netty.channel.DefaultChannelPromise].await()"
    - "[io.netty.util.concurrent.DefaultPromise].await()"
    - "[io.netty.channel.CompleteChannelFuture].await()"
    - "[io.netty.channel.pool.FixedChannelPool].closeAsync()"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].interrupt()"
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].await()"
    functionUses: 3
    ICount: 11
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:451,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].closeAsync()"
    - Src: "io.netty.channel.pool.FixedChannelPool:451,1"
      Dst: "[io.netty.util.concurrent.Future].await()"
    - Src: "io.netty.channel.pool.FixedChannelPool:453,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "io.netty.channel.pool.FixedChannelPool:453,1"
      Dst: "[java.lang.Thread].interrupt()"
    - Src: "io.netty.channel.pool.FixedChannelPool:454,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].closeAsync()"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 464
    functionLinenumberEnd: 485
    functionDepth: 2
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.channel.pool.FixedChannelPool].close0()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].newPromise()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].newPromise()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].newPromise()"
    - "[io.netty.channel.pool.FixedChannelPool$5].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 2
    ICount: 13
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.FixedChannelPool:465"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:468"
        BranchSideFuncs:
        - "close0()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:467"
        BranchSideFuncs:
        - "newPromise()"
        - "run()"
        - "execute(java.lang.Runnable)"
        - "<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:465,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.pool.FixedChannelPool:466,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].close0()"
    - Src: "io.netty.channel.pool.FixedChannelPool:468,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.channel.pool.FixedChannelPool:469,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool$5].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.FixedChannelPool:469,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].close0()"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 488
    functionLinenumberEnd: 519
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.resolver.dns.Cache$1].cancel(boolean)"
    - "[java.nio.channels.ClosedChannelException].<init>()"
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].setFailure(java.lang.Throwable)"
    - "[java.util.concurrent.atomic.AtomicInteger].set(int)"
    - "[io.netty.channel.pool.FixedChannelPool$6].<init>(io.netty.channel.pool.FixedChannelPool)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].submit(java.util.concurrent.Callable)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].newSucceededFuture(java.lang.Object)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[java.util.Queue].poll()"
    - "[java.util.concurrent.Future].cancel(boolean)"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    functionUses: 2
    ICount: 36
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.FixedChannelPool:489"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:490"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool:489"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:490"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool:491"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:518"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:517"
        BranchSideFuncs:
        - "newSucceededFuture(java.lang.Object)"
    - Branch String: "io.netty.channel.pool.FixedChannelPool:495"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:498"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:497"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool:499"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:502"
        BranchSideFuncs:
        - "cancel(boolean)"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool:501"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:489,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.pool.FixedChannelPool:489,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.pool.FixedChannelPool:494,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.channel.pool.FixedChannelPool:500,1"
      Dst: "[java.util.concurrent.Future].cancel(boolean)"
    - Src: "io.netty.channel.pool.FixedChannelPool:502,1"
      Dst: "[java.nio.channels.ClosedChannelException].<init>()"
    - Src: "io.netty.channel.pool.FixedChannelPool:502,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.pool.FixedChannelPool:504,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].set(int)"
    - Src: "io.netty.channel.pool.FixedChannelPool:509,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool$6].<init>(io.netty.channel.pool.FixedChannelPool)"
    - Src: "io.netty.channel.pool.FixedChannelPool:509,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].submit(java.util.concurrent.Callable)"
    - Src: "io.netty.channel.pool.FixedChannelPool:518,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].newSucceededFuture(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.pool.FixedChannelPool$6].<init>(io.netty.channel.pool.FixedChannelPool)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$6"
    linkageType: ""
    functionLinenumber: 508
    functionLinenumberEnd: 510
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$6:509,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool$5].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$5"
    linkageType: ""
    functionLinenumber: 468
    functionLinenumberEnd: 470
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$5:469,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].access$201(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 2
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].acquire(io.netty.util.concurrent.Promise)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:42,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].acquire(io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].access$300(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.FixedChannelPool].acquire0(io.netty.util.concurrent.Promise)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:42,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].acquire0(io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].access$500(io.netty.channel.pool.FixedChannelPool)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].access$600(io.netty.channel.pool.FixedChannelPool)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.FixedChannelPool].decrementAndRunTaskQueue()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:42,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].decrementAndRunTaskQueue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].access$800(io.netty.channel.pool.FixedChannelPool)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "java.util.Queue"
    argCount: 1
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].access$906(io.netty.channel.pool.FixedChannelPool)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].access$1000(io.netty.channel.pool.FixedChannelPool)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.FixedChannelPool].runTaskQueue()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:42,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].runTaskQueue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].access$1200(io.netty.channel.pool.FixedChannelPool)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 2
    returnType: "io.netty.util.concurrent.Future"
    argCount: 1
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.FixedChannelPool].close0()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:42,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].close0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool].access$1301(io.netty.channel.pool.FixedChannelPool)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].close()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool:42,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].close()"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 402
    functionLinenumberEnd: 411
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].pollChannel()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].awaitUninterruptibly()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].awaitUninterruptibly()"
    - "[io.netty.channel.DefaultChannelPromise].awaitUninterruptibly()"
    - "[io.netty.channel.VoidChannelPromise].awaitUninterruptibly()"
    - "[io.netty.channel.CompleteChannelFuture].awaitUninterruptibly()"
    - "[io.netty.channel.AbstractChannel].close()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].close()"
    - "[io.netty.channel.embedded.EmbeddedChannel].close()"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    - "[io.netty.channel.ChannelFuture].awaitUninterruptibly()"
    functionUses: 4
    ICount: 8
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:404"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:408"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:407"
        BranchSideFuncs:
        - "awaitUninterruptibly()"
        - "close()"
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:403,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].pollChannel()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:408,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:408,1"
      Dst: "[io.netty.channel.ChannelFuture].awaitUninterruptibly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].pollChannel()"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 385
    functionLinenumberEnd: 387
    functionDepth: 0
    returnType: "io.netty.channel.Channel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentLinkedDeque].pollFirst()"
    - "[java.util.ArrayDeque].pollFirst()"
    - "[java.util.concurrent.LinkedBlockingDeque].pollFirst()"
    - "[java.util.LinkedList].pollFirst()"
    - "[java.util.ArrayDeque].pollLast()"
    - "[java.util.concurrent.LinkedBlockingDeque].pollLast()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].pollLast()"
    - "[java.util.LinkedList].pollLast()"
    - "[java.util.Deque].pollLast()"
    - "[java.util.Deque].pollFirst()"
    functionUses: 2
    ICount: 11
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:386"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:385"
        BranchSideFuncs:
        - "pollFirst()"
        - "pollLast()"
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:386,1"
      Dst: "[java.util.Deque].pollLast()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:386,1"
      Dst: "[java.util.Deque].pollFirst()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].<init>()"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].<init>(int,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:107,1"
      Dst: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].<init>(int,int)"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].checkMaxBytesPerReadPair(int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:110,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:111,1"
      Dst: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].checkMaxBytesPerReadPair(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].newHandle()"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 3
    returnType: "io.netty.channel.RecvByteBufAllocator$Handle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].<init>(io.netty.channel.DefaultMaxBytesRecvByteBufAllocator,io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$1)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:119,1"
      Dst: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].<init>(io.netty.channel.DefaultMaxBytesRecvByteBufAllocator,io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].<init>(io.netty.channel.DefaultMaxBytesRecvByteBufAllocator,io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$1)"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator"
    - "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].<init>(io.netty.channel.DefaultMaxBytesRecvByteBufAllocator)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl:35,1"
      Dst: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].<init>(io.netty.channel.DefaultMaxBytesRecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].<init>(io.netty.channel.DefaultMaxBytesRecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 41
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl$1].<init>(io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl:35,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl:40,1"
      Dst: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl$1].<init>(io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl$1].<init>(io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl)"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl$1"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl$1:40,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].maxBytesPerRead()"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].maxBytesPerRead(int)"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].maxBytesPerIndividualRead()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:134"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:140"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:129,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:133,1"
      Dst: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].maxBytesPerIndividualRead()"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:135,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:135,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:135,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:135,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:135,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].maxBytesPerIndividualRead()"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].maxBytesPerIndividualRead(int)"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].maxBytesPerRead()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:157"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:163"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:162"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:152,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:156,1"
      Dst: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].maxBytesPerRead()"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:158,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:158,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:158,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:158,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:158,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].maxBytesPerReadPair()"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Map$Entry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.AbstractMap$SimpleEntry].<init>(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:170,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:170,1"
      Dst: "[java.util.AbstractMap$SimpleEntry].<init>(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].checkMaxBytesPerReadPair(int,int)"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:176"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:181"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:180"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:174,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:177,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:177,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:177,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:177,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:177,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].maxBytesPerReadPair(int,int)"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].checkMaxBytesPerReadPair(int,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator:186,1"
      Dst: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].checkMaxBytesPerReadPair(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].<init>(java.io.OutputStream)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.pcap.PcapWriteHandler].<init>(java.io.OutputStream,boolean,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:145,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].<init>(java.io.OutputStream,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].<init>(java.io.OutputStream,boolean,boolean)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.OutputStream"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.Class)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:164,1"
      Dst: "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:70,1"
      Dst: "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.Class)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:165,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].<init>(io.netty.handler.pcap.PcapWriteHandler$Builder,java.io.OutputStream)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.pcap.PcapWriteHandler$Builder"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.Class)"
    - "[io.netty.handler.pcap.PcapWriteHandler$Builder].access$000(io.netty.handler.pcap.PcapWriteHandler$Builder)"
    - "[io.netty.handler.pcap.PcapWriteHandler$Builder].access$100(io.netty.handler.pcap.PcapWriteHandler$Builder)"
    - "[io.netty.handler.pcap.PcapWriteHandler$Builder].access$200(io.netty.handler.pcap.PcapWriteHandler$Builder)"
    - "[io.netty.handler.pcap.PcapWriteHandler$Builder].access$300(io.netty.handler.pcap.PcapWriteHandler$Builder)"
    - "[io.netty.handler.pcap.PcapWriteHandler$Builder].access$400(io.netty.handler.pcap.PcapWriteHandler$Builder)"
    - "[io.netty.handler.pcap.PcapWriteHandler$Builder].access$500(io.netty.handler.pcap.PcapWriteHandler$Builder)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:170,1"
      Dst: "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:70,1"
      Dst: "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.Class)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:172,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler$Builder].access$000(io.netty.handler.pcap.PcapWriteHandler$Builder)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:173,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler$Builder].access$100(io.netty.handler.pcap.PcapWriteHandler$Builder)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:174,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler$Builder].access$200(io.netty.handler.pcap.PcapWriteHandler$Builder)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:175,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler$Builder].access$300(io.netty.handler.pcap.PcapWriteHandler$Builder)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:176,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler$Builder].access$400(io.netty.handler.pcap.PcapWriteHandler$Builder)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:177,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler$Builder].access$500(io.netty.handler.pcap.PcapWriteHandler$Builder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].builder()"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.pcap.PcapWriteHandler$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.pcap.PcapWriteHandler$Builder].<init>(io.netty.handler.pcap.PcapWriteHandler$1)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:181,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler$Builder].<init>(io.netty.handler.pcap.PcapWriteHandler$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler$Builder].<init>(io.netty.handler.pcap.PcapWriteHandler$1)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.pcap.PcapWriteHandler$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.pcap.PcapWriteHandler$Builder].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler$Builder:645,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler$Builder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler$Builder].<init>()"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler$Builder:654,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].initializeIfNecessary(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 269
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer()"
    - "[io.netty.handler.pcap.PcapWriter].<init>(java.io.OutputStream,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannel].close()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].close()"
    - "[io.netty.channel.embedded.EmbeddedChannel].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.pcap.PcapWriter].<init>(java.io.OutputStream)"
    - "[io.netty.channel.socket.nio.NioSocketChannel].parent()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].parent()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].parent()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].parent()"
    - "[io.netty.channel.epoll.EpollSocketChannel].parent()"
    - "[io.netty.channel.local.LocalChannel].parent()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].parent()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].parent()"
    - "[io.netty.channel.AbstractChannel].parent()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].remoteAddress()"
    - "[io.netty.channel.rxtx.RxtxChannel].remoteAddress()"
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].remoteAddress()"
    - "[io.netty.channel.local.LocalServerChannel].remoteAddress()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].remoteAddress()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].remoteAddress()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].remoteAddress()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].remoteAddress()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].remoteAddress()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].remoteAddress()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].remoteAddress()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].remoteAddress()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].remoteAddress()"
    - "[io.netty.channel.local.LocalChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollSocketChannel].remoteAddress()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].remoteAddress()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].remoteAddress()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].remoteAddress()"
    - "[io.netty.channel.AbstractServerChannel].remoteAddress()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].localAddress()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].localAddress()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].localAddress()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].localAddress()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].localAddress()"
    - "[io.netty.channel.local.LocalServerChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].localAddress()"
    - "[io.netty.channel.local.LocalChannel].localAddress()"
    - "[io.netty.channel.AbstractChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].localAddress()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].localAddress()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].localAddress()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].localAddress()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].localAddress()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].localAddress()"
    - "[io.netty.channel.rxtx.RxtxChannel].localAddress()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].localAddress()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].localAddress()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollSocketChannel].localAddress()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isConnected()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isConnected()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isConnected()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isConnected()"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String)"
    - "[io.netty.handler.pcap.TCPPacket].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int,int,io.netty.handler.pcap.TCPPacket$TCPFlag[])"
    - "[java.net.InetSocketAddress].getPort()"
    - "[io.netty.handler.pcap.PcapWriteHandler].completeTCPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.Channel].parent()"
    - "[io.netty.channel.Channel].remoteAddress()"
    - "[io.netty.channel.Channel].localAddress()"
    - "[io.netty.channel.socket.DatagramChannel].isConnected()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    functionUses: 3
    ICount: 129
    EdgeCount: 326
    BranchProfiles:
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:185"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:189"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:188"
        BranchSideFuncs:
        - "alloc()"
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:194"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:207"
        BranchSideFuncs:
        - "parent()"
        - "error(java.lang.String,java.lang.Throwable)"
        - "writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int,int,io.netty.handler.pcap.TCPPacket$TCPFlag[])"
        - "localAddress()"
        - "channel()"
        - "buffer()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "<init>(java.io.OutputStream)"
        - "completeTCPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
        - "alloc()"
        - "<init>(java.io.OutputStream,io.netty.buffer.ByteBuf)"
        - "remoteAddress()"
        - "isConnected()"
        - "close()"
        - "release()"
        - "getPort()"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:206"
        BranchSideFuncs:
        - "<init>(java.io.OutputStream)"
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:210"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:240"
        BranchSideFuncs:
        - "parent()"
        - "error(java.lang.String,java.lang.Throwable)"
        - "writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int,int,io.netty.handler.pcap.TCPPacket$TCPFlag[])"
        - "localAddress()"
        - "channel()"
        - "buffer()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "<init>(java.io.OutputStream)"
        - "completeTCPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
        - "alloc()"
        - "<init>(java.io.OutputStream,io.netty.buffer.ByteBuf)"
        - "remoteAddress()"
        - "isConnected()"
        - "close()"
        - "release()"
        - "getPort()"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:239"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:212"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:226"
        BranchSideFuncs:
        - "parent()"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:225"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:217"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:222"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:221"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:226"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:240"
        BranchSideFuncs:
        - "isConnected()"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:239"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:233"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:240"
        BranchSideFuncs:
        - "localAddress()"
        - "channel()"
        - "remoteAddress()"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:239"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:240"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:267"
        BranchSideFuncs:
        - "writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int,int,io.netty.handler.pcap.TCPPacket$TCPFlag[])"
        - "buffer()"
        - "completeTCPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
        - "release()"
        - "getPort()"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:189,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:196,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:198,1"
      Dst: "[io.netty.handler.pcap.PcapWriter].<init>(java.io.OutputStream,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:204,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:200,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:200,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:201,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:202,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:207,1"
      Dst: "[io.netty.handler.pcap.PcapWriter].<init>(java.io.OutputStream)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:217,1"
      Dst: "[io.netty.channel.Channel].parent()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:219,1"
      Dst: "[io.netty.channel.Channel].remoteAddress()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:220,1"
      Dst: "[io.netty.channel.Channel].localAddress()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:233,1"
      Dst: "[io.netty.channel.socket.DatagramChannel].isConnected()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:241,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:248,1"
      Dst: "[java.net.InetSocketAddress].getPort()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:247,1"
      Dst: "[io.netty.handler.pcap.TCPPacket].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int,int,io.netty.handler.pcap.TCPPacket$TCPFlag[])"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:249,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].completeTCPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.pcap.PcapHeaders].writeGlobalHeader(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.pcap.PcapHeaders"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    functionUses: 1
    ICount: 4
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapHeaders:47,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.TCPPacket].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int,int,io.netty.handler.pcap.TCPPacket$TCPFlag[])"
    functionSourceFile: "io.netty.handler.pcap.TCPPacket"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "void"
    argCount: 7
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "int"
    - "int"
    - "io.netty.handler.pcap.TCPPacket$TCPFlag[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.pcap.TCPPacket$TCPFlag].getFlag(io.netty.handler.pcap.TCPPacket$TCPFlag[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionUses: 11
    ICount: 21
    EdgeCount: 90
    BranchProfiles:
    - Branch String: "io.netty.handler.pcap.TCPPacket:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.TCPPacket:54"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.pcap.TCPPacket:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.pcap.TCPPacket:42,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.pcap.TCPPacket:44,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    - Src: "io.netty.handler.pcap.TCPPacket:46,1"
      Dst: "[io.netty.handler.pcap.TCPPacket$TCPFlag].getFlag(io.netty.handler.pcap.TCPPacket$TCPFlag[])"
    - Src: "io.netty.handler.pcap.TCPPacket:52,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.pcap.TCPPacket$TCPFlag].getFlag(io.netty.handler.pcap.TCPPacket$TCPFlag[])"
    functionSourceFile: "io.netty.handler.pcap.TCPPacket$TCPFlag"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.pcap.TCPPacket$TCPFlag[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.pcap.TCPPacket$TCPFlag:75"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.TCPPacket$TCPFlag:78"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].completeTCPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: 402
    functionLinenumberEnd: 437
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.InetSocketAddress"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer()"
    - "[java.net.InetSocketAddress].getAddress()"
    - "[io.netty.handler.pcap.IPPacket].writeTCPv4(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.util.NetUtil].ipv4AddressToInt(java.net.Inet4Address)"
    - "[io.netty.handler.pcap.EthernetPacket].writeIPv4(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.pcap.IPPacket].writeTCPv6(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,byte[],byte[])"
    - "[java.net.Inet4Address].getAddress()"
    - "[java.net.InetAddress].getAddress()"
    - "[java.net.Inet6Address].getAddress()"
    - "[io.netty.handler.pcap.EthernetPacket].writeIPv6(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.pcap.PcapWriter].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBufAllocator].buffer()"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 11
    ICount: 65
    EdgeCount: 201
    BranchProfiles:
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:408"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:413"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:408"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:413"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:414"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:421"
        BranchSideFuncs:
        - "getAddress()"
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:414"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:421"
        BranchSideFuncs:
        - "getAddress()"
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:403,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:408,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:410,1"
      Dst: "[io.netty.util.NetUtil].ipv4AddressToInt(java.net.Inet4Address)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:409,1"
      Dst: "[io.netty.handler.pcap.IPPacket].writeTCPv4(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:413,1"
      Dst: "[io.netty.handler.pcap.EthernetPacket].writeIPv4(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:416,1"
      Dst: "[java.net.InetAddress].getAddress()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:415,1"
      Dst: "[io.netty.handler.pcap.IPPacket].writeTCPv6(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,byte[],byte[])"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:419,1"
      Dst: "[io.netty.handler.pcap.EthernetPacket].writeIPv6(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:421,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:432,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:427,1"
      Dst: "[io.netty.handler.pcap.PcapWriter].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:429,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:430,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.NetUtil].ipv4AddressToInt(java.net.Inet4Address)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 377
    functionLinenumberEnd: 381
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.net.Inet4Address"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Inet4Address].getAddress()"
    functionUses: 6
    ICount: 25
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtil:378,1"
      Dst: "[java.net.Inet4Address].getAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.IPPacket].writeTCPv4(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.pcap.IPPacket"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.pcap.IPPacket].writePacketv4(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.IPPacket:69,1"
      Dst: "[io.netty.handler.pcap.IPPacket].writePacketv4(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.IPPacket].writePacketv4(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    functionSourceFile: "io.netty.handler.pcap.IPPacket"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 20
    EdgeCount: 110
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.IPPacket:87,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.pcap.IPPacket:89,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.pcap.IPPacket:89,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.pcap.IPPacket:95,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    - Src: "io.netty.handler.pcap.IPPacket:97,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.EthernetPacket].writeIPv4(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.pcap.EthernetPacket"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.pcap.EthernetPacket].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,byte[],byte[],int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.EthernetPacket:53,1"
      Dst: "[io.netty.handler.pcap.EthernetPacket].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,byte[],byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.EthernetPacket].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,byte[],byte[],int)"
    functionSourceFile: "io.netty.handler.pcap.EthernetPacket"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "byte[]"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 10
    EdgeCount: 37
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.EthernetPacket:76,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - Src: "io.netty.handler.pcap.EthernetPacket:78,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.pcap.EthernetPacket:79,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.IPPacket].writeTCPv6(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,byte[],byte[])"
    functionSourceFile: "io.netty.handler.pcap.IPPacket"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.pcap.IPPacket].writePacketv6(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,byte[],byte[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.IPPacket:81,1"
      Dst: "[io.netty.handler.pcap.IPPacket].writePacketv6(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.IPPacket].writePacketv6(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,byte[],byte[])"
    functionSourceFile: "io.netty.handler.pcap.IPPacket"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 16
    EdgeCount: 70
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.IPPacket:103,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    - Src: "io.netty.handler.pcap.IPPacket:104,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.pcap.IPPacket:104,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.pcap.IPPacket:105,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.pcap.IPPacket:107,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - Src: "io.netty.handler.pcap.IPPacket:109,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.EthernetPacket].writeIPv6(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.pcap.EthernetPacket"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.pcap.EthernetPacket].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,byte[],byte[],int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.EthernetPacket:63,1"
      Dst: "[io.netty.handler.pcap.EthernetPacket].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,byte[],byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 275
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.pcap.PcapWriteHandler].initializeIfNecessary(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelActive(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:272,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].initializeIfNecessary(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:273,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].channelActive(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelInboundHandlerAdapter].channelActive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.ChannelInboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelActive()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelActive()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelActive()"
    functionUses: 9
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelInboundHandlerAdapter:69,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelActive()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: 277
    functionLinenumberEnd: 291
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.pcap.PcapWriteHandler].initializeIfNecessary(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.pcap.PcapWriteHandler].handleTCP(io.netty.channel.ChannelHandlerContext,java.lang.Object,boolean)"
    - "[io.netty.handler.pcap.PcapWriteHandler].handleUDP(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.pcap.PcapWriteHandler].logDiscard()"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionUses: 3
    ICount: 19
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:278"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:289"
        BranchSideFuncs:
        - "initializeIfNecessary(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:288"
        BranchSideFuncs:
        - "channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:281"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:283"
        BranchSideFuncs:
        - "handleTCP(io.netty.channel.ChannelHandlerContext,java.lang.Object,boolean)"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:282"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:283"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:286"
        BranchSideFuncs:
        - "handleUDP(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:285"
        BranchSideFuncs:
        - "logDiscard()"
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:279,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].initializeIfNecessary(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:282,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].handleTCP(io.netty.channel.ChannelHandlerContext,java.lang.Object,boolean)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:284,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].handleUDP(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:286,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].logDiscard()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:289,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].handleTCP(io.netty.channel.ChannelHandlerContext,java.lang.Object,boolean)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: 323
    functionLinenumberEnd: 390
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.UnreleasableByteBuf].duplicate()"
    - "[io.netty.buffer.ReadOnlyByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].duplicate()"
    - "[io.netty.buffer.PooledSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.SlicedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractByteBuf].duplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].duplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.SwappedByteBuf].duplicate()"
    - "[io.netty.buffer.EmptyByteBuf].duplicate()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer()"
    - "[java.net.InetSocketAddress].getPort()"
    - "[io.netty.handler.pcap.TCPPacket].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int,int,io.netty.handler.pcap.TCPPacket$TCPFlag[])"
    - "[io.netty.handler.pcap.PcapWriteHandler].completeTCPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.pcap.PcapWriteHandler].logTCP(boolean,int,int,int,java.net.InetSocketAddress,java.net.InetSocketAddress,boolean)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.buffer.ByteBufAllocator].buffer()"
    functionUses: 2
    ICount: 99
    EdgeCount: 92
    BranchProfiles:
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:324"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:386"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object)"
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:327"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:332"
        BranchSideFuncs:
        - "valueOf(boolean)"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:331"
        BranchSideFuncs:
        - "buffer()"
        - "alloc()"
        - "duplicate()"
        - "readableBytes()"
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:327"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:332"
        BranchSideFuncs:
        - "valueOf(boolean)"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:331"
        BranchSideFuncs:
        - "buffer()"
        - "alloc()"
        - "duplicate()"
        - "readableBytes()"
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:338"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:363"
        BranchSideFuncs:
        - "writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int,int,io.netty.handler.pcap.TCPPacket$TCPFlag[])"
        - "buffer()"
        - "completeTCPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
        - "logTCP(boolean,int,int,int,java.net.InetSocketAddress,java.net.InetSocketAddress,boolean)"
        - "alloc()"
        - "duplicate()"
        - "readableBytes()"
        - "getPort()"
        - "release()"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:362"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:341"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:345"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:344"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:363"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:367"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:366"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:327,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:328,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:328,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:332,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:333,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:334,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:349,1"
      Dst: "[java.net.InetSocketAddress].getPort()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:349,1"
      Dst: "[io.netty.handler.pcap.TCPPacket].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int,int,io.netty.handler.pcap.TCPPacket$TCPFlag[])"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:351,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].completeTCPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:352,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].logTCP(boolean,int,int,int,java.net.InetSocketAddress,java.net.InetSocketAddress,boolean)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:384,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].logTCP(boolean,int,int,int,java.net.InetSocketAddress,java.net.InetSocketAddress,boolean)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: 444
    functionLinenumberEnd: 456
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "boolean"
    - "int"
    - "int"
    - "int"
    - "java.net.InetSocketAddress"
    - "java.net.InetSocketAddress"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    functionUses: 4
    ICount: 38
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:445"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:455"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:454"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:446"
      Branch Sides: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:445,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:448,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:448,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:447,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].handleUDP(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: 464
    functionLinenumberEnd: 514
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer()"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String)"
    - "[io.netty.channel.unix.SegmentedDatagramPacket].duplicate()"
    - "[io.netty.channel.epoll.SegmentedDatagramPacket].duplicate()"
    - "[io.netty.channel.socket.DatagramPacket].duplicate()"
    - "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].localAddress()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].localAddress()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].localAddress()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].localAddress()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].localAddress()"
    - "[io.netty.channel.local.LocalServerChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].localAddress()"
    - "[io.netty.channel.local.LocalChannel].localAddress()"
    - "[io.netty.channel.AbstractChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].localAddress()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].localAddress()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].localAddress()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].localAddress()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].localAddress()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].localAddress()"
    - "[io.netty.channel.rxtx.RxtxChannel].localAddress()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].localAddress()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].localAddress()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollSocketChannel].localAddress()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].localAddress()"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.net.InetSocketAddress].getPort()"
    - "[io.netty.handler.pcap.UDPPacket].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.pcap.PcapWriteHandler].completeUDPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isConnected()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isConnected()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isConnected()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isConnected()"
    - "[io.netty.buffer.UnreleasableByteBuf].duplicate()"
    - "[io.netty.buffer.ReadOnlyByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].duplicate()"
    - "[io.netty.buffer.PooledSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.SlicedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractByteBuf].duplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].duplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.SwappedByteBuf].duplicate()"
    - "[io.netty.buffer.EmptyByteBuf].duplicate()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].localAddress()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.channel.socket.DatagramChannel].isConnected()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    functionUses: 2
    ICount: 95
    EdgeCount: 186
    BranchProfiles:
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:468"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:464"
        BranchSideFuncs:
        - "buffer()"
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:471"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:476"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:475"
        BranchSideFuncs:
        - "sender()"
        - "recipient()"
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:471"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:476"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:475"
        BranchSideFuncs:
        - "sender()"
        - "recipient()"
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:482"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:487"
        BranchSideFuncs:
        - "localAddress()"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:486"
        BranchSideFuncs:
        - "content()"
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:468"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:507"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object)"
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:492"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:495"
        BranchSideFuncs:
        - "content()"
        - "localAddress()"
        - "channel()"
        - "debug(java.lang.String,java.lang.Object[])"
        - "debug(java.lang.String,java.lang.Object)"
        - "debug(java.lang.String)"
        - "writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int)"
        - "duplicate()"
        - "sender()"
        - "recipient()"
        - "valueOf(int)"
        - "completeUDPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
        - "alloc()"
        - "isConnected()"
        - "readableBytes()"
        - "getPort()"
        - "release()"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:494"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:492"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:508"
        BranchSideFuncs:
        - "content()"
        - "localAddress()"
        - "channel()"
        - "debug(java.lang.String,java.lang.Object[])"
        - "debug(java.lang.String,java.lang.Object)"
        - "debug(java.lang.String)"
        - "writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int)"
        - "duplicate()"
        - "sender()"
        - "recipient()"
        - "valueOf(int)"
        - "completeUDPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
        - "alloc()"
        - "isConnected()"
        - "readableBytes()"
        - "getPort()"
        - "release()"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:507"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object)"
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:495"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:500"
        BranchSideFuncs:
        - "debug(java.lang.String)"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:499"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object[])"
        - "writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int)"
        - "duplicate()"
        - "valueOf(int)"
        - "completeUDPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
        - "alloc()"
        - "readableBytes()"
        - "getPort()"
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:495"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:500"
        BranchSideFuncs:
        - "debug(java.lang.String)"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:499"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object[])"
        - "writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int)"
        - "duplicate()"
        - "valueOf(int)"
        - "completeUDPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
        - "alloc()"
        - "readableBytes()"
        - "getPort()"
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:465,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:465,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:471,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].content()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:471,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:472,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:511,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:476,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].duplicate()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:477,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:478,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:483,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:483,1"
      Dst: "[io.netty.channel.Channel].localAddress()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:487,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:486,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:489,1"
      Dst: "[java.net.InetSocketAddress].getPort()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:489,1"
      Dst: "[io.netty.handler.pcap.UDPPacket].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:490,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].completeUDPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:492,1"
      Dst: "[io.netty.channel.socket.DatagramChannel].isConnected()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:500,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:508,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 7
  - functionName: "[io.netty.channel.socket.DatagramPacket].content()"
    functionSourceFile: "io.netty.channel.socket.DatagramPacket"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].content()"
    functionUses: 56
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DatagramPacket:27,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].content()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DatagramPacket].duplicate()"
    functionSourceFile: "io.netty.channel.socket.DatagramPacket"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 4
    returnType: "io.netty.channel.socket.DatagramPacket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.buffer.UnreleasableByteBuf].duplicate()"
    - "[io.netty.buffer.ReadOnlyByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].duplicate()"
    - "[io.netty.buffer.PooledSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.SlicedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractByteBuf].duplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].duplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.SwappedByteBuf].duplicate()"
    - "[io.netty.buffer.EmptyByteBuf].duplicate()"
    - "[io.netty.channel.epoll.SegmentedDatagramPacket].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.unix.SegmentedDatagramPacket].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.socket.DatagramPacket].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    functionUses: 1
    ICount: 6
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DatagramPacket:52,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].content()"
    - Src: "io.netty.channel.socket.DatagramPacket:52,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.channel.socket.DatagramPacket:52,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DatagramPacket].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.socket.DatagramPacket"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 3
    returnType: "io.netty.channel.socket.DatagramPacket"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DatagramPacket:62,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - Src: "io.netty.channel.socket.DatagramPacket:62,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - Src: "io.netty.channel.socket.DatagramPacket:62,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    functionSourceFile: "io.netty.channel.DefaultAddressedEnvelope"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.UDPPacket].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.pcap.UDPPacket"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 12
    EdgeCount: 54
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.UDPPacket:37,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.pcap.UDPPacket:39,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.pcap.UDPPacket:41,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].completeUDPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: 526
    functionLinenumberEnd: 561
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.InetSocketAddress"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer()"
    - "[java.net.InetSocketAddress].getAddress()"
    - "[io.netty.handler.pcap.IPPacket].writeUDPv4(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.util.NetUtil].ipv4AddressToInt(java.net.Inet4Address)"
    - "[io.netty.handler.pcap.EthernetPacket].writeIPv4(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.pcap.IPPacket].writeUDPv6(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,byte[],byte[])"
    - "[java.net.Inet4Address].getAddress()"
    - "[java.net.InetAddress].getAddress()"
    - "[java.net.Inet6Address].getAddress()"
    - "[io.netty.handler.pcap.EthernetPacket].writeIPv6(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.pcap.PcapWriter].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBufAllocator].buffer()"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 2
    ICount: 65
    EdgeCount: 201
    BranchProfiles:
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:532"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:537"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:532"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:537"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:538"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:545"
        BranchSideFuncs:
        - "getAddress()"
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:538"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:545"
        BranchSideFuncs:
        - "getAddress()"
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:527,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:532,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:534,1"
      Dst: "[io.netty.util.NetUtil].ipv4AddressToInt(java.net.Inet4Address)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:533,1"
      Dst: "[io.netty.handler.pcap.IPPacket].writeUDPv4(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:537,1"
      Dst: "[io.netty.handler.pcap.EthernetPacket].writeIPv4(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:540,1"
      Dst: "[java.net.InetAddress].getAddress()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:539,1"
      Dst: "[io.netty.handler.pcap.IPPacket].writeUDPv6(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,byte[],byte[])"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:543,1"
      Dst: "[io.netty.handler.pcap.EthernetPacket].writeIPv6(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:545,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:556,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:551,1"
      Dst: "[io.netty.handler.pcap.PcapWriter].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:553,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:554,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.pcap.IPPacket].writeUDPv4(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.pcap.IPPacket"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.pcap.IPPacket].writePacketv4(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.IPPacket:45,1"
      Dst: "[io.netty.handler.pcap.IPPacket].writePacketv4(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.IPPacket].writeUDPv6(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,byte[],byte[])"
    functionSourceFile: "io.netty.handler.pcap.IPPacket"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.pcap.IPPacket].writePacketv6(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,byte[],byte[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.IPPacket:57,1"
      Dst: "[io.netty.handler.pcap.IPPacket].writePacketv6(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].logDiscard()"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: 308
    functionLinenumberEnd: 313
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:309,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelInboundHandlerAdapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.channel.ChannelInboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 12
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelInboundHandlerAdapter:93,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: 293
    functionLinenumberEnd: 307
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.pcap.PcapWriteHandler].initializeIfNecessary(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.pcap.PcapWriteHandler].handleTCP(io.netty.channel.ChannelHandlerContext,java.lang.Object,boolean)"
    - "[io.netty.handler.pcap.PcapWriteHandler].handleUDP(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.pcap.PcapWriteHandler].logDiscard()"
    - "[io.netty.channel.ChannelDuplexHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:294"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:305"
        BranchSideFuncs:
        - "initializeIfNecessary(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:304"
        BranchSideFuncs:
        - "write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:297"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:299"
        BranchSideFuncs:
        - "handleTCP(io.netty.channel.ChannelHandlerContext,java.lang.Object,boolean)"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:298"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:299"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:302"
        BranchSideFuncs:
        - "handleUDP(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:301"
        BranchSideFuncs:
        - "logDiscard()"
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:295,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].initializeIfNecessary(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:298,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].handleTCP(io.netty.channel.ChannelHandlerContext,java.lang.Object,boolean)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:300,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].handleUDP(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:302,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].logDiscard()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:305,1"
      Dst: "[io.netty.channel.ChannelDuplexHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: 565
    functionLinenumberEnd: 597
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer()"
    - "[java.net.InetSocketAddress].getPort()"
    - "[io.netty.handler.pcap.TCPPacket].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int,int,io.netty.handler.pcap.TCPPacket$TCPFlag[])"
    - "[io.netty.handler.pcap.PcapWriteHandler].completeTCPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.pcap.PcapWriteHandler].close()"
    - "[io.netty.channel.ChannelHandlerAdapter].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer()"
    functionUses: 2
    ICount: 64
    EdgeCount: 55
    BranchProfiles:
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:566"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:594"
        BranchSideFuncs:
        - "writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int,int,io.netty.handler.pcap.TCPPacket$TCPFlag[])"
        - "buffer()"
        - "completeTCPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
        - "alloc()"
        - "getPort()"
        - "release()"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:593"
        BranchSideFuncs:
        - "handlerRemoved(io.netty.channel.ChannelHandlerContext)"
        - "close()"
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:567,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:569,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:570,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:574,1"
      Dst: "[java.net.InetSocketAddress].getPort()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:574,1"
      Dst: "[io.netty.handler.pcap.TCPPacket].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int,int,io.netty.handler.pcap.TCPPacket$TCPFlag[])"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:576,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].completeTCPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:588,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:594,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].close()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:595,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].close()"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: 628
    functionLinenumberEnd: 637
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String)"
    - "[io.netty.handler.pcap.PcapWriter].close()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    functionUses: 3
    ICount: 12
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:629"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:632"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:631"
        BranchSideFuncs:
        - "debug(java.lang.String)"
        - "close()"
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:630,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:633,1"
      Dst: "[io.netty.handler.pcap.PcapWriter].close()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: 600
    functionLinenumberEnd: 619
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer()"
    - "[java.net.InetSocketAddress].getPort()"
    - "[io.netty.handler.pcap.TCPPacket].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int,int,io.netty.handler.pcap.TCPPacket$TCPFlag[])"
    - "[io.netty.handler.pcap.PcapWriteHandler].completeTCPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String)"
    - "[io.netty.handler.pcap.PcapWriteHandler].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 3
    ICount: 34
    EdgeCount: 46
    BranchProfiles:
    - Branch String: "io.netty.handler.pcap.PcapWriteHandler:601"
      Branch Sides:
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:616"
        BranchSideFuncs:
        - "writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int,int,io.netty.handler.pcap.TCPPacket$TCPFlag[])"
        - "buffer()"
        - "completeTCPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
        - "alloc()"
        - "getPort()"
        - "release()"
      - BranchSide: "io.netty.handler.pcap.PcapWriteHandler:615"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
        - "close()"
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:602,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:602,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:606,1"
      Dst: "[java.net.InetSocketAddress].getPort()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:606,1"
      Dst: "[io.netty.handler.pcap.TCPPacket].writePacket(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int,int,io.netty.handler.pcap.TCPPacket$TCPFlag[])"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:608,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].completeTCPWrite(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBufAllocator,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:610,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:613,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:616,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].close()"
    - Src: "io.netty.handler.pcap.PcapWriteHandler:617,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler].<init>(io.netty.handler.pcap.PcapWriteHandler$Builder,java.io.OutputStream,io.netty.handler.pcap.PcapWriteHandler$1)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.pcap.PcapWriteHandler$Builder"
    - "java.io.OutputStream"
    - "io.netty.handler.pcap.PcapWriteHandler$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.pcap.PcapWriteHandler].<init>(io.netty.handler.pcap.PcapWriteHandler$Builder,java.io.OutputStream)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler:65,1"
      Dst: "[io.netty.handler.pcap.PcapWriteHandler].<init>(io.netty.handler.pcap.PcapWriteHandler$Builder,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent$2].<init>()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent$2"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent$2:137,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent$2].current()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent$2"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionDepth: 0
    returnType: "java.util.Random"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ThreadLocalRandom].current()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent$2:141,1"
      Dst: "[java.util.concurrent.ThreadLocalRandom].current()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.InboundHttpToHttp2Adapter].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:33,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.InboundHttpToHttp2Adapter].getStreamId(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].getInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].getInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].getInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].incrementAndGetNextStreamId()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].incrementAndGetNextStreamId()"
    - "[io.netty.handler.codec.http.HttpHeaders].getInt(java.lang.CharSequence,int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:39,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:40,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:40,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].incrementAndGetNextStreamId()"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:39,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].getInt(java.lang.CharSequence,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.InboundHttpToHttp2Adapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.InboundHttpToHttp2Adapter].handle(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2FrameListener,io.netty.handler.codec.http.FullHttpMessage)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionUses: 2
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:45"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:48"
        BranchSideFuncs:
        - "handle(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2FrameListener,io.netty.handler.codec.http.FullHttpMessage)"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:47"
        BranchSideFuncs:
        - "channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:46,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttpToHttp2Adapter].handle(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2FrameListener,io.netty.handler.codec.http.FullHttpMessage)"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:48,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.InboundHttpToHttp2Adapter].handle(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2FrameListener,io.netty.handler.codec.http.FullHttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 81
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Connection"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    - "io.netty.handler.codec.http.FullHttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.InboundHttpToHttp2Adapter].getStreamId(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].createStream(int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].remote()"
    - "[io.netty.handler.codec.http.HttpScheme].name()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpMessage,boolean)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].trailingHeaders()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,boolean)"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest:io.netty.handler.codec.http.DefaultFullHttpResponse:io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter].trailingHeaders()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].closeRemoteSide()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].closeRemoteSide()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].release()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].release()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].release()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].release()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].createStream(int,boolean)"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2Stream].closeRemoteSide()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 2
    ICount: 53
    EdgeCount: 66
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:63"
        BranchSideFuncs:
        - "remote()"
        - "createStream(int,boolean)"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:62"
        BranchSideFuncs:
        - "isEmpty()"
        - "isReadable()"
        - "toHttp2Headers(io.netty.handler.codec.http.HttpMessage,boolean)"
        - "set(java.lang.CharSequence,java.lang.Object)"
        - "headers()"
        - "name()"
        - "text()"
    - Branch String: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:-1"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:66"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:65"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:66"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:65"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:72"
        BranchSideFuncs:
        - "content()"
        - "onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:71"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:70"
        BranchSideFuncs:
        - "content()"
        - "isEmpty()"
        - "toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,boolean)"
        - "closeRemoteSide()"
        - "onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
        - "trailingHeaders()"
        - "onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
        - "release()"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:69"
        BranchSideFuncs:
        - "content()"
        - "onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - Branch String: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:76"
        BranchSideFuncs:
        - "toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,boolean)"
        - "trailingHeaders()"
        - "onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:75"
        BranchSideFuncs:
        - "closeRemoteSide()"
        - "release()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:58,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:58,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttpToHttp2Adapter].getStreamId(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:59,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:61,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:61,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].createStream(int,boolean)"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:63,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:63,1"
      Dst: "[io.netty.handler.codec.http.HttpScheme].name()"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:63,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:64,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpMessage,boolean)"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:65,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:65,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:66,1"
      Dst: "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:66,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].isEmpty()"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:67,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:70,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:73,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,boolean)"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:76,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].closeRemoteSide()"
    - Src: "io.netty.handler.codec.http2.InboundHttpToHttp2Adapter:78,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http.HttpScheme].name()"
    functionSourceFile: "io.netty.handler.codec.http.HttpScheme"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "io.netty.util.AsciiString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpMessage,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 433
    functionLinenumberEnd: 459
    functionDepth: 7
    returnType: "io.netty.handler.codec.http2.Http2Headers"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].<init>(boolean,int)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].size()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].size()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].size()"
    - "[io.netty.handler.codec.http.HttpHeaders].getAsString(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpUtil].isAsteriskForm(java.lang.String)"
    - "[io.netty.handler.codec.http.HttpUtil].isOriginForm(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].uri()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].uri()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].uri()"
    - "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].path(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].setHttp2Scheme(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http2.Http2Headers)"
    - "[java.net.URI].create(java.lang.String)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Path(java.net.URI)"
    - "[java.net.URI].getAuthority()"
    - "[io.netty.util.internal.StringUtil].isNullOrEmpty(java.lang.String)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].setHttp2Scheme(io.netty.handler.codec.http.HttpHeaders,java.net.URI,io.netty.handler.codec.http2.Http2Headers)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].setHttp2Authority(java.lang.String,io.netty.handler.codec.http2.Http2Headers)"
    - "[io.netty.handler.codec.http.HttpMethod].asciiName()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].method()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].method()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].method(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].method()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].codeAsText()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].status(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http2.Http2Headers)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].size()"
    - "[io.netty.handler.codec.http.HttpRequest].uri()"
    - "[io.netty.handler.codec.http2.Http2Headers].path(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpRequest].method()"
    - "[io.netty.handler.codec.http2.Http2Headers].method(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    - "[io.netty.handler.codec.http2.Http2Headers].status(java.lang.CharSequence)"
    functionUses: 3
    ICount: 48
    EdgeCount: 42
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:436"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:434"
        BranchSideFuncs:
        - "getAsString(java.lang.CharSequence)"
        - "isOriginForm(java.lang.String)"
        - "isAsteriskForm(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:433"
        BranchSideFuncs:
        - "<init>(boolean,int)"
        - "headers()"
        - "size()"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:439"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:440"
        BranchSideFuncs:
        - "setHttp2Scheme(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http2.Http2Headers)"
        - "<init>(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:439"
        BranchSideFuncs:
        - "setHttp2Scheme(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http2.Http2Headers)"
        - "<init>(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:439"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:443"
        BranchSideFuncs:
        - "setHttp2Scheme(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http2.Http2Headers)"
        - "<init>(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:442"
        BranchSideFuncs:
        - "isNullOrEmpty(java.lang.String)"
        - "uri()"
        - "getAuthority()"
        - "toHttp2Path(java.net.URI)"
        - "create(java.lang.String)"
        - "path(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:446"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:443"
        BranchSideFuncs:
        - "isNullOrEmpty(java.lang.String)"
        - "getAuthority()"
        - "setHttp2Scheme(io.netty.handler.codec.http.HttpHeaders,java.net.URI,io.netty.handler.codec.http2.Http2Headers)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:442"
        BranchSideFuncs:
        - "isNullOrEmpty(java.lang.String)"
        - "uri()"
        - "getAuthority()"
        - "toHttp2Path(java.net.URI)"
        - "create(java.lang.String)"
        - "path(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:436"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:457"
        BranchSideFuncs:
        - "getAsString(java.lang.CharSequence)"
        - "isOriginForm(java.lang.String)"
        - "isAsteriskForm(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:456"
        BranchSideFuncs:
        - "toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http2.Http2Headers)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:434,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:435,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].size()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:435,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers].<init>(boolean,int)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:438,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].getAsString(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:439,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].uri()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:439,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].isOriginForm(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:439,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].isAsteriskForm(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:440,1"
      Dst: "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:440,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers].path(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:441,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].setHttp2Scheme(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http2.Http2Headers)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:443,1"
      Dst: "[java.net.URI].create(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:444,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Path(java.net.URI)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:446,1"
      Dst: "[io.netty.util.internal.StringUtil].isNullOrEmpty(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:446,1"
      Dst: "[java.net.URI].getAuthority()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:447,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].setHttp2Scheme(io.netty.handler.codec.http.HttpHeaders,java.net.URI,io.netty.handler.codec.http2.Http2Headers)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:449,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].setHttp2Authority(java.lang.String,io.netty.handler.codec.http2.Http2Headers)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:450,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].method()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:450,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].asciiName()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:450,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers].method(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:453,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:453,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].codeAsText()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:453,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers].status(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:457,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http2.Http2Headers)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].<init>(boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 140
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers:135"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:135"
        BranchSideFuncs:
        - "<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:134"
        BranchSideFuncs:
        - "<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:135,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpUtil].isOriginForm(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:60,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].isAsteriskForm(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:76,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].setHttp2Scheme(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http2.Http2Headers)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 608
    functionLinenumberEnd: 611
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpHeaders"
    - "io.netty.handler.codec.http2.Http2Headers"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URI].create(java.lang.String)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].setHttp2Scheme(io.netty.handler.codec.http.HttpHeaders,java.net.URI,io.netty.handler.codec.http2.Http2Headers)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:609,1"
      Dst: "[java.net.URI].create(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:609,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].setHttp2Scheme(io.netty.handler.codec.http.HttpHeaders,java.net.URI,io.netty.handler.codec.http2.Http2Headers)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].setHttp2Scheme(io.netty.handler.codec.http.HttpHeaders,java.net.URI,io.netty.handler.codec.http2.Http2Headers)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 612
    functionLinenumberEnd: 635
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpHeaders"
    - "java.net.URI"
    - "io.netty.handler.codec.http2.Http2Headers"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URI].getScheme()"
    - "[io.netty.util.internal.StringUtil].isNullOrEmpty(java.lang.String)"
    - "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].scheme(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.EmptyHttp2Headers].scheme(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].scheme(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - "[io.netty.util.AsciiString].of(java.lang.CharSequence)"
    - "[java.net.URI].getPort()"
    - "[io.netty.handler.codec.http.HttpScheme].port()"
    - "[io.netty.handler.codec.http.HttpScheme].name()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2Headers].scheme(java.lang.CharSequence)"
    functionUses: 2
    ICount: 37
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:614"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:620"
        BranchSideFuncs:
        - "<init>(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:619"
        BranchSideFuncs:
        - "get(java.lang.CharSequence)"
        - "text()"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:621"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:626"
        BranchSideFuncs:
        - "of(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:625"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:626"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:628"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:627"
        BranchSideFuncs:
        - "port()"
        - "getPort()"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:628"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:631"
        BranchSideFuncs:
        - "name()"
        - "scheme(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:630"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:613,1"
      Dst: "[java.net.URI].getScheme()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:614,1"
      Dst: "[io.netty.util.internal.StringUtil].isNullOrEmpty(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:615,1"
      Dst: "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:615,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers].scheme(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:620,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:620,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:622,1"
      Dst: "[io.netty.util.AsciiString].of(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:626,1"
      Dst: "[java.net.URI].getPort()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:626,1"
      Dst: "[io.netty.handler.codec.http.HttpScheme].port()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:627,1"
      Dst: "[io.netty.handler.codec.http.HttpScheme].name()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:631,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.StringUtil].isNullOrEmpty(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 570
    functionLinenumberEnd: 572
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    functionUses: 8
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:571"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:570"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.util.internal.StringUtil:571"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:570"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:571,1"
      Dst: "[java.lang.String].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpScheme].port()"
    functionSourceFile: "io.netty.handler.codec.http.HttpScheme"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Path(java.net.URI)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 573
    functionLinenumberEnd: 589
    functionDepth: 4
    returnType: "io.netty.util.AsciiString"
    argCount: 1
    argTypes:
    - "java.net.URI"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URI].getRawPath()"
    - "[io.netty.util.internal.StringUtil].length(java.lang.String)"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.net.URI].getRawFragment()"
    - "[java.net.URI].getRawQuery()"
    - "[io.netty.util.internal.StringUtil].isNullOrEmpty(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    - "[java.lang.String].isEmpty()"
    functionUses: 1
    ICount: 37
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:576"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:579"
        BranchSideFuncs:
        - "getRawPath()"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:578"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:579"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:583"
        BranchSideFuncs:
        - "getRawQuery()"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:582"
        BranchSideFuncs:
        - "isNullOrEmpty(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:583"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:587"
        BranchSideFuncs:
        - "append(char)"
        - "append(java.lang.String)"
        - "getRawFragment()"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:586"
        BranchSideFuncs:
        - "<init>(java.lang.CharSequence)"
        - "isEmpty()"
        - "toString()"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:588"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:586"
        BranchSideFuncs:
        - "<init>(java.lang.CharSequence)"
        - "isEmpty()"
        - "toString()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:574,1"
      Dst: "[java.net.URI].getRawPath()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:574,1"
      Dst: "[io.netty.util.internal.StringUtil].length(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:575,1"
      Dst: "[java.net.URI].getRawQuery()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:575,1"
      Dst: "[java.net.URI].getRawFragment()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:575,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:576,1"
      Dst: "[io.netty.util.internal.StringUtil].isNullOrEmpty(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:577,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:580,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:587,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:588,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:588,1"
      Dst: "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.internal.StringUtil].length(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 563
    functionLinenumberEnd: 565
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:564"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:563"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:564,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].setHttp2Authority(java.lang.String,io.netty.handler.codec.http2.Http2Headers)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 593
    functionLinenumberEnd: 607
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.http2.Http2Headers"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    - "[io.netty.handler.codec.http2.EmptyHttp2Headers].authority(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].authority(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].authority(java.lang.CharSequence)"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].length()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].<init>(java.lang.CharSequence,int,int)"
    - "[io.netty.handler.codec.http2.Http2Headers].authority(java.lang.CharSequence)"
    functionUses: 1
    ICount: 25
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:594"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:606"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:605"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:595"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:598"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:597"
        BranchSideFuncs:
        - "indexOf(int)"
        - "length()"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:600"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:603"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:602"
        BranchSideFuncs:
        - "authority(java.lang.CharSequence)"
        - "<init>(java.lang.CharSequence,int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:595,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:596,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers].authority(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:598,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:599,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:601,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:601,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:601,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:601,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:603,1"
      Dst: "[io.netty.util.AsciiString].<init>(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].codeAsText()"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 585
    functionLinenumberEnd: 587
    functionDepth: 0
    returnType: "io.netty.util.AsciiString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http2.Http2Headers)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 523
    functionLinenumberEnd: 568
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpHeaders"
    - "io.netty.handler.codec.http2.Http2Headers"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iteratorCharSequence()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iteratorCharSequence()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iteratorCharSequence()"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toLowercaseMap(java.util.Iterator,int)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].valueCharSequenceIterator(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].valueCharSequenceIterator(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].valueCharSequenceIterator(java.lang.CharSequence)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    - "[java.util.AbstractMap$SimpleEntry].getKey()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[io.netty.util.AsciiString].of(java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].toLowerCase()"
    - "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object)"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2HeadersFilterTE(java.util.Map$Entry,io.netty.handler.codec.http2.Http2Headers)"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[io.netty.util.AsciiString].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.EmptyHeaders].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.AsciiString].subSequence(int,int,boolean)"
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.http.HttpHeaders].iteratorCharSequence()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[io.netty.handler.codec.Headers].add(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 77
    EdgeCount: 207
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:529"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:567"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
        - "toLowerCase()"
        - "next()"
        - "getKey()"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:566"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:532"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:565"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:532"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:565"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:534"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:536"
        BranchSideFuncs:
        - "toHttp2HeadersFilterTE(java.util.Map$Entry,io.netty.handler.codec.http2.Http2Headers)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:535"
        BranchSideFuncs:
        - "contentEqualsIgnoreCase(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:536"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:563"
        BranchSideFuncs:
        - "forEachByte(io.netty.util.ByteProcessor)"
        - "of(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:562"
        BranchSideFuncs:
        - "getValue()"
        - "add(java.lang.Object,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:542"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:555"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:554"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:548"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:550"
        BranchSideFuncs:
        - "forEachByte(int,int,io.netty.util.ByteProcessor)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:549"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:549"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:545"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:544"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:550"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:553"
        BranchSideFuncs:
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:552"
        BranchSideFuncs:
        - "subSequence(int,int,boolean)"
        - "length()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:524,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].iteratorCharSequence()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:528,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].valueCharSequenceIterator(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:528,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toLowercaseMap(java.util.Iterator,int)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:529,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:530,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:531,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:531,1"
      Dst: "[io.netty.util.AsciiString].of(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:531,1"
      Dst: "[io.netty.util.AsciiString].toLowerCase()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:532,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:534,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:535,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2HeadersFilterTE(java.util.Map$Entry,io.netty.handler.codec.http2.Http2Headers)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:537,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:541,1"
      Dst: "[io.netty.util.AsciiString].forEachByte(io.netty.util.ByteProcessor)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:545,1"
      Dst: "[io.netty.util.AsciiString].subSequence(int,int,boolean)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:545,1"
      Dst: "[io.netty.handler.codec.Headers].add(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:548,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:549,1"
      Dst: "[io.netty.util.AsciiString].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:551,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:551,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:551,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:551,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:551,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:560,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 8
  - functionName: "[io.netty.util.AsciiString].toLowerCase()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 924
    functionLinenumberEnd: 947
    functionDepth: 3
    returnType: "io.netty.util.AsciiString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - "[io.netty.util.AsciiString].toLowerCase(byte)"
    - "[io.netty.util.AsciiString].<init>(byte[],boolean)"
    functionUses: 5
    ICount: 35
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:928"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:937"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:936"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:930"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:925"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:924"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:930"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:925"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:924"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:937"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:941"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:940"
        BranchSideFuncs:
        - "arrayOffset()"
        - "allocateUninitializedArray(int)"
        - "length()"
    - Branch String: "io.netty.util.AsciiString:942"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:945"
        BranchSideFuncs:
        - "<init>(byte[],boolean)"
    Callsites:
    - Src: "io.netty.util.AsciiString:927,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:927,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.util.AsciiString:941,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - Src: "io.netty.util.AsciiString:943,1"
      Dst: "[io.netty.util.AsciiString].toLowerCase(byte)"
    - Src: "io.netty.util.AsciiString:946,1"
      Dst: "[io.netty.util.AsciiString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.AsciiString].<init>(byte[],boolean)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].<init>(byte[],int,int,boolean)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:87,1"
      Dst: "[io.netty.util.AsciiString].<init>(byte[],int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].<init>(byte[],int,int,boolean)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 109
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Arrays].copyOfRange(byte[],int,int)"
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 4
    ICount: 33
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:96"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:100"
        BranchSideFuncs:
        - "copyOfRange(byte[],int,int)"
      - BranchSide: "io.netty.util.AsciiString:99"
        BranchSideFuncs:
        - "isOutOfBounds(int,int,int)"
    - Branch String: "io.netty.util.AsciiString:100"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:104"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.AsciiString:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:95,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.AsciiString:97,1"
      Dst: "[java.util.Arrays].copyOfRange(byte[],int,int)"
    - Src: "io.netty.util.AsciiString:100,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.util.AsciiString:101,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.AsciiString:101,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.AsciiString:101,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.AsciiString:101,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.AsciiString:101,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.AsciiString:101,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2HeadersFilterTE(java.util.Map$Entry,io.netty.handler.codec.http2.Http2Headers)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 507
    functionLinenumberEnd: 522
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Map$Entry"
    - "io.netty.handler.codec.http2.Http2Headers"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[io.netty.util.AsciiString].indexOf(java.lang.CharSequence,char,int)"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].trim(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.EmptyHeaders].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.StringUtil].unescapeCsvFields(java.lang.CharSequence)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[io.netty.handler.codec.Headers].add(java.lang.Object,java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 35
    EdgeCount: 185
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:508"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:513"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:512"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "getValue()"
        - "next()"
        - "unescapeCsvFields(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:509"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:521"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:520"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:514"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:521"
        BranchSideFuncs:
        - "contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "trim(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:520"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:515"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:519"
        BranchSideFuncs:
        - "add(java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:518"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:508,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:508,1"
      Dst: "[io.netty.util.AsciiString].indexOf(java.lang.CharSequence,char,int)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:509,1"
      Dst: "[io.netty.util.AsciiString].trim(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:509,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:510,1"
      Dst: "[io.netty.handler.codec.Headers].add(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:513,1"
      Dst: "[io.netty.util.internal.StringUtil].unescapeCsvFields(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:514,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:514,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:514,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.AsciiString].trim(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 986
    functionLinenumberEnd: 1005
    functionDepth: 3
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].trim()"
    - "[java.lang.String].trim()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].subSequence(int,int)"
    - "[java.lang.StringBuffer].subSequence(int,int)"
    - "[java.lang.String].subSequence(int,int)"
    - "[java.lang.StringBuilder].subSequence(int,int)"
    - "[io.netty.util.AsciiString].subSequence(int,int)"
    - "[java.lang.AbstractStringBuilder].subSequence(int,int)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.lang.CharSequence].subSequence(int,int)"
    functionUses: 8
    ICount: 33
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:987"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:990"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:989"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:990"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:993"
        BranchSideFuncs:
        - "trim()"
      - BranchSide: "io.netty.util.AsciiString:992"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.util.AsciiString:995"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:998"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:997"
        BranchSideFuncs:
        - "charAt(int)"
    - Branch String: "io.netty.util.AsciiString:995"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:998"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:997"
        BranchSideFuncs:
        - "charAt(int)"
    - Branch String: "io.netty.util.AsciiString:998"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1001"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1000"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:998"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1001"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1000"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1001"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1004"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1003"
        BranchSideFuncs:
        - "subSequence(int,int)"
    - Branch String: "io.netty.util.AsciiString:1001"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1004"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1003"
        BranchSideFuncs:
        - "subSequence(int,int)"
    Callsites:
    - Src: "io.netty.util.AsciiString:988,1"
      Dst: "[io.netty.util.AsciiString].trim()"
    - Src: "io.netty.util.AsciiString:991,1"
      Dst: "[java.lang.String].trim()"
    - Src: "io.netty.util.AsciiString:993,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:995,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.AsciiString:1004,1"
      Dst: "[java.lang.CharSequence].subSequence(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 6
  - functionName: "[io.netty.util.AsciiString].trim()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1013
    functionLinenumberEnd: 1026
    functionDepth: 2
    returnType: "io.netty.util.AsciiString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].<init>(byte[],int,int,boolean)"
    functionUses: 4
    ICount: 31
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1016"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1019"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1018"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1016"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1019"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1018"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1019"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1019"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1022"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1025"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1024"
        BranchSideFuncs:
        - "<init>(byte[],int,int,boolean)"
    - Branch String: "io.netty.util.AsciiString:1022"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1025"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1024"
        BranchSideFuncs:
        - "<init>(byte[],int,int,boolean)"
    Callsites:
    - Src: "io.netty.util.AsciiString:1014,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.util.AsciiString:1014,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:1025,1"
      Dst: "[io.netty.util.AsciiString].<init>(byte[],int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[io.netty.util.internal.StringUtil].unescapeCsvFields(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 472
    functionLinenumberEnd: 534
    functionDepth: 4
    returnType: "java.util.List<CharSequence>"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - "[io.netty.util.internal.InternalThreadLocalMap].stringBuilder()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[io.netty.util.internal.StringUtil].newInvalidEscapedCsvFieldException(java.lang.CharSequence,int)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 3
    ICount: 63
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:477"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:529"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:528"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:479"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:482"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:486"
        BranchSideFuncs:
        - "charAt(int)"
    - Branch String: "io.netty.util.internal.StringUtil:488"
      Branch Sides: []
    - Branch String: "io.netty.util.internal.StringUtil:493"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:500"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:513"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:523"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:522"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:529"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:532"
        BranchSideFuncs:
        - "newInvalidEscapedCsvFieldException(java.lang.CharSequence,int)"
      - BranchSide: "io.netty.util.internal.StringUtil:531"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "toString()"
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:473,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.util.internal.StringUtil:474,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - Src: "io.netty.util.internal.StringUtil:474,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].stringBuilder()"
    - Src: "io.netty.util.internal.StringUtil:476,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.internal.StringUtil:478,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.internal.StringUtil:484,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.StringUtil:484,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.util.internal.StringUtil:490,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.internal.StringUtil:497,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "io.netty.util.internal.StringUtil:501,1"
      Dst: "[io.netty.util.internal.StringUtil].newInvalidEscapedCsvFieldException(java.lang.CharSequence,int)"
    - Src: "io.netty.util.internal.StringUtil:513,1"
      Dst: "[java.lang.StringBuilder].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 22
    CyclomaticComplexity: 8
  - functionName: "[io.netty.util.internal.StringUtil].newInvalidEscapedCsvFieldException(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 556
    functionLinenumberEnd: 558
    functionDepth: 0
    returnType: "java.lang.IllegalArgumentException"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 3
    ICount: 12
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:557,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.StringUtil:557,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.StringUtil:557,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.util.internal.StringUtil:557,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.internal.StringUtil:557,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.StringUtil:557,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].forEachByte(io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 259
    functionLinenumberEnd: 261
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].forEachByte0(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.util.AsciiString].length()"
    functionUses: 6
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:260,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:260,1"
      Dst: "[io.netty.util.AsciiString].forEachByte0(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].forEachByte0(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 278
    functionLinenumberEnd: 286
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Processor].process(byte)"
    - "[io.netty.handler.codec.http.HttpObjectDecoder$LineParser].process(byte)"
    - "[io.netty.handler.codec.http.websocketx.Utf8Validator].process(byte)"
    - "[io.netty.buffer.ByteBufProcessor$3].process(byte)"
    - "[io.netty.buffer.ByteBufProcessor$9].process(byte)"
    - "[io.netty.util.ByteProcessor$IndexOfProcessor].process(byte)"
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].process(byte)"
    - "[io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor].process(byte)"
    - "[io.netty.handler.codec.compression.Bzip2BlockCompressor$1].process(byte)"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder].process(byte)"
    - "[io.netty.util.ByteProcessor$2].process(byte)"
    - "[io.netty.buffer.ByteBufProcessor$4].process(byte)"
    - "[io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser].process(byte)"
    - "[io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodedLengthProcessor].process(byte)"
    - "[io.netty.util.ByteProcessor$3].process(byte)"
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser].process(byte)"
    - "[io.netty.buffer.ByteBufProcessor$2].process(byte)"
    - "[io.netty.buffer.ByteBufProcessor$10].process(byte)"
    - "[io.netty.util.ByteProcessor$4].process(byte)"
    - "[io.netty.buffer.ByteBufProcessor$1].process(byte)"
    - "[io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor].process(byte)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers$1].process(byte)"
    - "[io.netty.buffer.search.BitapSearchProcessorFactory$Processor].process(byte)"
    - "[io.netty.handler.codec.http2.HpackHuffmanDecoder].process(byte)"
    - "[io.netty.buffer.search.KmpSearchProcessorFactory$Processor].process(byte)"
    - "[io.netty.buffer.ByteBufUtil$2].process(byte)"
    - "[io.netty.buffer.ByteBufProcessor$7].process(byte)"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$1].process(byte)"
    - "[io.netty.buffer.ByteBufProcessor$8].process(byte)"
    - "[io.netty.buffer.ByteBufProcessor$5].process(byte)"
    - "[io.netty.handler.codec.base64.Base64$Decoder].process(byte)"
    - "[io.netty.util.ByteProcessor$IndexNotOfProcessor].process(byte)"
    - "[io.netty.util.ByteProcessor$1].process(byte)"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlEncodedDetector].process(byte)"
    - "[io.netty.buffer.ByteBufProcessor$6].process(byte)"
    - "[io.netty.util.ByteProcessor].process(byte)"
    functionUses: 2
    ICount: 21
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:280"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:null"
        BranchSideFuncs:
        - "process(byte)"
    - Branch String: "io.netty.util.AsciiString:281"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:279"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:278"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:281,1"
      Dst: "[io.netty.util.ByteProcessor].process(byte)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].subSequence(int,int,boolean)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 637
    functionLinenumberEnd: 652
    functionDepth: 2
    returnType: "io.netty.util.AsciiString"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].<init>(byte[],int,int,boolean)"
    functionUses: 16
    ICount: 36
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:638"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:643"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.util.AsciiString:642"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.util.AsciiString:643"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:647"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:646"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:643"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:647"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:646"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:647"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:651"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:650"
        BranchSideFuncs:
        - "<init>(byte[],int,int,boolean)"
    Callsites:
    - Src: "io.netty.util.AsciiString:638,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:638,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.util.AsciiString:639,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.AsciiString:639,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.AsciiString:639,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.AsciiString:640,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.AsciiString:640,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.AsciiString:640,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.util.AsciiString:651,1"
      Dst: "[io.netty.util.AsciiString].<init>(byte[],int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 270
    functionLinenumberEnd: 276
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].forEachByte0(int,int,io.netty.util.ByteProcessor)"
    functionUses: 2
    ICount: 23
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:271"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:275"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "length()"
        - "append(int)"
      - BranchSide: "io.netty.util.AsciiString:274"
        BranchSideFuncs:
        - "forEachByte0(int,int,io.netty.util.ByteProcessor)"
    Callsites:
    - Src: "io.netty.util.AsciiString:271,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:271,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.util.AsciiString:272,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.AsciiString:272,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.AsciiString:272,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.AsciiString:273,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.AsciiString:273,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.AsciiString:273,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.util.AsciiString:275,1"
      Dst: "[io.netty.util.AsciiString].forEachByte0(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 461
    functionLinenumberEnd: 469
    functionDepth: 7
    returnType: "io.netty.handler.codec.http2.Http2Headers"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpHeaders"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].<init>(boolean,int)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].size()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].size()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].size()"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http2.Http2Headers)"
    - "[io.netty.handler.codec.http.HttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http.HttpHeaders].size()"
    functionUses: 3
    ICount: 11
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:462"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:466"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:465"
        BranchSideFuncs:
        - "toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http2.Http2Headers)"
        - "<init>(boolean,int)"
        - "size()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:462,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].isEmpty()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:466,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].size()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:466,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers].<init>(boolean,int)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:467,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http2.Http2Headers)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsQueryContext$3].<init>(io.netty.resolver.dns.DnsQueryContext,io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.resolver.dns.DnsQueryContext$3"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.resolver.dns.DnsQueryContext"
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsQueryContext$3:182,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsQueryContext$3].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.resolver.dns.DnsQueryContext$3"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsQueryContext].access$200(io.netty.resolver.dns.DnsQueryContext,io.netty.channel.ChannelFuture)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsQueryContext$3:185,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].access$200(io.netty.resolver.dns.DnsQueryContext,io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsQueryContext$3].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.resolver.dns.DnsQueryContext$3"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsQueryContext$3].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsQueryContext$3:182,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext$3].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannelConfig$Paritybit].values()"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit:129,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannelConfig$Paritybit].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit:129,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannelConfig$Paritybit].<init>(java.lang.String,int,int)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit:155,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannelConfig$Paritybit].value()"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannelConfig$Paritybit].valueOf(int)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.rxtx.RxtxChannelConfig$Paritybit].values()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit:164"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit:169"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit:168"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit:165"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit:164"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit:164,1"
      Dst: "[io.netty.channel.rxtx.RxtxChannelConfig$Paritybit].values()"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit:169,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit:169,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit:169,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit:169,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit:169,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Paritybit:169,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList].<init>(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList"
    linkageType: ""
    functionLinenumber: 1174
    functionLinenumberEnd: 1178
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.String].toLowerCase(java.util.Locale)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1175,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1176,1"
      Dst: "[java.lang.String].toLowerCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList].add(io.netty.handler.codec.dns.DnsRecord)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList"
    linkageType: ""
    functionLinenumber: 1179
    functionLinenumberEnd: 1228
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecord"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].type()"
    - "[java.lang.String].length()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].name()"
    - "[java.lang.String].toLowerCase(java.util.Locale)"
    - "[java.lang.String].charAt(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$900(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].content()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].content()"
    - "[io.netty.handler.codec.smtp.LastSmtpContent$1].content()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].content()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].content()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].content()"
    - "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].content()"
    - "[io.netty.handler.ssl.PemValue].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.handler.ssl.PemX509Certificate].content()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].content()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].content()"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].content()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].content()"
    - "[io.netty.handler.codec.memcache.LastMemcacheContent$1].content()"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].content()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].content()"
    - "[io.netty.handler.ssl.PemPrivateKey].content()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].content()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].content()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].content()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].content()"
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].content()"
    - "[io.netty.resolver.dns.DnsResolveContext].decodeDomainName(io.netty.buffer.ByteBuf)"
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].<init>(int,long,java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].timeToLive()"
    - "[io.netty.handler.codec.dns.DnsRecord].type()"
    - "[io.netty.handler.codec.dns.DnsRecord].name()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.handler.codec.dns.DnsRecord].timeToLive()"
    functionUses: 1
    ICount: 77
    EdgeCount: 49
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1180"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1181"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1180"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1180"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1185"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1184"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1185"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1189"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1188"
        BranchSideFuncs:
        - "name()"
        - "length()"
        - "toLowerCase(java.util.Locale)"
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1192"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1202"
        BranchSideFuncs:
        - "charAt(int)"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1201"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1194"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1197"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1202"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1206"
        BranchSideFuncs:
        - "content()"
        - "decodeDomainName(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1202"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1206"
        BranchSideFuncs:
        - "content()"
        - "decodeDomainName(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1209"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1215"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1216"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1217"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1216"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1216"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1219"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1218"
        BranchSideFuncs:
        - "access$900(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1219"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1227"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1226"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1221"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1224"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1223"
        BranchSideFuncs:
        - "timeToLive()"
        - "<init>(int,long,java.lang.String,java.lang.String)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1180,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].type()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1185,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1185,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].name()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1189,1"
      Dst: "[java.lang.String].toLowerCase(java.util.Locale)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1193,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1202,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$900(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1207,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1208,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext].decodeDomainName(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1218,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].timeToLive()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1218,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].<init>(int,long,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 26
    CyclomaticComplexity: 9
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$900(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    linkageType: ""
    functionLinenumber: 1349
    functionLinenumberEnd: 1351
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].<init>(int,long,java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    linkageType: ""
    functionLinenumber: 1360
    functionLinenumberEnd: 1368
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "long"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer:1361,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList].handleWithAdditional(io.netty.resolver.dns.DnsNameResolver,io.netty.handler.codec.dns.DnsRecord,io.netty.resolver.dns.AuthoritativeDnsServerCache)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList"
    linkageType: ""
    functionLinenumber: 1231
    functionLinenumberEnd: 1267
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    - "io.netty.handler.codec.dns.DnsRecord"
    - "io.netty.resolver.dns.AuthoritativeDnsServerCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].name()"
    - "[io.netty.resolver.dns.DnsAddressDecoder].decodeAddress(io.netty.handler.codec.dns.DnsRecord,java.lang.String,boolean)"
    - "[io.netty.resolver.dns.DnsNameResolver].isDecodeIdn()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1000(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].<init>(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - "[io.netty.resolver.dns.DnsNameResolver].newRedirectServerAddress(java.net.InetAddress)"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].timeToLive()"
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].update(java.net.InetSocketAddress,long)"
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList].cache(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer,io.netty.resolver.dns.AuthoritativeDnsServerCache,io.netty.channel.EventLoop)"
    - "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - "[io.netty.handler.codec.dns.DnsRecord].name()"
    - "[io.netty.handler.codec.dns.DnsRecord].timeToLive()"
    functionUses: 1
    ICount: 41
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1236"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1240"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1241"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1266"
        BranchSideFuncs:
        - "equalsIgnoreCase(java.lang.String)"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1265"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1242"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1264"
        BranchSideFuncs:
        - "access$1000(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1263"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1243"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1257"
        BranchSideFuncs:
        - "timeToLive()"
        - "update(java.net.InetSocketAddress,long)"
        - "cache(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer,io.netty.resolver.dns.AuthoritativeDnsServerCache,io.netty.channel.EventLoop)"
        - "newRedirectServerAddress(java.net.InetAddress)"
        - "executor()"
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1246"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1249"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1248"
        BranchSideFuncs:
        - "<init>(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1246"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1249"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1248"
        BranchSideFuncs:
        - "<init>(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1234,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].name()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1235,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].isDecodeIdn()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1235,1"
      Dst: "[io.netty.resolver.dns.DnsAddressDecoder].decodeAddress(io.netty.handler.codec.dns.DnsRecord,java.lang.String,boolean)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1242,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1243,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1000(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1249,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].<init>(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1258,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].newRedirectServerAddress(java.net.InetAddress)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1258,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].timeToLive()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1258,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].update(java.net.InetSocketAddress,long)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1261,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1261,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList].cache(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer,io.netty.resolver.dns.AuthoritativeDnsServerCache,io.netty.channel.EventLoop)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1000(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    linkageType: ""
    functionLinenumber: 1349
    functionLinenumberEnd: 1351
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].<init>(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    linkageType: ""
    functionLinenumber: 1368
    functionLinenumberEnd: 1376
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer:1369,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].update(java.net.InetSocketAddress,long)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    linkageType: ""
    functionLinenumber: 1387
    functionLinenumberEnd: 1392
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.InetSocketAddress"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[java.net.InetSocketAddress].isUnresolved()"
    - "[java.lang.Math].min(long,long)"
    functionUses: 2
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer:1388"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer:1389"
        BranchSideFuncs:
        - "min(long,long)"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer:1388"
        BranchSideFuncs:
        - "min(long,long)"
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer:1388"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer:1389"
        BranchSideFuncs:
        - "min(long,long)"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer:1388"
        BranchSideFuncs:
        - "min(long,long)"
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer:1388"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer:1389"
        BranchSideFuncs:
        - "min(long,long)"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer:1388"
        BranchSideFuncs:
        - "min(long,long)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer:1388,1"
      Dst: "[java.net.InetSocketAddress].isUnresolved()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer:1388,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer:1390,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList].cache(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer,io.netty.resolver.dns.AuthoritativeDnsServerCache,io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList"
    linkageType: ""
    functionLinenumber: 1320
    functionLinenumberEnd: 1325
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    - "io.netty.resolver.dns.AuthoritativeDnsServerCache"
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].isRootServer()"
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1000(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1100(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1200(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - "[io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache].cache(java.lang.String,java.net.InetSocketAddress,long,io.netty.channel.EventLoop)"
    - "[io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter].cache(java.lang.String,java.net.InetSocketAddress,long,io.netty.channel.EventLoop)"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].cache(java.lang.String,java.net.InetSocketAddress,long,io.netty.channel.EventLoop)"
    - "[io.netty.resolver.dns.NoopAuthoritativeDnsServerCache].cache(java.lang.String,java.net.InetSocketAddress,long,io.netty.channel.EventLoop)"
    - "[io.netty.resolver.dns.AuthoritativeDnsServerCache].cache(java.lang.String,java.net.InetSocketAddress,long,io.netty.channel.EventLoop)"
    functionUses: 2
    ICount: 10
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1321"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1324"
        BranchSideFuncs:
        - "access$1000(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
        - "access$1100(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
        - "access$1200(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
        - "cache(java.lang.String,java.net.InetSocketAddress,long,io.netty.channel.EventLoop)"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1323"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1321,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].isRootServer()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1322,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1100(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1322,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1000(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1322,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1200(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1322,1"
      Dst: "[io.netty.resolver.dns.AuthoritativeDnsServerCache].cache(java.lang.String,java.net.InetSocketAddress,long,io.netty.channel.EventLoop)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].isRootServer()"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    linkageType: ""
    functionLinenumber: 1380
    functionLinenumberEnd: 1382
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer:1381"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer:1380"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1100(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    linkageType: ""
    functionLinenumber: 1349
    functionLinenumberEnd: 1351
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1200(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    linkageType: ""
    functionLinenumber: 1349
    functionLinenumberEnd: 1351
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList].handleWithoutAdditionals(io.netty.resolver.dns.DnsNameResolver,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.AuthoritativeDnsServerCache)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList"
    linkageType: ""
    functionLinenumber: 1270
    functionLinenumberEnd: 1308
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    - "io.netty.resolver.dns.DnsCache"
    - "io.netty.resolver.dns.AuthoritativeDnsServerCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1000(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList].cacheUnresolved(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer,io.netty.resolver.dns.AuthoritativeDnsServerCache,io.netty.channel.EventLoop)"
    - "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - "[io.netty.resolver.dns.NoopDnsCache].get(java.lang.String,io.netty.handler.codec.dns.DnsRecord[])"
    - "[io.netty.resolver.dns.DefaultDnsCache].get(java.lang.String,io.netty.handler.codec.dns.DnsRecord[])"
    - "[jaz.Zer].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].address()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].address()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.resolver.dns.DnsNameResolver].newRedirectServerAddress(java.net.InetAddress)"
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].update(java.net.InetSocketAddress)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].<init>(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - "[io.netty.resolver.dns.DnsCache].get(java.lang.String,io.netty.handler.codec.dns.DnsRecord[])"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    - "[io.netty.resolver.dns.DnsCacheEntry].address()"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 49
    EdgeCount: 46
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1273"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1307"
        BranchSideFuncs:
        - "access$1000(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1306"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1274"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1304"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1281"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1305"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1304"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1281"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1305"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1304"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1285"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1305"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1304"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1288"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1305"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "address()"
        - "get(int)"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1304"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1291"
      Branch Sides: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1291"
      Branch Sides: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1274,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1000(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1276,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1276,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList].cacheUnresolved(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer,io.netty.resolver.dns.AuthoritativeDnsServerCache,io.netty.channel.EventLoop)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1280,1"
      Dst: "[io.netty.resolver.dns.DnsCache].get(java.lang.String,io.netty.handler.codec.dns.DnsRecord[])"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1281,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1282,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1282,1"
      Dst: "[io.netty.resolver.dns.DnsCacheEntry].address()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1286,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].newRedirectServerAddress(java.net.InetAddress)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1286,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].update(java.net.InetSocketAddress)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1288,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1291,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1294,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].<init>(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 8
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList].cacheUnresolved(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer,io.netty.resolver.dns.AuthoritativeDnsServerCache,io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList"
    linkageType: ""
    functionLinenumber: 1311
    functionLinenumberEnd: 1318
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    - "io.netty.resolver.dns.AuthoritativeDnsServerCache"
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1002(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer,java.net.InetSocketAddress)"
    - "[java.net.InetSocketAddress].createUnresolved(java.lang.String,int)"
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList].cache(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer,io.netty.resolver.dns.AuthoritativeDnsServerCache,io.netty.channel.EventLoop)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1312,1"
      Dst: "[java.net.InetSocketAddress].createUnresolved(java.lang.String,int)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1312,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1002(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer,java.net.InetSocketAddress)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1316,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList].cache(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer,io.netty.resolver.dns.AuthoritativeDnsServerCache,io.netty.channel.EventLoop)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1002(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    linkageType: ""
    functionLinenumber: 1349
    functionLinenumberEnd: 1351
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 2
    argTypes:
    - "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].update(java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer"
    linkageType: ""
    functionLinenumber: 1393
    functionLinenumberEnd: 1396
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].update(java.net.InetSocketAddress,long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer:1394,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].update(java.net.InetSocketAddress,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList].isEmpty()"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList"
    linkageType: ""
    functionLinenumber: 1329
    functionLinenumberEnd: 1331
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1330"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1329"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList].addressList()"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList"
    linkageType: ""
    functionLinenumber: 1336
    functionLinenumberEnd: 1347
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1000(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1340"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1346"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1345"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1341"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1344"
        BranchSideFuncs:
        - "access$1000(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
        - "add(java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1343"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1337,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1341,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer].access$1000(io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServer)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$AuthoritativeNameServerList:1342,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.unix.Limits].<init>()"
    functionSourceFile: "io.netty.channel.unix.Limits"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Limits:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$7].<init>(io.netty.handler.ssl.SslHandler,io.netty.util.concurrent.Promise,long)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$7"
    linkageType: ""
    functionLinenumber: 2108
    functionLinenumberEnd: 2110
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.util.concurrent.Promise"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$7:2109,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$7].run()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$7"
    linkageType: ""
    functionLinenumber: 2111
    functionLinenumberEnd: 2125
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.ssl.SslHandshakeTimeoutException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].tryFailure(java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandler].access$900(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.handler.ssl.SslUtils].handleHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean)"
    - "[io.netty.handler.ssl.SslHandler].access$2300(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 49
    ICount: 32
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler$7:2112"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$7:2115"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler$7:2114"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "<init>(java.lang.String)"
        - "tryFailure(java.lang.Throwable)"
    - Branch String: "io.netty.handler.ssl.SslHandler$7:2118"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$7:2122"
        BranchSideFuncs:
        - "handleHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler$7:2121"
        BranchSideFuncs:
        - "access$2300(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "access$900(io.netty.handler.ssl.SslHandler)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$7:2112,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.ssl.SslHandler$7:2115,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.SslHandler$7:2115,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslHandler$7:2115,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.ssl.SslHandler$7:2115,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.SslHandler$7:2115,1"
      Dst: "[io.netty.handler.ssl.SslHandshakeTimeoutException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslHandler$7:2118,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler$7:2119,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$900(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler$7:2119,1"
      Dst: "[io.netty.handler.ssl.SslUtils].handleHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean)"
    - Src: "io.netty.handler.ssl.SslHandler$7:2122,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$2300(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandshakeTimeoutException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SslHandshakeTimeoutException"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandshakeTimeoutException:26,1"
      Dst: "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$900(io.netty.handler.ssl.SslHandler)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslUtils].handleHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 440
    functionLinenumberEnd: 447
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.handler.ssl.SslHandshakeCompletionEvent].<init>(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close()"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 3
    ICount: 10
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:442"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:445"
        BranchSideFuncs:
        - "fireUserEventTriggered(java.lang.Object)"
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:444"
        BranchSideFuncs:
        - "close()"
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:441,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    - Src: "io.netty.handler.ssl.SslUtils:443,1"
      Dst: "[io.netty.handler.ssl.SslHandshakeCompletionEvent].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslUtils:443,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslUtils:445,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandshakeCompletionEvent].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandshakeCompletionEvent"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslCompletionEvent].<init>(java.lang.Throwable)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandshakeCompletionEvent:37,1"
      Dst: "[io.netty.handler.ssl.SslCompletionEvent].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$2300(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].releaseAndFailAll(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].releaseAndFailAll(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].releaseAndFailAll(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1907
    functionLinenumberEnd: 1912
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractCoalescingBufferQueue].releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1908"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1911"
        BranchSideFuncs:
        - "releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1910"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1909,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolChunkList].<init>(io.netty.buffer.PoolArena,io.netty.buffer.PoolChunkList,int,int,int)"
    functionSourceFile: "io.netty.buffer.PoolChunkList"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.buffer.PoolArena"
    - "io.netty.buffer.PoolChunkList"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.PoolChunkList].calculateMaxCapacity(int,int)"
    functionUses: 6
    ICount: 42
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunkList:48"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:49"
        BranchSideFuncs:
        - "calculateMaxCapacity(int,int)"
      - BranchSide: "io.netty.buffer.PoolChunkList:48"
        BranchSideFuncs:
        - "calculateMaxCapacity(int,int)"
    - Branch String: "io.netty.buffer.PoolChunkList:48"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:49"
        BranchSideFuncs:
        - "calculateMaxCapacity(int,int)"
      - BranchSide: "io.netty.buffer.PoolChunkList:48"
        BranchSideFuncs:
        - "calculateMaxCapacity(int,int)"
    - Branch String: "io.netty.buffer.PoolChunkList:70"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:49"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunkList:48"
        BranchSideFuncs:
        - "calculateMaxCapacity(int,int)"
    - Branch String: "io.netty.buffer.PoolChunkList:71"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:70"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunkList:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunkList:47,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.buffer.PoolChunkList:48,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.PoolChunkList:53,1"
      Dst: "[io.netty.buffer.PoolChunkList].calculateMaxCapacity(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.PoolChunkList].calculateMaxCapacity(int,int)"
    functionSourceFile: "io.netty.buffer.PoolChunkList"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 92
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolChunkList].minUsage0(int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunkList:81"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunkList:79,1"
      Dst: "[io.netty.buffer.PoolChunkList].minUsage0(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunkList].minUsage0(int)"
    functionSourceFile: "io.netty.buffer.PoolChunkList"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 208
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunkList:207,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunkList].prevList(io.netty.buffer.PoolChunkList<T>)"
    functionSourceFile: "io.netty.buffer.PoolChunkList"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PoolChunkList<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    functionUses: 6
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunkList:95"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:96"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunkList:95"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunkList:95"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:96"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunkList:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunkList:95,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolChunkList].allocate(io.netty.buffer.PooledByteBuf<T>,int,int,io.netty.buffer.PoolThreadCache)"
    functionSourceFile: "io.netty.buffer.PoolChunkList"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "io.netty.buffer.PooledByteBuf<T>"
    - "int"
    - "int"
    - "io.netty.buffer.PoolThreadCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SizeClasses].sizeIdx2size(int)"
    - "[io.netty.buffer.PoolChunk].allocate(io.netty.buffer.PooledByteBuf,int,int,io.netty.buffer.PoolThreadCache)"
    - "[io.netty.buffer.PoolChunkList].remove(io.netty.buffer.PoolChunk)"
    - "[io.netty.buffer.PoolChunkList].add(io.netty.buffer.PoolChunk)"
    functionUses: 5
    ICount: 24
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunkList:101"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunkList:107"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:116"
        BranchSideFuncs:
        - "allocate(io.netty.buffer.PooledByteBuf,int,int,io.netty.buffer.PoolThreadCache)"
      - BranchSide: "io.netty.buffer.PoolChunkList:115"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunkList:108"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:107"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunkList:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunkList:109"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:113"
        BranchSideFuncs:
        - "remove(io.netty.buffer.PoolChunk)"
        - "add(io.netty.buffer.PoolChunk)"
      - BranchSide: "io.netty.buffer.PoolChunkList:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunkList:100,1"
      Dst: "[io.netty.buffer.SizeClasses].sizeIdx2size(int)"
    - Src: "io.netty.buffer.PoolChunkList:108,1"
      Dst: "[io.netty.buffer.PoolChunk].allocate(io.netty.buffer.PooledByteBuf,int,int,io.netty.buffer.PoolThreadCache)"
    - Src: "io.netty.buffer.PoolChunkList:110,1"
      Dst: "[io.netty.buffer.PoolChunkList].remove(io.netty.buffer.PoolChunk)"
    - Src: "io.netty.buffer.PoolChunkList:111,1"
      Dst: "[io.netty.buffer.PoolChunkList].add(io.netty.buffer.PoolChunk)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.PoolChunkList].free(io.netty.buffer.PoolChunk<T>,long,int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.PoolChunkList"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 127
    functionDepth: 7
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "io.netty.buffer.PoolChunk<T>"
    - "long"
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolChunk].free(long,int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PoolChunkList].remove(io.netty.buffer.PoolChunk)"
    - "[io.netty.buffer.PoolChunkList].move0(io.netty.buffer.PoolChunk)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunkList:121"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:126"
        BranchSideFuncs:
        - "remove(io.netty.buffer.PoolChunk)"
        - "move0(io.netty.buffer.PoolChunk)"
      - BranchSide: "io.netty.buffer.PoolChunkList:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunkList:120,1"
      Dst: "[io.netty.buffer.PoolChunk].free(long,int,java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.PoolChunkList:122,1"
      Dst: "[io.netty.buffer.PoolChunkList].remove(io.netty.buffer.PoolChunk)"
    - Src: "io.netty.buffer.PoolChunkList:124,1"
      Dst: "[io.netty.buffer.PoolChunkList].move0(io.netty.buffer.PoolChunk)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].free(long,int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 474
    functionLinenumberEnd: 523
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolChunk].runSize(int,long)"
    - "[io.netty.buffer.PoolChunk].isSubpage(long)"
    - "[io.netty.buffer.SizeClasses].size2SizeIdx(int)"
    - "[io.netty.buffer.PoolArena].findSubpagePoolHead(int)"
    - "[io.netty.buffer.PoolChunk].runOffset(long)"
    - "[io.netty.buffer.PoolSubpage].lock()"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.PoolChunk].bitmapIdx(long)"
    - "[io.netty.buffer.PoolSubpage].free(io.netty.buffer.PoolSubpage,int)"
    - "[io.netty.buffer.PoolSubpage].unlock()"
    - "[java.util.concurrent.locks.ReentrantLock].lock()"
    - "[io.netty.buffer.PoolChunk].collapseRuns(long)"
    - "[io.netty.buffer.PoolChunk].insertAvailRun(int,int,long)"
    - "[io.netty.buffer.PoolChunk].runPages(long)"
    - "[java.util.concurrent.locks.ReentrantLock].unlock()"
    - "[java.util.ArrayDeque].size()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].size()"
    - "[java.util.concurrent.LinkedBlockingDeque].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].offer(java.lang.Object)"
    - "[java.util.ArrayDeque].offer(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].offer(java.lang.Object)"
    - "[java.util.LinkedList].offer(java.lang.Object)"
    - "[java.util.Deque].size()"
    - "[java.util.Deque].offer(java.lang.Object)"
    functionUses: 1
    ICount: 71
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:476"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:501"
        BranchSideFuncs:
        - "findSubpagePoolHead(int)"
        - "size2SizeIdx(int)"
      - BranchSide: "io.netty.buffer.PoolChunk:500"
        BranchSideFuncs:
        - "runOffset(long)"
        - "runPages(long)"
        - "unlock()"
        - "collapseRuns(long)"
        - "insertAvailRun(int,int,long)"
        - "lock()"
    - Branch String: "io.netty.buffer.PoolChunk:487"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:488"
        BranchSideFuncs:
        - "free(io.netty.buffer.PoolSubpage,int)"
        - "bitmapIdx(long)"
      - BranchSide: "io.netty.buffer.PoolChunk:487"
        BranchSideFuncs:
        - "free(io.netty.buffer.PoolSubpage,int)"
        - "bitmapIdx(long)"
    - Branch String: "io.netty.buffer.PoolChunk:487"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:477"
        BranchSideFuncs:
        - "free(io.netty.buffer.PoolSubpage,int)"
        - "bitmapIdx(long)"
      - BranchSide: "io.netty.buffer.PoolChunk:476"
        BranchSideFuncs:
        - "findSubpagePoolHead(int)"
        - "size2SizeIdx(int)"
    - Branch String: "io.netty.buffer.PoolChunk:487"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:488"
        BranchSideFuncs:
        - "free(io.netty.buffer.PoolSubpage,int)"
        - "bitmapIdx(long)"
      - BranchSide: "io.netty.buffer.PoolChunk:487"
        BranchSideFuncs:
        - "free(io.netty.buffer.PoolSubpage,int)"
        - "bitmapIdx(long)"
    - Branch String: "io.netty.buffer.PoolChunk:488"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:492"
        BranchSideFuncs:
        - "runOffset(long)"
        - "runPages(long)"
        - "free(io.netty.buffer.PoolSubpage,int)"
        - "unlock()"
        - "collapseRuns(long)"
        - "<init>()"
        - "insertAvailRun(int,int,long)"
        - "lock()"
        - "bitmapIdx(long)"
      - BranchSide: "io.netty.buffer.PoolChunk:491"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.buffer.PoolChunk:492"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:494"
        BranchSideFuncs:
        - "runOffset(long)"
        - "runPages(long)"
        - "free(io.netty.buffer.PoolSubpage,int)"
        - "unlock()"
        - "collapseRuns(long)"
        - "<init>()"
        - "insertAvailRun(int,int,long)"
        - "lock()"
        - "bitmapIdx(long)"
      - BranchSide: "io.netty.buffer.PoolChunk:493"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:492"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:494"
        BranchSideFuncs:
        - "runOffset(long)"
        - "runPages(long)"
        - "free(io.netty.buffer.PoolSubpage,int)"
        - "unlock()"
        - "collapseRuns(long)"
        - "<init>()"
        - "insertAvailRun(int,int,long)"
        - "lock()"
        - "bitmapIdx(long)"
      - BranchSide: "io.netty.buffer.PoolChunk:493"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:518"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:522"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "io.netty.buffer.PoolChunk:521"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:518"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:522"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "io.netty.buffer.PoolChunk:521"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:519"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:522"
        BranchSideFuncs:
        - "offer(java.lang.Object)"
      - BranchSide: "io.netty.buffer.PoolChunk:521"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:475,1"
      Dst: "[io.netty.buffer.PoolChunk].runSize(int,long)"
    - Src: "io.netty.buffer.PoolChunk:476,1"
      Dst: "[io.netty.buffer.PoolChunk].isSubpage(long)"
    - Src: "io.netty.buffer.PoolChunk:477,1"
      Dst: "[io.netty.buffer.SizeClasses].size2SizeIdx(int)"
    - Src: "io.netty.buffer.PoolChunk:478,1"
      Dst: "[io.netty.buffer.PoolArena].findSubpagePoolHead(int)"
    - Src: "io.netty.buffer.PoolChunk:480,1"
      Dst: "[io.netty.buffer.PoolChunk].runOffset(long)"
    - Src: "io.netty.buffer.PoolChunk:485,1"
      Dst: "[io.netty.buffer.PoolSubpage].lock()"
    - Src: "io.netty.buffer.PoolChunk:487,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.PoolChunk:488,1"
      Dst: "[io.netty.buffer.PoolChunk].bitmapIdx(long)"
    - Src: "io.netty.buffer.PoolChunk:488,1"
      Dst: "[io.netty.buffer.PoolSubpage].free(io.netty.buffer.PoolSubpage,int)"
    - Src: "io.netty.buffer.PoolChunk:496,1"
      Dst: "[io.netty.buffer.PoolSubpage].unlock()"
    - Src: "io.netty.buffer.PoolChunk:501,1"
      Dst: "[java.util.concurrent.locks.ReentrantLock].lock()"
    - Src: "io.netty.buffer.PoolChunk:505,1"
      Dst: "[io.netty.buffer.PoolChunk].collapseRuns(long)"
    - Src: "io.netty.buffer.PoolChunk:512,1"
      Dst: "[io.netty.buffer.PoolChunk].runPages(long)"
    - Src: "io.netty.buffer.PoolChunk:512,1"
      Dst: "[io.netty.buffer.PoolChunk].insertAvailRun(int,int,long)"
    - Src: "io.netty.buffer.PoolChunk:515,1"
      Dst: "[java.util.concurrent.locks.ReentrantLock].unlock()"
    - Src: "io.netty.buffer.PoolChunk:519,1"
      Dst: "[java.util.Deque].size()"
    - Src: "io.netty.buffer.PoolChunk:520,1"
      Dst: "[java.util.Deque].offer(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 6
  - functionName: "[io.netty.buffer.PoolChunk].runSize(int,long)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 666
    functionLinenumberEnd: 668
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolChunk].runPages(long)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:667,1"
      Dst: "[io.netty.buffer.PoolChunk].runPages(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].runPages(long)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 670
    functionLinenumberEnd: 672
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].isSubpage(long)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 682
    functionLinenumberEnd: 684
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:683"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:682"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolChunk].runOffset(long)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 662
    functionLinenumberEnd: 664
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolSubpage].lock()"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: 314
    functionLinenumberEnd: 317
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReentrantLock].lock()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolSubpage:315,1"
      Dst: "[java.util.concurrent.locks.ReentrantLock].lock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].bitmapIdx(long)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 686
    functionLinenumberEnd: 688
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolSubpage].unlock()"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: 318
    functionLinenumberEnd: 321
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReentrantLock].unlock()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolSubpage:319,1"
      Dst: "[java.util.concurrent.locks.ReentrantLock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].collapseRuns(long)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 524
    functionLinenumberEnd: 526
    functionDepth: 5
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolChunk].collapseNext(long)"
    - "[io.netty.buffer.PoolChunk].collapsePast(long)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:525,1"
      Dst: "[io.netty.buffer.PoolChunk].collapsePast(long)"
    - Src: "io.netty.buffer.PoolChunk:525,1"
      Dst: "[io.netty.buffer.PoolChunk].collapseNext(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].collapsePast(long)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 529
    functionLinenumberEnd: 550
    functionDepth: 4
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolChunk].runOffset(long)"
    - "[io.netty.buffer.PoolChunk].runPages(long)"
    - "[io.netty.buffer.PoolChunk].getAvailRunByOffset(int)"
    - "[io.netty.buffer.PoolChunk].removeAvailRun(long)"
    - "[io.netty.buffer.PoolChunk].toRunHandle(int,int,int)"
    functionUses: 1
    ICount: 21
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:534"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:538"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunk:537"
        BranchSideFuncs:
        - "runOffset(long)"
        - "runPages(long)"
    - Branch String: "io.netty.buffer.PoolChunk:542"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:546"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:542"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:546"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:530,1"
      Dst: "[io.netty.buffer.PoolChunk].runOffset(long)"
    - Src: "io.netty.buffer.PoolChunk:531,1"
      Dst: "[io.netty.buffer.PoolChunk].runPages(long)"
    - Src: "io.netty.buffer.PoolChunk:533,1"
      Dst: "[io.netty.buffer.PoolChunk].getAvailRunByOffset(int)"
    - Src: "io.netty.buffer.PoolChunk:544,1"
      Dst: "[io.netty.buffer.PoolChunk].removeAvailRun(long)"
    - Src: "io.netty.buffer.PoolChunk:545,1"
      Dst: "[io.netty.buffer.PoolChunk].toRunHandle(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.PoolChunk].getAvailRunByOffset(int)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 283
    functionLinenumberEnd: 285
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.LongLongHashMap].get(long)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:284,1"
      Dst: "[io.netty.buffer.LongLongHashMap].get(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.LongLongHashMap].get(long)"
    functionSourceFile: "io.netty.buffer.LongLongHashMap"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 99
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.LongLongHashMap].index(long)"
    functionUses: 1
    ICount: 25
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.LongLongHashMap:87"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMap:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.LongLongHashMap:89"
        BranchSideFuncs:
        - "index(long)"
    - Branch String: "io.netty.buffer.LongLongHashMap:91"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMap:98"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.LongLongHashMap:97"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.LongLongHashMap:93"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMap:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.LongLongHashMap:90,1"
      Dst: "[io.netty.buffer.LongLongHashMap].index(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.LongLongHashMap].index(long)"
    functionSourceFile: "io.netty.buffer.LongLongHashMap"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].removeAvailRun(long)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 260
    functionLinenumberEnd: 265
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SizeClasses].pages2pageIdxFloor(int)"
    - "[io.netty.buffer.PoolChunk].runPages(long)"
    - "[io.netty.buffer.PoolChunk].removeAvailRun(io.netty.buffer.LongPriorityQueue,long)"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:261,1"
      Dst: "[io.netty.buffer.PoolChunk].runPages(long)"
    - Src: "io.netty.buffer.PoolChunk:261,1"
      Dst: "[io.netty.buffer.SizeClasses].pages2pageIdxFloor(int)"
    - Src: "io.netty.buffer.PoolChunk:263,1"
      Dst: "[io.netty.buffer.PoolChunk].removeAvailRun(io.netty.buffer.LongPriorityQueue,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].removeAvailRun(io.netty.buffer.LongPriorityQueue,long)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 278
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.LongPriorityQueue"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.LongPriorityQueue].remove(long)"
    - "[io.netty.buffer.PoolChunk].runOffset(long)"
    - "[io.netty.buffer.PoolChunk].runPages(long)"
    - "[io.netty.buffer.LongLongHashMap].remove(long)"
    - "[io.netty.buffer.PoolChunk].lastPage(int,int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:273"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:276"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:267,1"
      Dst: "[io.netty.buffer.LongPriorityQueue].remove(long)"
    - Src: "io.netty.buffer.PoolChunk:269,1"
      Dst: "[io.netty.buffer.PoolChunk].runOffset(long)"
    - Src: "io.netty.buffer.PoolChunk:270,1"
      Dst: "[io.netty.buffer.PoolChunk].runPages(long)"
    - Src: "io.netty.buffer.PoolChunk:272,1"
      Dst: "[io.netty.buffer.LongLongHashMap].remove(long)"
    - Src: "io.netty.buffer.PoolChunk:275,1"
      Dst: "[io.netty.buffer.PoolChunk].lastPage(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.LongLongHashMap].remove(long)"
    functionSourceFile: "io.netty.buffer.LongLongHashMap"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 85
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.LongLongHashMap].index(long)"
    functionUses: 2
    ICount: 24
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.LongLongHashMap:71"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMap:75"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.LongLongHashMap:74"
        BranchSideFuncs:
        - "index(long)"
    - Branch String: "io.netty.buffer.LongLongHashMap:76"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMap:84"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.LongLongHashMap:83"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.LongLongHashMap:78"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMap:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.LongLongHashMap:75,1"
      Dst: "[io.netty.buffer.LongLongHashMap].index(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.PoolChunk].lastPage(int,int)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].toRunHandle(int,int,int)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 576
    functionLinenumberEnd: 578
    functionDepth: 0
    returnType: "long"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].collapseNext(long)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 553
    functionLinenumberEnd: 574
    functionDepth: 4
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolChunk].runOffset(long)"
    - "[io.netty.buffer.PoolChunk].runPages(long)"
    - "[io.netty.buffer.PoolChunk].getAvailRunByOffset(int)"
    - "[io.netty.buffer.PoolChunk].removeAvailRun(long)"
    - "[io.netty.buffer.PoolChunk].toRunHandle(int,int,int)"
    functionUses: 1
    ICount: 21
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:558"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:562"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunk:561"
        BranchSideFuncs:
        - "runOffset(long)"
        - "runPages(long)"
    - Branch String: "io.netty.buffer.PoolChunk:566"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:570"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:566"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:570"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:554,1"
      Dst: "[io.netty.buffer.PoolChunk].runOffset(long)"
    - Src: "io.netty.buffer.PoolChunk:555,1"
      Dst: "[io.netty.buffer.PoolChunk].runPages(long)"
    - Src: "io.netty.buffer.PoolChunk:557,1"
      Dst: "[io.netty.buffer.PoolChunk].getAvailRunByOffset(int)"
    - Src: "io.netty.buffer.PoolChunk:568,1"
      Dst: "[io.netty.buffer.PoolChunk].removeAvailRun(long)"
    - Src: "io.netty.buffer.PoolChunk:569,1"
      Dst: "[io.netty.buffer.PoolChunk].toRunHandle(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.PoolChunk].insertAvailRun(int,int,long)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 242
    functionLinenumberEnd: 254
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SizeClasses].pages2pageIdxFloor(int)"
    - "[io.netty.buffer.LongPriorityQueue].offer(long)"
    - "[io.netty.buffer.PoolChunk].insertAvailRun0(int,long)"
    - "[io.netty.buffer.PoolChunk].lastPage(int,int)"
    functionUses: 3
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:249"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:252"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:243,1"
      Dst: "[io.netty.buffer.SizeClasses].pages2pageIdxFloor(int)"
    - Src: "io.netty.buffer.PoolChunk:245,1"
      Dst: "[io.netty.buffer.LongPriorityQueue].offer(long)"
    - Src: "io.netty.buffer.PoolChunk:248,1"
      Dst: "[io.netty.buffer.PoolChunk].insertAvailRun0(int,long)"
    - Src: "io.netty.buffer.PoolChunk:251,1"
      Dst: "[io.netty.buffer.PoolChunk].lastPage(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolChunk].insertAvailRun0(int,long)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 255
    functionLinenumberEnd: 259
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.LongLongHashMap].put(long,long)"
    - "[java.lang.AssertionError].<init>()"
    functionUses: 2
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:257"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:258"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunk:257"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:257"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:258"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunk:257"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:256,1"
      Dst: "[io.netty.buffer.LongLongHashMap].put(long,long)"
    - Src: "io.netty.buffer.PoolChunk:257,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.LongLongHashMap].put(long,long)"
    functionSourceFile: "io.netty.buffer.LongLongHashMap"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 68
    functionDepth: 2
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.LongLongHashMap].index(long)"
    - "[io.netty.buffer.LongLongHashMap].expand()"
    functionUses: 2
    ICount: 56
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.LongLongHashMap:40"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMap:47"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.LongLongHashMap:46"
        BranchSideFuncs:
        - "index(long)"
    - Branch String: "io.netty.buffer.LongLongHashMap:48"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMap:66"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.LongLongHashMap:65"
        BranchSideFuncs:
        - "expand()"
    - Branch String: "io.netty.buffer.LongLongHashMap:50"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMap:51"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.LongLongHashMap:50"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.LongLongHashMap:50"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMap:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.LongLongHashMap:51"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMap:51"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.LongLongHashMap:50"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.LongLongHashMap:54"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMap:62"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.LongLongHashMap:61"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.LongLongHashMap:56"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMap:54"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.LongLongHashMap:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.LongLongHashMap:47,1"
      Dst: "[io.netty.buffer.LongLongHashMap].index(long)"
    - Src: "io.netty.buffer.LongLongHashMap:66,1"
      Dst: "[io.netty.buffer.LongLongHashMap].expand()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 7
  - functionName: "[io.netty.buffer.LongLongHashMap].expand()"
    functionSourceFile: "io.netty.buffer.LongLongHashMap"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 123
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.LongLongHashMap].computeMaskAndProbe()"
    - "[io.netty.buffer.LongLongHashMap].put(long,long)"
    functionUses: 1
    ICount: 19
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.LongLongHashMap:115"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMap:122"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.LongLongHashMap:121"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.LongLongHashMap:117"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMap:112"
        BranchSideFuncs:
        - "put(long,long)"
      - BranchSide: "io.netty.buffer.LongLongHashMap:111"
        BranchSideFuncs:
        - "computeMaskAndProbe()"
    Callsites:
    - Src: "io.netty.buffer.LongLongHashMap:114,1"
      Dst: "[io.netty.buffer.LongLongHashMap].computeMaskAndProbe()"
    - Src: "io.netty.buffer.LongLongHashMap:119,1"
      Dst: "[io.netty.buffer.LongLongHashMap].put(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.LongLongHashMap].computeMaskAndProbe()"
    functionSourceFile: "io.netty.buffer.LongLongHashMap"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].log(double)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.LongLongHashMap:127,1"
      Dst: "[java.lang.Math].log(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunkList].move(io.netty.buffer.PoolChunk<T>)"
    functionSourceFile: "io.netty.buffer.PoolChunkList"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 140
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PoolChunk<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.PoolChunk].usage()"
    - "[io.netty.buffer.PoolChunkList].move0(io.netty.buffer.PoolChunk)"
    - "[io.netty.buffer.PoolChunkList].add0(io.netty.buffer.PoolChunk)"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunkList:130"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:131"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunkList:130"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:131"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunkList:132"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:137"
        BranchSideFuncs:
        - "add0(io.netty.buffer.PoolChunk)"
    Callsites:
    - Src: "io.netty.buffer.PoolChunkList:130,1"
      Dst: "[io.netty.buffer.PoolChunk].usage()"
    - Src: "io.netty.buffer.PoolChunkList:130,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.PoolChunkList:134,1"
      Dst: "[io.netty.buffer.PoolChunkList].move0(io.netty.buffer.PoolChunk)"
    - Src: "io.netty.buffer.PoolChunkList:138,1"
      Dst: "[io.netty.buffer.PoolChunkList].add0(io.netty.buffer.PoolChunk)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolChunk].usage()"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 289
    functionLinenumberEnd: 297
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena].lock()"
    - "[io.netty.buffer.PoolArena].unlock()"
    - "[io.netty.buffer.PoolChunk].usage(int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:290,1"
      Dst: "[io.netty.buffer.PoolArena].lock()"
    - Src: "io.netty.buffer.PoolChunk:294,1"
      Dst: "[io.netty.buffer.PoolArena].unlock()"
    - Src: "io.netty.buffer.PoolChunk:296,1"
      Dst: "[io.netty.buffer.PoolChunk].usage(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].usage(int)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 299
    functionLinenumberEnd: 309
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:300"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:304"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunk:303"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:305"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:308"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunk:307"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunkList].move0(io.netty.buffer.PoolChunk<T>)"
    functionSourceFile: "io.netty.buffer.PoolChunkList"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 154
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PoolChunk<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.PoolChunk].usage()"
    - "[io.netty.buffer.PoolChunkList].move(io.netty.buffer.PoolChunk)"
    functionUses: 2
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunkList:147"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:152"
        BranchSideFuncs:
        - "move(io.netty.buffer.PoolChunk)"
    - Branch String: "io.netty.buffer.PoolChunkList:150"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:151"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunkList:150"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunkList:150"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:151"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunkList:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunkList:150,1"
      Dst: "[io.netty.buffer.PoolChunk].usage()"
    - Src: "io.netty.buffer.PoolChunkList:150,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.PoolChunkList:153,1"
      Dst: "[io.netty.buffer.PoolChunkList].move(io.netty.buffer.PoolChunk)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolChunkList].add(io.netty.buffer.PoolChunk<T>)"
    functionSourceFile: "io.netty.buffer.PoolChunkList"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 163
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PoolChunk<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolChunkList].add(io.netty.buffer.PoolChunk)"
    - "[io.netty.buffer.PoolChunkList].add0(io.netty.buffer.PoolChunk)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunkList:157"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:161"
        BranchSideFuncs:
        - "add(io.netty.buffer.PoolChunk)"
      - BranchSide: "io.netty.buffer.PoolChunkList:160"
        BranchSideFuncs:
        - "add0(io.netty.buffer.PoolChunk)"
    Callsites:
    - Src: "io.netty.buffer.PoolChunkList:158,1"
      Dst: "[io.netty.buffer.PoolChunkList].add(io.netty.buffer.PoolChunk)"
    - Src: "io.netty.buffer.PoolChunkList:161,1"
      Dst: "[io.netty.buffer.PoolChunkList].add0(io.netty.buffer.PoolChunk)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunkList].add0(io.netty.buffer.PoolChunk<T>)"
    functionSourceFile: "io.netty.buffer.PoolChunkList"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 180
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PoolChunk<T>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunkList:169"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:174"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunkList:173"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolChunkList].remove(io.netty.buffer.PoolChunk<T>)"
    functionSourceFile: "io.netty.buffer.PoolChunkList"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 195
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PoolChunk<T>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunkList:182"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:188"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunkList:187"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunkList:184"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:194"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunkList:193"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunkList:190"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:194"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunkList:193"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.PoolChunkList].minUsage()"
    functionSourceFile: "io.netty.buffer.PoolChunkList"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolChunkList].minUsage0(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunkList:198,1"
      Dst: "[io.netty.buffer.PoolChunkList].minUsage0(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunkList].maxUsage()"
    functionSourceFile: "io.netty.buffer.PoolChunkList"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunkList:203,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunkList].iterator()"
    functionSourceFile: "io.netty.buffer.PoolChunkList"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 229
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena].lock()"
    - "[java.util.ArrayList].<init>()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.buffer.PoolArena].unlock()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].iterator()"
    functionUses: 25
    ICount: 25
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunkList:214"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:217"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunkList:216"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.buffer.PoolChunkList:221"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:219"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunkList:218"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    Callsites:
    - Src: "io.netty.buffer.PoolChunkList:212,1"
      Dst: "[io.netty.buffer.PoolArena].lock()"
    - Src: "io.netty.buffer.PoolChunkList:227,1"
      Dst: "[io.netty.buffer.PoolArena].unlock()"
    - Src: "io.netty.buffer.PoolChunkList:217,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.buffer.PoolChunkList:219,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.buffer.PoolChunkList:225,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunkList].toString()"
    functionSourceFile: "io.netty.buffer.PoolChunkList"
    linkageType: ""
    functionLinenumber: 232
    functionLinenumberEnd: 252
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[io.netty.buffer.PoolArena].lock()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.buffer.PoolArena].unlock()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 28
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunkList:236"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:240"
        BranchSideFuncs:
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "unlock()"
      - BranchSide: "io.netty.buffer.PoolChunkList:239"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunkList:243"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:246"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunkList:245"
        BranchSideFuncs:
        - "append(java.lang.String)"
    Callsites:
    - Src: "io.netty.buffer.PoolChunkList:233,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.PoolChunkList:234,1"
      Dst: "[io.netty.buffer.PoolArena].lock()"
    - Src: "io.netty.buffer.PoolChunkList:249,1"
      Dst: "[io.netty.buffer.PoolArena].unlock()"
    - Src: "io.netty.buffer.PoolChunkList:241,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.buffer.PoolChunkList:246,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.PoolChunkList:251,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunkList].destroy(io.netty.buffer.PoolArena<T>)"
    functionSourceFile: "io.netty.buffer.PoolChunkList"
    linkageType: ""
    functionLinenumber: 254
    functionLinenumberEnd: 262
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PoolArena<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena$DirectArena].destroyChunk(io.netty.buffer.PoolChunk)"
    - "[io.netty.buffer.PoolArena$HeapArena].destroyChunk(io.netty.buffer.PoolChunk)"
    - "[io.netty.buffer.PoolArena].destroyChunk(io.netty.buffer.PoolChunk)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunkList:256"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunkList:260"
        BranchSideFuncs:
        - "destroyChunk(io.netty.buffer.PoolChunk)"
      - BranchSide: "io.netty.buffer.PoolChunkList:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunkList:257,1"
      Dst: "[io.netty.buffer.PoolArena].destroyChunk(io.netty.buffer.PoolChunk)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2BitWriter].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BitWriter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:25,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2BitWriter].flush(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BitWriter"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 120
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeMedium(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeMedium(int)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    functionUses: 1
    ICount: 33
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitWriter:105"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:119"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:118"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitWriter:109"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:111"
        BranchSideFuncs:
        - "writeByte(int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitWriter:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:113"
        BranchSideFuncs:
        - "writeShort(int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:112"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2BitWriter:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:116"
        BranchSideFuncs:
        - "writeMedium(int)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2BitWriter:115"
        BranchSideFuncs:
        - "writeInt(int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:110,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:112,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:114,1"
      Dst: "[io.netty.buffer.ByteBuf].writeMedium(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2BitWriter:116,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory].<init>()"
    functionSourceFile: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory].<init>(io.netty.handler.logging.LogLevel)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory:43,1"
      Dst: "[io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory].<init>(io.netty.handler.logging.LogLevel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory].<init>(io.netty.handler.logging.LogLevel)"
    functionSourceFile: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 54
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.logging.LogLevel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory].checkAndConvertLevel(io.netty.handler.logging.LogLevel)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory:51,1"
      Dst: "[io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory].checkAndConvertLevel(io.netty.handler.logging.LogLevel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory].<init>(java.lang.Class,io.netty.handler.logging.LogLevel)"
    functionSourceFile: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "io.netty.handler.logging.LogLevel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory].checkAndConvertLevel(io.netty.handler.logging.LogLevel)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.Class)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory:61,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory:62,1"
      Dst: "[io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory].checkAndConvertLevel(io.netty.handler.logging.LogLevel)"
    - Src: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory:63,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory:63,1"
      Dst: "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory].<init>(java.lang.String,io.netty.handler.logging.LogLevel)"
    functionSourceFile: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.logging.LogLevel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory].checkAndConvertLevel(io.netty.handler.logging.LogLevel)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory:72,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory:73,1"
      Dst: "[io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory].checkAndConvertLevel(io.netty.handler.logging.LogLevel)"
    - Src: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory:74,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory:74,1"
      Dst: "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory].checkAndConvertLevel(io.netty.handler.logging.LogLevel)"
    functionSourceFile: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 1
    returnType: "io.netty.util.internal.logging.InternalLogLevel"
    argCount: 1
    argTypes:
    - "io.netty.handler.logging.LogLevel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.logging.LogLevel].toInternalLevel()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory:78,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory:78,1"
      Dst: "[io.netty.handler.logging.LogLevel].toInternalLevel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LogLevel].toInternalLevel()"
    functionSourceFile: "io.netty.handler.logging.LogLevel"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogLevel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory].newDnsQueryLifecycleObserver(io.netty.handler.codec.dns.DnsQuestion)"
    functionSourceFile: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 2
    returnType: "io.netty.resolver.dns.DnsQueryLifecycleObserver"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsQuestion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.LoggingDnsQueryLifecycleObserver].<init>(io.netty.handler.codec.dns.DnsQuestion,io.netty.util.internal.logging.InternalLogger,io.netty.util.internal.logging.InternalLogLevel)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.LoggingDnsQueryLifeCycleObserverFactory:83,1"
      Dst: "[io.netty.resolver.dns.LoggingDnsQueryLifecycleObserver].<init>(io.netty.handler.codec.dns.DnsQuestion,io.netty.util.internal.logging.InternalLogger,io.netty.util.internal.logging.InternalLogLevel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.LoggingDnsQueryLifecycleObserver].<init>(io.netty.handler.codec.dns.DnsQuestion,io.netty.util.internal.logging.InternalLogger,io.netty.util.internal.logging.InternalLogLevel)"
    functionSourceFile: "io.netty.resolver.dns.LoggingDnsQueryLifecycleObserver"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 40
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.dns.DnsQuestion"
    - "io.netty.util.internal.logging.InternalLogger"
    - "io.netty.util.internal.logging.InternalLogLevel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 15
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.LoggingDnsQueryLifecycleObserver:35,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.LoggingDnsQueryLifecycleObserver:36,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2].<init>(io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe)"
    functionSourceFile: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2"
    linkageType: ""
    functionLinenumber: 269
    functionLinenumberEnd: 271
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2:270,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2"
    linkageType: ""
    functionLinenumber: 272
    functionLinenumberEnd: 281
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isCancelled()"
    - "[io.netty.util.concurrent.CompleteFuture].isCancelled()"
    - "[io.netty.util.concurrent.DefaultPromise].isCancelled()"
    - "[io.netty.channel.VoidChannelPromise].isCancelled()"
    - "[io.netty.channel.nio.AbstractNioChannel].access$400(io.netty.channel.nio.AbstractNioChannel)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cancel(boolean)"
    - "[io.netty.util.concurrent.CompleteFuture].cancel(boolean)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cancel(boolean)"
    - "[io.netty.channel.VoidChannelPromise].cancel(boolean)"
    - "[io.netty.channel.nio.AbstractNioChannel].access$202(io.netty.channel.nio.AbstractNioChannel,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - "[java.util.concurrent.Future].isCancelled()"
    - "[io.netty.util.concurrent.Future].cancel(boolean)"
    functionUses: 1
    ICount: 20
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2:273"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2:280"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2:279"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2:274"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2:277"
        BranchSideFuncs:
        - "cancel(boolean)"
        - "access$400(io.netty.channel.nio.AbstractNioChannel)"
      - BranchSide: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2:276"
        BranchSideFuncs:
        - "access$202(io.netty.channel.nio.AbstractNioChannel,io.netty.channel.ChannelPromise)"
        - "close(io.netty.channel.ChannelPromise)"
        - "voidPromise()"
    Callsites:
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2:273,1"
      Dst: "[java.util.concurrent.Future].isCancelled()"
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2:274,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].access$400(io.netty.channel.nio.AbstractNioChannel)"
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2:275,1"
      Dst: "[io.netty.util.concurrent.Future].cancel(boolean)"
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2:277,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].access$202(io.netty.channel.nio.AbstractNioChannel,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2:278,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2:278,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2"
    linkageType: ""
    functionLinenumber: 269
    functionLinenumberEnd: 271
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2:270,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].<init>(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:31,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].setStreamId(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionDepth: 1
    returnType: "io.netty.handler.codec.spdy.SpdySynReplyFrame"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setStreamId(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:46,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setStreamId(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].setLast(boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionDepth: 1
    returnType: "io.netty.handler.codec.spdy.SpdySynReplyFrame"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setLast(boolean)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:52,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setLast(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].setInvalid()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionDepth: 1
    returnType: "io.netty.handler.codec.spdy.SpdySynReplyFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setInvalid()"
    functionUses: 9
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:58,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setInvalid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].toString()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 80
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].isLast()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].streamId()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].appendHeaders(java.lang.StringBuilder)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].length()"
    functionUses: 19
    ICount: 27
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:64,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:65,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:65,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:67,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].isLast()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:67,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:68,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:71,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].streamId()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:71,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:75,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].appendHeaders(java.lang.StringBuilder)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:78,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:78,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:78,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame:79,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackEncoder$NameValueEntry].<init>(int,java.lang.CharSequence,java.lang.CharSequence,int,io.netty.handler.codec.http2.HpackEncoder$NameValueEntry)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackEncoder$NameValueEntry"
    linkageType: ""
    functionLinenumber: 543
    functionLinenumberEnd: 549
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    - "int"
    - "io.netty.handler.codec.http2.HpackEncoder$NameValueEntry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackHeaderField].<init>(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackEncoder$NameValueEntry:544,1"
      Dst: "[io.netty.handler.codec.http2.HpackHeaderField].<init>(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackEncoder$NameValueEntry].unlink()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackEncoder$NameValueEntry"
    linkageType: ""
    functionLinenumber: 550
    functionLinenumberEnd: 554
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalEventLoopGroup].<init>()"
    functionSourceFile: "io.netty.channel.local.LocalEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultEventLoopGroup].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalEventLoopGroup:31,1"
      Dst: "[io.netty.channel.DefaultEventLoopGroup].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalEventLoopGroup].<init>(int)"
    functionSourceFile: "io.netty.channel.local.LocalEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultEventLoopGroup].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalEventLoopGroup:39,1"
      Dst: "[io.netty.channel.DefaultEventLoopGroup].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalEventLoopGroup].<init>(java.util.concurrent.ThreadFactory)"
    functionSourceFile: "io.netty.channel.local.LocalEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.concurrent.ThreadFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalEventLoopGroup:48,1"
      Dst: "[io.netty.channel.DefaultEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    functionSourceFile: "io.netty.channel.local.LocalEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.concurrent.ThreadFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalEventLoopGroup:58,1"
      Dst: "[io.netty.channel.DefaultEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException].<init>(int,long,byte[])"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "long"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail].<init>(int,long,byte[])"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException].<init>(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException:93,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail].<init>(int,long,byte[])"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException:93,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException].<init>(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException].lastStreamId()"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail].access$000(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException:102,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail].access$000(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail].access$000(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException].errorCode()"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail].access$100(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException:106,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail].access$100(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail].access$100(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException].debugData()"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail].access$200(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException:110,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail].access$200(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException:110,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail].access$200(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyProtocolException$StacklessSpdyProtocolException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyProtocolException$StacklessSpdyProtocolException"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyProtocolException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyProtocolException$StacklessSpdyProtocolException:73,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyProtocolException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyProtocolException$StacklessSpdyProtocolException].<init>(java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyProtocolException$StacklessSpdyProtocolException"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyProtocolException].<init>(java.lang.String,boolean,io.netty.handler.codec.spdy.SpdyProtocolException$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyProtocolException$StacklessSpdyProtocolException:77,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyProtocolException].<init>(java.lang.String,boolean,io.netty.handler.codec.spdy.SpdyProtocolException$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyProtocolException$StacklessSpdyProtocolException].fillInStackTrace()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyProtocolException$StacklessSpdyProtocolException"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$NameValidator$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$NameValidator$1"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$NameValidator$1:68,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$NameValidator$1].validateName(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$NameValidator$1"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$NameValidator$1:71,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.org.objectweb.asm.Attribute$NestHost].<init>()"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Attribute$NestHost"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.org.objectweb.asm.Attribute].<init>(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.org.objectweb.asm.Attribute$NestHost:330,1"
      Dst: "[jdk.internal.org.objectweb.asm.Attribute].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.org.objectweb.asm.Attribute$NestHost].read(jdk.internal.org.objectweb.asm.ClassReader,int,int,char[],int,jdk.internal.org.objectweb.asm.Label[])"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Attribute$NestHost"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "jdk.internal.org.objectweb.asm.Attribute"
    argCount: 6
    argTypes:
    - "jdk.internal.org.objectweb.asm.ClassReader"
    - "int"
    - "int"
    - "char[]"
    - "int"
    - "jdk.internal.org.objectweb.asm.Label[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.org.objectweb.asm.Attribute$NestHost].<init>()"
    - "[jdk.internal.org.objectweb.asm.ClassReader].readClass(int,char[])"
    - "[java.util.Arrays].copyOfRange(byte[],int,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.org.objectweb.asm.Attribute$NestHost:336,1"
      Dst: "[jdk.internal.org.objectweb.asm.Attribute$NestHost].<init>()"
    - Src: "jdk.internal.org.objectweb.asm.Attribute$NestHost:337,1"
      Dst: "[jdk.internal.org.objectweb.asm.ClassReader].readClass(int,char[])"
    - Src: "jdk.internal.org.objectweb.asm.Attribute$NestHost:338,1"
      Dst: "[java.util.Arrays].copyOfRange(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.org.objectweb.asm.Attribute].<init>(java.lang.String)"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Attribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.org.objectweb.asm.Attribute:92,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.org.objectweb.asm.Attribute$NestHost].write(jdk.internal.org.objectweb.asm.ClassWriter,byte[],int,int,int)"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Attribute$NestHost"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "jdk.internal.org.objectweb.asm.ByteVector"
    argCount: 5
    argTypes:
    - "jdk.internal.org.objectweb.asm.ClassWriter"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.org.objectweb.asm.ByteVector].<init>(int)"
    - "[jdk.internal.org.objectweb.asm.ClassWriter].newClass(java.lang.String)"
    - "[jdk.internal.org.objectweb.asm.ByteVector].putShort(int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.org.objectweb.asm.Attribute$NestHost:344,1"
      Dst: "[jdk.internal.org.objectweb.asm.ByteVector].<init>(int)"
    - Src: "jdk.internal.org.objectweb.asm.Attribute$NestHost:345,1"
      Dst: "[jdk.internal.org.objectweb.asm.ClassWriter].newClass(java.lang.String)"
    - Src: "jdk.internal.org.objectweb.asm.Attribute$NestHost:345,1"
      Dst: "[jdk.internal.org.objectweb.asm.ByteVector].putShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$1].<init>(io.netty.channel.CombinedChannelDuplexHandler,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$1"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.CombinedChannelDuplexHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelHandler)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$1:137,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$1"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 164
    functionDepth: 1
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].access$000(io.netty.channel.CombinedChannelDuplexHandler)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].access$100(io.netty.channel.CombinedChannelDuplexHandler)"
    - "[io.netty.handler.flush.FlushConsolidationHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerAdapter].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.proxy.ProxyHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.DatagramPacketEncoder].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.logging.LoggingHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.pcap.PcapWriteHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].access$200()"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.ThrowableUtil].stackTraceToString(java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 55
    ICount: 28
    EdgeCount: 46
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler$1:141"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler$1:160"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler$1:147"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler$1:145"
        BranchSideFuncs:
        - "access$000(io.netty.channel.CombinedChannelDuplexHandler)"
        - "access$200()"
        - "warn(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isDebugEnabled()"
        - "access$100(io.netty.channel.CombinedChannelDuplexHandler)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isWarnEnabled()"
        - "exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "stackTraceToString(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler$1:144"
        BranchSideFuncs:
        - "access$000(io.netty.channel.CombinedChannelDuplexHandler)"
        - "access$200()"
        - "warn(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isDebugEnabled()"
        - "access$100(io.netty.channel.CombinedChannelDuplexHandler)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isWarnEnabled()"
        - "exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "stackTraceToString(java.lang.Throwable)"
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler$1:153"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler$1:145"
        BranchSideFuncs:
        - "access$000(io.netty.channel.CombinedChannelDuplexHandler)"
        - "access$200()"
        - "warn(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isDebugEnabled()"
        - "access$100(io.netty.channel.CombinedChannelDuplexHandler)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isWarnEnabled()"
        - "exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "stackTraceToString(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler$1:144"
        BranchSideFuncs:
        - "access$000(io.netty.channel.CombinedChannelDuplexHandler)"
        - "access$200()"
        - "warn(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isDebugEnabled()"
        - "access$100(io.netty.channel.CombinedChannelDuplexHandler)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isWarnEnabled()"
        - "exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "stackTraceToString(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$1:141,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].access$000(io.netty.channel.CombinedChannelDuplexHandler)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$1:145,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].access$100(io.netty.channel.CombinedChannelDuplexHandler)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$1:145,1"
      Dst: "[io.netty.channel.ChannelHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$1:147,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].access$200()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$1:147,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$1:152,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].stackTraceToString(java.lang.Throwable)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$1:148,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$1:153,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$1:154,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$1:161,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].access$000(io.netty.channel.CombinedChannelDuplexHandler)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    argCount: 1
    argTypes:
    - "io.netty.channel.CombinedChannelDuplexHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].access$100(io.netty.channel.CombinedChannelDuplexHandler)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "io.netty.channel.ChannelOutboundHandler"
    argCount: 1
    argTypes:
    - "io.netty.channel.CombinedChannelDuplexHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].access$200()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.BootstrapConfig].remoteAddress()"
    functionSourceFile: "io.netty.bootstrap.BootstrapConfig"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 1
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.Bootstrap].remoteAddress()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.BootstrapConfig:36,1"
      Dst: "[io.netty.bootstrap.Bootstrap].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.BootstrapConfig].resolver()"
    functionSourceFile: "io.netty.bootstrap.BootstrapConfig"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "io.netty.resolver.AddressResolverGroup"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.Bootstrap].resolver()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.BootstrapConfig:43,1"
      Dst: "[io.netty.bootstrap.Bootstrap].resolver()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.BootstrapConfig].toString()"
    functionSourceFile: "io.netty.bootstrap.BootstrapConfig"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 57
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].toString()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.bootstrap.BootstrapConfig].resolver()"
    - "[io.netty.bootstrap.BootstrapConfig].remoteAddress()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 17
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.bootstrap.BootstrapConfig:52"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.BootstrapConfig:56"
        BranchSideFuncs:
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
      - BranchSide: "io.netty.bootstrap.BootstrapConfig:55"
        BranchSideFuncs:
        - "append(char)"
        - "toString()"
    Callsites:
    - Src: "io.netty.bootstrap.BootstrapConfig:48,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrapConfig].toString()"
    - Src: "io.netty.bootstrap.BootstrapConfig:48,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.bootstrap.BootstrapConfig:49,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.bootstrap.BootstrapConfig:49,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "io.netty.bootstrap.BootstrapConfig:50,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.bootstrap.BootstrapConfig:50,1"
      Dst: "[io.netty.bootstrap.BootstrapConfig].resolver()"
    - Src: "io.netty.bootstrap.BootstrapConfig:50,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.bootstrap.BootstrapConfig:51,1"
      Dst: "[io.netty.bootstrap.BootstrapConfig].remoteAddress()"
    - Src: "io.netty.bootstrap.BootstrapConfig:56,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.bootstrap.BootstrapConfig:56,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultEventLoopGroup].<init>()"
    functionSourceFile: "io.netty.channel.DefaultEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultEventLoopGroup].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultEventLoopGroup:30,1"
      Dst: "[io.netty.channel.DefaultEventLoopGroup].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultEventLoopGroup].<init>(int)"
    functionSourceFile: "io.netty.channel.DefaultEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultEventLoopGroup:39,1"
      Dst: "[io.netty.channel.DefaultEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultEventLoopGroup].<init>(java.util.concurrent.ThreadFactory)"
    functionSourceFile: "io.netty.channel.DefaultEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.concurrent.ThreadFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultEventLoopGroup:48,1"
      Dst: "[io.netty.channel.DefaultEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    functionSourceFile: "io.netty.channel.DefaultEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.concurrent.ThreadFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.lang.Object[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultEventLoopGroup:58,1"
      Dst: "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultEventLoopGroup].<init>(int,java.util.concurrent.Executor)"
    functionSourceFile: "io.netty.channel.DefaultEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.concurrent.Executor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,java.lang.Object[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultEventLoopGroup:68,1"
      Dst: "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultEventLoopGroup].newChild(java.util.concurrent.Executor,java.lang.Object[])"
    functionSourceFile: "io.netty.channel.DefaultEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.EventLoop"
    argCount: 2
    argTypes:
    - "java.util.concurrent.Executor"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultEventLoopGroup:73,1"
      Dst: "[io.netty.channel.DefaultEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor)"
    functionSourceFile: "io.netty.channel.DefaultEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.EventLoopGroup"
    - "java.util.concurrent.Executor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.SingleThreadEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultEventLoop:46,1"
      Dst: "[io.netty.channel.SingleThreadEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.DefaultUnmarshallerProvider].<init>(org.jboss.marshalling.MarshallerFactory,org.jboss.marshalling.MarshallingConfiguration)"
    functionSourceFile: "io.netty.handler.codec.marshalling.DefaultUnmarshallerProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jboss.marshalling.MarshallerFactory"
    - "org.jboss.marshalling.MarshallingConfiguration"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.DefaultUnmarshallerProvider:40,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.DefaultUnmarshallerProvider].getUnmarshaller(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.marshalling.DefaultUnmarshallerProvider"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "org.jboss.marshalling.Unmarshaller"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.jboss.marshalling.MarshallerFactory].createUnmarshaller(org.jboss.marshalling.MarshallingConfiguration)"
    functionUses: 3
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.DefaultUnmarshallerProvider:47,1"
      Dst: "[org.jboss.marshalling.MarshallerFactory].createUnmarshaller(org.jboss.marshalling.MarshallingConfiguration)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpResponse"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpResponseStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean,boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpResponse:36,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpResponse"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpResponseStatus"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean,boolean)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpResponse:47,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpResponse].getStatus()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.HttpResponseStatus"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpResponse:83,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpResponse"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpResponseStatus"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 36
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpResponse].setStatus(io.netty.handler.codec.http.HttpResponseStatus)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.HttpResponse"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpResponseStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpResponse:93,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpResponse].setProtocolVersion(io.netty.handler.codec.http.HttpVersion)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpResponse"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpMessage].setProtocolVersion(io.netty.handler.codec.http.HttpVersion)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpResponse:99,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpMessage].setProtocolVersion(io.netty.handler.codec.http.HttpVersion)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpResponse].toString()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpResponse"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[io.netty.handler.codec.http.HttpMessageUtil].appendResponse(java.lang.StringBuilder,io.netty.handler.codec.http.HttpResponse)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpResponse:105,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.http.DefaultHttpResponse:105,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].appendResponse(java.lang.StringBuilder,io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.DefaultHttpResponse:105,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMessageUtil].appendResponse(java.lang.StringBuilder,io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMessageUtil"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 41
    functionDepth: 2
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMessageUtil].appendCommon(java.lang.StringBuilder,io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.handler.codec.http.HttpMessageUtil].appendInitialLine(java.lang.StringBuilder,io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.HttpMessageUtil].appendHeaders(java.lang.StringBuilder,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpMessageUtil].removeLastNewLine(java.lang.StringBuilder)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:36,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].appendCommon(java.lang.StringBuilder,io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:37,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].appendInitialLine(java.lang.StringBuilder,io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:38,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:38,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].appendHeaders(java.lang.StringBuilder,io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:39,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].removeLastNewLine(java.lang.StringBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMessageUtil].appendInitialLine(java.lang.StringBuilder,io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMessageUtil"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].protocolVersion()"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    functionUses: 2
    ICount: 10
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:93,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:93,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:94,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:95,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:96,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpResponse].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpResponse"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseStatus].hashCode()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].hashCode()"
    functionUses: 6
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpResponse:111,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].hashCode()"
    - Src: "io.netty.handler.codec.http.DefaultHttpResponse:112,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpMessage].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 608
    functionLinenumberEnd: 610
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    functionUses: 6
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:609,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 578
    functionLinenumberEnd: 580
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 30
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpResponse].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpResponse"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 125
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpMessage].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    functionUses: 10
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultHttpResponse:118"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpResponse:122"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpResponse:121"
        BranchSideFuncs:
        - "status()"
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.DefaultHttpResponse:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpResponse:121"
        BranchSideFuncs:
        - "status()"
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.DefaultHttpResponse:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpResponse:121"
        BranchSideFuncs:
        - "status()"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpResponse:124,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - Src: "io.netty.handler.codec.http.DefaultHttpResponse:124,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.DefaultHttpResponse:124,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpMessage].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 617
    functionLinenumberEnd: 623
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    functionUses: 16
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpResponseStatus:618"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:622"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:621"
        BranchSideFuncs:
        - "code()"
    - Branch String: "io.netty.handler.codec.http.HttpResponseStatus:622"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:621"
        BranchSideFuncs:
        - "code()"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:622,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.FastLzFrameDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.FastLzFrameDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.FastLzFrameDecoder].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:84,1"
      Dst: "[io.netty.handler.codec.compression.FastLzFrameDecoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.FastLzFrameDecoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.FastLzFrameDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.zip.Adler32].<init>()"
    - "[io.netty.handler.codec.compression.FastLzFrameDecoder].<init>(java.util.zip.Checksum)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:98"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:98"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:98,1"
      Dst: "[java.util.zip.Adler32].<init>()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:98,1"
      Dst: "[io.netty.handler.codec.compression.FastLzFrameDecoder].<init>(java.util.zip.Checksum)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.FastLzFrameDecoder].<init>(java.util.zip.Checksum)"
    functionSourceFile: "io.netty.handler.codec.compression.FastLzFrameDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.zip.Checksum"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum].wrapChecksum(java.util.zip.Checksum)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:109"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:108"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:108,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:109,1"
      Dst: "[io.netty.handler.codec.compression.ByteBufChecksum].wrapChecksum(java.util.zip.Checksum)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.FastLzFrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.compression.FastLzFrameDecoder"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 208
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedMedium()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedMedium()"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:java.lang.Enum].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readInt()"
    - "[io.netty.buffer.EmptyByteBuf].readInt()"
    - "[io.netty.buffer.AbstractByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readInt()"
    - "[io.netty.buffer.WrappedByteBuf].readInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readInt()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.handler.codec.compression.FastLz].decompress(io.netty.buffer.ByteBuf,int,int,io.netty.buffer.ByteBuf,int,int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedSlice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].retainedSlice(int,int)"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].reset()"
    - "[io.netty.handler.codec.compression.Crc32c].reset()"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].reset()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].update(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.compression.ByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].getValue()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].getValue()"
    - "[io.netty.handler.codec.compression.Crc32c].getValue()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[java.lang.IllegalStateException].<init>()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readInt()"
    - "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    - "[java.util.zip.Checksum].reset()"
    - "[java.util.zip.Checksum].getValue()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 1
    ICount: 144
    EdgeCount: 209
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:117"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:121"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:120"
        BranchSideFuncs:
        - "readUnsignedMedium()"
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:122"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:125"
        BranchSideFuncs:
        - "readByte()"
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:125"
        BranchSideFuncs:
        - "readByte()"
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:127"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:126"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:133"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:132"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:133"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:132"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:136"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:135"
        BranchSideFuncs:
        - "readInt()"
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:136"
        BranchSideFuncs:
        - "readUnsignedShort()"
        - "readInt()"
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:135"
        BranchSideFuncs:
        - "readInt()"
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:136"
        BranchSideFuncs:
        - "readUnsignedShort()"
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:135"
        BranchSideFuncs:
        - "readUnsignedShort()"
        - "readInt()"
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:148"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:147"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:154"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:166"
        BranchSideFuncs:
        - "retainedSlice(int,int)"
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:160"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:165"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:164"
        BranchSideFuncs:
        - "writerIndex()"
        - "writerIndex(int)"
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:182"
        BranchSideFuncs:
        - "getValue()"
        - "readerIndex()"
        - "update(io.netty.buffer.ByteBuf,int,int)"
        - "reset()"
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:181"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:182"
        BranchSideFuncs:
        - "getValue()"
        - "readerIndex()"
        - "update(io.netty.buffer.ByteBuf,int,int)"
        - "reset()"
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:181"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:182"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:181"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:182"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:185"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:184"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:192"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:196"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:195"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLzFrameDecoder:192"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:195"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.compression.FastLzFrameDecoder:194"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:115,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:117,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:121,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedMedium()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:123,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:126,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:136,1"
      Dst: "[io.netty.buffer.ByteBuf].readInt()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:137,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:148,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:156,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:156,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:157,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:158,1"
      Dst: "[io.netty.handler.codec.compression.FastLz].decompress(io.netty.buffer.ByteBuf,int,int,io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:163,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:161,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:165,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:167,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:172,1"
      Dst: "[java.util.zip.Checksum].reset()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:173,1"
      Dst: "[io.netty.handler.codec.compression.ByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:174,1"
      Dst: "[java.util.zip.Checksum].getValue()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:183,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:185,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:188,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder:201,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 52
    CyclomaticComplexity: 17
  - functionName: "[io.netty.handler.codec.compression.FastLz].decompress(io.netty.buffer.ByteBuf,int,int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.FastLz"
    linkageType: ""
    functionLinenumber: 411
    functionLinenumberEnd: 543
    functionDepth: 3
    returnType: "int"
    argCount: 6
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setByte(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.ByteBuf].setByte(int,int)"
    functionUses: 1
    ICount: 225
    EdgeCount: 468
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.FastLz:413"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:422"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.FastLz:421"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:413"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:422"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.FastLz:421"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:435"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:514"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:513"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:441"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:452"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:451"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:442"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:446"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:449"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:446"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:452"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:455"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:462"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:471"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:470"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:462"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:471"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:470"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:471"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:478"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:477"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:478"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:482"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:481"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:482"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:485"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:484"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:488"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:495"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:499"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:498"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:508"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:539"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:538"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:516"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:519"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:518"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:519"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:524"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:523"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:526"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:530"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:531"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.FastLz:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:532"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:538"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.FastLz:539"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.FastLz:430"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLz:412,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    - Src: "io.netty.handler.codec.compression.FastLz:415,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.compression.FastLz:414,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.compression.FastLz:414,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.FastLz:444,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    - Src: "io.netty.handler.codec.compression.FastLz:492,1"
      Dst: "[io.netty.buffer.ByteBuf].setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 43
    CyclomaticComplexity: 17
  - functionName: "[io.netty.handler.codec.base64.Base64Dialect].values()"
    functionSourceFile: "io.netty.handler.codec.base64.Base64Dialect"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.base64.Base64Dialect[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64Dialect:29,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64Dialect].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64Dialect"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.base64.Base64Dialect"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64Dialect:29,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64Dialect].<init>(java.lang.String,int,byte[],byte[],boolean)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64Dialect"
    linkageType: ""
    functionLinenumber: 201
    functionLinenumberEnd: 207
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "int"
    - "byte[]"
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64Dialect:202,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainMappingBuilder].<init>(java.lang.Object)"
    functionSourceFile: "io.netty.util.DomainMappingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.DomainNameMappingBuilder].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainMappingBuilder:36,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.DomainMappingBuilder:37,1"
      Dst: "[io.netty.util.DomainNameMappingBuilder].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainMappingBuilder].<init>(int,java.lang.Object)"
    functionSourceFile: "io.netty.util.DomainMappingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.DomainNameMappingBuilder].<init>(int,java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainMappingBuilder:47,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.DomainMappingBuilder:48,1"
      Dst: "[io.netty.util.DomainNameMappingBuilder].<init>(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainMappingBuilder].add(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.DomainMappingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.util.DomainMappingBuilder"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DomainNameMappingBuilder].add(java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainMappingBuilder:64,1"
      Dst: "[io.netty.util.DomainNameMappingBuilder].add(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainNameMappingBuilder].add(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.DomainNameMappingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.DomainNameMappingBuilder"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainNameMappingBuilder:73,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.DomainNameMappingBuilder:73,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainMappingBuilder].build()"
    functionSourceFile: "io.netty.util.DomainMappingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.util.DomainNameMapping"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DomainNameMappingBuilder].build()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainMappingBuilder:75,1"
      Dst: "[io.netty.util.DomainNameMappingBuilder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainNameMappingBuilder].build()"
    functionSourceFile: "io.netty.util.DomainNameMappingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.util.DomainNameMapping"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].<init>(java.lang.Object,java.util.Map,io.netty.util.DomainNameMappingBuilder$1)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainNameMappingBuilder:84,1"
      Dst: "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].<init>(java.lang.Object,java.util.Map,io.netty.util.DomainNameMappingBuilder$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].<init>(java.lang.Object,java.util.Map,io.netty.util.DomainNameMappingBuilder$1)"
    functionSourceFile: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.util.Map"
    - "io.netty.util.DomainNameMappingBuilder$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].<init>(java.lang.Object,java.util.Map)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:93,1"
      Dst: "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].<init>(java.lang.Object,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].<init>(java.lang.Object,java.util.Map)"
    functionSourceFile: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DomainNameMapping].<init>(java.util.Map,java.lang.Object)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].size()"
    - "[java.util.Map].size()"
    - "[java.util.LinkedHashMap].<init>(int)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[io.netty.util.DomainNameMapping].normalizeHostname(java.lang.String)"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:115"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:124"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:106,1"
      Dst: "[io.netty.util.DomainNameMapping].<init>(java.util.Map,java.lang.Object)"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:108,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:109,1"
      Dst: "[java.util.Set].size()"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:113,1"
      Dst: "[java.util.Map].size()"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:113,1"
      Dst: "[java.util.LinkedHashMap].<init>(int)"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:115,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:115,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:115,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:116,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:116,1"
      Dst: "[io.netty.util.DomainNameMapping].normalizeHostname(java.lang.String)"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:117,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:120,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:124,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.DomainNameMapping].<init>(java.util.Map,java.lang.Object)"
    functionSourceFile: "io.netty.util.DomainNameMapping"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.DomainNameMapping:73"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainNameMapping:70"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DomainNameMapping:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.DomainNameMapping:70,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.DomainNameMapping:71,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.DomainNameMapping:73,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.DomainNameMapping].normalizeHostname(java.lang.String)"
    functionSourceFile: "io.netty.util.DomainNameMapping"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 114
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DomainNameMapping].needsNormalization(java.lang.String)"
    - "[java.net.IDN].toASCII(java.lang.String,int)"
    - "[java.lang.String].toLowerCase(java.util.Locale)"
    functionUses: 3
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.DomainNameMapping:110"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainNameMapping:113"
        BranchSideFuncs:
        - "toASCII(java.lang.String,int)"
      - BranchSide: "io.netty.util.DomainNameMapping:112"
        BranchSideFuncs:
        - "toLowerCase(java.util.Locale)"
    Callsites:
    - Src: "io.netty.util.DomainNameMapping:110,1"
      Dst: "[io.netty.util.DomainNameMapping].needsNormalization(java.lang.String)"
    - Src: "io.netty.util.DomainNameMapping:111,1"
      Dst: "[java.net.IDN].toASCII(java.lang.String,int)"
    - Src: "io.netty.util.DomainNameMapping:113,1"
      Dst: "[java.lang.String].toLowerCase(java.util.Locale)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.DomainNameMapping].needsNormalization(java.lang.String)"
    functionSourceFile: "io.netty.util.DomainNameMapping"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.DomainNameMapping:118"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainNameMapping:124"
        BranchSideFuncs:
        - "charAt(int)"
      - BranchSide: "io.netty.util.DomainNameMapping:123"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DomainNameMapping:120"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainNameMapping:117"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DomainNameMapping:116"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "io.netty.util.DomainNameMapping:117,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.util.DomainNameMapping:119,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder:270,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder].addTopicFilter(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder:274"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder:277"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder:276"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder:275,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder:277,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder].messageId(int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder].properties(io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder].build()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttUnsubscribeMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].<init>(int,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].<init>(java.util.List)"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubscribePayload)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder:292,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder:294,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].<init>(int,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder:296,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].<init>(java.util.List)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder:297,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubscribePayload)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttFixedHeader"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 46
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttMessageType"
    - "boolean"
    - "io.netty.handler.codec.mqtt.MqttQoS"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 6
    ICount: 17
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttFixedHeader:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttFixedHeader:40,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].<init>(java.util.List)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload:31,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload:32,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessage"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object,io.netty.handler.codec.DecoderResult)"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessage:52,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object,io.netty.handler.codec.DecoderResult)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object,io.netty.handler.codec.DecoderResult)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessage"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "java.lang.Object"
    - "java.lang.Object"
    - "io.netty.handler.codec.DecoderResult"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessage:59,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].<init>(org.apache.log4j.Logger)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 70
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.apache.log4j.Logger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.AbstractInternalLogger].<init>(java.lang.String)"
    - "[io.netty.util.internal.logging.Log4JLogger].isTraceCapable()"
    - "[org.apache.log4j.Logger].getName()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:66,1"
      Dst: "[org.apache.log4j.Logger].getName()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:66,1"
      Dst: "[io.netty.util.internal.logging.AbstractInternalLogger].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.logging.Log4JLogger:68,1"
      Dst: "[io.netty.util.internal.logging.Log4JLogger].isTraceCapable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].isTraceCapable()"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.log4j.Logger].isTraceEnabled()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:73,1"
      Dst: "[org.apache.log4j.Logger].isTraceEnabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].isTraceEnabled()"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.log4j.Logger].isTraceEnabled()"
    - "[org.apache.log4j.Logger].isDebugEnabled()"
    functionUses: 15
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:87"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:88,1"
      Dst: "[org.apache.log4j.Logger].isTraceEnabled()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:90,1"
      Dst: "[org.apache.log4j.Logger].isDebugEnabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].trace(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:102"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:102,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].trace(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 127
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4JLogger].isTraceEnabled()"
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 4
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:121"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:126"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:125"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:123"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:124"
        BranchSideFuncs:
        - "getThrowable()"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:123"
        BranchSideFuncs:
        - "getThrowable()"
        - "getMessage()"
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:121,1"
      Dst: "[io.netty.util.internal.logging.Log4JLogger].isTraceEnabled()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:122,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.Log4JLogger:124,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:124,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:123,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.MessageFormatter"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionDepth: 2
    returnType: "io.netty.util.internal.logging.FormattingTuple"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    functionUses: 15
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.MessageFormatter:133,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.logging.MessageFormatter"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 220
    functionDepth: 1
    returnType: "io.netty.util.internal.logging.FormattingTuple"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.FormattingTuple].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.String].indexOf(java.lang.String)"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    - "[io.netty.util.internal.logging.MessageFormatter].deeplyAppendParameter(java.lang.StringBuilder,java.lang.Object,java.util.Set)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].indexOf(java.lang.String,int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 17
    ICount: 82
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:172"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:173"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:172"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:176"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:175"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:178"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:176"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:175"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:180"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:184"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:183"
        BranchSideFuncs:
        - "indexOf(java.lang.String)"
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:185"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:189"
        BranchSideFuncs:
        - "<init>(int)"
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:194"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:194"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:195"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:198"
        BranchSideFuncs:
        - "charAt(int)"
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:201"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:198"
        BranchSideFuncs:
        - "charAt(int)"
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:201"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:198"
        BranchSideFuncs:
        - "charAt(int)"
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:205"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:212"
        BranchSideFuncs:
        - "deeplyAppendParameter(java.lang.StringBuilder,java.lang.Object,java.util.Set)"
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:211"
        BranchSideFuncs:
        - "append(java.lang.String)"
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:208"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:214"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:213"
        BranchSideFuncs:
        - "indexOf(java.lang.String,int)"
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:215"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:193"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:219"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:217"
        BranchSideFuncs:
        - "append(java.lang.CharSequence,int,int)"
        - "toString()"
        - "length()"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.util.internal.logging.MessageFormatter:173,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:184,1"
      Dst: "[java.lang.String].indexOf(java.lang.String)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:190,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.util.internal.logging.MessageFormatter:190,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:194,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:197,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:206,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].deeplyAppendParameter(java.lang.StringBuilder,java.lang.Object,java.util.Set)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:212,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:214,1"
      Dst: "[java.lang.String].indexOf(java.lang.String,int)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:219,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 31
    CyclomaticComplexity: 12
  - functionName: "[io.netty.util.internal.logging.FormattingTuple].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.logging.FormattingTuple"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.FormattingTuple:50,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    functionSourceFile: "io.netty.util.internal.logging.FormattingTuple"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 45
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    functionSourceFile: "io.netty.util.internal.logging.FormattingTuple"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 45
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 152
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4JLogger].isTraceEnabled()"
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 6
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:146"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:151"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:150"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:148"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:149"
        BranchSideFuncs:
        - "getThrowable()"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:148"
        BranchSideFuncs:
        - "getThrowable()"
        - "getMessage()"
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:146,1"
      Dst: "[io.netty.util.internal.logging.Log4JLogger].isTraceEnabled()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:147,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.Log4JLogger:149,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:149,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:148,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.MessageFormatter"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionDepth: 2
    returnType: "io.netty.util.internal.logging.FormattingTuple"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    functionUses: 15
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.MessageFormatter:157,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].trace(java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 175
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4JLogger].isTraceEnabled()"
    - "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 1
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:169"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:174"
        BranchSideFuncs:
        - "arrayFormat(java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:171"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:172"
        BranchSideFuncs:
        - "getThrowable()"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:171"
        BranchSideFuncs:
        - "getThrowable()"
        - "getMessage()"
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:169,1"
      Dst: "[io.netty.util.internal.logging.Log4JLogger].isTraceEnabled()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:170,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.util.internal.logging.Log4JLogger:172,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:172,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:171,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].trace(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 2
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:186"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:186"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:185"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:186,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.log4j.Logger].isDebugEnabled()"
    functionUses: 80
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:196,1"
      Dst: "[org.apache.log4j.Logger].isDebugEnabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 209
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 66
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:207,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 231
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.log4j.Logger].isDebugEnabled()"
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 99
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:226"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:230"
        BranchSideFuncs:
        - "getThrowable()"
        - "getMessage()"
        - "format(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:229"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:226,1"
      Dst: "[org.apache.log4j.Logger].isDebugEnabled()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:227,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.Log4JLogger:228,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:228,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:228,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 249
    functionLinenumberEnd: 255
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.log4j.Logger].isDebugEnabled()"
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 56
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:250"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:254"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object,java.lang.Object)"
        - "getThrowable()"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:253"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:250,1"
      Dst: "[org.apache.log4j.Logger].isDebugEnabled()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:251,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.Log4JLogger:252,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:252,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:252,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 270
    functionLinenumberEnd: 276
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.log4j.Logger].isDebugEnabled()"
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 21
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:271"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:275"
        BranchSideFuncs:
        - "getThrowable()"
        - "arrayFormat(java.lang.String,java.lang.Object[])"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:271,1"
      Dst: "[org.apache.log4j.Logger].isDebugEnabled()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:272,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.util.internal.logging.Log4JLogger:273,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:273,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:273,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 289
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 32
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:287,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].isInfoEnabled()"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 296
    functionLinenumberEnd: 298
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.log4j.Logger].isInfoEnabled()"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:297,1"
      Dst: "[org.apache.log4j.Logger].isInfoEnabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].info(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 307
    functionLinenumberEnd: 310
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 5
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:308,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].info(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 325
    functionLinenumberEnd: 331
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.log4j.Logger].isInfoEnabled()"
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:326"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:330"
        BranchSideFuncs:
        - "getThrowable()"
        - "getMessage()"
        - "format(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:329"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:326,1"
      Dst: "[org.apache.log4j.Logger].isInfoEnabled()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:327,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.Log4JLogger:328,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:328,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:328,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 349
    functionLinenumberEnd: 355
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.log4j.Logger].isInfoEnabled()"
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 13
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:350"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:354"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object,java.lang.Object)"
        - "getThrowable()"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:353"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:350,1"
      Dst: "[org.apache.log4j.Logger].isInfoEnabled()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:351,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.Log4JLogger:352,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:352,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:352,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].info(java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 371
    functionLinenumberEnd: 377
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.log4j.Logger].isInfoEnabled()"
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 4
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:372"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:376"
        BranchSideFuncs:
        - "getThrowable()"
        - "arrayFormat(java.lang.String,java.lang.Object[])"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:375"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:372,1"
      Dst: "[org.apache.log4j.Logger].isInfoEnabled()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:373,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.util.internal.logging.Log4JLogger:374,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:374,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:374,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].info(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 388
    functionLinenumberEnd: 391
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:389,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].isWarnEnabled()"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 398
    functionLinenumberEnd: 400
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.log4j.Logger].isEnabledFor(org.apache.log4j.Priority)"
    functionUses: 37
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:399,1"
      Dst: "[org.apache.log4j.Logger].isEnabledFor(org.apache.log4j.Priority)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 409
    functionLinenumberEnd: 412
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 22
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:410,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 428
    functionLinenumberEnd: 434
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.log4j.Logger].isEnabledFor(org.apache.log4j.Priority)"
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 17
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:429"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:433"
        BranchSideFuncs:
        - "getThrowable()"
        - "getMessage()"
        - "format(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:432"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:429,1"
      Dst: "[org.apache.log4j.Logger].isEnabledFor(org.apache.log4j.Priority)"
    - Src: "io.netty.util.internal.logging.Log4JLogger:430,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.Log4JLogger:431,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:431,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:431,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 452
    functionLinenumberEnd: 458
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.log4j.Logger].isEnabledFor(org.apache.log4j.Priority)"
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 26
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:453"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:457"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object,java.lang.Object)"
        - "getThrowable()"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:456"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:453,1"
      Dst: "[org.apache.log4j.Logger].isEnabledFor(org.apache.log4j.Priority)"
    - Src: "io.netty.util.internal.logging.Log4JLogger:454,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.Log4JLogger:455,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:455,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:455,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 474
    functionLinenumberEnd: 480
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.log4j.Logger].isEnabledFor(org.apache.log4j.Priority)"
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 13
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:475"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:479"
        BranchSideFuncs:
        - "getThrowable()"
        - "arrayFormat(java.lang.String,java.lang.Object[])"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:478"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:475,1"
      Dst: "[org.apache.log4j.Logger].isEnabledFor(org.apache.log4j.Priority)"
    - Src: "io.netty.util.internal.logging.Log4JLogger:476,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.util.internal.logging.Log4JLogger:477,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:477,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:477,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 491
    functionLinenumberEnd: 494
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 74
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:492,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].isErrorEnabled()"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 501
    functionLinenumberEnd: 503
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.log4j.Logger].isEnabledFor(org.apache.log4j.Priority)"
    functionUses: 5
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:502,1"
      Dst: "[org.apache.log4j.Logger].isEnabledFor(org.apache.log4j.Priority)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 512
    functionLinenumberEnd: 515
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:513,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 531
    functionLinenumberEnd: 537
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.log4j.Logger].isEnabledFor(org.apache.log4j.Priority)"
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 2
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:532"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:536"
        BranchSideFuncs:
        - "getThrowable()"
        - "getMessage()"
        - "format(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:535"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:532,1"
      Dst: "[org.apache.log4j.Logger].isEnabledFor(org.apache.log4j.Priority)"
    - Src: "io.netty.util.internal.logging.Log4JLogger:533,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.Log4JLogger:534,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:534,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:534,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 555
    functionLinenumberEnd: 561
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.log4j.Logger].isEnabledFor(org.apache.log4j.Priority)"
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 10
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:556"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:560"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object,java.lang.Object)"
        - "getThrowable()"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:559"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:556,1"
      Dst: "[org.apache.log4j.Logger].isEnabledFor(org.apache.log4j.Priority)"
    - Src: "io.netty.util.internal.logging.Log4JLogger:557,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.Log4JLogger:558,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:558,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:558,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 577
    functionLinenumberEnd: 583
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.log4j.Logger].isEnabledFor(org.apache.log4j.Priority)"
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 4
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4JLogger:578"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:582"
        BranchSideFuncs:
        - "getThrowable()"
        - "arrayFormat(java.lang.String,java.lang.Object[])"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.Log4JLogger:581"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:578,1"
      Dst: "[org.apache.log4j.Logger].isEnabledFor(org.apache.log4j.Priority)"
    - Src: "io.netty.util.internal.logging.Log4JLogger:579,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.util.internal.logging.Log4JLogger:580,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:580,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.Log4JLogger:580,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLogger"
    linkageType: ""
    functionLinenumber: 594
    functionLinenumberEnd: 597
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    functionUses: 16
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLogger:595,1"
      Dst: "[org.apache.log4j.Logger].log(java.lang.String,org.apache.log4j.Priority,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$1].<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader,int,io.netty.channel.ChannelHandlerContext,int,short,boolean,int,io.netty.handler.codec.http2.Http2Flags)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$1"
    linkageType: ""
    functionLinenumber: 437
    functionLinenumberEnd: 439
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    - "int"
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "short"
    - "boolean"
    - "int"
    - "io.netty.handler.codec.http2.Http2Flags"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader,io.netty.handler.codec.http2.DefaultHttp2FrameReader$1)"
    functionUses: 1
    ICount: 19
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$1:438,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader,io.netty.handler.codec.http2.DefaultHttp2FrameReader$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$1].getStreamId()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$1"
    linkageType: ""
    functionLinenumber: 440
    functionLinenumberEnd: 442
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$1].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$1"
    linkageType: ""
    functionLinenumber: 446
    functionLinenumberEnd: 454
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].headersBlockBuilder()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].addFragment(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBufAllocator,boolean)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].headers()"
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2Flags].endOfStream()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    functionUses: 4
    ICount: 21
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$1:449"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$1:453"
        BranchSideFuncs:
        - "onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$1:452"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$1:447,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].headersBlockBuilder()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$1:448,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$1:448,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].addFragment(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBufAllocator,boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$1:450,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].headers()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$1:451,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].endOfStream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$1:450,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].addFragment(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBufAllocator,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder"
    linkageType: ""
    functionLinenumber: 697
    functionLinenumberEnd: 726
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "io.netty.buffer.ByteBufAllocator"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].access$100(io.netty.handler.codec.http2.DefaultHttp2FrameReader)"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].configuration()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].maxHeaderListSizeGoAway()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].headerSizeExceeded()"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isWritable(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].isWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].isWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].isWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].isWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].isWritable(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].isWritable(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.codec.http2.Http2HeadersDecoder].configuration()"
    - "[io.netty.handler.codec.http2.Http2HeadersDecoder$Configuration].maxHeaderListSizeGoAway()"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].isWritable(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 3
    ICount: 54
    EdgeCount: 94
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:698"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:711"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:710"
        BranchSideFuncs:
        - "maxHeaderListSizeGoAway()"
        - "configuration()"
        - "access$100(io.netty.handler.codec.http2.DefaultHttp2FrameReader)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:699"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:702"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:701"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:702"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:706"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:712"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:715"
        BranchSideFuncs:
        - "headerSizeExceeded()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:714"
        BranchSideFuncs:
        - "isWritable(int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:715"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:719"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf,int)"
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "buffer(int)"
        - "readableBytes()"
        - "release()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:699,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].access$100(io.netty.handler.codec.http2.DefaultHttp2FrameReader)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:699,1"
      Dst: "[io.netty.handler.codec.http2.Http2HeadersDecoder].configuration()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:699,1"
      Dst: "[io.netty.handler.codec.http2.Http2HeadersDecoder$Configuration].maxHeaderListSizeGoAway()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:700,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].headerSizeExceeded()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:705,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:707,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:707,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:712,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:715,1"
      Dst: "[io.netty.buffer.ByteBuf].isWritable(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:721,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:722,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].access$100(io.netty.handler.codec.http2.DefaultHttp2FrameReader)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2HeadersDecoder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].headerSizeExceeded()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder"
    linkageType: ""
    functionLinenumber: 682
    functionLinenumberEnd: 686
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].close()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].access$100(io.netty.handler.codec.http2.DefaultHttp2FrameReader)"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].configuration()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil].headerListSizeExceeded(long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].maxHeaderListSizeGoAway()"
    - "[io.netty.handler.codec.http2.Http2HeadersDecoder].configuration()"
    - "[io.netty.handler.codec.http2.Http2HeadersDecoder$Configuration].maxHeaderListSizeGoAway()"
    functionUses: 2
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:683,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].close()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:684,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].access$100(io.netty.handler.codec.http2.DefaultHttp2FrameReader)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:684,1"
      Dst: "[io.netty.handler.codec.http2.Http2HeadersDecoder].configuration()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:684,1"
      Dst: "[io.netty.handler.codec.http2.Http2HeadersDecoder$Configuration].maxHeaderListSizeGoAway()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:684,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].headerListSizeExceeded(long)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].close()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder"
    linkageType: ""
    functionLinenumber: 742
    functionLinenumberEnd: 751
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].access$302(io.netty.handler.codec.http2.DefaultHttp2FrameReader,io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation)"
    functionUses: 4
    ICount: 9
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:743"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:749"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:748"
        BranchSideFuncs:
        - "access$302(io.netty.handler.codec.http2.DefaultHttp2FrameReader,io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:744,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:749,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].access$302(io.netty.handler.codec.http2.DefaultHttp2FrameReader,io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].access$302(io.netty.handler.codec.http2.DefaultHttp2FrameReader,io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    - "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil].headerListSizeExceeded(long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil"
    linkageType: ""
    functionLinenumber: 245
    functionLinenumberEnd: 247
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Long].valueOf(long)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:246,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:245,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].headers()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder"
    linkageType: ""
    functionLinenumber: 732
    functionLinenumberEnd: 737
    functionDepth: 2
    returnType: "io.netty.handler.codec.http2.Http2Headers"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].access$100(io.netty.handler.codec.http2.DefaultHttp2FrameReader)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].access$200(io.netty.handler.codec.http2.DefaultHttp2FrameReader)"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].decodeHeaders(int,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].close()"
    - "[io.netty.handler.codec.http2.Http2HeadersDecoder].decodeHeaders(int,io.netty.buffer.ByteBuf)"
    functionUses: 3
    ICount: 12
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:733,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].access$100(io.netty.handler.codec.http2.DefaultHttp2FrameReader)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:733,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].access$200(io.netty.handler.codec.http2.DefaultHttp2FrameReader)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:733,1"
      Dst: "[io.netty.handler.codec.http2.Http2HeadersDecoder].decodeHeaders(int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:735,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].close()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].access$200(io.netty.handler.codec.http2.DefaultHttp2FrameReader)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Flags].endOfStream()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Flags"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Flags].isFlagSet(short)"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Flags:52,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].isFlagSet(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Flags].isFlagSet(short)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Flags"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2Flags:159"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Flags:158"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent].<init>(io.netty.handler.timeout.IdleState,boolean)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.timeout.IdleState"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.IdleStateEvent].<init>(io.netty.handler.timeout.IdleState,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 6
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent:76"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "toString()"
      - BranchSide: "io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent:75"
        BranchSideFuncs:
        - "append(char)"
        - "<init>(io.netty.handler.timeout.IdleState,boolean)"
        - "<init>()"
        - "toString()"
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent:76,1"
      Dst: "[io.netty.handler.timeout.IdleStateEvent].<init>(io.netty.handler.timeout.IdleState,boolean)"
    - Src: "io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent:77,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent:77,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent:77,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent:77,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent:77,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent].toString()"
    functionSourceFile: "io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.DefaultHostsFileEntriesResolver].<init>()"
    functionSourceFile: "io.netty.resolver.DefaultHostsFileEntriesResolver"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.DefaultHostsFileEntriesResolver].<init>(io.netty.resolver.HostsFileEntriesProvider$Parser,long)"
    - "[io.netty.resolver.HostsFileEntriesProvider].parser()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:58,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider].parser()"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:58,1"
      Dst: "[io.netty.resolver.DefaultHostsFileEntriesResolver].<init>(io.netty.resolver.HostsFileEntriesProvider$Parser,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.DefaultHostsFileEntriesResolver].<init>(io.netty.resolver.HostsFileEntriesProvider$Parser,long)"
    functionSourceFile: "io.netty.resolver.DefaultHostsFileEntriesResolver"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.resolver.HostsFileEntriesProvider$Parser"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].<init>(long)"
    - "[java.lang.System].nanoTime()"
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    - "[io.netty.resolver.DefaultHostsFileEntriesResolver].parseEntries(io.netty.resolver.HostsFileEntriesProvider$Parser)"
    - "[io.netty.resolver.HostsFileEntriesProvider].ipv4Entries()"
    - "[io.netty.resolver.HostsFileEntriesProvider].ipv6Entries()"
    functionUses: 1
    ICount: 17
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:62,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:43,1"
      Dst: "[java.lang.System].nanoTime()"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:43,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].<init>(long)"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:64,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:65,1"
      Dst: "[io.netty.resolver.DefaultHostsFileEntriesResolver].parseEntries(io.netty.resolver.HostsFileEntriesProvider$Parser)"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:66,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider].ipv4Entries()"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:67,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider].ipv6Entries()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.DefaultHostsFileEntriesResolver].address(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
    functionSourceFile: "io.netty.resolver.DefaultHostsFileEntriesResolver"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 4
    returnType: "java.net.InetAddress"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.resolver.ResolvedAddressTypes"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.DefaultHostsFileEntriesResolver].addresses(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
    - "[io.netty.resolver.DefaultHostsFileEntriesResolver].firstAddress(java.util.List)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:72,1"
      Dst: "[io.netty.resolver.DefaultHostsFileEntriesResolver].addresses(java.lang.String,io.netty.resolver.ResolvedAddressTypes)"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:72,1"
      Dst: "[io.netty.resolver.DefaultHostsFileEntriesResolver].firstAddress(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.DefaultHostsFileEntriesResolver].allAddresses(java.util.List<InetAddress>,java.util.List<InetAddress>)"
    functionSourceFile: "io.netty.resolver.DefaultHostsFileEntriesResolver"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 133
    functionDepth: 0
    returnType: "java.util.List<InetAddress>"
    argCount: 2
    argTypes:
    - "java.util.List<InetAddress>"
    - "java.util.List<InetAddress>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.util.internal.RecyclableArrayList].addAll(java.util.Collection)"
    - "[io.netty.handler.codec.CodecOutputList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].addAll(java.util.Collection)"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[java.util.List].size()"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 2
    ICount: 14
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.resolver.DefaultHostsFileEntriesResolver:127"
      Branch Sides:
      - BranchSide: "io.netty.resolver.DefaultHostsFileEntriesResolver:127"
        BranchSideFuncs:
        - "<init>(int)"
        - "size()"
      - BranchSide: "io.netty.resolver.DefaultHostsFileEntriesResolver:126"
        BranchSideFuncs:
        - "<init>(int)"
        - "size()"
    - Branch String: "io.netty.resolver.DefaultHostsFileEntriesResolver:129"
      Branch Sides:
      - BranchSide: "io.netty.resolver.DefaultHostsFileEntriesResolver:132"
        BranchSideFuncs:
        - "addAll(java.util.Collection)"
      - BranchSide: "io.netty.resolver.DefaultHostsFileEntriesResolver:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:127,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:127,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:128,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.DefaultHostsFileEntriesResolver].firstAddress(java.util.List<InetAddress>)"
    functionSourceFile: "io.netty.resolver.DefaultHostsFileEntriesResolver"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionDepth: 0
    returnType: "java.net.InetAddress"
    argCount: 1
    argTypes:
    - "java.util.List<InetAddress>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.Vector].isEmpty()"
    - "[jaz.Zer].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.resolver.DefaultHostsFileEntriesResolver:136"
      Branch Sides:
      - BranchSide: "io.netty.resolver.DefaultHostsFileEntriesResolver:135"
        BranchSideFuncs:
        - "isEmpty()"
        - "get(int)"
    - Branch String: "io.netty.resolver.DefaultHostsFileEntriesResolver:136"
      Branch Sides:
      - BranchSide: "io.netty.resolver.DefaultHostsFileEntriesResolver:135"
        BranchSideFuncs:
        - "isEmpty()"
        - "get(int)"
    Callsites:
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:136,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.resolver.DefaultHostsFileEntriesResolver:136,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].createGlobalTrafficCounter(java.util.concurrent.ScheduledExecutorService)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.concurrent.ScheduledExecutorService"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.traffic.TrafficCounter].<init>(io.netty.handler.traffic.AbstractTrafficShapingHandler,java.util.concurrent.ScheduledExecutorService,java.lang.String,long)"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].setTrafficCounter(io.netty.handler.traffic.TrafficCounter)"
    - "[io.netty.handler.traffic.TrafficCounter].start()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:108,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:108,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].<init>(io.netty.handler.traffic.AbstractTrafficShapingHandler,java.util.concurrent.ScheduledExecutorService,java.lang.String,long)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:112,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].setTrafficCounter(io.netty.handler.traffic.TrafficCounter)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:113,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.TrafficCounter].<init>(io.netty.handler.traffic.AbstractTrafficShapingHandler,java.util.concurrent.ScheduledExecutorService,java.lang.String,long)"
    functionSourceFile: "io.netty.handler.traffic.TrafficCounter"
    linkageType: ""
    functionLinenumber: 278
    functionLinenumberEnd: 286
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.traffic.AbstractTrafficShapingHandler"
    - "java.util.concurrent.ScheduledExecutorService"
    - "java.lang.String"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].<init>()"
    - "[java.util.concurrent.atomic.AtomicLong].<init>(long)"
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.traffic.TrafficCounter].init(long)"
    functionUses: 2
    ICount: 36
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.TrafficCounter:279,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.traffic.TrafficCounter:52,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].<init>()"
    - Src: "io.netty.handler.traffic.TrafficCounter:132,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].<init>(long)"
    - Src: "io.netty.handler.traffic.TrafficCounter:280,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.traffic.TrafficCounter:281,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.traffic.TrafficCounter:284,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].init(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.TrafficCounter].init(long)"
    functionSourceFile: "io.netty.handler.traffic.TrafficCounter"
    linkageType: ""
    functionLinenumber: 288
    functionLinenumberEnd: 296
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].currentTimeMillis()"
    - "[io.netty.handler.traffic.TrafficCounter].milliSecondFromNano()"
    - "[io.netty.handler.traffic.TrafficCounter].configure(long)"
    functionUses: 1
    ICount: 14
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.TrafficCounter:289,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    - Src: "io.netty.handler.traffic.TrafficCounter:290,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].milliSecondFromNano()"
    - Src: "io.netty.handler.traffic.TrafficCounter:294,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].configure(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.TrafficCounter].milliSecondFromNano()"
    functionSourceFile: "io.netty.handler.traffic.TrafficCounter"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].nanoTime()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.TrafficCounter:46,1"
      Dst: "[java.lang.System].nanoTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.TrafficCounter].configure(long)"
    functionSourceFile: "io.netty.handler.traffic.TrafficCounter"
    linkageType: ""
    functionLinenumber: 302
    functionLinenumberEnd: 316
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].getAndSet(long)"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter].stop()"
    - "[io.netty.handler.traffic.TrafficCounter].stop()"
    - "[io.netty.handler.traffic.TrafficCounter].milliSecondFromNano()"
    - "[java.util.concurrent.atomic.AtomicLong].set(long)"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter].start()"
    - "[io.netty.handler.traffic.TrafficCounter].start()"
    functionUses: 1
    ICount: 19
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.traffic.TrafficCounter:304"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:315"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:314"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.traffic.TrafficCounter:305"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:311"
        BranchSideFuncs:
        - "milliSecondFromNano()"
        - "set(long)"
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:310"
        BranchSideFuncs:
        - "stop()"
        - "start()"
    Callsites:
    - Src: "io.netty.handler.traffic.TrafficCounter:304,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].getAndSet(long)"
    - Src: "io.netty.handler.traffic.TrafficCounter:306,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].stop()"
    - Src: "io.netty.handler.traffic.TrafficCounter:308,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].milliSecondFromNano()"
    - Src: "io.netty.handler.traffic.TrafficCounter:308,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].set(long)"
    - Src: "io.netty.handler.traffic.TrafficCounter:312,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.traffic.TrafficCounter].stop()"
    functionSourceFile: "io.netty.handler.traffic.TrafficCounter"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 216
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.TrafficCounter].milliSecondFromNano()"
    - "[io.netty.handler.traffic.TrafficCounter].resetAccounting(long)"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].doAccounting(io.netty.handler.traffic.TrafficCounter)"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].doAccounting(io.netty.handler.traffic.TrafficCounter)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.resolver.dns.Cache$1].cancel(boolean)"
    - "[java.util.concurrent.Future].cancel(boolean)"
    functionUses: 3
    ICount: 16
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.traffic.TrafficCounter:204"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:207"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:206"
        BranchSideFuncs:
        - "resetAccounting(long)"
        - "milliSecondFromNano()"
    - Branch String: "io.netty.handler.traffic.TrafficCounter:209"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:212"
        BranchSideFuncs:
        - "doAccounting(io.netty.handler.traffic.TrafficCounter)"
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:211"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.traffic.TrafficCounter:212"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:215"
        BranchSideFuncs:
        - "cancel(boolean)"
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:214"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.traffic.TrafficCounter:208,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].milliSecondFromNano()"
    - Src: "io.netty.handler.traffic.TrafficCounter:208,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].resetAccounting(long)"
    - Src: "io.netty.handler.traffic.TrafficCounter:210,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].doAccounting(io.netty.handler.traffic.TrafficCounter)"
    - Src: "io.netty.handler.traffic.TrafficCounter:213,1"
      Dst: "[java.util.concurrent.Future].cancel(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.traffic.TrafficCounter].resetAccounting(long)"
    functionSourceFile: "io.netty.handler.traffic.TrafficCounter"
    linkageType: ""
    functionLinenumber: 222
    functionLinenumberEnd: 241
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].getAndSet(long)"
    - "[io.netty.handler.traffic.TrafficCounter].checkInterval()"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Math].max(long,long)"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    functionUses: 5
    ICount: 57
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.handler.traffic.TrafficCounter:224"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:227"
        BranchSideFuncs:
        - "isDebugEnabled()"
    - Branch String: "io.netty.handler.traffic.TrafficCounter:228"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:231"
        BranchSideFuncs:
        - "checkInterval()"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "debug(java.lang.String)"
        - "append(long)"
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:230"
        BranchSideFuncs:
        - "max(long,long)"
        - "getAndSet(long)"
    - Branch String: "io.netty.handler.traffic.TrafficCounter:228"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:231"
        BranchSideFuncs:
        - "checkInterval()"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "debug(java.lang.String)"
        - "append(long)"
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:230"
        BranchSideFuncs:
        - "max(long,long)"
        - "getAndSet(long)"
    Callsites:
    - Src: "io.netty.handler.traffic.TrafficCounter:223,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].getAndSet(long)"
    - Src: "io.netty.handler.traffic.TrafficCounter:228,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.handler.traffic.TrafficCounter:228,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].checkInterval()"
    - Src: "io.netty.handler.traffic.TrafficCounter:229,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.traffic.TrafficCounter:229,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.traffic.TrafficCounter:229,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.traffic.TrafficCounter:229,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.traffic.TrafficCounter:229,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - Src: "io.netty.handler.traffic.TrafficCounter:238,1"
      Dst: "[java.lang.Math].max(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.traffic.TrafficCounter].checkInterval()"
    functionSourceFile: "io.netty.handler.traffic.TrafficCounter"
    linkageType: ""
    functionLinenumber: 353
    functionLinenumberEnd: 355
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].get()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.TrafficCounter:354,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.TrafficCounter].start()"
    functionSourceFile: "io.netty.handler.traffic.TrafficCounter"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 199
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.TrafficCounter].milliSecondFromNano()"
    - "[java.util.concurrent.atomic.AtomicLong].set(long)"
    - "[java.util.concurrent.atomic.AtomicLong].get()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].<init>(io.netty.handler.traffic.TrafficCounter,io.netty.handler.traffic.TrafficCounter$1)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutorGroup].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    - "[java.util.concurrent.ScheduledThreadPoolExecutor].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    - "[java.util.concurrent.ScheduledExecutorService].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    functionUses: 2
    ICount: 24
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.traffic.TrafficCounter:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:189"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:188"
        BranchSideFuncs:
        - "milliSecondFromNano()"
        - "set(long)"
        - "get()"
    - Branch String: "io.netty.handler.traffic.TrafficCounter:192"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:198"
        BranchSideFuncs:
        - "scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
        - "<init>(io.netty.handler.traffic.TrafficCounter,io.netty.handler.traffic.TrafficCounter$1)"
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:197"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.traffic.TrafficCounter:192"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:198"
        BranchSideFuncs:
        - "scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
        - "<init>(io.netty.handler.traffic.TrafficCounter,io.netty.handler.traffic.TrafficCounter$1)"
      - BranchSide: "io.netty.handler.traffic.TrafficCounter:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.traffic.TrafficCounter:189,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].milliSecondFromNano()"
    - Src: "io.netty.handler.traffic.TrafficCounter:189,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].set(long)"
    - Src: "io.netty.handler.traffic.TrafficCounter:190,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].get()"
    - Src: "io.netty.handler.traffic.TrafficCounter:194,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].<init>(io.netty.handler.traffic.TrafficCounter,io.netty.handler.traffic.TrafficCounter$1)"
    - Src: "io.netty.handler.traffic.TrafficCounter:196,1"
      Dst: "[java.util.concurrent.ScheduledExecutorService].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].<init>(io.netty.handler.traffic.TrafficCounter,io.netty.handler.traffic.TrafficCounter$1)"
    functionSourceFile: "io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.traffic.TrafficCounter"
    - "io.netty.handler.traffic.TrafficCounter$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].<init>(io.netty.handler.traffic.TrafficCounter)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask:169,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].<init>(io.netty.handler.traffic.TrafficCounter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].<init>(io.netty.handler.traffic.TrafficCounter)"
    functionSourceFile: "io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.traffic.TrafficCounter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask:169,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].userDefinedWritabilityIndex()"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].<init>(java.util.concurrent.ScheduledExecutorService,long,long,long,long)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.util.concurrent.ScheduledExecutorService"
    - "long"
    - "long"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].<init>(long,long,long,long)"
    - "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - "[java.util.concurrent.atomic.AtomicLong].<init>()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler].createGlobalTrafficCounter(java.util.concurrent.ScheduledExecutorService)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:138,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].<init>(long,long,long,long)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:83,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:88,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].<init>()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:139,1"
      Dst: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].createGlobalTrafficCounter(java.util.concurrent.ScheduledExecutorService)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].<init>(java.util.concurrent.ScheduledExecutorService,long,long,long)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.concurrent.ScheduledExecutorService"
    - "long"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].<init>(long,long,long)"
    - "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - "[java.util.concurrent.atomic.AtomicLong].<init>()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler].createGlobalTrafficCounter(java.util.concurrent.ScheduledExecutorService)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:158,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].<init>(long,long,long)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:83,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:88,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].<init>()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:159,1"
      Dst: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].createGlobalTrafficCounter(java.util.concurrent.ScheduledExecutorService)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].<init>(java.util.concurrent.ScheduledExecutorService,long,long)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.concurrent.ScheduledExecutorService"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].<init>(long,long)"
    - "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - "[java.util.concurrent.atomic.AtomicLong].<init>()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler].createGlobalTrafficCounter(java.util.concurrent.ScheduledExecutorService)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:175,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].<init>(long,long)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:83,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:88,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].<init>()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:176,1"
      Dst: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].createGlobalTrafficCounter(java.util.concurrent.ScheduledExecutorService)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].<init>(java.util.concurrent.ScheduledExecutorService,long)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.concurrent.ScheduledExecutorService"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].<init>(long)"
    - "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - "[java.util.concurrent.atomic.AtomicLong].<init>()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler].createGlobalTrafficCounter(java.util.concurrent.ScheduledExecutorService)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:190,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].<init>(long)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:83,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:88,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].<init>()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:191,1"
      Dst: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].createGlobalTrafficCounter(java.util.concurrent.ScheduledExecutorService)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].<init>(io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].<init>()"
    - "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - "[java.util.concurrent.atomic.AtomicLong].<init>()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler].createGlobalTrafficCounter(java.util.concurrent.ScheduledExecutorService)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:201,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].<init>()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:83,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:88,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].<init>()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:202,1"
      Dst: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].createGlobalTrafficCounter(java.util.concurrent.ScheduledExecutorService)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].getMaxGlobalWriteSize()"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].setMaxGlobalWriteSize(long)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].queuesSize()"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].get()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:231,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].release()"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.TrafficCounter].stop()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:238,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].stop()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].getOrSetPerChannel(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: 242
    functionLinenumberEnd: 255
    functionDepth: 2
    returnType: "io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannel].hashCode()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].hashCode()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel].<init>(io.netty.handler.traffic.GlobalTrafficShapingHandler$1)"
    - "[java.util.ArrayDeque].<init>()"
    - "[io.netty.handler.traffic.TrafficCounter].milliSecondFromNano()"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[java.lang.Object].hashCode()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 23
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:246"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:254"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "milliSecondFromNano()"
        - "<init>()"
        - "<init>(io.netty.handler.traffic.GlobalTrafficShapingHandler$1)"
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:253"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:243,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:244,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:244,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:245,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:247,1"
      Dst: "[io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel].<init>(io.netty.handler.traffic.GlobalTrafficShapingHandler$1)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:248,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:250,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].milliSecondFromNano()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:252,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel].<init>(io.netty.handler.traffic.GlobalTrafficShapingHandler$1)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.traffic.GlobalTrafficShapingHandler$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel:96,1"
      Dst: "[io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel].<init>()"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel:96,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: 258
    functionLinenumberEnd: 262
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler].getOrSetPerChannel(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandlerAdapter].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:259,1"
      Dst: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].getOrSetPerChannel(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:260,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: 264
    functionLinenumberEnd: 294
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannel].hashCode()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].hashCode()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.concurrent.ConcurrentHashMap].remove(java.lang.Object)"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    - "[io.netty.channel.local.LocalServerChannel].isActive()"
    - "[io.netty.channel.Channel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    - "[io.netty.bootstrap.FailedChannel].isActive()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].calculateSize(java.lang.Object)"
    - "[io.netty.handler.traffic.TrafficCounter].bytesRealWriteFlowControl(long)"
    - "[java.util.concurrent.atomic.AtomicLong].addAndGet(long)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[java.util.ArrayDeque].clear()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].releaseWriteSuspended(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].releaseReadSuspended(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[java.lang.Object].hashCode()"
    - "[java.util.Map].remove(java.lang.Object)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 61
    EdgeCount: 285
    BranchProfiles:
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:268"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:289"
        BranchSideFuncs:
        - "releaseReadSuspended(io.netty.channel.ChannelHandlerContext)"
        - "handlerRemoved(io.netty.channel.ChannelHandlerContext)"
        - "releaseWriteSuspended(io.netty.channel.ChannelHandlerContext)"
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:271"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:280"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:279"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "addAndGet(long)"
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:272"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:272"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
        - "bytesRealWriteFlowControl(long)"
        - "calculateSize(java.lang.Object)"
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:271"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:281"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:287"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:286"
        BranchSideFuncs:
        - "clear()"
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:282"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:285"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:284"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:265,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:266,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:266,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:267,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:271,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:272,1"
      Dst: "[java.util.ArrayDeque].iterator()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:272,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:272,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:273,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].calculateSize(java.lang.Object)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:274,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].bytesRealWriteFlowControl(long)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:276,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].addAndGet(long)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:277,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:283,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:287,1"
      Dst: "[java.util.ArrayDeque].clear()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:290,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].releaseWriteSuspended(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:291,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].releaseReadSuspended(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:292,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].checkWaitReadTime(io.netty.channel.ChannelHandlerContext,long,long)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: 296
    functionLinenumberEnd: 305
    functionDepth: 0
    returnType: "long"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannel].hashCode()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].hashCode()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[java.lang.Object].hashCode()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 24
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:299"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:304"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:303"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:300"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:304"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:303"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:300"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:304"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:297,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:297,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:297,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:298,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].informReadOperation(io.netty.channel.ChannelHandlerContext,long)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: 308
    functionLinenumberEnd: 315
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannel].hashCode()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].hashCode()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[java.lang.Object].hashCode()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:311"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:314"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:313"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:309,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:309,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:309,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:310,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].submitWrite(io.netty.channel.ChannelHandlerContext,java.lang.Object,long,long,long,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: 333
    functionLinenumberEnd: 377
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "long"
    - "long"
    - "long"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannel].hashCode()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].hashCode()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler].getOrSetPerChannel(io.netty.channel.ChannelHandlerContext)"
    - "[java.util.ArrayDeque].isEmpty()"
    - "[io.netty.handler.traffic.TrafficCounter].bytesRealWriteFlowControl(long)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$ToSend].<init>(long,java.lang.Object,long,io.netty.channel.ChannelPromise,io.netty.handler.traffic.GlobalTrafficShapingHandler$1)"
    - "[java.util.ArrayDeque].addLast(java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicLong].addAndGet(long)"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].checkWriteSuspend(io.netty.channel.ChannelHandlerContext,long,long)"
    - "[java.util.concurrent.atomic.AtomicLong].get()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].setUserDefinedWritability(io.netty.channel.ChannelHandlerContext,boolean)"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].<init>(io.netty.handler.traffic.GlobalTrafficShapingHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel,long)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[java.lang.Object].hashCode()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    functionUses: 2
    ICount: 75
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:337"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:342"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:347"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:353"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
        - "bytesRealWriteFlowControl(long)"
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:352"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:347"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:353"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
        - "bytesRealWriteFlowControl(long)"
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:352"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:353"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:356"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:355"
        BranchSideFuncs:
        - "addLast(java.lang.Object)"
        - "checkWriteSuspend(io.netty.channel.ChannelHandlerContext,long,long)"
        - "get()"
        - "addAndGet(long)"
        - "<init>(long,java.lang.Object,long,io.netty.channel.ChannelPromise,io.netty.handler.traffic.GlobalTrafficShapingHandler$1)"
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:353"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:356"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:355"
        BranchSideFuncs:
        - "addLast(java.lang.Object)"
        - "checkWriteSuspend(io.netty.channel.ChannelHandlerContext,long,long)"
        - "get()"
        - "addAndGet(long)"
        - "<init>(long,java.lang.Object,long,io.netty.channel.ChannelPromise,io.netty.handler.traffic.GlobalTrafficShapingHandler$1)"
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:361"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:364"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:363"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:365"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:368"
        BranchSideFuncs:
        - "setUserDefinedWritability(io.netty.channel.ChannelHandlerContext,boolean)"
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:367"
        BranchSideFuncs:
        - "schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "<init>(io.netty.handler.traffic.GlobalTrafficShapingHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel,long)"
        - "executor()"
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:334,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:335,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:335,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:336,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:340,1"
      Dst: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].getOrSetPerChannel(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:347,1"
      Dst: "[java.util.ArrayDeque].isEmpty()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:348,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].bytesRealWriteFlowControl(long)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:349,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:356,1"
      Dst: "[io.netty.handler.traffic.GlobalTrafficShapingHandler$ToSend].<init>(long,java.lang.Object,long,io.netty.channel.ChannelPromise,io.netty.handler.traffic.GlobalTrafficShapingHandler$1)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:357,1"
      Dst: "[java.util.ArrayDeque].addLast(java.lang.Object)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:359,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].addAndGet(long)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:360,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].checkWriteSuspend(io.netty.channel.ChannelHandlerContext,long,long)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:361,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].get()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:366,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].setUserDefinedWritability(io.netty.channel.ChannelHandlerContext,boolean)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:370,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:370,1"
      Dst: "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].<init>(io.netty.handler.traffic.GlobalTrafficShapingHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel,long)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:370,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler$ToSend].<init>(long,java.lang.Object,long,io.netty.channel.ChannelPromise,io.netty.handler.traffic.GlobalTrafficShapingHandler$1)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler$ToSend"
    linkageType: ""
    functionLinenumber: 315
    functionLinenumberEnd: 317
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long"
    - "java.lang.Object"
    - "long"
    - "io.netty.channel.ChannelPromise"
    - "io.netty.handler.traffic.GlobalTrafficShapingHandler$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$ToSend].<init>(long,java.lang.Object,long,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler$ToSend:316,1"
      Dst: "[io.netty.handler.traffic.GlobalTrafficShapingHandler$ToSend].<init>(long,java.lang.Object,long,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler$ToSend].<init>(long,java.lang.Object,long,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler$ToSend"
    linkageType: ""
    functionLinenumber: 321
    functionLinenumberEnd: 328
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "java.lang.Object"
    - "long"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler$ToSend:322,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].<init>(io.netty.handler.traffic.GlobalTrafficShapingHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel,long)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler$1"
    linkageType: ""
    functionLinenumber: 369
    functionLinenumberEnd: 371
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler$1:370,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].sendAllValid(io.netty.channel.ChannelHandlerContext,io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel,long)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: 379
    functionLinenumberEnd: 401
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].pollFirst()"
    - "[io.netty.handler.traffic.TrafficCounter].bytesRealWriteFlowControl(long)"
    - "[java.util.concurrent.atomic.AtomicLong].addAndGet(long)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[java.util.ArrayDeque].addFirst(java.lang.Object)"
    - "[java.util.ArrayDeque].isEmpty()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].releaseWriteSuspended(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 1
    ICount: 45
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:382"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:395"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:394"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:383"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:391"
        BranchSideFuncs:
        - "bytesRealWriteFlowControl(long)"
        - "addAndGet(long)"
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:390"
        BranchSideFuncs:
        - "addFirst(java.lang.Object)"
    - Branch String: "io.netty.handler.traffic.GlobalTrafficShapingHandler:395"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:398"
        BranchSideFuncs:
        - "releaseWriteSuspended(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.traffic.GlobalTrafficShapingHandler:397"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:381,1"
      Dst: "[java.util.ArrayDeque].pollFirst()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:385,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].bytesRealWriteFlowControl(long)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:387,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].addAndGet(long)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:388,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:391,1"
      Dst: "[java.util.ArrayDeque].addFirst(java.lang.Object)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:395,1"
      Dst: "[java.util.ArrayDeque].isEmpty()"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:396,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].releaseWriteSuspended(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:399,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].access$200(io.netty.handler.traffic.GlobalTrafficShapingHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel,long)"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.traffic.GlobalTrafficShapingHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler].sendAllValid(io.netty.channel.ChannelHandlerContext,io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel,long)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler:79,1"
      Dst: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].sendAllValid(io.netty.channel.ChannelHandlerContext,io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttConnAckVariableHeader)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnAckMessage"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 27
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnAckMessage:25,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnAckMessage].variableHeader()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnAckMessage"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnAckMessage:30,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtilSubstitutions$NetUtilLocalhost6LazyHolder].<init>()"
    functionSourceFile: "io.netty.util.NetUtilSubstitutions$NetUtilLocalhost6LazyHolder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtilSubstitutions$NetUtilLocalhost6LazyHolder:69,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].<init>(io.netty.channel.socket.SocketChannel,java.net.Socket)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 59
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.SocketChannel"
    - "java.net.Socket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.PlatformDependent].canEnableTcpNoDelayByDefault()"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setTcpNoDelay(boolean)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setTcpNoDelay(boolean)"
    functionUses: 2
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:51"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:47,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:48,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:51,1"
      Dst: "[io.netty.util.internal.PlatformDependent].canEnableTcpNoDelayByDefault()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:53,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setTcpNoDelay(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:63,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:62,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 97
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].getReceiveBufferSize()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].getSendBufferSize()"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].isTcpNoDelay()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].isKeepAlive()"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].isReuseAddress()"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].getSoLinger()"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].getTrafficClass()"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].isAllowHalfClosure()"
    - "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 7
    ICount: 44
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:71"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:74"
        BranchSideFuncs:
        - "getReceiveBufferSize()"
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:73"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:74"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:77"
        BranchSideFuncs:
        - "getSendBufferSize()"
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:76"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:77"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:80"
        BranchSideFuncs:
        - "isTcpNoDelay()"
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:79"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:80"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:83"
        BranchSideFuncs:
        - "isKeepAlive()"
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:82"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:83"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:86"
        BranchSideFuncs:
        - "isReuseAddress()"
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:85"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:86"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:89"
        BranchSideFuncs:
        - "getSoLinger()"
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:88"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:89"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:92"
        BranchSideFuncs:
        - "getTrafficClass()"
        - "valueOf(int)"
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:91"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:92"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:96"
        BranchSideFuncs:
        - "isAllowHalfClosure()"
        - "valueOf(boolean)"
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:95"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:72,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].getReceiveBufferSize()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:72,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:75,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].getSendBufferSize()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:78,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].isTcpNoDelay()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:78,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:81,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].isKeepAlive()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:84,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].isReuseAddress()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:87,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].getSoLinger()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:90,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].getTrafficClass()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:93,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].isAllowHalfClosure()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:96,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].getReceiveBufferSize()"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 132
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].getReceiveBufferSize()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:129,1"
      Dst: "[java.net.Socket].getReceiveBufferSize()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:131,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].getSendBufferSize()"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 141
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].getSendBufferSize()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:138,1"
      Dst: "[java.net.Socket].getSendBufferSize()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:140,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].isTcpNoDelay()"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 186
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].getTcpNoDelay()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:183,1"
      Dst: "[java.net.Socket].getTcpNoDelay()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:185,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].isKeepAlive()"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 168
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].getKeepAlive()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:165,1"
      Dst: "[java.net.Socket].getKeepAlive()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:167,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].isReuseAddress()"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 177
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].getReuseAddress()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:174,1"
      Dst: "[java.net.Socket].getReuseAddress()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:176,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].getSoLinger()"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 150
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].getSoLinger()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:147,1"
      Dst: "[java.net.Socket].getSoLinger()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:149,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].getTrafficClass()"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].getTrafficClass()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:156,1"
      Dst: "[java.net.Socket].getTrafficClass()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:158,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].isAllowHalfClosure()"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 273
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 124
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setReceiveBufferSize(int)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setReceiveBufferSize(int)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setSendBufferSize(int)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].setSendBufferSize(int)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setSendBufferSize(int)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setTcpNoDelay(boolean)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setTcpNoDelay(boolean)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setKeepAlive(boolean)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setKeepAlive(boolean)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setReuseAddress(boolean)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setReuseAddress(boolean)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setSoLinger(int)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setSoLinger(int)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setTrafficClass(int)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setTrafficClass(int)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig:java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setAllowHalfClosure(boolean)"
    - "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setAllowHalfClosure(boolean)"
    functionUses: 4
    ICount: 55
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:103"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:105"
        BranchSideFuncs:
        - "setReceiveBufferSize(int)"
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:104"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:105"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:107"
        BranchSideFuncs:
        - "setSendBufferSize(int)"
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:107"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:109"
        BranchSideFuncs:
        - "setTcpNoDelay(boolean)"
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:108"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:109"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:111"
        BranchSideFuncs:
        - "setKeepAlive(boolean)"
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:111"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:113"
        BranchSideFuncs:
        - "setReuseAddress(boolean)"
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:112"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:113"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:115"
        BranchSideFuncs:
        - "setSoLinger(int)"
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:114"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:115"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:117"
        BranchSideFuncs:
        - "setTrafficClass(int)"
        - "intValue()"
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:116"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:117"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:120"
        BranchSideFuncs:
        - "booleanValue()"
        - "setAllowHalfClosure(boolean)"
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:119"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:101,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:104,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:104,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:106,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setSendBufferSize(int)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:108,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:108,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setTcpNoDelay(boolean)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:110,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setKeepAlive(boolean)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:112,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setReuseAddress(boolean)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:114,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setSoLinger(int)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:116,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setTrafficClass(int)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:118,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setAllowHalfClosure(boolean)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:120,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 8
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 214
    functionDepth: 1
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].setReceiveBufferSize(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:209,1"
      Dst: "[java.net.Socket].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:211,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 234
    functionDepth: 1
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].setSendBufferSize(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:229,1"
      Dst: "[java.net.Socket].setSendBufferSize(int)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:231,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setTcpNoDelay(boolean)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 252
    functionLinenumberEnd: 258
    functionDepth: 1
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].setTcpNoDelay(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:253,1"
      Dst: "[java.net.Socket].setTcpNoDelay(boolean)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:255,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setKeepAlive(boolean)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 197
    functionDepth: 1
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].setKeepAlive(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:192,1"
      Dst: "[java.net.Socket].setKeepAlive(boolean)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:194,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setReuseAddress(boolean)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 224
    functionDepth: 1
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].setReuseAddress(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:219,1"
      Dst: "[java.net.Socket].setReuseAddress(boolean)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:221,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setSoLinger(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 248
    functionDepth: 1
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].setSoLinger(boolean,int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultSocketChannelConfig:239"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:242"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.DefaultSocketChannelConfig:241"
        BranchSideFuncs:
        - "setSoLinger(boolean,int)"
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:240,1"
      Dst: "[java.net.Socket].setSoLinger(boolean,int)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:245,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setTrafficClass(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 268
    functionDepth: 1
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].setTrafficClass(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:263,1"
      Dst: "[java.net.Socket].setTrafficClass(int)"
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:265,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setAllowHalfClosure(boolean)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 279
    functionDepth: 0
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setPerformancePreferences(int,int,int)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].setPerformancePreferences(int,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:202,1"
      Dst: "[java.net.Socket].setPerformancePreferences(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 285
    functionDepth: 2
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:283,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 289
    functionLinenumberEnd: 292
    functionDepth: 2
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:290,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 298
    functionDepth: 2
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:296,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 301
    functionLinenumberEnd: 304
    functionDepth: 2
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:302,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 307
    functionLinenumberEnd: 310
    functionDepth: 2
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:308,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 313
    functionLinenumberEnd: 316
    functionDepth: 2
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:314,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setAutoClose(boolean)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 319
    functionLinenumberEnd: 322
    functionDepth: 1
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:320,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 325
    functionLinenumberEnd: 328
    functionDepth: 3
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:326,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 331
    functionLinenumberEnd: 334
    functionDepth: 3
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:332,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 337
    functionLinenumberEnd: 340
    functionDepth: 2
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:338,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.socket.DefaultSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 343
    functionLinenumberEnd: 346
    functionDepth: 2
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultSocketChannelConfig:344,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$1].<init>(io.netty.handler.ssl.OpenSslSessionCache)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslSessionCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$1:55,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$1].removeEldestEntry(java.util.Map$Entry)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Map$Entry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslSessionCache].access$000(io.netty.handler.ssl.OpenSslSessionCache)"
    - "[java.util.concurrent.atomic.AtomicInteger].get()"
    - "[java.util.HashMap].size()"
    - "[java.util.Map$Entry].getKey()"
    - "[io.netty.handler.ssl.OpenSslSessionCache].removeSessionWithId(io.netty.handler.ssl.OpenSslSessionId)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache$1:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$1:66"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$1:65"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache$1:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$1:66"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$1:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$1:61,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].access$000(io.netty.handler.ssl.OpenSslSessionCache)"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$1:61,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].get()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$1:62,1"
      Dst: "[java.util.HashMap].size()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$1:63,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$1:63,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].removeSessionWithId(io.netty.handler.ssl.OpenSslSessionId)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.rtsp.RtspEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectEncoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:35,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspEncoder].acceptOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspEncoder"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectEncoder].acceptOutboundMessage(java.lang.Object)"
    functionUses: 3
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.rtsp.RtspEncoder:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.rtsp.RtspEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.rtsp.RtspEncoder:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.rtsp.RtspEncoder:40"
        BranchSideFuncs:
        - "acceptOutboundMessage(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.rtsp.RtspEncoder:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.rtsp.RtspEncoder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:41,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectEncoder].acceptOutboundMessage(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.rtsp.RtspEncoder].encodeInitialLine(io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspEncoder"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 68
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMethod].asciiName()"
    - "[io.netty.buffer.ByteBufUtil].copy(io.netty.util.AsciiString,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].method()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].method()"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].uri()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].uri()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest:io.netty.handler.codec.http.HttpMethod].uri()"
    - "[io.netty.buffer.AbstractByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpVersion].toString()"
    - "[io.netty.buffer.ByteBufUtil].writeShortBE(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.http.DefaultHttpMessage:io.netty.handler.codec.http.DefaultHttpRequest].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].codeAsText()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].reasonPhrase()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.UnsupportedMessageTypeException].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.HttpRequest].method()"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.http.HttpRequest].uri()"
    - "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    functionUses: 2
    ICount: 48
    EdgeCount: 96
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.rtsp.RtspEncoder:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.rtsp.RtspEncoder:47"
        BranchSideFuncs:
        - "uri()"
        - "asciiName()"
        - "method()"
      - BranchSide: "io.netty.handler.codec.rtsp.RtspEncoder:46"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.rtsp.RtspEncoder:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.rtsp.RtspEncoder:64"
        BranchSideFuncs:
        - "uri()"
        - "asciiName()"
        - "method()"
      - BranchSide: "io.netty.handler.codec.rtsp.RtspEncoder:63"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "toString()"
        - "append(java.lang.String)"
        - "<init>()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:49,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].method()"
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:49,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].asciiName()"
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:49,1"
      Dst: "[io.netty.buffer.ByteBufUtil].copy(io.netty.util.AsciiString,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:50,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:51,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].uri()"
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:51,1"
      Dst: "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:53,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:53,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].toString()"
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:54,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeShortBE(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:59,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:59,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].codeAsText()"
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:61,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].reasonPhrase()"
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:64,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:64,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:65,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:65,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.rtsp.RtspEncoder:65,1"
      Dst: "[io.netty.handler.codec.UnsupportedMessageTypeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].reasonPhrase()"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 592
    functionLinenumberEnd: 594
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.UnsupportedMessageTypeException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.UnsupportedMessageTypeException"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.UnsupportedMessageTypeException:38,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel$5].<init>(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel)"
    functionSourceFile: "io.netty.channel.local.LocalChannel$5"
    linkageType: ""
    functionLinenumber: 399
    functionLinenumberEnd: 401
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    - "io.netty.channel.local.LocalChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel$5:400,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel$5].run()"
    functionSourceFile: "io.netty.channel.local.LocalChannel$5"
    linkageType: ""
    functionLinenumber: 402
    functionLinenumberEnd: 405
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalChannel].access$400(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel)"
    functionUses: 50
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel$5:403,1"
      Dst: "[io.netty.channel.local.LocalChannel].access$400(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].access$400(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel)"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    - "io.netty.channel.local.LocalChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalChannel].finishPeerRead0(io.netty.channel.local.LocalChannel)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:50,1"
      Dst: "[io.netty.channel.local.LocalChannel].finishPeerRead0(io.netty.channel.local.LocalChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].finishPeerRead0(io.netty.channel.local.LocalChannel)"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 430
    functionLinenumberEnd: 448
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.channel.local.LocalChannel].runFinishPeerReadTask(io.netty.channel.local.LocalChannel)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].isEmpty()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].isEmpty()"
    - "[java.util.ArrayDeque].isEmpty()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].isEmpty()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].isEmpty()"
    - "[io.netty.util.internal.DefaultPriorityQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].isEmpty()"
    - "[io.netty.util.internal.EmptyPriorityQueue].isEmpty()"
    - "[io.netty.channel.local.LocalChannel].readInbound()"
    - "[java.util.concurrent.Future].isDone()"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[java.util.Collection].isEmpty()"
    functionUses: 2
    ICount: 18
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalChannel:432"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:443"
        BranchSideFuncs:
        - "isDone()"
      - BranchSide: "io.netty.channel.local.LocalChannel:442"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.channel.local.LocalChannel:433"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:438"
        BranchSideFuncs:
        - "runFinishPeerReadTask(io.netty.channel.local.LocalChannel)"
      - BranchSide: "io.netty.channel.local.LocalChannel:437"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel:443"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:447"
        BranchSideFuncs:
        - "readInbound()"
      - BranchSide: "io.netty.channel.local.LocalChannel:446"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel:443"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:447"
        BranchSideFuncs:
        - "readInbound()"
      - BranchSide: "io.netty.channel.local.LocalChannel:446"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:433,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.channel.local.LocalChannel:434,1"
      Dst: "[io.netty.channel.local.LocalChannel].runFinishPeerReadTask(io.netty.channel.local.LocalChannel)"
    - Src: "io.netty.channel.local.LocalChannel:438,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.local.LocalChannel:443,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "io.netty.channel.local.LocalChannel:445,1"
      Dst: "[io.netty.channel.local.LocalChannel].readInbound()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.local.LocalChannel].runFinishPeerReadTask(io.netty.channel.local.LocalChannel)"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 399
    functionLinenumberEnd: 419
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalChannel$5].<init>(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel)"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].submit(java.lang.Runnable)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.channel.AbstractChannel].close()"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[io.netty.util.concurrent.EventExecutorGroup].submit(java.lang.Runnable)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 24
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalChannel:407"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:410"
        BranchSideFuncs:
        - "submit(java.lang.Runnable)"
      - BranchSide: "io.netty.channel.local.LocalChannel:409"
        BranchSideFuncs:
        - "run()"
        - "eventLoop()"
        - "execute(java.lang.Runnable)"
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:400,1"
      Dst: "[io.netty.channel.local.LocalChannel$5].<init>(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel)"
    - Src: "io.netty.channel.local.LocalChannel:408,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.local.LocalChannel:408,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].submit(java.lang.Runnable)"
    - Src: "io.netty.channel.local.LocalChannel:410,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.channel.local.LocalChannel:413,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.channel.local.LocalChannel:414,1"
      Dst: "[io.netty.channel.AbstractChannel].close()"
    - Src: "io.netty.channel.local.LocalChannel:416,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.local.LocalChannel].readInbound()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 304
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].recvBufAllocHandle()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].recvBufAllocHandle()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].continueReading()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].continueReading()"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].continueReading()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].readComplete()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].readComplete()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].readComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.Channel$Unsafe].recvBufAllocHandle()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].reset(io.netty.channel.ChannelConfig)"
    - "[java.util.Queue].poll()"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].continueReading()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].readComplete()"
    - "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    functionUses: 3
    ICount: 16
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalChannel:296"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:299"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.local.LocalChannel:298"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
        - "continueReading()"
    - Branch String: "io.netty.channel.local.LocalChannel:300"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:295"
        BranchSideFuncs:
        - "fireChannelReadComplete()"
        - "readComplete()"
      - BranchSide: "io.netty.channel.local.LocalChannel:294"
        BranchSideFuncs:
        - "poll()"
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:291,1"
      Dst: "[io.netty.channel.AbstractChannel].unsafe()"
    - Src: "io.netty.channel.local.LocalChannel:291,1"
      Dst: "[io.netty.channel.Channel$Unsafe].recvBufAllocHandle()"
    - Src: "io.netty.channel.local.LocalChannel:292,1"
      Dst: "[io.netty.channel.local.LocalChannel].config()"
    - Src: "io.netty.channel.local.LocalChannel:292,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].reset(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.local.LocalChannel:293,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.local.LocalChannel:295,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.channel.local.LocalChannel:299,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.channel.local.LocalChannel:300,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].continueReading()"
    - Src: "io.netty.channel.local.LocalChannel:301,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].readComplete()"
    - Src: "io.netty.channel.local.LocalChannel:302,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.local.LocalChannel].config()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "io.netty.channel.ChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 53
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].deallocate()"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].isWritable()"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].isWritable(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 27
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:66,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int,boolean)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getByte(int)"
    functionUses: 142
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:76,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:77,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getByte(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].get(int)"
    functionUses: 17
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:82,1"
      Dst: "[java.nio.ByteBuffer].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].getShort(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getShort(int)"
    functionUses: 20
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:87,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:88,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getShort(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].getShort(int)"
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:93,1"
      Dst: "[java.nio.ByteBuffer].getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].getShortLE(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionDepth: 2
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getShortLE(int)"
    functionUses: 13
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:98,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:99,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getShortLE(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    - "[java.nio.ByteBuffer].getShort(int)"
    functionUses: 7
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:104,1"
      Dst: "[java.nio.ByteBuffer].getShort(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:104,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getUnsignedMedium(int)"
    functionUses: 15
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:109,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:110,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getUnsignedMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    functionUses: 7
    ICount: 21
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:115,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getUnsignedMediumLE(int)"
    functionUses: 14
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:122,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:123,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getUnsignedMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 131
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    functionUses: 7
    ICount: 21
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:128,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].getInt(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getInt(int)"
    functionUses: 25
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:135,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:136,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getInt(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].getInt(int)"
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:141,1"
      Dst: "[java.nio.ByteBuffer].getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].getIntLE(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getIntLE(int)"
    functionUses: 14
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:146,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:147,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getIntLE(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    - "[java.nio.ByteBuffer].getInt(int)"
    functionUses: 7
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:152,1"
      Dst: "[java.nio.ByteBuffer].getInt(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:152,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 656
    functionLinenumberEnd: 658
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].reverseBytes(int)"
    functionUses: 11
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:657,1"
      Dst: "[java.lang.Integer].reverseBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].getLong(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getLong(int)"
    functionUses: 20
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:157,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:158,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getLong(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].getLong(int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:163,1"
      Dst: "[java.nio.ByteBuffer].getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].getLongLE(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getLongLE(int)"
    functionUses: 13
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:168,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:169,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getLongLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._getLongLE(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    - "[java.nio.ByteBuffer].getLong(int)"
    functionUses: 7
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:174,1"
      Dst: "[java.nio.ByteBuffer].getLong(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:174,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 192
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.EmptyByteBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffers(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - "[java.nio.Buffer].remaining()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 15
    ICount: 29
    EdgeCount: 135
    BranchProfiles:
    - Branch String: "io.netty.buffer.ReadOnlyByteBufferBuf:180"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:182"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
        - "getBytes(int,byte[],int,int)"
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:181"
        BranchSideFuncs:
        - "nioBufferCount()"
    - Branch String: "io.netty.buffer.ReadOnlyByteBufferBuf:182"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:189"
        BranchSideFuncs:
        - "nioBuffers(int,int)"
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:188"
        BranchSideFuncs:
        - "setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - Branch String: "io.netty.buffer.ReadOnlyByteBufferBuf:183"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:182"
        BranchSideFuncs:
        - "nioBuffers(int,int)"
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:179,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:179,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:180,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:181,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:181,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:181,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,byte[],int,int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:182,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:183,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:184,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:185,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:189,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 202
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    - "[java.nio.ByteBuffer].get(byte[],int,int)"
    functionUses: 18
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:196,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:198,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:199,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:199,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:199,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:200,1"
      Dst: "[java.nio.ByteBuffer].get(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer()"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 412
    functionLinenumberEnd: 418
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].duplicate()"
    functionUses: 6
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.ReadOnlyByteBufferBuf:414"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:417"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:416"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:415,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 212
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer()"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    - "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    functionUses: 13
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:206,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:206,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:208,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:209,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:209,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:209,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:210,1"
      Dst: "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].setByte(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 217
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 65
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:216,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._setByte(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 220
    functionLinenumberEnd: 222
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 25
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:221,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].setShort(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 227
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 18
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:226,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._setShort(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 232
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:231,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 235
    functionLinenumberEnd: 237
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:236,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 240
    functionLinenumberEnd: 242
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:241,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 245
    functionLinenumberEnd: 247
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:246,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 250
    functionLinenumberEnd: 252
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:251,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 10
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:256,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 260
    functionLinenumberEnd: 262
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:261,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].setInt(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 265
    functionLinenumberEnd: 267
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 26
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:266,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._setInt(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 270
    functionLinenumberEnd: 272
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 10
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:271,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 275
    functionLinenumberEnd: 277
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 12
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:276,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 280
    functionLinenumberEnd: 282
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:281,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].setLong(int,long)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 285
    functionLinenumberEnd: 287
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 14
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:286,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._setLong(int,long)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 292
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 8
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:291,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:296,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf]._setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:301,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 305
    functionLinenumberEnd: 307
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].maxCapacity()"
    functionUses: 67
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:306,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].maxCapacity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity(int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 310
    functionLinenumberEnd: 312
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:311,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].alloc()"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 315
    functionLinenumberEnd: 317
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBufAllocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 320
    functionLinenumberEnd: 322
    functionDepth: 0
    returnType: "java.nio.ByteOrder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].unwrap()"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 325
    functionLinenumberEnd: 327
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].isReadOnly()"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 330
    functionLinenumberEnd: 332
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.Buffer].isReadOnly()"
    functionUses: 8
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:331,1"
      Dst: "[java.nio.Buffer].isReadOnly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].isDirect()"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 335
    functionLinenumberEnd: 337
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].isDirect()"
    functionUses: 17
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:336,1"
      Dst: "[java.nio.ByteBuffer].isDirect()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 340
    functionLinenumberEnd: 356
    functionDepth: 6
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[java.io.FilterOutputStream].write(byte[],int,int)"
    - "[java.io.BufferedOutputStream].write(byte[],int,int)"
    - "[java.io.PrintStream].write(byte[],int,int)"
    - "[java.io.ObjectOutputStream$BlockDataOutputStream].write(byte[],int,int)"
    - "[io.netty.buffer.ByteBufOutputStream].write(byte[],int,int)"
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream$1].write(byte[],int,int)"
    - "[java.io.FileOutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    - "[java.io.ObjectOutputStream].write(byte[],int,int)"
    - "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].write(byte[],int,int)"
    - "[java.io.DataOutputStream].write(byte[],int,int)"
    - "[io.netty.buffer.ByteBufUtil].threadLocalTempArray(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer()"
    - "[java.nio.ByteBuffer].hasArray()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.nio.ByteBuffer].arrayOffset()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.ByteBuffer].get(byte[],int,int)"
    functionUses: 10
    ICount: 24
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "io.netty.buffer.ReadOnlyByteBufferBuf:342"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:346"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:345"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ReadOnlyByteBufferBuf:346"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:349"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:348"
        BranchSideFuncs:
        - "internalNioBuffer()"
        - "write(byte[],int,int)"
        - "threadLocalTempArray(int)"
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:341,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:346,1"
      Dst: "[java.nio.ByteBuffer].hasArray()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:347,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:347,1"
      Dst: "[java.nio.ByteBuffer].arrayOffset()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:347,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:349,1"
      Dst: "[io.netty.buffer.ByteBufUtil].threadLocalTempArray(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:350,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:351,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:351,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:352,1"
      Dst: "[java.nio.ByteBuffer].get(byte[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].threadLocalTempArray(int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionDepth: 5
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].get()"
    - "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    functionUses: 6
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:108"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:109"
        BranchSideFuncs:
        - "allocateUninitializedArray(int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:108"
        BranchSideFuncs:
        - "allocateUninitializedArray(int)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:108,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].get()"
    - Src: "io.netty.buffer.ByteBufUtil:109,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 359
    functionLinenumberEnd: 368
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer()"
    - "[sun.nio.ch.FileChannelImpl].write(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    - "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    functionUses: 8
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.ReadOnlyByteBufferBuf:361"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:365"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:364"
        BranchSideFuncs:
        - "internalNioBuffer()"
        - "write(java.nio.ByteBuffer)"
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:360,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:365,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:366,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:366,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:366,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:367,1"
      Dst: "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    - "[java.nio.channels.FileChannel].write(java.nio.ByteBuffer,long)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.ReadOnlyByteBufferBuf:373"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:377"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:376"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:372,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:377,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:378,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:378,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:378,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:379,1"
      Dst: "[java.nio.channels.FileChannel].write(java.nio.ByteBuffer,long)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 383
    functionLinenumberEnd: 385
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 20
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:384,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 388
    functionLinenumberEnd: 390
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 13
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:389,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 393
    functionLinenumberEnd: 395
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 8
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:394,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 398
    functionLinenumberEnd: 400
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:399,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 403
    functionLinenumberEnd: 405
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:404,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 408
    functionLinenumberEnd: 410
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 8
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:409,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].copy(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 421
    functionLinenumberEnd: 433
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].alloc()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    - "[java.nio.ByteBuffer].isDirect()"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(java.nio.ByteBuffer)"
    functionUses: 10
    ICount: 30
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.buffer.ReadOnlyByteBufferBuf:430"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:430"
        BranchSideFuncs:
        - "writeBytes(java.nio.ByteBuffer)"
      - BranchSide: "io.netty.buffer.ReadOnlyByteBufferBuf:429"
        BranchSideFuncs:
        - "heapBuffer(int)"
        - "alloc()"
        - "directBuffer(int)"
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:422,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:425,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:425,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:425,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:425,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:427,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:427,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:427,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:427,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:427,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:430,1"
      Dst: "[java.nio.ByteBuffer].isDirect()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:430,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf].alloc()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:430,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:430,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:431,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 436
    functionLinenumberEnd: 438
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 45
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffers(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 441
    functionLinenumberEnd: 443
    functionDepth: 1
    returnType: "java.nio.ByteBuffer[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    functionUses: 19
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:442,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 446
    functionLinenumberEnd: 449
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[java.nio.ByteBuffer].duplicate()"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    functionUses: 20
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:447,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:448,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:448,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:448,1"
      Dst: "[java.nio.Buffer].limit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 452
    functionLinenumberEnd: 455
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    functionUses: 37
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:453,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:454,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:454,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:454,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:454,1"
      Dst: "[java.nio.Buffer].limit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].isContiguous()"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 458
    functionLinenumberEnd: 460
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 463
    functionLinenumberEnd: 465
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].hasArray()"
    functionUses: 46
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:464,1"
      Dst: "[java.nio.ByteBuffer].hasArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 468
    functionLinenumberEnd: 470
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].array()"
    functionUses: 63
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:469,1"
      Dst: "[java.nio.ByteBuffer].array()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 473
    functionLinenumberEnd: 475
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].arrayOffset()"
    functionUses: 58
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:474,1"
      Dst: "[java.nio.ByteBuffer].arrayOffset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].hasMemoryAddress()"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 478
    functionLinenumberEnd: 480
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBufferBuf"
    linkageType: ""
    functionLinenumber: 483
    functionLinenumberEnd: 485
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 38
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBufferBuf:484,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpHeaderNames].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.HttpHeaderNames"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpHeaderNames:380,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdRequestDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdRequestDecoder$State"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksCmdRequestDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdRequestDecoder$State:96,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdRequestDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdRequestDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksCmdRequestDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdRequestDecoder$State:96,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdRequestDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdRequestDecoder$State"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdRequestDecoder$State:97,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf].<init>(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    functionUses: 1
    ICount: 6
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:42,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:42,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:42,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].<init>(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].<init>(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].<init>(int)"
    - "[io.netty.buffer.WrappedByteBuf].maxCapacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].maxCapacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].maxCapacity()"
    - "[io.netty.buffer.SwappedByteBuf].maxCapacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].maxCapacity()"
    - "[io.netty.buffer.SlicedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].markReaderIndex()"
    - "[io.netty.buffer.AbstractByteBuf].markWriterIndex()"
    - "[io.netty.buffer.ByteBuf].maxCapacity()"
    - "[io.netty.buffer.ByteBuf].unwrap()"
    functionUses: 1
    ICount: 22
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.buffer.DuplicatedByteBuf:48"
      Branch Sides:
      - BranchSide: "io.netty.buffer.DuplicatedByteBuf:50"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.DuplicatedByteBuf:49"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.DuplicatedByteBuf:50"
      Branch Sides:
      - BranchSide: "io.netty.buffer.DuplicatedByteBuf:53"
        BranchSideFuncs:
        - "unwrap()"
      - BranchSide: "io.netty.buffer.DuplicatedByteBuf:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:46,1"
      Dst: "[io.netty.buffer.ByteBuf].maxCapacity()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:46,1"
      Dst: "[io.netty.buffer.AbstractDerivedByteBuf].<init>(int)"
    - Src: "io.netty.buffer.DuplicatedByteBuf:51,1"
      Dst: "[io.netty.buffer.ByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:56,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    - Src: "io.netty.buffer.DuplicatedByteBuf:57,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].markReaderIndex()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:58,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].markWriterIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].alloc()"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBufAllocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].alloc()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].alloc()"
    - "[io.netty.buffer.DuplicatedByteBuf].alloc()"
    - "[io.netty.buffer.SwappedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].alloc()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.WrappedByteBuf].alloc()"
    - "[io.netty.buffer.SlicedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].alloc()"
    functionUses: 26
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:68,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:68,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].order()"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 1
    returnType: "java.nio.ByteOrder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.SwappedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].order()"
    functionUses: 29
    ICount: 4
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:74,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:74,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].isDirect()"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isDirect()"
    - "[io.netty.buffer.DuplicatedByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].isDirect()"
    - "[io.netty.buffer.CompositeByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBuf].isDirect()"
    - "[io.netty.buffer.SlicedByteBuf].isDirect()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedByteBuf].isDirect()"
    - "[io.netty.buffer.SwappedByteBuf].isDirect()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].isDirect()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].isDirect()"
    functionUses: 17
    ICount: 4
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:79,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:79,1"
      Dst: "[io.netty.buffer.ByteBuf].isDirect()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    functionUses: 68
    ICount: 4
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:84,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:84,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].capacity(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].capacity(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.PooledByteBuf].capacity(int)"
    - "[io.netty.buffer.SwappedByteBuf].capacity(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].capacity(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity(int)"
    - "[io.netty.buffer.SlicedByteBuf].capacity(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].capacity(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.EmptyByteBuf].capacity(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity(int)"
    - "[io.netty.buffer.CompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.WrappedByteBuf].capacity(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].capacity(int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:89,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:89,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    functionUses: 46
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:95,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:95,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].array()"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].array()"
    functionUses: 63
    ICount: 4
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:100,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:100,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    functionUses: 58
    ICount: 4
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:105,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:105,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    functionUses: 39
    ICount: 4
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:110,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:110,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    functionUses: 38
    ICount: 4
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:115,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:115,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 136
    ICount: 5
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:120,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:120,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._getByte(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:125,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:125,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].getShort(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].getShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getShort(int)"
    functionUses: 20
    ICount: 5
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:130,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:130,1"
      Dst: "[io.netty.buffer.ByteBuf].getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._getShort(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].getShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getShort(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:135,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:135,1"
      Dst: "[io.netty.buffer.ByteBuf].getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].getShortLE(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShortLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getShortLE(int)"
    functionUses: 13
    ICount: 5
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:140,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:140,1"
      Dst: "[io.netty.buffer.ByteBuf].getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._getShortLE(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShortLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getShortLE(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:145,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:145,1"
      Dst: "[io.netty.buffer.ByteBuf].getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.SlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getUnsignedMedium(int)"
    functionUses: 15
    ICount: 5
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:150,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:150,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.SlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getUnsignedMedium(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:155,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:155,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getUnsignedMediumLE(int)"
    functionUses: 14
    ICount: 5
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:160,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:160,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getUnsignedMediumLE(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:165,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:165,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].getInt(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.SlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getInt(int)"
    functionUses: 25
    ICount: 5
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:170,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:170,1"
      Dst: "[io.netty.buffer.ByteBuf].getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._getInt(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.SlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getInt(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:175,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:175,1"
      Dst: "[io.netty.buffer.ByteBuf].getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].getIntLE(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getIntLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getIntLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getIntLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getIntLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getIntLE(int)"
    functionUses: 14
    ICount: 5
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:180,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:180,1"
      Dst: "[io.netty.buffer.ByteBuf].getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._getIntLE(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getIntLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getIntLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getIntLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getIntLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getIntLE(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:185,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:185,1"
      Dst: "[io.netty.buffer.ByteBuf].getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].getLong(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLong(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLong(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLong(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getLong(int)"
    functionUses: 20
    ICount: 5
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:190,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:190,1"
      Dst: "[io.netty.buffer.ByteBuf].getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._getLong(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 196
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLong(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLong(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLong(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getLong(int)"
    functionUses: 7
    ICount: 5
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:195,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:195,1"
      Dst: "[io.netty.buffer.ByteBuf].getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].getLongLE(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 201
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLongLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLongLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getLongLE(int)"
    functionUses: 13
    ICount: 5
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:200,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:200,1"
      Dst: "[io.netty.buffer.ByteBuf].getLongLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._getLongLE(int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 206
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLongLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLongLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getLongLE(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:205,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:205,1"
      Dst: "[io.netty.buffer.ByteBuf].getLongLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].copy(int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 211
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].copy(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].copy(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].copy(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].copy(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].copy(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].copy(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].copy(int,int)"
    functionUses: 10
    ICount: 6
    EdgeCount: 25
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:210,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:210,1"
      Dst: "[io.netty.buffer.ByteBuf].copy(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].slice(int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 216
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].slice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].slice(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].slice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].slice(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].slice(int,int)"
    functionUses: 22
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:215,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:215,1"
      Dst: "[io.netty.buffer.ByteBuf].slice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 219
    functionLinenumberEnd: 222
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 15
    ICount: 8
    EdgeCount: 25
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:220,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:220,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 228
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    functionUses: 17
    ICount: 8
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:226,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:226,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 231
    functionLinenumberEnd: 234
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionUses: 12
    ICount: 6
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:232,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:232,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].setByte(int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 237
    functionLinenumberEnd: 240
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setByte(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setByte(int,int)"
    functionUses: 65
    ICount: 6
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:238,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:238,1"
      Dst: "[io.netty.buffer.ByteBuf].setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._setByte(int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 243
    functionLinenumberEnd: 246
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setByte(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setByte(int,int)"
    functionUses: 25
    ICount: 6
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:244,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:244,1"
      Dst: "[io.netty.buffer.ByteBuf].setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].setShort(int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 248
    functionLinenumberEnd: 251
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setShort(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setShort(int,int)"
    functionUses: 18
    ICount: 6
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:249,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:249,1"
      Dst: "[io.netty.buffer.ByteBuf].setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._setShort(int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 254
    functionLinenumberEnd: 257
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setShort(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setShort(int,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:255,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:255,1"
      Dst: "[io.netty.buffer.ByteBuf].setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 259
    functionLinenumberEnd: 262
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShortLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setShortLE(int,int)"
    functionUses: 9
    ICount: 6
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:260,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:260,1"
      Dst: "[io.netty.buffer.ByteBuf].setShortLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 265
    functionLinenumberEnd: 268
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShortLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setShortLE(int,int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:266,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:266,1"
      Dst: "[io.netty.buffer.ByteBuf].setShortLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 270
    functionLinenumberEnd: 273
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setMedium(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setMedium(int,int)"
    functionUses: 11
    ICount: 6
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:271,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:271,1"
      Dst: "[io.netty.buffer.ByteBuf].setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 279
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setMedium(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setMedium(int,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:277,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:277,1"
      Dst: "[io.netty.buffer.ByteBuf].setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 281
    functionLinenumberEnd: 284
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setMediumLE(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setMediumLE(int,int)"
    functionUses: 10
    ICount: 6
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:282,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:282,1"
      Dst: "[io.netty.buffer.ByteBuf].setMediumLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 287
    functionLinenumberEnd: 290
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setMediumLE(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setMediumLE(int,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:288,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:288,1"
      Dst: "[io.netty.buffer.ByteBuf].setMediumLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].setInt(int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 292
    functionLinenumberEnd: 295
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setInt(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setInt(int,int)"
    functionUses: 26
    ICount: 6
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:293,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:293,1"
      Dst: "[io.netty.buffer.ByteBuf].setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._setInt(int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 298
    functionLinenumberEnd: 301
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setInt(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setInt(int,int)"
    functionUses: 10
    ICount: 6
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:299,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:299,1"
      Dst: "[io.netty.buffer.ByteBuf].setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 303
    functionLinenumberEnd: 306
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setIntLE(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setIntLE(int,int)"
    functionUses: 12
    ICount: 6
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:304,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:304,1"
      Dst: "[io.netty.buffer.ByteBuf].setIntLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 309
    functionLinenumberEnd: 312
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setIntLE(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setIntLE(int,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:310,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:310,1"
      Dst: "[io.netty.buffer.ByteBuf].setIntLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].setLong(int,long)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 314
    functionLinenumberEnd: 317
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setLong(int,long)"
    - "[io.netty.buffer.DuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf].setLong(int,long)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.EmptyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setLong(int,long)"
    functionUses: 14
    ICount: 6
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:315,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:315,1"
      Dst: "[io.netty.buffer.ByteBuf].setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._setLong(int,long)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 320
    functionLinenumberEnd: 323
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setLong(int,long)"
    - "[io.netty.buffer.DuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf].setLong(int,long)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.EmptyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setLong(int,long)"
    functionUses: 8
    ICount: 6
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:321,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:321,1"
      Dst: "[io.netty.buffer.ByteBuf].setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setLongLE(int,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:326,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:326,1"
      Dst: "[io.netty.buffer.ByteBuf].setLongLE(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf]._setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setLongLE(int,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:332,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:332,1"
      Dst: "[io.netty.buffer.ByteBuf].setLongLE(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 336
    functionLinenumberEnd: 339
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,byte[],int,int)"
    functionUses: 13
    ICount: 8
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:337,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:337,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 342
    functionLinenumberEnd: 345
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 20
    ICount: 8
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:343,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:343,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 348
    functionLinenumberEnd: 351
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionUses: 8
    ICount: 6
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:349,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:349,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 355
    functionLinenumberEnd: 358
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionUses: 10
    ICount: 7
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:356,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:356,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 362
    functionLinenumberEnd: 364
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionUses: 8
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:363,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:363,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:369,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:369,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 374
    functionLinenumberEnd: 376
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.io.InputStream,int)"
    functionUses: 8
    ICount: 7
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:375,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:375,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 380
    functionLinenumberEnd: 382
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionUses: 8
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:381,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:381,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 386
    functionLinenumberEnd: 388
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionUses: 8
    ICount: 8
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:387,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:387,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 391
    functionLinenumberEnd: 393
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    functionUses: 45
    ICount: 4
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:392,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:392,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].nioBuffers(int,int)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 396
    functionLinenumberEnd: 398
    functionDepth: 1
    returnType: "java.nio.ByteBuffer[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffers(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    functionUses: 19
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:397,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:397,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 401
    functionLinenumberEnd: 403
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.DuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ReadOnlyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionUses: 19
    ICount: 7
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:402,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:402,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DuplicatedByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.DuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DuplicatedByteBuf:407,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.DuplicatedByteBuf:407,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor$1].<init>(io.netty.util.concurrent.GlobalEventExecutor)"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor$1"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GlobalEventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.GlobalEventExecutor$1:51,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.GlobalEventExecutor$1].run()"
    functionSourceFile: "io.netty.util.concurrent.GlobalEventExecutor$1"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 49
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].certificateChain()"
    functionSourceFile: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.cert.X509Certificate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:45,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].certificateChainAddress()"
    functionSourceFile: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - "[io.netty.util.IllegalReferenceCountException].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:53"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:50,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:51,1"
      Dst: "[io.netty.util.IllegalReferenceCountException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.IllegalReferenceCountException].<init>()"
    functionSourceFile: "io.netty.util.IllegalReferenceCountException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.IllegalReferenceCountException:27,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].privateKeyAddress()"
    functionSourceFile: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - "[io.netty.util.IllegalReferenceCountException].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:58"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:61"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:58,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:59,1"
      Dst: "[io.netty.util.IllegalReferenceCountException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].deallocate()"
    functionSourceFile: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SSL].freeX509Chain(long)"
    - "[io.netty.internal.tcnative.SSL].freePrivateKey(long)"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].close(java.lang.Object)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.ResourceLeakTracker].close(java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:74"
        BranchSideFuncs:
        - "<init>()"
        - "close(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:73"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:73"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:66,1"
      Dst: "[io.netty.internal.tcnative.SSL].freeX509Chain(long)"
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:68,1"
      Dst: "[io.netty.internal.tcnative.SSL].freePrivateKey(long)"
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:71,1"
      Dst: "[io.netty.util.ResourceLeakTracker].close(java.lang.Object)"
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:72,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].retain()"
    functionSourceFile: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].record()"
    - "[io.netty.util.AbstractReferenceCounted].retain()"
    - "[io.netty.util.ResourceLeakTracker].record()"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:81"
        BranchSideFuncs:
        - "record()"
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:80"
        BranchSideFuncs:
        - "retain()"
    Callsites:
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:79,1"
      Dst: "[io.netty.util.ResourceLeakTracker].record()"
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:81,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].retain(int)"
    functionSourceFile: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakTracker].record()"
    - "[io.netty.util.AbstractReferenceCounted].retain(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:87"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:88,1"
      Dst: "[io.netty.util.ResourceLeakTracker].record()"
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:90,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].touch()"
    functionSourceFile: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].record()"
    - "[io.netty.util.AbstractReferenceCounted].touch()"
    - "[io.netty.util.ResourceLeakTracker].record()"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:99"
        BranchSideFuncs:
        - "record()"
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:98"
        BranchSideFuncs:
        - "touch()"
    Callsites:
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:97,1"
      Dst: "[io.netty.util.ResourceLeakTracker].record()"
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:99,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].record(java.lang.Object)"
    - "[io.netty.util.ResourceLeakTracker].record(java.lang.Object)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:105"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:108"
        BranchSideFuncs:
        - "record(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:106,1"
      Dst: "[io.netty.util.ResourceLeakTracker].record(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].release()"
    functionSourceFile: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].record()"
    - "[io.netty.util.AbstractReferenceCounted].release()"
    - "[io.netty.util.ResourceLeakTracker].record()"
    functionUses: 5
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:116"
        BranchSideFuncs:
        - "record()"
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:115"
        BranchSideFuncs:
        - "release()"
    Callsites:
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:114,1"
      Dst: "[io.netty.util.ResourceLeakTracker].record()"
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:116,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].release(int)"
    functionSourceFile: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].record()"
    - "[io.netty.util.AbstractReferenceCounted].release(int)"
    - "[io.netty.util.ResourceLeakTracker].record()"
    functionUses: 4
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:121"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:124"
        BranchSideFuncs:
        - "record()"
      - BranchSide: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:123"
        BranchSideFuncs:
        - "release(int)"
    Callsites:
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:122,1"
      Dst: "[io.netty.util.ResourceLeakTracker].record()"
    - Src: "io.netty.handler.ssl.DefaultOpenSslKeyMaterial:124,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslContextOption].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SslContextOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslContextOption<T>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ConstantPool].valueOf(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextOption:45,1"
      Dst: "[io.netty.util.ConstantPool].valueOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextOption].valueOf(java.lang.Class<?>,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SslContextOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslContextOption<T>"
    argCount: 2
    argTypes:
    - "java.lang.Class<?>"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ConstantPool].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextOption:53,1"
      Dst: "[io.netty.util.ConstantPool].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextOption].exists(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SslContextOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ConstantPool].exists(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextOption:60,1"
      Dst: "[io.netty.util.ConstantPool].exists(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextOption].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SslContextOption"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractConstant].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextOption:67,1"
      Dst: "[io.netty.util.AbstractConstant].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextOption].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SslContextOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ConstantPool].nextId()"
    - "[io.netty.handler.ssl.SslContextOption].<init>(int,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextOption:76,1"
      Dst: "[io.netty.util.ConstantPool].nextId()"
    - Src: "io.netty.handler.ssl.SslContextOption:76,1"
      Dst: "[io.netty.handler.ssl.SslContextOption].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextOption].validate(java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.SslContextOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextOption:84,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextOption].<init>(int,java.lang.String,io.netty.handler.ssl.SslContextOption$1)"
    functionSourceFile: "io.netty.handler.ssl.SslContextOption"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.String"
    - "io.netty.handler.ssl.SslContextOption$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextOption].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextOption:31,1"
      Dst: "[io.netty.handler.ssl.SslContextOption].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslEngineType$2].<init>(java.lang.String,int,boolean,io.netty.handler.codec.ByteToMessageDecoder$Cumulator)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslEngineType$2"
    linkageType: ""
    functionLinenumber: 246
    functionLinenumberEnd: 248
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "boolean"
    - "io.netty.handler.codec.ByteToMessageDecoder$Cumulator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler$SslEngineType].<init>(java.lang.String,int,boolean,io.netty.handler.codec.ByteToMessageDecoder$Cumulator,io.netty.handler.ssl.SslHandler$1)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslEngineType$2:247,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslEngineType].<init>(java.lang.String,int,boolean,io.netty.handler.codec.ByteToMessageDecoder$Cumulator,io.netty.handler.ssl.SslHandler$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslEngineType$2].unwrap(io.netty.handler.ssl.SslHandler,io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslEngineType$2"
    linkageType: ""
    functionLinenumber: 249
    functionLinenumberEnd: 271
    functionDepth: 2
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 4
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.handler.ssl.SslHandler].access$200(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.handler.ssl.SslHandler].access$300(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.handler.ssl.SslHandler].access$100(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.handler.ssl.ConscryptAlpnSslEngine].unwrap(java.nio.ByteBuffer[],java.nio.ByteBuffer[])"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffers(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    - "[io.netty.handler.ssl.JdkSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    - "[javax.net.ssl.SSLEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    - "[javax.net.ssl.SSLEngineResult].bytesProduced()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    functionUses: 1
    ICount: 36
    EdgeCount: 89
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler$SslEngineType$2:253"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslEngineType$2:265"
        BranchSideFuncs:
        - "access$100(io.netty.handler.ssl.SslHandler)"
        - "unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
        - "readerIndex()"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslEngineType$2:250,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.handler.ssl.SslHandler$SslEngineType$2:251,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.ssl.SslHandler$SslEngineType$2:258,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$200(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler$SslEngineType$2:258,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.handler.ssl.SslHandler$SslEngineType$2:258,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$300(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.ssl.SslHandler$SslEngineType$2:259,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$100(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler$SslEngineType$2:260,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.ssl.SslHandler$SslEngineType$2:260,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - Src: "io.netty.handler.ssl.SslHandler$SslEngineType$2:259,1"
      Dst: "[io.netty.handler.ssl.ConscryptAlpnSslEngine].unwrap(java.nio.ByteBuffer[],java.nio.ByteBuffer[])"
    - Src: "io.netty.handler.ssl.SslHandler$SslEngineType$2:266,1"
      Dst: "[javax.net.ssl.SSLEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.SslHandler$SslEngineType$2:269,1"
      Dst: "[javax.net.ssl.SSLEngineResult].bytesProduced()"
    - Src: "io.netty.handler.ssl.SslHandler$SslEngineType$2:269,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$200(io.netty.handler.ssl.SslHandler)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "java.nio.ByteBuffer[]"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$300(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].toByteBuffer(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].toByteBuffer(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].toByteBuffer(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1503
    functionLinenumberEnd: 1506
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].nioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 52
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1504"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1505"
        BranchSideFuncs:
        - "nioBuffer(int,int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1504"
        BranchSideFuncs:
        - "nioBuffer(int,int)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1504,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.handler.ssl.SslHandler:1504,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.handler.ssl.SslHandler:1505,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler].access$100(io.netty.handler.ssl.SslHandler)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "javax.net.ssl.SSLEngine"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslEngineType$2].allocateWrapBuffer(io.netty.handler.ssl.SslHandler,io.netty.buffer.ByteBufAllocator,int,int)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslEngineType$2"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 278
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.buffer.ByteBufAllocator"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int)"
    - "[io.netty.handler.ssl.SslHandler].access$100(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.handler.ssl.ConscryptAlpnSslEngine].calculateOutNetBufSize(int,int)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslEngineType$2:277,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$100(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler$SslEngineType$2:277,1"
      Dst: "[io.netty.handler.ssl.ConscryptAlpnSslEngine].calculateOutNetBufSize(int,int)"
    - Src: "io.netty.handler.ssl.SslHandler$SslEngineType$2:276,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslEngineType$2].calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslEngineType$2"
    linkageType: ""
    functionLinenumber: 281
    functionLinenumberEnd: 283
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslEngineType$2].jdkCompatibilityMode(javax.net.ssl.SSLEngine)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslEngineType$2"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 288
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLEngine"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long,long)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long,long,java.lang.String,boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:30,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long,long,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long,long,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 9
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "long"
    - "long"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long)"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long)"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].<init>(long,java.lang.String,boolean,io.netty.handler.codec.http.multipart.HttpData)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.MixedFileUpload:37"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.MixedFileUpload:37"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.MixedFileUpload:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:37,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long)"
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:37,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long)"
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:37,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].<init>(long,java.lang.String,boolean,io.netty.handler.codec.http.multipart.HttpData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getContentTransferEncoding()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.FileUpload].getContentTransferEncoding()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:46,1"
      Dst: "[io.netty.handler.codec.http.multipart.FileUpload].getContentTransferEncoding()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getFilename()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.FileUpload].getFilename()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:51,1"
      Dst: "[io.netty.handler.codec.http.multipart.FileUpload].getFilename()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].setContentTransferEncoding(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.FileUpload].setContentTransferEncoding(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:56,1"
      Dst: "[io.netty.handler.codec.http.multipart.FileUpload].setContentTransferEncoding(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].setFilename(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.FileUpload].setFilename(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:61,1"
      Dst: "[io.netty.handler.codec.http.multipart.FileUpload].setFilename(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].setContentType(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.FileUpload].setContentType(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:66,1"
      Dst: "[io.netty.handler.codec.http.multipart.FileUpload].setContentType(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getContentType()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.FileUpload].getContentType()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:71,1"
      Dst: "[io.netty.handler.codec.http.multipart.FileUpload].getContentType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].makeDiskData()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].getName()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].getFilename()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].getContentType()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].getContentTransferEncoding()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].getCharset()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].definedLength()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].getMaxSize()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].setMaxSize(long)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:77,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getName()"
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:77,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getFilename()"
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:77,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getContentType()"
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:77,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getContentTransferEncoding()"
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:77,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getCharset()"
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:77,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedFileUpload].definedLength()"
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:77,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long,java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:79,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getMaxSize()"
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:79,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].setMaxSize(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getName()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getName()"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getCharset()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.nio.charset.Charset"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getCharset()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getCharset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].definedLength()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].definedLength()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].definedLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getMaxSize()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getMaxSize()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getMaxSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].copy()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].copy()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:86,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].duplicate()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].duplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:92,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].retainedDuplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:98,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:104,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].touch()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].touch()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:110,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].touch(java.lang.Object)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:116,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].retain()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].retain()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:122,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:128,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getFile()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getFile()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getFile()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getChunk(int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getChunk(int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getChunk(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].toString()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    functionUses: 20
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].equals(java.lang.Object)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].hashCode()"
    functionUses: 6
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getHttpDataType()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData$HttpDataType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getHttpDataType()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getHttpDataType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].isCompleted()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].isCompleted()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].isCompleted()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].setContent(java.io.InputStream)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setContent(java.io.InputStream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setContent(java.io.InputStream)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].setContent(java.io.File)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setContent(java.io.File)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setContent(java.io.File)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].setContent(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setContent(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setContent(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].setCharset(java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setCharset(java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setCharset(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].renameTo(java.io.File)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].renameTo(java.io.File)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].renameTo(java.io.File)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].length()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].length()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].isInMemory()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].isInMemory()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].isInMemory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getString(java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getString(java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getString(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getString()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getString()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getString()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].getByteBuf()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getByteBuf()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getByteBuf()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].get()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].get()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].get()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].delete()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].delete()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].delete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].addContent(io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].addContent(io.netty.buffer.ByteBuf,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].addContent(io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].checkSize(long)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].checkSize(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].checkSize(long)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].content()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].content()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].content()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedFileUpload].setMaxSize(long)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setMaxSize(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedFileUpload:25,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setMaxSize(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].visit(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor"
    linkageType: ""
    functionLinenumber: 678
    functionLinenumberEnd: 684
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$100(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritable(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].markedWritability()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].notifyWritabilityChanged(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:680"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:683"
        BranchSideFuncs:
        - "notifyWritabilityChanged(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:682"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:679,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$100(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:680,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritable(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:680,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].markedWritability()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:681,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].notifyWritabilityChanged(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].markedWritability()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 313
    functionLinenumberEnd: 315
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].notifyWritabilityChanged(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor"
    linkageType: ""
    functionLinenumber: 744
    functionLinenumberEnd: 752
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].markedWritability(boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].markedWritability()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].access$1300(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener].writabilityChanged(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1400()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2RemoteFlowController$Listener].writabilityChanged(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    functionUses: 3
    ICount: 16
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:745"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:745"
        BranchSideFuncs:
        - "error(java.lang.String,java.lang.Throwable)"
        - "markedWritability()"
        - "access$1300(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
        - "writabilityChanged(io.netty.handler.codec.http2.Http2Stream)"
        - "markedWritability(boolean)"
        - "access$1400()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:744"
        BranchSideFuncs:
        - "markedWritability()"
        - "markedWritability(boolean)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:745,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].markedWritability()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:745,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].markedWritability(boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:747,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].access$1300(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:747,1"
      Dst: "[io.netty.handler.codec.http2.Http2RemoteFlowController$Listener].writabilityChanged(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:749,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1400()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:749,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].markedWritability(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 320
    functionLinenumberEnd: 323
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].access$1300(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 272
    functionLinenumberEnd: 274
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].windowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor"
    linkageType: ""
    functionLinenumber: 687
    functionLinenumberEnd: 695
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].windowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkStateWritability(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:688,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].windowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:690,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkStateWritability(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:692,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].windowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor"
    linkageType: ""
    functionLinenumber: 567
    functionLinenumberEnd: 570
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].windowSize(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor:568,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].windowSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].windowSize(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 332
    functionLinenumberEnd: 335
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkStateWritability(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor"
    linkageType: ""
    functionLinenumber: 734
    functionLinenumberEnd: 743
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritable(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].markedWritability()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$800(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkAllWritabilityChanged()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].notifyWritabilityChanged(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    functionUses: 2
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:735"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:742"
        BranchSideFuncs:
        - "access$800(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:741"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:736"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:739"
        BranchSideFuncs:
        - "checkAllWritabilityChanged()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:738"
        BranchSideFuncs:
        - "notifyWritabilityChanged(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:735,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritable(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:735,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].markedWritability()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:736,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$800(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:737,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkAllWritabilityChanged()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:739,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].notifyWritabilityChanged(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkAllWritabilityChanged()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor"
    linkageType: ""
    functionLinenumber: 763
    functionLinenumberEnd: 767
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$800(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritableConnection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].markedWritability(boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1100(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    - "[io.netty.handler.codec.http2.Http2Connection].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    functionUses: 4
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:764,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$800(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:764,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritableConnection()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:764,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].markedWritability(boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:765,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1100(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:765,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].incrementWindowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor"
    linkageType: ""
    functionLinenumber: 697
    functionLinenumberEnd: 701
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].incrementWindowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkStateWritability(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:698,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].incrementWindowSize(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:699,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkStateWritability(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].initialWindowSize(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor"
    linkageType: ""
    functionLinenumber: 703
    functionLinenumberEnd: 711
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].initialWindowSize(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritableConnection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkAllWritabilityChanged()"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:705"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:709"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:704,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].initialWindowSize(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:705,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritableConnection()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:708,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkAllWritabilityChanged()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].enqueueFrame(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor"
    linkageType: ""
    functionLinenumber: 713
    functionLinenumberEnd: 717
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    - "io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].enqueueFrame(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkConnectionThenStreamWritabilityChanged(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:714,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].enqueueFrame(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:715,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkConnectionThenStreamWritabilityChanged(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkConnectionThenStreamWritabilityChanged(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor"
    linkageType: ""
    functionLinenumber: 754
    functionLinenumberEnd: 761
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$800(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritableConnection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].markedWritability()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkAllWritabilityChanged()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritable(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].notifyWritabilityChanged(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    functionUses: 2
    ICount: 14
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:755"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:757"
        BranchSideFuncs:
        - "checkAllWritabilityChanged()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:756"
        BranchSideFuncs:
        - "isWritable(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
        - "markedWritability()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:757"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:760"
        BranchSideFuncs:
        - "notifyWritabilityChanged(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:759"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:755,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritableConnection()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:755,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$800(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:755,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].markedWritability()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:756,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkAllWritabilityChanged()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:757,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].isWritable(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:758,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].notifyWritabilityChanged(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].stateCancelled(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor"
    linkageType: ""
    functionLinenumber: 720
    functionLinenumberEnd: 726
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkConnectionThenStreamWritabilityChanged(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:721,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkConnectionThenStreamWritabilityChanged(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:723,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].channelWritabilityChange()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor"
    linkageType: ""
    functionLinenumber: 728
    functionLinenumberEnd: 733
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1200(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$800(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].markedWritability()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkAllWritabilityChanged()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:729"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:732"
        BranchSideFuncs:
        - "checkAllWritabilityChanged()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:731"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:729,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$800(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:729,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].markedWritability()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:729,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$1200(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor:730,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].checkAllWritabilityChanged()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$1"
    linkageType: ""
    functionLinenumber: 521
    functionLinenumberEnd: 527
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.stream.ChunkedWriteHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$6].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$5].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.bootstrap.AbstractBootstrap$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.compression.JZlibEncoder$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.stream.ChunkedWriteHandler$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.MessageAggregator$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.group.DefaultChannelGroup$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.ThreadPerChannelEventLoop$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.socket.oio.OioSocketChannel$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ControlFrameLimitEncoder$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.ChannelFutureListener$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$5].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.bootstrap.Bootstrap$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.ssl.SslHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.util.concurrent.PromiseAggregator].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.ssl.SslHandler$10].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.timeout.IdleStateHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$7].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.util.concurrent.PromiseNotifier].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.embedded.EmbeddedChannel$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.proxy.ProxyHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledBase].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsQueryContext$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.pool.SimpleChannelPool$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.address.DynamicAddressConnectHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsNameResolver$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.ChannelFutureListener$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.VoidChannelPromise$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.ThreadPerChannelEventLoop$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$4].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsNameResolver$5].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.ChannelFutureListener$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.ipfilter.UniqueIpFilter$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.channel.socket.oio.OioSocketChannel$3].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$2].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$1].operationComplete(io.netty.util.concurrent.Future)"
    - "[io.netty.util.concurrent.GenericFutureListener].operationComplete(io.netty.util.concurrent.Future)"
    functionUses: 1
    ICount: 12
    EdgeCount: 243
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$1:522,1"
      Dst: "[io.netty.util.concurrent.GenericFutureListener].operationComplete(io.netty.util.concurrent.Future)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$1"
    linkageType: ""
    functionLinenumber: 517
    functionLinenumberEnd: 519
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$1:518,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2SecurityUtil].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2SecurityUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2SecurityUtil:79,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DatagramDnsQueryContext].newQuery(int)"
    functionSourceFile: "io.netty.resolver.dns.DatagramDnsQueryContext"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 3
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,int)"
    - "[io.netty.resolver.dns.DnsQueryContext].nameServerAddr()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DatagramDnsQueryContext:39,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].nameServerAddr()"
    - Src: "io.netty.resolver.dns.DatagramDnsQueryContext:39,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsQuery].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuery].<init>(int,io.netty.handler.codec.dns.DnsOpCode)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuery"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.dns.DnsOpCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].<init>(int,io.netty.handler.codec.dns.DnsOpCode)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:42,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].<init>(int,io.netty.handler.codec.dns.DnsOpCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DatagramDnsQueryContext].channel()"
    functionSourceFile: "io.netty.resolver.dns.DatagramDnsQueryContext"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "io.netty.channel.Channel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsQueryContext].parent()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DatagramDnsQueryContext:44,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].parent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DatagramDnsQueryContext].protocol()"
    functionSourceFile: "io.netty.resolver.dns.DatagramDnsQueryContext"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.InternetProtocolFamily].values()"
    functionSourceFile: "io.netty.channel.socket.InternetProtocolFamily"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "io.netty.channel.socket.InternetProtocolFamily[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.InternetProtocolFamily:27,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.InternetProtocolFamily].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.channel.socket.InternetProtocolFamily"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.socket.InternetProtocolFamily"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.InternetProtocolFamily:27,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.InternetProtocolFamily].<init>(java.lang.String,int,java.lang.Class,int)"
    functionSourceFile: "io.netty.channel.socket.InternetProtocolFamily"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.InternetProtocolFamily:34,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.InternetProtocolFamily].addressNumber()"
    functionSourceFile: "io.netty.channel.socket.InternetProtocolFamily"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.InternetProtocolFamily].of(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.socket.InternetProtocolFamily"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.socket.InternetProtocolFamily"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.InternetProtocolFamily:73"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.InternetProtocolFamily:76"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.InternetProtocolFamily:75"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.InternetProtocolFamily:76"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.InternetProtocolFamily:79"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.InternetProtocolFamily:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.InternetProtocolFamily:79,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.socket.InternetProtocolFamily:79,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.socket.InternetProtocolFamily:79,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.channel.socket.InternetProtocolFamily:79,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.socket.InternetProtocolFamily:79,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4J2LoggerFactory].<init>()"
    functionSourceFile: "io.netty.util.internal.logging.Log4J2LoggerFactory"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.InternalLoggerFactory].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4J2LoggerFactory:28,1"
      Dst: "[io.netty.util.internal.logging.InternalLoggerFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4J2LoggerFactory].newInstance(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.Log4J2LoggerFactory"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 1
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].<init>(org.apache.logging.log4j.Logger)"
    - "[org.apache.logging.log4j.LogManager].getLogger(java.lang.String)"
    functionUses: 5
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4J2LoggerFactory:33,1"
      Dst: "[org.apache.logging.log4j.LogManager].getLogger(java.lang.String)"
    - Src: "io.netty.util.internal.logging.Log4J2LoggerFactory:33,1"
      Dst: "[io.netty.util.internal.logging.Log4J2Logger].<init>(org.apache.logging.log4j.Logger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4J2Logger].<init>(org.apache.logging.log4j.Logger)"
    functionSourceFile: "io.netty.util.internal.logging.Log4J2Logger"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.apache.logging.log4j.Logger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.logging.log4j.spi.ExtendedLoggerWrapper].<init>(org.apache.logging.log4j.spi.ExtendedLogger,java.lang.String,org.apache.logging.log4j.message.MessageFactory)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[org.apache.logging.log4j.Logger].getName()"
    - "[org.apache.logging.log4j.Logger].getMessageFactory()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.Log4J2Logger:57"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.Log4J2Logger:60"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.logging.Log4J2Logger:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4J2Logger:56,1"
      Dst: "[org.apache.logging.log4j.Logger].getName()"
    - Src: "io.netty.util.internal.logging.Log4J2Logger:56,1"
      Dst: "[org.apache.logging.log4j.Logger].getMessageFactory()"
    - Src: "io.netty.util.internal.logging.Log4J2Logger:56,1"
      Dst: "[org.apache.logging.log4j.spi.ExtendedLoggerWrapper].<init>(org.apache.logging.log4j.spi.ExtendedLogger,java.lang.String,org.apache.logging.log4j.message.MessageFactory)"
    - Src: "io.netty.util.internal.logging.Log4J2Logger:58,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.RuleBasedIpFilter].<init>(io.netty.handler.ipfilter.IpFilterRule[])"
    functionSourceFile: "io.netty.handler.ipfilter.RuleBasedIpFilter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ipfilter.IpFilterRule[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ipfilter.RuleBasedIpFilter].<init>(boolean,io.netty.handler.ipfilter.IpFilterRule[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.RuleBasedIpFilter:58,1"
      Dst: "[io.netty.handler.ipfilter.RuleBasedIpFilter].<init>(boolean,io.netty.handler.ipfilter.IpFilterRule[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.RuleBasedIpFilter].<init>(boolean,io.netty.handler.ipfilter.IpFilterRule[])"
    functionSourceFile: "io.netty.handler.ipfilter.RuleBasedIpFilter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.handler.ipfilter.IpFilterRule[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ipfilter.AbstractRemoteAddressFilter].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ipfilter.RuleBasedIpFilter:75"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.RuleBasedIpFilter:80"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.RuleBasedIpFilter:79"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.RuleBasedIpFilter:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.RuleBasedIpFilter:69"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.RuleBasedIpFilter:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.RuleBasedIpFilter:69,1"
      Dst: "[io.netty.handler.ipfilter.AbstractRemoteAddressFilter].<init>()"
    - Src: "io.netty.handler.ipfilter.RuleBasedIpFilter:70,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ipfilter.RuleBasedIpFilter:73,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.ipfilter.RuleBasedIpFilter:77,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ipfilter.RuleBasedIpFilter].accept(io.netty.channel.ChannelHandlerContext,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.handler.ipfilter.RuleBasedIpFilter"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule].matches(java.net.InetSocketAddress)"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule].matches(java.net.InetSocketAddress)"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule].matches(java.net.InetSocketAddress)"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule].ruleType()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.handler.ipfilter.IpFilterRule].matches(java.net.InetSocketAddress)"
    - "[io.netty.handler.ipfilter.IpFilterRule].ruleType()"
    functionUses: 1
    ICount: 21
    EdgeCount: 100
    BranchProfiles:
    - Branch String: "io.netty.handler.ipfilter.RuleBasedIpFilter:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.RuleBasedIpFilter:90"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "matches(java.net.InetSocketAddress)"
      - BranchSide: "io.netty.handler.ipfilter.RuleBasedIpFilter:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.RuleBasedIpFilter:85"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.RuleBasedIpFilter:88"
        BranchSideFuncs:
        - "ruleType()"
      - BranchSide: "io.netty.handler.ipfilter.RuleBasedIpFilter:87"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.RuleBasedIpFilter:86"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.RuleBasedIpFilter:85"
        BranchSideFuncs:
        - "ruleType()"
    Callsites:
    - Src: "io.netty.handler.ipfilter.RuleBasedIpFilter:84,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.ipfilter.RuleBasedIpFilter:84,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ipfilter.RuleBasedIpFilter:84,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ipfilter.RuleBasedIpFilter:85,1"
      Dst: "[io.netty.handler.ipfilter.IpFilterRule].matches(java.net.InetSocketAddress)"
    - Src: "io.netty.handler.ipfilter.RuleBasedIpFilter:86,1"
      Dst: "[io.netty.handler.ipfilter.IpFilterRule].ruleType()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ipfilter.RuleBasedIpFilter].accept(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress)"
    functionSourceFile: "io.netty.handler.ipfilter.RuleBasedIpFilter"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ipfilter.RuleBasedIpFilter].accept(io.netty.channel.ChannelHandlerContext,java.net.InetSocketAddress)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.RuleBasedIpFilter:43,1"
      Dst: "[io.netty.handler.ipfilter.RuleBasedIpFilter].accept(io.netty.channel.ChannelHandlerContext,java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsQueryLifecycleObserverFactory].<init>()"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsQueryLifecycleObserverFactory"
    linkageType: ""
    functionLinenumber: 22
    functionLinenumberEnd: 25
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.NoopDnsQueryLifecycleObserverFactory:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsQueryLifecycleObserverFactory].newDnsQueryLifecycleObserver(io.netty.handler.codec.dns.DnsQuestion)"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsQueryLifecycleObserverFactory"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsQueryLifecycleObserver"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsQuestion"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$2].<init>(io.netty.resolver.dns.DnsNameResolver)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$2"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 246
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$2:245,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$2].initialValue()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$2"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 249
    functionDepth: 1
    returnType: "io.netty.resolver.dns.DnsServerAddressStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].access$100(io.netty.resolver.dns.DnsNameResolver)"
    - "[io.netty.resolver.dns.UniSequentialDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.MultiDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.DefaultDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.DnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$2:248,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].access$100(io.netty.resolver.dns.DnsNameResolver)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$2:248,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].<init>(io.netty.handler.codec.http2.ReadOnlyHttp2Headers,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.ReadOnlyHttp2Headers"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].access$100(io.netty.handler.codec.http2.ReadOnlyHttp2Headers)"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].access$200(io.netty.handler.codec.http2.ReadOnlyHttp2Headers)"
    - "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].calculateNext()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:790"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:790"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:789"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:793,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:790,1"
      Dst: "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].access$100(io.netty.handler.codec.http2.ReadOnlyHttp2Headers)"
    - Src: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:790,1"
      Dst: "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].access$200(io.netty.handler.codec.http2.ReadOnlyHttp2Headers)"
    - Src: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:794,1"
      Dst: "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:796,1"
      Dst: "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].calculateNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    functionSourceFile: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator"
    linkageType: ""
    functionLinenumber: 800
    functionLinenumberEnd: 802
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 228
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:801"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:800"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    functionSourceFile: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator"
    linkageType: ""
    functionLinenumber: 805
    functionLinenumberEnd: 812
    functionDepth: 6
    returnType: "java.lang.CharSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[java.util.NoSuchElementException].<init>()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].calculateNext()"
    functionUses: 229
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:806"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:809"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:808"
        BranchSideFuncs:
        - "calculateNext()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:806,1"
      Dst: "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - Src: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:807,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    - Src: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:810,1"
      Dst: "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].calculateNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].calculateNext()"
    functionSourceFile: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator"
    linkageType: ""
    functionLinenumber: 819
    functionLinenumberEnd: 838
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].hashCode()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].access$100(io.netty.handler.codec.http2.ReadOnlyHttp2Headers)"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].access$200(io.netty.handler.codec.http2.ReadOnlyHttp2Headers)"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].calculateNext()"
    functionUses: 2
    ICount: 44
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:820"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:830"
        BranchSideFuncs:
        - "contentEqualsIgnoreCase(java.lang.CharSequence)"
        - "hashCode()"
      - BranchSide: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:829"
        BranchSideFuncs:
        - "access$100(io.netty.handler.codec.http2.ReadOnlyHttp2Headers)"
    - Branch String: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:822"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:820"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:819"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:822"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:820"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:819"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:823"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:827"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:826"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:830"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:835"
        BranchSideFuncs:
        - "access$200(io.netty.handler.codec.http2.ReadOnlyHttp2Headers)"
        - "calculateNext()"
      - BranchSide: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:834"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:822,1"
      Dst: "[io.netty.util.AsciiString].hashCode()"
    - Src: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:822,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:830,1"
      Dst: "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].access$100(io.netty.handler.codec.http2.ReadOnlyHttp2Headers)"
    - Src: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:832,1"
      Dst: "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].access$200(io.netty.handler.codec.http2.ReadOnlyHttp2Headers)"
    - Src: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:833,1"
      Dst: "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].calculateNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].access$100(io.netty.handler.codec.http2.ReadOnlyHttp2Headers)"
    functionSourceFile: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "io.netty.util.AsciiString[]"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.ReadOnlyHttp2Headers"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].access$200(io.netty.handler.codec.http2.ReadOnlyHttp2Headers)"
    functionSourceFile: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "io.netty.util.AsciiString[]"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.ReadOnlyHttp2Headers"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].remove()"
    functionSourceFile: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator"
    linkageType: ""
    functionLinenumber: 815
    functionLinenumberEnd: 817
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:816,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.NativeInetAddress].address()"
    functionSourceFile: "io.netty.channel.unix.NativeInetAddress"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.NativeInetAddress].scopeId()"
    functionSourceFile: "io.netty.channel.unix.NativeInetAddress"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.NativeInetAddress].address(byte[],int,int)"
    functionSourceFile: "io.netty.channel.unix.NativeInetAddress"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 102
    functionDepth: 1
    returnType: "java.net.InetSocketAddress"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.NativeInetAddress].decodeInt(byte[],int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.net.InetAddress].getByAddress(byte[])"
    - "[java.net.Inet6Address:java.net.InetAddress].getByAddress(java.lang.String,byte[],int)"
    - "[java.lang.Error].<init>()"
    - "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    - "[java.lang.Error].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.net.Inet6Address].getByAddress(java.lang.String,byte[],int)"
    functionUses: 4
    ICount: 29
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.NativeInetAddress:72,1"
      Dst: "[io.netty.channel.unix.NativeInetAddress].decodeInt(byte[],int)"
    - Src: "io.netty.channel.unix.NativeInetAddress:82,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "io.netty.channel.unix.NativeInetAddress:83,1"
      Dst: "[java.net.InetAddress].getByAddress(byte[])"
    - Src: "io.netty.channel.unix.NativeInetAddress:94,1"
      Dst: "[java.net.Inet6Address].getByAddress(java.lang.String,byte[],int)"
    - Src: "io.netty.channel.unix.NativeInetAddress:97,1"
      Dst: "[java.lang.Error].<init>()"
    - Src: "io.netty.channel.unix.NativeInetAddress:99,1"
      Dst: "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    - Src: "io.netty.channel.unix.NativeInetAddress:101,1"
      Dst: "[java.lang.Error].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.NativeInetAddress].decodeInt(byte[],int)"
    functionSourceFile: "io.netty.channel.unix.NativeInetAddress"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder$2].<init>(io.netty.handler.codec.compression.JZlibEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder$2"
    linkageType: ""
    functionLinenumber: 326
    functionLinenumberEnd: 328
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.compression.JZlibEncoder"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder$2:327,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder$2"
    linkageType: ""
    functionLinenumber: 329
    functionLinenumberEnd: 332
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder$2:330,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder$2"
    linkageType: ""
    functionLinenumber: 326
    functionLinenumberEnd: 328
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JZlibEncoder$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder$2:327,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder$2].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DefaultByteBufHolder].refCnt()"
    functionSourceFile: "io.netty.buffer.DefaultByteBufHolder"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.buffer.EmptyByteBuf].refCnt()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 3
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DefaultByteBufHolder:82,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DefaultByteBufHolder].release()"
    functionSourceFile: "io.netty.buffer.DefaultByteBufHolder"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.util.ReferenceCounted].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 8
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DefaultByteBufHolder:111,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DefaultByteBufHolder].release(int)"
    functionSourceFile: "io.netty.buffer.DefaultByteBufHolder"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release(int)"
    - "[io.netty.buffer.WrappedByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release(int)"
    - "[io.netty.buffer.SwappedByteBuf].release(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release(int)"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf].release(int)"
    - "[io.netty.util.ReferenceCounted].release(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DefaultByteBufHolder:116,1"
      Dst: "[io.netty.util.ReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DefaultByteBufHolder].contentToString()"
    functionSourceFile: "io.netty.buffer.DefaultByteBufHolder"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString()"
    - "[io.netty.buffer.AbstractByteBuf].toString()"
    - "[io.netty.buffer.FixedCompositeByteBuf].toString()"
    - "[io.netty.buffer.CompositeByteBuf].toString()"
    - "[io.netty.buffer.SwappedByteBuf].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString()"
    - "[io.netty.buffer.EmptyByteBuf].toString()"
    - "[io.netty.buffer.ByteBuf].toString()"
    functionUses: 5
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DefaultByteBufHolder:124,1"
      Dst: "[io.netty.buffer.ByteBuf].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DefaultByteBufHolder].toString()"
    functionSourceFile: "io.netty.buffer.DefaultByteBufHolder"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.buffer.DefaultByteBufHolder].contentToString()"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 20
    ICount: 11
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DefaultByteBufHolder:129,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.DefaultByteBufHolder:129,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.buffer.DefaultByteBufHolder:129,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.DefaultByteBufHolder:129,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.buffer.DefaultByteBufHolder:129,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].contentToString()"
    - Src: "io.netty.buffer.DefaultByteBufHolder:129,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.DefaultByteBufHolder].equals(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.DefaultByteBufHolder"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.AbstractByteBuf].equals(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].equals(java.lang.Object)"
    functionUses: 11
    ICount: 14
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.buffer.DefaultByteBufHolder:145"
      Branch Sides:
      - BranchSide: "io.netty.buffer.DefaultByteBufHolder:148"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.DefaultByteBufHolder:147"
        BranchSideFuncs:
        - "getClass()"
    - Branch String: "io.netty.buffer.DefaultByteBufHolder:148"
      Branch Sides:
      - BranchSide: "io.netty.buffer.DefaultByteBufHolder:151"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.buffer.DefaultByteBufHolder:150"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.DefaultByteBufHolder:148"
      Branch Sides:
      - BranchSide: "io.netty.buffer.DefaultByteBufHolder:151"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.buffer.DefaultByteBufHolder:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.DefaultByteBufHolder:148,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.buffer.DefaultByteBufHolder:149,1"
      Dst: "[io.netty.buffer.ByteBuf].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.DefaultByteBufHolder].hashCode()"
    functionSourceFile: "io.netty.buffer.DefaultByteBufHolder"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].hashCode()"
    - "[io.netty.buffer.SwappedByteBuf].hashCode()"
    - "[io.netty.buffer.AbstractByteBuf].hashCode()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hashCode()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hashCode()"
    - "[io.netty.buffer.EmptyByteBuf].hashCode()"
    - "[io.netty.buffer.ByteBuf].hashCode()"
    functionUses: 7
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.DefaultByteBufHolder:156,1"
      Dst: "[io.netty.buffer.ByteBuf].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.MessageToMessageCodec$2].<init>(io.netty.handler.codec.MessageToMessageCodec)"
    functionSourceFile: "io.netty.handler.codec.MessageToMessageCodec$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.MessageToMessageCodec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.MessageToMessageCodec$2:71,1"
      Dst: "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.MessageToMessageCodec$2].acceptInboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.MessageToMessageCodec$2"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageCodec].acceptInboundMessage(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler].acceptInboundMessage(java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.MessageToMessageCodec$2:75,1"
      Dst: "[io.netty.handler.codec.MessageToMessageCodec].acceptInboundMessage(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.MessageToMessageCodec$2].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.MessageToMessageCodec$2"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.http.HttpContentEncoder].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.MessageToMessageCodec].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.MessageToMessageCodec$2:81,1"
      Dst: "[io.netty.handler.codec.MessageToMessageCodec].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponseEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponseEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsResponseEncoder].<init>(io.netty.handler.codec.dns.DnsRecordEncoder)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseEncoder:46,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponseEncoder].<init>(io.netty.handler.codec.dns.DnsRecordEncoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponseEncoder].<init>(io.netty.handler.codec.dns.DnsRecordEncoder)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponseEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecordEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseEncoder:52,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseEncoder:53,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponseEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.channel.AddressedEnvelope<DnsResponse,InetSocketAddress>,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponseEncoder"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 68
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.AddressedEnvelope<DnsResponse,InetSocketAddress>"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.channel.DefaultAddressedEnvelope:io.netty.handler.codec.dns.DatagramDnsQuery:io.netty.handler.codec.dns.DatagramDnsResponse:io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponseEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.channel.AddressedEnvelope)"
    - "[io.netty.handler.codec.dns.DnsMessageUtil].encodeDnsResponse(io.netty.handler.codec.dns.DnsRecordEncoder,io.netty.handler.codec.dns.DnsResponse,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.channel.AddressedEnvelope].recipient()"
    - "[io.netty.channel.AddressedEnvelope].content()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 15
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseEncoder:60,1"
      Dst: "[io.netty.channel.AddressedEnvelope].recipient()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseEncoder:61,1"
      Dst: "[io.netty.channel.AddressedEnvelope].content()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseEncoder:62,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponseEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.channel.AddressedEnvelope)"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseEncoder:64,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].encodeDnsResponse(io.netty.handler.codec.dns.DnsRecordEncoder,io.netty.handler.codec.dns.DnsResponse,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseEncoder:66,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseEncoder:66,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsMessageUtil].encodeDnsResponse(io.netty.handler.codec.dns.DnsRecordEncoder,io.netty.handler.codec.dns.DnsResponse,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsMessageUtil"
    linkageType: ""
    functionLinenumber: 236
    functionLinenumberEnd: 249
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecordEncoder"
    - "io.netty.handler.codec.dns.DnsResponse"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsMessageUtil].encodeHeader(io.netty.handler.codec.dns.DnsResponse,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DnsMessageUtil].encodeQuestions(io.netty.handler.codec.dns.DnsRecordEncoder,io.netty.handler.codec.dns.DnsResponse,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DnsMessageUtil].encodeRecords(io.netty.handler.codec.dns.DnsRecordEncoder,io.netty.handler.codec.dns.DnsResponse,io.netty.handler.codec.dns.DnsSection,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 2
    ICount: 19
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:244"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:248"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:247"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:244"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:247"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:246"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:237,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].encodeHeader(io.netty.handler.codec.dns.DnsResponse,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:238,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].encodeQuestions(io.netty.handler.codec.dns.DnsRecordEncoder,io.netty.handler.codec.dns.DnsResponse,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:239,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].encodeRecords(io.netty.handler.codec.dns.DnsRecordEncoder,io.netty.handler.codec.dns.DnsResponse,io.netty.handler.codec.dns.DnsSection,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:245,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DnsMessageUtil].encodeHeader(io.netty.handler.codec.dns.DnsResponse,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsMessageUtil"
    linkageType: ""
    functionLinenumber: 256
    functionLinenumberEnd: 280
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsResponse"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].id()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.dns.DnsOpCode].byteValue()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].opCode()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].isAuthoritativeAnswer()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].isTruncated()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].isRecursionDesired()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].isRecursionAvailable()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].z()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].code()"
    - "[io.netty.handler.codec.dns.DnsResponseCode].intValue()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    - "[io.netty.handler.codec.dns.DnsMessage].id()"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.dns.DnsMessage].opCode()"
    - "[io.netty.handler.codec.dns.DnsResponse].isAuthoritativeAnswer()"
    - "[io.netty.handler.codec.dns.DnsResponse].isTruncated()"
    - "[io.netty.handler.codec.dns.DnsMessage].isRecursionDesired()"
    - "[io.netty.handler.codec.dns.DnsResponse].isRecursionAvailable()"
    - "[io.netty.handler.codec.dns.DnsMessage].z()"
    - "[io.netty.handler.codec.dns.DnsResponse].code()"
    - "[io.netty.handler.codec.dns.DnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    functionUses: 1
    ICount: 44
    EdgeCount: 74
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:260"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:263"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:262"
        BranchSideFuncs:
        - "isTruncated()"
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:263"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:266"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:265"
        BranchSideFuncs:
        - "isRecursionDesired()"
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:266"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:269"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:268"
        BranchSideFuncs:
        - "isRecursionAvailable()"
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:269"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:272"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:271"
        BranchSideFuncs:
        - "writeShort(int)"
        - "code()"
        - "count(io.netty.handler.codec.dns.DnsSection)"
        - "intValue()"
        - "z()"
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:257,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].id()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:257,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:259,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].opCode()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:259,1"
      Dst: "[io.netty.handler.codec.dns.DnsOpCode].byteValue()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:260,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponse].isAuthoritativeAnswer()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:263,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponse].isTruncated()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:266,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].isRecursionDesired()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:269,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponse].isRecursionAvailable()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:272,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].z()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:273,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponse].code()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:273,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponseCode].intValue()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:275,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.dns.DnsOpCode].byteValue()"
    functionSourceFile: "io.netty.handler.codec.dns.DnsOpCode"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsResponseCode].intValue()"
    functionSourceFile: "io.netty.handler.codec.dns.DnsResponseCode"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsMessageUtil].encodeQuestions(io.netty.handler.codec.dns.DnsRecordEncoder,io.netty.handler.codec.dns.DnsResponse,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsMessageUtil"
    linkageType: ""
    functionLinenumber: 281
    functionLinenumberEnd: 287
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecordEncoder"
    - "io.netty.handler.codec.dns.DnsResponse"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeQuestion(io.netty.handler.codec.dns.DnsQuestion,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].recordAt(io.netty.handler.codec.dns.DnsSection,int)"
    - "[io.netty.handler.codec.dns.DnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    - "[io.netty.handler.codec.dns.DnsMessage].recordAt(io.netty.handler.codec.dns.DnsSection,int)"
    - "[io.netty.handler.codec.dns.DnsRecordEncoder].encodeQuestion(io.netty.handler.codec.dns.DnsQuestion,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:283"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:285"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:282,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:284,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].recordAt(io.netty.handler.codec.dns.DnsSection,int)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:284,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecordEncoder].encodeQuestion(io.netty.handler.codec.dns.DnsQuestion,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DnsMessageUtil].encodeRecords(io.netty.handler.codec.dns.DnsRecordEncoder,io.netty.handler.codec.dns.DnsResponse,io.netty.handler.codec.dns.DnsSection,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsMessageUtil"
    linkageType: ""
    functionLinenumber: 289
    functionLinenumberEnd: 295
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecordEncoder"
    - "io.netty.handler.codec.dns.DnsResponse"
    - "io.netty.handler.codec.dns.DnsSection"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeRecord(io.netty.handler.codec.dns.DnsRecord,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].recordAt(io.netty.handler.codec.dns.DnsSection,int)"
    - "[io.netty.handler.codec.dns.DnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    - "[io.netty.handler.codec.dns.DnsMessage].recordAt(io.netty.handler.codec.dns.DnsSection,int)"
    - "[io.netty.handler.codec.dns.DnsRecordEncoder].encodeRecord(io.netty.handler.codec.dns.DnsRecord,io.netty.buffer.ByteBuf)"
    functionUses: 3
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:291"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:293"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:290,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:292,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].recordAt(io.netty.handler.codec.dns.DnsSection,int)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:292,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecordEncoder].encodeRecord(io.netty.handler.codec.dns.DnsRecord,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponseEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.channel.AddressedEnvelope<DnsResponse,InetSocketAddress>)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponseEncoder"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.AddressedEnvelope<DnsResponse,InetSocketAddress>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseEncoder:76,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseEncoder:76,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponseEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponseEncoder"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsResponseEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.channel.AddressedEnvelope,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseEncoder:35,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponseEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.channel.AddressedEnvelope,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 288
    functionLinenumberEnd: 293
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayDeque].<init>(int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:289,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:291,1"
      Dst: "[java.util.ArrayDeque].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].stream()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 308
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].writeAllocatedBytes(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 340
    functionLinenumberEnd: 401
    functionDepth: 7
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].peek()"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].writableWindow()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders].size()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].size()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[java.lang.Math].max(int,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].write(io.netty.channel.ChannelHandlerContext,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders].write(io.netty.channel.ChannelHandlerContext,int)"
    - "[java.util.LinkedList].remove()"
    - "[java.util.ArrayDeque].remove()"
    - "[java.util.concurrent.LinkedBlockingDeque].remove()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].remove()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledBase].writeComplete()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].decrementPendingBytes(int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].decrementFlowControlWindow(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].cancel(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].size()"
    - "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].write(io.netty.channel.ChannelHandlerContext,int)"
    - "[java.util.Deque].remove()"
    - "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].writeComplete()"
    functionUses: 1
    ICount: 85
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:347"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:348"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:347"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:347"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:348"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:347"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:352"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:376"
        BranchSideFuncs:
        - "writableWindow()"
        - "min(int,int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:375"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:352"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:376"
        BranchSideFuncs:
        - "writableWindow()"
        - "min(int,int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:375"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:354"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:359"
        BranchSideFuncs:
        - "peek()"
        - "writableWindow()"
        - "min(int,int)"
        - "write(io.netty.channel.ChannelHandlerContext,int)"
        - "remove()"
        - "writeComplete()"
        - "<init>()"
        - "access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "max(int,int)"
        - "decrementFlowControlWindow(int)"
        - "decrementPendingBytes(int,boolean)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:358"
        BranchSideFuncs:
        - "write(io.netty.channel.ChannelHandlerContext,int)"
        - "access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "max(int,int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:354"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:359"
        BranchSideFuncs:
        - "peek()"
        - "writableWindow()"
        - "min(int,int)"
        - "write(io.netty.channel.ChannelHandlerContext,int)"
        - "remove()"
        - "writeComplete()"
        - "<init>()"
        - "access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "max(int,int)"
        - "decrementFlowControlWindow(int)"
        - "decrementPendingBytes(int,boolean)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:358"
        BranchSideFuncs:
        - "write(io.netty.channel.ChannelHandlerContext,int)"
        - "access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "max(int,int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:363"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:372"
        BranchSideFuncs:
        - "peek()"
        - "writableWindow()"
        - "min(int,int)"
        - "write(io.netty.channel.ChannelHandlerContext,int)"
        - "remove()"
        - "writeComplete()"
        - "<init>()"
        - "access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "max(int,int)"
        - "decrementFlowControlWindow(int)"
        - "decrementPendingBytes(int,boolean)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:371"
        BranchSideFuncs:
        - "size()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:376"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:386"
        BranchSideFuncs:
        - "peek()"
        - "writableWindow()"
        - "min(int,int)"
        - "write(io.netty.channel.ChannelHandlerContext,int)"
        - "remove()"
        - "writeComplete()"
        - "<init>()"
        - "access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "max(int,int)"
        - "decrementFlowControlWindow(int)"
        - "decrementPendingBytes(int,boolean)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:385"
        BranchSideFuncs:
        - "decrementFlowControlWindow(int)"
        - "decrementPendingBytes(int,boolean)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:396"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:null"
        BranchSideFuncs:
        - "cancel(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:396"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:400"
        BranchSideFuncs:
        - "cancel(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:399"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:396"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:400"
        BranchSideFuncs:
        - "cancel(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:399"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:396"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:399"
        BranchSideFuncs:
        - "cancel(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:398"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:347,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:352,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].peek()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:353,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].writableWindow()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:353,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:354,1"
      Dst: "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].size()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:362,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:362,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:362,1"
      Dst: "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].write(io.netty.channel.ChannelHandlerContext,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:367,1"
      Dst: "[java.util.Deque].remove()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:368,1"
      Dst: "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].writeComplete()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:391,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].decrementPendingBytes(int,boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:392,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].decrementFlowControlWindow(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:397,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].cancel(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 26
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].peek()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 462
    functionLinenumberEnd: 464
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].peek()"
    - "[java.util.LinkedList].peek()"
    - "[java.util.concurrent.LinkedBlockingDeque].peek()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].peek()"
    - "[java.util.Deque].peek()"
    functionUses: 1
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:463,1"
      Dst: "[java.util.Deque].peek()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].writableWindow()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 420
    functionLinenumberEnd: 422
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$700(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[java.lang.Math].min(int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:421,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$700(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:421,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].decrementPendingBytes(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 509
    functionLinenumberEnd: 512
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].incrementPendingBytes(int,boolean)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:510,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].incrementPendingBytes(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].decrementFlowControlWindow(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 517
    functionLinenumberEnd: 526
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$800(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].incrementStreamWindow(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 19
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:519,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$800(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:519,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].incrementStreamWindow(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:523,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:523,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:523,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:523,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:523,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].cancel(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 471
    functionLinenumberEnd: 493
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].writeError(io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled,io.netty.handler.codec.http2.Http2Exception)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$600(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor].updateStreamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].updateStreamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$300(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].stateCancelled(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].stateCancelled(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    - "[java.util.Deque].poll()"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.handler.codec.http2.StreamByteDistributor].updateStreamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    functionUses: 6
    ICount: 28
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:474"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:478"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:477"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:479"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:488"
        BranchSideFuncs:
        - "stateCancelled(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
        - "access$300(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "access$600(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "updateStreamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:486"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:483"
        BranchSideFuncs:
        - "writeError(io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled,io.netty.handler.codec.http2.Http2Exception)"
        - "poll()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:478,1"
      Dst: "[java.util.Deque].poll()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:481,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:481,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:484,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].writeError(io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled,io.netty.handler.codec.http2.Http2Exception)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:489,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$600(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:489,1"
      Dst: "[io.netty.handler.codec.http2.StreamByteDistributor].updateStreamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:491,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$300(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:491,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].stateCancelled(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].writeError(io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled,io.netty.handler.codec.http2.Http2Exception)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    linkageType: ""
    functionLinenumber: 531
    functionLinenumberEnd: 536
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled"
    - "io.netty.handler.codec.http2.Http2Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].decrementPendingBytes(int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders].size()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].size()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders].error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].size()"
    - "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:532"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:533"
        BranchSideFuncs:
        - "access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "decrementPendingBytes(int,boolean)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:532"
        BranchSideFuncs:
        - "access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "decrementPendingBytes(int,boolean)"
        - "size()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:532"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:533"
        BranchSideFuncs:
        - "access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "decrementPendingBytes(int,boolean)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:532"
        BranchSideFuncs:
        - "access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
        - "error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "decrementPendingBytes(int,boolean)"
        - "size()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:532,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$500(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:532,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:533,1"
      Dst: "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].size()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:533,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].decrementPendingBytes(int,boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState:534,1"
      Dst: "[io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled].error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].stateCancelled(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor"
    linkageType: ""
    functionLinenumber: 559
    functionLinenumberEnd: 561
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:31,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:31,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].fromText(java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:41,1"
      Dst: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].fromText(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:41,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].<init>(boolean,int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].fromText(java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:65,1"
      Dst: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].fromText(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:65,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].fromText(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    - "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:70"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:69"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:69,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:72,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.nio.charset.Charset].equals(java.lang.Object)"
    - "[io.netty.buffer.Unpooled].copiedBufferUtf8(java.lang.CharSequence)"
    - "[io.netty.buffer.Unpooled].copiedBufferAscii(java.lang.CharSequence)"
    - "[io.netty.buffer.Unpooled].copiedBuffer(java.nio.CharBuffer,java.nio.charset.Charset)"
    - "[java.nio.CharBuffer].wrap(java.lang.CharSequence)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:582"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:585"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:584"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:585"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:588"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:587"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:588"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:592"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:591"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:581,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.Unpooled:582,1"
      Dst: "[java.nio.charset.Charset].equals(java.lang.Object)"
    - Src: "io.netty.buffer.Unpooled:583,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBufferUtf8(java.lang.CharSequence)"
    - Src: "io.netty.buffer.Unpooled:586,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBufferAscii(java.lang.CharSequence)"
    - Src: "io.netty.buffer.Unpooled:589,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBuffer(java.nio.CharBuffer,java.nio.charset.Charset)"
    - Src: "io.netty.buffer.Unpooled:592,1"
      Dst: "[java.nio.CharBuffer].wrap(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].copiedBufferUtf8(java.lang.CharSequence)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].utf8Bytes(java.lang.CharSequence)"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:604"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:596"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:595"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:604"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:607"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:606"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:598,1"
      Dst: "[io.netty.buffer.ByteBufUtil].utf8Bytes(java.lang.CharSequence)"
    - Src: "io.netty.buffer.Unpooled:598,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - Src: "io.netty.buffer.Unpooled:600,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    - Src: "io.netty.buffer.Unpooled:605,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].utf8Bytes(java.lang.CharSequence)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1079
    functionLinenumberEnd: 1081
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[io.netty.buffer.ByteBufUtil].utf8ByteCount(java.lang.CharSequence,int,int)"
    - "[java.lang.CharSequence].length()"
    functionUses: 5
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1080,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.buffer.ByteBufUtil:1080,1"
      Dst: "[io.netty.buffer.ByteBufUtil].utf8ByteCount(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].utf8ByteCount(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1093
    functionLinenumberEnd: 1104
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.buffer.ByteBufUtil].utf8BytesNonAscii(java.lang.CharSequence,int,int)"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 1
    ICount: 21
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:1094"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1097"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1096"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1099"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1102"
        BranchSideFuncs:
        - "utf8BytesNonAscii(java.lang.CharSequence,int,int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1099"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1102"
        BranchSideFuncs:
        - "utf8BytesNonAscii(java.lang.CharSequence,int,int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1103"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1102"
        BranchSideFuncs:
        - "utf8BytesNonAscii(java.lang.CharSequence,int,int)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1099,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1103,1"
      Dst: "[io.netty.buffer.ByteBufUtil].utf8BytesNonAscii(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.ByteBufUtil].utf8BytesNonAscii(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1106
    functionLinenumberEnd: 1138
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.internal.StringUtil].isSurrogate(char)"
    - "[java.lang.Character].isHighSurrogate(char)"
    - "[java.lang.Character].isLowSurrogate(char)"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 1
    ICount: 36
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:1108"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1137"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1136"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1111"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1113"
        BranchSideFuncs:
        - "isSurrogate(char)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1114"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1134"
        BranchSideFuncs:
        - "isHighSurrogate(char)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1133"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1115"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1121"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1120"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1121"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1125"
        BranchSideFuncs:
        - "isLowSurrogate(char)"
        - "charAt(int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1126"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1131"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1109,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1114,1"
      Dst: "[io.netty.util.internal.StringUtil].isSurrogate(char)"
    - Src: "io.netty.buffer.ByteBufUtil:1115,1"
      Dst: "[java.lang.Character].isHighSurrogate(char)"
    - Src: "io.netty.buffer.ByteBufUtil:1126,1"
      Dst: "[java.lang.Character].isLowSurrogate(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 7
  - functionName: "[io.netty.buffer.Unpooled].copiedBufferAscii(java.lang.CharSequence)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBufUtil].writeAscii(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:619"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:611"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:610"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:619"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:622"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:621"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:613,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.buffer.Unpooled:613,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - Src: "io.netty.buffer.Unpooled:615,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeAscii(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    - Src: "io.netty.buffer.Unpooled:620,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].writeAscii(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1163
    functionLinenumberEnd: 1186
    functionDepth: 4
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].unwrap()"
    - "[io.netty.buffer.SlicedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].unwrap()"
    - "[io.netty.buffer.CompositeByteBuf].unwrap()"
    - "[io.netty.buffer.SwappedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].unwrap()"
    - "[io.netty.buffer.EmptyByteBuf].unwrap()"
    - "[io.netty.buffer.FixedCompositeByteBuf].unwrap()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].unwrap()"
    - "[io.netty.buffer.PooledByteBuf].unwrap()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.ReadOnlyByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.WrappedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable0(int)"
    - "[io.netty.buffer.ByteBufUtil].writeAsciiString(io.netty.buffer.AbstractByteBuf,int,io.netty.util.AsciiString,int,int)"
    - "[io.netty.buffer.ByteBufUtil].writeAscii(io.netty.buffer.AbstractByteBuf,int,java.lang.CharSequence,int)"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].unwrap()"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].toString()"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    functionUses: 13
    ICount: 39
    EdgeCount: 63
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:1164"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1166"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1167"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1179"
        BranchSideFuncs:
        - "length()"
        - "ensureWritable0(int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1178"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1171"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1174"
        BranchSideFuncs:
        - "writeAsciiString(io.netty.buffer.AbstractByteBuf,int,io.netty.util.AsciiString,int,int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1173"
        BranchSideFuncs:
        - "writeAscii(io.netty.buffer.AbstractByteBuf,int,java.lang.CharSequence,int)"
        - "<init>()"
    - Branch String: "io.netty.buffer.ByteBufUtil:1175"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1176"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1175"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1176"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1179"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1182"
        BranchSideFuncs:
        - "toString()"
        - "writeBytes(byte[])"
        - "getBytes(java.nio.charset.Charset)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1166,1"
      Dst: "[io.netty.buffer.ByteBuf].unwrap()"
    - Src: "io.netty.buffer.ByteBufUtil:1168,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.buffer.ByteBufUtil:1170,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureWritable0(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1172,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeAsciiString(io.netty.buffer.AbstractByteBuf,int,io.netty.util.AsciiString,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1174,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeAscii(io.netty.buffer.AbstractByteBuf,int,java.lang.CharSequence,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1175,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.ByteBufUtil:1183,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.buffer.ByteBufUtil:1183,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.buffer.ByteBufUtil:1184,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.buffer.ByteBufUtil].writeAscii(io.netty.buffer.AbstractByteBuf,int,java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1194
    functionLinenumberEnd: 1199
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setByte(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setByte(int,int)"
    - "[io.netty.util.AsciiString].c2b(char)"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.buffer.AbstractByteBuf]._setByte(int,int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:1195"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1197"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1196,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1196,1"
      Dst: "[io.netty.util.AsciiString].c2b(char)"
    - Src: "io.netty.buffer.ByteBufUtil:1196,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.Unpooled].copiedBuffer(java.nio.CharBuffer,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "java.nio.CharBuffer"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].encodeString0(io.netty.buffer.ByteBufAllocator,boolean,java.nio.CharBuffer,java.nio.charset.Charset,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:682,1"
      Dst: "[io.netty.buffer.ByteBufUtil].encodeString0(io.netty.buffer.ByteBufAllocator,boolean,java.nio.CharBuffer,java.nio.charset.Charset,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].encodeString0(io.netty.buffer.ByteBufAllocator,boolean,java.nio.CharBuffer,java.nio.charset.Charset,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1223
    functionLinenumberEnd: 1254
    functionDepth: 5
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "boolean"
    - "java.nio.CharBuffer"
    - "java.nio.charset.Charset"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.CharsetUtil].encoder(java.nio.charset.Charset)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[java.nio.charset.CoderResult].isUnderflow()"
    - "[java.nio.charset.CoderResult].throwException()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.charset.CharsetEncoder].maxBytesPerChar()"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.charset.CharsetEncoder].encode(java.nio.CharBuffer,java.nio.ByteBuffer,boolean)"
    - "[java.nio.charset.CharsetEncoder].flush(java.nio.ByteBuffer)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    functionUses: 2
    ICount: 47
    EdgeCount: 72
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:1228"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1231"
        BranchSideFuncs:
        - "heapBuffer(int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1230"
        BranchSideFuncs:
        - "buffer(int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1237"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1240"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1239"
        BranchSideFuncs:
        - "isUnderflow()"
    - Branch String: "io.netty.buffer.ByteBufUtil:1241"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1244"
        BranchSideFuncs:
        - "throwException()"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1243"
        BranchSideFuncs:
        - "writerIndex(int)"
        - "writerIndex()"
        - "<init>(java.lang.Throwable)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1250"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1244"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1243"
        BranchSideFuncs:
        - "writerIndex(int)"
        - "writerIndex()"
        - "<init>(java.lang.Throwable)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1250"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1253"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1252"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1224,1"
      Dst: "[io.netty.util.CharsetUtil].encoder(java.nio.charset.Charset)"
    - Src: "io.netty.buffer.ByteBufUtil:1225,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.ByteBufUtil:1225,1"
      Dst: "[java.nio.charset.CharsetEncoder].maxBytesPerChar()"
    - Src: "io.netty.buffer.ByteBufUtil:1229,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1231,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1234,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.ByteBufUtil:1234,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1235,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.buffer.ByteBufUtil:1236,1"
      Dst: "[java.nio.charset.CharsetEncoder].encode(java.nio.CharBuffer,java.nio.ByteBuffer,boolean)"
    - Src: "io.netty.buffer.ByteBufUtil:1237,1"
      Dst: "[java.nio.charset.CoderResult].isUnderflow()"
    - Src: "io.netty.buffer.ByteBufUtil:1238,1"
      Dst: "[java.nio.charset.CoderResult].throwException()"
    - Src: "io.netty.buffer.ByteBufUtil:1240,1"
      Dst: "[java.nio.charset.CharsetEncoder].flush(java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.ByteBufUtil:1244,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.buffer.ByteBufUtil:1244,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1251,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.buffer.ByteBufUtil:1248,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.CharsetUtil].encoder(java.nio.charset.Charset)"
    functionSourceFile: "io.netty.util.CharsetUtil"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 126
    functionDepth: 4
    returnType: "java.nio.charset.CharsetEncoder"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.InternalThreadLocalMap].charsetEncoderCache()"
    - "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.CharsetUtil].encoder(java.nio.charset.Charset,java.nio.charset.CodingErrorAction,java.nio.charset.CodingErrorAction)"
    - "[io.netty.util.collection.ShortObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.nio.charset.CharsetEncoder].reset()"
    - "[java.nio.charset.CharsetEncoder].onMalformedInput(java.nio.charset.CodingErrorAction)"
    - "[java.nio.charset.CharsetEncoder].onUnmappableCharacter(java.nio.charset.CodingErrorAction)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 18
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.util.CharsetUtil:118"
      Branch Sides:
      - BranchSide: "io.netty.util.CharsetUtil:123"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.CharsetUtil:122"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "encoder(java.nio.charset.Charset,java.nio.charset.CodingErrorAction,java.nio.charset.CodingErrorAction)"
    Callsites:
    - Src: "io.netty.util.CharsetUtil:114,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.CharsetUtil:116,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - Src: "io.netty.util.CharsetUtil:116,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].charsetEncoderCache()"
    - Src: "io.netty.util.CharsetUtil:117,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.util.CharsetUtil:119,1"
      Dst: "[java.nio.charset.CharsetEncoder].reset()"
    - Src: "io.netty.util.CharsetUtil:119,1"
      Dst: "[java.nio.charset.CharsetEncoder].onMalformedInput(java.nio.charset.CodingErrorAction)"
    - Src: "io.netty.util.CharsetUtil:119,1"
      Dst: "[java.nio.charset.CharsetEncoder].onUnmappableCharacter(java.nio.charset.CodingErrorAction)"
    - Src: "io.netty.util.CharsetUtil:123,1"
      Dst: "[io.netty.util.CharsetUtil].encoder(java.nio.charset.Charset,java.nio.charset.CodingErrorAction,java.nio.charset.CodingErrorAction)"
    - Src: "io.netty.util.CharsetUtil:124,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].charsetEncoderCache()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 234
    functionLinenumberEnd: 240
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.IdentityHashMap].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:236"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:null"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:237,1"
      Dst: "[java.util.IdentityHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.CharsetUtil].encoder(java.nio.charset.Charset,java.nio.charset.CodingErrorAction,java.nio.charset.CodingErrorAction)"
    functionSourceFile: "io.netty.util.CharsetUtil"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 94
    functionDepth: 1
    returnType: "java.nio.charset.CharsetEncoder"
    argCount: 3
    argTypes:
    - "java.nio.charset.Charset"
    - "java.nio.charset.CodingErrorAction"
    - "java.nio.charset.CodingErrorAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[sun.nio.cs.UTF_8].newEncoder()"
    - "[java.nio.charset.Charset].newEncoder()"
    - "[java.nio.charset.CharsetEncoder].onMalformedInput(java.nio.charset.CodingErrorAction)"
    - "[java.nio.charset.CharsetEncoder].onUnmappableCharacter(java.nio.charset.CodingErrorAction)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.CharsetUtil:90,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.CharsetUtil:91,1"
      Dst: "[java.nio.charset.Charset].newEncoder()"
    - Src: "io.netty.util.CharsetUtil:92,1"
      Dst: "[java.nio.charset.CharsetEncoder].onMalformedInput(java.nio.charset.CodingErrorAction)"
    - Src: "io.netty.util.CharsetUtil:92,1"
      Dst: "[java.nio.charset.CharsetEncoder].onUnmappableCharacter(java.nio.charset.CodingErrorAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].text()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:94,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:94,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].copy()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].copy()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:99,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].duplicate()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].duplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:104,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retainedDuplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:109,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:114,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:114,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:114,1"
      Dst: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].retain()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retain()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:119,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:125,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].touch()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].touch()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:131,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].touch(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.TextWebSocketFrame:137,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel$1].<init>(io.netty.channel.local.LocalChannel)"
    functionSourceFile: "io.netty.channel.local.LocalChannel$1"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel$1:63,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel$1].run()"
    functionSourceFile: "io.netty.channel.local.LocalChannel$1"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 71
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].isEmpty()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].isEmpty()"
    - "[io.netty.util.internal.DefaultPriorityQueue:io.netty.util.internal.EmptyPriorityQueue:java.util.AbstractCollection:java.util.ArrayDeque:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue].isEmpty()"
    - "[io.netty.channel.local.LocalChannel].access$000(io.netty.channel.local.LocalChannel)"
    - "[java.util.Collection].isEmpty()"
    functionUses: 49
    ICount: 8
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalChannel$1:67"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel$1:70"
        BranchSideFuncs:
        - "access$000(io.netty.channel.local.LocalChannel)"
      - BranchSide: "io.netty.channel.local.LocalChannel$1:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel$1:67,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "io.netty.channel.local.LocalChannel$1:68,1"
      Dst: "[io.netty.channel.local.LocalChannel].access$000(io.netty.channel.local.LocalChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.local.LocalChannel].access$000(io.netty.channel.local.LocalChannel)"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalChannel].readInbound()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:50,1"
      Dst: "[io.netty.channel.local.LocalChannel].readInbound()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolThreadCache].<init>(io.netty.buffer.PoolArena,io.netty.buffer.PoolArena,int,int,int,int)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 109
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.buffer.PoolArena"
    - "io.netty.buffer.PoolArena"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicBoolean].<init>()"
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[io.netty.buffer.PoolThreadCache].createSubPageCaches(int,int)"
    - "[io.netty.buffer.PoolThreadCache].createNormalCaches(int,int,io.netty.buffer.PoolArena)"
    - "[java.util.concurrent.atomic.AtomicInteger].getAndIncrement()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 2
    ICount: 56
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolThreadCache:73"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:83"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolThreadCache:82"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolThreadCache:86"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:96"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolThreadCache:102"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:101"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolThreadCache:102"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:101"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolThreadCache:102"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:101"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolThreadCache:102"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:107"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolThreadCache:102"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:68,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.buffer.PoolThreadCache:59,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].<init>()"
    - Src: "io.netty.buffer.PoolThreadCache:69,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.buffer.PoolThreadCache:74,1"
      Dst: "[io.netty.buffer.PoolThreadCache].createSubPageCaches(int,int)"
    - Src: "io.netty.buffer.PoolThreadCache:77,1"
      Dst: "[io.netty.buffer.PoolThreadCache].createNormalCaches(int,int,io.netty.buffer.PoolArena)"
    - Src: "io.netty.buffer.PoolThreadCache:80,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].getAndIncrement()"
    - Src: "io.netty.buffer.PoolThreadCache:105,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.PoolThreadCache:105,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.PoolThreadCache:105,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.PoolThreadCache:105,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.PoolThreadCache:105,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 7
  - functionName: "[io.netty.buffer.PoolThreadCache].createSubPageCaches(int,int)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 122
    functionDepth: 1
    returnType: "io.netty.buffer.MemoryRegionCache<T>[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolThreadCache$SubPageMemoryRegionCache].<init>(int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolThreadCache:112"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:120"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolThreadCache:112"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:120"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolThreadCache:115"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:117,1"
      Dst: "[io.netty.buffer.PoolThreadCache$SubPageMemoryRegionCache].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.PoolThreadCache$SubPageMemoryRegionCache].<init>(int)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache$SubPageMemoryRegionCache"
    linkageType: ""
    functionLinenumber: 325
    functionLinenumberEnd: 328
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolThreadCache$MemoryRegionCache].<init>(int,io.netty.buffer.PoolArena$SizeClass)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache$SubPageMemoryRegionCache:326,1"
      Dst: "[io.netty.buffer.PoolThreadCache$MemoryRegionCache].<init>(int,io.netty.buffer.PoolArena$SizeClass)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolThreadCache].createNormalCaches(int,int,io.netty.buffer.PoolArena<T>)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 139
    functionDepth: 1
    returnType: "io.netty.buffer.MemoryRegionCache<T>[]"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.buffer.PoolArena<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.util.ArrayList].<init>()"
    - "[io.netty.buffer.SizeClasses].sizeIdx2size(int)"
    - "[io.netty.buffer.PoolThreadCache$NormalMemoryRegionCache].<init>(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 24
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolThreadCache:128"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:138"
        BranchSideFuncs:
        - "min(int,int)"
        - "<init>()"
        - "sizeIdx2size(int)"
      - BranchSide: "io.netty.buffer.PoolThreadCache:137"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolThreadCache:128"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:138"
        BranchSideFuncs:
        - "min(int,int)"
        - "<init>()"
        - "sizeIdx2size(int)"
      - BranchSide: "io.netty.buffer.PoolThreadCache:137"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolThreadCache:133"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:135"
        BranchSideFuncs:
        - "toArray(java.lang.Object[])"
    - Branch String: "io.netty.buffer.PoolThreadCache:133"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:135"
        BranchSideFuncs:
        - "toArray(java.lang.Object[])"
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:129,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.PoolThreadCache:132,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.buffer.PoolThreadCache:133,1"
      Dst: "[io.netty.buffer.SizeClasses].sizeIdx2size(int)"
    - Src: "io.netty.buffer.PoolThreadCache:134,1"
      Dst: "[io.netty.buffer.PoolThreadCache$NormalMemoryRegionCache].<init>(int)"
    - Src: "io.netty.buffer.PoolThreadCache:134,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.buffer.PoolThreadCache:136,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.PoolThreadCache$NormalMemoryRegionCache].<init>(int)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache$NormalMemoryRegionCache"
    linkageType: ""
    functionLinenumber: 341
    functionLinenumberEnd: 344
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolThreadCache$MemoryRegionCache].<init>(int,io.netty.buffer.PoolArena$SizeClass)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache$NormalMemoryRegionCache:342,1"
      Dst: "[io.netty.buffer.PoolThreadCache$MemoryRegionCache].<init>(int,io.netty.buffer.PoolArena$SizeClass)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolThreadCache].log2(int)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].numberOfLeadingZeros(int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:144,1"
      Dst: "[java.lang.Integer].numberOfLeadingZeros(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolThreadCache].allocateSmall(io.netty.buffer.PoolArena<?>,io.netty.buffer.PooledByteBuf<?>,int,int)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionDepth: 4
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "io.netty.buffer.PoolArena<?>"
    - "io.netty.buffer.PooledByteBuf<?>"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolThreadCache].allocate(io.netty.buffer.PoolThreadCache$MemoryRegionCache,io.netty.buffer.PooledByteBuf,int)"
    - "[io.netty.buffer.PoolThreadCache].cacheForSmall(io.netty.buffer.PoolArena,int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:151,1"
      Dst: "[io.netty.buffer.PoolThreadCache].cacheForSmall(io.netty.buffer.PoolArena,int)"
    - Src: "io.netty.buffer.PoolThreadCache:151,1"
      Dst: "[io.netty.buffer.PoolThreadCache].allocate(io.netty.buffer.PoolThreadCache$MemoryRegionCache,io.netty.buffer.PooledByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolThreadCache].allocate(io.netty.buffer.PoolThreadCache$MemoryRegionCache,io.netty.buffer.PooledByteBuf,int)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 173
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "io.netty.buffer.PoolThreadCache$MemoryRegionCache"
    - "io.netty.buffer.PooledByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolThreadCache$MemoryRegionCache].allocate(io.netty.buffer.PooledByteBuf,int,io.netty.buffer.PoolThreadCache)"
    - "[io.netty.buffer.PoolThreadCache].trim()"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolThreadCache:163"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:166"
        BranchSideFuncs:
        - "allocate(io.netty.buffer.PooledByteBuf,int,io.netty.buffer.PoolThreadCache)"
    - Branch String: "io.netty.buffer.PoolThreadCache:168"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:172"
        BranchSideFuncs:
        - "trim()"
      - BranchSide: "io.netty.buffer.PoolThreadCache:171"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:167,1"
      Dst: "[io.netty.buffer.PoolThreadCache$MemoryRegionCache].allocate(io.netty.buffer.PooledByteBuf,int,io.netty.buffer.PoolThreadCache)"
    - Src: "io.netty.buffer.PoolThreadCache:170,1"
      Dst: "[io.netty.buffer.PoolThreadCache].trim()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolThreadCache].trim()"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 275
    functionLinenumberEnd: 281
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolThreadCache].trim(io.netty.buffer.PoolThreadCache$MemoryRegionCache[])"
    functionUses: 2
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:276,1"
      Dst: "[io.netty.buffer.PoolThreadCache].trim(io.netty.buffer.PoolThreadCache$MemoryRegionCache[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolThreadCache].trim(io.netty.buffer.PoolThreadCache$MemoryRegionCache[])"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 290
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PoolThreadCache$MemoryRegionCache[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolThreadCache].trim(io.netty.buffer.PoolThreadCache$MemoryRegionCache)"
    functionUses: 4
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolThreadCache:283"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:286"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolThreadCache:285"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolThreadCache:286"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:288"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:287,1"
      Dst: "[io.netty.buffer.PoolThreadCache].trim(io.netty.buffer.PoolThreadCache$MemoryRegionCache)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolThreadCache].trim(io.netty.buffer.PoolThreadCache$MemoryRegionCache)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 291
    functionLinenumberEnd: 297
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PoolThreadCache$MemoryRegionCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolThreadCache$MemoryRegionCache].trim()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolThreadCache:292"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:295"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolThreadCache:294"
        BranchSideFuncs:
        - "trim()"
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:295,1"
      Dst: "[io.netty.buffer.PoolThreadCache$MemoryRegionCache].trim()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolThreadCache].allocateNormal(io.netty.buffer.PoolArena<?>,io.netty.buffer.PooledByteBuf<?>,int,int)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionDepth: 4
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "io.netty.buffer.PoolArena<?>"
    - "io.netty.buffer.PooledByteBuf<?>"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolThreadCache].allocate(io.netty.buffer.PoolThreadCache$MemoryRegionCache,io.netty.buffer.PooledByteBuf,int)"
    - "[io.netty.buffer.PoolThreadCache].cacheForNormal(io.netty.buffer.PoolArena,int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:158,1"
      Dst: "[io.netty.buffer.PoolThreadCache].cacheForNormal(io.netty.buffer.PoolArena,int)"
    - Src: "io.netty.buffer.PoolThreadCache:158,1"
      Dst: "[io.netty.buffer.PoolThreadCache].allocate(io.netty.buffer.PoolThreadCache$MemoryRegionCache,io.netty.buffer.PooledByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolThreadCache].add(io.netty.buffer.PoolArena,io.netty.buffer.PoolChunk,java.nio.ByteBuffer,long,int,io.netty.buffer.PoolArena$SizeClass)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 191
    functionDepth: 1
    returnType: "boolean"
    argCount: 6
    argTypes:
    - "io.netty.buffer.PoolArena"
    - "io.netty.buffer.PoolChunk"
    - "java.nio.ByteBuffer"
    - "long"
    - "int"
    - "io.netty.buffer.PoolArena$SizeClass"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SizeClasses].size2SizeIdx(int)"
    - "[io.netty.buffer.PoolThreadCache].cache(io.netty.buffer.PoolArena,int,io.netty.buffer.PoolArena$SizeClass)"
    - "[java.util.concurrent.atomic.AtomicBoolean].get()"
    - "[io.netty.buffer.PoolThreadCache$MemoryRegionCache].add(io.netty.buffer.PoolChunk,java.nio.ByteBuffer,long,int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolThreadCache:184"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:187"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolThreadCache:186"
        BranchSideFuncs:
        - "get()"
    - Branch String: "io.netty.buffer.PoolThreadCache:187"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:190"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolThreadCache:189"
        BranchSideFuncs:
        - "add(io.netty.buffer.PoolChunk,java.nio.ByteBuffer,long,int)"
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:182,1"
      Dst: "[io.netty.buffer.SizeClasses].size2SizeIdx(int)"
    - Src: "io.netty.buffer.PoolThreadCache:183,1"
      Dst: "[io.netty.buffer.PoolThreadCache].cache(io.netty.buffer.PoolArena,int,io.netty.buffer.PoolArena$SizeClass)"
    - Src: "io.netty.buffer.PoolThreadCache:187,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].get()"
    - Src: "io.netty.buffer.PoolThreadCache:190,1"
      Dst: "[io.netty.buffer.PoolThreadCache$MemoryRegionCache].add(io.netty.buffer.PoolChunk,java.nio.ByteBuffer,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolThreadCache].cache(io.netty.buffer.PoolArena,int,io.netty.buffer.PoolArena$SizeClass)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 201
    functionDepth: 0
    returnType: "io.netty.buffer.PoolThreadCache$MemoryRegionCache"
    argCount: 3
    argTypes:
    - "io.netty.buffer.PoolArena"
    - "int"
    - "io.netty.buffer.PoolArena$SizeClass"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.buffer.PoolThreadCache].cacheForNormal(io.netty.buffer.PoolArena,int)"
    - "[io.netty.buffer.PoolThreadCache].cacheForSmall(io.netty.buffer.PoolArena,int)"
    - "[java.lang.Error].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:194,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.buffer.PoolThreadCache:196,1"
      Dst: "[io.netty.buffer.PoolThreadCache].cacheForNormal(io.netty.buffer.PoolArena,int)"
    - Src: "io.netty.buffer.PoolThreadCache:198,1"
      Dst: "[io.netty.buffer.PoolThreadCache].cacheForSmall(io.netty.buffer.PoolArena,int)"
    - Src: "io.netty.buffer.PoolThreadCache:200,1"
      Dst: "[java.lang.Error].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolThreadCache].free(boolean)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 219
    functionLinenumberEnd: 246
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicBoolean].compareAndSet(boolean,boolean)"
    - "[io.netty.buffer.PoolThreadCache].free(io.netty.buffer.PoolThreadCache$MemoryRegionCache[],boolean)"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].getName()"
    - "[java.util.concurrent.atomic.AtomicInteger].getAndDecrement()"
    - "[io.netty.buffer.PoolThreadCache].checkCacheMayLeak(io.netty.buffer.PoolThreadCache$MemoryRegionCache[],java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 45
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolThreadCache:220"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:240"
        BranchSideFuncs:
        - "isDebugEnabled()"
        - "free(io.netty.buffer.PoolThreadCache$MemoryRegionCache[],boolean)"
      - BranchSide: "io.netty.buffer.PoolThreadCache:239"
        BranchSideFuncs:
        - "checkCacheMayLeak(io.netty.buffer.PoolThreadCache$MemoryRegionCache[],java.lang.String)"
    - Branch String: "io.netty.buffer.PoolThreadCache:226"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:231"
        BranchSideFuncs:
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.buffer.PoolThreadCache:230"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolThreadCache:226"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:231"
        BranchSideFuncs:
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.buffer.PoolThreadCache:230"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolThreadCache:231"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:235"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolThreadCache:234"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolThreadCache:235"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:238"
        BranchSideFuncs:
        - "getAndDecrement()"
      - BranchSide: "io.netty.buffer.PoolThreadCache:237"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:220,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].compareAndSet(boolean,boolean)"
    - Src: "io.netty.buffer.PoolThreadCache:221,1"
      Dst: "[io.netty.buffer.PoolThreadCache].free(io.netty.buffer.PoolThreadCache$MemoryRegionCache[],boolean)"
    - Src: "io.netty.buffer.PoolThreadCache:226,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.buffer.PoolThreadCache:227,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.buffer.PoolThreadCache:228,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "io.netty.buffer.PoolThreadCache:228,1"
      Dst: "[java.lang.Thread].getName()"
    - Src: "io.netty.buffer.PoolThreadCache:227,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.buffer.PoolThreadCache:232,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].getAndDecrement()"
    - Src: "io.netty.buffer.PoolThreadCache:240,1"
      Dst: "[io.netty.buffer.PoolThreadCache].checkCacheMayLeak(io.netty.buffer.PoolThreadCache$MemoryRegionCache[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[io.netty.buffer.PoolThreadCache].free(io.netty.buffer.PoolThreadCache$MemoryRegionCache[],boolean)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 256
    functionLinenumberEnd: 266
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.PoolThreadCache$MemoryRegionCache[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolThreadCache].free(io.netty.buffer.PoolThreadCache$MemoryRegionCache,boolean)"
    functionUses: 4
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolThreadCache:257"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:261"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolThreadCache:260"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolThreadCache:262"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:264"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:263,1"
      Dst: "[io.netty.buffer.PoolThreadCache].free(io.netty.buffer.PoolThreadCache$MemoryRegionCache,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolThreadCache].free(io.netty.buffer.PoolThreadCache$MemoryRegionCache,boolean)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 268
    functionLinenumberEnd: 273
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.PoolThreadCache$MemoryRegionCache"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolThreadCache$MemoryRegionCache].free(boolean)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolThreadCache:269"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:272"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolThreadCache:271"
        BranchSideFuncs:
        - "free(boolean)"
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:272,1"
      Dst: "[io.netty.buffer.PoolThreadCache$MemoryRegionCache].free(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolThreadCache].checkCacheMayLeak(io.netty.buffer.PoolThreadCache$MemoryRegionCache[],java.lang.String)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 255
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.PoolThreadCache$MemoryRegionCache[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolThreadCache$MemoryRegionCache].access$000(io.netty.buffer.PoolThreadCache$MemoryRegionCache)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].size()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].size()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].size()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].size()"
    - "[java.util.LinkedList].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].size()"
    - "[io.netty.util.internal.EmptyPriorityQueue].size()"
    - "[java.util.ArrayDeque].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].size()"
    - "[io.netty.util.internal.DefaultPriorityQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].size()"
    - "[java.util.concurrent.LinkedBlockingDeque].size()"
    - "[java.util.concurrent.LinkedBlockingQueue].size()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[java.util.Collection].size()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    functionUses: 4
    ICount: 15
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolThreadCache:248"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:254"
        BranchSideFuncs:
        - "access$000(io.netty.buffer.PoolThreadCache$MemoryRegionCache)"
        - "size()"
      - BranchSide: "io.netty.buffer.PoolThreadCache:253"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolThreadCache:249"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:248"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.buffer.PoolThreadCache:247"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:249,1"
      Dst: "[io.netty.buffer.PoolThreadCache$MemoryRegionCache].access$000(io.netty.buffer.PoolThreadCache$MemoryRegionCache)"
    - Src: "io.netty.buffer.PoolThreadCache:249,1"
      Dst: "[java.util.Collection].size()"
    - Src: "io.netty.buffer.PoolThreadCache:250,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolThreadCache].cacheForSmall(io.netty.buffer.PoolArena<?>,int)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 298
    functionLinenumberEnd: 303
    functionDepth: 1
    returnType: "io.netty.buffer.MemoryRegionCache<?>"
    argCount: 2
    argTypes:
    - "io.netty.buffer.PoolArena<?>"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena$DirectArena].isDirect()"
    - "[io.netty.buffer.PoolArena$HeapArena].isDirect()"
    - "[io.netty.buffer.PoolThreadCache].cache(io.netty.buffer.PoolThreadCache$MemoryRegionCache[],int)"
    - "[io.netty.buffer.PoolArena].isDirect()"
    functionUses: 2
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolThreadCache:299"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:302"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolThreadCache:301"
        BranchSideFuncs:
        - "cache(io.netty.buffer.PoolThreadCache$MemoryRegionCache[],int)"
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:299,1"
      Dst: "[io.netty.buffer.PoolArena].isDirect()"
    - Src: "io.netty.buffer.PoolThreadCache:300,1"
      Dst: "[io.netty.buffer.PoolThreadCache].cache(io.netty.buffer.PoolThreadCache$MemoryRegionCache[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolThreadCache].cache(io.netty.buffer.PoolThreadCache$MemoryRegionCache[],int)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 314
    functionLinenumberEnd: 319
    functionDepth: 0
    returnType: "io.netty.buffer.PoolThreadCache$MemoryRegionCache"
    argCount: 2
    argTypes:
    - "io.netty.buffer.PoolThreadCache$MemoryRegionCache[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolThreadCache:315"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:316"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolThreadCache:315"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolThreadCache:315"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:318"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolThreadCache:317"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolThreadCache].cacheForNormal(io.netty.buffer.PoolArena<?>,int)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 312
    functionDepth: 1
    returnType: "io.netty.buffer.MemoryRegionCache<?>"
    argCount: 2
    argTypes:
    - "io.netty.buffer.PoolArena<?>"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena$DirectArena].isDirect()"
    - "[io.netty.buffer.PoolArena$HeapArena].isDirect()"
    - "[io.netty.buffer.PoolThreadCache].cache(io.netty.buffer.PoolThreadCache$MemoryRegionCache[],int)"
    - "[io.netty.buffer.PoolArena].isDirect()"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolThreadCache:308"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolThreadCache:311"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolThreadCache:310"
        BranchSideFuncs:
        - "cache(io.netty.buffer.PoolThreadCache$MemoryRegionCache[],int)"
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache:308,1"
      Dst: "[io.netty.buffer.PoolArena].isDirect()"
    - Src: "io.netty.buffer.PoolThreadCache:309,1"
      Dst: "[io.netty.buffer.PoolThreadCache].cache(io.netty.buffer.PoolThreadCache$MemoryRegionCache[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$1].<init>()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$1"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 206
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$1:205,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$1].decodeResponse(io.netty.channel.ChannelHandlerContext,io.netty.channel.socket.DatagramPacket)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$1"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 222
    functionDepth: 3
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.socket.DatagramPacket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder].decodeResponse(io.netty.channel.ChannelHandlerContext,io.netty.channel.socket.DatagramPacket)"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].setTruncated(boolean)"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].setTruncated(boolean)"
    - "[io.netty.resolver.dns.DnsNameResolver].access$000()"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.handler.codec.dns.DnsResponse].setTruncated(boolean)"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$1:209"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$1:220"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$1:215"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$1:221"
        BranchSideFuncs:
        - "access$000()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$1:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$1:208,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder].decodeResponse(io.netty.channel.ChannelHandlerContext,io.netty.channel.socket.DatagramPacket)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$1:209,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].content()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$1:209,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$1:213,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponse].setTruncated(boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$1:215,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].access$000()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$1:215,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$1:218,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$1:218,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$1:216,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder].decodeResponse(io.netty.channel.ChannelHandlerContext,io.netty.channel.socket.DatagramPacket)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 2
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.socket.DatagramPacket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.handler.codec.dns.DnsResponseDecoder].decode(java.net.SocketAddress,java.net.SocketAddress,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    functionUses: 2
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder:67,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder:67,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder:67,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].content()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder:67,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponseDecoder].decode(java.net.SocketAddress,java.net.SocketAddress,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.FileUploadUtil].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.FileUploadUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.FileUploadUtil:20,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameDecoder$State"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdyFrameDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder$State:65,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdyFrameDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder$State:65,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameDecoder$State"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameDecoder$State:65,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.AddressResolverGroup$1].<init>(io.netty.resolver.AddressResolverGroup,io.netty.util.concurrent.EventExecutor,io.netty.resolver.AddressResolver)"
    functionSourceFile: "io.netty.resolver.AddressResolverGroup$1"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.resolver.AddressResolverGroup"
    - "io.netty.util.concurrent.EventExecutor"
    - "io.netty.resolver.AddressResolver"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.AddressResolverGroup$1:77,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.AddressResolverGroup$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.resolver.AddressResolverGroup$1"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.AddressResolverGroup].access$000(io.netty.resolver.AddressResolverGroup)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].remove(java.lang.Object)"
    - "[io.netty.resolver.AddressResolverGroup].access$100(io.netty.resolver.AddressResolverGroup)"
    - "[io.netty.resolver.AbstractAddressResolver:io.netty.util.collection.ByteCollections$EmptyMap:io.netty.util.collection.CharCollections$EmptyMap:io.netty.util.collection.IntCollections$EmptyMap:io.netty.util.collection.LongCollections$EmptyMap:io.netty.util.collection.ShortCollections$EmptyMap:java.security.Provider:java.util.AbstractMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].remove(java.lang.Object)"
    - "[io.netty.resolver.InetSocketAddressResolver].close()"
    - "[java.util.Map].remove(java.lang.Object)"
    - "[io.netty.resolver.AddressResolver].close()"
    functionUses: 1
    ICount: 21
    EdgeCount: 28
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.AddressResolverGroup$1:80,1"
      Dst: "[io.netty.resolver.AddressResolverGroup].access$000(io.netty.resolver.AddressResolverGroup)"
    - Src: "io.netty.resolver.AddressResolverGroup$1:81,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "io.netty.resolver.AddressResolverGroup$1:82,1"
      Dst: "[io.netty.resolver.AddressResolverGroup].access$100(io.netty.resolver.AddressResolverGroup)"
    - Src: "io.netty.resolver.AddressResolverGroup$1:84,1"
      Dst: "[io.netty.resolver.AddressResolver].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SniHandler$Selection].<init>(io.netty.handler.ssl.SslContext,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SniHandler$Selection"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 181
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslContext"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SniHandler$Selection:177,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].address()"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "java.net.InetAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].cause()"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].toString()"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetAddress].toString()"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry:87,1"
      Dst: "[java.net.InetAddress].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.AbstractByteBuf)"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 166
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.AbstractByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].<init>(io.netty.buffer.AbstractByteBuf)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:163,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].<init>(io.netty.buffer.AbstractByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].isAccessible0()"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].isAccessible()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].isAccessible()"
    - "[io.netty.buffer.SwappedByteBuf].isAccessible()"
    - "[io.netty.buffer.ByteBuf].isAccessible()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].isAccessible()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isAccessible()"
    - "[io.netty.buffer.CompositeByteBuf].isAccessible()"
    functionUses: 1
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:169,1"
      Dst: "[io.netty.buffer.ByteBuf].isAccessible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].refCnt0()"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.buffer.EmptyByteBuf].refCnt()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 1
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:174,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retain0()"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 1
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:179,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retain0(int)"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:185,1"
      Dst: "[io.netty.buffer.ByteBuf].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].touch0()"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.SwappedByteBuf].touch()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch()"
    - "[io.netty.buffer.EmptyByteBuf].touch()"
    - "[io.netty.buffer.WrappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    - "[io.netty.buffer.UnreleasableByteBuf].touch()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.CompositeByteBuf].touch()"
    - "[io.netty.buffer.ByteBuf].touch()"
    functionUses: 1
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:191,1"
      Dst: "[io.netty.buffer.ByteBuf].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].touch0(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 199
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:197,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].release0()"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:203,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].release0(int)"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release(int)"
    - "[io.netty.buffer.WrappedByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release(int)"
    - "[io.netty.buffer.EmptyByteBuf].release(int)"
    - "[io.netty.buffer.SwappedByteBuf].release(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].release(int)"
    - "[io.netty.util.ReferenceCounted].release(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:208,1"
      Dst: "[io.netty.util.ReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].duplicate()"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 215
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.AbstractByteBuf)"
    functionUses: 23
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:213,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:214,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.AbstractByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedDuplicate()"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 220
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].newInstance(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    functionUses: 8
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:219,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:219,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:219,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:219,1"
      Dst: "[io.netty.buffer.PooledDuplicatedByteBuf].newInstance(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].newInstance(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "io.netty.buffer.PooledDuplicatedByteBuf"
    argCount: 4
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectPool$RecyclerObjectPool].get()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].init(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].maxCapacity()"
    - "[io.netty.buffer.AbstractByteBuf].maxCapacity()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.FixedCompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.AbstractByteBuf].markWriterIndex()"
    - "[io.netty.util.internal.ObjectPool].get()"
    - "[io.netty.buffer.AbstractByteBuf].markReaderIndex()"
    functionUses: 5
    ICount: 12
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:44,1"
      Dst: "[io.netty.util.internal.ObjectPool].get()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:45,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].maxCapacity()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:45,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].init(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:46,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].markReaderIndex()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:47,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].markWriterIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].slice(int,int)"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf"
    linkageType: ""
    functionLinenumber: 223
    functionLinenumberEnd: 226
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.AbstractByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    functionUses: 22
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:224,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:225,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:225,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.AbstractByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.AbstractByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 248
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledSlicedByteBuf].<init>(io.netty.buffer.AbstractByteBuf,int,int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:245,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].<init>(io.netty.buffer.AbstractByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedSlice()"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 232
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedSlice(int,int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:231,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:231,1"
      Dst: "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:231,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedSlice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedSlice(int,int)"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf"
    linkageType: ""
    functionLinenumber: 235
    functionLinenumberEnd: 237
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledSlicedByteBuf].newInstance(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    functionUses: 11
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:236,1"
      Dst: "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf:236,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].newInstance(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].newInstance(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionDepth: 1
    returnType: "io.netty.buffer.PooledSlicedByteBuf"
    argCount: 4
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].checkSliceOutOfBounds(int,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.PooledSlicedByteBuf].newInstance0(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:46,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].checkSliceOutOfBounds(int,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:47,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].newInstance0(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].newInstance0(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "io.netty.buffer.PooledSlicedByteBuf"
    argCount: 4
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectPool$RecyclerObjectPool].get()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].init(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].discardMarks()"
    - "[io.netty.util.internal.ObjectPool].get()"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:52,1"
      Dst: "[io.netty.util.internal.ObjectPool].get()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:53,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].init(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:54,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].discardMarks()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].<init>(int,int,int)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.IdleStateHandler].<init>(long,long,long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:156,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].<init>(long,long,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].<init>(long,long,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "long"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.IdleStateHandler].<init>(boolean,long,long,long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:166,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].<init>(boolean,long,long,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].<init>(boolean,long,long,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "boolean"
    - "long"
    - "long"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - "[io.netty.handler.timeout.IdleStateHandler$1].<init>(io.netty.handler.timeout.IdleStateHandler)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.concurrent.TimeUnit].toNanos(long)"
    - "[java.lang.Math].max(long,long)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:198"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:201"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:200"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:203"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:206"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:205"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:208"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:211"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:193,1"
      Dst: "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:103,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler$1].<init>(io.netty.handler.timeout.IdleStateHandler)"
    - Src: "io.netty.handler.timeout.IdleStateHandler:194,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.timeout.IdleStateHandler:201,1"
      Dst: "[java.util.concurrent.TimeUnit].toNanos(long)"
    - Src: "io.netty.handler.timeout.IdleStateHandler:201,1"
      Dst: "[java.lang.Math].max(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].getReaderIdleTimeInMillis()"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.TimeUnit].toMillis(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:220,1"
      Dst: "[java.util.concurrent.TimeUnit].toMillis(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].getWriterIdleTimeInMillis()"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.TimeUnit].toMillis(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:228,1"
      Dst: "[java.util.concurrent.TimeUnit].toMillis(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].getAllIdleTimeInMillis()"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.TimeUnit].toMillis(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:236,1"
      Dst: "[java.util.concurrent.TimeUnit].toMillis(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 240
    functionLinenumberEnd: 250
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    - "[io.netty.channel.local.LocalServerChannel].isActive()"
    - "[io.netty.channel.Channel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    - "[io.netty.bootstrap.FailedChannel].isActive()"
    - "[io.netty.channel.AbstractChannel].isRegistered()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isRegistered()"
    - "[io.netty.handler.timeout.IdleStateHandler].initialize(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].isRegistered()"
    functionUses: 4
    ICount: 10
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:241"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:248"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:241"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:241,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:241,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:241,1"
      Dst: "[io.netty.channel.Channel].isRegistered()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:244,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].initialize(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].initialize(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 310
    functionLinenumberEnd: 336
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.IdleStateHandler].initOutputChanged(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.timeout.IdleStateHandler].ticksInNanos()"
    - "[io.netty.handler.timeout.IdleStateHandler$ReaderIdleTimeoutTask].<init>(io.netty.handler.timeout.IdleStateHandler,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.timeout.IdleStateHandler].schedule(io.netty.channel.ChannelHandlerContext,java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask].<init>(io.netty.handler.timeout.IdleStateHandler,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask].<init>(io.netty.handler.timeout.IdleStateHandler,io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 42
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:323"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:327"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:326"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:327"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:331"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:330"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:331"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:335"
        BranchSideFuncs:
        - "<init>(io.netty.handler.timeout.IdleStateHandler,io.netty.channel.ChannelHandlerContext)"
        - "schedule(io.netty.channel.ChannelHandlerContext,java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:334"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:320,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].initOutputChanged(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.timeout.IdleStateHandler:322,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].ticksInNanos()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:324,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler$ReaderIdleTimeoutTask].<init>(io.netty.handler.timeout.IdleStateHandler,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.timeout.IdleStateHandler:324,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].schedule(io.netty.channel.ChannelHandlerContext,java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - Src: "io.netty.handler.timeout.IdleStateHandler:328,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask].<init>(io.netty.handler.timeout.IdleStateHandler,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.timeout.IdleStateHandler:332,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask].<init>(io.netty.handler.timeout.IdleStateHandler,io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].initOutputChanged(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 395
    functionLinenumberEnd: 408
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.embedded.EmbeddedChannel].unsafe()"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].outboundBuffer()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].outboundBuffer()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].outboundBuffer()"
    - "[io.netty.channel.ChannelOutboundBuffer].current()"
    - "[java.lang.System].identityHashCode(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundBuffer].totalPendingWriteBytes()"
    - "[io.netty.channel.ChannelOutboundBuffer].currentProgress()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].unsafe()"
    - "[io.netty.channel.Channel$Unsafe].outboundBuffer()"
    functionUses: 1
    ICount: 16
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:396"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:407"
        BranchSideFuncs:
        - "channel()"
        - "outboundBuffer()"
        - "unsafe()"
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:406"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:401"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:407"
        BranchSideFuncs:
        - "identityHashCode(java.lang.Object)"
        - "current()"
        - "totalPendingWriteBytes()"
        - "currentProgress()"
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:406"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:397,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:398,1"
      Dst: "[io.netty.channel.Channel].unsafe()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:399,1"
      Dst: "[io.netty.channel.Channel$Unsafe].outboundBuffer()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:402,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].current()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:402,1"
      Dst: "[java.lang.System].identityHashCode(java.lang.Object)"
    - Src: "io.netty.handler.timeout.IdleStateHandler:403,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].totalPendingWriteBytes()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:404,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].currentProgress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].totalPendingWriteBytes()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 731
    functionLinenumberEnd: 733
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].currentProgress()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 229
    functionLinenumberEnd: 235
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:231"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:234"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:233"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].ticksInNanos()"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 340
    functionLinenumberEnd: 342
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].nanoTime()"
    functionUses: 6
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:341,1"
      Dst: "[java.lang.System].nanoTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler$ReaderIdleTimeoutTask].<init>(io.netty.handler.timeout.IdleStateHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler$ReaderIdleTimeoutTask"
    linkageType: ""
    functionLinenumber: 482
    functionLinenumberEnd: 486
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].<init>(io.netty.channel.ChannelHandlerContext)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler$ReaderIdleTimeoutTask:484,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].<init>(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].schedule(io.netty.channel.ChannelHandlerContext,java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 347
    functionLinenumberEnd: 349
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future<?>"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Runnable"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    functionUses: 9
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:348,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:348,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask].<init>(io.netty.handler.timeout.IdleStateHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask"
    linkageType: ""
    functionLinenumber: 515
    functionLinenumberEnd: 519
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].<init>(io.netty.channel.ChannelHandlerContext)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask:517,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].<init>(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask].<init>(io.netty.handler.timeout.IdleStateHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask"
    linkageType: ""
    functionLinenumber: 550
    functionLinenumberEnd: 554
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].<init>(io.netty.channel.ChannelHandlerContext)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:552,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].<init>(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 252
    functionLinenumberEnd: 255
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.IdleStateHandler].destroy()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:253,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].destroy()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].destroy()"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 351
    functionLinenumberEnd: 367
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cancel(boolean)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cancel(boolean)"
    - "[io.netty.util.concurrent.CompleteFuture].cancel(boolean)"
    - "[io.netty.channel.VoidChannelPromise].cancel(boolean)"
    - "[io.netty.util.concurrent.Future].cancel(boolean)"
    functionUses: 2
    ICount: 18
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:354"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:358"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:357"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:358"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:362"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:361"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:362"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:366"
        BranchSideFuncs:
        - "cancel(boolean)"
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:365"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:355,1"
      Dst: "[io.netty.util.concurrent.Future].cancel(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 258
    functionLinenumberEnd: 264
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    - "[io.netty.channel.local.LocalServerChannel].isActive()"
    - "[io.netty.channel.Channel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    - "[io.netty.bootstrap.FailedChannel].isActive()"
    - "[io.netty.handler.timeout.IdleStateHandler].initialize(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    functionUses: 3
    ICount: 8
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:259"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:262"
        BranchSideFuncs:
        - "initialize(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:261"
        BranchSideFuncs:
        - "channelRegistered(io.netty.channel.ChannelHandlerContext)"
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:259,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:259,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:260,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].initialize(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.timeout.IdleStateHandler:262,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelInboundHandlerAdapter].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.ChannelInboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRegistered()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRegistered()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRegistered()"
    functionUses: 6
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelInboundHandlerAdapter:45,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRegistered()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 269
    functionLinenumberEnd: 273
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.IdleStateHandler].initialize(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelActive(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:270,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].initialize(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.timeout.IdleStateHandler:271,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].channelActive(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 275
    functionLinenumberEnd: 279
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.IdleStateHandler].destroy()"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:276,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].destroy()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:277,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].channelInactive(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelInboundHandlerAdapter].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.ChannelInboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelInactive()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelInactive()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelInactive()"
    functionUses: 12
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelInboundHandlerAdapter:81,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelInactive()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 281
    functionLinenumberEnd: 288
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 3
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:282"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:283"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:282"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:282"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:286"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:285"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:286,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 297
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.IdleStateHandler].ticksInNanos()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    functionUses: 3
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:291"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:291"
        BranchSideFuncs:
        - "ticksInNanos()"
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:290"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:291"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:295"
        BranchSideFuncs:
        - "ticksInNanos()"
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:294"
        BranchSideFuncs:
        - "fireChannelReadComplete()"
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:291"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:295"
        BranchSideFuncs:
        - "ticksInNanos()"
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:294"
        BranchSideFuncs:
        - "fireChannelReadComplete()"
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:292,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].ticksInNanos()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:295,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 300
    functionLinenumberEnd: 307
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].unvoid()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].unvoid()"
    - "[io.netty.channel.DefaultChannelPromise].unvoid()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].unvoid()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPromise].unvoid()"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 3
    ICount: 19
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:301"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:302"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "unvoid()"
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:301"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "unvoid()"
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:301"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:304"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "unvoid()"
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:303"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:302,1"
      Dst: "[io.netty.channel.ChannelPromise].unvoid()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:302,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.timeout.IdleStateHandler:302,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].channelIdle(io.netty.channel.ChannelHandlerContext,io.netty.handler.timeout.IdleStateEvent)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 372
    functionLinenumberEnd: 375
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.timeout.IdleStateEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:373,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].newIdleStateEvent(io.netty.handler.timeout.IdleState,boolean)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 379
    functionLinenumberEnd: 389
    functionDepth: 0
    returnType: "io.netty.handler.timeout.IdleStateEvent"
    argCount: 2
    argTypes:
    - "io.netty.handler.timeout.IdleState"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 3
    ICount: 32
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:382"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:381"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:384"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:383"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:386"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:385"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:380,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:388,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:388,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.timeout.IdleStateHandler:388,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.timeout.IdleStateHandler:388,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "io.netty.handler.timeout.IdleStateHandler:388,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:388,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].hasOutputChanged(io.netty.channel.ChannelHandlerContext,boolean)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 416
    functionLinenumberEnd: 459
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.embedded.EmbeddedChannel].unsafe()"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].outboundBuffer()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].outboundBuffer()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].outboundBuffer()"
    - "[io.netty.channel.ChannelOutboundBuffer].current()"
    - "[java.lang.System].identityHashCode(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundBuffer].totalPendingWriteBytes()"
    - "[io.netty.channel.ChannelOutboundBuffer].currentProgress()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].unsafe()"
    - "[io.netty.channel.Channel$Unsafe].outboundBuffer()"
    functionUses: 1
    ICount: 40
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:417"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:457"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:424"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:433"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:432"
        BranchSideFuncs:
        - "channel()"
        - "outboundBuffer()"
        - "unsafe()"
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:428"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:433"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:432"
        BranchSideFuncs:
        - "channel()"
        - "outboundBuffer()"
        - "unsafe()"
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:437"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:458"
        BranchSideFuncs:
        - "identityHashCode(java.lang.Object)"
        - "current()"
        - "totalPendingWriteBytes()"
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:457"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:441"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:442"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:441"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:441"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:450"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:449"
        BranchSideFuncs:
        - "currentProgress()"
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:445"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:450"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:449"
        BranchSideFuncs:
        - "currentProgress()"
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:451"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:458"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:457"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.IdleStateHandler:453"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler:451"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:433,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:434,1"
      Dst: "[io.netty.channel.Channel].unsafe()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:435,1"
      Dst: "[io.netty.channel.Channel$Unsafe].outboundBuffer()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:438,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].current()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:438,1"
      Dst: "[java.lang.System].identityHashCode(java.lang.Object)"
    - Src: "io.netty.handler.timeout.IdleStateHandler:439,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].totalPendingWriteBytes()"
    - Src: "io.netty.handler.timeout.IdleStateHandler:450,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].currentProgress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].access$002(io.netty.handler.timeout.IdleStateHandler,long)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].access$102(io.netty.handler.timeout.IdleStateHandler,boolean)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].access$202(io.netty.handler.timeout.IdleStateHandler,boolean)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].access$300(io.netty.handler.timeout.IdleStateHandler)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].access$400(io.netty.handler.timeout.IdleStateHandler)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].access$500(io.netty.handler.timeout.IdleStateHandler)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].access$602(io.netty.handler.timeout.IdleStateHandler,io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 2
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].access$700(io.netty.handler.timeout.IdleStateHandler)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].access$702(io.netty.handler.timeout.IdleStateHandler,boolean)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].access$000(io.netty.handler.timeout.IdleStateHandler)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].access$800(io.netty.handler.timeout.IdleStateHandler)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].access$902(io.netty.handler.timeout.IdleStateHandler,io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 2
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].access$100(io.netty.handler.timeout.IdleStateHandler)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].access$1000(io.netty.handler.timeout.IdleStateHandler,io.netty.channel.ChannelHandlerContext,boolean)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.IdleStateHandler].hasOutputChanged(io.netty.channel.ChannelHandlerContext,boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler:99,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].hasOutputChanged(io.netty.channel.ChannelHandlerContext,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].access$1100(io.netty.handler.timeout.IdleStateHandler)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].access$1202(io.netty.handler.timeout.IdleStateHandler,io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 2
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler].access$200(io.netty.handler.timeout.IdleStateHandler)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufProcessor$8].<init>()"
    functionSourceFile: "io.netty.buffer.ByteBufProcessor$8"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufProcessor$8:108,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufProcessor$8].process(byte)"
    functionSourceFile: "io.netty.buffer.ByteBufProcessor$8"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufProcessor$8:111"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufProcessor$8:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufProcessor$8:111"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufProcessor$8:110"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$DisconnectBuilder].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$DisconnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$DisconnectBuilder:670,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$DisconnectBuilder].properties(io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$DisconnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$DisconnectBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$DisconnectBuilder].reasonCode(byte)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$DisconnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$DisconnectBuilder"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$DisconnectBuilder].build()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$DisconnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].<init>(byte,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$DisconnectBuilder:684,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$DisconnectBuilder:686,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].<init>(byte,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$DisconnectBuilder:689,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].<init>(byte,io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte"
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.mqtt.MqttProperties].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttProperties)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader:34,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessage"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessage:48,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].<init>(io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameListenerDecorator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameListenerDecorator:29,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2FrameListenerDecorator:30,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameListenerDecorator"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    functionUses: 10
    ICount: 9
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameListenerDecorator:36,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameListenerDecorator"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    functionUses: 8
    ICount: 9
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameListenerDecorator:42,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameListenerDecorator"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "short"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    functionUses: 7
    ICount: 12
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameListenerDecorator:48,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameListenerDecorator"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    - "short"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    functionUses: 5
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameListenerDecorator:54,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameListenerDecorator"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    functionUses: 5
    ICount: 7
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameListenerDecorator:59,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameListenerDecorator"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    functionUses: 5
    ICount: 5
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameListenerDecorator:64,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameListenerDecorator"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec$1].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    functionUses: 5
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameListenerDecorator:69,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameListenerDecorator"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    functionUses: 5
    ICount: 6
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameListenerDecorator:74,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameListenerDecorator"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    functionUses: 5
    ICount: 6
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameListenerDecorator:79,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameListenerDecorator"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    functionUses: 5
    ICount: 9
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameListenerDecorator:85,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameListenerDecorator"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    functionUses: 4
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameListenerDecorator:91,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameListenerDecorator"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    functionUses: 5
    ICount: 7
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameListenerDecorator:97,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameListenerDecorator"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "byte"
    - "int"
    - "io.netty.handler.codec.http2.Http2Flags"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    functionUses: 4
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameListenerDecorator:103,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CoalescingBufferQueue].remove(int,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.CoalescingBufferQueue"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].alloc()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].alloc()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].remove(io.netty.buffer.ByteBufAllocator,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.Channel].alloc()"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CoalescingBufferQueue:62,1"
      Dst: "[io.netty.channel.Channel].alloc()"
    - Src: "io.netty.channel.CoalescingBufferQueue:62,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].remove(io.netty.buffer.ByteBufAllocator,int,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CoalescingBufferQueue].releaseAndFailAll(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.CoalescingBufferQueue"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractCoalescingBufferQueue].releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CoalescingBufferQueue:69,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CoalescingBufferQueue].compose(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.CoalescingBufferQueue"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 80
    functionDepth: 6
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].composeIntoComposite(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.CoalescingBufferQueue:74"
      Branch Sides:
      - BranchSide: "io.netty.channel.CoalescingBufferQueue:79"
        BranchSideFuncs:
        - "addComponent(boolean,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.channel.CoalescingBufferQueue:78"
        BranchSideFuncs:
        - "composeIntoComposite(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.channel.CoalescingBufferQueue:76,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.CoalescingBufferQueue:79,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].composeIntoComposite(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionDepth: 5
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].addComponent(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].addComponent(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].addComponent(boolean,int,io.netty.buffer.ByteBuf)"
    functionUses: 9
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:222,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponent(boolean,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].addComponent(boolean,int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 263
    functionLinenumberEnd: 268
    functionDepth: 4
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.CompositeByteBuf].addComponent0(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].consolidateIfNeeded()"
    functionUses: 3
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:264,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.CompositeByteBuf:265,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponent0(boolean,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.CompositeByteBuf:266,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].consolidateIfNeeded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].addComponent0(boolean,int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 280
    functionLinenumberEnd: 310
    functionDepth: 3
    returnType: "int"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureAccessible(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].newComponent(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].length()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].checkForOverflow(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].addComp(int,io.netty.buffer.CompositeByteBuf$Component)"
    - "[io.netty.buffer.CompositeByteBuf].updateComponentOffsets(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].reposition(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 4
    ICount: 42
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:281"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:282"
        BranchSideFuncs:
        - "checkComponentIndex(int)"
        - "checkForOverflow(int,int)"
        - "capacity()"
        - "newComponent(io.netty.buffer.ByteBuf,int)"
        - "ensureAccessible(io.netty.buffer.ByteBuf)"
        - "length()"
        - "addComp(int,io.netty.buffer.CompositeByteBuf$Component)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:281"
        BranchSideFuncs:
        - "checkComponentIndex(int)"
        - "checkForOverflow(int,int)"
        - "capacity()"
        - "newComponent(io.netty.buffer.ByteBuf,int)"
        - "ensureAccessible(io.netty.buffer.ByteBuf)"
        - "length()"
        - "addComp(int,io.netty.buffer.CompositeByteBuf$Component)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:281"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:282"
        BranchSideFuncs:
        - "checkComponentIndex(int)"
        - "checkForOverflow(int,int)"
        - "capacity()"
        - "newComponent(io.netty.buffer.ByteBuf,int)"
        - "ensureAccessible(io.netty.buffer.ByteBuf)"
        - "length()"
        - "addComp(int,io.netty.buffer.CompositeByteBuf$Component)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:281"
        BranchSideFuncs:
        - "checkComponentIndex(int)"
        - "checkForOverflow(int,int)"
        - "capacity()"
        - "newComponent(io.netty.buffer.ByteBuf,int)"
        - "ensureAccessible(io.netty.buffer.ByteBuf)"
        - "length()"
        - "addComp(int,io.netty.buffer.CompositeByteBuf$Component)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:296"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:298"
        BranchSideFuncs:
        - "updateComponentOffsets(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:297"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:296"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:298"
        BranchSideFuncs:
        - "updateComponentOffsets(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:297"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:298"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:301"
        BranchSideFuncs:
        - "reposition(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:300"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:301"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:306"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:305"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:306"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:304"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:303"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:306"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:309"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:308"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:281,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.CompositeByteBuf:284,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:287,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].ensureAccessible(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.CompositeByteBuf:287,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].newComponent(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:288,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].length()"
    - Src: "io.netty.buffer.CompositeByteBuf:292,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].capacity()"
    - Src: "io.netty.buffer.CompositeByteBuf:292,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].checkForOverflow(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:294,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComp(int,io.netty.buffer.CompositeByteBuf$Component)"
    - Src: "io.netty.buffer.CompositeByteBuf:297,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].updateComponentOffsets(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:299,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].reposition(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:307,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 7
  - functionName: "[io.netty.buffer.CompositeByteBuf].addComp(int,io.netty.buffer.CompositeByteBuf$Component)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2334
    functionLinenumberEnd: 2338
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.CompositeByteBuf$Component"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].shiftComps(int,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2335,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].shiftComps(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CoalescingBufferQueue].removeEmptyValue()"
    functionSourceFile: "io.netty.channel.CoalescingBufferQueue"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.SnappyFrameEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.SnappyFrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    - "[io.netty.handler.codec.compression.Snappy].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:29,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:45,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.SnappyFrameEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.SnappyFrameEncoder"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 88
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readSlice(int)"
    - "[io.netty.buffer.SwappedByteBuf].readSlice(int)"
    - "[io.netty.handler.codec.compression.SnappyFrameEncoder].writeUnencodedChunk(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.compression.SnappyFrameEncoder].calculateAndWriteChecksum(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.compression.Snappy].encode(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.compression.SnappyFrameEncoder].setChunkLength(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readSlice(int)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    functionUses: 1
    ICount: 40
    EdgeCount: 73
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.SnappyFrameEncoder:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.SnappyFrameEncoder:54"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.SnappyFrameEncoder:53"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.SnappyFrameEncoder:54"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.SnappyFrameEncoder:59"
        BranchSideFuncs:
        - "writeBytes(byte[])"
      - BranchSide: "io.netty.handler.codec.compression.SnappyFrameEncoder:58"
        BranchSideFuncs:
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.compression.SnappyFrameEncoder:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.SnappyFrameEncoder:84"
        BranchSideFuncs:
        - "writeUnencodedChunk(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.codec.compression.SnappyFrameEncoder:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.SnappyFrameEncoder:69"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.SnappyFrameEncoder:68"
        BranchSideFuncs:
        - "writeInt(int)"
    - Branch String: "io.netty.handler.codec.compression.SnappyFrameEncoder:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.SnappyFrameEncoder:77"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.SnappyFrameEncoder:76"
        BranchSideFuncs:
        - "readSlice(int)"
        - "setChunkLength(io.netty.buffer.ByteBuf,int)"
        - "encode(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
        - "calculateAndWriteChecksum(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:50,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:56,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:59,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:62,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:64,1"
      Dst: "[io.netty.buffer.ByteBuf].readSlice(int)"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:65,1"
      Dst: "[io.netty.handler.codec.compression.SnappyFrameEncoder].writeUnencodedChunk(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:69,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:72,1"
      Dst: "[io.netty.handler.codec.compression.SnappyFrameEncoder].calculateAndWriteChecksum(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:73,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].encode(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:74,1"
      Dst: "[io.netty.handler.codec.compression.SnappyFrameEncoder].setChunkLength(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.compression.SnappyFrameEncoder].writeUnencodedChunk(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.compression.SnappyFrameEncoder"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 95
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.compression.SnappyFrameEncoder].writeChunkLength(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.compression.SnappyFrameEncoder].calculateAndWriteChecksum(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:90,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:91,1"
      Dst: "[io.netty.handler.codec.compression.SnappyFrameEncoder].writeChunkLength(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:92,1"
      Dst: "[io.netty.handler.codec.compression.SnappyFrameEncoder].calculateAndWriteChecksum(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:93,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.SnappyFrameEncoder].writeChunkLength(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.compression.SnappyFrameEncoder"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeMediumLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.ByteBuf].writeMediumLE(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:111,1"
      Dst: "[io.netty.buffer.ByteBuf].writeMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.SnappyFrameEncoder].calculateAndWriteChecksum(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.SnappyFrameEncoder"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Snappy].calculateChecksum(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.ByteBuf].writeIntLE(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:121,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].calculateChecksum(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:121,1"
      Dst: "[io.netty.buffer.ByteBuf].writeIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Snappy].calculateChecksum(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 612
    functionLinenumberEnd: 614
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Snappy].calculateChecksum(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 1
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:613,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.Snappy:613,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.Snappy:613,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].calculateChecksum(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Snappy].calculateChecksum(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 622
    functionLinenumberEnd: 630
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Crc32c].<init>()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.compression.Crc32c].getValue()"
    - "[io.netty.handler.codec.compression.Snappy].maskChecksum(long)"
    - "[io.netty.handler.codec.compression.Crc32c].reset()"
    functionUses: 2
    ICount: 13
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:623,1"
      Dst: "[io.netty.handler.codec.compression.Crc32c].<init>()"
    - Src: "io.netty.handler.codec.compression.Snappy:625,1"
      Dst: "[io.netty.handler.codec.compression.ByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.compression.Snappy:626,1"
      Dst: "[io.netty.handler.codec.compression.Crc32c].getValue()"
    - Src: "io.netty.handler.codec.compression.Snappy:626,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].maskChecksum(long)"
    - Src: "io.netty.handler.codec.compression.Snappy:628,1"
      Dst: "[io.netty.handler.codec.compression.Crc32c].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Crc32c].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.Crc32c"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ByteBufChecksum].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Crc32c:26,1"
      Dst: "[io.netty.handler.codec.compression.ByteBufChecksum].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Crc32c].getValue()"
    functionSourceFile: "io.netty.handler.codec.compression.Crc32c"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Snappy].maskChecksum(long)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 674
    functionLinenumberEnd: 676
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Crc32c].reset()"
    functionSourceFile: "io.netty.handler.codec.compression.Crc32c"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Snappy].encode(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 138
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.handler.codec.compression.Snappy].getHashTable(int)"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:java.lang.Integer].numberOfLeadingZeros(int)"
    - "[io.netty.handler.codec.compression.Snappy].hash(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.SlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getInt(int)"
    - "[io.netty.handler.codec.compression.Snappy].encodeLiteral(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.compression.Snappy].findMatchingLength(io.netty.buffer.ByteBuf,int,int,int)"
    - "[io.netty.handler.codec.compression.Snappy].encodeCopy(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[java.lang.Integer].numberOfLeadingZeros(int)"
    - "[io.netty.buffer.ByteBuf].getInt(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 2
    ICount: 94
    EdgeCount: 125
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Snappy:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:65"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:64"
        BranchSideFuncs:
        - "writeByte(int)"
    - Branch String: "io.netty.handler.codec.compression.Snappy:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:134"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:133"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:96"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:95"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:102"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:85"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:116"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:120"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:119"
        BranchSideFuncs:
        - "getInt(int)"
    - Branch String: "io.netty.handler.codec.compression.Snappy:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:107"
        BranchSideFuncs:
        - "findMatchingLength(io.netty.buffer.ByteBuf,int,int,int)"
        - "readerIndex()"
        - "readerIndex(int)"
        - "encodeCopy(io.netty.buffer.ByteBuf,int,int)"
    - Branch String: "io.netty.handler.codec.compression.Snappy:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:137"
        BranchSideFuncs:
        - "encodeLiteral(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
      - BranchSide: "io.netty.handler.codec.compression.Snappy:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:63,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.compression.Snappy:70,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.Snappy:73,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].getHashTable(int)"
    - Src: "io.netty.handler.codec.compression.Snappy:74,1"
      Dst: "[java.lang.Integer].numberOfLeadingZeros(int)"
    - Src: "io.netty.handler.codec.compression.Snappy:79,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].hash(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.compression.Snappy:102,1"
      Dst: "[io.netty.buffer.ByteBuf].getInt(int)"
    - Src: "io.netty.handler.codec.compression.Snappy:104,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].encodeLiteral(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.Snappy:109,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].findMatchingLength(io.netty.buffer.ByteBuf,int,int,int)"
    - Src: "io.netty.handler.codec.compression.Snappy:112,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].encodeCopy(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.compression.Snappy:113,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.compression.Snappy].getHashTable(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 165
    functionDepth: 0
    returnType: "short[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Snappy:161"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:164"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:163"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:161"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:164"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:163"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Snappy].hash(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.SlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.ByteBuf].getInt(int)"
    functionUses: 5
    ICount: 7
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:150,1"
      Dst: "[io.netty.buffer.ByteBuf].getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Snappy].encodeLiteral(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 222
    functionLinenumberEnd: 236
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.compression.Snappy].bitsToEncode(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    functionUses: 2
    ICount: 26
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Snappy:223"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:226"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:225"
        BranchSideFuncs:
        - "bitsToEncode(int)"
    - Branch String: "io.netty.handler.codec.compression.Snappy:229"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:233"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf,int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:224,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.compression.Snappy:226,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].bitsToEncode(int)"
    - Src: "io.netty.handler.codec.compression.Snappy:234,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Snappy].bitsToEncode(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 211
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].highestOneBit(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Snappy:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:210"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:209"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:204,1"
      Dst: "[java.lang.Integer].highestOneBit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Snappy].findMatchingLength(io.netty.buffer.ByteBuf,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 193
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.SlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].getInt(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 1
    ICount: 25
    EdgeCount: 82
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Snappy:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:187"
        BranchSideFuncs:
        - "getInt(int)"
      - BranchSide: "io.netty.handler.codec.compression.Snappy:186"
        BranchSideFuncs:
        - "getByte(int)"
    - Branch String: "io.netty.handler.codec.compression.Snappy:182"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:187"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:186"
        BranchSideFuncs:
        - "getByte(int)"
    - Branch String: "io.netty.handler.codec.compression.Snappy:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:192"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:191"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:192"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:191"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:182,1"
      Dst: "[io.netty.buffer.ByteBuf].getInt(int)"
    - Src: "io.netty.handler.codec.compression.Snappy:187,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.compression.Snappy].encodeCopy(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 255
    functionLinenumberEnd: 268
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Snappy].encodeCopyWithOffset(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Snappy:256"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:261"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:260"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:261"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:266"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:265"
        BranchSideFuncs:
        - "encodeCopyWithOffset(io.netty.buffer.ByteBuf,int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:257,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].encodeCopyWithOffset(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Snappy].encodeCopyWithOffset(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 237
    functionLinenumberEnd: 247
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    functionUses: 3
    ICount: 25
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Snappy:238"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:242"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:241"
        BranchSideFuncs:
        - "writeByte(int)"
    - Branch String: "io.netty.handler.codec.compression.Snappy:238"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:242"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:241"
        BranchSideFuncs:
        - "writeByte(int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:239,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.SnappyFrameEncoder].setChunkLength(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.compression.SnappyFrameEncoder"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 103
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.handler.codec.compression.CompressionException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setMediumLE(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.buffer.ByteBuf].setMediumLE(int,int)"
    functionUses: 2
    ICount: 17
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.SnappyFrameEncoder:98"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.SnappyFrameEncoder:101"
        BranchSideFuncs:
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.compression.SnappyFrameEncoder:100"
        BranchSideFuncs:
        - "setMediumLE(int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:97,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:99,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:99,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:99,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:99,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:99,1"
      Dst: "[io.netty.handler.codec.compression.CompressionException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:101,1"
      Dst: "[io.netty.buffer.ByteBuf].setMediumLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.SnappyFrameEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.SnappyFrameEncoder"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.SnappyFrameEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.SnappyFrameEncoder:29,1"
      Dst: "[io.netty.handler.codec.compression.SnappyFrameEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent:35,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].copy()"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.redis.BulkStringRedisContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].copy()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent:40,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].duplicate()"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.redis.BulkStringRedisContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].duplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent:45,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.redis.BulkStringRedisContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retainedDuplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent:50,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 3
    returnType: "io.netty.handler.codec.redis.BulkStringRedisContent"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent:55,1"
      Dst: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].retain()"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionDepth: 1
    returnType: "io.netty.handler.codec.redis.BulkStringRedisContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retain()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent:60,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].retain(int)"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.redis.BulkStringRedisContent"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent:66,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].touch()"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionDepth: 1
    returnType: "io.netty.handler.codec.redis.BulkStringRedisContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].touch()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent:72,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionDepth: 1
    returnType: "io.netty.handler.codec.redis.BulkStringRedisContent"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].touch(java.lang.Object)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent:78,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].toString()"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 20
    ICount: 11
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent:84,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent:84,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent:85,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent:86,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent:87,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent:87,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.redis.DefaultBulkStringRedisContent:88,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].<init>(io.netty.handler.ssl.SslHandler$SslTasksRunner,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslTasksRunner$3"
    linkageType: ""
    functionLinenumber: 1801
    functionLinenumberEnd: 1803
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner$3:1802,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslTasksRunner$3"
    linkageType: ""
    functionLinenumber: 1804
    functionLinenumberEnd: 1808
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].access$1400(io.netty.handler.ssl.SslHandler,int)"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].access$2100(io.netty.handler.ssl.SslHandler$SslTasksRunner,java.lang.Throwable)"
    functionUses: 50
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner$3:1805,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$1400(io.netty.handler.ssl.SslHandler,int)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner$3:1806,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].access$2100(io.netty.handler.ssl.SslHandler$SslTasksRunner,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$1400(io.netty.handler.ssl.SslHandler,int)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].clearState(int)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].clearState(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].clearState(int)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 2277
    functionLinenumberEnd: 2280
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].access$2100(io.netty.handler.ssl.SslHandler$SslTasksRunner,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    linkageType: ""
    functionLinenumber: 1608
    functionLinenumberEnd: 1610
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].safeExceptionCaught(java.lang.Throwable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1609,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].safeExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].safeExceptionCaught(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    linkageType: ""
    functionLinenumber: 1642
    functionLinenumberEnd: 1648
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].access$900(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.handler.ssl.SslHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].wrapIfNeeded(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 5
    ICount: 13
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1643,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$900(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1643,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].wrapIfNeeded(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1643,1"
      Dst: "[io.netty.handler.ssl.SslHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1645,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].wrapIfNeeded(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    linkageType: ""
    functionLinenumber: 1649
    functionLinenumberEnd: 1657
    functionDepth: 2
    returnType: "java.lang.Throwable"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1650"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1655"
        BranchSideFuncs:
        - "<init>(java.lang.Throwable)"
    - Branch String: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1656"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1655"
        BranchSideFuncs:
        - "<init>(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1656,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.DecoderException"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.Throwable)"
    functionUses: 17
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DecoderException:49,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1089
    functionLinenumberEnd: 1108
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].ignoreException(java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    - "[io.netty.channel.local.LocalServerChannel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    - "[io.netty.bootstrap.FailedChannel].isActive()"
    - "[io.netty.channel.AbstractChannelHandlerContext].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.Channel].isActive()"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 4
    ICount: 18
    EdgeCount: 49
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1090"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1104"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1093"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1100"
        BranchSideFuncs:
        - "isActive()"
        - "channel()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1101"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1107"
        BranchSideFuncs:
        - "close()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1106"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1090,1"
      Dst: "[io.netty.handler.ssl.SslHandler].ignoreException(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:1093,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.handler.ssl.SslHandler:1096,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.ssl.SslHandler:1094,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:1101,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.handler.ssl.SslHandler:1102,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    - Src: "io.netty.handler.ssl.SslHandler:1105,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.SslHandler].ignoreException(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1118
    functionLinenumberEnd: 1176
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[java.io.InvalidClassException].getMessage()"
    - "[java.nio.file.InvalidPathException].getMessage()"
    - "[java.lang.Throwable].getMessage()"
    - "[sun.nio.fs.UnixException].getMessage()"
    - "[java.net.URISyntaxException].getMessage()"
    - "[java.util.regex.PatternSyntaxException].getMessage()"
    - "[java.nio.file.FileSystemException].getMessage()"
    - "[java.security.cert.CertificateRevokedException].getMessage()"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].matches()"
    - "[java.lang.Throwable].getStackTrace()"
    - "[java.lang.StackTraceElement].getClassName()"
    - "[java.lang.StackTraceElement].getMethodName()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.Object].getClass()"
    - "[io.netty.util.internal.PlatformDependent].getClassLoader(java.lang.Class)"
    - "[java.lang.ClassLoader].loadClass(java.lang.String)"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[java.lang.Class].getName()"
    - "[java.lang.Class].getSuperclass()"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 68
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1119"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1175"
        BranchSideFuncs:
        - "getMessage()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1174"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1119"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1175"
        BranchSideFuncs:
        - "getMessage()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1174"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1119"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1175"
        BranchSideFuncs:
        - "getMessage()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1174"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1124"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1129"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1128"
        BranchSideFuncs:
        - "getStackTrace()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1124"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1129"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1128"
        BranchSideFuncs:
        - "getStackTrace()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1130"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1175"
        BranchSideFuncs:
        - "getClassName()"
        - "getMethodName()"
        - "startsWith(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1174"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1135"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1140"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1139"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1140"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1146"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1145"
        BranchSideFuncs:
        - "matcher(java.lang.CharSequence)"
        - "matches()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1146"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1154"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1153"
        BranchSideFuncs:
        - "loadClass(java.lang.String)"
        - "getClassLoader(java.lang.Class)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1156"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1158"
        BranchSideFuncs:
        - "isAssignableFrom(java.lang.Class)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1157"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1157"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1162"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1161"
        BranchSideFuncs:
        - "javaVersion()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1162"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1171"
        BranchSideFuncs:
        - "getName()"
        - "getSuperclass()"
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1170"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1163"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1171"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1170"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1167"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1128"
        BranchSideFuncs:
        - "getStackTrace()"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1119,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - Src: "io.netty.handler.ssl.SslHandler:1120,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.handler.ssl.SslHandler:1124,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "io.netty.handler.ssl.SslHandler:1124,1"
      Dst: "[java.util.regex.Matcher].matches()"
    - Src: "io.netty.handler.ssl.SslHandler:1129,1"
      Dst: "[java.lang.Throwable].getStackTrace()"
    - Src: "io.netty.handler.ssl.SslHandler:1131,1"
      Dst: "[java.lang.StackTraceElement].getClassName()"
    - Src: "io.netty.handler.ssl.SslHandler:1132,1"
      Dst: "[java.lang.StackTraceElement].getMethodName()"
    - Src: "io.netty.handler.ssl.SslHandler:1135,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslHandler:1140,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:1154,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.ssl.SslHandler:1154,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getClassLoader(java.lang.Class)"
    - Src: "io.netty.handler.ssl.SslHandler:1154,1"
      Dst: "[java.lang.ClassLoader].loadClass(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslHandler:1156,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "io.netty.handler.ssl.SslHandler:1162,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.ssl.SslHandler:1163,1"
      Dst: "[java.lang.Class].getSuperclass()"
    - Src: "io.netty.handler.ssl.SslHandler:1163,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.handler.ssl.SslHandler:1167,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.handler.ssl.SslHandler:1168,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 25
    CyclomaticComplexity: 11
  - functionName: "[io.netty.channel.VoidChannelPromise$1].<init>(io.netty.channel.VoidChannelPromise)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise$1"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.VoidChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise$1:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.VoidChannelPromise$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise$1"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 50
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.FailedChannelFuture:io.netty.channel.SucceededChannelFuture:io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].access$000(io.netty.channel.VoidChannelPromise,java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].cause()"
    functionUses: 1
    ICount: 7
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.VoidChannelPromise$1:46"
      Branch Sides:
      - BranchSide: "io.netty.channel.VoidChannelPromise$1:49"
        BranchSideFuncs:
        - "access$000(io.netty.channel.VoidChannelPromise,java.lang.Throwable)"
      - BranchSide: "io.netty.channel.VoidChannelPromise$1:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise$1:45,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.channel.VoidChannelPromise$1:47,1"
      Dst: "[io.netty.channel.VoidChannelPromise].access$000(io.netty.channel.VoidChannelPromise,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.VoidChannelPromise$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.VoidChannelPromise$1"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.VoidChannelPromise$1:42,1"
      Dst: "[io.netty.channel.VoidChannelPromise$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf$1].<init>()"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf$1"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf$1:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf$1"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 2
    returnType: "io.netty.buffer.PooledSlicedByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledSlicedByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.buffer.PooledSlicedByteBuf$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf$1:40,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.buffer.PooledSlicedByteBuf$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.buffer.PooledSlicedByteBuf$1)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    - "io.netty.buffer.PooledSlicedByteBuf$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledSlicedByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:34,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:63,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.MarshallingEncoder].<init>(io.netty.handler.codec.marshalling.MarshallerProvider)"
    functionSourceFile: "io.netty.handler.codec.marshalling.MarshallingEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.marshalling.MarshallerProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.MarshallingEncoder:48,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.MarshallingEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.marshalling.MarshallingEncoder"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 65
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.marshalling.ThreadLocalMarshallerProvider].getMarshaller(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.handler.codec.marshalling.DefaultMarshallerProvider].getMarshaller(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.marshalling.ChannelBufferByteOutput].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setInt(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setInt(int,int)"
    - "[io.netty.handler.codec.marshalling.MarshallerProvider].getMarshaller(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - "[org.jboss.marshalling.Marshaller].start(org.jboss.marshalling.ByteOutput)"
    - "[org.jboss.marshalling.Marshaller].writeObject(java.lang.Object)"
    - "[org.jboss.marshalling.Marshaller].finish()"
    - "[org.jboss.marshalling.Marshaller].close()"
    - "[io.netty.buffer.ByteBuf].setInt(int,int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 42
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.MarshallingEncoder:54,1"
      Dst: "[io.netty.handler.codec.marshalling.MarshallerProvider].getMarshaller(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.marshalling.MarshallingEncoder:55,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.marshalling.MarshallingEncoder:56,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - Src: "io.netty.handler.codec.marshalling.MarshallingEncoder:57,1"
      Dst: "[io.netty.handler.codec.marshalling.ChannelBufferByteOutput].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.marshalling.MarshallingEncoder:58,1"
      Dst: "[org.jboss.marshalling.Marshaller].start(org.jboss.marshalling.ByteOutput)"
    - Src: "io.netty.handler.codec.marshalling.MarshallingEncoder:59,1"
      Dst: "[org.jboss.marshalling.Marshaller].writeObject(java.lang.Object)"
    - Src: "io.netty.handler.codec.marshalling.MarshallingEncoder:60,1"
      Dst: "[org.jboss.marshalling.Marshaller].finish()"
    - Src: "io.netty.handler.codec.marshalling.MarshallingEncoder:61,1"
      Dst: "[org.jboss.marshalling.Marshaller].close()"
    - Src: "io.netty.handler.codec.marshalling.MarshallingEncoder:63,1"
      Dst: "[io.netty.buffer.ByteBuf].setInt(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ChannelBufferByteOutput].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.marshalling.ChannelBufferByteOutput"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.ChannelBufferByteOutput:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$HandshakeState].values()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$HandshakeState"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionDepth: 0
    returnType: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$HandshakeState[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeSet].clone()"
    - "[javax.crypto.MacSpi].clone()"
    - "[java.util.GregorianCalendar].clone()"
    - "[java.util.Hashtable].clone()"
    - "[java.util.Hashtable$Entry].clone()"
    - "[java.util.LinkedList].clone()"
    - "[java.lang.Thread].clone()"
    - "[java.util.IdentityHashMap].clone()"
    - "[java.util.Locale].clone()"
    - "[java.util.ArrayList].clone()"
    - "[java.util.concurrent.CopyOnWriteArrayList].clone()"
    - "[java.lang.Object].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[java.util.ArrayDeque].clone()"
    - "[java.util.jar.Manifest].clone()"
    - "[java.security.Signature].clone()"
    - "[java.util.zip.ZipEntry].clone()"
    - "[java.util.TimeZone].clone()"
    - "[java.util.AbstractMap].clone()"
    - "[java.text.NumberFormat].clone()"
    - "[java.util.EnumSet].clone()"
    - "[java.security.MessageDigest].clone()"
    - "[sun.security.x509.GeneralSubtrees].clone()"
    - "[java.lang.ref.Reference].clone()"
    - "[java.text.SimpleDateFormat].clone()"
    - "[java.util.BitSet].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[sun.util.calendar.CalendarDate].clone()"
    - "[java.text.Collator].clone()"
    - "[jaz.Zer].clone()"
    - "[sun.text.normalizer.UCharacterIterator].clone()"
    - "[java.security.MessageDigestSpi].clone()"
    - "[java.util.Vector].clone()"
    - "[sun.security.x509.NameConstraintsExtension].clone()"
    - "[java.util.jar.Attributes].clone()"
    - "[java.text.DateFormat].clone()"
    - "[java.util.HashMap].clone()"
    - "[java.text.BreakIterator].clone()"
    - "[java.text.MessageFormat].clone()"
    - "[javax.crypto.Mac].clone()"
    - "[java.util.Properties].clone()"
    - "[java.lang.invoke.MemberName].clone()"
    - "[java.util.Date].clone()"
    - "[java.security.SignatureSpi].clone()"
    - "[java.util.Calendar].clone()"
    - "[sun.security.util.BitArray].clone()"
    - "[java.text.Format].clone()"
    - "[java.util.TreeMap].clone()"
    - "[java.text.DecimalFormatSymbols].clone()"
    - "[java.util.HashSet].clone()"
    - "[java.net.HttpCookie].clone()"
    - "[java.text.DateFormatSymbols].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 53
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$HandshakeState:134,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$HandshakeState].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$HandshakeState"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$HandshakeState"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$HandshakeState:134,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$HandshakeState].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$HandshakeState"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$HandshakeState:134,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].size()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData"
    linkageType: ""
    functionLinenumber: 455
    functionLinenumberEnd: 457
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData"
    linkageType: ""
    functionLinenumber: 460
    functionLinenumberEnd: 469
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CoalescingBufferQueue].releaseAndFailAll(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$000(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2LifecycleManager].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    functionUses: 3
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:461,1"
      Dst: "[io.netty.channel.CoalescingBufferQueue].releaseAndFailAll(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:467,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$000(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:467,1"
      Dst: "[io.netty.handler.codec.http2.Http2LifecycleManager].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].write(io.netty.channel.ChannelHandlerContext,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData"
    linkageType: ""
    functionLinenumber: 471
    functionLinenumberEnd: 512
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractCoalescingBufferQueue].readableBytes()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].isEmpty()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CoalescingBufferQueue].remove(int,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].frameWriter()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].size()"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.handler.codec.http2.Http2DataWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 49
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:473"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:499"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:498"
        BranchSideFuncs:
        - "newPromise()"
        - "writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
        - "min(int,int)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "frameWriter()"
        - "id()"
        - "readableBytes()"
        - "remove(int,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:474"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:493"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:492"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:475"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:486"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:493"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:499"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:498"
        BranchSideFuncs:
        - "newPromise()"
        - "writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
        - "min(int,int)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "frameWriter()"
        - "id()"
        - "readableBytes()"
        - "remove(int,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:509"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:499"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:498"
        BranchSideFuncs:
        - "newPromise()"
        - "writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
        - "min(int,int)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "frameWriter()"
        - "id()"
        - "readableBytes()"
        - "remove(int,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:510"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:499"
        BranchSideFuncs:
        - "writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
        - "frameWriter()"
        - "id()"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:498"
        BranchSideFuncs:
        - "newPromise()"
        - "writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
        - "min(int,int)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "frameWriter()"
        - "id()"
        - "readableBytes()"
        - "remove(int,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:472,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].readableBytes()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:475,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].isEmpty()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:487,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:487,1"
      Dst: "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:488,1"
      Dst: "[io.netty.channel.CoalescingBufferQueue].remove(int,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:488,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:499,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:509,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].frameWriter()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:509,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:510,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].size()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:509,1"
      Dst: "[io.netty.handler.codec.http2.Http2DataWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].merge(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData"
    linkageType: ""
    functionLinenumber: 515
    functionLinenumberEnd: 526
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].size()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].copyTo(io.netty.channel.AbstractCoalescingBufferQueue)"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].readableBytes()"
    - "[java.lang.Math].max(int,int)"
    functionUses: 1
    ICount: 24
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:516"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:518"
        BranchSideFuncs:
        - "getClass()"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:517"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:517"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:520"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:519"
        BranchSideFuncs:
        - "copyTo(io.netty.channel.AbstractCoalescingBufferQueue)"
        - "max(int,int)"
        - "readableBytes()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:516,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:517,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData].size()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:520,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].copyTo(io.netty.channel.AbstractCoalescingBufferQueue)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:521,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].readableBytes()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledData:523,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].<init>(io.netty.channel.kqueue.KQueueDomainDatagramChannel)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    - "[io.netty.channel.FixedRecvByteBufAllocator].<init>(int)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:41,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:42,1"
      Dst: "[io.netty.channel.FixedRecvByteBufAllocator].<init>(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:42,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:48,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].getOptions()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:48,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:53,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions()"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:53,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 62
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].getSendBufferSize()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 5
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:55"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:58"
        BranchSideFuncs:
        - "valueOf(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:57"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:58"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:61"
        BranchSideFuncs:
        - "getSendBufferSize()"
        - "valueOf(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:60"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:56,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:59,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].getSendBufferSize()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:59,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:61,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].getSendBufferSize()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 162
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getSendBufferSize()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:159,1"
      Dst: "[io.netty.channel.unix.Socket].getSendBufferSize()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:161,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].getSendBufferSize()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 428
    functionLinenumberEnd: 430
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getSendBufferSize(int)"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:429,1"
      Dst: "[io.netty.channel.unix.Socket].getSendBufferSize(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].getSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 78
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setActiveOnOpen(boolean)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setSendBufferSize(int)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 2
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:69"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:71"
        BranchSideFuncs:
        - "booleanValue()"
        - "setActiveOnOpen(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:70"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:71"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:74"
        BranchSideFuncs:
        - "intValue()"
        - "setSendBufferSize(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:73"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:67,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:70,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:70,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setActiveOnOpen(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:72,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:72,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setSendBufferSize(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:74,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setActiveOnOpen(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel:io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isRegistered()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.channel.Channel].isRegistered()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:81"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:84"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:81,1"
      Dst: "[io.netty.channel.Channel].isRegistered()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:82,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 153
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setSendBufferSize(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:149,1"
      Dst: "[io.netty.channel.unix.Socket].setSendBufferSize(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:152,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].setSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 472
    functionLinenumberEnd: 475
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setSendBufferSize(int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:473,1"
      Dst: "[io.netty.channel.unix.Socket].setSendBufferSize(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].setSendBufferSize(int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 104
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.unix.GenericUnixChannelOption].level()"
    - "[io.netty.channel.unix.GenericUnixChannelOption].optname()"
    - "[io.netty.channel.unix.Socket].setIntOpt(int,int,int)"
    - "[io.netty.channel.unix.Socket].setRawOpt(int,int,java.nio.ByteBuffer)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    functionUses: 7
    ICount: 41
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueChannelConfig:84"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueChannelConfig:88"
        BranchSideFuncs:
        - "booleanValue()"
        - "setRcvAllocTransportProvidesGuess(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueChannelConfig:87"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueChannelConfig:88"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueChannelConfig:92"
        BranchSideFuncs:
        - "intValue()"
        - "setIntOpt(int,int,int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueChannelConfig:91"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueChannelConfig:92"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueChannelConfig:99"
        BranchSideFuncs:
        - "level()"
        - "setRawOpt(int,int,java.nio.ByteBuffer)"
        - "optname()"
      - BranchSide: "io.netty.channel.kqueue.KQueueChannelConfig:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:82,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:85,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:85,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:90,1"
      Dst: "[io.netty.channel.unix.GenericUnixChannelOption].level()"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:90,1"
      Dst: "[io.netty.channel.unix.GenericUnixChannelOption].optname()"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:90,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:90,1"
      Dst: "[io.netty.channel.unix.Socket].setIntOpt(int,int,int)"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:94,1"
      Dst: "[io.netty.channel.unix.Socket].setRawOpt(int,int,java.nio.ByteBuffer)"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:98,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:100,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "io.netty.channel.kqueue.KQueueChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].setIntOpt(int,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 500
    functionLinenumberEnd: 503
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setIntOpt(int,int,int,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:501,1"
      Dst: "[io.netty.channel.unix.Socket].setIntOpt(int,int,int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].setIntOpt(int,int,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.Socket].setRawOpt(int,int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 504
    functionLinenumberEnd: 519
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setRawOptAddress(int,int,int,long,int)"
    - "[io.netty.channel.unix.Buffer].memoryAddress(java.nio.ByteBuffer)"
    - "[io.netty.channel.unix.Socket].setRawOptArray(int,int,int,byte[],int,int)"
    - "[java.nio.Buffer].limit()"
    - "[java.nio.ByteBuffer].isDirect()"
    - "[java.nio.Buffer].position()"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.ByteBuffer].hasArray()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.nio.ByteBuffer].arrayOffset()"
    - "[java.nio.ByteBuffer].duplicate()"
    - "[java.nio.ByteBuffer].get(byte[])"
    - "[java.nio.ByteBuffer].position(int)"
    functionUses: 2
    ICount: 34
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:506"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:508"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Socket:509"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:512"
        BranchSideFuncs:
        - "setRawOptArray(int,int,int,byte[],int,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:505,1"
      Dst: "[java.nio.Buffer].limit()"
    - Src: "io.netty.channel.unix.Socket:506,1"
      Dst: "[java.nio.ByteBuffer].isDirect()"
    - Src: "io.netty.channel.unix.Socket:508,1"
      Dst: "[io.netty.channel.unix.Buffer].memoryAddress(java.nio.ByteBuffer)"
    - Src: "io.netty.channel.unix.Socket:508,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.channel.unix.Socket:508,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.channel.unix.Socket:507,1"
      Dst: "[io.netty.channel.unix.Socket].setRawOptAddress(int,int,int,long,int)"
    - Src: "io.netty.channel.unix.Socket:509,1"
      Dst: "[java.nio.ByteBuffer].hasArray()"
    - Src: "io.netty.channel.unix.Socket:511,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "io.netty.channel.unix.Socket:511,1"
      Dst: "[java.nio.ByteBuffer].arrayOffset()"
    - Src: "io.netty.channel.unix.Socket:510,1"
      Dst: "[io.netty.channel.unix.Socket].setRawOptArray(int,int,int,byte[],int,int)"
    - Src: "io.netty.channel.unix.Socket:514,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    - Src: "io.netty.channel.unix.Socket:514,1"
      Dst: "[java.nio.ByteBuffer].get(byte[])"
    - Src: "io.netty.channel.unix.Socket:517,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.unix.Socket].setRawOptAddress(int,int,int,long,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "int"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.Socket].setRawOptArray(int,int,int,byte[],int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].getActiveOnOpen()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:93,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:144,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setAutoClose(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionDepth: 1
    returnType: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:99,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setAutoRead(boolean)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:105,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:160,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:111,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:125,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:118,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:132,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setMaxMessagesPerWrite(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerWrite(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:124,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerWrite(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:130,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:186,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionDepth: 1
    returnType: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:136,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 144
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:142,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 156
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator].newHandle()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].newHandle()"
    - "[io.netty.channel.FixedRecvByteBufAllocator].newHandle()"
    - "[io.netty.channel.ServerChannelRecvByteBufAllocator].newHandle()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.RecvByteBufAllocator].newHandle()"
    functionUses: 8
    ICount: 15
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueChannelConfig:150"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueChannelConfig:154"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.kqueue.KQueueChannelConfig:153"
        BranchSideFuncs:
        - "setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:150,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator].newHandle()"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:151,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:151,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:151,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:151,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:151,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:154,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:167,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:180,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteSpinCount(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig:173,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:138,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.RecyclableArrayList].newInstance()"
    functionSourceFile: "io.netty.util.internal.RecyclableArrayList"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 1
    returnType: "io.netty.util.internal.RecyclableArrayList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.RecyclableArrayList].newInstance(int)"
    functionUses: 2
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.RecyclableArrayList:50,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].newInstance(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.RecyclableArrayList].newInstance(int)"
    functionSourceFile: "io.netty.util.internal.RecyclableArrayList"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "io.netty.util.internal.RecyclableArrayList"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectPool$RecyclerObjectPool].get()"
    - "[java.util.ArrayList].ensureCapacity(int)"
    - "[io.netty.util.internal.ObjectPool].get()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.RecyclableArrayList:57,1"
      Dst: "[io.netty.util.internal.ObjectPool].get()"
    - Src: "io.netty.util.internal.RecyclableArrayList:58,1"
      Dst: "[java.util.ArrayList].ensureCapacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.RecyclableArrayList].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.util.internal.RecyclableArrayList"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.RecyclableArrayList].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.RecyclableArrayList:65,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.RecyclableArrayList].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    functionSourceFile: "io.netty.util.internal.RecyclableArrayList"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.RecyclableArrayList:69,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.RecyclableArrayList].addAll(java.util.Collection<?>)"
    functionSourceFile: "io.netty.util.internal.RecyclableArrayList"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.RecyclableArrayList].checkNullElements(java.util.Collection)"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    functionUses: 7
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.RecyclableArrayList:76"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.RecyclableArrayList:80"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.RecyclableArrayList:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.RecyclableArrayList:75,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].checkNullElements(java.util.Collection)"
    - Src: "io.netty.util.internal.RecyclableArrayList:76,1"
      Dst: "[java.util.ArrayList].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.RecyclableArrayList].addAll(int,java.util.Collection<?>)"
    functionSourceFile: "io.netty.util.internal.RecyclableArrayList"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.Collection<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.RecyclableArrayList].checkNullElements(java.util.Collection)"
    - "[java.util.ArrayList].addAll(int,java.util.Collection)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.RecyclableArrayList:86"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.RecyclableArrayList:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.RecyclableArrayList:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.RecyclableArrayList:85,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].checkNullElements(java.util.Collection)"
    - Src: "io.netty.util.internal.RecyclableArrayList:86,1"
      Dst: "[java.util.ArrayList].addAll(int,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.RecyclableArrayList].checkNullElements(java.util.Collection<?>)"
    functionSourceFile: "io.netty.util.internal.RecyclableArrayList"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayDeque:java.util.ArrayList:java.util.HashSet:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.TreeSet:java.util.Vector:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$ValuesView:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 27
    EdgeCount: 140
    BranchProfiles:
    - Branch String: "io.netty.util.internal.RecyclableArrayList:94"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.RecyclableArrayList:103"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "io.netty.util.internal.RecyclableArrayList:94"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.RecyclableArrayList:103"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "io.netty.util.internal.RecyclableArrayList:98"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.RecyclableArrayList:103"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "io.netty.util.internal.RecyclableArrayList:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.RecyclableArrayList:99"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.RecyclableArrayList:96"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.RecyclableArrayList:95"
        BranchSideFuncs:
        - "size()"
    - Branch String: "io.netty.util.internal.RecyclableArrayList:104"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.RecyclableArrayList:110"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.util.internal.RecyclableArrayList:109"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.RecyclableArrayList:105"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.RecyclableArrayList:108"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.RecyclableArrayList:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.RecyclableArrayList:97,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.util.internal.RecyclableArrayList:99,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.util.internal.RecyclableArrayList:100,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.RecyclableArrayList:104,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.util.internal.RecyclableArrayList:104,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.util.internal.RecyclableArrayList:104,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.RecyclableArrayList"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 119
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 394
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.RecyclableArrayList:114"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.RecyclableArrayList:118"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.RecyclableArrayList:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.RecyclableArrayList:114,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.RecyclableArrayList:114,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.RecyclableArrayList].add(int,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.RecyclableArrayList"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.ArrayList].add(int,java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.RecyclableArrayList:123,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.RecyclableArrayList:123,1"
      Dst: "[java.util.ArrayList].add(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.RecyclableArrayList].set(int,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.RecyclableArrayList"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 132
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.ArrayList].set(int,java.lang.Object)"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.RecyclableArrayList:129,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.RecyclableArrayList:129,1"
      Dst: "[java.util.ArrayList].set(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.RecyclableArrayList].insertSinceRecycled()"
    functionSourceFile: "io.netty.util.internal.RecyclableArrayList"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.RecyclableArrayList].recycle()"
    functionSourceFile: "io.netty.util.internal.RecyclableArrayList"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].clear()"
    - "[io.netty.util.Recycler$DefaultHandle].recycle(java.lang.Object)"
    - "[io.netty.util.Recycler$1].recycle(java.lang.Object)"
    - "[io.netty.util.internal.ObjectPool$Handle].recycle(java.lang.Object)"
    functionUses: 10
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.RecyclableArrayList:145,1"
      Dst: "[java.util.ArrayList].clear()"
    - Src: "io.netty.util.internal.RecyclableArrayList:147,1"
      Dst: "[io.netty.util.internal.ObjectPool$Handle].recycle(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.RecyclableArrayList].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.util.internal.RecyclableArrayList$1)"
    functionSourceFile: "io.netty.util.internal.RecyclableArrayList"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    - "io.netty.util.internal.RecyclableArrayList$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.RecyclableArrayList].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.RecyclableArrayList:30,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].<init>(io.netty.util.internal.ObjectPool$Handle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder].<init>(io.netty.handler.codec.socksx.v5.Socks5AddressDecoder)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:49,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder].<init>(io.netty.handler.codec.socksx.v5.Socks5AddressDecoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder].<init>(io.netty.handler.codec.socksx.v5.Socks5AddressDecoder)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.socksx.v5.Socks5AddressDecoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:53,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:54,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 93
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.ReplayingDecoder].state()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.socksx.SocksVersion].byteValue()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].valueOf(byte)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].valueOf(byte)"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressDecoder$1].decodeAddress(io.netty.handler.codec.socksx.v5.Socks5AddressType,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].<init>(io.netty.handler.codec.socksx.v5.Socks5CommandType,io.netty.handler.codec.socksx.v5.Socks5AddressType,java.lang.String,int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder].fail(java.util.List,java.lang.Exception)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressDecoder].decodeAddress(io.netty.handler.codec.socksx.v5.Socks5AddressType,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    functionUses: 1
    ICount: 55
    EdgeCount: 86
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:68"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "byteValue()"
        - "append(char)"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:67"
        BranchSideFuncs:
        - "checkpoint(java.lang.Object)"
        - "readUnsignedShort()"
        - "readByte()"
        - "decodeAddress(io.netty.handler.codec.socksx.v5.Socks5AddressType,io.netty.buffer.ByteBuf)"
        - "<init>(io.netty.handler.codec.socksx.v5.Socks5CommandType,io.netty.handler.codec.socksx.v5.Socks5AddressType,java.lang.String,int)"
        - "valueOf(byte)"
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:91"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "readRetainedSlice(int)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:60,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].state()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:60,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:62,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:63,1"
      Dst: "[io.netty.handler.codec.socksx.SocksVersion].byteValue()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:64,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:64,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:64,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:65,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:65,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:65,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:68,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5CommandType].valueOf(byte)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:69,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:70,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5AddressType].valueOf(byte)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:71,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5AddressDecoder].decodeAddress(io.netty.handler.codec.socksx.v5.Socks5AddressType,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:72,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:74,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].<init>(io.netty.handler.codec.socksx.v5.Socks5CommandType,io.netty.handler.codec.socksx.v5.Socks5AddressType,java.lang.String,int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:74,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:75,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:78,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:80,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:90,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder].fail(java.util.List,java.lang.Exception)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.socksx.SocksVersion].byteValue()"
    functionSourceFile: "io.netty.handler.codec.socksx.SocksVersion"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AddressType].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AddressType"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 41
    functionDepth: 3
    returnType: "io.netty.handler.codec.socksx.v5.Socks5AddressType"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].<init>(int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressType:40,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5AddressType].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AddressType].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AddressType"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressType:48,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5AddressType].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AddressType].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AddressType"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 4
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressType:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressType:52,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].<init>(io.netty.handler.codec.socksx.v5.Socks5CommandType,io.netty.handler.codec.socksx.v5.Socks5AddressType,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 65
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.socksx.v5.Socks5CommandType"
    - "io.netty.handler.codec.socksx.v5.Socks5AddressType"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.AbstractSocks5Message].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.net.IDN].toASCII(java.lang.String)"
    - "[java.lang.String].length()"
    - "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - "[java.lang.AbstractStringBuilder:java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 3
    ICount: 68
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:42"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:46"
        BranchSideFuncs:
        - "isValidIpV4Address(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:45"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:43"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:57"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:56"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:51"
        BranchSideFuncs:
        - "toASCII(java.lang.String)"
        - "length()"
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:50"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:48"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:57"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:56"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:57"
        BranchSideFuncs:
        - "isValidIpV6Address(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:56"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:52"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:57"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:56"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:57"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:58"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:57"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:57"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:61"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:36,1"
      Dst: "[io.netty.handler.codec.socksx.v5.AbstractSocks5Message].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:38,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:43,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:44,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:44,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:44,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:44,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:47,1"
      Dst: "[java.net.IDN].toASCII(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:48,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:52,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:58,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder].fail(java.util.List<Object>,java.lang.Exception)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 106
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List<Object>"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].<init>(io.netty.handler.codec.socksx.v5.Socks5CommandType,io.netty.handler.codec.socksx.v5.Socks5AddressType,java.lang.String,int)"
    - "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    - "[io.netty.handler.codec.socksx.AbstractSocksMessage].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:99"
        BranchSideFuncs:
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:98"
        BranchSideFuncs:
        - "failure(java.lang.Throwable)"
        - "setDecoderResult(io.netty.handler.codec.DecoderResult)"
        - "add(java.lang.Object)"
        - "checkpoint(java.lang.Object)"
        - "<init>(io.netty.handler.codec.socksx.v5.Socks5CommandType,io.netty.handler.codec.socksx.v5.Socks5AddressType,java.lang.String,int)"
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:96,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:99,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:101,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].<init>(io.netty.handler.codec.socksx.v5.Socks5CommandType,io.netty.handler.codec.socksx.v5.Socks5AddressType,java.lang.String,int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:103,1"
      Dst: "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:103,1"
      Dst: "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder:104,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder].<init>(boolean,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder].<init>(boolean,boolean,int,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder:74,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder].<init>(boolean,boolean,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder].<init>(boolean,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 101
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].newBuilder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].expectMaskedFrames(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowExtensions(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].maxFramePayloadLength(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowMaskMismatch(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].build()"
    functionUses: 1
    ICount: 13
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder:94,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].newBuilder()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder:95,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].expectMaskedFrames(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder:96,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowExtensions(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder:97,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].maxFramePayloadLength(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder:98,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowMaskMismatch(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder:99,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].build()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder:94,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder:109,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler"
    linkageType: ""
    functionLinenumber: 1291
    functionLinenumberEnd: 1295
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1292,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler"
    linkageType: ""
    functionLinenumber: 1297
    functionLinenumberEnd: 1400
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].id()"
    - "[io.netty.resolver.dns.DnsNameResolver].access$000()"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].sender()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.resolver.dns.DnsQueryContextManager].get(java.net.InetSocketAddress,int)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.AbstractReferenceCounted].release()"
    - "[io.netty.resolver.dns.DnsNameResolver].access$600(io.netty.resolver.dns.DnsNameResolver)"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].isTruncated()"
    - "[io.netty.resolver.dns.DnsQueryContext].finish(io.netty.channel.AddressedEnvelope)"
    - "[io.netty.bootstrap.Bootstrap].<init>()"
    - "[io.netty.bootstrap.AbstractBootstrap].option(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - "[io.netty.bootstrap.AbstractBootstrap].group(io.netty.channel.EventLoopGroup)"
    - "[io.netty.bootstrap.AbstractBootstrap].channelFactory(io.netty.channel.ChannelFactory)"
    - "[io.netty.resolver.dns.DnsNameResolver].access$700()"
    - "[io.netty.bootstrap.AbstractBootstrap].handler(io.netty.channel.ChannelHandler)"
    - "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1].<init>(io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler,int,io.netty.resolver.dns.DnsQueryContext,io.netty.handler.codec.dns.DatagramDnsResponse)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.bootstrap.Bootstrap].connect(java.net.SocketAddress)"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 60
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1301"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1305"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1304"
        BranchSideFuncs:
        - "get(java.net.InetSocketAddress,int)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1306"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1313"
        BranchSideFuncs:
        - "access$000()"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "release()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1312"
        BranchSideFuncs:
        - "isTruncated()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1313"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1314"
        BranchSideFuncs:
        - "finish(io.netty.channel.AddressedEnvelope)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1313"
        BranchSideFuncs:
        - "finish(io.netty.channel.AddressedEnvelope)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1313"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1318"
        BranchSideFuncs:
        - "finish(io.netty.channel.AddressedEnvelope)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1317"
        BranchSideFuncs:
        - "valueOf(boolean)"
        - "<init>(io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler,int,io.netty.resolver.dns.DnsQueryContext,io.netty.handler.codec.dns.DatagramDnsResponse)"
        - "connect(java.net.SocketAddress)"
        - "channelFactory(io.netty.channel.ChannelFactory)"
        - "sender()"
        - "<init>()"
        - "option(io.netty.channel.ChannelOption,java.lang.Object)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "handler(io.netty.channel.ChannelHandler)"
        - "group(io.netty.channel.EventLoopGroup)"
        - "access$600(io.netty.resolver.dns.DnsNameResolver)"
        - "executor()"
        - "access$700()"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1299,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].id()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1301,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].access$000()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1301,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1302,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1302,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponse].sender()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1302,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1305,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContextManager].get(java.net.InetSocketAddress,int)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1307,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1308,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].release()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1313,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].isTruncated()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1313,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].access$600(io.netty.resolver.dns.DnsNameResolver)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1314,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].finish(io.netty.channel.AddressedEnvelope)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1318,1"
      Dst: "[io.netty.bootstrap.Bootstrap].<init>()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1319,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1319,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].option(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1320,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1320,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].group(io.netty.channel.EventLoopGroup)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1321,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].channelFactory(io.netty.channel.ChannelFactory)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1322,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].access$700()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1322,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].handler(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1323,1"
      Dst: "[io.netty.bootstrap.Bootstrap].connect(java.net.SocketAddress)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1323,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1].<init>(io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler,int,io.netty.resolver.dns.DnsQueryContext,io.netty.handler.codec.dns.DatagramDnsResponse)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1323,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].sender()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsQueryContextManager].get(java.net.InetSocketAddress,int)"
    functionSourceFile: "io.netty.resolver.dns.DnsQueryContextManager"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 76
    functionDepth: 1
    returnType: "io.netty.resolver.dns.DnsQueryContext"
    argCount: 2
    argTypes:
    - "java.net.InetSocketAddress"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsQueryContextManager].getContextMap(java.net.InetSocketAddress)"
    - "[io.netty.util.collection.IntObjectHashMap].get(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(int)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(int)"
    - "[io.netty.util.collection.IntObjectMap].get(int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsQueryContextManager:67"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:72"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:65,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContextManager].getContextMap(java.net.InetSocketAddress)"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:69,1"
      Dst: "[io.netty.util.collection.IntObjectMap].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsQueryContextManager].getContextMap(java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.resolver.dns.DnsQueryContextManager"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "io.netty.util.collection.IntObjectMap"
    argCount: 1
    argTypes:
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap:io.netty.util.collection.CharCollections$EmptyMap:io.netty.util.collection.IntCollections$EmptyMap:io.netty.util.collection.LongCollections$EmptyMap:io.netty.util.collection.ShortCollections$EmptyMap:java.security.Provider:java.util.AbstractMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.LinkedHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 12
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:91,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].isTruncated()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1].<init>(io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler,int,io.netty.resolver.dns.DnsQueryContext,io.netty.handler.codec.dns.DatagramDnsResponse)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1"
    linkageType: ""
    functionLinenumber: 1322
    functionLinenumberEnd: 1324
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler"
    - "int"
    - "io.netty.resolver.dns.DnsQueryContext"
    - "io.netty.handler.codec.dns.DatagramDnsResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1323,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler"
    linkageType: ""
    functionLinenumber: 1402
    functionLinenumberEnd: 1406
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].trySuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].trySuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].trySuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].trySuccess(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    functionUses: 2
    ICount: 7
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1403,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].channelActive(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1404,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1404,1"
      Dst: "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler"
    linkageType: ""
    functionLinenumber: 1408
    functionLinenumberEnd: 1415
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].access$000()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 13
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1409"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1412"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1411"
        BranchSideFuncs:
        - "channel()"
        - "access$000()"
        - "warn(java.lang.String,java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1410,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].access$000()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1410,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1410,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler:1412,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$9].apply(javax.net.ssl.SSLEngine,java.util.List)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$9"
    linkageType: ""
    functionLinenumber: 236
    functionLinenumberEnd: 241
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].access$000()"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$9:237,1"
      Dst: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].access$000()"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$9:237,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$9:240,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$9].apply(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$9"
    linkageType: ""
    functionLinenumber: 231
    functionLinenumberEnd: 233
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$9].apply(javax.net.ssl.SSLEngine,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$9:232,1"
      Dst: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$9].apply(javax.net.ssl.SSLEngine,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].<init>()"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: 248
    functionLinenumberEnd: 252
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.PlatformDependent].newLongCounter()"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric:249,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric:250,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newLongCounter()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].usedHeapMemory()"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: 254
    functionLinenumberEnd: 256
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].value()"
    - "[io.netty.util.internal.LongAdderCounter].value()"
    - "[io.netty.util.internal.LongCounter].value()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric:255,1"
      Dst: "[io.netty.util.internal.LongCounter].value()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].usedDirectMemory()"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: 259
    functionLinenumberEnd: 261
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].value()"
    - "[io.netty.util.internal.LongAdderCounter].value()"
    - "[io.netty.util.internal.LongCounter].value()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric:260,1"
      Dst: "[io.netty.util.internal.LongCounter].value()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].toString()"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: 264
    functionLinenumberEnd: 267
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].usedDirectMemory()"
    - "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].usedHeapMemory()"
    functionUses: 19
    ICount: 14
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric:265,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric:265,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric:265,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric:266,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].usedHeapMemory()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric:266,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric:266,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].usedDirectMemory()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric:266,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric:266,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].<init>(io.netty.buffer.UnpooledByteBufAllocator$1)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: 248
    functionLinenumberEnd: 250
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.UnpooledByteBufAllocator$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric:249,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine$2].<init>()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine$2"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine$2:111,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine$2].accept(javax.net.ssl.SSLEngine,java.util.List)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine$2"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnSslUtils].setApplicationProtocols(javax.net.ssl.SSLEngine,java.util.List)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine$2:114,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslUtils].setApplicationProtocols(javax.net.ssl.SSLEngine,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine$2].accept(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine$2"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnSslEngine$2].accept(javax.net.ssl.SSLEngine,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine$2:111,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine$2].accept(javax.net.ssl.SSLEngine,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketHandshakeException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketHandshakeException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketHandshakeException:30,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.CompositeNameResolver$1].<init>(io.netty.resolver.CompositeNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int)"
    functionSourceFile: "io.netty.resolver.CompositeNameResolver$1"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.resolver.CompositeNameResolver"
    - "io.netty.util.concurrent.Promise"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.CompositeNameResolver$1:69,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.CompositeNameResolver$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.resolver.CompositeNameResolver$1"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.util.concurrent.FailedFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setSuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.resolver.CompositeNameResolver].access$000(io.netty.resolver.CompositeNameResolver,java.lang.String,io.netty.util.concurrent.Promise,int,java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture:io.netty.channel.SucceededChannelFuture:io.netty.channel.VoidChannelPromise:io.netty.channel.group.VoidChannelGroupFuture:io.netty.util.concurrent.FailedFuture:io.netty.util.concurrent.SucceededFuture].cause()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].getNow()"
    - "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.Future].cause()"
    functionUses: 1
    ICount: 16
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.resolver.CompositeNameResolver$1:72"
      Branch Sides:
      - BranchSide: "io.netty.resolver.CompositeNameResolver$1:75"
        BranchSideFuncs:
        - "setSuccess(java.lang.Object)"
        - "getNow()"
      - BranchSide: "io.netty.resolver.CompositeNameResolver$1:74"
        BranchSideFuncs:
        - "access$000(io.netty.resolver.CompositeNameResolver,java.lang.String,io.netty.util.concurrent.Promise,int,java.lang.Throwable)"
        - "cause()"
    Callsites:
    - Src: "io.netty.resolver.CompositeNameResolver$1:72,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.resolver.CompositeNameResolver$1:73,1"
      Dst: "[io.netty.util.concurrent.Future].getNow()"
    - Src: "io.netty.resolver.CompositeNameResolver$1:73,1"
      Dst: "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - Src: "io.netty.resolver.CompositeNameResolver$1:75,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.resolver.CompositeNameResolver$1:75,1"
      Dst: "[io.netty.resolver.CompositeNameResolver].access$000(io.netty.resolver.CompositeNameResolver,java.lang.String,io.netty.util.concurrent.Promise,int,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.CompositeNameResolver].access$000(io.netty.resolver.CompositeNameResolver,java.lang.String,io.netty.util.concurrent.Promise,int,java.lang.Throwable)"
    functionSourceFile: "io.netty.resolver.CompositeNameResolver"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.resolver.CompositeNameResolver"
    - "java.lang.String"
    - "io.netty.util.concurrent.Promise"
    - "int"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.CompositeNameResolver].doResolveRec(java.lang.String,io.netty.util.concurrent.Promise,int,java.lang.Throwable)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.CompositeNameResolver:34,1"
      Dst: "[io.netty.resolver.CompositeNameResolver].doResolveRec(java.lang.String,io.netty.util.concurrent.Promise,int,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.MacAddressUtil].bestAvailableMac()"
    functionSourceFile: "io.netty.util.internal.MacAddressUtil"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 130
    functionDepth: 2
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.net.NetworkInterface].getNetworkInterfaces()"
    - "[jdk.internal.loader.URLClassPath$1].hasMoreElements()"
    - "[jdk.internal.loader.Loader$3].hasMoreElements()"
    - "[io.netty.handler.ssl.OpenSslSessionContext$1].hasMoreElements()"
    - "[jdk.internal.loader.BuiltinClassLoader$1].hasMoreElements()"
    - "[jdk.internal.loader.URLClassPath$2].hasMoreElements()"
    - "[jdk.internal.loader.URLClassPath$2].nextElement()"
    - "[jdk.internal.loader.BuiltinClassLoader$1].nextElement()"
    - "[jdk.internal.loader.Loader$3].nextElement()"
    - "[jdk.internal.loader.URLClassPath$1].nextElement()"
    - "[io.netty.handler.ssl.OpenSslSessionContext$1].nextElement()"
    - "[io.netty.util.internal.SocketUtils].addressesFromNetworkInterface(java.net.NetworkInterface)"
    - "[java.net.InetAddress].isLoopbackAddress()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[java.net.NetworkInterface].isVirtual()"
    - "[io.netty.util.internal.SocketUtils].hardwareAddressFromNetworkInterface(java.net.NetworkInterface)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.MacAddressUtil].compareAddresses(byte[],byte[])"
    - "[io.netty.util.internal.MacAddressUtil].compareAddresses(java.net.InetAddress,java.net.InetAddress)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.util.Arrays].copyOf(byte[],int)"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 76
    EdgeCount: 160
    BranchProfiles:
    - Branch String: "io.netty.util.internal.MacAddressUtil:56"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:71"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:70"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:57"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:71"
        BranchSideFuncs:
        - "addressesFromNetworkInterface(java.net.NetworkInterface)"
        - "hasMoreElements()"
      - BranchSide: "io.netty.util.internal.MacAddressUtil:70"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:61"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:67"
        BranchSideFuncs:
        - "nextElement()"
        - "isLoopbackAddress()"
      - BranchSide: "io.netty.util.internal.MacAddressUtil:66"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:63"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:67"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.MacAddressUtil:66"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:73"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:113"
        BranchSideFuncs:
        - "hasNext()"
        - "getValue()"
        - "next()"
        - "iterator()"
        - "isVirtual()"
        - "entrySet()"
        - "getKey()"
      - BranchSide: "io.netty.util.internal.MacAddressUtil:112"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:76"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:82"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:81"
        BranchSideFuncs:
        - "hardwareAddressFromNetworkInterface(java.net.NetworkInterface)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Branch String: "io.netty.util.internal.MacAddressUtil:90"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:92"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:93"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:96"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:98"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:99"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:101"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:107"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:107"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:111"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:113"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:117"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:116"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:117"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:126"
        BranchSideFuncs:
        - "arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
      - BranchSide: "io.netty.util.internal.MacAddressUtil:125"
        BranchSideFuncs:
        - "copyOf(byte[],int)"
    Callsites:
    - Src: "io.netty.util.internal.MacAddressUtil:53,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "io.netty.util.internal.MacAddressUtil:55,1"
      Dst: "[java.net.NetworkInterface].getNetworkInterfaces()"
    - Src: "io.netty.util.internal.MacAddressUtil:57,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "io.netty.util.internal.MacAddressUtil:58,1"
      Dst: "[java.util.Enumeration].nextElement()"
    - Src: "io.netty.util.internal.MacAddressUtil:60,1"
      Dst: "[io.netty.util.internal.SocketUtils].addressesFromNetworkInterface(java.net.NetworkInterface)"
    - Src: "io.netty.util.internal.MacAddressUtil:63,1"
      Dst: "[java.net.InetAddress].isLoopbackAddress()"
    - Src: "io.netty.util.internal.MacAddressUtil:64,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.MacAddressUtil:70,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.util.internal.MacAddressUtil:73,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "io.netty.util.internal.MacAddressUtil:73,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.util.internal.MacAddressUtil:73,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.util.internal.MacAddressUtil:73,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.util.internal.MacAddressUtil:74,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.util.internal.MacAddressUtil:75,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.util.internal.MacAddressUtil:76,1"
      Dst: "[java.net.NetworkInterface].isVirtual()"
    - Src: "io.netty.util.internal.MacAddressUtil:82,1"
      Dst: "[io.netty.util.internal.SocketUtils].hardwareAddressFromNetworkInterface(java.net.NetworkInterface)"
    - Src: "io.netty.util.internal.MacAddressUtil:84,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.MacAddressUtil:89,1"
      Dst: "[io.netty.util.internal.MacAddressUtil].compareAddresses(byte[],byte[])"
    - Src: "io.netty.util.internal.MacAddressUtil:95,1"
      Dst: "[io.netty.util.internal.MacAddressUtil].compareAddresses(java.net.InetAddress,java.net.InetAddress)"
    - Src: "io.netty.util.internal.MacAddressUtil:119,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "io.netty.util.internal.MacAddressUtil:126,1"
      Dst: "[java.util.Arrays].copyOf(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 31
    CyclomaticComplexity: 14
  - functionName: "[io.netty.util.internal.SocketUtils].addressesFromNetworkInterface(java.net.NetworkInterface)"
    functionSourceFile: "io.netty.util.internal.SocketUtils"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 201
    functionDepth: 1
    returnType: "java.util.Enumeration<InetAddress>"
    argCount: 1
    argTypes:
    - "java.net.NetworkInterface"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils$11].<init>(java.net.NetworkInterface)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[io.netty.util.internal.SocketUtils$11].run()"
    - "[io.netty.util.internal.SocketUtils].empty()"
    functionUses: 6
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.SocketUtils:197"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.SocketUtils:200"
        BranchSideFuncs:
        - "empty()"
      - BranchSide: "io.netty.util.internal.SocketUtils:199"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils:187,1"
      Dst: "[io.netty.util.internal.SocketUtils$11].<init>(java.net.NetworkInterface)"
    - Src: "io.netty.util.internal.SocketUtils:188,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "io.netty.util.internal.SocketUtils:198,1"
      Dst: "[io.netty.util.internal.SocketUtils].empty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils].empty()"
    functionSourceFile: "io.netty.util.internal.SocketUtils"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "java.util.Enumeration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils].hardwareAddressFromNetworkInterface(java.net.NetworkInterface)"
    functionSourceFile: "io.netty.util.internal.SocketUtils"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 230
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.net.NetworkInterface"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils$13].<init>(java.net.NetworkInterface)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - "[io.netty.util.internal.SocketUtils$13].run()"
    - "[java.security.PrivilegedActionException].getCause()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils:222,1"
      Dst: "[io.netty.util.internal.SocketUtils$13].<init>(java.net.NetworkInterface)"
    - Src: "io.netty.util.internal.SocketUtils:222,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - Src: "io.netty.util.internal.SocketUtils:229,1"
      Dst: "[java.security.PrivilegedActionException].getCause()"
    JavaMethodInfo:
      exceptions:
      - "java.net.SocketException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.MacAddressUtil].compareAddresses(byte[],byte[])"
    functionSourceFile: "io.netty.util.internal.MacAddressUtil"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 248
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.MacAddressUtil:210"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:211"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:210"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:210"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:215"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:214"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:216"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:223"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:222"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:217"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:215"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:214"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:217"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:215"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:214"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:223"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:228"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:227"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:228"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:233"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:232"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:233"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:242"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:241"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:234"
      Branch Sides: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:234"
      Branch Sides: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:242"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:246"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:242"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:246"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 22
    CyclomaticComplexity: 7
  - functionName: "[io.netty.util.internal.MacAddressUtil].compareAddresses(java.net.InetAddress,java.net.InetAddress)"
    functionSourceFile: "io.netty.util.internal.MacAddressUtil"
    linkageType: ""
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.MacAddressUtil].scoreAddress(java.net.InetAddress)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.MacAddressUtil:256,1"
      Dst: "[io.netty.util.internal.MacAddressUtil].scoreAddress(java.net.InetAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.MacAddressUtil].scoreAddress(java.net.InetAddress)"
    functionSourceFile: "io.netty.util.internal.MacAddressUtil"
    linkageType: ""
    functionLinenumber: 259
    functionLinenumberEnd: 274
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetAddress].isAnyLocalAddress()"
    - "[java.net.Inet6Address].isAnyLocalAddress()"
    - "[java.net.Inet4Address].isAnyLocalAddress()"
    - "[java.net.InetAddress].isLoopbackAddress()"
    - "[java.net.Inet6Address].isLoopbackAddress()"
    - "[java.net.Inet4Address].isLoopbackAddress()"
    - "[java.net.Inet4Address].isMulticastAddress()"
    - "[java.net.Inet6Address].isMulticastAddress()"
    - "[java.net.InetAddress].isMulticastAddress()"
    - "[java.net.InetAddress].isLinkLocalAddress()"
    - "[java.net.Inet6Address].isLinkLocalAddress()"
    - "[java.net.Inet4Address].isLinkLocalAddress()"
    - "[java.net.InetAddress].isSiteLocalAddress()"
    - "[java.net.Inet4Address].isSiteLocalAddress()"
    - "[java.net.Inet6Address].isSiteLocalAddress()"
    functionUses: 2
    ICount: 16
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.util.internal.MacAddressUtil:260"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:261"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:260"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:260"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:263"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:262"
        BranchSideFuncs:
        - "isMulticastAddress()"
    - Branch String: "io.netty.util.internal.MacAddressUtil:263"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:266"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:265"
        BranchSideFuncs:
        - "isLinkLocalAddress()"
    - Branch String: "io.netty.util.internal.MacAddressUtil:266"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:269"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:268"
        BranchSideFuncs:
        - "isSiteLocalAddress()"
    - Branch String: "io.netty.util.internal.MacAddressUtil:269"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:273"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:272"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.MacAddressUtil:260,1"
      Dst: "[java.net.InetAddress].isAnyLocalAddress()"
    - Src: "io.netty.util.internal.MacAddressUtil:260,1"
      Dst: "[java.net.InetAddress].isLoopbackAddress()"
    - Src: "io.netty.util.internal.MacAddressUtil:263,1"
      Dst: "[java.net.InetAddress].isMulticastAddress()"
    - Src: "io.netty.util.internal.MacAddressUtil:266,1"
      Dst: "[java.net.InetAddress].isLinkLocalAddress()"
    - Src: "io.netty.util.internal.MacAddressUtil:269,1"
      Dst: "[java.net.InetAddress].isSiteLocalAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.MacAddressUtil].defaultMachineId()"
    functionSourceFile: "io.netty.util.internal.MacAddressUtil"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 146
    functionDepth: 3
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.MacAddressUtil].bestAvailableMac()"
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextBytes(byte[])"
    - "[java.util.Random].nextBytes(byte[])"
    - "[java.security.SecureRandom].nextBytes(byte[])"
    - "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.MacAddressUtil].formatAddress(byte[])"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.util.internal.MacAddressUtil:138"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:145"
        BranchSideFuncs:
        - "threadLocalRandom()"
        - "warn(java.lang.String,java.lang.Object)"
        - "nextBytes(byte[])"
      - BranchSide: "io.netty.util.internal.MacAddressUtil:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.MacAddressUtil:137,1"
      Dst: "[io.netty.util.internal.MacAddressUtil].bestAvailableMac()"
    - Src: "io.netty.util.internal.MacAddressUtil:140,1"
      Dst: "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - Src: "io.netty.util.internal.MacAddressUtil:140,1"
      Dst: "[java.util.Random].nextBytes(byte[])"
    - Src: "io.netty.util.internal.MacAddressUtil:143,1"
      Dst: "[io.netty.util.internal.MacAddressUtil].formatAddress(byte[])"
    - Src: "io.netty.util.internal.MacAddressUtil:141,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.MacAddressUtil].formatAddress(byte[])"
    functionSourceFile: "io.netty.util.internal.MacAddressUtil"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 203
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].substring(int,int)"
    functionUses: 2
    ICount: 21
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.util.internal.MacAddressUtil:199"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:201"
        BranchSideFuncs:
        - "length()"
        - "substring(int,int)"
    Callsites:
    - Src: "io.netty.util.internal.MacAddressUtil:198,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.util.internal.MacAddressUtil:200,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.util.internal.MacAddressUtil:200,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.util.internal.MacAddressUtil:200,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.MacAddressUtil:202,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.util.internal.MacAddressUtil:202,1"
      Dst: "[java.lang.StringBuilder].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.MacAddressUtil].parseMAC(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.MacAddressUtil"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 185
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[io.netty.util.internal.MacAddressUtil].validateMacSeparator(char)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].decodeHexByte(java.lang.CharSequence,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 47
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.util.internal.MacAddressUtil:173"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:182"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.MacAddressUtil:181"
        BranchSideFuncs:
        - "decodeHexByte(java.lang.CharSequence,int)"
    - Branch String: "io.netty.util.internal.MacAddressUtil:176"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:171"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "charAt(int)"
        - "append(int)"
      - BranchSide: "io.netty.util.internal.MacAddressUtil:170"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.MacAddressUtil:156,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.util.internal.MacAddressUtil:158,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.util.internal.MacAddressUtil:159,1"
      Dst: "[io.netty.util.internal.MacAddressUtil].validateMacSeparator(char)"
    - Src: "io.netty.util.internal.MacAddressUtil:168,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.MacAddressUtil:175,1"
      Dst: "[io.netty.util.internal.StringUtil].decodeHexByte(java.lang.CharSequence,int)"
    - Src: "io.netty.util.internal.MacAddressUtil:177,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.MacAddressUtil:177,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.MacAddressUtil:177,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.internal.MacAddressUtil:178,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.internal.MacAddressUtil:178,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.MacAddressUtil].validateMacSeparator(char)"
    functionSourceFile: "io.netty.util.internal.MacAddressUtil"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 192
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 15
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.util.internal.MacAddressUtil:188"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:191"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.MacAddressUtil:190"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MacAddressUtil:188"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MacAddressUtil:191"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.MacAddressUtil:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.MacAddressUtil:189,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.MacAddressUtil:189,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.MacAddressUtil:189,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.internal.MacAddressUtil:189,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.MacAddressUtil:189,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.StringUtil].decodeHexByte(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 265
    functionLinenumberEnd: 273
    functionDepth: 1
    returnType: "byte"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.internal.StringUtil].decodeHexNibble(char)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.AppendableCharSequence].subSequence(int,int)"
    - "[java.lang.StringBuffer].subSequence(int,int)"
    - "[java.lang.String].subSequence(int,int)"
    - "[java.lang.StringBuilder].subSequence(int,int)"
    - "[io.netty.util.AsciiString].subSequence(int,int)"
    - "[java.lang.AbstractStringBuilder].subSequence(int,int)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.lang.CharSequence].subSequence(int,int)"
    functionUses: 2
    ICount: 26
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:268"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:269"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.StringUtil:268"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.util.internal.StringUtil:268"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:272"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.StringUtil:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:266,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.internal.StringUtil:266,1"
      Dst: "[io.netty.util.internal.StringUtil].decodeHexNibble(char)"
    - Src: "io.netty.util.internal.StringUtil:270,1"
      Dst: "[java.lang.CharSequence].subSequence(int,int)"
    - Src: "io.netty.util.internal.StringUtil:270,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.util.internal.StringUtil:269,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.util.internal.StringUtil:269,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.MacAddressUtil].<init>()"
    functionSourceFile: "io.netty.util.internal.MacAddressUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.MacAddressUtil:276,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Decoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Decoder$State"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.Bzip2Decoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder$State:48,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Decoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Decoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.Bzip2Decoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder$State:48,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Decoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Decoder$State"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Decoder$State:48,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext].<init>(java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,java.lang.String[],long,long,boolean,java.lang.String,java.util.Map$Entry[])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 15
    argTypes:
    - "java.security.cert.X509Certificate[]"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.security.cert.X509Certificate[]"
    - "java.security.PrivateKey"
    - "java.lang.String"
    - "javax.net.ssl.KeyManagerFactory"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.ApplicationProtocolConfig"
    - "java.lang.String[]"
    - "long"
    - "long"
    - "boolean"
    - "java.lang.String"
    - "java.util.Map$Entry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].<init>(java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.OpenSslApplicationProtocolNegotiator,int,java.security.cert.Certificate[],io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean,boolean,boolean,java.util.Map$Entry[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext].newSessionContext(io.netty.handler.ssl.ReferenceCountedOpenSslContext,long,io.netty.handler.ssl.OpenSslEngineMap,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String,long,long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].release()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:80"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:79"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:79"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:67,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:67,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].<init>(java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.OpenSslApplicationProtocolNegotiator,int,java.security.cert.Certificate[],io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean,boolean,boolean,java.util.Map$Entry[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:71,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext].newSessionContext(io.netty.handler.ssl.ReferenceCountedOpenSslContext,long,io.netty.handler.ssl.OpenSslEngineMap,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String,long,long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:77,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].release()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext].sessionContext()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "io.netty.handler.ssl.OpenSslSessionContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext].newSessionContext(io.netty.handler.ssl.ReferenceCountedOpenSslContext,long,io.netty.handler.ssl.OpenSslEngineMap,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String,long,long)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.ssl.OpenSslSessionContext"
    argCount: 12
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslContext"
    - "long"
    - "io.netty.handler.ssl.OpenSslEngineMap"
    - "java.security.cert.X509Certificate[]"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.security.cert.X509Certificate[]"
    - "java.security.PrivateKey"
    - "java.lang.String"
    - "javax.net.ssl.KeyManagerFactory"
    - "java.lang.String"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.handler.ssl.OpenSsl].useKeyManagerFactory()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].setKeyMaterial(long,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String)"
    - "[io.netty.handler.ssl.SslContext].keyStorePassword(java.lang.String)"
    - "[io.netty.handler.ssl.SslContext].buildKeyStore(java.security.cert.X509Certificate[],java.security.PrivateKey,char[],java.lang.String)"
    - "[java.security.KeyStore].aliases()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].<init>()"
    - "[javax.net.ssl.KeyManagerFactory].getDefaultAlgorithm()"
    - "[javax.net.ssl.KeyManagerFactory].getInstance(java.lang.String)"
    - "[io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory].<init>(javax.net.ssl.KeyManagerFactory)"
    - "[javax.net.ssl.KeyManagerFactory].init(java.security.KeyStore,char[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].providerFor(javax.net.ssl.KeyManagerFactory,java.lang.String)"
    - "[io.netty.handler.ssl.OpenSslKeyMaterialManager].<init>(io.netty.handler.ssl.OpenSslKeyMaterialProvider)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback].<init>(io.netty.handler.ssl.OpenSslEngineMap,io.netty.handler.ssl.OpenSslKeyMaterialManager)"
    - "[io.netty.internal.tcnative.SSLContext].setCertificateCallback(long,io.netty.internal.tcnative.CertificateCallback)"
    - "[javax.net.ssl.SSLException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.internal.tcnative.SSLContext].setVerify(long,int,int)"
    - "[io.netty.handler.ssl.SslContext].buildTrustManagerFactory(java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.lang.String)"
    - "[javax.net.ssl.TrustManagerFactory].getDefaultAlgorithm()"
    - "[javax.net.ssl.TrustManagerFactory].getInstance(java.lang.String)"
    - "[javax.net.ssl.TrustManagerFactory].init(java.security.KeyStore)"
    - "[javax.net.ssl.TrustManagerFactory].getTrustManagers()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].chooseTrustManager(javax.net.ssl.TrustManager[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext].setVerifyCallback(long,io.netty.handler.ssl.OpenSslEngineMap,javax.net.ssl.X509TrustManager)"
    - "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].destroy()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientSessionContext].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslContext,io.netty.handler.ssl.OpenSslKeyMaterialProvider)"
    - "[io.netty.handler.ssl.OpenSslSessionContext].setSessionCacheEnabled(boolean)"
    - "[java.lang.Math].min(long,long)"
    - "[io.netty.handler.ssl.OpenSslSessionContext].setSessionCacheSize(int)"
    - "[io.netty.handler.ssl.OpenSslSessionContext].setSessionTimeout(int)"
    - "[io.netty.handler.ssl.OpenSslSessionContext].setTicketKeys(io.netty.handler.ssl.OpenSslSessionTicketKey[])"
    functionUses: 0
    ICount: 110
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:95"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:94"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:96"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:95"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:99"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:98"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:99"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:98"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:102"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:103"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:107"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:107"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:135"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:134"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:115"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:118"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:117"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:127"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:126"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:135"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:134"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:146"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:148"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:147"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:153"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:152"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:153"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:152"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:170"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:173"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:177"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:181"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:180"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:181"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:180"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:187"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:96,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:102,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].useKeyManagerFactory()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:108,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].setKeyMaterial(long,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:113,1"
      Dst: "[io.netty.handler.ssl.SslContext].keyStorePassword(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:114,1"
      Dst: "[io.netty.handler.ssl.SslContext].buildKeyStore(java.security.cert.X509Certificate[],java.security.PrivateKey,char[],java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:115,1"
      Dst: "[java.security.KeyStore].aliases()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:115,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:116,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory].<init>()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:119,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].getDefaultAlgorithm()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:119,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].getInstance(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:119,1"
      Dst: "[io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory].<init>(javax.net.ssl.KeyManagerFactory)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:121,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].init(java.security.KeyStore,char[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:122,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].providerFor(javax.net.ssl.KeyManagerFactory,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:128,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterialManager].<init>(io.netty.handler.ssl.OpenSslKeyMaterialProvider)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:129,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback].<init>(io.netty.handler.ssl.OpenSslEngineMap,io.netty.handler.ssl.OpenSslKeyMaterialManager)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:129,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].setCertificateCallback(long,io.netty.internal.tcnative.CertificateCallback)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:134,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:143,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].setVerify(long,int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:147,1"
      Dst: "[io.netty.handler.ssl.SslContext].buildTrustManagerFactory(java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:150,1"
      Dst: "[javax.net.ssl.TrustManagerFactory].getDefaultAlgorithm()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:149,1"
      Dst: "[javax.net.ssl.TrustManagerFactory].getInstance(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:151,1"
      Dst: "[javax.net.ssl.TrustManagerFactory].init(java.security.KeyStore)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:153,1"
      Dst: "[javax.net.ssl.TrustManagerFactory].getTrustManagers()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:153,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].chooseTrustManager(javax.net.ssl.TrustManager[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:161,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext].setVerifyCallback(long,io.netty.handler.ssl.OpenSslEngineMap,javax.net.ssl.X509TrustManager)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:164,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].destroy()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:168,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientSessionContext].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslContext,io.netty.handler.ssl.OpenSslKeyMaterialProvider)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:169,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionContext].setSessionCacheEnabled(boolean)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:171,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:171,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionContext].setSessionCacheSize(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:174,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionContext].setSessionTimeout(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:178,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionContext].setTicketKeys(io.netty.handler.ssl.OpenSslSessionTicketKey[])"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 42
    CyclomaticComplexity: 16
  - functionName: "[io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory].<init>(javax.net.ssl.KeyManagerFactory)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.KeyManagerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory].<init>(javax.net.ssl.KeyManagerFactory,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory:45,1"
      Dst: "[io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory].<init>(javax.net.ssl.KeyManagerFactory,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory].<init>(javax.net.ssl.KeyManagerFactory,int)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.net.ssl.KeyManagerFactory"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory$1].<init>(javax.net.ssl.KeyManagerFactory)"
    - "[javax.net.ssl.KeyManagerFactory].getProvider()"
    - "[javax.net.ssl.KeyManagerFactory].getAlgorithm()"
    - "[javax.net.ssl.KeyManagerFactory].<init>(javax.net.ssl.KeyManagerFactorySpi,java.security.Provider,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory:49,1"
      Dst: "[io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory$1].<init>(javax.net.ssl.KeyManagerFactory)"
    - Src: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory:66,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].getProvider()"
    - Src: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory:66,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].getAlgorithm()"
    - Src: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory:49,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].<init>(javax.net.ssl.KeyManagerFactorySpi,java.security.Provider,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory:67,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory$1].<init>(javax.net.ssl.KeyManagerFactory)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.KeyManagerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.KeyManagerFactorySpi].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory$1:49,1"
      Dst: "[javax.net.ssl.KeyManagerFactorySpi].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslKeyMaterialManager].<init>(io.netty.handler.ssl.OpenSslKeyMaterialProvider)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslKeyMaterialManager"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslKeyMaterialProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:64,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback].<init>(io.netty.handler.ssl.OpenSslEngineMap,io.netty.handler.ssl.OpenSslKeyMaterialManager)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.OpenSslEngineMap"
    - "io.netty.handler.ssl.OpenSslKeyMaterialManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:242,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext].setVerifyCallback(long,io.netty.handler.ssl.OpenSslEngineMap,javax.net.ssl.X509TrustManager)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "io.netty.handler.ssl.OpenSslEngineMap"
    - "javax.net.ssl.X509TrustManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].useExtendedTrustManager(javax.net.ssl.X509TrustManager)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$ExtendedTrustManagerVerifyCallback].<init>(io.netty.handler.ssl.OpenSslEngineMap,javax.net.ssl.X509ExtendedTrustManager)"
    - "[io.netty.internal.tcnative.SSLContext].setCertVerifyCallback(long,io.netty.internal.tcnative.CertificateVerifier)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$TrustManagerVerifyCallback].<init>(io.netty.handler.ssl.OpenSslEngineMap,javax.net.ssl.X509TrustManager)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:197"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:196"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:193,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].useExtendedTrustManager(javax.net.ssl.X509TrustManager)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:194,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$ExtendedTrustManagerVerifyCallback].<init>(io.netty.handler.ssl.OpenSslEngineMap,javax.net.ssl.X509ExtendedTrustManager)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:194,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].setCertVerifyCallback(long,io.netty.internal.tcnative.CertificateVerifier)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext:197,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$TrustManagerVerifyCallback].<init>(io.netty.handler.ssl.OpenSslEngineMap,javax.net.ssl.X509TrustManager)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$TrustManagerVerifyCallback].<init>(io.netty.handler.ssl.OpenSslEngineMap,javax.net.ssl.X509TrustManager)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$TrustManagerVerifyCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.OpenSslEngineMap"
    - "javax.net.ssl.X509TrustManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$AbstractCertificateVerifier].<init>(io.netty.handler.ssl.OpenSslEngineMap)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$TrustManagerVerifyCallback:211,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$AbstractCertificateVerifier].<init>(io.netty.handler.ssl.OpenSslEngineMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].destroy()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslKeyMaterialProvider"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientSessionContext].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslContext,io.netty.handler.ssl.OpenSslKeyMaterialProvider)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientSessionContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslContext"
    - "io.netty.handler.ssl.OpenSslKeyMaterialProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslClientSessionCache].<init>(io.netty.handler.ssl.OpenSslEngineMap)"
    - "[io.netty.handler.ssl.OpenSslSessionContext].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslContext,io.netty.handler.ssl.OpenSslKeyMaterialProvider,long,io.netty.handler.ssl.OpenSslSessionCache)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientSessionContext:203,1"
      Dst: "[io.netty.handler.ssl.OpenSslClientSessionCache].<init>(io.netty.handler.ssl.OpenSslEngineMap)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientSessionContext:203,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionContext].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslContext,io.netty.handler.ssl.OpenSslKeyMaterialProvider,long,io.netty.handler.ssl.OpenSslSessionCache)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslClientSessionCache].<init>(io.netty.handler.ssl.OpenSslEngineMap)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslClientSessionCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslEngineMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslSessionCache].<init>(io.netty.handler.ssl.OpenSslEngineMap)"
    - "[java.util.HashMap].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:33,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].<init>(io.netty.handler.ssl.OpenSslEngineMap)"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:30,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext].access$000()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PendingWriteQueue$PendingWrite$1].<init>()"
    functionSourceFile: "io.netty.channel.PendingWriteQueue$PendingWrite$1"
    linkageType: ""
    functionLinenumber: 296
    functionLinenumberEnd: 298
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PendingWriteQueue$PendingWrite$1:297,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PendingWriteQueue$PendingWrite$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.channel.PendingWriteQueue$PendingWrite$1"
    linkageType: ""
    functionLinenumber: 299
    functionLinenumberEnd: 301
    functionDepth: 2
    returnType: "io.netty.channel.PendingWriteQueue$PendingWrite"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PendingWriteQueue$PendingWrite].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.channel.PendingWriteQueue$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PendingWriteQueue$PendingWrite$1:300,1"
      Dst: "[io.netty.channel.PendingWriteQueue$PendingWrite].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.channel.PendingWriteQueue$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$4].<init>(io.netty.channel.kqueue.AbstractKQueueStreamChannel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$4"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.kqueue.AbstractKQueueStreamChannel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$4:462,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$4].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$4"
    linkageType: ""
    functionLinenumber: 464
    functionLinenumberEnd: 467
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].access$100(io.netty.channel.kqueue.AbstractKQueueStreamChannel,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$4:465,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].access$100(io.netty.channel.kqueue.AbstractKQueueStreamChannel,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$4].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$4"
    linkageType: ""
    functionLinenumber: 461
    functionLinenumberEnd: 463
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$4].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$4:462,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$4].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.GzipOptions].<init>(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.GzipOptions"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.DeflateOptions].<init>(int,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.GzipOptions:36,1"
      Dst: "[io.netty.handler.codec.compression.DeflateOptions].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$StringPair].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$StringPair"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 193
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$StringPair:189,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$StringPair].hashCode()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$StringPair"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 5
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$StringPair:196,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$StringPair].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$StringPair"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 210
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 9
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties$StringPair:201"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties$StringPair:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties$StringPair:203"
        BranchSideFuncs:
        - "getClass()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties$StringPair:204"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties$StringPair:205"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties$StringPair:204"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties$StringPair:204"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties$StringPair:207"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties$StringPair:206"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties$StringPair:209"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties$StringPair:206"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties$StringPair:209"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties$StringPair:206"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$StringPair:204,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$StringPair:209,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.PooledByteBufAllocatorMetric].<init>(io.netty.buffer.PooledByteBufAllocator)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PooledByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocatorMetric].numHeapArenas()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].numHeapArenas()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:38,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].numHeapArenas()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].numHeapArenas()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 578
    functionLinenumberEnd: 580
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:579,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocatorMetric].numDirectArenas()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].numDirectArenas()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:45,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].numDirectArenas()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].numDirectArenas()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 588
    functionLinenumberEnd: 590
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:589,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocatorMetric].heapArenas()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].heapArenas()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:52,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].heapArenas()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].heapArenas()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocatorMetric].directArenas()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].directArenas()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:59,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].directArenas()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].directArenas()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocatorMetric].numThreadLocalCaches()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].numThreadLocalCaches()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:66,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].numThreadLocalCaches()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].numThreadLocalCaches()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 618
    functionLinenumberEnd: 630
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].get()"
    functionUses: 1
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:619"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:619"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:618"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:620"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:624"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:623"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:625"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:628"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:626,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.PooledByteBufAllocatorMetric].tinyCacheSize()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].tinyCacheSize()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:76,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].tinyCacheSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].tinyCacheSize()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocatorMetric].smallCacheSize()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].smallCacheSize()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:83,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].smallCacheSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].smallCacheSize()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 648
    functionLinenumberEnd: 650
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocatorMetric].normalCacheSize()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].normalCacheSize()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:90,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].normalCacheSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].normalCacheSize()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 658
    functionLinenumberEnd: 660
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocatorMetric].chunkSize()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].chunkSize()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:97,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].chunkSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].chunkSize()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 668
    functionLinenumberEnd: 670
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocatorMetric].usedHeapMemory()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 2
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].usedHeapMemory()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:102,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].usedHeapMemory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].usedHeapMemory()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 672
    functionLinenumberEnd: 674
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].usedMemory(io.netty.buffer.PoolArena[])"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:673,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].usedMemory(io.netty.buffer.PoolArena[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].usedMemory(io.netty.buffer.PoolArena[])"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 680
    functionLinenumberEnd: 692
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PoolArena[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena].numActiveBytes()"
    functionUses: 2
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:681"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:684"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:683"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:685"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:691"
        BranchSideFuncs:
        - "numActiveBytes()"
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:690"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:687"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:684"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:683"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:686,1"
      Dst: "[io.netty.buffer.PoolArena].numActiveBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PooledByteBufAllocatorMetric].usedDirectMemory()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 2
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].usedDirectMemory()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:107,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].usedDirectMemory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].usedDirectMemory()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 676
    functionLinenumberEnd: 678
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].usedMemory(io.netty.buffer.PoolArena[])"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:677,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].usedMemory(io.netty.buffer.PoolArena[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocatorMetric].toString()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocatorMetric"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 123
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(long)"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].usedHeapMemory()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].usedDirectMemory()"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].numHeapArenas()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].numDirectArenas()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].smallCacheSize()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].normalCacheSize()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].numThreadLocalCaches()"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].chunkSize()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 32
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:112,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:113,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:113,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:114,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocatorMetric].usedHeapMemory()"
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:114,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:115,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocatorMetric].usedDirectMemory()"
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:116,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocatorMetric].numHeapArenas()"
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:116,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:117,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocatorMetric].numDirectArenas()"
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:118,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocatorMetric].smallCacheSize()"
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:119,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocatorMetric].normalCacheSize()"
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:120,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocatorMetric].numThreadLocalCaches()"
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:121,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocatorMetric].chunkSize()"
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:121,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.buffer.PooledByteBufAllocatorMetric:122,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlEntityReference].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlEntityReference"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlEntityReference:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlEntityReference].name()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlEntityReference"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlEntityReference].text()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlEntityReference"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlEntityReference].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlEntityReference"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 9
    ICount: 32
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.xml.XmlEntityReference:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:44"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:43"
        BranchSideFuncs:
        - "getClass()"
    - Branch String: "io.netty.handler.codec.xml.XmlEntityReference:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:45"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:44"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlEntityReference:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:47"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlEntityReference:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:47"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlEntityReference:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:53"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:52"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.xml.XmlEntityReference:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:53"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:52"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.xml.XmlEntityReference:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:52"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.xml.XmlEntityReference:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:52"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlEntityReference:44,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.codec.xml.XmlEntityReference:50,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.xml.XmlEntityReference].hashCode()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlEntityReference"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 5
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.xml.XmlEntityReference:58"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:58"
        BranchSideFuncs:
        - "hashCode()"
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:57"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlEntityReference:59"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:59"
        BranchSideFuncs:
        - "hashCode()"
      - BranchSide: "io.netty.handler.codec.xml.XmlEntityReference:58"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlEntityReference:58,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.xml.XmlEntityReference].toString()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlEntityReference"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 19
    ICount: 14
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlEntityReference:65,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.xml.XmlEntityReference:65,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlEntityReference:65,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.xml.XmlEntityReference:65,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque].newInstance()"
    functionSourceFile: "io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 240
    functionDepth: 0
    returnType: "io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectPool$RecyclerObjectPool].get()"
    - "[io.netty.util.internal.ObjectPool].get()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque:239,1"
      Dst: "[io.netty.util.internal.ObjectPool].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque].<init>(int,io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 248
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].<init>(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque:245,1"
      Dst: "[java.util.ArrayDeque].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque].recycle()"
    functionSourceFile: "io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque"
    linkageType: ""
    functionLinenumber: 249
    functionLinenumberEnd: 253
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].clear()"
    - "[io.netty.util.Recycler$DefaultHandle].recycle(java.lang.Object)"
    - "[io.netty.util.Recycler$1].recycle(java.lang.Object)"
    - "[io.netty.util.internal.ObjectPool$Handle].recycle(java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque:250,1"
      Dst: "[java.util.ArrayDeque].clear()"
    - Src: "io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque:251,1"
      Dst: "[io.netty.util.internal.ObjectPool$Handle].recycle(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque].<init>(int,io.netty.util.internal.ObjectPool$Handle,io.netty.handler.flow.FlowControlHandler$1)"
    functionSourceFile: "io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque"
    linkageType: ""
    functionLinenumber: 220
    functionLinenumberEnd: 222
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.util.internal.ObjectPool$Handle"
    - "io.netty.handler.flow.FlowControlHandler$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque].<init>(int,io.netty.util.internal.ObjectPool$Handle)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque:221,1"
      Dst: "[io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque].<init>(int,io.netty.util.internal.ObjectPool$Handle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Signal$SignalConstant].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.util.Signal$SignalConstant"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractConstant].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Signal$SignalConstant:115,1"
      Dst: "[io.netty.util.AbstractConstant].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$StructHeaderExtractor].<init>(io.netty.handler.codec.haproxy.HAProxyMessageDecoder,int)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder$StructHeaderExtractor"
    linkageType: ""
    functionLinenumber: 448
    functionLinenumberEnd: 452
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$HeaderExtractor].<init>(io.netty.handler.codec.haproxy.HAProxyMessageDecoder,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder$StructHeaderExtractor:450,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$HeaderExtractor].<init>(io.netty.handler.codec.haproxy.HAProxyMessageDecoder,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$StructHeaderExtractor].findEndOfHeader(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder$StructHeaderExtractor"
    linkageType: ""
    functionLinenumber: 454
    functionLinenumberEnd: 456
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].access$600(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder$StructHeaderExtractor:455,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].access$600(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].access$600(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].findEndOfHeader(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:33,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].findEndOfHeader(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].findEndOfHeader(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 201
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].getUnsignedShort(int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:191"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:190"
        BranchSideFuncs:
        - "readerIndex()"
        - "getUnsignedShort(int)"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:197"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:184,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:191,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:194,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$StructHeaderExtractor].delimiterLength(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder$StructHeaderExtractor"
    linkageType: ""
    functionLinenumber: 459
    functionLinenumberEnd: 461
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].instance()"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.EmptyHttpHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.EmptyHttpHeaders$InstanceInitializer].access$000()"
    functionUses: 2
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders:40,1"
      Dst: "[io.netty.handler.codec.http.EmptyHttpHeaders$InstanceInitializer].access$000()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpHeaders].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders:43,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].get(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].getInt(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "java.lang.Integer"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].getInt(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].getShort(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Short"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].getShort(java.lang.CharSequence,short)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "short"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].getTimeMillis(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Long"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].getTimeMillis(java.lang.CharSequence,long)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].getAll(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "java.util.List<String>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptyList()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders:83,1"
      Dst: "[java.util.Collections].emptyList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].entries()"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptyList()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders:88,1"
      Dst: "[java.util.Collections].emptyList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].contains(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].isEmpty()"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].size()"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].names()"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptySet()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders:108,1"
      Dst: "[java.util.Collections].emptySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].add(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders:113,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].add(java.lang.String,java.lang.Iterable<?>)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Iterable<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders:118,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].addInt(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders:123,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].addShort(java.lang.CharSequence,short)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders:128,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].set(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders:133,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].set(java.lang.String,java.lang.Iterable<?>)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Iterable<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders:138,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].setInt(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 12
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders:143,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].setShort(java.lang.CharSequence,short)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders:148,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].remove(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders:153,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].clear()"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders:158,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].iterator()"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].entries()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.List].iterator()"
    functionUses: 28
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders:163,1"
      Dst: "[io.netty.handler.codec.http.EmptyHttpHeaders].entries()"
    - Src: "io.netty.handler.codec.http.EmptyHttpHeaders:163,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.EmptyHttpHeaders].iteratorCharSequence()"
    functionSourceFile: "io.netty.handler.codec.http.EmptyHttpHeaders"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$TrustManagerVerifyCallback].<init>(io.netty.handler.ssl.OpenSslEngineMap,javax.net.ssl.X509TrustManager)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$TrustManagerVerifyCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.OpenSslEngineMap"
    - "javax.net.ssl.X509TrustManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$AbstractCertificateVerifier].<init>(io.netty.handler.ssl.OpenSslEngineMap)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$TrustManagerVerifyCallback:253,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$AbstractCertificateVerifier].<init>(io.netty.handler.ssl.OpenSslEngineMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$TrustManagerVerifyCallback].verify(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.security.cert.X509Certificate[],java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$TrustManagerVerifyCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    - "java.security.cert.X509Certificate[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.X509TrustManager].checkClientTrusted(java.security.cert.X509Certificate[],java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$TrustManagerVerifyCallback:260,1"
      Dst: "[javax.net.ssl.X509TrustManager].checkClientTrusted(java.security.cert.X509Certificate[],java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool$3].run()"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$3"
    linkageType: ""
    functionLinenumber: 233
    functionLinenumberEnd: 236
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.FixedChannelPool].access$300(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    functionUses: 49
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$3:234,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].access$300(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksMessageEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksMessageEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksMessageEncoder:30,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksMessageEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.socks.SocksMessage,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksMessageEncoder"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.socks.SocksMessage"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksInitResponse].encodeAsByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.socks.SocksInitRequest].encodeAsByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.socks.SocksAuthRequest].encodeAsByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.socks.SocksCmdRequest].encodeAsByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.socks.SocksCmdResponse].encodeAsByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.socks.SocksAuthResponse].encodeAsByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.socks.UnknownSocksRequest:io.netty.handler.codec.socks.UnknownSocksResponse].encodeAsByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.socks.SocksMessage].encodeAsByteBuf(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 6
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksMessageEncoder:34,1"
      Dst: "[io.netty.handler.codec.socks.SocksMessage].encodeAsByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksMessageEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksMessageEncoder"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksMessageEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.socks.SocksMessage,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksMessageEncoder:29,1"
      Dst: "[io.netty.handler.codec.socks.SocksMessageEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.socks.SocksMessage,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].<init>(io.netty.channel.epoll.EpollSocketChannel)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 55
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.EpollSocketChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    - "[io.netty.util.internal.PlatformDependent].canEnableTcpNoDelayByDefault()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpNoDelay(boolean)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].calculateMaxBytesPerGatheringWrite()"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:50"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:53"
        BranchSideFuncs:
        - "setTcpNoDelay(boolean)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:52"
        BranchSideFuncs:
        - "calculateMaxBytesPerGatheringWrite()"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:48,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:50,1"
      Dst: "[io.netty.util.internal.PlatformDependent].canEnableTcpNoDelayByDefault()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:51,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpNoDelay(boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:53,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].calculateMaxBytesPerGatheringWrite()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:59,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].getOptions()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:58,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.epoll.EpollChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollChannelConfig:48,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions()"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:48,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 125
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].getReceiveBufferSize()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].getSendBufferSize()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].isTcpNoDelay()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].isKeepAlive()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].isReuseAddress()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].getSoLinger()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].getTrafficClass()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].isAllowHalfClosure()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].isTcpCork()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].getTcpNotSentLowAt()"
    - "[java.lang.Long].valueOf(long)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].getTcpKeepIdle()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].getTcpKeepIntvl()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].getTcpKeepCnt()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].getTcpUserTimeout()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].isTcpQuickAck()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].isIpTransparent()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].isTcpFastOpenConnect()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].getSoBusyPoll()"
    - "[io.netty.channel.epoll.EpollChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 5
    ICount: 94
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:70"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:73"
        BranchSideFuncs:
        - "getReceiveBufferSize()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:72"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:73"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:76"
        BranchSideFuncs:
        - "getSendBufferSize()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:75"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:76"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:79"
        BranchSideFuncs:
        - "isTcpNoDelay()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:78"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:79"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:82"
        BranchSideFuncs:
        - "isKeepAlive()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:81"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:82"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:85"
        BranchSideFuncs:
        - "isReuseAddress()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:84"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:85"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:88"
        BranchSideFuncs:
        - "getSoLinger()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:87"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:88"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:91"
        BranchSideFuncs:
        - "getTrafficClass()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:90"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:91"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:94"
        BranchSideFuncs:
        - "isAllowHalfClosure()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:93"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:94"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:97"
        BranchSideFuncs:
        - "isTcpCork()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:96"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:97"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:100"
        BranchSideFuncs:
        - "valueOf(long)"
        - "getTcpNotSentLowAt()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:99"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:100"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:103"
        BranchSideFuncs:
        - "getTcpKeepIdle()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:103"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:106"
        BranchSideFuncs:
        - "getTcpKeepIntvl()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:105"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:106"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:109"
        BranchSideFuncs:
        - "getTcpKeepCnt()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:108"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:109"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:112"
        BranchSideFuncs:
        - "getTcpUserTimeout()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:112"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:115"
        BranchSideFuncs:
        - "isTcpQuickAck()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:114"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:115"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:118"
        BranchSideFuncs:
        - "isIpTransparent()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:117"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:118"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:121"
        BranchSideFuncs:
        - "valueOf(boolean)"
        - "isTcpFastOpenConnect()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:120"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:121"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:124"
        BranchSideFuncs:
        - "getSoBusyPoll()"
        - "valueOf(int)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:123"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:71,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].getReceiveBufferSize()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:71,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:74,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].getSendBufferSize()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:77,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].isTcpNoDelay()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:77,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:80,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].isKeepAlive()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:83,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].isReuseAddress()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:86,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].getSoLinger()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:89,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].getTrafficClass()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:92,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].isAllowHalfClosure()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:95,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].isTcpCork()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:98,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].getTcpNotSentLowAt()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:98,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:101,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].getTcpKeepIdle()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:104,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].getTcpKeepIntvl()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:107,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].getTcpKeepCnt()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:110,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].getTcpUserTimeout()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:113,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].isTcpQuickAck()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:116,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].isIpTransparent()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:119,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].isTcpFastOpenConnect()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:122,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].getSoBusyPoll()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:124,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 37
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].getReceiveBufferSize()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 184
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getReceiveBufferSize()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:181,1"
      Dst: "[io.netty.channel.unix.Socket].getReceiveBufferSize()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:183,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].getReceiveBufferSize()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 424
    functionLinenumberEnd: 426
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getReceiveBufferSize(int)"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:425,1"
      Dst: "[io.netty.channel.unix.Socket].getReceiveBufferSize(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].getReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].getSendBufferSize()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 189
    functionLinenumberEnd: 193
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getSendBufferSize()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:190,1"
      Dst: "[io.netty.channel.unix.Socket].getSendBufferSize()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:192,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].isTcpNoDelay()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 234
    functionLinenumberEnd: 238
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isTcpNoDelay()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:235,1"
      Dst: "[io.netty.channel.unix.Socket].isTcpNoDelay()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:237,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].isTcpNoDelay()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 436
    functionLinenumberEnd: 438
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isTcpNoDelay(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:437"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:436"
        BranchSideFuncs:
        - "isTcpNoDelay(int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:437,1"
      Dst: "[io.netty.channel.unix.Socket].isTcpNoDelay(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Socket].isTcpNoDelay(int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].isKeepAlive()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 220
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isKeepAlive()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:217,1"
      Dst: "[io.netty.channel.unix.Socket].isKeepAlive()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:219,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].isKeepAlive()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 432
    functionLinenumberEnd: 434
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isKeepAlive(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:433"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:432"
        BranchSideFuncs:
        - "isKeepAlive(int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:433,1"
      Dst: "[io.netty.channel.unix.Socket].isKeepAlive(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Socket].isKeepAlive(int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].isReuseAddress()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 229
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isReuseAddress()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:226,1"
      Dst: "[io.netty.channel.unix.Socket].isReuseAddress()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:228,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].isReuseAddress()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 440
    functionLinenumberEnd: 442
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isReuseAddress(int)"
    functionUses: 6
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:441"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:440"
        BranchSideFuncs:
        - "isReuseAddress(int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:441,1"
      Dst: "[io.netty.channel.unix.Socket].isReuseAddress(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Socket].isReuseAddress(int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].getSoLinger()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 202
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getSoLinger()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:199,1"
      Dst: "[io.netty.channel.unix.Socket].getSoLinger()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:201,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].getSoLinger()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 452
    functionLinenumberEnd: 454
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getSoLinger(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:453,1"
      Dst: "[io.netty.channel.unix.Socket].getSoLinger(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].getSoLinger(int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].getTrafficClass()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 211
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getTrafficClass()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:208,1"
      Dst: "[io.netty.channel.unix.Socket].getTrafficClass()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:210,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].getTrafficClass()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 460
    functionLinenumberEnd: 462
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getTrafficClass(int,boolean)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:461,1"
      Dst: "[io.netty.channel.unix.Socket].getTrafficClass(int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].getTrafficClass(int,boolean)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].isAllowHalfClosure()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 573
    functionLinenumberEnd: 575
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].isTcpCork()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 245
    functionLinenumberEnd: 249
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].isTcpCork()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:246,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].isTcpCork()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:248,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].isTcpCork()"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 235
    functionLinenumberEnd: 237
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].isTcpCork(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.LinuxSocket:236"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:235"
        BranchSideFuncs:
        - "intValue()"
        - "isTcpCork(int)"
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:236,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:236,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].isTcpCork(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.LinuxSocket].isTcpCork(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].getTcpNotSentLowAt()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 268
    functionLinenumberEnd: 272
    functionDepth: 2
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getTcpNotSentLowAt()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:269,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getTcpNotSentLowAt()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:271,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getTcpNotSentLowAt()"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 251
    functionLinenumberEnd: 253
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getTcpNotSentLowAt(int)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:252,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:252,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getTcpNotSentLowAt(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getTcpNotSentLowAt(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].getTcpKeepIdle()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 279
    functionLinenumberEnd: 283
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getTcpKeepIdle()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:280,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getTcpKeepIdle()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:282,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getTcpKeepIdle()"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getTcpKeepIdle(int)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:256,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:256,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getTcpKeepIdle(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getTcpKeepIdle(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].getTcpKeepIntvl()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 294
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getTcpKeepIntvl()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:291,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getTcpKeepIntvl()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:293,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getTcpKeepIntvl()"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 259
    functionLinenumberEnd: 261
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getTcpKeepIntvl(int)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:260,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:260,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getTcpKeepIntvl(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getTcpKeepIntvl(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].getTcpKeepCnt()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 301
    functionLinenumberEnd: 305
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getTcpKeepCnt()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:302,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getTcpKeepCnt()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:304,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getTcpKeepCnt()"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 263
    functionLinenumberEnd: 265
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getTcpKeepCnt(int)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:264,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:264,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getTcpKeepCnt(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getTcpKeepCnt(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].getTcpUserTimeout()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 312
    functionLinenumberEnd: 316
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getTcpUserTimeout()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:313,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getTcpUserTimeout()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:315,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getTcpUserTimeout()"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 269
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getTcpUserTimeout(int)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:268,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:268,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getTcpUserTimeout(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getTcpUserTimeout(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].isTcpQuickAck()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 547
    functionLinenumberEnd: 551
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].isTcpQuickAck()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:548,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].isTcpQuickAck()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:550,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].isTcpQuickAck()"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 249
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].isTcpQuickAck(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.LinuxSocket:248"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:247"
        BranchSideFuncs:
        - "intValue()"
        - "isTcpQuickAck(int)"
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:248,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:248,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].isTcpQuickAck(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.LinuxSocket].isTcpQuickAck(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].isIpTransparent()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 494
    functionLinenumberEnd: 498
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].isIpTransparent()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:495,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].isIpTransparent()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:497,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].isIpTransparent()"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 275
    functionLinenumberEnd: 277
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].isIpTransparent(int)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.LinuxSocket:276"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:275"
        BranchSideFuncs:
        - "isIpTransparent(int)"
        - "intValue()"
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:276,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:276,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].isIpTransparent(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.LinuxSocket].isIpTransparent(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].getSoBusyPoll()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 256
    functionLinenumberEnd: 260
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getSoBusyPoll()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:257,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getSoBusyPoll()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:259,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getSoBusyPoll()"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 239
    functionLinenumberEnd: 241
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getSoBusyPoll(int)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:240,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:240,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getSoBusyPoll(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getSoBusyPoll(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 176
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setReceiveBufferSize(int)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setSendBufferSize(int)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpNoDelay(boolean)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setKeepAlive(boolean)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setReuseAddress(boolean)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setSoLinger(int)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setTrafficClass(int)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setAllowHalfClosure(boolean)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpCork(boolean)"
    - "[java.lang.Long].longValue()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpNotSentLowAt(long)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpKeepIdle(int)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpKeepCnt(int)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpKeepIntvl(int)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpUserTimeout(int)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setIpTransparent(boolean)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpMd5Sig(java.util.Map)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpQuickAck(boolean)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpFastOpenConnect(boolean)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setSoBusyPoll(int)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 2
    ICount: 120
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:131"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:133"
        BranchSideFuncs:
        - "setReceiveBufferSize(int)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:132"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:133"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:135"
        BranchSideFuncs:
        - "setSendBufferSize(int)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:134"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:135"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:137"
        BranchSideFuncs:
        - "setTcpNoDelay(boolean)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:137"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:139"
        BranchSideFuncs:
        - "setKeepAlive(boolean)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:138"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:139"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:141"
        BranchSideFuncs:
        - "setReuseAddress(boolean)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:140"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:141"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:143"
        BranchSideFuncs:
        - "setSoLinger(int)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:142"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:143"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:145"
        BranchSideFuncs:
        - "setTrafficClass(int)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:144"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:145"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:147"
        BranchSideFuncs:
        - "setAllowHalfClosure(boolean)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:146"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:147"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:149"
        BranchSideFuncs:
        - "setTcpCork(boolean)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:149"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:151"
        BranchSideFuncs:
        - "setTcpNotSentLowAt(long)"
        - "longValue()"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:150"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:151"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:153"
        BranchSideFuncs:
        - "setTcpKeepIdle(int)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:152"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:153"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:155"
        BranchSideFuncs:
        - "setTcpKeepCnt(int)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:154"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:155"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:157"
        BranchSideFuncs:
        - "setTcpKeepIntvl(int)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:156"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:157"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:159"
        BranchSideFuncs:
        - "setTcpUserTimeout(int)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:158"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:159"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:161"
        BranchSideFuncs:
        - "setIpTransparent(boolean)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:160"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:161"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:160"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:161"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:166"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:167"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:169"
        BranchSideFuncs:
        - "booleanValue()"
        - "setTcpFastOpenConnect(boolean)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:168"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:169"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:172"
        BranchSideFuncs:
        - "intValue()"
        - "setSoBusyPoll(int)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:171"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:129,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:132,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:132,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:134,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setSendBufferSize(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:136,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:136,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpNoDelay(boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:138,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setKeepAlive(boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:140,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setReuseAddress(boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:142,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setSoLinger(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:144,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTrafficClass(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:146,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setAllowHalfClosure(boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:148,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpCork(boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:150,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:150,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpNotSentLowAt(long)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:152,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpKeepIdle(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:154,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpKeepCnt(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:156,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpKeepIntvl(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:158,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpUserTimeout(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:160,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setIpTransparent(boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:164,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpMd5Sig(java.util.Map)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:166,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpQuickAck(boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:168,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpFastOpenConnect(boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:170,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setSoBusyPoll(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:172,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 40
    CyclomaticComplexity: 19
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 337
    functionLinenumberEnd: 342
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setReceiveBufferSize(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:338,1"
      Dst: "[io.netty.channel.unix.Socket].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:341,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].setReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 468
    functionLinenumberEnd: 471
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setReceiveBufferSize(int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:469,1"
      Dst: "[io.netty.channel.unix.Socket].setReceiveBufferSize(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].setReceiveBufferSize(int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 357
    functionLinenumberEnd: 363
    functionDepth: 4
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setSendBufferSize(int)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].calculateMaxBytesPerGatheringWrite()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:358,1"
      Dst: "[io.netty.channel.unix.Socket].setSendBufferSize(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:359,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].calculateMaxBytesPerGatheringWrite()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:362,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].calculateMaxBytesPerGatheringWrite()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 659
    functionLinenumberEnd: 665
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].getSendBufferSize()"
    - "[io.netty.channel.epoll.EpollChannelConfig].setMaxBytesPerGatheringWrite(long)"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollSocketChannelConfig:661"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:664"
        BranchSideFuncs:
        - "getSendBufferSize()"
        - "setMaxBytesPerGatheringWrite(long)"
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannelConfig:663"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:660,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].getSendBufferSize()"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:662,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setMaxBytesPerGatheringWrite(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollChannelConfig].setMaxBytesPerGatheringWrite(long)"
    functionSourceFile: "io.netty.channel.epoll.EpollChannelConfig"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 221
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpNoDelay(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 378
    functionLinenumberEnd: 383
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setTcpNoDelay(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:379,1"
      Dst: "[io.netty.channel.unix.Socket].setTcpNoDelay(boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:382,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].setTcpNoDelay(boolean)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 476
    functionLinenumberEnd: 479
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setTcpNoDelay(int,int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:477"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:477"
        BranchSideFuncs:
        - "setTcpNoDelay(int,int)"
      - BranchSide: "io.netty.channel.unix.Socket:476"
        BranchSideFuncs:
        - "setTcpNoDelay(int,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:477,1"
      Dst: "[io.netty.channel.unix.Socket].setTcpNoDelay(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Socket].setTcpNoDelay(int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setKeepAlive(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 321
    functionLinenumberEnd: 326
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setKeepAlive(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:322,1"
      Dst: "[io.netty.channel.unix.Socket].setKeepAlive(boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:325,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].setKeepAlive(boolean)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 464
    functionLinenumberEnd: 467
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setKeepAlive(int,int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:465"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:465"
        BranchSideFuncs:
        - "setKeepAlive(int,int)"
      - BranchSide: "io.netty.channel.unix.Socket:464"
        BranchSideFuncs:
        - "setKeepAlive(int,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:465,1"
      Dst: "[io.netty.channel.unix.Socket].setKeepAlive(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Socket].setKeepAlive(int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setReuseAddress(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 347
    functionLinenumberEnd: 352
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setReuseAddress(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:348,1"
      Dst: "[io.netty.channel.unix.Socket].setReuseAddress(boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:351,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].setReuseAddress(boolean)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 484
    functionLinenumberEnd: 487
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setReuseAddress(int,int)"
    functionUses: 6
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:485"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:485"
        BranchSideFuncs:
        - "setReuseAddress(int,int)"
      - BranchSide: "io.netty.channel.unix.Socket:484"
        BranchSideFuncs:
        - "setReuseAddress(int,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:485,1"
      Dst: "[io.netty.channel.unix.Socket].setReuseAddress(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Socket].setReuseAddress(int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setSoLinger(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 368
    functionLinenumberEnd: 373
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setSoLinger(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:369,1"
      Dst: "[io.netty.channel.unix.Socket].setSoLinger(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:372,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].setSoLinger(int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 480
    functionLinenumberEnd: 483
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setSoLinger(int,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:481,1"
      Dst: "[io.netty.channel.unix.Socket].setSoLinger(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].setSoLinger(int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTrafficClass(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 425
    functionLinenumberEnd: 430
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setTrafficClass(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:426,1"
      Dst: "[io.netty.channel.unix.Socket].setTrafficClass(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:429,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].setTrafficClass(int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 496
    functionLinenumberEnd: 499
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setTrafficClass(int,boolean,int)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:497,1"
      Dst: "[io.netty.channel.unix.Socket].setTrafficClass(int,boolean,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].setTrafficClass(int,boolean,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setAllowHalfClosure(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 578
    functionLinenumberEnd: 581
    functionDepth: 0
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpCork(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 390
    functionLinenumberEnd: 395
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].setTcpCork(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:391,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setTcpCork(boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:394,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setTcpCork(boolean)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].setTcpCork(int,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.LinuxSocket:176"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:176"
        BranchSideFuncs:
        - "intValue()"
        - "setTcpCork(int,int)"
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:175"
        BranchSideFuncs:
        - "intValue()"
        - "setTcpCork(int,int)"
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:176,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:176,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setTcpCork(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setTcpCork(int,int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpNotSentLowAt(long)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 415
    functionLinenumberEnd: 420
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].setTcpNotSentLowAt(long)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:416,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setTcpNotSentLowAt(long)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:419,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setTcpNotSentLowAt(long)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 189
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].setTcpNotSentLowAt(int,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.LinuxSocket:184"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:185"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:184"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.epoll.LinuxSocket:184"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:187"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:186"
        BranchSideFuncs:
        - "intValue()"
        - "setTcpNotSentLowAt(int,int)"
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:185,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.channel.epoll.LinuxSocket:187,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:187,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setTcpNotSentLowAt(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setTcpNotSentLowAt(int,int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpKeepIdle(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 437
    functionLinenumberEnd: 442
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].setTcpKeepIdle(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:438,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setTcpKeepIdle(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:441,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setTcpKeepIdle(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].setTcpKeepIdle(int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:195,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:195,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setTcpKeepIdle(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setTcpKeepIdle(int,int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpKeepCnt(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 469
    functionLinenumberEnd: 474
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].setTcpKeepCnt(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:470,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setTcpKeepCnt(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:473,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setTcpKeepCnt(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].setTcpKeepCnt(int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:203,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:203,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setTcpKeepCnt(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setTcpKeepCnt(int,int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpKeepIntvl(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 449
    functionLinenumberEnd: 454
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].setTcpKeepIntvl(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:450,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setTcpKeepIntvl(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:453,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setTcpKeepIntvl(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].setTcpKeepIntvl(int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:199,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:199,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setTcpKeepIntvl(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setTcpKeepIntvl(int,int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpUserTimeout(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 481
    functionLinenumberEnd: 486
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].setTcpUserTimeout(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:482,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setTcpUserTimeout(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:485,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setTcpUserTimeout(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 209
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].setTcpUserTimeout(int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:207,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:207,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setTcpUserTimeout(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setTcpUserTimeout(int,int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setIpTransparent(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 506
    functionLinenumberEnd: 511
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].setIpTransparent(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:507,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setIpTransparent(boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:510,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setIpTransparent(boolean)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].setIpTransparent(int,int)"
    functionUses: 3
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.LinuxSocket:215"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:215"
        BranchSideFuncs:
        - "intValue()"
        - "setIpTransparent(int,int)"
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:214"
        BranchSideFuncs:
        - "intValue()"
        - "setIpTransparent(int,int)"
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:215,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:215,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setIpTransparent(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setIpTransparent(int,int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpQuickAck(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 534
    functionLinenumberEnd: 539
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].setTcpQuickAck(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:535,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setTcpQuickAck(boolean)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:538,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setTcpQuickAck(boolean)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].setTcpQuickAck(int,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.LinuxSocket:172"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:172"
        BranchSideFuncs:
        - "intValue()"
        - "setTcpQuickAck(int,int)"
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:171"
        BranchSideFuncs:
        - "intValue()"
        - "setTcpQuickAck(int,int)"
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:172,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:172,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setTcpQuickAck(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setTcpQuickAck(int,int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpFastOpenConnect(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 560
    functionLinenumberEnd: 563
    functionDepth: 0
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setSoBusyPoll(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 402
    functionLinenumberEnd: 407
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].setSoBusyPoll(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:403,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setSoBusyPoll(int)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:406,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setSoBusyPoll(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].setSoBusyPoll(int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:180,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:180,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setSoBusyPoll(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setSoBusyPoll(int,int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.epoll.EpollChannelConfig"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 97
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setEpollMode(io.netty.channel.epoll.EpollMode)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setEpollMode(io.netty.channel.epoll.EpollMode)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setEpollMode(io.netty.channel.epoll.EpollMode)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setEpollMode(io.netty.channel.epoll.EpollMode)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setEpollMode(io.netty.channel.epoll.EpollMode)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setEpollMode(io.netty.channel.epoll.EpollMode)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.unix.GenericUnixChannelOption].level()"
    - "[io.netty.channel.unix.GenericUnixChannelOption].optname()"
    - "[io.netty.channel.unix.Socket].setIntOpt(int,int,int)"
    - "[io.netty.channel.unix.Socket].setRawOpt(int,int,java.nio.ByteBuffer)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 7
    ICount: 40
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollChannelConfig:78"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollChannelConfig:82"
        BranchSideFuncs:
        - "setEpollMode(io.netty.channel.epoll.EpollMode)"
      - BranchSide: "io.netty.channel.epoll.EpollChannelConfig:81"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollChannelConfig:82"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollChannelConfig:86"
        BranchSideFuncs:
        - "intValue()"
        - "setIntOpt(int,int,int)"
      - BranchSide: "io.netty.channel.epoll.EpollChannelConfig:85"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollChannelConfig:86"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollChannelConfig:93"
        BranchSideFuncs:
        - "level()"
        - "setRawOpt(int,int,java.nio.ByteBuffer)"
        - "optname()"
      - BranchSide: "io.netty.channel.epoll.EpollChannelConfig:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollChannelConfig:77,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:79,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setEpollMode(io.netty.channel.epoll.EpollMode)"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:84,1"
      Dst: "[io.netty.channel.unix.GenericUnixChannelOption].level()"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:84,1"
      Dst: "[io.netty.channel.unix.GenericUnixChannelOption].optname()"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:84,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:84,1"
      Dst: "[io.netty.channel.unix.Socket].setIntOpt(int,int,int)"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:88,1"
      Dst: "[io.netty.channel.unix.Socket].setRawOpt(int,int,java.nio.ByteBuffer)"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:92,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:94,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollChannelConfig].setEpollMode(io.netty.channel.epoll.EpollMode)"
    functionSourceFile: "io.netty.channel.epoll.EpollChannelConfig"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 205
    functionDepth: 1
    returnType: "io.netty.channel.epoll.EpollChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.EpollMode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.channel.epoll.EpollChannelConfig].checkChannelNotRegistered()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].setFlag(int)"
    - "[io.netty.channel.epoll.AbstractEpollChannel].clearFlag(int)"
    - "[java.lang.Error].<init>()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 6
    ICount: 28
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollChannelConfig:186,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:189,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:191,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].checkChannelNotRegistered()"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:192,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].setFlag(int)"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:196,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].clearFlag(int)"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:199,1"
      Dst: "[java.lang.Error].<init>()"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:202,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollChannelConfig].checkChannelNotRegistered()"
    functionSourceFile: "io.netty.channel.epoll.EpollChannelConfig"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].isRegistered()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isRegistered()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.channel.Channel].isRegistered()"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollChannelConfig:208"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollChannelConfig:211"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.epoll.EpollChannelConfig:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollChannelConfig:208,1"
      Dst: "[io.netty.channel.Channel].isRegistered()"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:209,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setPerformancePreferences(int,int,int)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpKeepCntl(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpKeepCnt(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:462,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpKeepCnt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setTcpMd5Sig(java.util.Map<InetAddress,byte[]>)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 520
    functionLinenumberEnd: 525
    functionDepth: 1
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "java.util.Map<InetAddress,byte[]>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollSocketChannel].setTcpMd5Sig(java.util.Map)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:521,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannel].setTcpMd5Sig(java.util.Map)"
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:524,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 584
    functionLinenumberEnd: 587
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:585,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollChannelConfig"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollChannelConfig:101,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 591
    functionLinenumberEnd: 594
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:592,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollChannelConfig"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollChannelConfig:108,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 597
    functionLinenumberEnd: 600
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setWriteSpinCount(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:598,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollChannelConfig"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollChannelConfig:114,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 603
    functionLinenumberEnd: 606
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:604,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.epoll.EpollChannelConfig"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 122
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollChannelConfig:120,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 609
    functionLinenumberEnd: 612
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:610,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.epoll.EpollChannelConfig"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 132
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator].newHandle()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].newHandle()"
    - "[io.netty.channel.FixedRecvByteBufAllocator].newHandle()"
    - "[io.netty.channel.ServerChannelRecvByteBufAllocator].newHandle()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.channel.RecvByteBufAllocator].newHandle()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 8
    ICount: 15
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollChannelConfig:126"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollChannelConfig:130"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.epoll.EpollChannelConfig:129"
        BranchSideFuncs:
        - "setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollChannelConfig:126,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator].newHandle()"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:127,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:127,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:127,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:127,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:127,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.channel.epoll.EpollChannelConfig:130,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 615
    functionLinenumberEnd: 618
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setAutoRead(boolean)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:616,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollChannelConfig"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    functionUses: 15
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollChannelConfig:136,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setAutoClose(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 621
    functionLinenumberEnd: 624
    functionDepth: 1
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:622,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 628
    functionLinenumberEnd: 631
    functionDepth: 4
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:629,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollChannelConfig"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollChannelConfig:143,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 635
    functionLinenumberEnd: 638
    functionDepth: 4
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:636,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollChannelConfig"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 152
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollChannelConfig:150,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 641
    functionLinenumberEnd: 644
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:642,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.epoll.EpollChannelConfig"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollChannelConfig:156,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 647
    functionLinenumberEnd: 650
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:648,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.epoll.EpollChannelConfig"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 164
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollChannelConfig:162,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollSocketChannelConfig].setEpollMode(io.netty.channel.epoll.EpollMode)"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 653
    functionLinenumberEnd: 656
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.EpollMode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setEpollMode(io.netty.channel.epoll.EpollMode)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannelConfig:654,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setEpollMode(io.netty.channel.epoll.EpollMode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].<init>(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$Tasks$4"
    linkageType: ""
    functionLinenumber: 1296
    functionLinenumberEnd: 1298
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext$Tasks"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$Tasks$4:1297,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$Tasks$4"
    linkageType: ""
    functionLinenumber: 1299
    functionLinenumberEnd: 1302
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks].access$1800(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    - "[io.netty.channel.AbstractChannelHandlerContext].access$2200(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 49
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$Tasks$4:1300,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext$Tasks].access$1800(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    - Src: "io.netty.channel.AbstractChannelHandlerContext$Tasks$4:1300,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].access$2200(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelFutureListener$1].<init>()"
    functionSourceFile: "io.netty.channel.ChannelFutureListener$1"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelFutureListener$1:41,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelFutureListener$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.ChannelFutureListener$1"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.CompleteChannelFuture:io.netty.channel.DefaultChannelProgressivePromise:io.netty.channel.DefaultChannelPromise:io.netty.channel.VoidChannelPromise].channel()"
    - "[io.netty.channel.AbstractChannel].close()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].close()"
    - "[io.netty.channel.embedded.EmbeddedChannel].close()"
    - "[io.netty.channel.ChannelFuture].channel()"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 1
    ICount: 5
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelFutureListener$1:44,1"
      Dst: "[io.netty.channel.ChannelFuture].channel()"
    - Src: "io.netty.channel.ChannelFutureListener$1:44,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelFutureListener$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.ChannelFutureListener$1"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelFutureListener$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelFutureListener$1:41,1"
      Dst: "[io.netty.channel.ChannelFutureListener$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$AuthBuilder].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$AuthBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$AuthBuilder:698,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$AuthBuilder].properties(io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$AuthBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$AuthBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$AuthBuilder].reasonCode(byte)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$AuthBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$AuthBuilder"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$AuthBuilder].build()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$AuthBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].<init>(byte,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$AuthBuilder:712,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$AuthBuilder:714,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].<init>(byte,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$AuthBuilder:717,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.RoundRobinInetAddressResolver].doResolve(java.lang.String,io.netty.util.concurrent.Promise<InetAddress>)"
    functionSourceFile: "io.netty.resolver.RoundRobinInetAddressResolver"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 74
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.util.concurrent.Promise<InetAddress>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.RoundRobinInetAddressResolver$1].<init>(io.netty.resolver.RoundRobinInetAddressResolver,io.netty.util.concurrent.Promise,java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.CompleteFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.resolver.SimpleNameResolver].resolveAll(java.lang.String)"
    - "[io.netty.resolver.dns.InflightNameResolver].resolveAll(java.lang.String)"
    - "[io.netty.resolver.NameResolver].resolveAll(java.lang.String)"
    - "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 9
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver:55,1"
      Dst: "[io.netty.resolver.NameResolver].resolveAll(java.lang.String)"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver:55,1"
      Dst: "[io.netty.resolver.RoundRobinInetAddressResolver$1].<init>(io.netty.resolver.RoundRobinInetAddressResolver,io.netty.util.concurrent.Promise,java.lang.String)"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver:55,1"
      Dst: "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.RoundRobinInetAddressResolver].doResolveAll(java.lang.String,io.netty.util.concurrent.Promise<List<InetAddress>>)"
    functionSourceFile: "io.netty.resolver.RoundRobinInetAddressResolver"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 97
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.util.concurrent.Promise<List<InetAddress>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.RoundRobinInetAddressResolver$2].<init>(io.netty.resolver.RoundRobinInetAddressResolver,io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.CompleteFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.resolver.SimpleNameResolver].resolveAll(java.lang.String)"
    - "[io.netty.resolver.dns.InflightNameResolver].resolveAll(java.lang.String)"
    - "[io.netty.resolver.NameResolver].resolveAll(java.lang.String)"
    - "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 9
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver:77,1"
      Dst: "[io.netty.resolver.NameResolver].resolveAll(java.lang.String)"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver:77,1"
      Dst: "[io.netty.resolver.RoundRobinInetAddressResolver$2].<init>(io.netty.resolver.RoundRobinInetAddressResolver,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver:77,1"
      Dst: "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.RoundRobinInetAddressResolver$2].<init>(io.netty.resolver.RoundRobinInetAddressResolver,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.resolver.RoundRobinInetAddressResolver$2"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.resolver.RoundRobinInetAddressResolver"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$2:77,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.RoundRobinInetAddressResolver].close()"
    functionSourceFile: "io.netty.resolver.RoundRobinInetAddressResolver"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.InflightNameResolver].close()"
    - "[io.netty.resolver.RoundRobinInetAddressResolver].close()"
    - "[io.netty.resolver.dns.DnsNameResolver].close()"
    - "[io.netty.resolver.SimpleNameResolver].close()"
    - "[io.netty.resolver.NameResolver].close()"
    functionUses: 4
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver:104,1"
      Dst: "[io.netty.resolver.NameResolver].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CodecOutputList$2].<init>()"
    functionSourceFile: "io.netty.handler.codec.CodecOutputList$2"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CodecOutputList$2:39,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CodecOutputList$2].initialValue()"
    functionSourceFile: "io.netty.handler.codec.CodecOutputList$2"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 3
    returnType: "io.netty.handler.codec.CodecOutputList$CodecOutputLists"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecOutputList$CodecOutputLists].<init>(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CodecOutputList$2:43,1"
      Dst: "[io.netty.handler.codec.CodecOutputList$CodecOutputLists].<init>(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CodecOutputList$CodecOutputLists].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.CodecOutputList$CodecOutputLists"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 68
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.MathUtil].safeFindNextPositivePowerOfTwo(int)"
    - "[io.netty.handler.codec.CodecOutputList].<init>(io.netty.handler.codec.CodecOutputList$CodecOutputListRecycler,int,io.netty.handler.codec.CodecOutputList$1)"
    functionUses: 1
    ICount: 27
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.CodecOutputList$CodecOutputLists:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.CodecOutputList$CodecOutputLists:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.CodecOutputList$CodecOutputLists:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.CodecOutputList$CodecOutputLists:59,1"
      Dst: "[io.netty.util.internal.MathUtil].safeFindNextPositivePowerOfTwo(int)"
    - Src: "io.netty.handler.codec.CodecOutputList$CodecOutputLists:62,1"
      Dst: "[io.netty.handler.codec.CodecOutputList].<init>(io.netty.handler.codec.CodecOutputList$CodecOutputListRecycler,int,io.netty.handler.codec.CodecOutputList$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.MathUtil].safeFindNextPositivePowerOfTwo(int)"
    functionSourceFile: "io.netty.util.internal.MathUtil"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.MathUtil].findNextPositivePowerOfTwo(int)"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.MathUtil:52"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MathUtil:51"
        BranchSideFuncs:
        - "findNextPositivePowerOfTwo(int)"
    - Branch String: "io.netty.util.internal.MathUtil:52"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MathUtil:51"
        BranchSideFuncs:
        - "findNextPositivePowerOfTwo(int)"
    Callsites:
    - Src: "io.netty.util.internal.MathUtil:52,1"
      Dst: "[io.netty.util.internal.MathUtil].findNextPositivePowerOfTwo(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.CodecOutputList].<init>(io.netty.handler.codec.CodecOutputList$CodecOutputListRecycler,int,io.netty.handler.codec.CodecOutputList$1)"
    functionSourceFile: "io.netty.handler.codec.CodecOutputList"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.CodecOutputList$CodecOutputListRecycler"
    - "int"
    - "io.netty.handler.codec.CodecOutputList$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecOutputList].<init>(io.netty.handler.codec.CodecOutputList$CodecOutputListRecycler,int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CodecOutputList:29,1"
      Dst: "[io.netty.handler.codec.CodecOutputList].<init>(io.netty.handler.codec.CodecOutputList$CodecOutputListRecycler,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CodecOutputList].<init>(io.netty.handler.codec.CodecOutputList$CodecOutputListRecycler,int)"
    functionSourceFile: "io.netty.handler.codec.CodecOutputList"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 106
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.CodecOutputList$CodecOutputListRecycler"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractList].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CodecOutputList:102,1"
      Dst: "[java.util.AbstractList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$AsyncTaskDecorator].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,io.netty.internal.tcnative.AsyncTask)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$AsyncTaskDecorator"
    linkageType: ""
    functionLinenumber: 1475
    functionLinenumberEnd: 1479
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    - "io.netty.internal.tcnative.AsyncTask"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.Runnable)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$AsyncTaskDecorator:1477,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$AsyncTaskDecorator].run(java.lang.Runnable)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$AsyncTaskDecorator"
    linkageType: ""
    functionLinenumber: 1481
    functionLinenumberEnd: 1488
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$400(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.Runnable)"
    - "[io.netty.internal.tcnative.AsyncTask].runAsync(java.lang.Runnable)"
    functionUses: 2
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$AsyncTaskDecorator:1482"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$AsyncTaskDecorator:1485"
        BranchSideFuncs:
        - "<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.Runnable)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$AsyncTaskDecorator:1482,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$400(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$AsyncTaskDecorator:1486,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.Runnable)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$AsyncTaskDecorator:1486,1"
      Dst: "[io.netty.internal.tcnative.AsyncTask].runAsync(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$400(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:94,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2234
    functionLinenumberEnd: 2236
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.Runnable)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator"
    linkageType: ""
    functionLinenumber: 1464
    functionLinenumberEnd: 1468
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator:1465,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.WriteBufferWaterMark].<init>(int,int)"
    functionSourceFile: "io.netty.channel.WriteBufferWaterMark"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.WriteBufferWaterMark].<init>(int,int,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.WriteBufferWaterMark:51,1"
      Dst: "[io.netty.channel.WriteBufferWaterMark].<init>(int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.WriteBufferWaterMark].toString()"
    functionSourceFile: "io.netty.channel.WriteBufferWaterMark"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 12
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.WriteBufferWaterMark:87,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.channel.WriteBufferWaterMark:88,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.WriteBufferWaterMark:89,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.WriteBufferWaterMark:93,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:76,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findNonWhitespace(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].isWhitespace(char)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:132"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:137"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:132"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:132,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:133,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:133,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findEndOfString(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].isWhitespace(char)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:146"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:151"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:150"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:147"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:146,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:147,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:147,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findLineBreak(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:165"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:168"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:172"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:171"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:172"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:171"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:163,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:163,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:164,1"
      Dst: "[io.netty.buffer.ByteBuf].bytesBefore(int,int,byte)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:169,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findLastLineBreak(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findLineBreak(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:195"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:194"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:195"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:195"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:197"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:184,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findLineBreak(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:187,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findDelimiter(io.netty.buffer.ByteBuf,int,byte[],boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "byte[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 0
    ICount: 71
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:227"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:227"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:230"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:233"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:232"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:236"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:247"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:246"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:238"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:247"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:246"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:239"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:237"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:236"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:247"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:265"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:249"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:264"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:263"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:249"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:264"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:263"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:250"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:258"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:257"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:253"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:264"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:263"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:253"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:264"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:263"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:222,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:223,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:229,1"
      Dst: "[io.netty.buffer.ByteBuf].bytesBefore(int,int,byte)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil:239,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 22
    CyclomaticComplexity: 11
  - functionName: "[io.netty.buffer.ByteBufProcessor$7].<init>()"
    functionSourceFile: "io.netty.buffer.ByteBufProcessor$7"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufProcessor$7:97,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufProcessor$7].process(byte)"
    functionSourceFile: "io.netty.buffer.ByteBufProcessor$7"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufProcessor$7:100"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufProcessor$7:99"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufProcessor$7:100"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufProcessor$7:99"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.oio.AbstractOioChannel$3].<init>(io.netty.channel.oio.AbstractOioChannel,boolean)"
    functionSourceFile: "io.netty.channel.oio.AbstractOioChannel$3"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.oio.AbstractOioChannel"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.oio.AbstractOioChannel$3:138,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.oio.AbstractOioChannel$3].run()"
    functionSourceFile: "io.netty.channel.oio.AbstractOioChannel$3"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 49
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.oio.OioEventLoopGroup].<init>()"
    functionSourceFile: "io.netty.channel.oio.OioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.oio.OioEventLoopGroup].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.oio.OioEventLoopGroup:42,1"
      Dst: "[io.netty.channel.oio.OioEventLoopGroup].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.oio.OioEventLoopGroup].<init>(int)"
    functionSourceFile: "io.netty.channel.oio.OioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.oio.OioEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.oio.OioEventLoopGroup:55,1"
      Dst: "[io.netty.channel.oio.OioEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.oio.OioEventLoopGroup].<init>(int,java.util.concurrent.Executor)"
    functionSourceFile: "io.netty.channel.oio.OioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.concurrent.Executor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].<init>(int,java.util.concurrent.Executor,java.lang.Object[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.oio.OioEventLoopGroup:70,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoopGroup].<init>(int,java.util.concurrent.Executor,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.oio.OioEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    functionSourceFile: "io.netty.channel.oio.OioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.concurrent.ThreadFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.lang.Object[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.oio.OioEventLoopGroup:85,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Errors].handleConnectErrno(java.lang.String,int)"
    functionSourceFile: "io.netty.channel.unix.Errors"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 129
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Errors].newConnectException0(java.lang.String,int)"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Errors:123"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Errors:125"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Errors:123"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Errors:127"
        BranchSideFuncs:
        - "newConnectException0(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Errors:128,1"
      Dst: "[io.netty.channel.unix.Errors].newConnectException0(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Errors].newConnectException0(java.lang.String,int)"
    functionSourceFile: "io.netty.channel.unix.Errors"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 156
    functionDepth: 0
    returnType: "java.io.IOException"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.NoRouteToHostException].<init>()"
    - "[java.nio.channels.AlreadyConnectedException].<init>()"
    - "[java.io.FileNotFoundException].<init>()"
    - "[java.net.ConnectException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 29
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Errors:146"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Errors:149"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Errors:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Errors:149"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Errors:152"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Errors:151"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Errors:152"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Errors:155"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Errors:154"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.channel.unix.Errors:147,1"
      Dst: "[java.net.NoRouteToHostException].<init>()"
    - Src: "io.netty.channel.unix.Errors:150,1"
      Dst: "[java.nio.channels.AlreadyConnectedException].<init>()"
    - Src: "io.netty.channel.unix.Errors:153,1"
      Dst: "[java.io.FileNotFoundException].<init>()"
    - Src: "io.netty.channel.unix.Errors:155,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.unix.Errors:155,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.unix.Errors:155,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.unix.Errors:155,1"
      Dst: "[java.net.ConnectException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Errors].throwConnectException(java.lang.String,int)"
    functionSourceFile: "io.netty.channel.unix.Errors"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.ConnectionPendingException].<init>()"
    - "[io.netty.channel.unix.Errors].newConnectException0(java.lang.String,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Errors:139"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Errors:142"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Errors:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.Errors:140,1"
      Dst: "[java.nio.channels.ConnectionPendingException].<init>()"
    - Src: "io.netty.channel.unix.Errors:142,1"
      Dst: "[io.netty.channel.unix.Errors].newConnectException0(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Errors].newConnectionResetException(java.lang.String,int)"
    functionSourceFile: "io.netty.channel.unix.Errors"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.unix.Errors$NativeIoException"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Errors$NativeIoException].<init>(java.lang.String,int,boolean)"
    - "[java.lang.Throwable].setStackTrace(java.lang.StackTraceElement[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Errors:159,1"
      Dst: "[io.netty.channel.unix.Errors$NativeIoException].<init>(java.lang.String,int,boolean)"
    - Src: "io.netty.channel.unix.Errors:160,1"
      Dst: "[java.lang.Throwable].setStackTrace(java.lang.StackTraceElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int,io.netty.channel.unix.Errors$NativeIoException,java.nio.channels.ClosedChannelException)"
    functionSourceFile: "io.netty.channel.unix.Errors"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "int"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "io.netty.channel.unix.Errors$NativeIoException"
    - "java.nio.channels.ClosedChannelException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Errors$NativeIoException].expectedErr()"
    - "[java.nio.channels.NotYetConnectedException].<init>()"
    - "[java.io.FileNotFoundException].<init>()"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Errors:172"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Errors:173"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Errors:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Errors:172"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Errors:175"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Errors:174"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Errors:175"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Errors:178"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Errors:177"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Errors:178"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Errors:181"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Errors:180"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Errors:181"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Errors:184"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Errors:183"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Errors:184"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Errors:190"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Errors:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.Errors:175,1"
      Dst: "[io.netty.channel.unix.Errors$NativeIoException].expectedErr()"
    - Src: "io.netty.channel.unix.Errors:182,1"
      Dst: "[java.nio.channels.NotYetConnectedException].<init>()"
    - Src: "io.netty.channel.unix.Errors:185,1"
      Dst: "[java.io.FileNotFoundException].<init>()"
    - Src: "io.netty.channel.unix.Errors:190,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Errors$NativeIoException].expectedErr()"
    functionSourceFile: "io.netty.channel.unix.Errors$NativeIoException"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Errors].<init>()"
    functionSourceFile: "io.netty.channel.unix.Errors"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Errors:211,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedChannelPipeline].<init>(io.netty.channel.embedded.EmbeddedChannel,io.netty.channel.embedded.EmbeddedChannel)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedChannelPipeline"
    linkageType: ""
    functionLinenumber: 915
    functionLinenumberEnd: 919
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.embedded.EmbeddedChannel"
    - "io.netty.channel.embedded.EmbeddedChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].<init>(io.netty.channel.Channel)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedChannelPipeline:917,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].<init>(io.netty.channel.Channel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedChannelPipeline].onUnhandledInboundException(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedChannelPipeline"
    linkageType: ""
    functionLinenumber: 921
    functionLinenumberEnd: 924
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].access$200(io.netty.channel.embedded.EmbeddedChannel,java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedChannelPipeline:922,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].access$200(io.netty.channel.embedded.EmbeddedChannel,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].access$200(io.netty.channel.embedded.EmbeddedChannel,java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.embedded.EmbeddedChannel"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].recordException(java.lang.Throwable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:51,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].recordException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedChannelPipeline].onUnhandledInboundMessage(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedChannelPipeline"
    linkageType: ""
    functionLinenumber: 926
    functionLinenumberEnd: 929
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].handleInboundMessage(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedChannelPipeline:927,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].handleInboundMessage(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].handleInboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 814
    functionLinenumberEnd: 817
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentLinkedQueue].add(java.lang.Object)"
    - "[java.util.AbstractQueue].add(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].add(java.lang.Object)"
    - "[java.util.ArrayDeque].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].add(java.lang.Object)"
    - "[io.netty.channel.embedded.EmbeddedChannel].inboundMessages()"
    - "[java.util.Queue].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:815,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].inboundMessages()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:815,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].inboundMessages()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 272
    functionLinenumberEnd: 277
    functionDepth: 0
    returnType: "java.util.Queue"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:273"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:276"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:275"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:274,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DnsResponseCode].valueOf(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsResponseCode"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 159
    functionDepth: 3
    returnType: "io.netty.handler.codec.dns.DnsResponseCode"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsResponseCode].<init>(int)"
    functionUses: 1
    ICount: 39
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:158,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponseCode].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsResponseCode].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsResponseCode"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsResponseCode].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:167,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponseCode].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsResponseCode].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsResponseCode"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 178
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 18
    ICount: 21
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsResponseCode:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsResponseCode:172"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.dns.DnsResponseCode:171"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
    - Branch String: "io.netty.handler.codec.dns.DnsResponseCode:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsResponseCode:175"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.dns.DnsResponseCode:174"
        BranchSideFuncs:
        - "checkNotNull(java.lang.Object,java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:170,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:172,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:172,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:172,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:172,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:172,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:176,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DnsResponseCode].compareTo(io.netty.handler.codec.dns.DnsResponseCode)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsResponseCode"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsResponseCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsResponseCode].intValue()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:188,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponseCode].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsResponseCode].hashCode()"
    functionSourceFile: "io.netty.handler.codec.dns.DnsResponseCode"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsResponseCode].intValue()"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:193,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponseCode].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsResponseCode].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsResponseCode"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 206
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsResponseCode].intValue()"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsResponseCode:201"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsResponseCode:205"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsResponseCode:204"
        BranchSideFuncs:
        - "intValue()"
    - Branch String: "io.netty.handler.codec.dns.DnsResponseCode:205"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsResponseCode:204"
        BranchSideFuncs:
        - "intValue()"
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:205,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponseCode].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DnsResponseCode].toString()"
    functionSourceFile: "io.netty.handler.codec.dns.DnsResponseCode"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 218
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.dns.DnsResponseCode].intValue()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 15
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsResponseCode:214"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsResponseCode:217"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "intValue()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.dns.DnsResponseCode:216"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:215,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:215,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:215,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:215,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponseCode].intValue()"
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:215,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:215,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DnsResponseCode].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsResponseCode"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsResponseCode].compareTo(io.netty.handler.codec.dns.DnsResponseCode)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsResponseCode:25,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponseCode].compareTo(io.netty.handler.codec.dns.DnsResponseCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$1].<init>()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$1"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$1:54,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$1].initialValue()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$1"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.WeakHashMap].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$1:57,1"
      Dst: "[java.util.WeakHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.TCPPacket$TCPFlag].values()"
    functionSourceFile: "io.netty.handler.pcap.TCPPacket$TCPFlag"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.pcap.TCPPacket$TCPFlag[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.TCPPacket$TCPFlag:56,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.TCPPacket$TCPFlag].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.pcap.TCPPacket$TCPFlag"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.pcap.TCPPacket$TCPFlag"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.TCPPacket$TCPFlag:56,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.TCPPacket$TCPFlag].<init>(java.lang.String,int,int)"
    functionSourceFile: "io.netty.handler.pcap.TCPPacket$TCPFlag"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.TCPPacket$TCPFlag:68,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily].values()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily:121,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily:121,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily].<init>(java.lang.String,int,byte)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily:149,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily:170,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily:170,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily:170,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily:170,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily:170,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily].byteValue()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder:312,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder].returnCode(io.netty.handler.codec.mqtt.MqttConnectReturnCode)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttConnectReturnCode"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder].sessionPresent(boolean)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder].properties(io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder].properties(io.netty.handler.codec.mqtt.MqttMessageBuilders$PropertiesInitializer)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttMessageBuilders$PropertiesInitializer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder].<init>()"
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$PropertiesInitializer].apply(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder:331"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder:334"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder:333"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder:332,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder:334,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$PropertiesInitializer].apply(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:350,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:359,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 219
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttProperties$MqttProperty].<init>(int,java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType].access$000(io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:217,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType].access$000(io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:217,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:217,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$MqttProperty].<init>(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType].access$000(io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder].build()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.mqtt.MqttConnAckMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder].build()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].<init>(io.netty.handler.codec.mqtt.MqttConnectReturnCode,boolean,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.handler.codec.mqtt.MqttConnAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttConnAckVariableHeader)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder:339"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder:342"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder:341"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder:340,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder].build()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder:342,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder:344,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].<init>(io.netty.handler.codec.mqtt.MqttConnectReturnCode,boolean,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder:346,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttConnAckVariableHeader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder].build()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttProperties].<init>()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType].value()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].<init>(int,java.lang.String)"
    - "[io.netty.handler.codec.mqtt.MqttProperties].add(io.netty.handler.codec.mqtt.MqttProperties$MqttProperty)"
    - "[java.lang.Long].intValue()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].<init>(int,java.lang.Integer)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].<init>(int,byte[])"
    functionUses: 0
    ICount: 160
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:371"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:375"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:374"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:375"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:379"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:378"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:379"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:382"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:381"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:382"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:385"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:384"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:385"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:385"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:384"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:386"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:390"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:389"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:392"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:395"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:394"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:396"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:400"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:399"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:398"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:396"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:400"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:404"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:403"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:402"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:400"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:404"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:408"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:407"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:406"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:404"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:408"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:412"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:411"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:412"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:416"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:415"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:416"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:420"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:419"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:420"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:424"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:423"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:424"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:429"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:428"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:370,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:372,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType].value()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:372,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].<init>(int,java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:372,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties].add(io.netty.handler.codec.mqtt.MqttProperties$MqttProperty)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:377,1"
      Dst: "[java.lang.Long].intValue()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:377,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:377,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].<init>(int,java.lang.Integer)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:398,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckPropertiesBuilder:425,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 41
    CyclomaticComplexity: 19
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties"
    linkageType: ""
    functionLinenumber: 285
    functionLinenumberEnd: 288
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttProperties].<init>(boolean)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:286,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties"
    linkageType: ""
    functionLinenumber: 288
    functionLinenumberEnd: 292
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:289,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType].value()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$StringProperty"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttProperties$MqttProperty].<init>(int,java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$StringProperty:176,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$MqttProperty].<init>(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties].add(io.netty.handler.codec.mqtt.MqttProperties$MqttProperty)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties"
    linkageType: ""
    functionLinenumber: 298
    functionLinenumberEnd: 337
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttProperties$MqttProperty"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType].access$000(io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType)"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].<init>(java.lang.String,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.collection.IntObjectHashMap].<init>()"
    - "[io.netty.util.collection.IntObjectHashMap].put(int,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 7
    ICount: 74
    EdgeCount: 153
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:299"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:302"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:301"
        BranchSideFuncs:
        - "access$000(io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:303"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:302"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:301"
        BranchSideFuncs:
        - "access$000(io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:305"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:309"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:308"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:309"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:311"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:310"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:311"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:316"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:315"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:312"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:312"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "<init>(java.lang.String,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:311"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:303"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:330"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:329"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:320"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:324"
        BranchSideFuncs:
        - "<init>(int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:323"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:324"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:327"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:326"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:330"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:334"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:333"
        BranchSideFuncs:
        - "put(int,java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:300,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:303,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType].access$000(io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:306,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:310,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:312,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:312,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:312,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:313,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].<init>(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:316,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:331,1"
      Dst: "[io.netty.util.collection.IntObjectHashMap].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:334,1"
      Dst: "[io.netty.util.collection.IntObjectHashMap].put(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 25
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$UserProperty"
    linkageType: ""
    functionLinenumber: 263
    functionLinenumberEnd: 266
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttProperties$MqttProperty].<init>(int,java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringPair].<init>(java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType].access$000(io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType)"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperty:264,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType].access$000(io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperty:264,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$StringPair].<init>(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperty:264,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$MqttProperty].<init>(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].<init>(int,java.lang.Integer)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.Integer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttProperties$MqttProperty].<init>(int,java.lang.Object)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty:164,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$MqttProperty].<init>(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].<init>(int,byte[])"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty"
    linkageType: ""
    functionLinenumber: 275
    functionLinenumberEnd: 278
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttProperties$MqttProperty].<init>(int,java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty:276,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$MqttProperty].<init>(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].<init>(io.netty.handler.codec.mqtt.MqttConnectReturnCode,boolean,io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 42
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttConnectReturnCode"
    - "boolean"
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.mqtt.MqttProperties].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttProperties)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader:37,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader:40,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder].<init>(io.netty.handler.codec.mqtt.MqttMessageBuilders$1)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttMessageBuilders$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder:305,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketUtil$2].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketUtil$2"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil$2:49,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketUtil$2].initialValue()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketUtil$2"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "java.security.MessageDigest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.MessageDigest].getInstance(java.lang.String)"
    - "[java.lang.InternalError].<init>(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil$2:56,1"
      Dst: "[java.security.MessageDigest].getInstance(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil$2:59,1"
      Dst: "[java.lang.InternalError].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufProcessor$1].<init>()"
    functionSourceFile: "io.netty.buffer.ByteBufProcessor$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufProcessor$1:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufProcessor$1].process(byte)"
    functionSourceFile: "io.netty.buffer.ByteBufProcessor$1"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufProcessor$1:34"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufProcessor$1:33"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].type()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.v5.Socks5CommandType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].dstAddrType()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.v5.Socks5AddressType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].dstAddr()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].dstPort()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].toString()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 109
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.AbstractSocksMessage].decoderResult()"
    - "[io.netty.handler.codec.DecoderResult].isSuccess()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].type()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].dstAddrType()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].dstAddr()"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].dstPort()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 27
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:97"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:88,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:89,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:89,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:91,1"
      Dst: "[io.netty.handler.codec.socksx.AbstractSocksMessage].decoderResult()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:92,1"
      Dst: "[io.netty.handler.codec.DecoderResult].isSuccess()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:94,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:99,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].type()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:101,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].dstAddrType()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:103,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].dstAddr()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:105,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].dstPort()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:105,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:106,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest:108,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(boolean)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:61,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].add(io.netty.handler.codec.Headers)"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl].add(io.netty.handler.codec.Headers)"
    - "[io.netty.handler.codec.http.HttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    functionUses: 10
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultHttpHeaders:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders:99"
        BranchSideFuncs:
        - "add(io.netty.handler.codec.Headers)"
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders:98"
        BranchSideFuncs:
        - "add(io.netty.handler.codec.http.HttpHeaders)"
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:96,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].add(io.netty.handler.codec.Headers)"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:99,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].set(io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl].set(io.netty.handler.codec.Headers)"
    - "[io.netty.handler.codec.DefaultHeaders].set(io.netty.handler.codec.Headers)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(io.netty.handler.codec.http.HttpHeaders)"
    functionUses: 5
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultHttpHeaders:105"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders:109"
        BranchSideFuncs:
        - "set(io.netty.handler.codec.Headers)"
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders:108"
        BranchSideFuncs:
        - "set(io.netty.handler.codec.http.HttpHeaders)"
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:106,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].set(io.netty.handler.codec.Headers)"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:109,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(io.netty.handler.codec.http.HttpHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].add(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionDepth: 6
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl].addObject(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].addObject(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:115,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].addObject(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].addObject(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 363
    functionLinenumberEnd: 365
    functionDepth: 5
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].fromObject(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:364,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].fromObject(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:364,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].add(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].fromObject(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 1108
    functionLinenumberEnd: 1112
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.UnsupportedValueConverter].convertObject(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter].convertObject(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeaders$HeaderValueConverterAndValidator].convertObject(java.lang.Object)"
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertObject(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.ValueConverter].convertObject(java.lang.Object)"
    functionUses: 3
    ICount: 17
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:1109,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1109,1"
      Dst: "[io.netty.handler.codec.ValueConverter].convertObject(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1111,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.DefaultHeaders:1111,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1111,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1111,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1111,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.DefaultHeaders:1111,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].add(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 328
    functionLinenumberEnd: 336
    functionDepth: 4
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].validateName(io.netty.handler.codec.DefaultHeaders$NameValidator,boolean,java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].validateName(io.netty.handler.codec.DefaultHeaders$NameValidator,boolean,java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].validateValue(io.netty.handler.codec.DefaultHeaders$ValueValidator,java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].validateValue(io.netty.handler.codec.DefaultHeaders$ValueValidator,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.HashingStrategy$1].hashCode(java.lang.Object)"
    - "[io.netty.util.AsciiString$1].hashCode(java.lang.Object)"
    - "[io.netty.util.AsciiString$2].hashCode(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].index(int)"
    - "[io.netty.handler.codec.DefaultHeaders].add0(int,int,java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].thisT()"
    - "[io.netty.util.HashingStrategy].hashCode(java.lang.Object)"
    functionUses: 33
    ICount: 14
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:329,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].validateName(io.netty.handler.codec.DefaultHeaders$NameValidator,boolean,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:330,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].validateValue(io.netty.handler.codec.DefaultHeaders$ValueValidator,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:331,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.DefaultHeaders:332,1"
      Dst: "[io.netty.util.HashingStrategy].hashCode(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:333,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].index(int)"
    - Src: "io.netty.handler.codec.DefaultHeaders:334,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].add0(int,int,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:335,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].thisT()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].validateName(io.netty.handler.codec.DefaultHeaders$NameValidator,boolean,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 1007
    functionLinenumberEnd: 1010
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.DefaultHeaders$NameValidator"
    - "boolean"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$1].validateName(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers$2].validateName(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent$TrailingHttpHeaders$1].validateName(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders$NameValidator$1].validateName(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeaders$1].validateName(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders$NameValidator].validateName(java.lang.Object)"
    functionUses: 4
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:1008,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$NameValidator].validateName(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].validateValue(io.netty.handler.codec.DefaultHeaders$ValueValidator,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 1011
    functionLinenumberEnd: 1014
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.DefaultHeaders$ValueValidator"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers$3].validate(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator].validate(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders$ValueValidator$1].validate(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders$ValueValidator].validate(java.lang.Object)"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:1012,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$ValueValidator].validate(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].add0(int,int,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 1036
    functionLinenumberEnd: 1040
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].newHeaderEntry(int,java.lang.Object,java.lang.Object,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].newHeaderEntry(int,java.lang.Object,java.lang.Object,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    functionUses: 4
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:1037,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].newHeaderEntry(int,java.lang.Object,java.lang.Object,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].newHeaderEntry(int,java.lang.Object,java.lang.Object,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 1015
    functionLinenumberEnd: 1017
    functionDepth: 2
    returnType: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    argCount: 4
    argTypes:
    - "int"
    - "java.lang.Object"
    - "java.lang.Object"
    - "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].<init>(int,java.lang.Object,java.lang.Object,io.netty.handler.codec.DefaultHeaders$HeaderEntry,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:1016,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].<init>(int,java.lang.Object,java.lang.Object,io.netty.handler.codec.DefaultHeaders$HeaderEntry,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].<init>(int,java.lang.Object,java.lang.Object,io.netty.handler.codec.DefaultHeaders$HeaderEntry,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    linkageType: ""
    functionLinenumber: 1364
    functionLinenumberEnd: 1375
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "java.lang.Object"
    - "java.lang.Object"
    - "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    - "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].pointNeighborsToThis()"
    functionUses: 1
    ICount: 16
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1365,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1373,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].pointNeighborsToThis()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].pointNeighborsToThis()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    linkageType: ""
    functionLinenumber: 1382
    functionLinenumberEnd: 1386
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].thisT()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 1103
    functionLinenumberEnd: 1105
    functionDepth: 0
    returnType: "io.netty.handler.codec.Headers"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionDepth: 6
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl].addObject(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].addObject(java.lang.Object,java.lang.Object)"
    functionUses: 18
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:121,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].addObject(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].add(java.lang.String,java.lang.Iterable<?>)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Iterable<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].addObject(java.lang.Object,java.lang.Iterable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:127,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].addObject(java.lang.Object,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].addObject(java.lang.Object,java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 368
    functionLinenumberEnd: 373
    functionDepth: 6
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].iterator()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.buffer.CompositeByteBuf].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.channel.pool.AbstractChannelPoolMap].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.channel.DefaultChannelPipeline].iterator()"
    - "[io.netty.channel.group.ChannelGroupException].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$1].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$1].iterator()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$1].iterator()"
    - "[io.netty.handler.codec.EmptyHeaders].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.buffer.PoolChunkList].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.DefaultHeaders].addObject(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl].addObject(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].thisT()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 11
    EdgeCount: 202
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders:369"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:372"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "addObject(java.lang.Object,java.lang.Object)"
        - "next()"
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:371"
        BranchSideFuncs:
        - "thisT()"
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:369,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.codec.DefaultHeaders:369,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.DefaultHeaders:369,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.DefaultHeaders:370,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].addObject(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:372,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].thisT()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].add(java.lang.CharSequence,java.lang.Iterable<?>)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.Iterable<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl].addObject(java.lang.Object,java.lang.Iterable)"
    - "[io.netty.handler.codec.DefaultHeaders].addObject(java.lang.Object,java.lang.Iterable)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:133,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].addObject(java.lang.Object,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].addInt(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].addInt(java.lang.Object,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:139,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].addInt(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].addInt(java.lang.Object,int)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].fromInt(java.lang.Object,int)"
    - "[io.netty.handler.codec.DefaultHeaders].add(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:385,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].fromInt(java.lang.Object,int)"
    - Src: "io.netty.handler.codec.DefaultHeaders:385,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].add(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].fromInt(java.lang.Object,int)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 1148
    functionLinenumberEnd: 1152
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertInt(int)"
    - "[io.netty.handler.codec.UnsupportedValueConverter].convertInt(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.ValueConverter].convertInt(int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:1149,1"
      Dst: "[io.netty.handler.codec.ValueConverter].convertInt(int)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1151,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.DefaultHeaders:1151,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1151,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1151,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1151,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.DefaultHeaders:1151,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].addShort(java.lang.CharSequence,short)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].addShort(java.lang.Object,short)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:145,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].addShort(java.lang.Object,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].addShort(java.lang.Object,short)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].fromShort(java.lang.Object,short)"
    - "[io.netty.handler.codec.DefaultHeaders].add(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:425,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].fromShort(java.lang.Object,short)"
    - Src: "io.netty.handler.codec.DefaultHeaders:425,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].add(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].fromShort(java.lang.Object,short)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 1140
    functionLinenumberEnd: 1144
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.UnsupportedValueConverter].convertShort(short)"
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertShort(short)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.ValueConverter].convertShort(short)"
    functionUses: 1
    ICount: 16
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:1141,1"
      Dst: "[io.netty.handler.codec.ValueConverter].convertShort(short)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1143,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.DefaultHeaders:1143,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1143,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1143,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1143,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.DefaultHeaders:1143,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].remove(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].remove(java.lang.Object)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:151,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].remove(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 625
    functionLinenumberEnd: 627
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].getAndRemove(java.lang.Object)"
    functionUses: 13
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders:626"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:625"
        BranchSideFuncs:
        - "getAndRemove(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:626,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].getAndRemove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.DefaultHeaders].getAndRemove(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashingStrategy$1].hashCode(java.lang.Object)"
    - "[io.netty.util.AsciiString$1].hashCode(java.lang.Object)"
    - "[io.netty.util.AsciiString$2].hashCode(java.lang.Object)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.DefaultHeaders].index(int)"
    - "[io.netty.handler.codec.DefaultHeaders].remove0(int,int,java.lang.Object)"
    - "[io.netty.util.HashingStrategy].hashCode(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:180,1"
      Dst: "[io.netty.util.HashingStrategy].hashCode(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:181,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].index(int)"
    - Src: "io.netty.handler.codec.DefaultHeaders:181,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.DefaultHeaders:181,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].remove0(int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].remove0(int,int,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 1044
    functionLinenumberEnd: 1076
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString$1].equals(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.AsciiString$2].equals(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.HashingStrategy$1].equals(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].remove()"
    - "[io.netty.util.HashingStrategy].equals(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 46
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders:1046"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1050"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1049"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders:1052"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1065"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1064"
        BranchSideFuncs:
        - "equals(java.lang.Object,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.DefaultHeaders:1053"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1059"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1058"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders:1053"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1059"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1058"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders:1066"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1075"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1074"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders:1066"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1075"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1074"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders:1067"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1070"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1069"
        BranchSideFuncs:
        - "remove()"
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:1053,1"
      Dst: "[io.netty.util.HashingStrategy].equals(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1056,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].remove()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    linkageType: ""
    functionLinenumber: 1395
    functionLinenumberEnd: 1399
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].remove(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].remove(java.lang.Object)"
    functionUses: 30
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:157,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 165
    functionDepth: 6
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].setObject(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl].setObject(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:163,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].setObject(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].setObject(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 518
    functionLinenumberEnd: 521
    functionDepth: 5
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.DefaultHeaders].fromObject(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:519,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].fromObject(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:519,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.DefaultHeaders:520,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 466
    functionLinenumberEnd: 475
    functionDepth: 4
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].validateName(io.netty.handler.codec.DefaultHeaders$NameValidator,boolean,java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].validateName(io.netty.handler.codec.DefaultHeaders$NameValidator,boolean,java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].validateValue(io.netty.handler.codec.DefaultHeaders$ValueValidator,java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].validateValue(io.netty.handler.codec.DefaultHeaders$ValueValidator,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.HashingStrategy$1].hashCode(java.lang.Object)"
    - "[io.netty.util.AsciiString$1].hashCode(java.lang.Object)"
    - "[io.netty.util.AsciiString$2].hashCode(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].index(int)"
    - "[io.netty.handler.codec.DefaultHeaders].remove0(int,int,java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].add0(int,int,java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].thisT()"
    - "[io.netty.util.HashingStrategy].hashCode(java.lang.Object)"
    functionUses: 21
    ICount: 15
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:467,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].validateName(io.netty.handler.codec.DefaultHeaders$NameValidator,boolean,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:468,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].validateValue(io.netty.handler.codec.DefaultHeaders$ValueValidator,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:469,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.DefaultHeaders:470,1"
      Dst: "[io.netty.util.HashingStrategy].hashCode(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:471,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].index(int)"
    - Src: "io.netty.handler.codec.DefaultHeaders:472,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].remove0(int,int,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:473,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].add0(int,int,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:474,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].thisT()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 171
    functionDepth: 6
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].setObject(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl].setObject(java.lang.Object,java.lang.Object)"
    functionUses: 84
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:169,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].setObject(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.String,java.lang.Iterable<?>)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 177
    functionDepth: 5
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Iterable<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].setObject(java.lang.Object,java.lang.Iterable)"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl].setObject(java.lang.Object,java.lang.Iterable)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:175,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].setObject(java.lang.Object,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].setObject(java.lang.Object,java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 524
    functionLinenumberEnd: 539
    functionDepth: 4
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].validateName(io.netty.handler.codec.DefaultHeaders$NameValidator,boolean,java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].validateName(io.netty.handler.codec.DefaultHeaders$NameValidator,boolean,java.lang.Object)"
    - "[io.netty.util.HashingStrategy$1].hashCode(java.lang.Object)"
    - "[io.netty.util.AsciiString$1].hashCode(java.lang.Object)"
    - "[io.netty.util.AsciiString$2].hashCode(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].index(int)"
    - "[io.netty.handler.codec.DefaultHeaders].remove0(int,int,java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].iterator()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.buffer.CompositeByteBuf].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.channel.pool.AbstractChannelPoolMap].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.channel.DefaultChannelPipeline].iterator()"
    - "[io.netty.channel.group.ChannelGroupException].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$1].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$1].iterator()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$1].iterator()"
    - "[io.netty.handler.codec.EmptyHeaders].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.buffer.PoolChunkList].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.DefaultHeaders].add0(int,int,java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].fromObject(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].thisT()"
    - "[io.netty.util.HashingStrategy].hashCode(java.lang.Object)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 20
    EdgeCount: 209
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders:531"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:538"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:537"
        BranchSideFuncs:
        - "thisT()"
    - Branch String: "io.netty.handler.codec.DefaultHeaders:532"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:535"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:534"
        BranchSideFuncs:
        - "add0(int,int,java.lang.Object,java.lang.Object)"
        - "fromObject(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:525,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].validateName(io.netty.handler.codec.DefaultHeaders$NameValidator,boolean,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:527,1"
      Dst: "[io.netty.util.HashingStrategy].hashCode(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:528,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].index(int)"
    - Src: "io.netty.handler.codec.DefaultHeaders:530,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].remove0(int,int,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:531,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.codec.DefaultHeaders:531,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.DefaultHeaders:531,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.DefaultHeaders:535,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].fromObject(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:535,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].add0(int,int,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:538,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].thisT()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Iterable<?>)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionDepth: 5
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.Iterable<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].setObject(java.lang.Object,java.lang.Iterable)"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl].setObject(java.lang.Object,java.lang.Iterable)"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:181,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].setObject(java.lang.Object,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].setInt(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 189
    functionDepth: 6
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].setInt(java.lang.Object,int)"
    functionUses: 12
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:187,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].setInt(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].setInt(java.lang.Object,int)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 560
    functionLinenumberEnd: 562
    functionDepth: 5
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].fromInt(java.lang.Object,int)"
    - "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:561,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].fromInt(java.lang.Object,int)"
    - Src: "io.netty.handler.codec.DefaultHeaders:561,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].setShort(java.lang.CharSequence,short)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionDepth: 6
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].setShort(java.lang.Object,short)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:193,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].setShort(java.lang.Object,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].setShort(java.lang.Object,short)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 600
    functionLinenumberEnd: 602
    functionDepth: 5
    returnType: "io.netty.handler.codec.Headers"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].fromShort(java.lang.Object,short)"
    - "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:601,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].fromShort(java.lang.Object,short)"
    - Src: "io.netty.handler.codec.DefaultHeaders:601,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].clear()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].clear()"
    - "[io.netty.handler.codec.DefaultHeaders].clear()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:199,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].clear()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 630
    functionLinenumberEnd: 635
    functionDepth: 1
    returnType: "io.netty.handler.codec.Headers"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(java.lang.Object[],java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].thisT()"
    functionUses: 4
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:631,1"
      Dst: "[java.util.Arrays].fill(java.lang.Object[],java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:634,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].thisT()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 206
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:205,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 211
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils].getAsString(io.netty.handler.codec.Headers,java.lang.Object)"
    functionUses: 44
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:210,1"
      Dst: "[io.netty.handler.codec.HeadersUtils].getAsString(io.netty.handler.codec.Headers,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils].getAsString(io.netty.handler.codec.Headers,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.Headers"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].get(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams:io.netty.buffer.EmptyByteBuf:io.netty.channel.embedded.EmbeddedChannelId:io.netty.channel.embedded.EmbeddedSocketAddress:io.netty.channel.local.LocalAddress:io.netty.handler.codec.EmptyHeaders:io.netty.handler.codec.http.LastHttpContent$1:io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism:io.netty.handler.codec.redis.ArrayRedisMessage$1:io.netty.handler.codec.redis.ArrayRedisMessage$2:io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey:io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent:io.netty.resolver.dns.DefaultDnsServerAddresses:io.netty.util.Recycler$1:io.netty.util.concurrent.PromiseTask$SentinelRunnable:java.io.ByteArrayOutputStream:java.io.ObjectOutputStream$DebugTraceInfoStack:java.io.ObjectStreamClass:java.io.ObjectStreamField:java.io.StringWriter:java.lang.Boolean:java.lang.Character$Subset:java.lang.Enum:java.lang.Module:java.lang.ModuleLayer:java.lang.Package:java.lang.ProcessBuilder$Redirect$1:java.lang.ProcessBuilder$Redirect$2:java.lang.ProcessBuilder$Redirect$3:java.lang.ProcessBuilder$Redirect$4:java.lang.ProcessBuilder$Redirect$5:java.lang.ProcessBuilder$Redirect$6:java.lang.ProcessBuilder$RedirectPipeImpl:java.lang.ProcessHandleImpl:java.lang.ProcessImpl:java.lang.Runtime$Version:java.lang.StackFrameInfo:java.lang.StackTraceElement:java.lang.String:java.lang.StringBuilder:java.lang.ThreadGroup:java.lang.invoke.ClassSpecializer$SpeciesData:java.lang.invoke.Invokers:java.lang.invoke.LambdaForm:java.lang.invoke.LambdaForm$Name:java.lang.invoke.LambdaForm$NamedFunction:java.lang.invoke.LambdaFormEditor$Transform:java.lang.invoke.MemberName:java.lang.invoke.MethodHandle:java.lang.invoke.MethodHandleImpl$LoopClauses:java.lang.invoke.MethodHandles$Lookup:java.lang.invoke.MethodType:java.lang.invoke.MethodTypeForm:java.lang.invoke.SerializedLambda:java.lang.module.Configuration:java.lang.module.ModuleDescriptor:java.lang.module.ModuleDescriptor$Exports:java.lang.module.ModuleDescriptor$Opens:java.lang.module.ModuleDescriptor$Provides:java.lang.module.ModuleDescriptor$Requires:java.lang.module.ModuleDescriptor$Version:java.lang.module.ResolvedModule:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method:java.lang.reflect.Parameter:java.math.BigDecimal:java.math.BigInteger:java.math.MathContext:java.math.MutableBigInteger:java.net.HttpCookie:java.net.InetAddress:java.net.InetSocketAddress:java.net.InetSocketAddress$InetSocketAddressHolder:java.net.InterfaceAddress:java.net.NetworkInterface:java.net.Proxy:java.net.ServerSocket:java.net.Socket:java.net.SocketImpl:java.net.URI:java.net.URL:java.net.URLConnection:java.nio.ByteBuffer:java.nio.ByteOrder:java.nio.CharBuffer:java.nio.DoubleBuffer:java.nio.FloatBuffer:java.nio.IntBuffer:java.nio.LongBuffer:java.nio.ShortBuffer:java.nio.channels.FileChannel$MapMode:java.nio.channels.FileLock:java.nio.charset.Charset:java.nio.charset.CoderResult:java.nio.charset.CodingErrorAction:java.nio.file.attribute.FileTime:java.security.AlgorithmParameters:java.security.CodeSigner:java.security.CodeSource:java.security.MessageDigest:java.security.Permission:java.security.PermissionCollection:java.security.PrivilegedActionException:java.security.ProtectionDomain:java.security.Provider:java.security.Provider$Service:java.security.SecureRandom:java.security.SecureRandomSpi:java.security.Signature:java.security.Timestamp:java.security.cert.CertPath:java.security.spec.PSSParameterSpec:java.text.AttributedCharacterIterator$Attribute:java.text.CalendarBuilder:java.text.FieldPosition:java.text.ParsePosition:java.time.Duration:java.time.Instant:java.time.LocalDate:java.time.LocalDateTime:java.time.LocalTime:java.time.OffsetDateTime:java.time.OffsetTime:java.time.Period:java.time.ZoneId:java.time.ZoneOffset:java.time.ZonedDateTime:java.time.chrono.AbstractChronology:java.time.format.DateTimeFormatter:java.time.format.DateTimeFormatterBuilder$CompositePrinterParser:java.time.format.DateTimeFormatterBuilder$NumberPrinterParser:java.time.format.DateTimeParseContext:java.time.format.DateTimePrintContext:java.time.format.DecimalStyle:java.time.format.Parsed:java.time.temporal.ChronoField:java.time.temporal.ChronoUnit:java.time.temporal.ValueRange:java.time.zone.ZoneOffsetTransition:java.time.zone.ZoneOffsetTransitionRule:java.time.zone.ZoneRules:java.util.AbstractCollection:java.util.AbstractMap:java.util.AbstractMap$SimpleEntry:java.util.AbstractMap$SimpleImmutableEntry:java.util.BitSet:java.util.Calendar:java.util.Currency:java.util.Date:java.util.DoubleSummaryStatistics:java.util.EventObject:java.util.Formatter:java.util.HashMap$Node:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IntSummaryStatistics:java.util.Locale:java.util.LongSummaryStatistics:java.util.Optional:java.util.OptionalDouble:java.util.OptionalInt:java.util.OptionalLong:java.util.Properties:java.util.ResourceBundle$CacheKey:java.util.ServiceLoader:java.util.StringJoiner:java.util.TreeMap$Entry:java.util.UUID:java.util.Vector:java.util.WeakHashMap$Entry:java.util.concurrent.CompletableFuture:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$CollectionView:java.util.concurrent.ConcurrentHashMap$Node:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CountDownLatch:java.util.concurrent.ForkJoinPool:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue:java.util.concurrent.ThreadPoolExecutor:java.util.concurrent.atomic.AtomicBoolean:java.util.concurrent.atomic.AtomicInteger:java.util.concurrent.atomic.AtomicLong:java.util.concurrent.atomic.AtomicLongArray:java.util.concurrent.atomic.AtomicReference:java.util.concurrent.atomic.AtomicReferenceArray:java.util.concurrent.atomic.LongAdder:java.util.concurrent.locks.AbstractQueuedSynchronizer:java.util.concurrent.locks.ReentrantLock:java.util.concurrent.locks.ReentrantReadWriteLock:java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock:java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock:java.util.jar.Attributes$Name:java.util.logging.Level:java.util.regex.Matcher:java.util.regex.Pattern:java.util.zip.ZipEntry:javax.crypto.CryptoPermission:javax.naming.NamingException:javax.naming.directory.ModificationItem:javax.net.ssl.SNIHostName:javax.net.ssl.SNIServerName:javax.net.ssl.SSLEngineResult:javax.security.auth.Subject:javax.security.auth.x500.X500Principal:javax.xml.namespace.QName:sun.net.www.MessageHeader:sun.nio.fs.UnixFileStore:sun.nio.fs.UnixPath:sun.reflect.annotation.AnnotationType:sun.reflect.annotation.TypeAnnotation:sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo:sun.security.util.BitArray:sun.security.util.DerValue:sun.security.util.JarConstraintsParameters:sun.security.util.LazyCodeSourcePermissionCollection:sun.security.util.ObjectIdentifier:sun.security.x509.AVA:sun.security.x509.AlgorithmId:sun.security.x509.AuthorityInfoAccessExtension:sun.security.x509.AuthorityKeyIdentifierExtension:sun.security.x509.BasicConstraintsExtension:sun.security.x509.CRLDistributionPointsExtension:sun.security.x509.CertificateAlgorithmId:sun.security.x509.CertificateExtensions:sun.security.x509.CertificateIssuerName:sun.security.x509.CertificatePoliciesExtension:sun.security.x509.CertificateSerialNumber:sun.security.x509.CertificateSubjectName:sun.security.x509.CertificateValidity:sun.security.x509.CertificateVersion:sun.security.x509.CertificateX509Key:sun.security.x509.ExtendedKeyUsageExtension:sun.security.x509.Extension:sun.security.x509.GeneralName:sun.security.x509.GeneralNames:sun.security.x509.GeneralSubtree:sun.security.x509.GeneralSubtrees:sun.security.x509.IssuerAlternativeNameExtension:sun.security.x509.KeyIdentifier:sun.security.x509.NameConstraintsExtension:sun.security.x509.PolicyConstraintsExtension:sun.security.x509.PolicyMappingsExtension:sun.security.x509.PrivateKeyUsageExtension:sun.security.x509.RDN:sun.security.x509.SerialNumber:sun.security.x509.SubjectAlternativeNameExtension:sun.security.x509.SubjectKeyIdentifierExtension:sun.security.x509.UniqueIdentity:sun.security.x509.X500Name:sun.security.x509.X509CertImpl:sun.security.x509.X509CertInfo:sun.util.calendar.CalendarDate:sun.util.calendar.Era:sun.util.calendar.JulianCalendar$Date:sun.util.locale.BaseLocale:sun.util.locale.Extension:sun.util.locale.LocaleExtensions].get(java.lang.Object)"
    - "[io.netty.channel.ReflectiveChannelFactory].toString()"
    - "[io.netty.util.Version].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].toString()"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[io.netty.buffer.PoolSubpage].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].toString()"
    - "[io.netty.util.Signal].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Thread].toString()"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].toString()"
    - "[java.lang.Throwable].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].toString()"
    - "[io.netty.channel.kqueue.NativeLongArray].toString()"
    - "[io.netty.handler.proxy.ProxyConnectionEvent].toString()"
    - "[io.netty.handler.ssl.SslCompletionEvent].toString()"
    - "[io.netty.bootstrap.BootstrapConfig].toString()"
    - "[io.netty.handler.codec.xml.XmlEntityReference].toString()"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].toString()"
    - "[io.netty.channel.kqueue.AcceptFilter].toString()"
    - "[io.netty.buffer.DefaultByteBufHolder].toString()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].toString()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].toString()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].toString()"
    - "[io.netty.handler.codec.http.HttpVersion].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].toString()"
    - "[io.netty.util.AbstractConstant].toString()"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache].toString()"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].toString()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].toString()"
    - "[io.netty.handler.ssl.util.LazyX509Certificate].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].toString()"
    - "[io.netty.buffer.WrappedByteBuf].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].toString()"
    - "[io.netty.handler.codec.dns.DnsOpCode].toString()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].toString()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].toString()"
    - "[java.lang.Integer].toString()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache].toString()"
    - "[io.netty.handler.codec.DefaultHeaders].toString()"
    - "[jaz.Zer].toString()"
    - "[io.netty.util.concurrent.DefaultPromise].toString()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].toString()"
    - "[io.netty.handler.ssl.PemX509Certificate].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].toString()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].toString()"
    - "[io.netty.handler.codec.redis.IntegerRedisMessage].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].toString()"
    - "[io.netty.handler.codec.xml.XmlElementEnd].toString()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].toString()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuestion].toString()"
    - "[io.netty.handler.ssl.OpenSslSessionId].toString()"
    - "[io.netty.channel.group.DefaultChannelGroup].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].toString()"
    - "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].toString()"
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].toString()"
    - "[java.lang.Class].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].toString()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].toString()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].toString()"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].toString()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].toString()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].toString()"
    - "[io.netty.handler.codec.EmptyHeaders].toString()"
    - "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].toString()"
    - "[io.netty.buffer.AbstractByteBufAllocator].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].toString()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].toString()"
    - "[io.netty.handler.codec.xml.XmlNamespace].toString()"
    - "[io.netty.channel.unix.FileDescriptor].toString()"
    - "[java.lang.Double].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].toString()"
    - "[io.netty.bootstrap.AbstractBootstrap].toString()"
    - "[io.netty.channel.WriteBufferWaterMark].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString()"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribePayload].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].toString()"
    - "[io.netty.handler.codec.http2.Http2Flags].toString()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].toString()"
    - "[io.netty.buffer.CompositeByteBuf].toString()"
    - "[io.netty.handler.codec.http2.HpackHeaderField].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].toString()"
    - "[io.netty.handler.codec.smtp.SmtpCommand].toString()"
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[io.netty.resolver.dns.InflightNameResolver].toString()"
    - "[java.lang.Float].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[java.io.File].toString()"
    - "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].toString()"
    - "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].toString()"
    - "[io.netty.buffer.AbstractByteBuf].toString()"
    - "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].toString()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].toString()"
    - "[java.lang.Object].toString()"
    - "[io.netty.handler.codec.xml.XmlElement].toString()"
    - "[java.lang.Character].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].toString()"
    - "[io.netty.handler.codec.http.QueryStringEncoder].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].toString()"
    - "[io.netty.handler.codec.dns.DnsRecordType].toString()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].toString()"
    - "[io.netty.handler.codec.dns.DnsResponseCode].toString()"
    - "[io.netty.util.collection.LongObjectHashMap].toString()"
    - "[io.netty.buffer.PoolArena].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].toString()"
    - "[io.netty.channel.unix.PeerCredentials].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsPtrRecord].toString()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].toString()"
    - "[io.netty.handler.codec.http.HttpMethod].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].toString()"
    - "[io.netty.handler.traffic.TrafficCounter].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].toString()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].toString()"
    - "[java.lang.Short].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsOptPseudoRrRecord].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].toString()"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].toString()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent].toString()"
    - "[io.netty.util.DomainNameMapping].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].toString()"
    - "[io.netty.buffer.PoolChunkList].toString()"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].toString()"
    - "[io.netty.buffer.PoolChunk].toString()"
    - "[io.netty.util.internal.EmptyPriorityQueue].toString()"
    - "[io.netty.channel.unix.DomainSocketAddress].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckPayload].toString()"
    - "[io.netty.handler.codec.xml.XmlAttribute].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].toString()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].toString()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].toString()"
    - "[io.netty.channel.DefaultChannelId].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[io.netty.channel.DefaultAddressedEnvelope].toString()"
    - "[io.netty.util.collection.CharObjectHashMap].toString()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].toString()"
    - "[io.netty.handler.codec.xml.XmlElementStart].toString()"
    - "[io.netty.handler.codec.DecoderResult].toString()"
    - "[io.netty.handler.ssl.SniCompletionEvent].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[io.netty.util.collection.ByteObjectHashMap].toString()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].toString()"
    - "[io.netty.util.collection.ShortObjectHashMap].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].toString()"
    - "[io.netty.handler.codec.http.QueryStringDecoder].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].toString()"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].toString()"
    - "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].toString()"
    - "[java.lang.Long].toString()"
    - "[io.netty.channel.sctp.SctpMessage].toString()"
    - "[io.netty.util.collection.IntObjectHashMap].toString()"
    - "[io.netty.handler.codec.xml.XmlContent].toString()"
    - "[io.netty.handler.codec.http.HttpHeaders].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].toString()"
    - "[io.netty.buffer.FixedCompositeByteBuf].toString()"
    - "[io.netty.channel.DefaultChannelPipeline].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].toString()"
    - "[io.netty.handler.codec.string.LineSeparator].toString()"
    - "[io.netty.buffer.SwappedByteBuf].toString()"
    - "[io.netty.channel.unix.Socket].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].toString()"
    - "[io.netty.channel.AbstractChannel].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].toString()"
    - "[java.lang.Byte].toString()"
    - "[io.netty.handler.codec.xml.XmlDTD].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].toString()"
    - "[io.netty.bootstrap.ServerBootstrapConfig].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandType].toString()"
    - "[io.netty.channel.AbstractChannelHandlerContext].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].toString()"
    - "[io.netty.handler.codec.http.HttpScheme].toString()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].toString()"
    - "[io.netty.handler.codec.Headers].get(java.lang.Object)"
    functionUses: 2
    ICount: 8
    EdgeCount: 269
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.HeadersUtils:65"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.HeadersUtils:63"
        BranchSideFuncs:
        - "toString()"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils:64,1"
      Dst: "[io.netty.handler.codec.Headers].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.HeadersUtils:65,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].getInt(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 216
    functionDepth: 3
    returnType: "java.lang.Integer"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].getInt(java.lang.Object)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:215,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].getInt(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].getInt(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 707
    functionLinenumberEnd: 713
    functionDepth: 2
    returnType: "java.lang.Integer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].toInt(java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders:710"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:708"
        BranchSideFuncs:
        - "toInt(java.lang.Object,java.lang.Object)"
        - "valueOf(int)"
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:707"
        BranchSideFuncs:
        - "toInt(java.lang.Object,java.lang.Object)"
        - "valueOf(int)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:708,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:710,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].toInt(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:710,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].toInt(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 1220
    functionLinenumberEnd: 1224
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertToInt(java.lang.Object)"
    - "[io.netty.handler.codec.UnsupportedValueConverter].convertToInt(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.ValueConverter].convertToInt(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:1221,1"
      Dst: "[io.netty.handler.codec.ValueConverter].convertToInt(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1223,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.DefaultHeaders:1223,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1223,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1223,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1223,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.DefaultHeaders:1223,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].getInt(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 219
    functionLinenumberEnd: 221
    functionDepth: 4
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].getInt(java.lang.Object,int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:220,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].getInt(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].getInt(java.lang.Object,int)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 717
    functionLinenumberEnd: 720
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].getInt(java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders:719"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:717"
        BranchSideFuncs:
        - "getInt(java.lang.Object)"
        - "intValue()"
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:718,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].getInt(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:719,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].getShort(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.lang.Short"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].getShort(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:225,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].getShort(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].getShort(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 691
    functionLinenumberEnd: 697
    functionDepth: 2
    returnType: "java.lang.Short"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].toShort(java.lang.Object,java.lang.Object)"
    - "[java.lang.Short].valueOf(short)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders:694"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:692"
        BranchSideFuncs:
        - "toShort(java.lang.Object,java.lang.Object)"
        - "valueOf(short)"
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:691"
        BranchSideFuncs:
        - "toShort(java.lang.Object,java.lang.Object)"
        - "valueOf(short)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:692,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:694,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].toShort(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:694,1"
      Dst: "[java.lang.Short].valueOf(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].toShort(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 1212
    functionLinenumberEnd: 1216
    functionDepth: 0
    returnType: "short"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.UnsupportedValueConverter].convertToShort(java.lang.Object)"
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertToShort(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.ValueConverter].convertToShort(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:1213,1"
      Dst: "[io.netty.handler.codec.ValueConverter].convertToShort(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1215,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.DefaultHeaders:1215,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1215,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1215,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1215,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.DefaultHeaders:1215,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].getShort(java.lang.CharSequence,short)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 229
    functionLinenumberEnd: 231
    functionDepth: 4
    returnType: "short"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].getShort(java.lang.Object,short)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:230,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].getShort(java.lang.Object,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].getShort(java.lang.Object,short)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 701
    functionLinenumberEnd: 704
    functionDepth: 3
    returnType: "short"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].getShort(java.lang.Object)"
    - "[java.lang.Short].shortValue()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders:703"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:701"
        BranchSideFuncs:
        - "shortValue()"
        - "getShort(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:702,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].getShort(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:703,1"
      Dst: "[java.lang.Short].shortValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].getTimeMillis(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.lang.Long"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].getTimeMillis(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:235,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].getTimeMillis(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].getTimeMillis(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.Long"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].toTimeMillis(java.lang.Object,java.lang.Object)"
    - "[java.lang.Long].valueOf(long)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders:774"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:772"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:771"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:772,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:774,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].toTimeMillis(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:774,1"
      Dst: "[java.lang.Long].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].toTimeMillis(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ValueConverter].convertToTimeMillis(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:1253,1"
      Dst: "[io.netty.handler.codec.ValueConverter].convertToTimeMillis(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1255,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.DefaultHeaders:1255,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1255,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1255,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1255,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.DefaultHeaders:1255,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].getTimeMillis(java.lang.CharSequence,long)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].getTimeMillis(java.lang.Object,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:240,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].getTimeMillis(java.lang.Object,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].getTimeMillis(java.lang.Object,long)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].getTimeMillis(java.lang.Object)"
    - "[java.lang.Long].longValue()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders:783"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:781"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:782,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].getTimeMillis(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:783,1"
      Dst: "[java.lang.Long].longValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].getAll(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 246
    functionDepth: 3
    returnType: "java.util.List<String>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].getAll(java.lang.CharSequence)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:245,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].getAll(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].getAll(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 249
    functionLinenumberEnd: 251
    functionDepth: 2
    returnType: "java.util.List<String>"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils].getAllAsString(io.netty.handler.codec.Headers,java.lang.Object)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:250,1"
      Dst: "[io.netty.handler.codec.HeadersUtils].getAllAsString(io.netty.handler.codec.Headers,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils].getAllAsString(io.netty.handler.codec.Headers,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.Headers"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].getAll(java.lang.Object)"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].getAll(java.lang.Object)"
    - "[io.netty.handler.codec.EmptyHeaders].getAll(java.lang.Object)"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl].getAll(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$1].<init>(java.util.List)"
    - "[io.netty.handler.codec.Headers].getAll(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils:42,1"
      Dst: "[io.netty.handler.codec.Headers].getAll(java.lang.Object)"
    - Src: "io.netty.handler.codec.HeadersUtils:43,1"
      Dst: "[io.netty.handler.codec.HeadersUtils$1].<init>(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils$1].<init>(java.util.List)"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$1"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractList].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$1:43,1"
      Dst: "[java.util.AbstractList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].entries()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].isEmpty()"
    - "[java.util.Collections].emptyList()"
    - "[io.netty.handler.codec.DefaultHeaders].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultHttpHeaders:255"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders:258"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders:257"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultHttpHeaders:260"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders:263"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders:262"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:255,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].isEmpty()"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:256,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:259,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].size()"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:259,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:260,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:260,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:260,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:261,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].isEmpty()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 314
    functionLinenumberEnd: 316
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].isEmpty()"
    functionUses: 14
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:315,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].isEmpty()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 309
    functionLinenumberEnd: 311
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders:310"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:309"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.DefaultHeaders].size()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 304
    functionLinenumberEnd: 306
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 268
    functionLinenumberEnd: 270
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils].iteratorAsString(java.lang.Iterable)"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:269,1"
      Dst: "[io.netty.handler.codec.HeadersUtils].iteratorAsString(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].iteratorCharSequence()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 273
    functionLinenumberEnd: 275
    functionDepth: 3
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:274,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].iterator()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 638
    functionLinenumberEnd: 640
    functionDepth: 2
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].<init>(io.netty.handler.codec.DefaultHeaders,io.netty.handler.codec.DefaultHeaders$1)"
    functionUses: 36
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:639,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].<init>(io.netty.handler.codec.DefaultHeaders,io.netty.handler.codec.DefaultHeaders$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].valueStringIterator(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 278
    functionLinenumberEnd: 281
    functionDepth: 5
    returnType: "java.util.Iterator<String>"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].valueCharSequenceIterator(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].<init>(io.netty.handler.codec.http.DefaultHttpHeaders,java.util.Iterator)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:279,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].valueCharSequenceIterator(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:280,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders$2].<init>(io.netty.handler.codec.http.DefaultHttpHeaders,java.util.Iterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].valueCharSequenceIterator(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 299
    functionLinenumberEnd: 301
    functionDepth: 4
    returnType: "java.util.Iterator<CharSequence>"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].valueIterator(java.lang.Object)"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl].valueIterator(java.lang.Object)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:300,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].valueIterator(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].valueIterator(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 218
    functionDepth: 3
    returnType: "java.util.Iterator"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].<init>(io.netty.handler.codec.DefaultHeaders,java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:217,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$ValueIterator].<init>(io.netty.handler.codec.DefaultHeaders,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$ValueIterator].<init>(io.netty.handler.codec.DefaultHeaders,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$ValueIterator"
    linkageType: ""
    functionLinenumber: 1301
    functionLinenumberEnd: 1307
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.DefaultHeaders"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.DefaultHeaders].access$100(io.netty.handler.codec.DefaultHeaders)"
    - "[io.netty.util.HashingStrategy$1].hashCode(java.lang.Object)"
    - "[io.netty.util.AsciiString$1].hashCode(java.lang.Object)"
    - "[io.netty.util.AsciiString$2].hashCode(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].access$200(io.netty.handler.codec.DefaultHeaders)"
    - "[io.netty.handler.codec.DefaultHeaders].access$300(io.netty.handler.codec.DefaultHeaders,int)"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].calculateNext(io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    - "[io.netty.util.HashingStrategy].hashCode(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1302,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1303,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1304,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].access$100(io.netty.handler.codec.DefaultHeaders)"
    - Src: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1304,1"
      Dst: "[io.netty.util.HashingStrategy].hashCode(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1305,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].access$200(io.netty.handler.codec.DefaultHeaders)"
    - Src: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1305,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].access$300(io.netty.handler.codec.DefaultHeaders,int)"
    - Src: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1305,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$ValueIterator].calculateNext(io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].access$100(io.netty.handler.codec.DefaultHeaders)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "io.netty.util.HashingStrategy"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.DefaultHeaders"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].access$200(io.netty.handler.codec.DefaultHeaders)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "io.netty.handler.codec.DefaultHeaders$HeaderEntry[]"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.DefaultHeaders"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].access$300(io.netty.handler.codec.DefaultHeaders,int)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.DefaultHeaders"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].index(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:43,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].index(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$ValueIterator].calculateNext(io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$ValueIterator"
    linkageType: ""
    functionLinenumber: 1335
    functionLinenumberEnd: 1345
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].access$100(io.netty.handler.codec.DefaultHeaders)"
    - "[io.netty.util.AsciiString$2].equals(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.HashingStrategy$1].equals(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.AsciiString$1].equals(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.HashingStrategy].equals(java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1336"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1343"
        BranchSideFuncs:
        - "equals(java.lang.Object,java.lang.Object)"
        - "access$100(io.netty.handler.codec.DefaultHeaders)"
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1342"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1337"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1341"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1340"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1337"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1341"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1340"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1337,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].access$100(io.netty.handler.codec.DefaultHeaders)"
    - Src: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1337,1"
      Dst: "[io.netty.util.HashingStrategy].equals(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders$2].<init>(io.netty.handler.codec.http.DefaultHttpHeaders,java.util.Iterator)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders$2"
    linkageType: ""
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.DefaultHttpHeaders"
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$2:280,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 304
    functionLinenumberEnd: 306
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:305,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 309
    functionLinenumberEnd: 311
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object)"
    functionUses: 32
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:310,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].size()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 319
    functionLinenumberEnd: 321
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].size()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:320,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.String,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 324
    functionLinenumberEnd: 326
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:325,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 329
    functionLinenumberEnd: 331
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object,java.lang.Object,io.netty.util.HashingStrategy)"
    functionUses: 5
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultHttpHeaders:330"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders:329"
        BranchSideFuncs:
        - "contains(java.lang.Object,java.lang.Object,io.netty.util.HashingStrategy)"
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:330,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object,java.lang.Object,io.netty.util.HashingStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object,java.lang.Object,io.netty.util.HashingStrategy)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 288
    functionLinenumberEnd: 301
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    - "io.netty.util.HashingStrategy"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.HashingStrategy$1].hashCode(java.lang.Object)"
    - "[io.netty.util.AsciiString$1].hashCode(java.lang.Object)"
    - "[io.netty.util.AsciiString$2].hashCode(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].index(int)"
    - "[io.netty.util.AsciiString$2].equals(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.HashingStrategy$1].equals(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.AsciiString$1].equals(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.HashingStrategy].hashCode(java.lang.Object)"
    - "[io.netty.util.HashingStrategy].equals(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 24
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders:294"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:300"
        BranchSideFuncs:
        - "equals(java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:299"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders:295"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:298"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:297"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders:295"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:298"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:297"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders:295"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:298"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:297"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:289,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.DefaultHeaders:291,1"
      Dst: "[io.netty.util.HashingStrategy].hashCode(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:292,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].index(int)"
    - Src: "io.netty.handler.codec.DefaultHeaders:295,1"
      Dst: "[io.netty.util.HashingStrategy].equals(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].names()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 334
    functionLinenumberEnd: 336
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils].namesAsString(io.netty.handler.codec.Headers)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:335,1"
      Dst: "[io.netty.handler.codec.HeadersUtils].namesAsString(io.netty.handler.codec.Headers)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 339
    functionLinenumberEnd: 342
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].equals(io.netty.handler.codec.Headers,io.netty.util.HashingStrategy)"
    functionUses: 12
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultHttpHeaders:340"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders:340"
        BranchSideFuncs:
        - "equals(io.netty.handler.codec.Headers,io.netty.util.HashingStrategy)"
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders:339"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultHttpHeaders:341"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders:339"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:341,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].equals(io.netty.handler.codec.Headers,io.netty.util.HashingStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 345
    functionLinenumberEnd: 347
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].hashCode(io.netty.util.HashingStrategy)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:346,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].hashCode(io.netty.util.HashingStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders].copy()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders"
    linkageType: ""
    functionLinenumber: 350
    functionLinenumberEnd: 352
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(io.netty.handler.codec.DefaultHeaders)"
    - "[io.netty.handler.codec.stomp.DefaultStompHeaders].copy()"
    - "[io.netty.handler.codec.DefaultHeaders].copy()"
    functionUses: 8
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:351,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].copy()"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders:351,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(io.netty.handler.codec.DefaultHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].copy()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 1263
    functionLinenumberEnd: 1268
    functionDepth: 3
    returnType: "io.netty.handler.codec.DefaultHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int)"
    - "[io.netty.handler.codec.DefaultHeaders].addImpl(io.netty.handler.codec.Headers)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:1264,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1266,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].addImpl(io.netty.handler.codec.Headers)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.DefaultAddressResolverGroup].<init>()"
    functionSourceFile: "io.netty.resolver.DefaultAddressResolverGroup"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.AddressResolverGroup].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.DefaultAddressResolverGroup:30,1"
      Dst: "[io.netty.resolver.AddressResolverGroup].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.DefaultAddressResolverGroup].newResolver(io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.resolver.DefaultAddressResolverGroup"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 1
    returnType: "io.netty.resolver.AddressResolver<InetSocketAddress>"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.DefaultNameResolver].<init>(io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.resolver.InetNameResolver].asAddressResolver()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.DefaultAddressResolverGroup:34,1"
      Dst: "[io.netty.resolver.DefaultNameResolver].<init>(io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.resolver.DefaultAddressResolverGroup:34,1"
      Dst: "[io.netty.resolver.InetNameResolver].asAddressResolver()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.DefaultNameResolver].<init>(io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.resolver.DefaultNameResolver"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.InetNameResolver].<init>(io.netty.util.concurrent.EventExecutor)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.DefaultNameResolver:35,1"
      Dst: "[io.netty.resolver.InetNameResolver].<init>(io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException].request()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompHeaders].<init>()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompHeaders"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompHeaders:33,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompHeaders].getAsString(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils].getAsString(io.netty.handler.codec.Headers,java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompHeaders:38,1"
      Dst: "[io.netty.handler.codec.HeadersUtils].getAsString(io.netty.handler.codec.Headers,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompHeaders].getAllAsString(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.List<String>"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils].getAllAsString(io.netty.handler.codec.Headers,java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompHeaders:43,1"
      Dst: "[io.netty.handler.codec.HeadersUtils].getAllAsString(io.netty.handler.codec.Headers,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompHeaders].iteratorAsString()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils].iteratorAsString(java.lang.Iterable)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompHeaders:48,1"
      Dst: "[io.netty.handler.codec.HeadersUtils].iteratorAsString(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompHeaders].contains(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompHeaders:53,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object,java.lang.Object,io.netty.util.HashingStrategy)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.DefaultStompHeaders:58"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.DefaultStompHeaders:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompHeaders:58,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object,java.lang.Object,io.netty.util.HashingStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompHeaders].copy()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompHeaders"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 67
    functionDepth: 6
    returnType: "io.netty.handler.codec.stomp.DefaultStompHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompHeaders].<init>()"
    - "[io.netty.handler.codec.DefaultHeaders].addImpl(io.netty.handler.codec.Headers)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompHeaders:64,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompHeaders].<init>()"
    - Src: "io.netty.handler.codec.stomp.DefaultStompHeaders:65,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].addImpl(io.netty.handler.codec.Headers)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.HashingStrategy"
    - "io.netty.handler.codec.ValueConverter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:104,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompHeaders].contains(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompHeaders].contains(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompHeaders:30,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompHeaders].contains(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:106,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers:118"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:118"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:118,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].<init>(boolean,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 162
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
    functionUses: 1
    ICount: 18
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:156"
        BranchSideFuncs:
        - "<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:155"
        BranchSideFuncs:
        - "<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:156"
        BranchSideFuncs:
        - "<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:155"
        BranchSideFuncs:
        - "<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:156,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int,io.netty.handler.codec.DefaultHeaders$ValueValidator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].validateName(io.netty.handler.codec.DefaultHeaders$NameValidator,boolean,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 173
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.DefaultHeaders$NameValidator"
    - "boolean"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].validateName(io.netty.handler.codec.DefaultHeaders$NameValidator,boolean,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].hasPseudoHeaderFormat(java.lang.CharSequence)"
    - "[io.netty.handler.codec.DefaultHeaders].nameValidator()"
    - "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    functionUses: 1
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers:166"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:172"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:171"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers:166"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:172"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:171"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers:166"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:172"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:171"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:172"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "throwException(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:171"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:165,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].validateName(io.netty.handler.codec.DefaultHeaders$NameValidator,boolean,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:166,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].nameValidator()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:166,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].hasPseudoHeaderFormat(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:167,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:168,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:168,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.DefaultHeaders].nameValidator()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 1023
    functionLinenumberEnd: 1025
    functionDepth: 0
    returnType: "io.netty.handler.codec.DefaultHeaders$NameValidator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].hasPseudoHeaderFormat(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 100
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].byteAt(int)"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.lang.String].length()"
    - "[io.netty.util.AsciiString:io.netty.util.internal.AppendableCharSequence:java.lang.AbstractStringBuilder:java.lang.StringBuffer:java.lang.StringBuilder:java.nio.CharBuffer].length()"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 4
    ICount: 22
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:99"
        BranchSideFuncs:
        - "byteAt(int)"
      - BranchSide: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:98"
        BranchSideFuncs:
        - "length()"
        - "charAt(int)"
    - Branch String: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:97"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:95"
        BranchSideFuncs:
        - "byteAt(int)"
    - Branch String: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:97"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:95"
        BranchSideFuncs:
        - "byteAt(int)"
    - Branch String: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:99"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:98"
        BranchSideFuncs:
        - "length()"
        - "charAt(int)"
    - Branch String: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:99"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:98"
        BranchSideFuncs:
        - "length()"
        - "charAt(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:97,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:97,1"
      Dst: "[io.netty.util.AsciiString].byteAt(int)"
    - Src: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:99,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:99,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.AsciiString].byteAt(int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 325
    functionLinenumberEnd: 334
    functionDepth: 2
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    functionUses: 6
    ICount: 29
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:326"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:327"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.util.AsciiString:326"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
    - Branch String: "io.netty.util.AsciiString:326"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:330"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.util.AsciiString:329"
        BranchSideFuncs:
        - "hasUnsafe()"
    - Branch String: "io.netty.util.AsciiString:330"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:333"
        BranchSideFuncs:
        - "getByte(byte[],int)"
      - BranchSide: "io.netty.util.AsciiString:332"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:327,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.AsciiString:327,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.AsciiString:327,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.AsciiString:327,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.AsciiString:327,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.util.AsciiString:330,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.util.AsciiString:331,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 574
    functionLinenumberEnd: 576
    functionDepth: 1
    returnType: "byte"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getByte(byte[],int)"
    functionUses: 38
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:575,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getByte(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].getByte(byte[],int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 647
    functionLinenumberEnd: 649
    functionDepth: 0
    returnType: "byte"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getByte(java.lang.Object,long)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:648,1"
      Dst: "[sun.misc.Unsafe].getByte(java.lang.Object,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].validateValue(io.netty.handler.codec.DefaultHeaders$ValueValidator,java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 179
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.DefaultHeaders$ValueValidator"
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].validateValue(io.netty.handler.codec.DefaultHeaders$ValueValidator,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:177,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].validateValue(io.netty.handler.codec.DefaultHeaders$ValueValidator,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].clear()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 184
    functionDepth: 2
    returnType: "io.netty.handler.codec.http2.Http2Headers"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].clear()"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:183,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].equals(io.netty.handler.codec.Headers,io.netty.util.HashingStrategy)"
    functionUses: 10
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:187"
        BranchSideFuncs:
        - "equals(io.netty.handler.codec.Headers,io.netty.util.HashingStrategy)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:187"
        BranchSideFuncs:
        - "equals(io.netty.handler.codec.Headers,io.netty.util.HashingStrategy)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:188,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].equals(io.netty.handler.codec.Headers,io.netty.util.HashingStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].hashCode(io.netty.util.HashingStrategy)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:193,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].hashCode(io.netty.util.HashingStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].method(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionDepth: 5
    returnType: "io.netty.handler.codec.http2.Http2Headers"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:198,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:198,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "io.netty.util.AsciiString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 22
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].scheme(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionDepth: 5
    returnType: "io.netty.handler.codec.http2.Http2Headers"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:204,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:204,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].authority(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionDepth: 5
    returnType: "io.netty.handler.codec.http2.Http2Headers"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:210,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:210,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].path(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 218
    functionDepth: 5
    returnType: "io.netty.handler.codec.http2.Http2Headers"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:216,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:216,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].status(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 224
    functionDepth: 5
    returnType: "io.netty.handler.codec.http2.Http2Headers"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:222,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:222,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].method()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 227
    functionLinenumberEnd: 229
    functionDepth: 2
    returnType: "java.lang.CharSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:228,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:228,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].scheme()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.CharSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    - "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:233,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:233,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].authority()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 237
    functionLinenumberEnd: 239
    functionDepth: 2
    returnType: "java.lang.CharSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:238,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:238,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].path()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 242
    functionLinenumberEnd: 244
    functionDepth: 2
    returnType: "java.lang.CharSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:243,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:243,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].status()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 249
    functionDepth: 2
    returnType: "java.lang.CharSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    functionUses: 6
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:248,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:248,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].contains(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:253,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object,java.lang.Object,io.netty.util.HashingStrategy)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers:258"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers:257"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:258,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object,java.lang.Object,io.netty.util.HashingStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].newHeaderEntry(int,java.lang.CharSequence,java.lang.CharSequence,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 263
    functionLinenumberEnd: 265
    functionDepth: 5
    returnType: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    argCount: 4
    argTypes:
    - "int"
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    - "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry].<init>(io.netty.handler.codec.http2.DefaultHttp2Headers,int,java.lang.CharSequence,java.lang.CharSequence,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:264,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry].<init>(io.netty.handler.codec.http2.DefaultHttp2Headers,int,java.lang.CharSequence,java.lang.CharSequence,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry].<init>(io.netty.handler.codec.http2.DefaultHttp2Headers,int,java.lang.CharSequence,java.lang.CharSequence,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry"
    linkageType: ""
    functionLinenumber: 268
    functionLinenumberEnd: 287
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Headers"
    - "int"
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    - "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].<init>(int,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].hasPseudoHeaderFormat(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$100(io.netty.handler.codec.http2.DefaultHttp2Headers)"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].before()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$200(io.netty.handler.codec.http2.DefaultHttp2Headers)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$300(io.netty.handler.codec.http2.DefaultHttp2Headers)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$400(io.netty.handler.codec.http2.DefaultHttp2Headers)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$102(io.netty.handler.codec.http2.DefaultHttp2Headers,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].pointNeighborsToThis()"
    functionUses: 1
    ICount: 29
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:275"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:279"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:278"
        BranchSideFuncs:
        - "access$300(io.netty.handler.codec.http2.DefaultHttp2Headers)"
        - "before()"
        - "access$400(io.netty.handler.codec.http2.DefaultHttp2Headers)"
        - "access$200(io.netty.handler.codec.http2.DefaultHttp2Headers)"
        - "access$100(io.netty.handler.codec.http2.DefaultHttp2Headers)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:281"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:285"
        BranchSideFuncs:
        - "access$102(io.netty.handler.codec.http2.DefaultHttp2Headers,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:284"
        BranchSideFuncs:
        - "pointNeighborsToThis()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:270,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].<init>(int,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:275,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].hasPseudoHeaderFormat(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:276,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$100(io.netty.handler.codec.http2.DefaultHttp2Headers)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:277,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].before()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:279,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$200(io.netty.handler.codec.http2.DefaultHttp2Headers)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:280,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$300(io.netty.handler.codec.http2.DefaultHttp2Headers)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:281,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$400(io.netty.handler.codec.http2.DefaultHttp2Headers)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:282,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$102(io.netty.handler.codec.http2.DefaultHttp2Headers,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:285,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].pointNeighborsToThis()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].<init>(int,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    linkageType: ""
    functionLinenumber: 1359
    functionLinenumberEnd: 1364
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1360,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$100(io.netty.handler.codec.http2.DefaultHttp2Headers)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Headers"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].before()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    linkageType: ""
    functionLinenumber: 1387
    functionLinenumberEnd: 1389
    functionDepth: 0
    returnType: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$200(io.netty.handler.codec.http2.DefaultHttp2Headers)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Headers"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$300(io.netty.handler.codec.http2.DefaultHttp2Headers)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Headers"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$400(io.netty.handler.codec.http2.DefaultHttp2Headers)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Headers"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$102(io.netty.handler.codec.http2.DefaultHttp2Headers,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Headers"
    - "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].newHeaderEntry(int,java.lang.Object,java.lang.Object,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 6
    returnType: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    argCount: 4
    argTypes:
    - "int"
    - "java.lang.Object"
    - "java.lang.Object"
    - "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].newHeaderEntry(int,java.lang.CharSequence,java.lang.CharSequence,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:33,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers].newHeaderEntry(int,java.lang.CharSequence,java.lang.CharSequence,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].validateValue(io.netty.handler.codec.DefaultHeaders$ValueValidator,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.DefaultHeaders$ValueValidator"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].validateValue(io.netty.handler.codec.DefaultHeaders$ValueValidator,java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:33,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers].validateValue(io.netty.handler.codec.DefaultHeaders$ValueValidator,java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].validateName(io.netty.handler.codec.DefaultHeaders$NameValidator,boolean,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.DefaultHeaders$NameValidator"
    - "boolean"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].validateName(io.netty.handler.codec.DefaultHeaders$NameValidator,boolean,java.lang.CharSequence)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:33,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers].validateName(io.netty.handler.codec.DefaultHeaders$NameValidator,boolean,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].contains(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].contains(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:33,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers].contains(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].valueIterator(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.util.Iterator"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].valueIterator(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers:33,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].valueIterator(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$000()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "io.netty.util.ByteProcessor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksInitResponseDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksInitResponseDecoder$State"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksInitResponseDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksInitResponseDecoder$State:58,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksInitResponseDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksInitResponseDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksInitResponseDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksInitResponseDecoder$State:58,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksInitResponseDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksInitResponseDecoder$State"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksInitResponseDecoder$State:59,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:116,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jpountz.lz4.LZ4Factory].fastestInstance()"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].<init>(int)"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].<init>(net.jpountz.lz4.LZ4Factory,boolean,int,java.util.zip.Checksum)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:128,1"
      Dst: "[net.jpountz.lz4.LZ4Factory].fastestInstance()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:128,1"
      Dst: "[io.netty.handler.codec.compression.Lz4XXHash32].<init>(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:128,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].<init>(net.jpountz.lz4.LZ4Factory,boolean,int,java.util.zip.Checksum)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].<init>(net.jpountz.lz4.LZ4Factory,boolean,int,java.util.zip.Checksum)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "net.jpountz.lz4.LZ4Factory"
    - "boolean"
    - "int"
    - "java.util.zip.Checksum"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].<init>(net.jpountz.lz4.LZ4Factory,boolean,int,java.util.zip.Checksum,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:144,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].<init>(net.jpountz.lz4.LZ4Factory,boolean,int,java.util.zip.Checksum,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].<init>(net.jpountz.lz4.LZ4Factory,boolean,int,java.util.zip.Checksum,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "net.jpountz.lz4.LZ4Factory"
    - "boolean"
    - "int"
    - "java.util.zip.Checksum"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[net.jpountz.lz4.LZ4Factory].highCompressor()"
    - "[net.jpountz.lz4.LZ4Factory].fastCompressor()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum].wrapChecksum(java.util.zip.Checksum)"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].compressionLevel(int)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:165"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:161"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:161,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:162,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:165,1"
      Dst: "[net.jpountz.lz4.LZ4Factory].highCompressor()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:165,1"
      Dst: "[net.jpountz.lz4.LZ4Factory].fastCompressor()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:166,1"
      Dst: "[io.netty.handler.codec.compression.ByteBufChecksum].wrapChecksum(java.util.zip.Checksum)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:168,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].compressionLevel(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:170,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].compressionLevel(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Integer].numberOfLeadingZeros(int)"
    - "[java.lang.Math].max(int,int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:179"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:178"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:182"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:181"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:180,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:179,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:179,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:182,1"
      Dst: "[java.lang.Integer].numberOfLeadingZeros(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:183,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean,boolean)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:189,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 225
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int,int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int,int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[net.jpountz.lz4.LZ4Compressor].maxCompressedLength(int)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int,int)"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int,int)"
    functionUses: 2
    ICount: 48
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:198"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:202"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:201"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:202"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:212"
        BranchSideFuncs:
        - "min(int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:211"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:212"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:213"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:212"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:212"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:217"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:216"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:217"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:221"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:220"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:217"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:221"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:220"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:221"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:224"
        BranchSideFuncs:
        - "ioBuffer(int,int)"
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:223"
        BranchSideFuncs:
        - "heapBuffer(int,int)"
        - "alloc()"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:195,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:199,1"
      Dst: "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:203,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:206,1"
      Dst: "[net.jpountz.lz4.LZ4Compressor].maxCompressedLength(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:214,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:213,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:222,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:222,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int,int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:224,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: 236
    functionLinenumberEnd: 257
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isWritable(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].isWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].isWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].isWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].isWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].isWritable(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].isWritable(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isWritable()"
    - "[io.netty.buffer.ReadOnlyByteBuf].isWritable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isWritable()"
    - "[io.netty.buffer.WrappedByteBuf].isWritable()"
    - "[io.netty.buffer.SwappedByteBuf].isWritable()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isWritable()"
    - "[io.netty.buffer.AbstractByteBuf].isWritable()"
    - "[io.netty.buffer.EmptyByteBuf].isWritable()"
    - "[io.netty.buffer.FixedCompositeByteBuf].isWritable()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].flushBufferedData(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].isWritable(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].isWritable()"
    functionUses: 1
    ICount: 25
    EdgeCount: 57
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:237"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:246"
        BranchSideFuncs:
        - "isWritable(int)"
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:245"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:238"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:241"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:248"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:256"
        BranchSideFuncs:
        - "readBytes(io.netty.buffer.ByteBuf,int)"
        - "min(int,int)"
        - "isWritable()"
        - "writableBytes()"
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:255"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:252"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:255"
        BranchSideFuncs:
        - "flushBufferedData(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:254"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:238,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:238,1"
      Dst: "[io.netty.buffer.ByteBuf].isWritable(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:240,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:242,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:249,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:249,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:250,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:252,1"
      Dst: "[io.netty.buffer.ByteBuf].isWritable()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:253,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].flushBufferedData(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].flushBufferedData(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: 258
    functionLinenumberEnd: 297
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].reset()"
    - "[io.netty.handler.codec.compression.Crc32c].reset()"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].reset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].update(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.compression.ByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].getValue()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].getValue()"
    - "[io.netty.handler.codec.compression.Crc32c].getValue()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[net.jpountz.lz4.LZ4Compressor].compress(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.compression.CompressionException].<init>(java.lang.Throwable)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setLong(int,long)"
    - "[io.netty.buffer.DuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf].setLong(int,long)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.EmptyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setByte(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setIntLE(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].clear()"
    - "[io.netty.buffer.WrappedByteBuf].clear()"
    - "[io.netty.buffer.SwappedByteBuf].clear()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].clear()"
    - "[io.netty.buffer.EmptyByteBuf].clear()"
    - "[io.netty.buffer.CompositeByteBuf].clear()"
    - "[io.netty.buffer.AbstractByteBuf].clear()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[java.util.zip.Checksum].reset()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[java.util.zip.Checksum].getValue()"
    - "[net.jpountz.lz4.LZ4Compressor].maxCompressedLength(int)"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[java.nio.Buffer].position()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].clear()"
    functionUses: 3
    ICount: 68
    EdgeCount: 218
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:260"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:263"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:262"
        BranchSideFuncs:
        - "getValue()"
        - "ensureWritable(int)"
        - "writerIndex()"
        - "update(io.netty.buffer.ByteBuf,int,int)"
        - "writableBytes()"
        - "internalNioBuffer(int,int)"
        - "<init>(java.lang.Throwable)"
        - "reset()"
        - "compress(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:281"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:286"
        BranchSideFuncs:
        - "setBytes(int,io.netty.buffer.ByteBuf,int,int)"
        - "readerIndex()"
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:285"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:259,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:263,1"
      Dst: "[java.util.zip.Checksum].reset()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:264,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:264,1"
      Dst: "[io.netty.handler.codec.compression.ByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:265,1"
      Dst: "[java.util.zip.Checksum].getValue()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:267,1"
      Dst: "[net.jpountz.lz4.LZ4Compressor].maxCompressedLength(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:268,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:269,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:272,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:272,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:273,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:275,1"
      Dst: "[net.jpountz.lz4.LZ4Compressor].compress(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:278,1"
      Dst: "[io.netty.handler.codec.compression.CompressionException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:284,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:289,1"
      Dst: "[io.netty.buffer.ByteBuf].setLong(int,long)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:290,1"
      Dst: "[io.netty.buffer.ByteBuf].setByte(int,int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:291,1"
      Dst: "[io.netty.buffer.ByteBuf].setIntLE(int,int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:294,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:295,1"
      Dst: "[io.netty.buffer.ByteBuf].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].flush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: 299
    functionLinenumberEnd: 307
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean,boolean)"
    - "[io.netty.handler.codec.MessageToByteEncoder].isPreferDirect()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].flushBufferedData(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 2
    ICount: 14
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:300"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:305"
        BranchSideFuncs:
        - "flushBufferedData(io.netty.buffer.ByteBuf)"
        - "allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean,boolean)"
        - "write(java.lang.Object)"
        - "isPreferDirect()"
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:304"
        BranchSideFuncs:
        - "flush()"
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:300"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:305"
        BranchSideFuncs:
        - "flushBufferedData(io.netty.buffer.ByteBuf)"
        - "allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean,boolean)"
        - "write(java.lang.Object)"
        - "isPreferDirect()"
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:304"
        BranchSideFuncs:
        - "flush()"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:300,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:301,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].isPreferDirect()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:301,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean,boolean)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:302,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].flushBufferedData(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:303,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:305,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: 308
    functionLinenumberEnd: 330
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].flushBufferedData(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.ReadOnlyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setLong(int,long)"
    - "[io.netty.buffer.DuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf].setLong(int,long)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.EmptyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setByte(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setInt(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[net.jpountz.lz4.LZ4Compressor].maxCompressedLength(int)"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 35
    EdgeCount: 152
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:309"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:313"
        BranchSideFuncs:
        - "setSuccess()"
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:312"
        BranchSideFuncs:
        - "flushBufferedData(io.netty.buffer.ByteBuf)"
        - "heapBuffer(int)"
        - "setLong(int,long)"
        - "writerIndex(int)"
        - "writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
        - "ensureWritable(int)"
        - "writerIndex()"
        - "alloc()"
        - "setInt(int,int)"
        - "readableBytes()"
        - "setByte(int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:310,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:315,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:316,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:316,1"
      Dst: "[net.jpountz.lz4.LZ4Compressor].maxCompressedLength(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:315,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:317,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].flushBufferedData(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:319,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:320,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:321,1"
      Dst: "[io.netty.buffer.ByteBuf].setLong(int,long)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:322,1"
      Dst: "[io.netty.buffer.ByteBuf].setByte(int,int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:323,1"
      Dst: "[io.netty.buffer.ByteBuf].setInt(int,int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:327,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:329,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].isClosed()"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].close()"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].ctx()"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].close(io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:345,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].ctx()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:345,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:345,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].ctx()"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: 391
    functionLinenumberEnd: 397
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:393"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:396"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:395"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:394,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].close(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].ctx()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].<init>(io.netty.handler.codec.compression.Lz4FrameEncoder,io.netty.channel.ChannelPromise)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:356"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:359"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:358"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:354,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].ctx()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:355,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:356,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:357,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:359,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].<init>(io.netty.handler.codec.compression.Lz4FrameEncoder,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:359,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].<init>(io.netty.handler.codec.compression.Lz4FrameEncoder,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.compression.Lz4FrameEncoder"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder$1:359,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: 371
    functionLinenumberEnd: 390
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$2].<init>(io.netty.handler.codec.compression.Lz4FrameEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].<init>(io.netty.handler.codec.compression.Lz4FrameEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    functionUses: 2
    ICount: 16
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:380"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:388"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:372,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:372,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:373,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder$2].<init>(io.netty.handler.codec.compression.Lz4FrameEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:373,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:380,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:382,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:382,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].<init>(io.netty.handler.codec.compression.Lz4FrameEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:382,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder$2].<init>(io.netty.handler.codec.compression.Lz4FrameEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder$2"
    linkageType: ""
    functionLinenumber: 372
    functionLinenumberEnd: 374
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.compression.Lz4FrameEncoder"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder$2:373,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].<init>(io.netty.handler.codec.compression.Lz4FrameEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder$3"
    linkageType: ""
    functionLinenumber: 381
    functionLinenumberEnd: 383
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.compression.Lz4FrameEncoder"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder$3:382,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: 400
    functionLinenumberEnd: 406
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].clear()"
    - "[io.netty.buffer.WrappedByteBuf].clear()"
    - "[io.netty.buffer.SwappedByteBuf].clear()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].clear()"
    - "[io.netty.buffer.EmptyByteBuf].clear()"
    - "[io.netty.buffer.CompositeByteBuf].clear()"
    - "[io.netty.buffer.AbstractByteBuf].clear()"
    - "[io.netty.buffer.ByteBuf].clear()"
    functionUses: 5
    ICount: 10
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:403,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:404,1"
      Dst: "[io.netty.buffer.ByteBuf].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: 408
    functionLinenumberEnd: 415
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerAdapter].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    functionUses: 4
    ICount: 9
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameEncoder:410"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:414"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameEncoder:413"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:409,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:411,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].getBackingBuffer()"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:70,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,java.lang.Object,boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:70,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].access$000(io.netty.handler.codec.compression.Lz4FrameEncoder)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 1
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.compression.Lz4FrameEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].ctx()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:70,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].ctx()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder].access$100(io.netty.handler.codec.compression.Lz4FrameEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.compression.Lz4FrameEncoder"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder:70,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].<init>(io.netty.handler.traffic.GlobalChannelTrafficShapingHandler,io.netty.handler.traffic.TrafficCounter)"
    functionSourceFile: "io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler"
    - "io.netty.handler.traffic.TrafficCounter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask:65,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    functionSourceFile: "io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 82
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.TrafficCounter].milliSecondFromNano()"
    - "[io.netty.handler.traffic.TrafficCounter].resetAccounting(long)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.util.concurrent.ConcurrentHashMap].values()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].doAccounting(io.netty.handler.traffic.TrafficCounter)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 49
    ICount: 23
    EdgeCount: 135
    BranchProfiles:
    - Branch String: "io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask:75"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask:74"
        BranchSideFuncs:
        - "values()"
        - "milliSecondFromNano()"
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask:80"
        BranchSideFuncs:
        - "resetAccounting(long)"
        - "values()"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask:79"
        BranchSideFuncs:
        - "doAccounting(io.netty.handler.traffic.TrafficCounter)"
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask:75,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].milliSecondFromNano()"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask:76,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].resetAccounting(long)"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask:77,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask:77,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask:77,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask:77,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask:80,1"
      Dst: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].doAccounting(io.netty.handler.traffic.TrafficCounter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].doAccounting(io.netty.handler.traffic.TrafficCounter)"
    functionSourceFile: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: 343
    functionLinenumberEnd: 347
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.traffic.TrafficCounter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].computeDeviationCumulativeBytes()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].doAccounting(io.netty.handler.traffic.TrafficCounter)"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:344,1"
      Dst: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].computeDeviationCumulativeBytes()"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:345,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].doAccounting(io.netty.handler.traffic.TrafficCounter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].computeDeviationCumulativeBytes()"
    functionSourceFile: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: 314
    functionLinenumberEnd: 341
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.util.concurrent.ConcurrentHashMap].values()"
    - "[io.netty.handler.traffic.TrafficCounter].cumulativeWrittenBytes()"
    - "[io.netty.handler.traffic.TrafficCounter].cumulativeReadBytes()"
    - "[java.util.concurrent.ConcurrentHashMap].size()"
    - "[java.util.concurrent.atomic.AtomicLong].set(long)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].size()"
    functionUses: 1
    ICount: 65
    EdgeCount: 171
    BranchProfiles:
    - Branch String: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:319"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:335"
        BranchSideFuncs:
        - "values()"
        - "hasNext()"
        - "iterator()"
        - "cumulativeWrittenBytes()"
        - "next()"
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:334"
        BranchSideFuncs:
        - "size()"
    - Branch String: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:321"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:324"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:323"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:324"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:327"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:326"
        BranchSideFuncs:
        - "cumulativeReadBytes()"
    - Branch String: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:328"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:331"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:330"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:331"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:334"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:333"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:335"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:-1"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:336"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:335"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:334"
        BranchSideFuncs:
        - "size()"
    - Branch String: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:336"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:335"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:334"
        BranchSideFuncs:
        - "size()"
    - Branch String: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:337"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:336"
        BranchSideFuncs:
        - "set(long)"
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:335"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:337"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:336"
        BranchSideFuncs:
        - "set(long)"
      - BranchSide: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:335"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:319,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:319,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:319,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:319,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:320,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].cumulativeWrittenBytes()"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:327,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].cumulativeReadBytes()"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:335,1"
      Dst: "[java.util.Map].size()"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler:338,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].set(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 23
    CyclomaticComplexity: 11
  - functionName: "[io.netty.handler.traffic.TrafficCounter].cumulativeWrittenBytes()"
    functionSourceFile: "io.netty.handler.traffic.TrafficCounter"
    linkageType: ""
    functionLinenumber: 409
    functionLinenumberEnd: 411
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].get()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.TrafficCounter:410,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.TrafficCounter].cumulativeReadBytes()"
    functionSourceFile: "io.netty.handler.traffic.TrafficCounter"
    linkageType: ""
    functionLinenumber: 416
    functionLinenumberEnd: 418
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].get()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.TrafficCounter:417,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder].<init>()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder:57,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder:55,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder].addAlgorithm(io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm,io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm"
    - "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig].<init>(io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm,io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode,io.netty.handler.ssl.OpenSslCertificateCompressionConfig$1)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder:72,1"
      Dst: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig].<init>(io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm,io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode,io.netty.handler.ssl.OpenSslCertificateCompressionConfig$1)"
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder:72,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig].<init>(io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm,io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode,io.netty.handler.ssl.OpenSslCertificateCompressionConfig$1)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm"
    - "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode"
    - "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig].<init>(io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm,io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig:90,1"
      Dst: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig].<init>(io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm,io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig].<init>(io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm,io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm"
    - "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig:94,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig:95,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder].build()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].<init>(io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig[],io.netty.handler.ssl.OpenSslCertificateCompressionConfig$1)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder:83,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder:83,1"
      Dst: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].<init>(io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig[],io.netty.handler.ssl.OpenSslCertificateCompressionConfig$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].<init>(io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig[],io.netty.handler.ssl.OpenSslCertificateCompressionConfig$1)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig[]"
    - "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].<init>(io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig:29,1"
      Dst: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].<init>(io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].<init>(io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig:33,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig:34,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig:34,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder].<init>(io.netty.handler.ssl.OpenSslCertificateCompressionConfig$1)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder:54,1"
      Dst: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.string.LineEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.string.LineEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.string.LineEncoder].<init>(io.netty.handler.codec.string.LineSeparator,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.string.LineEncoder:63,1"
      Dst: "[io.netty.handler.codec.string.LineEncoder].<init>(io.netty.handler.codec.string.LineSeparator,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.string.LineEncoder].<init>(io.netty.handler.codec.string.LineSeparator)"
    functionSourceFile: "io.netty.handler.codec.string.LineEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.string.LineSeparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.string.LineEncoder].<init>(io.netty.handler.codec.string.LineSeparator,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.string.LineEncoder:70,1"
      Dst: "[io.netty.handler.codec.string.LineEncoder].<init>(io.netty.handler.codec.string.LineSeparator,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.string.LineEncoder].<init>(java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.string.LineEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.string.LineEncoder].<init>(io.netty.handler.codec.string.LineSeparator,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.string.LineEncoder:77,1"
      Dst: "[io.netty.handler.codec.string.LineEncoder].<init>(io.netty.handler.codec.string.LineSeparator,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.string.LineEncoder].<init>(io.netty.handler.codec.string.LineSeparator,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.string.LineEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.string.LineSeparator"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.string.LineSeparator].value()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.string.LineEncoder:83,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    - Src: "io.netty.handler.codec.string.LineEncoder:84,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.string.LineEncoder:85,1"
      Dst: "[io.netty.handler.codec.string.LineSeparator].value()"
    - Src: "io.netty.handler.codec.string.LineEncoder:85,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.string.LineEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.CharSequence,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.string.LineEncoder"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 94
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.CharSequence"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufUtil].encodeString(io.netty.buffer.ByteBufAllocator,java.nio.CharBuffer,java.nio.charset.Charset,int)"
    - "[java.nio.Buffer:java.nio.CharBuffer].wrap(java.lang.CharSequence)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[java.nio.CharBuffer].wrap(java.lang.CharSequence)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.string.LineEncoder:90,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.string.LineEncoder:90,1"
      Dst: "[java.nio.CharBuffer].wrap(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.string.LineEncoder:90,1"
      Dst: "[io.netty.buffer.ByteBufUtil].encodeString(io.netty.buffer.ByteBufAllocator,java.nio.CharBuffer,java.nio.charset.Charset,int)"
    - Src: "io.netty.handler.codec.string.LineEncoder:91,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - Src: "io.netty.handler.codec.string.LineEncoder:92,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].encodeString(io.netty.buffer.ByteBufAllocator,java.nio.CharBuffer,java.nio.charset.Charset,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1218
    functionLinenumberEnd: 1220
    functionDepth: 6
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "java.nio.CharBuffer"
    - "java.nio.charset.Charset"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].encodeString0(io.netty.buffer.ByteBufAllocator,boolean,java.nio.CharBuffer,java.nio.charset.Charset,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1219,1"
      Dst: "[io.netty.buffer.ByteBufUtil].encodeString0(io.netty.buffer.ByteBufAllocator,boolean,java.nio.CharBuffer,java.nio.charset.Charset,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.string.LineEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.string.LineEncoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.string.LineEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.CharSequence,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.string.LineEncoder:53,1"
      Dst: "[io.netty.handler.codec.string.LineEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.CharSequence,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1:37,1"
      Dst: "[java.lang.Thread].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook].runHook()"
    functionUses: 52
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1:41,1"
      Dst: "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook].runHook()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook].runHook()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.HashSet:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.TreeSet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].delete()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 11
    EdgeCount: 110
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook:81"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "delete()"
        - "next()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook:78,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook:78,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook:78,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook:79,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook:79,1"
      Dst: "[java.io.File].delete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:34,1"
      Dst: "[io.netty.buffer.UnpooledHeapByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionDepth: 4
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getByte(int)"
    functionUses: 136
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:44,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:45,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getByte(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 3
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getByte(byte[],int)"
    functionUses: 18
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:50,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getByte(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getByte(byte[],int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 232
    functionDepth: 2
    returnType: "byte"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:231,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShort(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionDepth: 4
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getShort(int)"
    functionUses: 20
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:55,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:56,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getShort(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 3
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getShort(byte[],int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:61,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getShort(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getShort(byte[],int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 234
    functionLinenumberEnd: 241
    functionDepth: 2
    returnType: "short"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getShort(byte[],int)"
    - "[java.lang.Short].reverseBytes(short)"
    - "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    functionUses: 2
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:235"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:239"
        BranchSideFuncs:
        - "getShort(byte[],int)"
        - "reverseBytes(short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:238"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:237"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:235"
        BranchSideFuncs:
        - "getShort(byte[],int)"
        - "reverseBytes(short)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:236,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getShort(byte[],int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:237,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:239,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].getShort(byte[],int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 582
    functionLinenumberEnd: 584
    functionDepth: 1
    returnType: "short"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getShort(byte[],int)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:583,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getShort(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].getShort(byte[],int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 655
    functionLinenumberEnd: 657
    functionDepth: 0
    returnType: "short"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getShort(java.lang.Object,long)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:656,1"
      Dst: "[sun.misc.Unsafe].getShort(java.lang.Object,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShortLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionDepth: 4
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getShortLE(int)"
    functionUses: 13
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:66,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:67,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getShortLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 3
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getShortLE(byte[],int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:72,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getShortLE(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getShortLE(byte[],int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 243
    functionLinenumberEnd: 250
    functionDepth: 2
    returnType: "short"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getShort(byte[],int)"
    - "[java.lang.Short].reverseBytes(short)"
    - "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    functionUses: 2
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:244"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:248"
        BranchSideFuncs:
        - "getShort(byte[],int)"
        - "reverseBytes(short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:247"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:246"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:244"
        BranchSideFuncs:
        - "getShort(byte[],int)"
        - "reverseBytes(short)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:245,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getShort(byte[],int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:246,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:248,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getUnsignedMedium(int)"
    functionUses: 15
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:77,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:78,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getUnsignedMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getUnsignedMedium(byte[],int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:83,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getUnsignedMedium(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getUnsignedMedium(byte[],int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 252
    functionLinenumberEnd: 262
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    - "[io.netty.util.internal.PlatformDependent].getShort(byte[],int)"
    - "[java.lang.Short].reverseBytes(short)"
    functionUses: 2
    ICount: 41
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:253"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:259"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:258"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:254"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:256"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:255"
        BranchSideFuncs:
        - "getShort(byte[],int)"
        - "reverseBytes(short)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:254,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:255,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getShort(byte[],int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:256,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getUnsignedMediumLE(int)"
    functionUses: 14
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:88,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:89,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getUnsignedMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getUnsignedMediumLE(byte[],int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:94,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getUnsignedMediumLE(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getUnsignedMediumLE(byte[],int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 264
    functionLinenumberEnd: 273
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    - "[io.netty.util.internal.PlatformDependent].getShort(byte[],int)"
    - "[java.lang.Short].reverseBytes(short)"
    functionUses: 2
    ICount: 41
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:265"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:270"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:269"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:266"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:268"
        BranchSideFuncs:
        - "reverseBytes(short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:267"
        BranchSideFuncs:
        - "getShort(byte[],int)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:266,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:267,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getShort(byte[],int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:267,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getInt(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getInt(int)"
    functionUses: 25
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:99,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:100,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getInt(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getInt(byte[],int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:105,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getInt(byte[],int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 275
    functionLinenumberEnd: 284
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getInt(byte[],int)"
    - "[java.lang.Integer].reverseBytes(int)"
    - "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    functionUses: 2
    ICount: 35
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:276"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:280"
        BranchSideFuncs:
        - "reverseBytes(int)"
        - "getInt(byte[],int)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:279"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:278"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:276"
        BranchSideFuncs:
        - "reverseBytes(int)"
        - "getInt(byte[],int)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:277,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getInt(byte[],int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:278,1"
      Dst: "[java.lang.Integer].reverseBytes(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:280,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].getInt(byte[],int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 586
    functionLinenumberEnd: 588
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getInt(byte[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:587,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].getInt(byte[],int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 659
    functionLinenumberEnd: 661
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getInt(java.lang.Object,long)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:660,1"
      Dst: "[sun.misc.Unsafe].getInt(java.lang.Object,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getIntLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getIntLE(int)"
    functionUses: 14
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:110,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:111,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getIntLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getIntLE(byte[],int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:116,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getIntLE(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getIntLE(byte[],int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 295
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getInt(byte[],int)"
    - "[java.lang.Integer].reverseBytes(int)"
    - "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    functionUses: 2
    ICount: 35
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:287"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:291"
        BranchSideFuncs:
        - "reverseBytes(int)"
        - "getInt(byte[],int)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:290"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:289"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:287"
        BranchSideFuncs:
        - "reverseBytes(int)"
        - "getInt(byte[],int)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:288,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getInt(byte[],int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:289,1"
      Dst: "[java.lang.Integer].reverseBytes(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:291,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLong(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionDepth: 4
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getLong(int)"
    functionUses: 20
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:121,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:122,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getLong(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionDepth: 3
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getLong(byte[],int)"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:127,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getLong(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getLong(byte[],int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 297
    functionLinenumberEnd: 310
    functionDepth: 2
    returnType: "long"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getLong(byte[],int)"
    - "[java.lang.Long].reverseBytes(long)"
    - "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    functionUses: 2
    ICount: 56
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:298"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:302"
        BranchSideFuncs:
        - "reverseBytes(long)"
        - "getLong(byte[],int)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:301"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:300"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:298"
        BranchSideFuncs:
        - "reverseBytes(long)"
        - "getLong(byte[],int)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:299,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getLong(byte[],int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:300,1"
      Dst: "[java.lang.Long].reverseBytes(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:302,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].getLong(byte[],int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 594
    functionLinenumberEnd: 596
    functionDepth: 1
    returnType: "long"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getLong(byte[],int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:595,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getLong(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].getLong(byte[],int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 675
    functionLinenumberEnd: 677
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getLong(java.lang.Object,long)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:676,1"
      Dst: "[sun.misc.Unsafe].getLong(java.lang.Object,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLongLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionDepth: 4
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getLongLE(int)"
    functionUses: 13
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:132,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:133,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getLongLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getLongLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionDepth: 3
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getLongLE(byte[],int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:138,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getLongLE(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getLongLE(byte[],int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 312
    functionLinenumberEnd: 325
    functionDepth: 2
    returnType: "long"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getLong(byte[],int)"
    - "[java.lang.Long].reverseBytes(long)"
    - "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    functionUses: 2
    ICount: 56
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:313"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:317"
        BranchSideFuncs:
        - "reverseBytes(long)"
        - "getLong(byte[],int)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:316"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:315"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:313"
        BranchSideFuncs:
        - "reverseBytes(long)"
        - "getLong(byte[],int)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:314,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getLong(byte[],int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:315,1"
      Dst: "[java.lang.Long].reverseBytes(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:317,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setByte(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 146
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setByte(int,int)"
    functionUses: 65
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:143,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:144,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setByte(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 152
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].setByte(byte[],int,int)"
    functionUses: 27
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:150,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setByte(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setByte(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 327
    functionLinenumberEnd: 330
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:328,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 714
    functionLinenumberEnd: 717
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].putByte(byte[],int,byte)"
    functionUses: 27
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:715,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].putByte(byte[],int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].putByte(byte[],int,byte)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 699
    functionLinenumberEnd: 702
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].putByte(java.lang.Object,long,byte)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:700,1"
      Dst: "[sun.misc.Unsafe].putByte(java.lang.Object,long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShort(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 158
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setShort(int,int)"
    functionUses: 18
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:155,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:156,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setShort(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 164
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].setShort(byte[],int,int)"
    functionUses: 8
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:162,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setShort(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setShort(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 331
    functionLinenumberEnd: 340
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].putShort(byte[],int,short)"
    - "[java.lang.Short].reverseBytes(short)"
    - "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    functionUses: 2
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:332"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:336"
        BranchSideFuncs:
        - "putShort(byte[],int,short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:335"
        BranchSideFuncs:
        - "putByte(byte[],int,byte)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:333"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:334"
        BranchSideFuncs:
        - "reverseBytes(short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:333"
        BranchSideFuncs:
        - "reverseBytes(short)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:334,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:333,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putShort(byte[],int,short)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:336,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent].putShort(byte[],int,short)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 722
    functionLinenumberEnd: 725
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].putShort(byte[],int,short)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:723,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].putShort(byte[],int,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].putShort(byte[],int,short)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 707
    functionLinenumberEnd: 710
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].putShort(java.lang.Object,long,short)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:708,1"
      Dst: "[sun.misc.Unsafe].putShort(java.lang.Object,long,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 170
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setShortLE(int,int)"
    functionUses: 9
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:167,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:168,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setShortLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].setShortLE(byte[],int,int)"
    functionUses: 7
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:174,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setShortLE(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setShortLE(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 341
    functionLinenumberEnd: 350
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].putShort(byte[],int,short)"
    - "[java.lang.Short].reverseBytes(short)"
    - "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    functionUses: 2
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:342"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:346"
        BranchSideFuncs:
        - "putShort(byte[],int,short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:345"
        BranchSideFuncs:
        - "putByte(byte[],int,byte)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:343"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:343"
        BranchSideFuncs:
        - "reverseBytes(short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:342"
        BranchSideFuncs:
        - "putShort(byte[],int,short)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:344,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:343,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putShort(byte[],int,short)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:346,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 182
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setMedium(int,int)"
    functionUses: 11
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:179,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:180,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].setMedium(byte[],int,int)"
    functionUses: 8
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:186,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setMedium(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setMedium(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 351
    functionLinenumberEnd: 362
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    - "[io.netty.util.internal.PlatformDependent].putShort(byte[],int,short)"
    - "[java.lang.Short].reverseBytes(short)"
    functionUses: 2
    ICount: 25
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:353"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:358"
        BranchSideFuncs:
        - "putShort(byte[],int,short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:357"
        BranchSideFuncs:
        - "putByte(byte[],int,byte)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:354"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:355"
        BranchSideFuncs:
        - "reverseBytes(short)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:352,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:356,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:354,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putShort(byte[],int,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 194
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setMediumLE(int,int)"
    functionUses: 10
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:191,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:192,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setMediumLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].setMediumLE(byte[],int,int)"
    functionUses: 8
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:198,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setMediumLE(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setMediumLE(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 363
    functionLinenumberEnd: 374
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    - "[io.netty.util.internal.PlatformDependent].putShort(byte[],int,short)"
    - "[java.lang.Short].reverseBytes(short)"
    functionUses: 2
    ICount: 27
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:365"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:370"
        BranchSideFuncs:
        - "putShort(byte[],int,short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:369"
        BranchSideFuncs:
        - "putByte(byte[],int,byte)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:366"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:366"
        BranchSideFuncs:
        - "putShort(byte[],int,short)"
        - "reverseBytes(short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:365"
        BranchSideFuncs:
        - "putShort(byte[],int,short)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:364,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:367,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:366,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putShort(byte[],int,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setInt(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 206
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setInt(int,int)"
    functionUses: 26
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:203,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:204,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setInt(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].setInt(byte[],int,int)"
    functionUses: 12
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:210,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setInt(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setInt(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 375
    functionLinenumberEnd: 385
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].putInt(byte[],int,int)"
    - "[java.lang.Integer].reverseBytes(int)"
    - "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    functionUses: 2
    ICount: 27
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:376"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:379"
        BranchSideFuncs:
        - "reverseBytes(int)"
        - "putInt(byte[],int,int)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:378"
        BranchSideFuncs:
        - "putByte(byte[],int,byte)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:377"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:376"
        BranchSideFuncs:
        - "reverseBytes(int)"
        - "putInt(byte[],int,int)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:377,1"
      Dst: "[java.lang.Integer].reverseBytes(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:377,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putInt(byte[],int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:379,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent].putInt(byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 726
    functionLinenumberEnd: 729
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].putInt(byte[],int,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:727,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].putInt(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].putInt(byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 711
    functionLinenumberEnd: 714
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].putInt(java.lang.Object,long,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:712,1"
      Dst: "[sun.misc.Unsafe].putInt(java.lang.Object,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 218
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setIntLE(int,int)"
    functionUses: 12
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:215,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:216,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setIntLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 224
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].setIntLE(byte[],int,int)"
    functionUses: 8
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:222,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setIntLE(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setIntLE(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 386
    functionLinenumberEnd: 396
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].putInt(byte[],int,int)"
    - "[java.lang.Integer].reverseBytes(int)"
    - "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    functionUses: 2
    ICount: 27
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:387"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:390"
        BranchSideFuncs:
        - "reverseBytes(int)"
        - "putInt(byte[],int,int)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:389"
        BranchSideFuncs:
        - "putByte(byte[],int,byte)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:388"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:387"
        BranchSideFuncs:
        - "reverseBytes(int)"
        - "putInt(byte[],int,int)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:388,1"
      Dst: "[java.lang.Integer].reverseBytes(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:388,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putInt(byte[],int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:390,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setLong(int,long)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 226
    functionLinenumberEnd: 230
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setLong(int,long)"
    functionUses: 14
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:227,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:228,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setLong(int,long)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 233
    functionLinenumberEnd: 236
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].setLong(byte[],int,long)"
    functionUses: 10
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:234,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setLong(byte[],int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setLong(byte[],int,long)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 397
    functionLinenumberEnd: 411
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].putLong(byte[],int,long)"
    - "[java.lang.Long].reverseBytes(long)"
    - "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    functionUses: 2
    ICount: 51
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:398"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:401"
        BranchSideFuncs:
        - "reverseBytes(long)"
        - "putLong(byte[],int,long)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:400"
        BranchSideFuncs:
        - "putByte(byte[],int,byte)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:399"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:398"
        BranchSideFuncs:
        - "reverseBytes(long)"
        - "putLong(byte[],int,long)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:399,1"
      Dst: "[java.lang.Long].reverseBytes(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:399,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putLong(byte[],int,long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:401,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent].putLong(byte[],int,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 730
    functionLinenumberEnd: 733
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].putLong(byte[],int,long)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:731,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].putLong(byte[],int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].putLong(byte[],int,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 715
    functionLinenumberEnd: 718
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].putLong(java.lang.Object,long,long)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:716,1"
      Dst: "[sun.misc.Unsafe].putLong(java.lang.Object,long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setLongLE(int,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:239,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:240,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setLongLE(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].setLongLE(byte[],int,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:246,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setLongLE(byte[],int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setLongLE(byte[],int,long)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].reverseBytes(long)"
    - "[io.netty.util.internal.PlatformDependent].putLong(byte[],int,long)"
    - "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:413"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:416"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:415"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:414"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:413"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:414,1"
      Dst: "[java.lang.Long].reverseBytes(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:414,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putLong(byte[],int,long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:416,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(byte[],int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setZero(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 250
    functionLinenumberEnd: 258
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setZero(byte[],int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setZero(int,int)"
    functionUses: 3
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:251"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:256"
        BranchSideFuncs:
        - "setZero(int,int)"
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:251,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:253,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:254,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setZero(byte[],int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:257,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setZero(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setZero(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 427
    functionLinenumberEnd: 433
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].setMemory(byte[],int,long,byte)"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:428"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:431"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:430"
        BranchSideFuncs:
        - "setMemory(byte[],int,long,byte)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:431,1"
      Dst: "[io.netty.util.internal.PlatformDependent].setMemory(byte[],int,long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].setMemory(byte[],int,long,byte)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 759
    functionLinenumberEnd: 762
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "byte[]"
    - "int"
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].setMemory(java.lang.Object,long,long,byte)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:760,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].setMemory(java.lang.Object,long,long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].setMemory(java.lang.Object,long,long,byte)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 768
    functionLinenumberEnd: 771
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "long"
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].setMemory(java.lang.Object,long,long,byte)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:769,1"
      Dst: "[sun.misc.Unsafe].setMemory(java.lang.Object,long,long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].writeZero(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 271
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setZero(byte[],int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeZero(int)"
    functionUses: 5
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:262"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:269"
        BranchSideFuncs:
        - "writeZero(int)"
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:262,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:264,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:266,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setZero(byte[],int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:270,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeZero(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].newSwappedByteBuf()"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 275
    functionLinenumberEnd: 281
    functionDepth: 2
    returnType: "io.netty.buffer.SwappedByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].isUnaligned()"
    - "[io.netty.buffer.UnsafeHeapSwappedByteBuf].<init>(io.netty.buffer.AbstractByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].newSwappedByteBuf()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:276"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:279"
        BranchSideFuncs:
        - "newSwappedByteBuf()"
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:276,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isUnaligned()"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:278,1"
      Dst: "[io.netty.buffer.UnsafeHeapSwappedByteBuf].<init>(io.netty.buffer.AbstractByteBuf)"
    - Src: "io.netty.buffer.UnpooledUnsafeHeapByteBuf:280,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].newSwappedByteBuf()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].isUnaligned()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 392
    functionLinenumberEnd: 394
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].isUnaligned()"
    functionUses: 8
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:393,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].isUnaligned()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].isUnaligned()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 520
    functionLinenumberEnd: 522
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeHeapSwappedByteBuf].<init>(io.netty.buffer.AbstractByteBuf)"
    functionSourceFile: "io.netty.buffer.UnsafeHeapSwappedByteBuf"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].<init>(io.netty.buffer.AbstractByteBuf)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:27,1"
      Dst: "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].<init>(io.netty.buffer.AbstractByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$3].<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader,int,io.netty.channel.ChannelHandlerContext,int,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$3"
    linkageType: ""
    functionLinenumber: 543
    functionLinenumberEnd: 545
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    - "int"
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader,io.netty.handler.codec.http2.DefaultHttp2FrameReader$1)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$3:544,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader,io.netty.handler.codec.http2.DefaultHttp2FrameReader$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$3].getStreamId()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$3"
    linkageType: ""
    functionLinenumber: 546
    functionLinenumberEnd: 548
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$3].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$3"
    linkageType: ""
    functionLinenumber: 552
    functionLinenumberEnd: 559
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].addFragment(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBufAllocator,boolean)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].headersBlockBuilder()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].headers()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    functionUses: 4
    ICount: 18
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$3:554"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$3:557"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$3:553,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].headersBlockBuilder()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$3:553,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$3:553,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].addFragment(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBufAllocator,boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$3:556,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].headers()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$3:555,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].<init>()"
    functionSourceFile: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:169,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parse()"
    functionSourceFile: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "io.netty.resolver.HostsFileEntriesProvider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].locateHostsFile()"
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parse(java.io.File,java.nio.charset.Charset[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:175,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].locateHostsFile()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:175,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:175,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parse(java.io.File,java.nio.charset.Charset[])"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].locateHostsFile()"
    functionSourceFile: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl"
    linkageType: ""
    functionLinenumber: 305
    functionLinenumberEnd: 315
    functionDepth: 1
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].isWindows()"
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.System].getenv(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.File].exists()"
    functionUses: 2
    ICount: 21
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:306"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:312"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "exists()"
        - "getenv(java.lang.String)"
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:311"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:308"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:314"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:313"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:306,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isWindows()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:307,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:307,1"
      Dst: "[java.lang.System].getenv(java.lang.String)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:307,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:307,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:307,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:308,1"
      Dst: "[java.io.File].exists()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parse(java.io.File,java.nio.charset.Charset[])"
    functionSourceFile: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 205
    functionDepth: 9
    returnType: "io.netty.resolver.HostsFileEntriesProvider"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[java.io.File].exists()"
    - "[java.io.File].isFile()"
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    - "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parse(java.io.Reader)"
    - "[java.io.BufferedReader].close()"
    functionUses: 1
    ICount: 40
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:187"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:190"
        BranchSideFuncs:
        - "defaultCharset()"
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:189"
        BranchSideFuncs:
        - "isFile()"
        - "exists()"
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:190"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:190"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:191"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:204"
        BranchSideFuncs:
        - "parse(java.io.Reader)"
        - "<init>(java.io.InputStream,java.nio.charset.Charset)"
        - "<init>(java.io.File)"
        - "<init>(java.io.Reader)"
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:196"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:200"
        BranchSideFuncs:
        - "parse(java.io.Reader)"
        - "isFile()"
        - "<init>(java.io.InputStream,java.nio.charset.Charset)"
        - "exists()"
        - "<init>(java.io.File)"
        - "<init>(java.io.Reader)"
        - "close()"
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:199"
        BranchSideFuncs:
        - "close()"
    Callsites:
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:185,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:188,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:190,1"
      Dst: "[java.io.File].exists()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:190,1"
      Dst: "[java.io.File].isFile()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:192,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:192,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream,java.nio.charset.Charset)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:192,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:195,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parse(java.io.Reader)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:200,1"
      Dst: "[java.io.BufferedReader].close()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parse(java.io.Reader)"
    functionSourceFile: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 280
    functionDepth: 8
    returnType: "io.netty.resolver.HostsFileEntriesProvider"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    - "[java.util.HashMap].<init>()"
    - "[java.io.BufferedReader].readLine()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].isEmpty()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.regex.Pattern].split(java.lang.CharSequence)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].size()"
    - "[io.netty.util.NetUtil].createByteArrayFromIpAddressString(java.lang.String)"
    - "[java.util.ArrayList].get(int)"
    - "[java.lang.String].toLowerCase(java.util.Locale)"
    - "[java.net.InetAddress].getByAddress(java.lang.String,byte[])"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.resolver.HostsFileEntriesProvider].<init>(java.util.Map,java.util.Map)"
    - "[java.util.HashMap].isEmpty()"
    - "[java.io.BufferedReader].close()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Map].isEmpty()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 94
    EdgeCount: 52
    BranchProfiles:
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:215"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:269"
        BranchSideFuncs:
        - "isEmpty()"
        - "<init>(java.util.Map,java.util.Map)"
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:218"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:222"
        BranchSideFuncs:
        - "substring(int,int)"
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:221"
        BranchSideFuncs:
        - "trim()"
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:223"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:228"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:227"
        BranchSideFuncs:
        - "split(java.lang.CharSequence)"
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:229"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:236"
        BranchSideFuncs:
        - "split(java.lang.CharSequence)"
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:235"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:230"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:228"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:227"
        BranchSideFuncs:
        - "split(java.lang.CharSequence)"
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:236"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:241"
        BranchSideFuncs:
        - "isEmpty()"
        - "add(java.lang.Object)"
        - "warn(java.lang.String,java.lang.Throwable)"
        - "<init>(java.util.Map,java.util.Map)"
        - "createByteArrayFromIpAddressString(java.lang.String)"
        - "get(int)"
        - "toLowerCase(java.util.Locale)"
        - "get(java.lang.Object)"
        - "put(java.lang.Object,java.lang.Object)"
        - "<init>()"
        - "getByAddress(java.lang.String,byte[])"
        - "split(java.lang.CharSequence)"
        - "size()"
        - "close()"
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:240"
        BranchSideFuncs:
        - "createByteArrayFromIpAddressString(java.lang.String)"
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:243"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:249"
        BranchSideFuncs:
        - "isEmpty()"
        - "add(java.lang.Object)"
        - "warn(java.lang.String,java.lang.Throwable)"
        - "<init>(java.util.Map,java.util.Map)"
        - "createByteArrayFromIpAddressString(java.lang.String)"
        - "get(int)"
        - "toLowerCase(java.util.Locale)"
        - "get(java.lang.Object)"
        - "put(java.lang.Object,java.lang.Object)"
        - "<init>()"
        - "getByAddress(java.lang.String,byte[])"
        - "split(java.lang.CharSequence)"
        - "size()"
        - "close()"
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:248"
        BranchSideFuncs:
        - "size()"
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:249"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:269"
        BranchSideFuncs:
        - "get(int)"
        - "toLowerCase(java.util.Locale)"
        - "getByAddress(java.lang.String,byte[])"
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:268"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:254"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:261"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:260"
        BranchSideFuncs:
        - "get(java.lang.Object)"
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:256"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:262"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:null"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "<init>()"
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:270"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:270"
        BranchSideFuncs:
        - "isEmpty()"
        - "warn(java.lang.String,java.lang.Throwable)"
        - "<init>(java.util.Map,java.util.Map)"
        - "close()"
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:269"
        BranchSideFuncs:
        - "isEmpty()"
        - "<init>(java.util.Map,java.util.Map)"
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:270"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:270"
        BranchSideFuncs:
        - "isEmpty()"
        - "warn(java.lang.String,java.lang.Throwable)"
        - "<init>(java.util.Map,java.util.Map)"
        - "close()"
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:269"
        BranchSideFuncs:
        - "isEmpty()"
        - "<init>(java.util.Map,java.util.Map)"
    Callsites:
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:209,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:210,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:212,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:215,1"
      Dst: "[java.io.BufferedReader].readLine()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:217,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:219,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:222,1"
      Dst: "[java.lang.String].trim()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:223,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:228,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:229,1"
      Dst: "[java.util.regex.Pattern].split(java.lang.CharSequence)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:231,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:236,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:241,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:241,1"
      Dst: "[io.netty.util.NetUtil].createByteArrayFromIpAddressString(java.lang.String)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:251,1"
      Dst: "[java.lang.String].toLowerCase(java.util.Locale)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:252,1"
      Dst: "[java.net.InetAddress].getByAddress(java.lang.String,byte[])"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:255,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:258,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:270,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:270,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider].<init>(java.util.Map,java.util.Map)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:275,1"
      Dst: "[java.io.BufferedReader].close()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:277,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 34
    CyclomaticComplexity: 13
  - functionName: "[io.netty.util.NetUtil].createByteArrayFromIpAddressString(java.lang.String)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 272
    functionLinenumberEnd: 290
    functionDepth: 7
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - "[io.netty.util.NetUtil].validIpV4ToBytes(java.lang.String)"
    - "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].indexOf(int)"
    - "[io.netty.util.NetUtil].getIPv6ByName(java.lang.CharSequence,boolean)"
    functionUses: 11
    ICount: 19
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:273"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:277"
        BranchSideFuncs:
        - "validIpV4ToBytes(java.lang.String)"
      - BranchSide: "io.netty.util.NetUtil:276"
        BranchSideFuncs:
        - "isValidIpV6Address(java.lang.String)"
    - Branch String: "io.netty.util.NetUtil:277"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:289"
        BranchSideFuncs:
        - "charAt(int)"
      - BranchSide: "io.netty.util.NetUtil:288"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:278"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:282"
        BranchSideFuncs:
        - "length()"
      - BranchSide: "io.netty.util.NetUtil:281"
        BranchSideFuncs:
        - "indexOf(int)"
    - Branch String: "io.netty.util.NetUtil:283"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:287"
        BranchSideFuncs:
        - "substring(int,int)"
      - BranchSide: "io.netty.util.NetUtil:286"
        BranchSideFuncs:
        - "getIPv6ByName(java.lang.CharSequence,boolean)"
    Callsites:
    - Src: "io.netty.util.NetUtil:273,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - Src: "io.netty.util.NetUtil:274,1"
      Dst: "[io.netty.util.NetUtil].validIpV4ToBytes(java.lang.String)"
    - Src: "io.netty.util.NetUtil:277,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - Src: "io.netty.util.NetUtil:278,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.util.NetUtil:279,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.util.NetUtil:279,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.util.NetUtil:282,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "io.netty.util.NetUtil:287,1"
      Dst: "[io.netty.util.NetUtil].getIPv6ByName(java.lang.CharSequence,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.HostsFileEntriesProvider].<init>(java.util.Map,java.util.Map)"
    functionSourceFile: "io.netty.resolver.HostsFileEntriesProvider"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 138
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>(java.util.Map)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 2
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileEntriesProvider:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider:135,1"
      Dst: "[java.util.HashMap].<init>(java.util.Map)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider:135,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parse(java.nio.charset.Charset[])"
    functionSourceFile: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "io.netty.resolver.HostsFileEntriesProvider"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].locateHostsFile()"
    - "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parse(java.io.File,java.nio.charset.Charset[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:180,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].locateHostsFile()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:180,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parse(java.io.File,java.nio.charset.Charset[])"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parseSilently()"
    functionSourceFile: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl"
    linkageType: ""
    functionLinenumber: 283
    functionLinenumberEnd: 285
    functionDepth: 11
    returnType: "io.netty.resolver.HostsFileEntriesProvider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].locateHostsFile()"
    - "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parseSilently(java.io.File,java.nio.charset.Charset[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:284,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].locateHostsFile()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:284,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:284,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parseSilently(java.io.File,java.nio.charset.Charset[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parseSilently(java.io.File,java.nio.charset.Charset[])"
    functionSourceFile: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl"
    linkageType: ""
    functionLinenumber: 294
    functionLinenumberEnd: 301
    functionDepth: 10
    returnType: "io.netty.resolver.HostsFileEntriesProvider"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parse(java.io.File,java.nio.charset.Charset[])"
    - "[io.netty.util.internal.logging.JdkLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isWarnEnabled()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.io.File].getPath()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 19
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:297"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:300"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "getPath()"
      - BranchSide: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:299"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:295,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parse(java.io.File,java.nio.charset.Charset[])"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:297,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:298,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:298,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:298,1"
      Dst: "[java.io.File].getPath()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:298,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:298,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parseSilently(java.nio.charset.Charset[])"
    functionSourceFile: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl"
    linkageType: ""
    functionLinenumber: 288
    functionLinenumberEnd: 290
    functionDepth: 11
    returnType: "io.netty.resolver.HostsFileEntriesProvider"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].locateHostsFile()"
    - "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parseSilently(java.io.File,java.nio.charset.Charset[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:289,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].locateHostsFile()"
    - Src: "io.netty.resolver.HostsFileEntriesProvider$ParserImpl:289,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$ParserImpl].parseSilently(java.io.File,java.nio.charset.Charset[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil].isOutboundStream(boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:144"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:143"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil:145"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:144"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil:145"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:144"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil].connectionPrefaceBuf()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledSlicedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.WrappedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.UnreleasableByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AbstractByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.EmptyByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    functionUses: 3
    ICount: 3
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:171,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil].readUnsignedInt(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 205
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readInt()"
    - "[io.netty.buffer.SwappedByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readInt()"
    - "[io.netty.buffer.EmptyByteBuf].readInt()"
    - "[io.netty.buffer.AbstractByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readInt()"
    - "[io.netty.buffer.WrappedByteBuf].readInt()"
    - "[io.netty.buffer.ByteBuf].readInt()"
    functionUses: 4
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:204,1"
      Dst: "[io.netty.buffer.ByteBuf].readInt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil].writeFrameHeader(io.netty.buffer.ByteBuf,int,byte,io.netty.handler.codec.http2.Http2Flags,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 215
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "byte"
    - "io.netty.handler.codec.http2.Http2Flags"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil].writeFrameHeaderInternal(io.netty.buffer.ByteBuf,int,byte,io.netty.handler.codec.http2.Http2Flags,int)"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:212,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:213,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].writeFrameHeaderInternal(io.netty.buffer.ByteBuf,int,byte,io.netty.handler.codec.http2.Http2Flags,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil].writeFrameHeaderInternal(io.netty.buffer.ByteBuf,int,byte,io.netty.handler.codec.http2.Http2Flags,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil"
    linkageType: ""
    functionLinenumber: 250
    functionLinenumberEnd: 256
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "byte"
    - "io.netty.handler.codec.http2.Http2Flags"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writeMedium(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.http2.Http2Flags].value()"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].writeMedium(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    functionUses: 17
    ICount: 13
    EdgeCount: 38
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:251,1"
      Dst: "[io.netty.buffer.ByteBuf].writeMedium(int)"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:252,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:253,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].value()"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:254,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Flags].value()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Flags"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil].streamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil"
    linkageType: ""
    functionLinenumber: 219
    functionLinenumberEnd: 221
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.StreamByteDistributor$StreamState"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[java.lang.Math].min(long,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].pendingBytes()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].windowSize()"
    - "[io.netty.handler.codec.http2.StreamByteDistributor$StreamState].pendingBytes()"
    - "[io.netty.handler.codec.http2.StreamByteDistributor$StreamState].windowSize()"
    functionUses: 2
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:220,1"
      Dst: "[io.netty.handler.codec.http2.StreamByteDistributor$StreamState].pendingBytes()"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:220,1"
      Dst: "[io.netty.handler.codec.http2.StreamByteDistributor$StreamState].windowSize()"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:220,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:220,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil].headerListSizeExceeded(int,long,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil"
    linkageType: ""
    functionLinenumber: 233
    functionLinenumberEnd: 235
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "long"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].headerListSizeError(int,io.netty.handler.codec.http2.Http2Error,boolean,java.lang.String,java.lang.Object[])"
    - "[java.lang.Long].valueOf(long)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:234,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:233,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].headerListSizeError(int,io.netty.handler.codec.http2.Http2Error,boolean,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].headerListSizeError(int,io.netty.handler.codec.http2.Http2Error,boolean,java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 196
    functionDepth: 4
    returnType: "io.netty.handler.codec.http2.Http2Exception"
    argCount: 5
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Error"
    - "boolean"
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2Exception$HeaderListSizeException].<init>(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http2.Http2Exception].formatErrorMessage(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2Exception:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:193"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:192"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception:194,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.Http2Exception:195,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].formatErrorMessage(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.Http2Exception:195,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception$HeaderListSizeException].<init>(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2Exception$HeaderListSizeException].<init>(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception$HeaderListSizeException"
    linkageType: ""
    functionLinenumber: 293
    functionLinenumberEnd: 297
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception$StreamException].<init>(int,io.netty.handler.codec.http2.Http2Error,java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception$HeaderListSizeException:294,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception$StreamException].<init>(int,io.netty.handler.codec.http2.Http2Error,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil].verifyPadding(int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil"
    linkageType: ""
    functionLinenumber: 397
    functionLinenumberEnd: 403
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 5
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil:398"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:399"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:398"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil:398"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:402"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil:401"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:400,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:399,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:399,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil:403,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    functionSourceFile: "io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 180
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.TrafficCounter].milliSecondFromNano()"
    - "[io.netty.handler.traffic.TrafficCounter].resetAccounting(long)"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].doAccounting(io.netty.handler.traffic.TrafficCounter)"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].doAccounting(io.netty.handler.traffic.TrafficCounter)"
    functionUses: 49
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask:172"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask:175"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask:174"
        BranchSideFuncs:
        - "resetAccounting(long)"
        - "milliSecondFromNano()"
    - Branch String: "io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask:176"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask:179"
        BranchSideFuncs:
        - "doAccounting(io.netty.handler.traffic.TrafficCounter)"
      - BranchSide: "io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask:175,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].milliSecondFromNano()"
    - Src: "io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask:175,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].resetAccounting(long)"
    - Src: "io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask:177,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].doAccounting(io.netty.handler.traffic.TrafficCounter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.redis.InlineCommandRedisMessage].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.redis.InlineCommandRedisMessage"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.InlineCommandRedisMessage:32,1"
      Dst: "[io.netty.handler.codec.redis.AbstractStringRedisMessage].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledHeapByteBuf$1].<init>()"
    functionSourceFile: "io.netty.buffer.PooledHeapByteBuf$1"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledHeapByteBuf$1:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledHeapByteBuf$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.buffer.PooledHeapByteBuf$1"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 1
    returnType: "io.netty.buffer.PooledHeapByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledHeapByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledHeapByteBuf$1:33,1"
      Dst: "[io.netty.buffer.PooledHeapByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledHeapByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    functionSourceFile: "io.netty.buffer.PooledHeapByteBuf"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledHeapByteBuf:44,1"
      Dst: "[io.netty.buffer.PooledByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.SequentialDnsServerAddressStreamProvider].<init>(java.net.InetSocketAddress[])"
    functionSourceFile: "io.netty.resolver.dns.SequentialDnsServerAddressStreamProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.InetSocketAddress[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsServerAddresses].sequential(java.net.InetSocketAddress[])"
    - "[io.netty.resolver.dns.UniSequentialDnsServerAddressStreamProvider].<init>(io.netty.resolver.dns.DnsServerAddresses)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.SequentialDnsServerAddressStreamProvider:32,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddresses].sequential(java.net.InetSocketAddress[])"
    - Src: "io.netty.resolver.dns.SequentialDnsServerAddressStreamProvider:32,1"
      Dst: "[io.netty.resolver.dns.UniSequentialDnsServerAddressStreamProvider].<init>(io.netty.resolver.dns.DnsServerAddresses)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.SequentialDnsServerAddressStreamProvider].<init>(java.lang.Iterable)"
    functionSourceFile: "io.netty.resolver.dns.SequentialDnsServerAddressStreamProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsServerAddresses].sequential(java.lang.Iterable)"
    - "[io.netty.resolver.dns.UniSequentialDnsServerAddressStreamProvider].<init>(io.netty.resolver.dns.DnsServerAddresses)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.SequentialDnsServerAddressStreamProvider:41,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddresses].sequential(java.lang.Iterable)"
    - Src: "io.netty.resolver.dns.SequentialDnsServerAddressStreamProvider:41,1"
      Dst: "[io.netty.resolver.dns.UniSequentialDnsServerAddressStreamProvider].<init>(io.netty.resolver.dns.DnsServerAddresses)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol].values()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol:185,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol:185,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol].<init>(java.lang.String,int,byte)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol:209,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol:228,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol:228,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol:228,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol:228,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol:228,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol].byteValue()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$TransportProtocol"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayRedisMessage$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayRedisMessage$1"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].<init>(io.netty.handler.codec.redis.ArrayRedisMessage$1)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.ArrayRedisMessage$1:94,1"
      Dst: "[io.netty.handler.codec.redis.ArrayRedisMessage].<init>(io.netty.handler.codec.redis.ArrayRedisMessage$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayRedisMessage$1].isNull()"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayRedisMessage$1"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayRedisMessage$1].retain()"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayRedisMessage$1"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.ArrayRedisMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayRedisMessage$1].retain(int)"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayRedisMessage$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.ArrayRedisMessage"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayRedisMessage$1].touch()"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayRedisMessage$1"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.ArrayRedisMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayRedisMessage$1].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayRedisMessage$1"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.ArrayRedisMessage"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayRedisMessage$1].release()"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayRedisMessage$1"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayRedisMessage$1].release(int)"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayRedisMessage$1"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayRedisMessage$1].toString()"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayRedisMessage$1"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink].<init>(int,io.netty.handler.codec.http2.Http2Headers,long,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink"
    linkageType: ""
    functionLinenumber: 527
    functionLinenumberEnd: 534
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "long"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:528,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink].finish()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink"
    linkageType: ""
    functionLinenumber: 535
    functionLinenumberEnd: 542
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil].headerListSizeExceeded(int,long,boolean)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:536"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:538"
        BranchSideFuncs:
        - "headerListSizeExceeded(int,long,boolean)"
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:537"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:538"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:541"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:540"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:537,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].headerListSizeExceeded(int,long,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink].appendToHeaderList(io.netty.util.AsciiString,io.netty.util.AsciiString)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink"
    linkageType: ""
    functionLinenumber: 543
    functionLinenumberEnd: 564
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.AsciiString"
    - "io.netty.util.AsciiString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackHeaderField].sizeOf(java.lang.CharSequence,java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.EmptyHeaders].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.HpackDecoder].access$000(int,io.netty.util.AsciiString,java.lang.CharSequence,io.netty.handler.codec.http2.HpackDecoder$HeaderType)"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[java.nio.file.InvalidPathException].getMessage()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.util.regex.PatternSyntaxException].getMessage()"
    - "[io.netty.handler.codec.Headers].add(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 51
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:545"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:544"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:543"
        BranchSideFuncs:
        - "sizeOf(java.lang.CharSequence,java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:547"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:549"
        BranchSideFuncs:
        - "access$000(int,io.netty.util.AsciiString,java.lang.CharSequence,io.netty.handler.codec.http2.HpackDecoder$HeaderType)"
        - "add(java.lang.Object,java.lang.Object)"
        - "getMessage()"
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:548"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:547"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:553"
        BranchSideFuncs:
        - "access$000(int,io.netty.util.AsciiString,java.lang.CharSequence,io.netty.handler.codec.http2.HpackDecoder$HeaderType)"
        - "add(java.lang.Object,java.lang.Object)"
        - "getMessage()"
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:552"
        BranchSideFuncs:
        - "add(java.lang.Object,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:554"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:562"
        BranchSideFuncs:
        - "access$000(int,io.netty.util.AsciiString,java.lang.CharSequence,io.netty.handler.codec.http2.HpackDecoder$HeaderType)"
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:561"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:544,1"
      Dst: "[io.netty.handler.codec.http2.HpackHeaderField].sizeOf(java.lang.CharSequence,java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:553,1"
      Dst: "[io.netty.handler.codec.Headers].add(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:555,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].access$000(int,io.netty.util.AsciiString,java.lang.CharSequence,io.netty.handler.codec.http2.HpackDecoder$HeaderType)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:559,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink:558,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.HpackHeaderField].sizeOf(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHeaderField"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[io.netty.util.AsciiString:io.netty.util.internal.AppendableCharSequence:java.lang.AbstractStringBuilder:java.lang.StringBuffer:java.lang.StringBuilder:java.nio.CharBuffer].length()"
    - "[java.lang.CharSequence].length()"
    functionUses: 3
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackHeaderField:45,1"
      Dst: "[java.lang.CharSequence].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].access$000(int,io.netty.util.AsciiString,java.lang.CharSequence,io.netty.handler.codec.http2.HpackDecoder$HeaderType)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 7
    returnType: "io.netty.handler.codec.http2.HpackDecoder$HeaderType"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.util.AsciiString"
    - "java.lang.CharSequence"
    - "io.netty.handler.codec.http2.HpackDecoder$HeaderType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackDecoder].validateHeader(int,io.netty.util.AsciiString,java.lang.CharSequence,io.netty.handler.codec.http2.HpackDecoder$HeaderType)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder:54,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].validateHeader(int,io.netty.util.AsciiString,java.lang.CharSequence,io.netty.handler.codec.http2.HpackDecoder$HeaderType)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].validateHeader(int,io.netty.util.AsciiString,java.lang.CharSequence,io.netty.handler.codec.http2.HpackDecoder$HeaderType)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: 380
    functionLinenumberEnd: 403
    functionDepth: 6
    returnType: "io.netty.handler.codec.http2.HpackDecoder$HeaderType"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.util.AsciiString"
    - "java.lang.CharSequence"
    - "io.netty.handler.codec.http2.HpackDecoder$HeaderType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].hasPseudoHeaderFormat(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].getPseudoHeader(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].isRequestOnly()"
    - "[io.netty.handler.codec.http.HttpHeaderValidationUtil].isConnectionHeader(java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.HttpHeaderValidationUtil].isTeNotTrailers(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 1
    ICount: 42
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:381"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:394"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:393"
        BranchSideFuncs:
        - "isConnectionHeader(java.lang.CharSequence,boolean)"
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:382"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:386"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:385"
        BranchSideFuncs:
        - "getPseudoHeader(java.lang.CharSequence)"
        - "isRequestOnly()"
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:387"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:386"
        BranchSideFuncs:
        - "isRequestOnly()"
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:385"
        BranchSideFuncs:
        - "getPseudoHeader(java.lang.CharSequence)"
        - "isRequestOnly()"
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:389"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:392"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:391"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:389"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:392"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:391"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:394"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:397"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:396"
        BranchSideFuncs:
        - "isTeNotTrailers(java.lang.CharSequence,java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:397"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:402"
        BranchSideFuncs:
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:401"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder:381,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].hasPseudoHeaderFormat(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:383,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:386,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].getPseudoHeader(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:387,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].isRequestOnly()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:394,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaderValidationUtil].isConnectionHeader(java.lang.CharSequence,boolean)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:397,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaderValidationUtil].isTeNotTrailers(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].getPseudoHeader(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 2
    returnType: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:116,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].isRequestOnly()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpHeaderValidationUtil].isConnectionHeader(java.lang.CharSequence,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpHeaderValidationUtil"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 75
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[io.netty.util.AsciiString:io.netty.util.internal.AppendableCharSequence:java.lang.AbstractStringBuilder:java.lang.StringBuffer:java.lang.StringBuilder:java.nio.CharBuffer].length()"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    - "[java.lang.CharSequence].length()"
    functionUses: 1
    ICount: 30
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:67"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:66"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:69"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:68"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:69"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpHeaderValidationUtil:65,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http.HttpHeaderValidationUtil:67,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.HttpHeaderValidationUtil].isTeNotTrailers(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.HttpHeaderValidationUtil"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 97
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[io.netty.util.AsciiString:io.netty.util.internal.AppendableCharSequence:java.lang.AbstractStringBuilder:java.lang.StringBuffer:java.lang.StringBuilder:java.nio.CharBuffer].length()"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    - "[java.lang.CharSequence].length()"
    functionUses: 1
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:96"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:95"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:93"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:93"
        BranchSideFuncs:
        - "contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:92"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:94"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpHeaderValidationUtil:92,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http.HttpHeaderValidationUtil:93,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy].values()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy:23,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy:23,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy].<init>(java.lang.String,int,int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy:30,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy].value()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy].valueOf(int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy:47,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy:47,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy:47,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy:47,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy:47,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ContextBoundUnmarshallerProvider].<init>(org.jboss.marshalling.MarshallerFactory,org.jboss.marshalling.MarshallingConfiguration)"
    functionSourceFile: "io.netty.handler.codec.marshalling.ContextBoundUnmarshallerProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.jboss.marshalling.MarshallerFactory"
    - "org.jboss.marshalling.MarshallingConfiguration"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.marshalling.DefaultUnmarshallerProvider].<init>(org.jboss.marshalling.MarshallerFactory,org.jboss.marshalling.MarshallingConfiguration)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.ContextBoundUnmarshallerProvider:41,1"
      Dst: "[io.netty.handler.codec.marshalling.DefaultUnmarshallerProvider].<init>(org.jboss.marshalling.MarshallerFactory,org.jboss.marshalling.MarshallingConfiguration)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ContextBoundUnmarshallerProvider].getUnmarshaller(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.marshalling.ContextBoundUnmarshallerProvider"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 53
    functionDepth: 1
    returnType: "org.jboss.marshalling.Unmarshaller"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DefaultAttributeMap].attr(io.netty.util.AttributeKey)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[io.netty.handler.codec.marshalling.DefaultUnmarshallerProvider].getUnmarshaller(io.netty.channel.ChannelHandlerContext)"
    - "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - "[io.netty.util.Attribute].get()"
    - "[io.netty.util.Attribute].set(java.lang.Object)"
    functionUses: 2
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.marshalling.ContextBoundUnmarshallerProvider:48"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.marshalling.ContextBoundUnmarshallerProvider:52"
        BranchSideFuncs:
        - "set(java.lang.Object)"
        - "getUnmarshaller(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.codec.marshalling.ContextBoundUnmarshallerProvider:51"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.ContextBoundUnmarshallerProvider:46,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.marshalling.ContextBoundUnmarshallerProvider:46,1"
      Dst: "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - Src: "io.netty.handler.codec.marshalling.ContextBoundUnmarshallerProvider:47,1"
      Dst: "[io.netty.util.Attribute].get()"
    - Src: "io.netty.handler.codec.marshalling.ContextBoundUnmarshallerProvider:49,1"
      Dst: "[io.netty.handler.codec.marshalling.DefaultUnmarshallerProvider].getUnmarshaller(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.marshalling.ContextBoundUnmarshallerProvider:50,1"
      Dst: "[io.netty.util.Attribute].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.TcpDnsResponseEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsResponseEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.TcpDnsResponseEncoder].<init>(io.netty.handler.codec.dns.DnsRecordEncoder)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsResponseEncoder:36,1"
      Dst: "[io.netty.handler.codec.dns.TcpDnsResponseEncoder].<init>(io.netty.handler.codec.dns.DnsRecordEncoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.TcpDnsResponseEncoder].<init>(io.netty.handler.codec.dns.DnsRecordEncoder)"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsResponseEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecordEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsResponseEncoder:42,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    - Src: "io.netty.handler.codec.dns.TcpDnsResponseEncoder:43,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.TcpDnsResponseEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.dns.DnsResponse,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsResponseEncoder"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 56
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.dns.DnsResponse"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.handler.codec.dns.DnsMessageUtil].encodeDnsResponse(io.netty.handler.codec.dns.DnsRecordEncoder,io.netty.handler.codec.dns.DnsResponse,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setShort(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShort(int,int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].setShort(int,int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 48
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsResponseEncoder:48,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.dns.TcpDnsResponseEncoder:48,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.handler.codec.dns.TcpDnsResponseEncoder:50,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.dns.TcpDnsResponseEncoder:50,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.dns.TcpDnsResponseEncoder:51,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].encodeDnsResponse(io.netty.handler.codec.dns.DnsRecordEncoder,io.netty.handler.codec.dns.DnsResponse,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.TcpDnsResponseEncoder:52,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.dns.TcpDnsResponseEncoder:52,1"
      Dst: "[io.netty.buffer.ByteBuf].setShort(int,int)"
    - Src: "io.netty.handler.codec.dns.TcpDnsResponseEncoder:54,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.TcpDnsResponseEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsResponseEncoder"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.TcpDnsResponseEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.dns.DnsResponse,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsResponseEncoder:27,1"
      Dst: "[io.netty.handler.codec.dns.TcpDnsResponseEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.dns.DnsResponse,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].newSocket(java.nio.channels.spi.SelectorProvider)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.nio.channels.DatagramChannel"
    argCount: 1
    argTypes:
    - "java.nio.channels.spi.SelectorProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.spi.SelectorProvider].openDatagramChannel()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:88,1"
      Dst: "[java.nio.channels.spi.SelectorProvider].openDatagramChannel()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:90,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].newSocket(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.nio.channels.DatagramChannel"
    argCount: 2
    argTypes:
    - "java.nio.channels.spi.SelectorProvider"
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioDatagramChannel].newSocket(java.nio.channels.spi.SelectorProvider)"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].checkJavaVersion()"
    - "[io.netty.channel.socket.nio.ProtocolFamilyConverter].convert(io.netty.channel.socket.InternetProtocolFamily)"
    - "[java.nio.channels.spi.SelectorProvider].openDatagramChannel(java.net.ProtocolFamily)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:96"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:100"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:99"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:97,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].newSocket(java.nio.channels.spi.SelectorProvider)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:100,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].checkJavaVersion()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:103,1"
      Dst: "[io.netty.channel.socket.nio.ProtocolFamilyConverter].convert(io.netty.channel.socket.InternetProtocolFamily)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:103,1"
      Dst: "[java.nio.channels.spi.SelectorProvider].openDatagramChannel(java.net.ProtocolFamily)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:105,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].checkJavaVersion()"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:110"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:113"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:110,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:111,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.ProtocolFamilyConverter].convert(io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.channel.socket.nio.ProtocolFamilyConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.net.ProtocolFamily"
    argCount: 1
    argTypes:
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.IllegalArgumentException].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.ProtocolFamilyConverter:38,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.channel.socket.nio.ProtocolFamilyConverter:44,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].<init>()"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioDatagramChannel].newSocket(java.nio.channels.spi.SelectorProvider)"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].<init>(java.nio.channels.DatagramChannel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:119,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].newSocket(java.nio.channels.spi.SelectorProvider)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:119,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].<init>(java.nio.channels.DatagramChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].<init>(java.nio.channels.spi.SelectorProvider)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.spi.SelectorProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioDatagramChannel].newSocket(java.nio.channels.spi.SelectorProvider)"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].<init>(java.nio.channels.DatagramChannel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:127,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].newSocket(java.nio.channels.spi.SelectorProvider)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:127,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].<init>(java.nio.channels.DatagramChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].<init>(io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioDatagramChannel].newSocket(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].<init>(java.nio.channels.DatagramChannel)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:135,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].newSocket(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:135,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].<init>(java.nio.channels.DatagramChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].<init>(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.spi.SelectorProvider"
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioDatagramChannel].newSocket(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].<init>(java.nio.channels.DatagramChannel)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:144,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].newSocket(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:144,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].<init>(java.nio.channels.DatagramChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].<init>(java.nio.channels.DatagramChannel)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.DatagramChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioMessageChannel].<init>(io.netty.channel.Channel,java.nio.channels.SelectableChannel,int)"
    - "[io.netty.channel.socket.nio.NioDatagramChannelConfig].<init>(io.netty.channel.socket.nio.NioDatagramChannel,java.nio.channels.DatagramChannel)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:151,1"
      Dst: "[io.netty.channel.nio.AbstractNioMessageChannel].<init>(io.netty.channel.Channel,java.nio.channels.SelectableChannel,int)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:152,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannelConfig].<init>(io.netty.channel.socket.nio.NioDatagramChannel,java.nio.channels.DatagramChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].metadata()"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionDepth: 0
    returnType: "io.netty.channel.ChannelMetadata"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionDepth: 0
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 55
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 172
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.nio.NioDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.AbstractChannel].isRegistered()"
    - "[java.net.DatagramSocket].isBound()"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].isOpen()"
    - "[io.netty.channel.ChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[java.nio.channels.DatagramChannel].socket()"
    functionUses: 36
    ICount: 19
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:169"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:168"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
        - "isRegistered()"
        - "booleanValue()"
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:167"
        BranchSideFuncs:
        - "javaChannel()"
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:170"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:171"
        BranchSideFuncs:
        - "isBound()"
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:170"
        BranchSideFuncs:
        - "isBound()"
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:170"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:168"
        BranchSideFuncs:
        - "isBound()"
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:167"
        BranchSideFuncs:
        - "javaChannel()"
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:171"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:167"
        BranchSideFuncs:
        - "javaChannel()"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:168,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:169,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].isOpen()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:170,1"
      Dst: "[io.netty.channel.ChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:170,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:170,1"
      Dst: "[io.netty.channel.AbstractChannel].isRegistered()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:171,1"
      Dst: "[java.nio.channels.DatagramChannel].socket()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:171,1"
      Dst: "[java.net.DatagramSocket].isBound()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionDepth: 0
    returnType: "java.nio.channels.DatagramChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].javaChannel()"
    functionUses: 13
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:181,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].javaChannel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].isConnected()"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - "[java.nio.channels.DatagramChannel].isConnected()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:176,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:176,1"
      Dst: "[java.nio.channels.DatagramChannel].isConnected()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionDepth: 1
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].getLocalSocketAddress()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - "[java.nio.channels.DatagramChannel].socket()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:186,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:186,1"
      Dst: "[java.nio.channels.DatagramChannel].socket()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:186,1"
      Dst: "[java.net.DatagramSocket].getLocalSocketAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].remoteAddress0()"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionDepth: 1
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].getRemoteSocketAddress()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - "[java.nio.channels.DatagramChannel].socket()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:191,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:191,1"
      Dst: "[java.nio.channels.DatagramChannel].socket()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:191,1"
      Dst: "[java.net.DatagramSocket].getRemoteSocketAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 198
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioDatagramChannel].doBind0(java.net.SocketAddress)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:196,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].doBind0(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].doBind0(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 206
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.util.internal.SocketUtils].bind(java.nio.channels.DatagramChannel,java.net.SocketAddress)"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - "[java.net.DatagramSocket].bind(java.net.SocketAddress)"
    - "[java.nio.channels.DatagramChannel].socket()"
    functionUses: 2
    ICount: 11
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:200"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:203"
        BranchSideFuncs:
        - "bind(java.nio.channels.DatagramChannel,java.net.SocketAddress)"
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:202"
        BranchSideFuncs:
        - "javaChannel()"
        - "bind(java.net.SocketAddress)"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:200,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:201,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:201,1"
      Dst: "[io.netty.util.internal.SocketUtils].bind(java.nio.channels.DatagramChannel,java.net.SocketAddress)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:203,1"
      Dst: "[java.nio.channels.DatagramChannel].socket()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:203,1"
      Dst: "[java.net.DatagramSocket].bind(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.SocketUtils].bind(java.nio.channels.DatagramChannel,java.net.SocketAddress)"
    functionSourceFile: "io.netty.util.internal.SocketUtils"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 141
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.DatagramChannel"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils$6].<init>(java.nio.channels.DatagramChannel,java.net.SocketAddress)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - "[io.netty.util.internal.SocketUtils$6].run()"
    - "[java.security.PrivilegedActionException].getCause()"
    functionUses: 1
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils:130,1"
      Dst: "[io.netty.util.internal.SocketUtils$6].<init>(java.nio.channels.DatagramChannel,java.net.SocketAddress)"
    - Src: "io.netty.util.internal.SocketUtils:130,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - Src: "io.netty.util.internal.SocketUtils:138,1"
      Dst: "[java.security.PrivilegedActionException].getCause()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$6].<init>(java.nio.channels.DatagramChannel,java.net.SocketAddress)"
    functionSourceFile: "io.netty.util.internal.SocketUtils$6"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.DatagramChannel"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$6:130,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 224
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioDatagramChannel].doBind0(java.net.SocketAddress)"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].doClose()"
    - "[java.nio.channels.DatagramChannel].connect(java.net.SocketAddress)"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:210"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:214"
        BranchSideFuncs:
        - "doBind0(java.net.SocketAddress)"
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:213"
        BranchSideFuncs:
        - "javaChannel()"
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:220"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:214"
        BranchSideFuncs:
        - "doClose()"
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:213"
        BranchSideFuncs:
        - "javaChannel()"
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:220"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:223"
        BranchSideFuncs:
        - "doClose()"
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:211,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].doBind0(java.net.SocketAddress)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:216,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:216,1"
      Dst: "[java.nio.channels.DatagramChannel].connect(java.net.SocketAddress)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:221,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].doClose()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].doClose()"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 237
    functionLinenumberEnd: 240
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:238,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:238,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].doFinishConnect()"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 227
    functionLinenumberEnd: 229
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Error].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:228,1"
      Dst: "[java.lang.Error].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].doDisconnect()"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 232
    functionLinenumberEnd: 235
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - "[java.nio.channels.DatagramChannel].disconnect()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:233,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:233,1"
      Dst: "[java.nio.channels.DatagramChannel].disconnect()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].doReadMessages(java.util.List<Object>)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 242
    functionLinenumberEnd: 271
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].attemptedBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].attemptedBytesRead(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].lastBytesRead(int)"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].lastBytesRead(int)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].lastBytesRead(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].lastBytesRead()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].lastBytesRead()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].localAddress()"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.Channel$Unsafe].recvBufAllocHandle()"
    - "[io.netty.channel.ChannelConfig].getAllocator()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].attemptedBytesRead(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.channels.DatagramChannel].receive(java.nio.ByteBuffer)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 46
    EdgeCount: 126
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:254"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:258"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:257"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "add(java.lang.Object)"
        - "localAddress()"
        - "writerIndex()"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "writerIndex(int)"
        - "throwException(java.lang.Throwable)"
        - "lastBytesRead()"
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:267"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:255"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:254"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:267"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:258"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:257"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "add(java.lang.Object)"
        - "localAddress()"
        - "writerIndex()"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "writerIndex(int)"
        - "throwException(java.lang.Throwable)"
        - "lastBytesRead()"
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:267"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:null"
        BranchSideFuncs:
        - "release()"
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:267"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:270"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:269"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:243,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:244,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:245,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:245,1"
      Dst: "[io.netty.channel.Channel$Unsafe].recvBufAllocHandle()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:247,1"
      Dst: "[io.netty.channel.ChannelConfig].getAllocator()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:247,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].allocate(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:248,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:248,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].attemptedBytesRead(int)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:251,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:251,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:252,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:253,1"
      Dst: "[java.nio.channels.DatagramChannel].receive(java.nio.ByteBuffer)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:268,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:258,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead(int)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:259,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:259,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:260,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].localAddress()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:260,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:259,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:264,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].localAddress()"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 355
    functionLinenumberEnd: 357
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:356,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].doWriteMessage(java.lang.Object,io.netty.channel.ChannelOutboundBuffer)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 301
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.channel.ChannelOutboundBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].recipient()"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].recipient()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].content()"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.channel.DefaultAddressedEnvelope].content()"
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].nioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - "[io.netty.channel.AddressedEnvelope].recipient()"
    - "[io.netty.channel.AddressedEnvelope].content()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - "[java.nio.channels.DatagramChannel].send(java.nio.ByteBuffer,java.net.SocketAddress)"
    - "[java.nio.channels.DatagramChannel].write(java.nio.ByteBuffer)"
    functionUses: 1
    ICount: 33
    EdgeCount: 82
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:277"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:282"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:288"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:292"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:291"
        BranchSideFuncs:
        - "nioBufferCount()"
        - "internalNioBuffer(int,int)"
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:292"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:293"
        BranchSideFuncs:
        - "nioBuffer(int,int)"
        - "readerIndex()"
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:292"
        BranchSideFuncs:
        - "nioBuffer(int,int)"
        - "readerIndex()"
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:295"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:298"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:297"
        BranchSideFuncs:
        - "javaChannel()"
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:300"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:299"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:280,1"
      Dst: "[io.netty.channel.AddressedEnvelope].recipient()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:281,1"
      Dst: "[io.netty.channel.AddressedEnvelope].content()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:287,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:292,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:292,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:292,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:293,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:296,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:296,1"
      Dst: "[java.nio.channels.DatagramChannel].send(java.nio.ByteBuffer,java.net.SocketAddress)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:298,1"
      Dst: "[java.nio.channels.DatagramChannel].write(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].filterOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 304
    functionLinenumberEnd: 336
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isSingleDirectBuffer(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
    - "[io.netty.channel.nio.AbstractNioChannel].newDirectBuffer(io.netty.util.ReferenceCounted,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.channel.nio.AbstractNioChannel].newDirectBuffer(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].content()"
    - "[io.netty.channel.DefaultAddressedEnvelope].content()"
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].content()"
    - "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress)"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].recipient()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].recipient()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.AddressedEnvelope].content()"
    - "[io.netty.channel.AddressedEnvelope].recipient()"
    functionUses: 1
    ICount: 51
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:305"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:314"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:313"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:308"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:311"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:310"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:314"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:322"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:321"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:316"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:319"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:318"
        BranchSideFuncs:
        - "newDirectBuffer(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:322"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:333"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:325"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:334"
        BranchSideFuncs:
        - "content()"
        - "isSingleDirectBuffer(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:333"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:327"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:330"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:329"
        BranchSideFuncs:
        - "<init>(java.lang.Object,java.net.SocketAddress)"
        - "recipient()"
        - "newDirectBuffer(io.netty.util.ReferenceCounted,io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:307,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].content()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:308,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].isSingleDirectBuffer(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:311,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].newDirectBuffer(io.netty.util.ReferenceCounted,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:311,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:311,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:319,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].newDirectBuffer(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:325,1"
      Dst: "[io.netty.channel.AddressedEnvelope].content()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:330,1"
      Dst: "[io.netty.channel.AddressedEnvelope].recipient()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:330,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:334,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:334,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:335,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:335,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:335,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].isSingleDirectBuffer(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 342
    functionLinenumberEnd: 344
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isDirect()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.DuplicatedByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].isDirect()"
    - "[io.netty.buffer.CompositeByteBuf].isDirect()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBuf].isDirect()"
    - "[io.netty.buffer.PooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.PooledDirectByteBuf].isDirect()"
    - "[io.netty.buffer.SlicedByteBuf].isDirect()"
    - "[io.netty.buffer.EmptyByteBuf].isDirect()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isDirect()"
    - "[io.netty.buffer.FixedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isDirect()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].isDirect()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    functionUses: 3
    ICount: 9
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:343"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:342"
        BranchSideFuncs:
        - "isDirect()"
        - "nioBufferCount()"
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:343"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:342"
        BranchSideFuncs:
        - "isDirect()"
        - "nioBufferCount()"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:343,1"
      Dst: "[io.netty.buffer.ByteBuf].isDirect()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:343,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.channel.socket.DatagramPacket"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DatagramPacket:34,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].continueOnWriteError()"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 350
    functionLinenumberEnd: 352
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 360
    functionLinenumberEnd: 362
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:361,1"
      Dst: "[io.netty.channel.AbstractChannel].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].joinGroup(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].joinGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:366,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:366,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].joinGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].joinGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramChannelConfig].getNetworkInterface()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].localAddress()"
    - "[java.net.InetSocketAddress].getAddress()"
    - "[java.net.NetworkInterface].getByInetAddress(java.net.InetAddress)"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:373"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:376"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:375"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:372,1"
      Dst: "[io.netty.channel.socket.DatagramChannelConfig].getNetworkInterface()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:374,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].localAddress()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:374,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:374,1"
      Dst: "[java.net.NetworkInterface].getByInetAddress(java.net.InetAddress)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:376,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:379,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioDatagramChannel].checkJavaVersion()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - "[java.nio.channels.MulticastChannel].join(java.net.InetAddress,java.net.NetworkInterface)"
    - "[java.nio.channels.MulticastChannel].join(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
    - "[java.util.HashMap].<init>()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 43
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:416"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:419"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:418"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:424"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:427"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:426"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:429"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:409,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].checkJavaVersion()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:411,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:417,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:417,1"
      Dst: "[java.nio.channels.MulticastChannel].join(java.net.InetAddress,java.net.NetworkInterface)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:419,1"
      Dst: "[java.nio.channels.MulticastChannel].join(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:425,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:427,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:430,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:431,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:433,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:436,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:438,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].joinGroup(java.net.InetSocketAddress,java.net.NetworkInterface)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.NetworkInterface"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].joinGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:387,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:387,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].joinGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].joinGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.NetworkInterface"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].getAddress()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:394,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:394,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:400,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:400,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].leaveGroup(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].leaveGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:446,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:446,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].leaveGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].leaveGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioDatagramChannel].localAddress()"
    - "[java.net.InetSocketAddress].getAddress()"
    - "[java.net.NetworkInterface].getByInetAddress(java.net.InetAddress)"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:453,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].localAddress()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:453,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:453,1"
      Dst: "[java.net.NetworkInterface].getByInetAddress(java.net.InetAddress)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:452,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:455,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioDatagramChannel].checkJavaVersion()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.nio.channels.MembershipKey].networkInterface()"
    - "[java.net.NetworkInterface].equals(java.lang.Object)"
    - "[java.nio.channels.MembershipKey].sourceAddress()"
    - "[java.net.InetAddress].equals(java.lang.Object)"
    - "[java.nio.channels.MembershipKey].drop()"
    - "[java.util.Iterator].remove()"
    - "[java.util.List].isEmpty()"
    - "[java.util.Map].remove(java.lang.Object)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:490"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:510"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:509"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:492"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:510"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:509"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:495"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:505"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:504"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:497"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:504"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:503"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:498"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:498"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:497"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:498"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:500"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:499"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:498"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:504"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:503"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:499"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:504"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:503"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:505"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:510"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:509"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:484,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].checkJavaVersion()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:486,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:491,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:493,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:495,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:496,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:497,1"
      Dst: "[java.nio.channels.MembershipKey].networkInterface()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:497,1"
      Dst: "[java.net.NetworkInterface].equals(java.lang.Object)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:498,1"
      Dst: "[java.nio.channels.MembershipKey].sourceAddress()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:499,1"
      Dst: "[java.net.InetAddress].equals(java.lang.Object)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:500,1"
      Dst: "[java.nio.channels.MembershipKey].drop()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:501,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:505,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:506,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:512,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 9
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].leaveGroup(java.net.InetSocketAddress,java.net.NetworkInterface)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.NetworkInterface"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].leaveGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:463,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:463,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].leaveGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].leaveGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.NetworkInterface"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].getAddress()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:470,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:470,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:476,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:476,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].block(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].block(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:523,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:523,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].block(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].block(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioDatagramChannel].checkJavaVersion()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.nio.channels.MembershipKey].networkInterface()"
    - "[java.net.NetworkInterface].equals(java.lang.Object)"
    - "[java.nio.channels.MembershipKey].block(java.net.InetAddress)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:541"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:553"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:552"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:543"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:553"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:552"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:544"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:550"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:534,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].checkJavaVersion()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:536,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:542,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:543,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:543,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:543,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:544,1"
      Dst: "[java.nio.channels.MembershipKey].networkInterface()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:544,1"
      Dst: "[java.net.NetworkInterface].equals(java.lang.Object)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:546,1"
      Dst: "[java.nio.channels.MembershipKey].block(java.net.InetAddress)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:548,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:554,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].block(java.net.InetAddress,java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].block(java.net.InetAddress,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:564,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:564,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].block(java.net.InetAddress,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].block(java.net.InetAddress,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetAddress"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioDatagramChannel].localAddress()"
    - "[java.net.InetSocketAddress].getAddress()"
    - "[java.net.NetworkInterface].getByInetAddress(java.net.InetAddress)"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].block(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:577,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].localAddress()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:577,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:577,1"
      Dst: "[java.net.NetworkInterface].getByInetAddress(java.net.InetAddress)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:575,1"
      Dst: "[io.netty.channel.socket.nio.NioDatagramChannel].block(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:580,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].setReadPending(boolean)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].setReadPending(boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:588,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].setReadPending(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].clearReadPending0()"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 591
    functionLinenumberEnd: 594
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].clearReadPending()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:592,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].clearReadPending()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].closeOnReadError(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 598
    functionLinenumberEnd: 603
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioMessageChannel].closeOnReadError(java.lang.Throwable)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:599"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:602"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:601"
        BranchSideFuncs:
        - "closeOnReadError(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:602,1"
      Dst: "[io.netty.channel.nio.AbstractNioMessageChannel].closeOnReadError(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioDatagramChannel].continueReading(io.netty.channel.RecvByteBufAllocator$Handle)"
    functionSourceFile: "io.netty.channel.socket.nio.NioDatagramChannel"
    linkageType: ""
    functionLinenumber: 606
    functionLinenumberEnd: 614
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].continueReading()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].continueReading()"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].continueReading()"
    - "[io.netty.channel.RecvByteBufAllocator$ExtendedHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].continueReading()"
    functionUses: 1
    ICount: 10
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioDatagramChannel:607"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioDatagramChannel:612"
        BranchSideFuncs:
        - "continueReading()"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:611,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$ExtendedHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - Src: "io.netty.channel.socket.nio.NioDatagramChannel:613,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].continueReading()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].<init>(io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelHandler,io.netty.channel.ChannelHandler,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 7
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    - "io.netty.handler.codec.http2.Http2ConnectionDecoder"
    - "io.netty.handler.codec.http2.Http2Settings"
    - "io.netty.channel.ChannelHandler"
    - "io.netty.channel.ChannelHandler"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec].<init>(io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2Settings,boolean,boolean)"
    - "[java.util.ArrayDeque].<init>(int)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].<init>(java.util.Queue,int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:106,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].<init>(io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2Settings,boolean,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:90,1"
      Dst: "[java.util.ArrayDeque].<init>(int)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:90,1"
      Dst: "[io.netty.handler.codec.http2.MaxCapacityQueue].<init>(java.util.Queue,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttpClientUpgrade()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 120
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onHttpClientUpgrade()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodec:114"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:118"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:117"
        BranchSideFuncs:
        - "onHttpClientUpgrade()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:115,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:118,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].onHttpClientUpgrade()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].onHttpClientUpgrade()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 167
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].isServer()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].prefaceSent()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].prefaceReceived()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].prefaceReceived()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].createStream(int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - "[io.netty.handler.codec.http2.Http2ConnectionDecoder].prefaceReceived()"
    - "[io.netty.handler.codec.http2.Http2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].createStream(int,boolean)"
    functionUses: 2
    ICount: 25
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:152"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:155"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:154"
        BranchSideFuncs:
        - "prefaceSent()"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:155"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:159"
        BranchSideFuncs:
        - "prefaceReceived()"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:160"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:165"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:164"
        BranchSideFuncs:
        - "createStream(int,boolean)"
        - "local()"
        - "connection()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:152,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:152,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:153,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:155,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].prefaceSent()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:160,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionDecoder].prefaceReceived()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:165,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].local()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:165,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].createStream(int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].prefaceSent()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder].prefaceSent()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder].prefaceSent()"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:143"
        BranchSideFuncs:
        - "prefaceSent()"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:143"
        BranchSideFuncs:
        - "prefaceSent()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:144,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder].prefaceSent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].handlerAdded0(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 128
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].eventLoop()"
    functionUses: 1
    ICount: 11
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodec:123"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:126"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:123,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:123,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:123,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:124,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].handlerRemoved0(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 135
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].handlerRemoved0(io.netty.channel.ChannelHandlerContext)"
    - "[java.util.LinkedList].clear()"
    - "[java.util.AbstractQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].clear()"
    - "[java.util.ArrayDeque].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].clear()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].clear()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].clear()"
    - "[io.netty.util.internal.EmptyPriorityQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].clear()"
    - "[io.netty.util.internal.DefaultPriorityQueue].clear()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].clear()"
    - "[java.util.concurrent.LinkedBlockingQueue].clear()"
    - "[java.util.concurrent.LinkedBlockingDeque].clear()"
    - "[java.util.Collection].clear()"
    functionUses: 1
    ICount: 6
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:131,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].handlerRemoved0(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:133,1"
      Dst: "[java.util.Collection].clear()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].handlerRemoved0(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 411
    functionLinenumberEnd: 417
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:412"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:416"
        BranchSideFuncs:
        - "handlerRemoved(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:415"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:413,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 151
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Frame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].stream()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].stream()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].fireChildRead(io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2GoAwayFrame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2GoAwayFrame)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2StreamFrame].stream()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 13
    ICount: 18
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodec:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:145"
        BranchSideFuncs:
        - "fireChildRead(io.netty.handler.codec.http2.Http2Frame)"
        - "stream()"
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:144"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodec:145"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:149"
        BranchSideFuncs:
        - "onHttp2GoAwayFrame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2GoAwayFrame)"
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:148"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:141,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrame].stream()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:142,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].fireChildRead(io.netty.handler.codec.http2.Http2Frame)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:146,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2GoAwayFrame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2GoAwayFrame)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:149,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2GoAwayFrame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2GoAwayFrame)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 239
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2GoAwayFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].lastStreamId()"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec$1].<init>(io.netty.handler.codec.http2.Http2MultiplexCodec,io.netty.handler.codec.http2.Http2GoAwayFrame)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].forEachActiveStream(io.netty.handler.codec.http2.Http2FrameStreamVisitor)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close()"
    - "[io.netty.handler.codec.http2.Http2GoAwayFrame].lastStreamId()"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 1
    ICount: 14
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodec:216"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:221"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
        - "forEachActiveStream(io.netty.handler.codec.http2.Http2FrameStreamVisitor)"
        - "<init>(io.netty.handler.codec.http2.Http2MultiplexCodec,io.netty.handler.codec.http2.Http2GoAwayFrame)"
        - "close()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:216,1"
      Dst: "[io.netty.handler.codec.http2.Http2GoAwayFrame].lastStreamId()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:222,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodec$1].<init>(io.netty.handler.codec.http2.Http2MultiplexCodec,io.netty.handler.codec.http2.Http2GoAwayFrame)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:222,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].forEachActiveStream(io.netty.handler.codec.http2.Http2FrameStreamVisitor)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:235,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:236,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec$1].<init>(io.netty.handler.codec.http2.Http2MultiplexCodec,io.netty.handler.codec.http2.Http2GoAwayFrame)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec$1"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2MultiplexCodec"
    - "io.netty.handler.codec.http2.Http2GoAwayFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec$1:222,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec].forEachActiveStream(io.netty.handler.codec.http2.Http2FrameStreamVisitor)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 206
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameStreamVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].numActiveStreams()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$1].<init>(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.handler.codec.http2.Http2FrameStreamVisitor)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.handler.codec.http2.Http2Connection].numActiveStreams()"
    - "[io.netty.handler.codec.http2.Http2Connection].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    functionUses: 3
    ICount: 19
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameCodec:191"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec:192"
        BranchSideFuncs:
        - "numActiveStreams()"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec:191"
        BranchSideFuncs:
        - "numActiveStreams()"
    - Branch String: "io.netty.handler.codec.http2.Http2FrameCodec:191"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec:192"
        BranchSideFuncs:
        - "numActiveStreams()"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec:191"
        BranchSideFuncs:
        - "numActiveStreams()"
    - Branch String: "io.netty.handler.codec.http2.Http2FrameCodec:192"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec:205"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.handler.codec.http2.Http2FrameStreamVisitor)"
        - "forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
        - "connection()"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec:204"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:191,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:191,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:191,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:192,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:192,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].numActiveStreams()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:193,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$1].<init>(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.handler.codec.http2.Http2FrameStreamVisitor)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:193,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$1].<init>(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.handler.codec.http2.Http2FrameStreamVisitor)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$1"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameCodec"
    - "io.netty.handler.codec.http2.Http2FrameStreamVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$1:193,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2StreamStateChanged(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 197
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].state()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].id()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].isServer()"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec$Http2MultiplexCodecStreamChannel].<init>(io.netty.handler.codec.http2.Http2MultiplexCodec,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,io.netty.channel.ChannelHandler)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].closeOutbound()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].register(io.netty.channel.Channel)"
    - "[io.netty.channel.SingleThreadEventLoop].register(io.netty.channel.Channel)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler].registerDone(io.netty.channel.ChannelFuture)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].streamClosed()"
    - "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.channel.EventLoopGroup].register(io.netty.channel.Channel)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 52
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodec:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:163"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodec:164"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:169"
        BranchSideFuncs:
        - "isServer()"
        - "id()"
        - "connection()"
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodec:170"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:176"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http2.Http2MultiplexCodec,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,io.netty.channel.ChannelHandler)"
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodec:170"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:176"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http2.Http2MultiplexCodec,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,io.netty.channel.ChannelHandler)"
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodec:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:174"
        BranchSideFuncs:
        - "closeOutbound()"
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:173"
        BranchSideFuncs:
        - "closeOutbound()"
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodec:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:174"
        BranchSideFuncs:
        - "closeOutbound()"
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:173"
        BranchSideFuncs:
        - "closeOutbound()"
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodec:180"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:183"
        BranchSideFuncs:
        - "registerDone(io.netty.channel.ChannelFuture)"
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:182"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodec:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:196"
        BranchSideFuncs:
        - "streamClosed()"
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:154,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].state()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:154,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:156,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].id()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:170,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:170,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:173,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:174,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodec$Http2MultiplexCodecStreamChannel].<init>(io.netty.handler.codec.http2.Http2MultiplexCodec,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:175,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].closeOutbound()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:179,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:179,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:179,1"
      Dst: "[io.netty.channel.EventLoopGroup].register(io.netty.channel.Channel)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:180,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:181,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexHandler].registerDone(io.netty.channel.ChannelFuture)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:183,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:189,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].streamClosed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 11
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].state()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream"
    linkageType: ""
    functionLinenumber: 754
    functionLinenumberEnd: 757
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Stream$State"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].state()"
    - "[io.netty.handler.codec.http2.Http2Stream].state()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:756"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:754"
        BranchSideFuncs:
        - "state()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:756,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].state()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].id()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream"
    linkageType: ""
    functionLinenumber: 748
    functionLinenumberEnd: 751
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    functionUses: 25
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:750"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:748"
        BranchSideFuncs:
        - "id()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:750,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec$Http2MultiplexCodecStreamChannel].<init>(io.netty.handler.codec.http2.Http2MultiplexCodec,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec$Http2MultiplexCodecStreamChannel"
    linkageType: ""
    functionLinenumber: 291
    functionLinenumberEnd: 295
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2MultiplexCodec"
    - "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].<init>(io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,int,io.netty.channel.ChannelHandler)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].access$004(io.netty.handler.codec.http2.Http2MultiplexCodec)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec$Http2MultiplexCodecStreamChannel:293,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodec].access$004(io.netty.handler.codec.http2.Http2MultiplexCodec)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec$Http2MultiplexCodecStreamChannel:293,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].<init>(io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,int,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].access$004(io.netty.handler.codec.http2.Http2MultiplexCodec)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2MultiplexCodec"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexHandler].registerDone(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexHandler"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 145
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.CompleteChannelFuture].channel()"
    - "[io.netty.channel.DefaultChannelPromise].channel()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].channel()"
    - "[io.netty.channel.VoidChannelPromise].channel()"
    - "[io.netty.channel.AbstractChannel].isRegistered()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isRegistered()"
    - "[io.netty.channel.AbstractChannel].close()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].close()"
    - "[io.netty.channel.embedded.EmbeddedChannel].close()"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].closeForcibly()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].closeForcibly()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].closeForcibly()"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.embedded.EmbeddedChannel].unsafe()"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.channel.ChannelFuture].channel()"
    - "[io.netty.channel.Channel].isRegistered()"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    - "[io.netty.channel.Channel].unsafe()"
    - "[io.netty.channel.Channel$Unsafe].closeForcibly()"
    functionUses: 3
    ICount: 11
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexHandler:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexHandler:144"
        BranchSideFuncs:
        - "isRegistered()"
        - "channel()"
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexHandler:143"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexHandler:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexHandler:141"
        BranchSideFuncs:
        - "close()"
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexHandler:140"
        BranchSideFuncs:
        - "unsafe()"
        - "closeForcibly()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler:136,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler:137,1"
      Dst: "[io.netty.channel.ChannelFuture].channel()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler:138,1"
      Dst: "[io.netty.channel.Channel].isRegistered()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler:139,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler:141,1"
      Dst: "[io.netty.channel.Channel].unsafe()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler:141,1"
      Dst: "[io.netty.channel.Channel$Unsafe].closeForcibly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].newOutboundStream()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 201
    functionDepth: 4
    returnType: "io.netty.handler.codec.http2.Http2StreamChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec$Http2MultiplexCodecStreamChannel].<init>(io.netty.handler.codec.http2.Http2MultiplexCodec,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,io.netty.channel.ChannelHandler)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].newStream()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:200,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].newStream()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:200,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodec$Http2MultiplexCodecStreamChannel].<init>(io.netty.handler.codec.http2.Http2MultiplexCodec,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec].newStream()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionDepth: 3
    returnType: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].<init>()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:182,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream"
    linkageType: ""
    functionLinenumber: 729
    functionLinenumberEnd: 737
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.http2.Http2FrameStreamEvent].stateChanged(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.Http2FrameStreamEvent].writabilityChanged(io.netty.handler.codec.http2.Http2FrameStream)"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:730,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:735,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameStreamEvent].stateChanged(io.netty.handler.codec.http2.Http2FrameStream)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:736,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameStreamEvent].writabilityChanged(io.netty.handler.codec.http2.Http2FrameStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameStreamEvent].stateChanged(io.netty.handler.codec.http2.Http2FrameStream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameStreamEvent"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2FrameStreamEvent"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameStreamEvent].<init>(io.netty.handler.codec.http2.Http2FrameStream,io.netty.handler.codec.http2.Http2FrameStreamEvent$Type)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameStreamEvent:46,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameStreamEvent].<init>(io.netty.handler.codec.http2.Http2FrameStream,io.netty.handler.codec.http2.Http2FrameStreamEvent$Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameStreamEvent].<init>(io.netty.handler.codec.http2.Http2FrameStream,io.netty.handler.codec.http2.Http2FrameStreamEvent$Type)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameStreamEvent"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameStream"
    - "io.netty.handler.codec.http2.Http2FrameStreamEvent$Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameStreamEvent:32,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameStreamEvent].writabilityChanged(io.netty.handler.codec.http2.Http2FrameStream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameStreamEvent"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2FrameStreamEvent"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameStreamEvent].<init>(io.netty.handler.codec.http2.Http2FrameStream,io.netty.handler.codec.http2.Http2FrameStreamEvent$Type)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameStreamEvent:50,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameStreamEvent].<init>(io.netty.handler.codec.http2.Http2FrameStream,io.netty.handler.codec.http2.Http2FrameStreamEvent$Type)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2FrameStreamException(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameStreamException)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 214
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2FrameStreamException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameStreamException].stream()"
    - "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - "[java.lang.Throwable].getCause()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].closeForcibly()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].closeForcibly()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].closeForcibly()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.Channel$Unsafe].closeForcibly()"
    functionUses: 1
    ICount: 18
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:205,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameStreamException].stream()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:209,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:209,1"
      Dst: "[java.lang.Throwable].getCause()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:209,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:211,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:211,1"
      Dst: "[io.netty.channel.Channel$Unsafe].closeForcibly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameStreamException].stream()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameStreamException"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 248
    functionDepth: 18
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].processPendingReadCompleteQueue()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].channelReadComplete0(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:245,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodec].processPendingReadCompleteQueue()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:246,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].channelReadComplete0(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].processPendingReadCompleteQueue()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: 249
    functionLinenumberEnd: 269
    functionDepth: 17
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].fireChildReadComplete()"
    - "[java.util.LinkedList].clear()"
    - "[java.util.AbstractQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].clear()"
    - "[java.util.ArrayDeque].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].clear()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].clear()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].clear()"
    - "[io.netty.util.internal.EmptyPriorityQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].clear()"
    - "[io.netty.util.internal.DefaultPriorityQueue].clear()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].clear()"
    - "[java.util.concurrent.LinkedBlockingQueue].clear()"
    - "[java.util.concurrent.LinkedBlockingDeque].clear()"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].flush0(io.netty.channel.ChannelHandlerContext)"
    - "[java.util.Queue].poll()"
    - "[java.util.Collection].clear()"
    functionUses: 2
    ICount: 23
    EdgeCount: 52
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodec:257"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:260"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:259"
        BranchSideFuncs:
        - "fireChildReadComplete()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:256,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:260,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].fireChildReadComplete()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:264,1"
      Dst: "[java.util.Collection].clear()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:266,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodec].flush0(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].flush0(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 289
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].flush(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:287,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].flush(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].flush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 204
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].flowController()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].flowController()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].writePendingBytes()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2ConnectionEncoder].flowController()"
    - "[io.netty.handler.codec.http2.Http2RemoteFlowController].writePendingBytes()"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 7
    ICount: 16
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:196,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionEncoder].flowController()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:196,1"
      Dst: "[io.netty.handler.codec.http2.Http2RemoteFlowController].writePendingBytes()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:197,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:199,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:201,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].channelReadComplete0(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 560
    functionLinenumberEnd: 572
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].discardSomeReadBytes()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.embedded.EmbeddedChannel].config()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].config()"
    - "[io.netty.bootstrap.FailedChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.local.LocalServerChannel].config()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].config()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].config()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].isAutoRead()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].read()"
    - "[io.netty.channel.AbstractChannelHandlerContext].read()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelConfig].isAutoRead()"
    - "[io.netty.channel.ChannelHandlerContext].read()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    functionUses: 2
    ICount: 10
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:566"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:570"
        BranchSideFuncs:
        - "read()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:569"
        BranchSideFuncs:
        - "fireChannelReadComplete()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:561,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].discardSomeReadBytes()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:566,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:566,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:566,1"
      Dst: "[io.netty.channel.ChannelConfig].isAutoRead()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:567,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].read()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:570,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: 270
    functionLinenumberEnd: 274
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:272,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 285
    functionDepth: 17
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannel].isWritable()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isWritable()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].forEachActiveStream(io.netty.handler.codec.http2.Http2FrameStreamVisitor)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].isWritable()"
    functionUses: 2
    ICount: 9
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodec:277"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec:282"
        BranchSideFuncs:
        - "channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:277,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:277,1"
      Dst: "[io.netty.channel.Channel].isWritable()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:280,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].forEachActiveStream(io.netty.handler.codec.http2.Http2FrameStreamVisitor)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:283,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 441
    functionLinenumberEnd: 450
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannel].isWritable()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isWritable()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].channelWritabilityChanged()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].flowController()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].flowController()"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].isWritable()"
    - "[io.netty.handler.codec.http2.Http2ConnectionEncoder].flowController()"
    - "[io.netty.handler.codec.http2.Http2RemoteFlowController].channelWritabilityChanged()"
    functionUses: 3
    ICount: 15
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:442"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:445"
        BranchSideFuncs:
        - "flush(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:444"
        BranchSideFuncs:
        - "channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
        - "flowController()"
        - "channelWritabilityChanged()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:442,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:442,1"
      Dst: "[io.netty.channel.Channel].isWritable()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:443,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].flush(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:445,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionEncoder].flowController()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:445,1"
      Dst: "[io.netty.handler.codec.http2.Http2RemoteFlowController].channelWritabilityChanged()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:447,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelInboundHandlerAdapter].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.ChannelInboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelWritabilityChanged()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelWritabilityChanged()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelWritabilityChanged()"
    functionUses: 6
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelInboundHandlerAdapter:129,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelWritabilityChanged()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].access$100(io.netty.handler.codec.http2.Http2MultiplexCodec)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2MultiplexCodec"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].access$200(io.netty.handler.codec.http2.Http2MultiplexCodec)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "java.util.Queue"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2MultiplexCodec"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec].access$300(io.netty.handler.codec.http2.Http2MultiplexCodec)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 18
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2MultiplexCodec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].processPendingReadCompleteQueue()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec:86,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodec].processPendingReadCompleteQueue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.TcpDnsResponseDecoder$1].<init>(io.netty.handler.codec.dns.TcpDnsResponseDecoder,io.netty.handler.codec.dns.DnsRecordDecoder)"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsResponseDecoder$1"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.TcpDnsResponseDecoder"
    - "io.netty.handler.codec.dns.DnsRecordDecoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsResponseDecoder].<init>(io.netty.handler.codec.dns.DnsRecordDecoder)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsResponseDecoder$1:45,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponseDecoder].<init>(io.netty.handler.codec.dns.DnsRecordDecoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.TcpDnsResponseDecoder$1].newResponse(java.net.SocketAddress,java.net.SocketAddress,int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsResponseDecoder$1"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 3
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 5
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "int"
    - "io.netty.handler.codec.dns.DnsOpCode"
    - "io.netty.handler.codec.dns.DnsResponseCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].<init>(int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsResponseDecoder$1:49,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].<init>(int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectReturnCode].values()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectReturnCode"
    linkageType: ""
    functionLinenumber: 21
    functionLinenumberEnd: 23
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttConnectReturnCode[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnectReturnCode:22,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectReturnCode].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectReturnCode"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttConnectReturnCode"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnectReturnCode:22,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectReturnCode].<init>(java.lang.String,int,byte)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectReturnCode"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 27
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnectReturnCode:67,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectReturnCode].byteValue()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectReturnCode"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectReturnCode].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectReturnCode"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttConnectReturnCode"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttConnectReturnCode:83"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttConnectReturnCode:86"
        BranchSideFuncs:
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttConnectReturnCode:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnectReturnCode:84,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttConnectReturnCode:84,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttConnectReturnCode:84,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttConnectReturnCode:84,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttConnectReturnCode:84,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.Channel,int)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue"
    linkageType: ""
    functionLinenumber: 2287
    functionLinenumberEnd: 2291
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.channel.Channel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractCoalescingBufferQueue].<init>(io.netty.channel.Channel,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2289,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].<init>(io.netty.channel.Channel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue].compose(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue"
    linkageType: ""
    functionLinenumber: 2293
    functionLinenumberEnd: 2306
    functionDepth: 6
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].numComponents()"
    - "[io.netty.buffer.CompositeByteBuf].numComponents()"
    - "[io.netty.handler.ssl.SslHandler].access$2800(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalComponent(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalComponent(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].copyAndCompose(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 23
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2295"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2304"
        BranchSideFuncs:
        - "numComponents()"
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2303"
        BranchSideFuncs:
        - "access$2800(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2298"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2300"
        BranchSideFuncs:
        - "internalComponent(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2299"
        BranchSideFuncs:
        - "addComponent(boolean,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2299"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2302"
        BranchSideFuncs:
        - "addComponent(boolean,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2301"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2304"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2305"
        BranchSideFuncs:
        - "copyAndCompose(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2304"
        BranchSideFuncs:
        - "copyAndCompose(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2297,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].numComponents()"
    - Src: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2299,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].internalComponent(int)"
    - Src: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2299,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$2800(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2300,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2305,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].copyAndCompose(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.CompositeByteBuf].internalComponent(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1575
    functionLinenumberEnd: 1578
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].slice()"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1576,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1577,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].slice()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$2800(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].attemptCopyToCumulation(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].attemptCopyToCumulation(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].attemptCopyToCumulation(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 2334
    functionLinenumberEnd: 2349
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isWritable(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].isWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].isWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].isWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].isWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].isWritable(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].isWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.ByteBufUtil].ensureWritableSuccess(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].isWritable(int)"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 19
    EdgeCount: 71
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:2337"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2347"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:2341"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2340"
        BranchSideFuncs:
        - "isWritable(int)"
    - Branch String: "io.netty.handler.ssl.SslHandler:2341"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2343"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "release()"
    - Branch String: "io.netty.handler.ssl.SslHandler:2341"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2347"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:2343"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2348"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "release()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:2347"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:2335,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.ssl.SslHandler:2336,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.handler.ssl.SslHandler:2341,1"
      Dst: "[io.netty.buffer.ByteBuf].isWritable(int)"
    - Src: "io.netty.handler.ssl.SslHandler:2343,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int,boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:2343,1"
      Dst: "[io.netty.buffer.ByteBufUtil].ensureWritableSuccess(int)"
    - Src: "io.netty.handler.ssl.SslHandler:2344,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.SslHandler:2345,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[io.netty.buffer.ByteBufUtil].ensureWritableSuccess(int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:191"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:190"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:191"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:190"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue].composeFirst(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue"
    linkageType: ""
    functionLinenumber: 2309
    functionLinenumberEnd: 2326
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].access$2900(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 22
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2310"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2325"
        BranchSideFuncs:
        - "access$2900(io.netty.handler.ssl.SslHandler)"
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2324"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2312"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2315"
        BranchSideFuncs:
        - "directBuffer(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2314"
        BranchSideFuncs:
        - "heapBuffer(int)"
        - "readableBytes()"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2312,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$2900(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2313,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - Src: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2313,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - Src: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2315,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - Src: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2318,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2320,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2321,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue:2323,1"
      Dst: "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.SslHandler].access$2900(io.netty.handler.ssl.SslHandler)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslHandler$SslEngineType"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue].removeEmptyValue()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue"
    linkageType: ""
    functionLinenumber: 2329
    functionLinenumberEnd: 2331
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.BiDnsQueryLifecycleObserver].<init>(io.netty.resolver.dns.DnsQueryLifecycleObserver,io.netty.resolver.dns.DnsQueryLifecycleObserver)"
    functionSourceFile: "io.netty.resolver.dns.BiDnsQueryLifecycleObserver"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.resolver.dns.DnsQueryLifecycleObserver"
    - "io.netty.resolver.dns.DnsQueryLifecycleObserver"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.BiDnsQueryLifecycleObserver:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.BiDnsQueryLifecycleObserver:40,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.BiDnsQueryLifecycleObserver].queryWritten(java.net.InetSocketAddress,io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.resolver.dns.BiDnsQueryLifecycleObserver"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.InetSocketAddress"
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.BiDnsQueryLifecycleObserver].queryWritten(java.net.InetSocketAddress,io.netty.channel.ChannelFuture)"
    - "[io.netty.resolver.dns.NoopDnsQueryLifecycleObserver].queryWritten(java.net.InetSocketAddress,io.netty.channel.ChannelFuture)"
    - "[io.netty.resolver.dns.LoggingDnsQueryLifecycleObserver:io.netty.resolver.dns.NoopDnsQueryLifecycleObserver].queryWritten(java.net.InetSocketAddress,io.netty.channel.ChannelFuture)"
    - "[io.netty.resolver.dns.DnsQueryLifecycleObserver].queryWritten(java.net.InetSocketAddress,io.netty.channel.ChannelFuture)"
    functionUses: 4
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.BiDnsQueryLifecycleObserver:47,1"
      Dst: "[io.netty.resolver.dns.DnsQueryLifecycleObserver].queryWritten(java.net.InetSocketAddress,io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.BiDnsQueryLifecycleObserver].queryCancelled(int)"
    functionSourceFile: "io.netty.resolver.dns.BiDnsQueryLifecycleObserver"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.BiDnsQueryLifecycleObserver].queryCancelled(int)"
    - "[io.netty.resolver.dns.LoggingDnsQueryLifecycleObserver].queryCancelled(int)"
    - "[io.netty.resolver.dns.NoopDnsQueryLifecycleObserver].queryCancelled(int)"
    - "[io.netty.resolver.dns.DnsQueryLifecycleObserver].queryCancelled(int)"
    functionUses: 6
    ICount: 12
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.BiDnsQueryLifecycleObserver:56,1"
      Dst: "[io.netty.resolver.dns.DnsQueryLifecycleObserver].queryCancelled(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.BiDnsQueryLifecycleObserver].queryRedirected(java.util.List<InetSocketAddress>)"
    functionSourceFile: "io.netty.resolver.dns.BiDnsQueryLifecycleObserver"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsQueryLifecycleObserver"
    argCount: 1
    argTypes:
    - "java.util.List<InetSocketAddress>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.BiDnsQueryLifecycleObserver].queryRedirected(java.util.List)"
    - "[io.netty.resolver.dns.LoggingDnsQueryLifecycleObserver].queryRedirected(java.util.List)"
    - "[io.netty.resolver.dns.NoopDnsQueryLifecycleObserver].queryRedirected(java.util.List)"
    - "[io.netty.resolver.dns.DnsQueryLifecycleObserver].queryRedirected(java.util.List)"
    functionUses: 4
    ICount: 12
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.BiDnsQueryLifecycleObserver:65,1"
      Dst: "[io.netty.resolver.dns.DnsQueryLifecycleObserver].queryRedirected(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.BiDnsQueryLifecycleObserver].queryCNAMEd(io.netty.handler.codec.dns.DnsQuestion)"
    functionSourceFile: "io.netty.resolver.dns.BiDnsQueryLifecycleObserver"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsQueryLifecycleObserver"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsQuestion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.LoggingDnsQueryLifecycleObserver].queryCNAMEd(io.netty.handler.codec.dns.DnsQuestion)"
    - "[io.netty.resolver.dns.BiDnsQueryLifecycleObserver].queryCNAMEd(io.netty.handler.codec.dns.DnsQuestion)"
    - "[io.netty.resolver.dns.NoopDnsQueryLifecycleObserver].queryCNAMEd(io.netty.handler.codec.dns.DnsQuestion)"
    - "[io.netty.resolver.dns.DnsQueryLifecycleObserver].queryCNAMEd(io.netty.handler.codec.dns.DnsQuestion)"
    functionUses: 4
    ICount: 12
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.BiDnsQueryLifecycleObserver:75,1"
      Dst: "[io.netty.resolver.dns.DnsQueryLifecycleObserver].queryCNAMEd(io.netty.handler.codec.dns.DnsQuestion)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.BiDnsQueryLifecycleObserver].queryNoAnswer(io.netty.handler.codec.dns.DnsResponseCode)"
    functionSourceFile: "io.netty.resolver.dns.BiDnsQueryLifecycleObserver"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsQueryLifecycleObserver"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsResponseCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.BiDnsQueryLifecycleObserver].queryNoAnswer(io.netty.handler.codec.dns.DnsResponseCode)"
    - "[io.netty.resolver.dns.LoggingDnsQueryLifecycleObserver].queryNoAnswer(io.netty.handler.codec.dns.DnsResponseCode)"
    - "[io.netty.resolver.dns.NoopDnsQueryLifecycleObserver].queryNoAnswer(io.netty.handler.codec.dns.DnsResponseCode)"
    - "[io.netty.resolver.dns.DnsQueryLifecycleObserver].queryNoAnswer(io.netty.handler.codec.dns.DnsResponseCode)"
    functionUses: 4
    ICount: 12
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.BiDnsQueryLifecycleObserver:85,1"
      Dst: "[io.netty.resolver.dns.DnsQueryLifecycleObserver].queryNoAnswer(io.netty.handler.codec.dns.DnsResponseCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.BiDnsQueryLifecycleObserver].queryFailed(java.lang.Throwable)"
    functionSourceFile: "io.netty.resolver.dns.BiDnsQueryLifecycleObserver"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.LoggingDnsQueryLifecycleObserver].queryFailed(java.lang.Throwable)"
    - "[io.netty.resolver.dns.BiDnsQueryLifecycleObserver].queryFailed(java.lang.Throwable)"
    - "[io.netty.resolver.dns.NoopDnsQueryLifecycleObserver].queryFailed(java.lang.Throwable)"
    - "[io.netty.resolver.dns.DnsQueryLifecycleObserver].queryFailed(java.lang.Throwable)"
    functionUses: 10
    ICount: 12
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.BiDnsQueryLifecycleObserver:95,1"
      Dst: "[io.netty.resolver.dns.DnsQueryLifecycleObserver].queryFailed(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.BiDnsQueryLifecycleObserver].querySucceed()"
    functionSourceFile: "io.netty.resolver.dns.BiDnsQueryLifecycleObserver"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.BiDnsQueryLifecycleObserver].querySucceed()"
    - "[io.netty.resolver.dns.LoggingDnsQueryLifecycleObserver].querySucceed()"
    - "[io.netty.resolver.dns.LoggingDnsQueryLifecycleObserver:io.netty.resolver.dns.NoopDnsQueryLifecycleObserver].querySucceed()"
    - "[io.netty.resolver.dns.DnsQueryLifecycleObserver].querySucceed()"
    functionUses: 5
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.BiDnsQueryLifecycleObserver:104,1"
      Dst: "[io.netty.resolver.dns.DnsQueryLifecycleObserver].querySucceed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].<init>(io.netty.channel.AbstractChannel$AbstractUnsafe$5)"
    functionSourceFile: "io.netty.channel.AbstractChannel$AbstractUnsafe$5$1"
    linkageType: ""
    functionLinenumber: 713
    functionLinenumberEnd: 715
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannel$AbstractUnsafe$5"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$5$1:714,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    functionSourceFile: "io.netty.channel.AbstractChannel$AbstractUnsafe$5$1"
    linkageType: ""
    functionLinenumber: 716
    functionLinenumberEnd: 724
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].failFlushed(java.lang.Throwable,boolean)"
    - "[io.netty.channel.ChannelOutboundBuffer].close(java.nio.channels.ClosedChannelException)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].access$1000(io.netty.channel.AbstractChannel$AbstractUnsafe,boolean)"
    functionUses: 49
    ICount: 22
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.AbstractChannel$AbstractUnsafe$5$1:717"
      Branch Sides:
      - BranchSide: "io.netty.channel.AbstractChannel$AbstractUnsafe$5$1:721"
        BranchSideFuncs:
        - "access$1000(io.netty.channel.AbstractChannel$AbstractUnsafe,boolean)"
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$5$1:719,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].failFlushed(java.lang.Throwable,boolean)"
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$5$1:720,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].close(java.nio.channels.ClosedChannelException)"
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$5$1:722,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].access$1000(io.netty.channel.AbstractChannel$AbstractUnsafe,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].failFlushed(java.lang.Throwable,boolean)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 652
    functionLinenumberEnd: 668
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Throwable"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].remove0(java.lang.Throwable,boolean)"
    functionUses: 6
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:653"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:658"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:657"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:660"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:660"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:659"
        BranchSideFuncs:
        - "remove0(java.lang.Throwable,boolean)"
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:660,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].remove0(java.lang.Throwable,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].close(java.nio.channels.ClosedChannelException)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 710
    functionLinenumberEnd: 713
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.ClosedChannelException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].close(java.lang.Throwable,boolean)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:711,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].close(java.lang.Throwable,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].close(java.lang.Throwable,boolean)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 669
    functionLinenumberEnd: 709
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Throwable"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer$3].<init>(io.netty.channel.ChannelOutboundBuffer,java.lang.Throwable,boolean)"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isOpen()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isOpen()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isOpen()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isOpen()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isOpen()"
    - "[io.netty.channel.local.LocalChannel].isOpen()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isOpen()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isOpen()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isOpen()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isOpen()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isOpen()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isOpen()"
    - "[io.netty.channel.rxtx.RxtxChannel].isOpen()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isOpen()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isOpen()"
    - "[io.netty.channel.nio.AbstractNioChannel].isOpen()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isOpen()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isOpen()"
    - "[io.netty.channel.local.LocalServerChannel].isOpen()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isOpen()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isOpen()"
    - "[io.netty.bootstrap.FailedChannel].isOpen()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.channel.ChannelOutboundBuffer].isEmpty()"
    - "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundBuffer].safeFail(io.netty.channel.ChannelPromise,java.lang.Throwable)"
    - "[io.netty.channel.ChannelOutboundBuffer$Entry].recycleAndGetNext()"
    - "[io.netty.channel.ChannelOutboundBuffer].clearNioBuffers()"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - "[io.netty.channel.Channel].isOpen()"
    - "[java.util.concurrent.atomic.AtomicLongFieldUpdater].addAndGet(java.lang.Object,long)"
    functionUses: 3
    ICount: 46
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:670"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:680"
        BranchSideFuncs:
        - "run()"
        - "eventLoop()"
        - "<init>(io.netty.channel.ChannelOutboundBuffer,java.lang.Throwable,boolean)"
        - "execute(java.lang.Runnable)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:679"
        BranchSideFuncs:
        - "isOpen()"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:682"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:686"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:685"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:682"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:686"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:685"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:686"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:692"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:691"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:693"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:705"
        BranchSideFuncs:
        - "safeRelease(java.lang.Object)"
        - "isEmpty()"
        - "safeFail(io.netty.channel.ChannelPromise,java.lang.Throwable)"
        - "isOpen()"
        - "recycleAndGetNext()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:704"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:698"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:702"
        BranchSideFuncs:
        - "safeRelease(java.lang.Object)"
        - "safeFail(io.netty.channel.ChannelPromise,java.lang.Throwable)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:701"
        BranchSideFuncs:
        - "recycleAndGetNext()"
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:671,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:671,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer$3].<init>(io.netty.channel.ChannelOutboundBuffer,java.lang.Throwable,boolean)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:671,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:682,1"
      Dst: "[io.netty.channel.Channel].isOpen()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:683,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:686,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].isEmpty()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:696,1"
      Dst: "[java.util.concurrent.atomic.AtomicLongFieldUpdater].addAndGet(java.lang.Object,long)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:699,1"
      Dst: "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:700,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].safeFail(io.netty.channel.ChannelPromise,java.lang.Throwable)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:702,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer$Entry].recycleAndGetNext()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:707,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].clearNioBuffers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.ChannelOutboundBuffer$3].<init>(io.netty.channel.ChannelOutboundBuffer,java.lang.Throwable,boolean)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer$3"
    linkageType: ""
    functionLinenumber: 670
    functionLinenumberEnd: 672
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer"
    - "java.lang.Throwable"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer$3:671,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer$Entry].recycleAndGetNext()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer$Entry"
    linkageType: ""
    functionLinenumber: 866
    functionLinenumberEnd: 870
    functionDepth: 1
    returnType: "io.netty.channel.ChannelOutboundBuffer$Entry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer$Entry].recycle()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer$Entry:868,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer$Entry].recycle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].<init>(io.netty.handler.codec.http2.Http2Error,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception$CompositeStreamException"
    linkageType: ""
    functionLinenumber: 310
    functionLinenumberEnd: 314
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    - "[java.util.ArrayList].<init>(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception$CompositeStreamException:311,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    - Src: "io.netty.handler.codec.http2.Http2Exception$CompositeStreamException:312,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].add(io.netty.handler.codec.http2.Http2Exception$StreamException)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception$CompositeStreamException"
    linkageType: ""
    functionLinenumber: 315
    functionLinenumberEnd: 318
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Exception$StreamException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception$CompositeStreamException:316,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslContextOption].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslContextOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextOption].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslContextOption:26,1"
      Dst: "[io.netty.handler.ssl.SslContextOption].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ServerChannelRecvByteBufAllocator].<init>()"
    functionSourceFile: "io.netty.channel.ServerChannelRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator].<init>(int,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ServerChannelRecvByteBufAllocator:23,1"
      Dst: "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator].<init>(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ServerChannelRecvByteBufAllocator].newHandle()"
    functionSourceFile: "io.netty.channel.ServerChannelRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 1
    returnType: "io.netty.channel.RecvByteBufAllocator$Handle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ServerChannelRecvByteBufAllocator$1].<init>(io.netty.channel.ServerChannelRecvByteBufAllocator)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ServerChannelRecvByteBufAllocator:28,1"
      Dst: "[io.netty.channel.ServerChannelRecvByteBufAllocator$1].<init>(io.netty.channel.ServerChannelRecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ServerChannelRecvByteBufAllocator$1].<init>(io.netty.channel.ServerChannelRecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.ServerChannelRecvByteBufAllocator$1"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ServerChannelRecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].<init>(io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ServerChannelRecvByteBufAllocator$1:28,1"
      Dst: "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].<init>(io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2:112,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 125
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].access$100(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 49
    ICount: 17
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2:115"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2:119"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2:118"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
        - "tryFailure(java.lang.Throwable)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2:119"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2:124"
        BranchSideFuncs:
        - "access$100(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler)"
        - "flush()"
        - "fireUserEventTriggered(java.lang.Object)"
        - "close()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2:115,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2:119,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2:119,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2:120,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].access$100(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2:120,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2:121,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2:122,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].access$100(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsRecordResolveContext].newResolverContext(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int,io.netty.handler.codec.dns.DnsRecordType[],io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int)"
    functionSourceFile: "io.netty.resolver.dns.DnsRecordResolveContext"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 1
    returnType: "io.netty.resolver.dns.DnsResolveContext"
    argCount: 8
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    - "io.netty.util.concurrent.Promise"
    - "java.lang.String"
    - "int"
    - "io.netty.handler.codec.dns.DnsRecordType[]"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.resolver.dns.DnsServerAddressStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsRecordResolveContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int,io.netty.handler.codec.dns.DnsRecordType[],io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsRecordResolveContext:52,1"
      Dst: "[io.netty.resolver.dns.DnsRecordResolveContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int,io.netty.handler.codec.dns.DnsRecordType[],io.netty.handler.codec.dns.DnsRecord[],io.netty.resolver.dns.DnsServerAddressStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsRecordResolveContext].convertRecord(io.netty.handler.codec.dns.DnsRecord,java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.resolver.dns.DnsRecordResolveContext"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DnsRecord"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecord"
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsRecordResolveContext:58,1"
      Dst: "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    functionSourceFile: "io.netty.util.ReferenceCountUtil"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].retain()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].retain()"
    - "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].retain()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].retain()"
    - "[io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame].retain()"
    - "[io.netty.channel.DefaultFileRegion].retain()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].retain()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.handler.ssl.OpenSslPrivateKey].retain()"
    - "[io.netty.channel.sctp.SctpMessage].retain()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].retain()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].retain()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].retain()"
    - "[io.netty.handler.ssl.PemPrivateKey].retain()"
    - "[io.netty.handler.ssl.PemX509Certificate].retain()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].retain()"
    - "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].retain()"
    - "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].retain()"
    - "[io.netty.channel.socket.DatagramPacket].retain()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].retain()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].retain()"
    - "[io.netty.channel.epoll.SegmentedDatagramPacket].retain()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].retain()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].retain()"
    - "[io.netty.util.AbstractReferenceCounted].retain()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].retain()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].retain()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].retain()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].retain()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].retain()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].retain()"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].retain()"
    - "[io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent].retain()"
    - "[io.netty.channel.DefaultAddressedEnvelope].retain()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpContent].retain()"
    - "[io.netty.channel.unix.SegmentedDatagramPacket].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].retain()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].retain()"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].retain()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].retain()"
    - "[io.netty.channel.unix.DomainDatagramPacket].retain()"
    - "[io.netty.handler.ssl.PemValue].retain()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].retain()"
    - "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].retain()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].retain()"
    - "[io.netty.buffer.DefaultByteBufHolder].retain()"
    - "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].retain()"
    - "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].retain()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].retain()"
    - "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].retain()"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].retain()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].retain()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].retain()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].retain()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].retain()"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].retain()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].retain()"
    - "[io.netty.handler.codec.http.websocketx.PingWebSocketFrame].retain()"
    - "[io.netty.channel.udt.UdtMessage].retain()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].retain()"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].retain()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].retain()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].retain()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].retain()"
    - "[io.netty.handler.codec.smtp.DefaultLastSmtpContent].retain()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].retain()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.handler.codec.http.ComposedLastHttpContent:io.netty.handler.codec.http.LastHttpContent$1:io.netty.handler.codec.memcache.LastMemcacheContent$1:io.netty.handler.codec.redis.ArrayRedisMessage$1:io.netty.handler.codec.redis.ArrayRedisMessage$2:io.netty.handler.codec.redis.FullBulkStringRedisMessage$1:io.netty.handler.codec.redis.FullBulkStringRedisMessage$2:io.netty.handler.codec.redis.LastBulkStringRedisContent$1:io.netty.handler.codec.smtp.LastSmtpContent$1:io.netty.handler.codec.stomp.LastStompContentSubframe$1].retain()"
    - "[io.netty.util.ReferenceCounted].retain()"
    functionUses: 21
    ICount: 7
    EdgeCount: 82
    BranchProfiles:
    - Branch String: "io.netty.util.ReferenceCountUtil:40"
      Branch Sides:
      - BranchSide: "io.netty.util.ReferenceCountUtil:43"
        BranchSideFuncs:
        - "retain()"
      - BranchSide: "io.netty.util.ReferenceCountUtil:42"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.ReferenceCountUtil:41,1"
      Dst: "[io.netty.util.ReferenceCounted].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsRecordResolveContext].filterResults(java.util.List<DnsRecord>)"
    functionSourceFile: "io.netty.resolver.dns.DnsRecordResolveContext"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "java.util.List<DnsRecord>"
    argCount: 1
    argTypes:
    - "java.util.List<DnsRecord>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsRecordResolveContext].isCompleteEarly(io.netty.handler.codec.dns.DnsRecord)"
    functionSourceFile: "io.netty.resolver.dns.DnsRecordResolveContext"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecord"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsRecordResolveContext].isDuplicateAllowed()"
    functionSourceFile: "io.netty.resolver.dns.DnsRecordResolveContext"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsRecordResolveContext].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.handler.codec.dns.DnsRecord,io.netty.handler.codec.dns.DnsRecord)"
    functionSourceFile: "io.netty.resolver.dns.DnsRecordResolveContext"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.handler.codec.dns.DnsRecord"
    - "io.netty.handler.codec.dns.DnsRecord"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsRecordResolveContext].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],java.net.UnknownHostException)"
    functionSourceFile: "io.netty.resolver.dns.DnsRecordResolveContext"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "java.net.UnknownHostException"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsRecordResolveContext].cnameCache()"
    functionSourceFile: "io.netty.resolver.dns.DnsRecordResolveContext"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsCnameCache"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsRecordResolveContext].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.handler.codec.dns.DnsRecord,java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.DnsRecordResolveContext"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.handler.codec.dns.DnsRecord"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsRecordResolveContext].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.handler.codec.dns.DnsRecord,io.netty.handler.codec.dns.DnsRecord)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsRecordResolveContext:28,1"
      Dst: "[io.netty.resolver.dns.DnsRecordResolveContext].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.handler.codec.dns.DnsRecord,io.netty.handler.codec.dns.DnsRecord)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsRecordResolveContext].isCompleteEarly(java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.DnsRecordResolveContext"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsRecordResolveContext].isCompleteEarly(io.netty.handler.codec.dns.DnsRecord)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsRecordResolveContext:28,1"
      Dst: "[io.netty.resolver.dns.DnsRecordResolveContext].isCompleteEarly(io.netty.handler.codec.dns.DnsRecord)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory].<init>(javax.net.ssl.X509KeyManager,java.lang.String,java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "javax.net.ssl.X509KeyManager"
    - "java.lang.String"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory:168,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory].access$000(io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.X509KeyManager"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe].<init>(io.netty.channel.kqueue.KQueueSocketChannel)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.KQueueSocketChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe].<init>(io.netty.channel.kqueue.AbstractKQueueStreamChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe:110,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe].<init>(io.netty.channel.kqueue.AbstractKQueueStreamChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe].prepareToClose()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 130
    functionDepth: 3
    returnType: "java.util.concurrent.Executor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueSocketChannel:java.util.concurrent.AbstractExecutorService].config()"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].getSoLinger()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isOpen()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.channel.kqueue.KQueueEventLoop].remove(io.netty.channel.kqueue.AbstractKQueueChannel)"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    functionUses: 1
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe:116"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe:127"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe:116"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe:116,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isOpen()"
    - Src: "io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe:116,1"
      Dst: "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - Src: "io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe:116,1"
      Dst: "[io.netty.channel.kqueue.KQueueSocketChannelConfig].getSoLinger()"
    - Src: "io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe:121,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe:121,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].remove(io.netty.channel.kqueue.AbstractKQueueChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueSocketChannel"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "io.netty.channel.kqueue.KQueueSocketChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 62
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueSocketChannelConfig].getSoLinger()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getSoLinger()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueSocketChannelConfig:156,1"
      Dst: "[io.netty.channel.unix.Socket].getSoLinger()"
    - Src: "io.netty.channel.kqueue.KQueueSocketChannelConfig:158,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].remove(io.netty.channel.kqueue.AbstractKQueueChannel)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 138
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.AbstractKQueueChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].fd()"
    - "[io.netty.channel.unix.FileDescriptor:io.netty.util.collection.IntCollections$EmptyMap].intValue()"
    - "[io.netty.util.collection.IntObjectHashMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].put(int,java.lang.Object)"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isOpen()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isOpen()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isOpen()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isOpen()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isOpen()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].unregisterFilters()"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.util.collection.IntObjectMap].remove(int)"
    - "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    functionUses: 2
    ICount: 29
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:120"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:121"
        BranchSideFuncs:
        - "fd()"
        - "intValue()"
        - "remove(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:120"
        BranchSideFuncs:
        - "fd()"
        - "intValue()"
        - "remove(int)"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:120"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:121"
        BranchSideFuncs:
        - "fd()"
        - "intValue()"
        - "remove(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:120"
        BranchSideFuncs:
        - "fd()"
        - "intValue()"
        - "remove(int)"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:124"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:129"
        BranchSideFuncs:
        - "isOpen()"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:124"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:129"
        BranchSideFuncs:
        - "isOpen()"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:129"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:137"
        BranchSideFuncs:
        - "isOpen()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:129"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:137"
        BranchSideFuncs:
        - "isOpen()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:130"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:120,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:120,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:121,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].fd()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:121,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:123,1"
      Dst: "[io.netty.util.collection.IntObjectMap].remove(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:126,1"
      Dst: "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:129,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].isOpen()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:135,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].unregisterFilters()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe].<init>(io.netty.channel.kqueue.KQueueSocketChannel,io.netty.channel.kqueue.KQueueSocketChannel$1)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.kqueue.KQueueSocketChannel"
    - "io.netty.channel.kqueue.KQueueSocketChannel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe].<init>(io.netty.channel.kqueue.KQueueSocketChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe:110,1"
      Dst: "[io.netty.channel.kqueue.KQueueSocketChannel$KQueueSocketChannelUnsafe].<init>(io.netty.channel.kqueue.KQueueSocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.CompressionUtil].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.CompressionUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.CompressionUtil:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.CompressionUtil].checkChecksum(io.netty.handler.codec.compression.ByteBufChecksum,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.compression.CompressionUtil"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 38
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.compression.ByteBufChecksum"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].reset()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.handler.codec.compression.Crc32c:io.netty.handler.codec.compression.Lz4XXHash32].reset()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].update(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.compression.ByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].getValue()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].getValue()"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.zip.Checksum].reset()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[java.util.zip.Checksum].getValue()"
    functionUses: 1
    ICount: 20
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.CompressionUtil:32"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.CompressionUtil:37"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.CompressionUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.CompressionUtil:27,1"
      Dst: "[java.util.zip.Checksum].reset()"
    - Src: "io.netty.handler.codec.compression.CompressionUtil:29,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.CompressionUtil:29,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.CompressionUtil:28,1"
      Dst: "[io.netty.handler.codec.compression.ByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.compression.CompressionUtil:31,1"
      Dst: "[java.util.zip.Checksum].getValue()"
    - Src: "io.netty.handler.codec.compression.CompressionUtil:35,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.compression.CompressionUtil:33,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.compression.CompressionUtil:33,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.CompressionUtil].safeNioBuffer(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.CompressionUtil"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer()"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer()"
    - "[io.netty.buffer.AbstractByteBuf].nioBuffer()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer()"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer()"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].nioBuffer()"
    functionUses: 1
    ICount: 9
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.CompressionUtil:40"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.CompressionUtil:41"
        BranchSideFuncs:
        - "nioBuffer()"
      - BranchSide: "io.netty.handler.codec.compression.CompressionUtil:40"
        BranchSideFuncs:
        - "nioBuffer()"
    Callsites:
    - Src: "io.netty.handler.codec.compression.CompressionUtil:40,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.handler.codec.compression.CompressionUtil:40,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.CompressionUtil:40,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.CompressionUtil:40,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.handler.codec.compression.CompressionUtil:41,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.CompressionUtil].safeNioBuffer(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.CompressionUtil"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].nioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 47
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.CompressionUtil:45"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.CompressionUtil:46"
        BranchSideFuncs:
        - "nioBuffer(int,int)"
      - BranchSide: "io.netty.handler.codec.compression.CompressionUtil:45"
        BranchSideFuncs:
        - "nioBuffer(int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.CompressionUtil:45,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.handler.codec.compression.CompressionUtil:45,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.handler.codec.compression.CompressionUtil:46,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.bytes.ByteArrayDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.bytes.ByteArrayDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.bytes.ByteArrayDecoder:52,1"
      Dst: "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.bytes.ByteArrayDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.bytes.ByteArrayDecoder"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBufUtil].getBytes(io.netty.buffer.ByteBuf)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.bytes.ByteArrayDecoder:56,1"
      Dst: "[io.netty.buffer.ByteBufUtil].getBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.bytes.ByteArrayDecoder:56,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].getBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1300
    functionLinenumberEnd: 1302
    functionDepth: 4
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].getBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 1
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1301,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.ByteBufUtil:1301,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.ByteBufUtil:1301,1"
      Dst: "[io.netty.buffer.ByteBufUtil].getBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.bytes.ByteArrayDecoder].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.bytes.ByteArrayDecoder"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.bytes.ByteArrayDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.bytes.ByteArrayDecoder:52,1"
      Dst: "[io.netty.handler.codec.bytes.ByteArrayDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLoggerFactory].<init>()"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLoggerFactory"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.InternalLoggerFactory].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLoggerFactory:33,1"
      Dst: "[io.netty.util.internal.logging.InternalLoggerFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4JLoggerFactory].newInstance(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.Log4JLoggerFactory"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 2
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4JLogger].<init>(org.apache.log4j.Logger)"
    - "[org.apache.log4j.Logger].getLogger(java.lang.String)"
    functionUses: 5
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4JLoggerFactory:38,1"
      Dst: "[org.apache.log4j.Logger].getLogger(java.lang.String)"
    - Src: "io.netty.util.internal.logging.Log4JLoggerFactory:38,1"
      Dst: "[io.netty.util.internal.logging.Log4JLogger].<init>(org.apache.log4j.Logger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DomainDatagramPacket].<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress,io.netty.channel.unix.DomainSocketAddress)"
    functionSourceFile: "io.netty.channel.unix.DomainDatagramPacket"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.channel.unix.DomainSocketAddress"
    - "io.netty.channel.unix.DomainSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress,java.net.SocketAddress)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.DomainDatagramPacket:40,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DomainDatagramPacket].copy()"
    functionSourceFile: "io.netty.channel.unix.DomainDatagramPacket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.unix.DomainDatagramPacket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.channel.unix.DomainDatagramPacket].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.DomainDatagramPacket:45,1"
      Dst: "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - Src: "io.netty.channel.unix.DomainDatagramPacket:45,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.channel.unix.DomainDatagramPacket:45,1"
      Dst: "[io.netty.channel.unix.DomainDatagramPacket].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DomainDatagramPacket].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.unix.DomainDatagramPacket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.unix.DomainDatagramPacket"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - "[io.netty.channel.unix.DomainDatagramPacket].<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress,io.netty.channel.unix.DomainSocketAddress)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.DomainDatagramPacket:55,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - Src: "io.netty.channel.unix.DomainDatagramPacket:55,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - Src: "io.netty.channel.unix.DomainDatagramPacket:55,1"
      Dst: "[io.netty.channel.unix.DomainDatagramPacket].<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress,io.netty.channel.unix.DomainSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DomainDatagramPacket].duplicate()"
    functionSourceFile: "io.netty.channel.unix.DomainDatagramPacket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.unix.DomainDatagramPacket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.channel.unix.DomainDatagramPacket].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.DomainDatagramPacket:50,1"
      Dst: "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - Src: "io.netty.channel.unix.DomainDatagramPacket:50,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.channel.unix.DomainDatagramPacket:50,1"
      Dst: "[io.netty.channel.unix.DomainDatagramPacket].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DomainDatagramPacket].retain()"
    functionSourceFile: "io.netty.channel.unix.DomainDatagramPacket"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionDepth: 2
    returnType: "io.netty.channel.unix.DomainDatagramPacket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].retain()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.DomainDatagramPacket:60,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultAddressedEnvelope].retain()"
    functionSourceFile: "io.netty.channel.DefaultAddressedEnvelope"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionDepth: 1
    returnType: "io.netty.channel.AddressedEnvelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultAddressedEnvelope:87,1"
      Dst: "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DomainDatagramPacket].retain(int)"
    functionSourceFile: "io.netty.channel.unix.DomainDatagramPacket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.unix.DomainDatagramPacket"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.DomainDatagramPacket:66,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultAddressedEnvelope].retain(int)"
    functionSourceFile: "io.netty.channel.DefaultAddressedEnvelope"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.AddressedEnvelope<M,A>"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultAddressedEnvelope:93,1"
      Dst: "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object,int)"
    functionSourceFile: "io.netty.util.ReferenceCountUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[io.netty.util.ReferenceCounted].retain(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.ReferenceCountUtil:53"
      Branch Sides:
      - BranchSide: "io.netty.util.ReferenceCountUtil:56"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ReferenceCountUtil:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.ReferenceCountUtil:52,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.util.ReferenceCountUtil:54,1"
      Dst: "[io.netty.util.ReferenceCounted].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DomainDatagramPacket].retainedDuplicate()"
    functionSourceFile: "io.netty.channel.unix.DomainDatagramPacket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.unix.DomainDatagramPacket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.channel.unix.DomainDatagramPacket].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.DomainDatagramPacket:72,1"
      Dst: "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - Src: "io.netty.channel.unix.DomainDatagramPacket:72,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.channel.unix.DomainDatagramPacket:72,1"
      Dst: "[io.netty.channel.unix.DomainDatagramPacket].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DomainDatagramPacket].touch()"
    functionSourceFile: "io.netty.channel.unix.DomainDatagramPacket"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionDepth: 2
    returnType: "io.netty.channel.unix.DomainDatagramPacket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].touch()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.DomainDatagramPacket:77,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultAddressedEnvelope].touch()"
    functionSourceFile: "io.netty.channel.DefaultAddressedEnvelope"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionDepth: 1
    returnType: "io.netty.channel.AddressedEnvelope"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ReferenceCountUtil].touch(java.lang.Object)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultAddressedEnvelope:109,1"
      Dst: "[io.netty.util.ReferenceCountUtil].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DomainDatagramPacket].touch(java.lang.Object)"
    functionSourceFile: "io.netty.channel.unix.DomainDatagramPacket"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionDepth: 2
    returnType: "io.netty.channel.unix.DomainDatagramPacket"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].touch(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.DomainDatagramPacket:83,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultAddressedEnvelope].touch(java.lang.Object)"
    functionSourceFile: "io.netty.channel.DefaultAddressedEnvelope"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionDepth: 1
    returnType: "io.netty.channel.AddressedEnvelope<M,A>"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ReferenceCountUtil].touch(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultAddressedEnvelope:115,1"
      Dst: "[io.netty.util.ReferenceCountUtil].touch(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel$2].<init>(io.netty.channel.sctp.oio.OioSctpChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel$2"
    linkageType: ""
    functionLinenumber: 453
    functionLinenumberEnd: 455
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.sctp.oio.OioSctpChannel"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel$2:454,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel$2"
    linkageType: ""
    functionLinenumber: 456
    functionLinenumberEnd: 459
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.oio.OioSctpChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 50
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel$2:457,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 445
    functionLinenumberEnd: 462
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].<init>(io.netty.channel.sctp.oio.OioSctpChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[com.sun.nio.sctp.SctpChannel].unbindAddress(java.net.InetAddress)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 1
    ICount: 18
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:446"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:453"
        BranchSideFuncs:
        - "run()"
        - "eventLoop()"
        - "execute(java.lang.Runnable)"
        - "<init>(io.netty.channel.sctp.oio.OioSctpChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:446,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:446,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:448,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].unbindAddress(java.net.InetAddress)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:449,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:451,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:454,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel$2].<init>(io.netty.channel.sctp.oio.OioSctpChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:454,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    functionSourceFile: "io.netty.util.internal.ThreadExecutorMap$2"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 79
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ThreadExecutorMap].access$000(io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$2:io.netty.channel.oio.AbstractOioChannel$3:io.netty.util.concurrent.AbstractScheduledEventExecutor$2:io.netty.util.concurrent.GlobalEventExecutor$1:io.netty.util.concurrent.PromiseTask$SentinelRunnable:io.netty.util.concurrent.SingleThreadEventExecutor$1:java.lang.invoke.MethodHandleNatives$CallSiteContext:java.lang.ref.Finalizer$2:java.lang.ref.Finalizer$FinalizerThread:java.util.concurrent.CompletableFuture$Completion:java.util.concurrent.ForkJoinWorkerThread:java.util.concurrent.ThreadPoolExecutor$Worker:java.util.zip.Deflater$DeflaterZStreamRef:java.util.zip.Inflater$InflaterZStreamRef:java.util.zip.ZipFile$CleanableResource].run()"
    - "[java.lang.Runnable].run()"
    functionUses: 49
    ICount: 11
    EdgeCount: 172
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadExecutorMap$2:72,1"
      Dst: "[io.netty.util.internal.ThreadExecutorMap].access$000(io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.util.internal.ThreadExecutorMap$2:74,1"
      Dst: "[java.lang.Runnable].run()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadExecutorMap].access$000(io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.util.internal.ThreadExecutorMap"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ThreadExecutorMap].setCurrentEventExecutor(io.netty.util.concurrent.EventExecutor)"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadExecutorMap:27,1"
      Dst: "[io.netty.util.internal.ThreadExecutorMap].setCurrentEventExecutor(io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadExecutorMap].setCurrentEventExecutor(io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.util.internal.ThreadExecutorMap"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].set(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadExecutorMap:44,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.org.objectweb.asm.Attribute$NestMembers].<init>()"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Attribute$NestMembers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.org.objectweb.asm.Attribute].<init>(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.org.objectweb.asm.Attribute$NestMembers:292,1"
      Dst: "[jdk.internal.org.objectweb.asm.Attribute].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.org.objectweb.asm.Attribute$NestMembers].read(jdk.internal.org.objectweb.asm.ClassReader,int,int,char[],int,jdk.internal.org.objectweb.asm.Label[])"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Attribute$NestMembers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "jdk.internal.org.objectweb.asm.Attribute"
    argCount: 6
    argTypes:
    - "jdk.internal.org.objectweb.asm.ClassReader"
    - "int"
    - "int"
    - "char[]"
    - "int"
    - "jdk.internal.org.objectweb.asm.Label[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.org.objectweb.asm.Attribute$NestMembers].<init>()"
    - "[jdk.internal.org.objectweb.asm.ClassReader].readShort(int)"
    - "[jdk.internal.org.objectweb.asm.ClassReader].readClass(int,char[])"
    - "[java.util.Arrays].copyOfRange(byte[],int,int)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "jdk.internal.org.objectweb.asm.Attribute$NestMembers:305"
      Branch Sides:
      - BranchSide: "jdk.internal.org.objectweb.asm.Attribute$NestMembers:308"
        BranchSideFuncs: []
    Callsites:
    - Src: "jdk.internal.org.objectweb.asm.Attribute$NestMembers:301,1"
      Dst: "[jdk.internal.org.objectweb.asm.Attribute$NestMembers].<init>()"
    - Src: "jdk.internal.org.objectweb.asm.Attribute$NestMembers:302,1"
      Dst: "[jdk.internal.org.objectweb.asm.ClassReader].readShort(int)"
    - Src: "jdk.internal.org.objectweb.asm.Attribute$NestMembers:306,1"
      Dst: "[jdk.internal.org.objectweb.asm.ClassReader].readClass(int,char[])"
    - Src: "jdk.internal.org.objectweb.asm.Attribute$NestMembers:309,1"
      Dst: "[java.util.Arrays].copyOfRange(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[jdk.internal.org.objectweb.asm.Attribute$NestMembers].write(jdk.internal.org.objectweb.asm.ClassWriter,byte[],int,int,int)"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Attribute$NestMembers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "jdk.internal.org.objectweb.asm.ByteVector"
    argCount: 5
    argTypes:
    - "jdk.internal.org.objectweb.asm.ClassWriter"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.org.objectweb.asm.ByteVector].<init>(int)"
    - "[jdk.internal.org.objectweb.asm.ByteVector].putShort(int)"
    - "[jdk.internal.org.objectweb.asm.ClassWriter].newClass(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "jdk.internal.org.objectweb.asm.Attribute$NestMembers:317"
      Branch Sides:
      - BranchSide: "jdk.internal.org.objectweb.asm.Attribute$NestMembers:319"
        BranchSideFuncs: []
    Callsites:
    - Src: "jdk.internal.org.objectweb.asm.Attribute$NestMembers:315,1"
      Dst: "[jdk.internal.org.objectweb.asm.ByteVector].<init>(int)"
    - Src: "jdk.internal.org.objectweb.asm.Attribute$NestMembers:316,1"
      Dst: "[jdk.internal.org.objectweb.asm.ByteVector].putShort(int)"
    - Src: "jdk.internal.org.objectweb.asm.Attribute$NestMembers:318,1"
      Dst: "[jdk.internal.org.objectweb.asm.ClassWriter].newClass(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:118,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].parseStatus(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 200
    functionDepth: 9
    returnType: "io.netty.handler.codec.http.HttpResponseStatus"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseStatus].parseLine(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 21
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:190"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:198"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "code()"
        - "valueOf(int)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:197"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:189,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].parseLine(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:191,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:191,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:191,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:196,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].parseLine(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 487
    functionLinenumberEnd: 489
    functionDepth: 8
    returnType: "io.netty.handler.codec.http.HttpResponseStatus"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseStatus].parseLine(io.netty.util.AsciiString)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].parseLine(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[java.lang.CharSequence].toString()"
    functionUses: 2
    ICount: 9
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpResponseStatus:488"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:487"
        BranchSideFuncs:
        - "toString()"
        - "parseLine(io.netty.util.AsciiString)"
        - "parseLine(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:488,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].parseLine(io.netty.util.AsciiString)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:488,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:488,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].parseLine(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].parseLine(io.netty.util.AsciiString)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 520
    functionLinenumberEnd: 525
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.HttpResponseStatus"
    argCount: 1
    argTypes:
    - "io.netty.util.AsciiString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.util.AsciiString].parseInt(int,int)"
    - "[io.netty.util.AsciiString].parseInt()"
    - "[io.netty.util.AsciiString].toString(int)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].valueOf(int)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].valueOf(int,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 22
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpResponseStatus:522"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:521"
        BranchSideFuncs:
        - "valueOf(int,java.lang.String)"
        - "<init>()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "valueOf(int)"
        - "parseInt()"
        - "toString(int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "parseInt(int,int)"
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:520"
        BranchSideFuncs:
        - "forEachByte(io.netty.util.ByteProcessor)"
        - "valueOf(int,java.lang.String)"
        - "valueOf(int)"
        - "parseInt()"
        - "toString(int)"
        - "parseInt(int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:521,1"
      Dst: "[io.netty.util.AsciiString].forEachByte(io.netty.util.ByteProcessor)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:522,1"
      Dst: "[io.netty.util.AsciiString].parseInt()"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:522,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].valueOf(int)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:522,1"
      Dst: "[io.netty.util.AsciiString].parseInt(int,int)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:522,1"
      Dst: "[io.netty.util.AsciiString].toString(int)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:522,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].valueOf(int,java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:524,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:524,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:524,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:524,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:524,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].parseInt()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1230
    functionLinenumberEnd: 1232
    functionDepth: 6
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].parseInt(int,int,int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1231,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:1231,1"
      Dst: "[io.netty.util.AsciiString].parseInt(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].parseInt(int,int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1242
    functionLinenumberEnd: 1258
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NumberFormatException].<init>()"
    - "[io.netty.util.AsciiString].byteAt(int)"
    - "[java.lang.NumberFormatException].<init>(java.lang.String)"
    - "[io.netty.util.AsciiString].subSequence(int,int,boolean)"
    - "[io.netty.util.AsciiString].toString()"
    - "[io.netty.util.AsciiString].parseInt(int,int,int,boolean)"
    functionUses: 3
    ICount: 33
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1243"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1244"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1243"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1243"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1247"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1246"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1247"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1251"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.util.AsciiString:1250"
        BranchSideFuncs:
        - "byteAt(int)"
    - Branch String: "io.netty.util.AsciiString:1252"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:-1"
        BranchSideFuncs:
        - "byteAt(int)"
      - BranchSide: "io.netty.util.AsciiString:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1253"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1257"
        BranchSideFuncs:
        - "toString()"
        - "subSequence(int,int,boolean)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.AsciiString:1256"
        BranchSideFuncs:
        - "parseInt(int,int,int,boolean)"
    - Branch String: "io.netty.util.AsciiString:1253"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1257"
        BranchSideFuncs:
        - "toString()"
        - "subSequence(int,int,boolean)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.AsciiString:1256"
        BranchSideFuncs:
        - "parseInt(int,int,int,boolean)"
    Callsites:
    - Src: "io.netty.util.AsciiString:1244,1"
      Dst: "[java.lang.NumberFormatException].<init>()"
    - Src: "io.netty.util.AsciiString:1252,1"
      Dst: "[io.netty.util.AsciiString].byteAt(int)"
    - Src: "io.netty.util.AsciiString:1254,1"
      Dst: "[io.netty.util.AsciiString].subSequence(int,int,boolean)"
    - Src: "io.netty.util.AsciiString:1254,1"
      Dst: "[io.netty.util.AsciiString].toString()"
    - Src: "io.netty.util.AsciiString:1254,1"
      Dst: "[java.lang.NumberFormatException].<init>(java.lang.String)"
    - Src: "io.netty.util.AsciiString:1257,1"
      Dst: "[io.netty.util.AsciiString].parseInt(int,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.AsciiString].parseInt(int,int,int,boolean)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1260
    functionLinenumberEnd: 1285
    functionDepth: 4
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Character].digit(char,int)"
    - "[java.lang.NumberFormatException].<init>(java.lang.String)"
    - "[io.netty.util.AsciiString].subSequence(int,int,boolean)"
    - "[io.netty.util.AsciiString].toString()"
    functionUses: 1
    ICount: 51
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1264"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1278"
        BranchSideFuncs:
        - "digit(char,int)"
      - BranchSide: "io.netty.util.AsciiString:1277"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1266"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1269"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1268"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1269"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1272"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1271"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1273"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1276"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1275"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1278"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1284"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1283"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1280"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1284"
        BranchSideFuncs:
        - "toString()"
        - "subSequence(int,int,boolean)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.AsciiString:1283"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1265,1"
      Dst: "[java.lang.Character].digit(char,int)"
    - Src: "io.netty.util.AsciiString:1267,1"
      Dst: "[io.netty.util.AsciiString].subSequence(int,int,boolean)"
    - Src: "io.netty.util.AsciiString:1267,1"
      Dst: "[io.netty.util.AsciiString].toString()"
    - Src: "io.netty.util.AsciiString:1267,1"
      Dst: "[java.lang.NumberFormatException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].valueOf(int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 339
    functionLinenumberEnd: 342
    functionDepth: 6
    returnType: "io.netty.handler.codec.http.HttpResponseStatus"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseStatus].valueOf0(int)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].<init>(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpResponseStatus:341"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:339"
        BranchSideFuncs:
        - "<init>(int)"
        - "valueOf0(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:340,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].valueOf0(int)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:341,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].valueOf0(int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 344
    functionLinenumberEnd: 462
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpResponseStatus"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 117
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 59
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 538
    functionLinenumberEnd: 541
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseStatus].<init>(int,java.lang.String,boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpStatusClass].defaultReasonPhrase()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.HttpStatusClass].valueOf(int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:539,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:539,1"
      Dst: "[io.netty.handler.codec.http.HttpStatusClass].valueOf(int)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:539,1"
      Dst: "[io.netty.handler.codec.http.HttpStatusClass].defaultReasonPhrase()"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:539,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:539,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:539,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:539,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:539,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:539,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].<init>(int,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpStatusClass].defaultReasonPhrase()"
    functionSourceFile: "io.netty.handler.codec.http.HttpStatusClass"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 0
    returnType: "io.netty.util.AsciiString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].<init>(int,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 548
    functionLinenumberEnd: 574
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Integer].toString(int)"
    - "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    functionUses: 3
    ICount: 42
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpResponseStatus:553"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:564"
        BranchSideFuncs:
        - "charAt(int)"
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:563"
        BranchSideFuncs:
        - "<init>(java.lang.CharSequence)"
        - "toString(int)"
    - Branch String: "io.netty.handler.codec.http.HttpResponseStatus:568"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:571"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "getBytes(java.nio.charset.Charset)"
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:570"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:549,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:550,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:551,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:553,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:554,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:558,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:558,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:558,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:558,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:565,1"
      Dst: "[java.lang.Integer].toString(int)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:566,1"
      Dst: "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:569,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:569,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.AsciiString].parseInt(int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1238
    functionLinenumberEnd: 1240
    functionDepth: 6
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].parseInt(int,int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1239,1"
      Dst: "[io.netty.util.AsciiString].parseInt(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].valueOf(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 472
    functionLinenumberEnd: 475
    functionDepth: 6
    returnType: "io.netty.handler.codec.http.HttpResponseStatus"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseStatus].valueOf0(int)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].<init>(int,java.lang.String)"
    - "[java.lang.String].contentEquals(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].reasonPhrase()"
    functionUses: 3
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpResponseStatus:474"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:472"
        BranchSideFuncs:
        - "reasonPhrase()"
        - "<init>(int,java.lang.String)"
        - "contentEquals(java.lang.CharSequence)"
        - "valueOf0(int)"
    - Branch String: "io.netty.handler.codec.http.HttpResponseStatus:474"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:472"
        BranchSideFuncs:
        - "reasonPhrase()"
        - "<init>(int,java.lang.String)"
        - "contentEquals(java.lang.CharSequence)"
        - "valueOf0(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:473,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].valueOf0(int)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:474,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].reasonPhrase()"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:474,1"
      Dst: "[java.lang.String].contentEquals(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:474,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 545
    functionLinenumberEnd: 548
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseStatus].<init>(int,java.lang.String,boolean)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:546,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].<init>(int,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].parseLine(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 501
    functionLinenumberEnd: 507
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.HttpResponseStatus"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].valueOf(int)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].substring(int,int)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].valueOf(int,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 22
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpResponseStatus:503"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:504"
        BranchSideFuncs:
        - "valueOf(int,java.lang.String)"
        - "substring(int)"
        - "parseInt(java.lang.String)"
        - "substring(int,int)"
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:503"
        BranchSideFuncs:
        - "valueOf(int,java.lang.String)"
        - "substring(int)"
        - "parseInt(java.lang.String)"
        - "substring(int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:502,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:503,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:503,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].valueOf(int)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:504,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:504,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:504,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].valueOf(int,java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:506,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:506,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:506,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:506,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].toFullHttpResponse(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 218
    functionDepth: 11
    returnType: "io.netty.handler.codec.http.FullHttpResponse"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "io.netty.buffer.ByteBufAllocator"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer()"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toFullHttpResponse(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.buffer.ByteBufAllocator].buffer()"
    functionUses: 2
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:217,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:217,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toFullHttpResponse(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].toFullHttpResponse(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 235
    functionLinenumberEnd: 251
    functionDepth: 10
    returnType: "io.netty.handler.codec.http.FullHttpResponse"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HttpConversionUtil].parseStatus(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.EmptyHttp2Headers].status()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].status()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].status()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.FullHttpMessage,boolean)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].release()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2Headers].status()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 21
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:236,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers].status()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:236,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].parseStatus(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:239,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:242,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.FullHttpMessage,boolean)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:244,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:248,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.FullHttpMessage,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 386
    functionLinenumberEnd: 391
    functionDepth: 8
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "io.netty.handler.codec.http.FullHttpMessage"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HttpConversionUtil].addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean,boolean)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].trailingHeaders()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].trailingHeaders()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    functionUses: 3
    ICount: 12
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:387"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:387"
        BranchSideFuncs:
        - "trailingHeaders()"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:386"
        BranchSideFuncs:
        - "addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean,boolean)"
        - "headers()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:388,1"
      Dst: "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:387,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:389,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:387,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 406
    functionLinenumberEnd: 423
    functionDepth: 7
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "io.netty.handler.codec.http.HttpVersion"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator].<init>(int,io.netty.handler.codec.http.HttpHeaders,boolean)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator].translateHeaders(java.lang.Iterable)"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - "[io.netty.handler.codec.http.HttpUtil].setKeepAlive(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean)"
    - "[io.netty.handler.codec.http.HttpHeaders].setInt(java.lang.CharSequence,int)"
    functionUses: 4
    ICount: 27
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:418"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:422"
        BranchSideFuncs:
        - "setKeepAlive(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean)"
        - "text()"
        - "setInt(java.lang.CharSequence,int)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:421"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:407,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator].<init>(int,io.netty.handler.codec.http.HttpHeaders,boolean)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:409,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil$Http2ToHttpHeaderTranslator].translateHeaders(java.lang.Iterable)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:413,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:416,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:419,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:419,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].setInt(java.lang.CharSequence,int)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:420,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].setKeepAlive(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].setKeepAlive(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 150
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpHeaders"
    - "io.netty.handler.codec.http.HttpVersion"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpVersion].isKeepAliveDefault()"
    - "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    functionUses: 2
    ICount: 21
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:143"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:142"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:137"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:140"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:139"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:143"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:146"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:145"
        BranchSideFuncs:
        - "remove(java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:136,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].isKeepAliveDefault()"
    - Src: "io.netty.handler.codec.http.HttpUtil:138,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpUtil:140,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].toFullHttpRequest(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 269
    functionDepth: 10
    returnType: "io.netty.handler.codec.http.FullHttpRequest"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "io.netty.buffer.ByteBufAllocator"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer()"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toFullHttpRequest(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.buffer.ByteBufAllocator].buffer()"
    functionUses: 2
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:268,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:268,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toFullHttpRequest(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].toFullHttpRequest(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 297
    functionLinenumberEnd: 313
    functionDepth: 9
    returnType: "io.netty.handler.codec.http.FullHttpRequest"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http2.EmptyHttp2Headers].method()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].method()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].method()"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].extractPath(java.lang.CharSequence,io.netty.handler.codec.http2.Http2Headers)"
    - "[io.netty.handler.codec.http.HttpMethod].valueOf(java.lang.String)"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf,boolean)"
    - "[java.lang.String].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.FullHttpMessage,boolean)"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].release()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2Headers].method()"
    - "[java.lang.CharSequence].toString()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 26
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:298,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers].method()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:298,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:300,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].extractPath(java.lang.CharSequence,io.netty.handler.codec.http2.Http2Headers)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:302,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:301,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].valueOf(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:302,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:304,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.FullHttpMessage,boolean)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:306,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:310,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].extractPath(java.lang.CharSequence,io.netty.handler.codec.http2.Http2Headers)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 279
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "io.netty.handler.codec.http2.Http2Headers"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMethod].asciiName()"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].authority()"
    - "[io.netty.handler.codec.http2.EmptyHttp2Headers].authority()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].authority()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].path()"
    - "[io.netty.handler.codec.http2.EmptyHttp2Headers].path()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].path()"
    - "[io.netty.handler.codec.http2.Http2Headers].authority()"
    - "[java.lang.CharSequence].toString()"
    - "[io.netty.handler.codec.http2.Http2Headers].path()"
    functionUses: 2
    ICount: 16
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:272"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:276"
        BranchSideFuncs:
        - "checkNotNull(java.lang.Object,java.lang.String)"
        - "path()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:272,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].asciiName()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:272,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:274,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers].authority()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:274,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:275,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:277,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers].path()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMethod].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMethod"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionDepth: 6
    returnType: "io.netty.handler.codec.http.HttpMethod"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMethod$EnumNameMap].get(java.lang.String)"
    - "[io.netty.handler.codec.http.HttpMethod].<init>(java.lang.String)"
    functionUses: 15
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpMethod:110"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpMethod:108"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
        - "get(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMethod:109,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod$EnumNameMap].get(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpMethod:110,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpMethod$EnumNameMap].get(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMethod$EnumNameMap"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMethod$EnumNameMap].hashCode(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:197"
        BranchSideFuncs:
        - "hashCode(java.lang.String)"
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:197"
        BranchSideFuncs:
        - "hashCode(java.lang.String)"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:198,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod$EnumNameMap].hashCode(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:199,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpMethod$EnumNameMap].hashCode(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMethod$EnumNameMap"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:208,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMethod].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMethod"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 134
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNonEmptyAfterTrim(java.lang.String,java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].isISOControl(char)"
    - "[java.lang.Character].isWhitespace(char)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.AsciiString].cached(java.lang.String)"
    functionUses: 10
    ICount: 20
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpMethod:125"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpMethod:132"
        BranchSideFuncs:
        - "isWhitespace(char)"
        - "isISOControl(char)"
        - "charAt(int)"
      - BranchSide: "io.netty.handler.codec.http.HttpMethod:131"
        BranchSideFuncs:
        - "cached(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.HttpMethod:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpMethod:128"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.HttpMethod:127"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.HttpMethod:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpMethod:122"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.HttpMethod:121"
        BranchSideFuncs:
        - "<init>()"
        - "checkNonEmptyAfterTrim(java.lang.String,java.lang.String)"
        - "length()"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMethod:122,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.HttpMethod:123,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmptyAfterTrim(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpMethod:125,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.HttpMethod:126,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.HttpMethod:127,1"
      Dst: "[java.lang.Character].isISOControl(char)"
    - Src: "io.netty.handler.codec.http.HttpMethod:127,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    - Src: "io.netty.handler.codec.http.HttpMethod:128,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpMethod:132,1"
      Dst: "[io.netty.util.AsciiString].cached(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 54
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpMethod"
    - "java.lang.String"
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,boolean)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(boolean)"
    functionUses: 4
    ICount: 14
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:50,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:51,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:52,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttpRequest(int,io.netty.handler.codec.http2.Http2Headers,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 329
    functionLinenumberEnd: 343
    functionDepth: 8
    returnType: "io.netty.handler.codec.http.HttpRequest"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http2.EmptyHttp2Headers].method()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].method()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].method()"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].extractPath(java.lang.CharSequence,io.netty.handler.codec.http2.Http2Headers)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[io.netty.handler.codec.http.HttpMethod].valueOf(java.lang.String)"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean,boolean)"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2Headers].method()"
    - "[java.lang.CharSequence].toString()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    functionUses: 1
    ICount: 25
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:330,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers].method()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:330,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:332,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].extractPath(java.lang.CharSequence,io.netty.handler.codec.http2.Http2Headers)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:333,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:333,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].valueOf(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:334,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:336,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:336,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:336,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean,boolean)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:340,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttpResponse(int,io.netty.handler.codec.http2.Http2Headers,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 360
    functionLinenumberEnd: 373
    functionDepth: 10
    returnType: "io.netty.handler.codec.http.HttpResponse"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HttpConversionUtil].parseStatus(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.EmptyHttp2Headers].status()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].status()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean,boolean)"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2Headers].status()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    functionUses: 1
    ICount: 20
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:361,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers].status()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:361,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].parseStatus(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:364,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:366,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:366,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:366,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean,boolean)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:370,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpConversionUtil].toLowercaseMap(java.util.Iterator<?\
      \ extends CharSequence>,int)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpConversionUtil"
    linkageType: ""
    functionLinenumber: 472
    functionLinenumberEnd: 498
    functionDepth: 5
    returnType: "io.netty.handler.codec.http2.CharSequenceMap<AsciiString>"
    argCount: 2
    argTypes:
    - "java.util.Iterator<? extends CharSequence>"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.UnsupportedValueConverter].instance()"
    - "[io.netty.handler.codec.http2.CharSequenceMap].<init>(boolean,io.netty.handler.codec.ValueConverter,int)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.AsciiString].of(java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].toLowerCase()"
    - "[io.netty.util.AsciiString].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.DefaultHeaders].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.AsciiString].subSequence(int,int,boolean)"
    - "[io.netty.util.AsciiString].trim()"
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 48
    EdgeCount: 130
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:476"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:497"
        BranchSideFuncs:
        - "toLowerCase()"
        - "next()"
        - "forEachByte(io.netty.util.ByteProcessor)"
        - "of(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:496"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:480"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:489"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:488"
        BranchSideFuncs:
        - "trim()"
        - "add(java.lang.Object,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:485"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:487"
        BranchSideFuncs:
        - "forEachByte(int,int,io.netty.util.ByteProcessor)"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:486"
        BranchSideFuncs:
        - "subSequence(int,int,boolean)"
        - "length()"
    - Branch String: "io.netty.handler.codec.http2.HttpConversionUtil:486"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:483"
        BranchSideFuncs:
        - "subSequence(int,int,boolean)"
        - "length()"
      - BranchSide: "io.netty.handler.codec.http2.HttpConversionUtil:482"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:473,1"
      Dst: "[io.netty.handler.codec.UnsupportedValueConverter].instance()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:474,1"
      Dst: "[io.netty.handler.codec.http2.CharSequenceMap].<init>(boolean,io.netty.handler.codec.ValueConverter,int)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:476,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:477,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:477,1"
      Dst: "[io.netty.util.AsciiString].of(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:477,1"
      Dst: "[io.netty.util.AsciiString].toLowerCase()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:479,1"
      Dst: "[io.netty.util.AsciiString].forEachByte(io.netty.util.ByteProcessor)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:483,1"
      Dst: "[io.netty.util.AsciiString].subSequence(int,int,boolean)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:483,1"
      Dst: "[io.netty.util.AsciiString].trim()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:483,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].add(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:485,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:486,1"
      Dst: "[io.netty.util.AsciiString].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - Src: "io.netty.handler.codec.http2.HttpConversionUtil:494,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.UnsupportedValueConverter].instance()"
    functionSourceFile: "io.netty.handler.codec.UnsupportedValueConverter"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "io.netty.handler.codec.UnsupportedValueConverter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.CharSequenceMap].<init>(boolean,io.netty.handler.codec.ValueConverter,int)"
    functionSourceFile: "io.netty.handler.codec.http2.CharSequenceMap"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "io.netty.handler.codec.ValueConverter"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.CharSequenceMap:45"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.CharSequenceMap:45"
        BranchSideFuncs:
        - "<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int)"
      - BranchSide: "io.netty.handler.codec.http2.CharSequenceMap:44"
        BranchSideFuncs:
        - "<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.CharSequenceMap:45,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].openChannel()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.sun.nio.sctp.SctpChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.sun.nio.sctp.SctpChannel].open()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:85,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].open()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:87,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].<init>()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.oio.OioSctpChannel].openChannel()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].<init>(com.sun.nio.sctp.SctpChannel)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:95,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel].openChannel()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:95,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel].<init>(com.sun.nio.sctp.SctpChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].<init>(com.sun.nio.sctp.SctpChannel)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.sun.nio.sctp.SctpChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.oio.OioSctpChannel].<init>(io.netty.channel.Channel,com.sun.nio.sctp.SctpChannel)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:104,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel].<init>(io.netty.channel.Channel,com.sun.nio.sctp.SctpChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].<init>(io.netty.channel.Channel,com.sun.nio.sctp.SctpChannel)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 143
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "com.sun.nio.sctp.SctpChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.oio.AbstractOioMessageChannel].<init>(io.netty.channel.Channel)"
    - "[java.nio.channels.Selector].open()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$OioSctpChannelConfig].<init>(io.netty.channel.sctp.oio.OioSctpChannel,io.netty.channel.sctp.oio.OioSctpChannel,com.sun.nio.sctp.SctpChannel,io.netty.channel.sctp.oio.OioSctpChannel$1)"
    - "[io.netty.channel.sctp.SctpNotificationHandler].<init>(io.netty.channel.sctp.SctpChannel)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.nio.channels.spi.AbstractSelectableChannel].configureBlocking(boolean)"
    - "[java.nio.channels.SelectableChannel].register(java.nio.channels.Selector,int)"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 44
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:134"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:142"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "<init>(java.lang.String,java.lang.Throwable)"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:141"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:134"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:141"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "<init>(java.lang.String,java.lang.Throwable)"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:115,1"
      Dst: "[io.netty.channel.oio.AbstractOioMessageChannel].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:119,1"
      Dst: "[java.nio.channels.spi.AbstractSelectableChannel].configureBlocking(boolean)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:120,1"
      Dst: "[java.nio.channels.Selector].open()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:124,1"
      Dst: "[java.nio.channels.SelectableChannel].register(java.nio.channels.Selector,int)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:128,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel$OioSctpChannelConfig].<init>(io.netty.channel.sctp.oio.OioSctpChannel,io.netty.channel.sctp.oio.OioSctpChannel,com.sun.nio.sctp.SctpChannel,io.netty.channel.sctp.oio.OioSctpChannel$1)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:129,1"
      Dst: "[io.netty.channel.sctp.SctpNotificationHandler].<init>(io.netty.channel.sctp.SctpChannel)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:136,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:138,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:132,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].localAddress()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:146,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:151,1"
      Dst: "[io.netty.channel.AbstractChannel].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].parent()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "io.netty.channel.sctp.SctpServerChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].parent()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:156,1"
      Dst: "[io.netty.channel.AbstractChannel].parent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].metadata()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "io.netty.channel.ChannelMetadata"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionDepth: 0
    returnType: "io.netty.channel.sctp.SctpChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 53
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].isOpen()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].isOpen()"
    functionUses: 10
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:171,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].isOpen()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].doReadMessages(java.util.List<Object>)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 219
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].isOpen()"
    - "[java.nio.channels.spi.AbstractSelector].isOpen()"
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].select(long)"
    - "[io.netty.channel.group.DefaultChannelGroup].clear()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].clear()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].clear()"
    - "[java.util.HashSet].clear()"
    - "[java.util.TreeMap$KeySet].clear()"
    - "[io.netty.util.internal.ConcurrentSet].clear()"
    - "[java.util.AbstractCollection].clear()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].clear()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].clear()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].clear()"
    - "[java.util.TreeMap$EntrySet].clear()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].clear()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].clear()"
    - "[java.util.TreeSet].clear()"
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].selectedKeys()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].recvBufAllocHandle()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].recvBufAllocHandle()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].nioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].lastBytesRead(int)"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].lastBytesRead(int)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].lastBytesRead(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.channel.sctp.SctpMessage].<init>(com.sun.nio.sctp.MessageInfo,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].lastBytesRead()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].lastBytesRead()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[java.nio.channels.Selector].isOpen()"
    - "[java.nio.channels.Selector].select(long)"
    - "[java.nio.channels.Selector].selectedKeys()"
    - "[java.util.Set].clear()"
    - "[io.netty.channel.Channel$Unsafe].recvBufAllocHandle()"
    - "[io.netty.channel.ChannelConfig].getAllocator()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - "[com.sun.nio.sctp.SctpChannel].receive(java.nio.ByteBuffer,java.lang.Object,com.sun.nio.sctp.NotificationHandler)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.Buffer].remaining()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 63
    EdgeCount: 145
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:176"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:180"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:179"
        BranchSideFuncs:
        - "select(long)"
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:183"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:180"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "selectedKeys()"
        - "add(java.lang.Object)"
        - "config()"
        - "writerIndex()"
        - "recvBufAllocHandle()"
        - "writableBytes()"
        - "select(long)"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "nioBuffer(int,int)"
        - "writerIndex(int)"
        - "getAllocator()"
        - "throwException(java.lang.Throwable)"
        - "unsafe()"
        - "<init>(com.sun.nio.sctp.MessageInfo,io.netty.buffer.ByteBuf)"
        - "lastBytesRead()"
        - "clear()"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:179"
        BranchSideFuncs:
        - "select(long)"
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:185"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:193"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:192"
        BranchSideFuncs:
        - "selectedKeys()"
        - "config()"
        - "recvBufAllocHandle()"
        - "writableBytes()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "nioBuffer(int,int)"
        - "getAllocator()"
        - "unsafe()"
        - "clear()"
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:201"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:205"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:204"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "add(java.lang.Object)"
        - "writerIndex()"
        - "writerIndex(int)"
        - "throwException(java.lang.Throwable)"
        - "<init>(com.sun.nio.sctp.MessageInfo,io.netty.buffer.ByteBuf)"
        - "lastBytesRead()"
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:214"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:202"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:201"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:214"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:218"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:217"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:214"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:218"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:217"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:214"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:217"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:216"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:176,1"
      Dst: "[java.nio.channels.Selector].isOpen()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:182,1"
      Dst: "[java.nio.channels.Selector].select(long)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:193,1"
      Dst: "[java.nio.channels.Selector].selectedKeys()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:193,1"
      Dst: "[java.util.Set].clear()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:194,1"
      Dst: "[io.netty.channel.AbstractChannel].unsafe()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:194,1"
      Dst: "[io.netty.channel.Channel$Unsafe].recvBufAllocHandle()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:195,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:195,1"
      Dst: "[io.netty.channel.ChannelConfig].getAllocator()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:195,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].allocate(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:199,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:199,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:199,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:200,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].receive(java.nio.ByteBuffer,java.lang.Object,com.sun.nio.sctp.NotificationHandler)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:215,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:205,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:206,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:206,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead(int)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:208,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:208,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:208,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].<init>(com.sun.nio.sctp.MessageInfo,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:207,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:212,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.sctp.SctpMessage].<init>(com.sun.nio.sctp.MessageInfo,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.sctp.SctpMessage"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 70
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.sun.nio.sctp.MessageInfo"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[com.sun.nio.sctp.MessageInfo].streamNumber()"
    - "[com.sun.nio.sctp.MessageInfo].payloadProtocolID()"
    - "[com.sun.nio.sctp.MessageInfo].isUnordered()"
    functionUses: 3
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.SctpMessage:64,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.sctp.SctpMessage:65,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.sctp.SctpMessage:66,1"
      Dst: "[com.sun.nio.sctp.MessageInfo].streamNumber()"
    - Src: "io.netty.channel.sctp.SctpMessage:67,1"
      Dst: "[com.sun.nio.sctp.MessageInfo].payloadProtocolID()"
    - Src: "io.netty.channel.sctp.SctpMessage:68,1"
      Dst: "[com.sun.nio.sctp.MessageInfo].isUnordered()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].doWrite(io.netty.channel.ChannelOutboundBuffer)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 222
    functionLinenumberEnd: 275
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].isOpen()"
    - "[java.nio.channels.spi.AbstractSelector].isOpen()"
    - "[io.netty.channel.ChannelOutboundBuffer].size()"
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].select(long)"
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].selectedKeys()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].isEmpty()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].isEmpty()"
    - "[java.util.TreeSet].isEmpty()"
    - "[java.util.TreeMap$KeySet].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[io.netty.channel.group.DefaultChannelGroup].isEmpty()"
    - "[java.util.HashSet].isEmpty()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].remove()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].remove()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].remove()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].remove()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].remove()"
    - "[io.netty.channel.nio.NioEventLoop$7].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].remove()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].remove()"
    - "[io.netty.util.internal.ReadOnlyIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].remove()"
    - "[io.netty.channel.group.CombinedIterator].remove()"
    - "[java.util.Iterator].remove()"
    - "[io.netty.channel.ChannelOutboundBuffer].current()"
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer()"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer()"
    - "[io.netty.buffer.AbstractByteBuf].nioBuffer()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer()"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer()"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].association()"
    - "[com.sun.nio.sctp.MessageInfo].createOutgoing(com.sun.nio.sctp.Association,java.net.SocketAddress,int)"
    - "[io.netty.channel.sctp.SctpMessage].streamIdentifier()"
    - "[io.netty.channel.sctp.SctpMessage].protocolIdentifier()"
    - "[io.netty.channel.sctp.SctpMessage].isUnordered()"
    - "[io.netty.channel.ChannelOutboundBuffer].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[java.nio.channels.Selector].isOpen()"
    - "[java.nio.channels.Selector].select(long)"
    - "[java.nio.channels.Selector].selectedKeys()"
    - "[java.util.Set].isEmpty()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].nioBuffer()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    - "[com.sun.nio.sctp.MessageInfo].payloadProtocolID(int)"
    - "[com.sun.nio.sctp.MessageInfo].streamNumber(int)"
    - "[com.sun.nio.sctp.MessageInfo].unordered(boolean)"
    - "[com.sun.nio.sctp.SctpChannel].send(java.nio.ByteBuffer,com.sun.nio.sctp.MessageInfo)"
    - "[java.util.Iterator].hasNext()"
    functionUses: 1
    ICount: 55
    EdgeCount: 265
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:223"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:226"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:225"
        BranchSideFuncs:
        - "select(long)"
        - "size()"
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:228"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:274"
        BranchSideFuncs:
        - "selectedKeys()"
        - "isEmpty()"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:273"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:230"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:233"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:232"
        BranchSideFuncs:
        - "iterator()"
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:236"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:239"
        BranchSideFuncs:
        - "next()"
        - "current()"
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:244"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:248"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:247"
        BranchSideFuncs:
        - "content()"
        - "nioBufferCount()"
        - "readableBytes()"
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:252"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:255"
        BranchSideFuncs:
        - "nioBuffer()"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:254"
        BranchSideFuncs:
        - "allocate(int)"
        - "readerIndex()"
        - "getBytes(int,java.nio.ByteBuffer)"
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:269"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:272"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:223,1"
      Dst: "[java.nio.channels.Selector].isOpen()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:226,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].size()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:227,1"
      Dst: "[java.nio.channels.Selector].select(long)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:229,1"
      Dst: "[java.nio.channels.Selector].selectedKeys()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:230,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:233,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:240,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:241,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:243,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].current()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:248,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:249,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:252,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:253,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:255,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:256,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:256,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:257,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:260,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel].association()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:260,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].streamIdentifier()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:260,1"
      Dst: "[com.sun.nio.sctp.MessageInfo].createOutgoing(com.sun.nio.sctp.Association,java.net.SocketAddress,int)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:261,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].protocolIdentifier()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:261,1"
      Dst: "[com.sun.nio.sctp.MessageInfo].payloadProtocolID(int)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:262,1"
      Dst: "[com.sun.nio.sctp.MessageInfo].streamNumber(int)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:263,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].isUnordered()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:263,1"
      Dst: "[com.sun.nio.sctp.MessageInfo].unordered(boolean)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:265,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].send(java.nio.ByteBuffer,com.sun.nio.sctp.MessageInfo)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:267,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].remove()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:269,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].size()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 635
    functionLinenumberEnd: 637
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].association()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 288
    functionLinenumberEnd: 292
    functionDepth: 0
    returnType: "com.sun.nio.sctp.Association"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.sun.nio.sctp.SctpChannel].association()"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:289,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].association()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].filterOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 277
    functionLinenumberEnd: 284
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 16
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:278"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:282"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:281"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:282,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:282,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:283,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:283,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:283,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 296
    functionLinenumberEnd: 298
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.oio.OioSctpChannel].association()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isOpen()"
    functionUses: 36
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:297"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:296"
        BranchSideFuncs:
        - "association()"
        - "isOpen()"
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:297"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:296"
        BranchSideFuncs:
        - "association()"
        - "isOpen()"
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:297,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel].isOpen()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:297,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel].association()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 302
    functionLinenumberEnd: 311
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[com.sun.nio.sctp.SctpChannel].getAllLocalAddresses()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 132
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:304"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:309"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:308"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:303,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].getAllLocalAddresses()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:303,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:304,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:305,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].allLocalAddresses()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.sun.nio.sctp.SctpChannel].getAllLocalAddresses()"
    - "[java.util.Set].size()"
    - "[java.util.LinkedHashSet].<init>(int)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Collections].emptySet()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:318"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:321"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:320"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:316,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].getAllLocalAddresses()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:317,1"
      Dst: "[java.util.Set].size()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:317,1"
      Dst: "[java.util.LinkedHashSet].<init>(int)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:318,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:318,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:318,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:319,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:323,1"
      Dst: "[java.util.Collections].emptySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].remoteAddress0()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 329
    functionLinenumberEnd: 338
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[com.sun.nio.sctp.SctpChannel].getRemoteAddresses()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 132
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:331"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:336"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:335"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:330,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].getRemoteAddresses()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:330,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:331,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:332,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].allRemoteAddresses()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.sun.nio.sctp.SctpChannel].getRemoteAddresses()"
    - "[java.util.Set].size()"
    - "[java.util.LinkedHashSet].<init>(int)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Collections].emptySet()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:345"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:348"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:347"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:343,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].getRemoteAddresses()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:344,1"
      Dst: "[java.util.Set].size()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:344,1"
      Dst: "[java.util.LinkedHashSet].<init>(int)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:345,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:345,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:345,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:346,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:350,1"
      Dst: "[java.util.Collections].emptySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 355
    functionLinenumberEnd: 358
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.sun.nio.sctp.SctpChannel].bind(java.net.SocketAddress)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:356,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].bind(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 361
    functionLinenumberEnd: 390
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].select(long)"
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].selectedKeys()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.channel.group.DefaultChannelGroup].clear()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].clear()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].clear()"
    - "[java.util.HashSet].clear()"
    - "[java.util.TreeMap$KeySet].clear()"
    - "[io.netty.util.internal.ConcurrentSet].clear()"
    - "[java.util.AbstractCollection].clear()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].clear()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].clear()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].clear()"
    - "[java.util.TreeMap$EntrySet].clear()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].clear()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].clear()"
    - "[java.util.TreeSet].clear()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].doClose()"
    - "[com.sun.nio.sctp.SctpChannel].bind(java.net.SocketAddress)"
    - "[com.sun.nio.sctp.SctpChannel].connect(java.net.SocketAddress)"
    - "[java.nio.channels.Selector].select(long)"
    - "[java.nio.channels.Selector].selectedKeys()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.nio.channels.SelectionKey].isConnectable()"
    - "[java.util.Set].clear()"
    - "[com.sun.nio.sctp.SctpChannel].finishConnect()"
    functionUses: 1
    ICount: 38
    EdgeCount: 164
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:362"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:368"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:367"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:370"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:383"
        BranchSideFuncs:
        - "select(long)"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:382"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:371"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:370"
        BranchSideFuncs:
        - "selectedKeys()"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:369"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:373"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:380"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:379"
        BranchSideFuncs:
        - "clear()"
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:374"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:379"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:378"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:385"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:389"
        BranchSideFuncs:
        - "doClose()"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:388"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:385"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:388"
        BranchSideFuncs:
        - "doClose()"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:387"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:363,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].bind(java.net.SocketAddress)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:368,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].connect(java.net.SocketAddress)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:371,1"
      Dst: "[java.nio.channels.Selector].select(long)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:372,1"
      Dst: "[java.nio.channels.Selector].selectedKeys()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:373,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:373,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:373,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:374,1"
      Dst: "[java.nio.channels.SelectionKey].isConnectable()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:375,1"
      Dst: "[java.util.Set].clear()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:383,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].finishConnect()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:386,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel].doClose()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 7
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].doClose()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 397
    functionLinenumberEnd: 403
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.oio.OioSctpChannel].closeSelector(java.lang.String,java.nio.channels.Selector)"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    functionUses: 6
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:398,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel].closeSelector(java.lang.String,java.nio.channels.Selector)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:401,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].closeSelector(java.lang.String,java.nio.channels.Selector)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 405
    functionLinenumberEnd: 413
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.nio.channels.Selector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].close()"
    - "[java.nio.channels.spi.AbstractSelector].close()"
    - "[io.netty.util.internal.logging.JdkLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isWarnEnabled()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.nio.channels.Selector].close()"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 3
    ICount: 17
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpChannel:408"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:412"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "isWarnEnabled()"
        - "close()"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpChannel:411"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:406,1"
      Dst: "[java.nio.channels.Selector].close()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:408,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:409,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:409,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:409,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:409,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].doDisconnect()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 392
    functionLinenumberEnd: 395
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.oio.OioSctpChannel].doClose()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:393,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel].doClose()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].bindAddress(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:416,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:416,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].unbindAddress(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:441,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:441,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel].access$100(io.netty.channel.sctp.oio.OioSctpChannel)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.sctp.oio.OioSctpChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.oio.AbstractOioChannel].clearReadPending()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel:65,1"
      Dst: "[io.netty.channel.oio.AbstractOioChannel].clearReadPending()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig$DateValueGenerator].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig$DateValueGenerator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$DateValueGenerator:448,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig$DateValueGenerator].call()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig$DateValueGenerator"
    linkageType: ""
    functionLinenumber: 451
    functionLinenumberEnd: 453
    functionDepth: 0
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Date].<init>()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$DateValueGenerator:452,1"
      Dst: "[java.util.Date].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:36,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeQuestion(io.netty.handler.codec.dns.DnsQuestion,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsQuestion"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeName(java.lang.String,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].name()"
    - "[io.netty.handler.codec.dns.DnsRecordType].intValue()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].type()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].dnsClass()"
    - "[io.netty.handler.codec.dns.DnsRecord].name()"
    - "[io.netty.handler.codec.dns.DnsRecord].type()"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.dns.DnsRecord].dnsClass()"
    functionUses: 3
    ICount: 11
    EdgeCount: 25
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:40,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].name()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:40,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeName(java.lang.String,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:41,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].type()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:41,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecordType].intValue()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:41,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:42,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].dnsClass()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeName(java.lang.String,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsCodecUtil].encodeDomainName(java.lang.String,io.netty.buffer.ByteBuf)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:141,1"
      Dst: "[io.netty.handler.codec.dns.DnsCodecUtil].encodeDomainName(java.lang.String,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsCodecUtil].encodeDomainName(java.lang.String,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsCodecUtil"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 52
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[java.lang.String].split(java.lang.String)"
    - "[java.lang.String].length()"
    - "[io.netty.buffer.ByteBufUtil].writeAscii(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    functionUses: 2
    ICount: 21
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsCodecUtil:32"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:37"
        BranchSideFuncs:
        - "split(java.lang.String)"
    - Branch String: "io.netty.handler.codec.dns.DnsCodecUtil:39"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:50"
        BranchSideFuncs:
        - "length()"
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:49"
        BranchSideFuncs:
        - "writeByte(int)"
    - Branch String: "io.netty.handler.codec.dns.DnsCodecUtil:41"
      Branch Sides: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:32,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:34,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:38,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:40,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:47,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeAscii(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeRecord(io.netty.handler.codec.dns.DnsRecord,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 61
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecord"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeQuestion(io.netty.handler.codec.dns.DnsQuestion,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodePtrRecord(io.netty.handler.codec.dns.DnsPtrRecord,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeOptEcsRecord(io.netty.handler.codec.dns.DnsOptEcsRecord,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeOptPseudoRecord(io.netty.handler.codec.dns.DnsOptPseudoRecord,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeRawRecord(io.netty.handler.codec.dns.DnsRawRecord,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.UnsupportedMessageTypeException].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    functionUses: 2
    ICount: 33
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:49"
        BranchSideFuncs:
        - "encodeQuestion(io.netty.handler.codec.dns.DnsQuestion,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:48"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:49"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:51"
        BranchSideFuncs:
        - "encodePtrRecord(io.netty.handler.codec.dns.DnsPtrRecord,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:50"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:53"
        BranchSideFuncs:
        - "encodeOptEcsRecord(io.netty.handler.codec.dns.DnsOptEcsRecord,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:52"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:55"
        BranchSideFuncs:
        - "encodeOptPseudoRecord(io.netty.handler.codec.dns.DnsOptPseudoRecord,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:54"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:58"
        BranchSideFuncs:
        - "encodeRawRecord(io.netty.handler.codec.dns.DnsRawRecord,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:57"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:48,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeQuestion(io.netty.handler.codec.dns.DnsQuestion,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:50,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodePtrRecord(io.netty.handler.codec.dns.DnsPtrRecord,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:52,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeOptEcsRecord(io.netty.handler.codec.dns.DnsOptEcsRecord,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:54,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeOptPseudoRecord(io.netty.handler.codec.dns.DnsOptPseudoRecord,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:56,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeRawRecord(io.netty.handler.codec.dns.DnsRawRecord,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:58,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:58,1"
      Dst: "[io.netty.handler.codec.UnsupportedMessageTypeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodePtrRecord(io.netty.handler.codec.dns.DnsPtrRecord,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 73
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsPtrRecord"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeRecord0(io.netty.handler.codec.dns.DnsRecord,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeName(java.lang.String,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DefaultDnsPtrRecord].hostname()"
    - "[io.netty.handler.codec.dns.DnsPtrRecord].hostname()"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:70,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeRecord0(io.netty.handler.codec.dns.DnsRecord,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:71,1"
      Dst: "[io.netty.handler.codec.dns.DnsPtrRecord].hostname()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:71,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeName(java.lang.String,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeRecord0(io.netty.handler.codec.dns.DnsRecord,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 68
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecord"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeName(java.lang.String,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].name()"
    - "[io.netty.handler.codec.dns.DnsRecordType].intValue()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].type()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].dnsClass()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].timeToLive()"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.dns.DnsRecord].name()"
    - "[io.netty.handler.codec.dns.DnsRecord].type()"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.dns.DnsRecord].dnsClass()"
    - "[io.netty.handler.codec.dns.DnsRecord].timeToLive()"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    functionUses: 4
    ICount: 14
    EdgeCount: 36
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:63,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].name()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:63,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeName(java.lang.String,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:64,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].type()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:64,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecordType].intValue()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:64,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:65,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].dnsClass()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:66,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecord].timeToLive()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:66,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeOptEcsRecord(io.netty.handler.codec.dns.DnsOptEcsRecord,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 124
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsOptEcsRecord"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeRecord0(io.netty.handler.codec.dns.DnsRecord,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].sourcePrefixLength()"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].scopePrefixLength()"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].address()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.socket.InternetProtocolFamily].addressNumber()"
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].calculateEcsAddressLength(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].padWithZeros(byte,int)"
    - "[io.netty.handler.codec.dns.DnsOptEcsRecord].sourcePrefixLength()"
    - "[io.netty.handler.codec.dns.DnsOptEcsRecord].scopePrefixLength()"
    - "[io.netty.handler.codec.dns.DnsOptEcsRecord].address()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    functionUses: 1
    ICount: 52
    EdgeCount: 97
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:88"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:89"
        BranchSideFuncs:
        - "toString()"
        - "append(char)"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:88"
        BranchSideFuncs:
        - "toString()"
        - "append(char)"
        - "<init>()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:88"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:94"
        BranchSideFuncs:
        - "toString()"
        - "append(char)"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:93"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:94"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:94"
        BranchSideFuncs:
        - "addressNumber()"
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:93"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:121"
        BranchSideFuncs:
        - "padWithZeros(byte,int)"
        - "writeByte(int)"
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:120"
        BranchSideFuncs:
        - "writeBytes(byte[],int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:80,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeRecord0(io.netty.handler.codec.dns.DnsRecord,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:82,1"
      Dst: "[io.netty.handler.codec.dns.DnsOptEcsRecord].sourcePrefixLength()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:83,1"
      Dst: "[io.netty.handler.codec.dns.DnsOptEcsRecord].scopePrefixLength()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:86,1"
      Dst: "[io.netty.handler.codec.dns.DnsOptEcsRecord].address()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:89,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:89,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:89,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:89,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:89,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:89,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:95,1"
      Dst: "[io.netty.channel.socket.InternetProtocolFamily].addressNumber()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:96,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].calculateEcsAddressLength(int,int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:105,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:110,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:115,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:118,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].padWithZeros(byte,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].calculateEcsAddressLength(int,int)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:126"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].padWithZeros(byte,int)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 166
    functionDepth: 0
    returnType: "byte"
    argCount: 2
    argTypes:
    - "byte"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 41
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:165,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:165,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:165,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:165,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:165,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeOptPseudoRecord(io.netty.handler.codec.dns.DnsOptPseudoRecord,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsOptPseudoRecord"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeRecord0(io.netty.handler.codec.dns.DnsRecord,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:75,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeRecord0(io.netty.handler.codec.dns.DnsRecord,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:76,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeRawRecord(io.netty.handler.codec.dns.DnsRawRecord,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 139
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsRawRecord"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeRecord0(io.netty.handler.codec.dns.DnsRecord,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 33
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:131,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeRecord0(io.netty.handler.codec.dns.DnsRecord,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:133,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:134,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:136,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:137,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsRecordEncoder:137,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.CleanerJava6$2].<init>(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.util.internal.CleanerJava6$2"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.CleanerJava6$2:122,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.CleanerJava6$2].run()"
    functionSourceFile: "io.netty.util.internal.CleanerJava6$2"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 130
    functionDepth: 3
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.CleanerJava6].access$000(java.nio.ByteBuffer)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.CleanerJava6$2:126,1"
      Dst: "[io.netty.util.internal.CleanerJava6].access$000(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.CleanerJava6].access$000(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.util.internal.CleanerJava6"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.CleanerJava6].freeDirectBuffer0(java.nio.ByteBuffer)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.CleanerJava6:34,1"
      Dst: "[io.netty.util.internal.CleanerJava6].freeDirectBuffer0(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.CleanerJava6].freeDirectBuffer0(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.util.internal.CleanerJava6"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 151
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Field].get(java.lang.Object)"
    - "[io.netty.util.internal.PlatformDependent0].getObject(java.lang.Object,long)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    functionUses: 2
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.CleanerJava6:142"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.CleanerJava6:145"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "io.netty.util.internal.CleanerJava6:144"
        BranchSideFuncs:
        - "getObject(java.lang.Object,long)"
    - Branch String: "io.netty.util.internal.CleanerJava6:147"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.CleanerJava6:150"
        BranchSideFuncs:
        - "invoke(java.lang.Object,java.lang.Object[])"
      - BranchSide: "io.netty.util.internal.CleanerJava6:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.CleanerJava6:143,1"
      Dst: "[java.lang.reflect.Field].get(java.lang.Object)"
    - Src: "io.netty.util.internal.CleanerJava6:145,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getObject(java.lang.Object,long)"
    - Src: "io.netty.util.internal.CleanerJava6:148,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent0].getObject(java.lang.Object,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 606
    functionLinenumberEnd: 608
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getObject(java.lang.Object,long)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:607,1"
      Dst: "[sun.misc.Unsafe].getObject(java.lang.Object,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.InterfaceHttpData$HttpDataType].values()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InterfaceHttpData$HttpDataType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData$HttpDataType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InterfaceHttpData$HttpDataType:24,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.InterfaceHttpData$HttpDataType].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InterfaceHttpData$HttpDataType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData$HttpDataType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InterfaceHttpData$HttpDataType:24,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.InterfaceHttpData$HttpDataType].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InterfaceHttpData$HttpDataType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InterfaceHttpData$HttpDataType:24,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:47,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttMessage,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionDepth: 12
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.mqtt.MqttMessage"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].doEncode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttMessage)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:51,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].doEncode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttMessage)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:51,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].doEncode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttMessage)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 106
    functionDepth: 11
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.mqtt.MqttMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].messageType()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodeConnectMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttConnectMessage)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodeConnAckMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttConnAckMessage)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodePublishMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttPublishMessage)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodeSubscribeMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttSubscribeMessage)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodeUnsubscribeMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttUnsubscribeMessage)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodeSubAckMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttSubAckMessage)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodeUnsubAckMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttUnsubAckMessage)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodeMessageWithOnlySingleByteFixedHeaderAndMessageId(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttMessage)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodePubReplyMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttMessage)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodeReasonCodePlusPropertiesMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttMessage)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodeMessageWithOnlySingleByteFixedHeader(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttMessage)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageType].value()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    functionUses: 1
    ICount: 52
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:87"
        BranchSideFuncs:
        - "encodeUnsubAckMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttUnsubAckMessage)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:86"
        BranchSideFuncs:
        - "encodeMessageWithOnlySingleByteFixedHeaderAndMessageId(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttMessage)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:64,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:64,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].messageType()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:64,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:66,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeConnectMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttConnectMessage)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:69,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeConnAckMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttConnAckMessage)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:72,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodePublishMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttPublishMessage)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:75,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeSubscribeMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttSubscribeMessage)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:78,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeUnsubscribeMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttUnsubscribeMessage)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:81,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeSubAckMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttSubAckMessage)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:85,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeUnsubAckMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttUnsubAckMessage)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:87,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:87,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeMessageWithOnlySingleByteFixedHeaderAndMessageId(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttMessage)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:93,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodePubReplyMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttMessage)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:97,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeReasonCodePlusPropertiesMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttMessage)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:101,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeMessageWithOnlySingleByteFixedHeader(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttMessage)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:104,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:104,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:105,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageType].value()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:105,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:105,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:105,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessage"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttFixedHeader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttFixedHeader].messageType()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttFixedHeader"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeConnectMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttConnectMessage)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 209
    functionDepth: 10
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.mqtt.MqttConnectMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - "[io.netty.handler.codec.mqtt.MqttConnectMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttConnectMessage].payload()"
    - "[io.netty.handler.codec.mqtt.MqttVersion].fromProtocolNameAndLevel(java.lang.String,byte)"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].name()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].version()"
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].setMqttVersion(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttVersion)"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].hasPassword()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].hasUserName()"
    - "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].clientIdentifier()"
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].isValidClientId(io.netty.handler.codec.mqtt.MqttVersion,int,java.lang.String)"
    - "[io.netty.handler.codec.mqtt.MqttIdentifierRejectedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBufUtil].utf8Bytes(java.lang.CharSequence)"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].willTopic()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].nullableUtf8Bytes(java.lang.String)"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].willMessageInBytes()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].isWillFlag()"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].userName()"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].passwordInBytes()"
    - "[io.netty.handler.codec.mqtt.MqttVersion].protocolNameBytes()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].properties()"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].willProperties()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getConnVariableHeaderFlag(io.netty.handler.codec.mqtt.MqttConnectVariableHeader)"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].keepAliveTimeSeconds()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].writeExactUTF8String(io.netty.buffer.ByteBuf,java.lang.String,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 129
    EdgeCount: 227
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:122"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:127"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:126"
        BranchSideFuncs:
        - "isValidClientId(io.netty.handler.codec.mqtt.MqttVersion,int,java.lang.String)"
        - "clientIdentifier()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:122"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:127"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:126"
        BranchSideFuncs:
        - "isValidClientId(io.netty.handler.codec.mqtt.MqttVersion,int,java.lang.String)"
        - "clientIdentifier()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:131"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:130"
        BranchSideFuncs:
        - "willMessageInBytes()"
        - "utf8Bytes(java.lang.CharSequence)"
        - "willTopic()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:131"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:130"
        BranchSideFuncs:
        - "willMessageInBytes()"
        - "utf8Bytes(java.lang.CharSequence)"
        - "willTopic()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:139"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:144"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:143"
        BranchSideFuncs:
        - "nullableUtf8Bytes(java.lang.String)"
        - "userName()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:146"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:150"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:149"
        BranchSideFuncs:
        - "passwordInBytes()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:151"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:150"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:149"
        BranchSideFuncs:
        - "passwordInBytes()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:152"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:156"
        BranchSideFuncs:
        - "protocolNameBytes()"
        - "properties()"
        - "variableHeader()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:164"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:168"
        BranchSideFuncs:
        - "encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
        - "willProperties()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:167"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:189"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:195"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:194"
        BranchSideFuncs:
        - "hasUserName()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:195"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:198"
        BranchSideFuncs:
        - "writeExactUTF8String(io.netty.buffer.ByteBuf,java.lang.String,int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:197"
        BranchSideFuncs:
        - "hasPassword()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:198"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:123"
        BranchSideFuncs:
        - "writeShort(int)"
        - "writeBytes(byte[],int,int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:122"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "passwordInBytes()"
        - "willMessageInBytes()"
        - "writeBytes(byte[])"
        - "hasPassword()"
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "isValidClientId(io.netty.handler.codec.mqtt.MqttVersion,int,java.lang.String)"
        - "writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
        - "writeShort(int)"
        - "writeBytes(byte[],int,int)"
        - "<init>()"
        - "clientIdentifier()"
        - "writeByte(int)"
        - "hasUserName()"
        - "utf8Bytes(java.lang.CharSequence)"
        - "alloc()"
        - "getConnVariableHeaderFlag(io.netty.handler.codec.mqtt.MqttConnectVariableHeader)"
        - "buffer(int)"
        - "release()"
        - "willTopic()"
        - "encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
        - "toString()"
        - "protocolNameBytes()"
        - "willProperties()"
        - "writeExactUTF8String(io.netty.buffer.ByteBuf,java.lang.String,int)"
        - "nullableUtf8Bytes(java.lang.String)"
        - "properties()"
        - "keepAliveTimeSeconds()"
        - "variableHeader()"
        - "version()"
        - "userName()"
        - "<init>(java.lang.String)"
        - "isWillFlag()"
        - "getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
        - "readableBytes()"
        - "getVariableLengthInt(int)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:114,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:115,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectMessage].variableHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:116,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectMessage].payload()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:117,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].name()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:118,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].version()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:117,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttVersion].fromProtocolNameAndLevel(java.lang.String,byte)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:119,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].setMqttVersion(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttVersion)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:122,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].hasUserName()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:122,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].hasPassword()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:123,1"
      Dst: "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:127,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectPayload].clientIdentifier()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:128,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].isValidClientId(io.netty.handler.codec.mqtt.MqttVersion,int,java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:129,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:129,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:129,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:129,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttIdentifierRejectedException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:131,1"
      Dst: "[io.netty.buffer.ByteBufUtil].utf8Bytes(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:135,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectPayload].willTopic()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:136,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].nullableUtf8Bytes(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:137,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectPayload].willMessageInBytes()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:139,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].isWillFlag()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:144,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectPayload].userName()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:150,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectPayload].passwordInBytes()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:157,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttVersion].protocolNameBytes()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:160,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:161,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].properties()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:158,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:165,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectPayload].willProperties()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:166,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:174,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:175,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:176,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:176,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:177,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:179,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:180,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:183,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getConnVariableHeaderFlag(io.netty.handler.codec.mqtt.MqttConnectVariableHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:184,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].keepAliveTimeSeconds()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:185,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:188,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].writeExactUTF8String(io.netty.buffer.ByteBuf,java.lang.String,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:193,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:204,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 29
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].name()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectVariableHeader"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].version()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectVariableHeader"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttCodecUtil].setMqttVersion(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttVersion)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttCodecUtil"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.mqtt.MqttVersion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DefaultAttributeMap].attr(io.netty.util.AttributeKey)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - "[io.netty.util.Attribute].set(java.lang.Object)"
    functionUses: 2
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:42,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:42,1"
      Dst: "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:43,1"
      Dst: "[io.netty.util.Attribute].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].hasUserName()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectVariableHeader"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].hasPassword()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectVariableHeader"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectPayload].clientIdentifier()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectPayload"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttCodecUtil].isValidClientId(io.netty.handler.codec.mqtt.MqttVersion,int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttCodecUtil"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttVersion"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 2
    ICount: 31
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttCodecUtil:61"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:65"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:64"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttCodecUtil:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:-1"
        BranchSideFuncs:
        - "length()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttCodecUtil:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:-1"
        BranchSideFuncs:
        - "length()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttCodecUtil:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttCodecUtil:65"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:67"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttCodecUtil:65"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:69"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttCodecUtil:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:62,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:70,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:70,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:70,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:70,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:70,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.mqtt.MqttIdentifierRejectedException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttIdentifierRejectedException"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttIdentifierRejectedException:43,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectPayload].willTopic()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectPayload"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].nullableUtf8Bytes(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 696
    functionLinenumberEnd: 698
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].utf8Bytes(java.lang.CharSequence)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:697"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:696"
        BranchSideFuncs:
        - "utf8Bytes(java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:697,1"
      Dst: "[io.netty.buffer.ByteBufUtil].utf8Bytes(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectPayload].willMessageInBytes()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectPayload"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].isWillFlag()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectVariableHeader"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectPayload].userName()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectPayload"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectPayload].passwordInBytes()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectPayload"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].properties()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectVariableHeader"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 576
    functionLinenumberEnd: 581
    functionDepth: 9
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttVersion"
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodeProperties(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    functionUses: 8
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:577"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:580"
        BranchSideFuncs:
        - "encodeProperties(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:579"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:578,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeProperties(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeProperties(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 584
    functionLinenumberEnd: 669
    functionDepth: 8
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.handler.codec.mqtt.MqttProperties].listAll()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType].valueOf(int)"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - "[java.lang.Integer].byteValue()"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[java.lang.Integer].shortValue()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].writeEagerUTF8String(io.netty.buffer.ByteBuf,java.lang.String)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBufAllocator].buffer()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    - "[java.util.List].iterator()"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 3
    ICount: 103
    EdgeCount: 413
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:590"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:659"
        BranchSideFuncs:
        - "valueOf(int)"
        - "listAll()"
        - "ordinal()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:658"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:641"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:646"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "writeEagerUTF8String(io.netty.buffer.ByteBuf,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:645"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:585,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:590,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties].listAll()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:590,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:590,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:590,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:592,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType].valueOf(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:593,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:602,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:603,1"
      Dst: "[java.lang.Integer].byteValue()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:604,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:612,1"
      Dst: "[java.lang.Integer].shortValue()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:613,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:620,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:621,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:636,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].writeEagerUTF8String(io.netty.buffer.ByteBuf,java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:641,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:652,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:656,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:656,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:656,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:656,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:656,1"
      Dst: "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:659,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:660,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:664,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties].listAll()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties"
    linkageType: ""
    functionLinenumber: 338
    functionLinenumberEnd: 360
    functionDepth: 4
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptyList()"
    - "[io.netty.util.collection.IntObjectHashMap].values()"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.util.collection.IntObjectHashMap].size()"
    - "[io.netty.util.internal.RecyclableArrayList].addAll(java.util.Collection)"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].access$100(java.util.Collection)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.List].addAll(java.util.Collection)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 39
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:340"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:343"
        BranchSideFuncs:
        - "emptyList()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:342"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:340"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:343"
        BranchSideFuncs:
        - "emptyList()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:342"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:340"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:343"
        BranchSideFuncs:
        - "emptyList()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:342"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:343"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:346"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:345"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:343"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:346"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:345"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:346"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:349"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:348"
        BranchSideFuncs:
        - "<init>(int)"
        - "size()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:346"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:349"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:348"
        BranchSideFuncs:
        - "<init>(int)"
        - "size()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:349"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:349"
        BranchSideFuncs:
        - "<init>(int)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:348"
        BranchSideFuncs:
        - "<init>(int)"
        - "size()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:350"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:353"
        BranchSideFuncs:
        - "values()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:352"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:353"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:356"
        BranchSideFuncs:
        - "addAll(java.util.Collection)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:355"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:356"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:359"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "access$100(java.util.Collection)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:358"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:341,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:344,1"
      Dst: "[io.netty.util.collection.IntObjectHashMap].values()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:349,1"
      Dst: "[io.netty.util.collection.IntObjectHashMap].size()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:349,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:351,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:357,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].access$100(java.util.Collection)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:357,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 20
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].access$100(java.util.Collection)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 216
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].fromUserPropertyCollection(java.util.Collection)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:215,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].fromUserPropertyCollection(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].fromUserPropertyCollection(java.util.Collection)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 236
    functionDepth: 2
    returnType: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].<init>()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringPair].<init>(java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].add(io.netty.handler.codec.mqtt.MqttProperties$StringPair)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 19
    EdgeCount: 168
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:232"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:235"
        BranchSideFuncs:
        - "add(io.netty.handler.codec.mqtt.MqttProperties$StringPair)"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "<init>(java.lang.String,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:231,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:232,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:232,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:232,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:233,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$StringPair].<init>(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:233,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].add(io.netty.handler.codec.mqtt.MqttProperties$StringPair)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].add(io.netty.handler.codec.mqtt.MqttProperties$StringPair)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttProperties$StringPair"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:239,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType].valueOf(int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 2
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType:99"
        BranchSideFuncs:
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType:97,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType:97,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType:97,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 686
    functionLinenumberEnd: 695
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    functionUses: 19
    ICount: 11
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:689"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:692"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:691"
        BranchSideFuncs:
        - "writeByte(int)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:693"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:687"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:686"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:692,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].writeEagerUTF8String(io.netty.buffer.ByteBuf,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 713
    functionLinenumberEnd: 722
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttEncoder].nullableMaxUtf8Bytes(java.lang.String)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBufUtil].reserveAndWriteUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setShort(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].setShort(int,int)"
    functionUses: 3
    ICount: 14
    EdgeCount: 48
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:719"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:714"
        BranchSideFuncs:
        - "setShort(int,int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:713"
        BranchSideFuncs:
        - "nullableMaxUtf8Bytes(java.lang.String)"
        - "writerIndex(int)"
        - "reserveAndWriteUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence,int)"
        - "ensureWritable(int)"
        - "writerIndex()"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:714,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].nullableMaxUtf8Bytes(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:715,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:716,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:718,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:719,1"
      Dst: "[io.netty.buffer.ByteBufUtil].reserveAndWriteUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:720,1"
      Dst: "[io.netty.buffer.ByteBuf].setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].nullableMaxUtf8Bytes(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 700
    functionLinenumberEnd: 702
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].utf8MaxBytes(java.lang.CharSequence)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:701"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:700"
        BranchSideFuncs:
        - "utf8MaxBytes(java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:701,1"
      Dst: "[io.netty.buffer.ByteBufUtil].utf8MaxBytes(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].reserveAndWriteUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 782
    functionLinenumberEnd: 784
    functionDepth: 6
    returnType: "int"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[io.netty.buffer.ByteBufUtil].reserveAndWriteUtf8Seq(io.netty.buffer.ByteBuf,java.lang.CharSequence,int,int,int)"
    - "[java.lang.CharSequence].length()"
    functionUses: 3
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:783,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.buffer.ByteBufUtil:783,1"
      Dst: "[io.netty.buffer.ByteBufUtil].reserveAndWriteUtf8Seq(io.netty.buffer.ByteBuf,java.lang.CharSequence,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectPayload].willProperties()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectPayload"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 732
    functionLinenumberEnd: 739
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:737"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:735"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:734"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 673
    functionLinenumberEnd: 683
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].messageType()"
    - "[io.netty.handler.codec.mqtt.MqttMessageType].value()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].isDup()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].qosLevel()"
    - "[io.netty.handler.codec.mqtt.MqttQoS].value()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].isRetain()"
    functionUses: 11
    ICount: 17
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:675"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:678"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:677"
        BranchSideFuncs:
        - "isRetain()"
        - "value()"
        - "qosLevel()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:679"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:682"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:681"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:674,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].messageType()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:674,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageType].value()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:675,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].isDup()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:678,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].qosLevel()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:678,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttQoS].value()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:679,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].isRetain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageType].value()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageType"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttFixedHeader].isDup()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttFixedHeader"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttFixedHeader].qosLevel()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttFixedHeader"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttQoS"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttQoS].value()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttQoS"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttFixedHeader].isRetain()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttFixedHeader"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].getConnVariableHeaderFlag(io.netty.handler.codec.mqtt.MqttConnectVariableHeader)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 230
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttConnectVariableHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].hasUserName()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].hasPassword()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].isWillRetain()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].willQos()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].isWillFlag()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].isCleanSession()"
    functionUses: 1
    ICount: 23
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:213"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:216"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:215"
        BranchSideFuncs:
        - "hasPassword()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:216"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:219"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:218"
        BranchSideFuncs:
        - "isWillRetain()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:219"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:222"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:221"
        BranchSideFuncs:
        - "willQos()"
        - "isWillFlag()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:223"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:226"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:225"
        BranchSideFuncs:
        - "isCleanSession()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:226"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:229"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:228"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:213,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].hasUserName()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:216,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].hasPassword()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:219,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].isWillRetain()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:222,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].willQos()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:223,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].isWillFlag()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:226,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].isCleanSession()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].isWillRetain()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectVariableHeader"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].willQos()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectVariableHeader"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].isCleanSession()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectVariableHeader"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].keepAliveTimeSeconds()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectVariableHeader"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].writeExactUTF8String(io.netty.buffer.ByteBuf,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 704
    functionLinenumberEnd: 712
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBufUtil].reserveAndWriteUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence,int)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    functionUses: 4
    ICount: 15
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:707"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:711"
        BranchSideFuncs:
        - "<init>()"
        - "reserveAndWriteUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence,int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:710"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:709"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:710"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:709"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:710"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:705,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:706,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:708,1"
      Dst: "[io.netty.buffer.ByteBufUtil].reserveAndWriteUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:709,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeConnAckMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttConnAckMessage)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 234
    functionLinenumberEnd: 251
    functionDepth: 10
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.mqtt.MqttConnAckMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].properties()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckMessage].variableHeader()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].isSessionPresent()"
    - "[io.netty.handler.codec.mqtt.MqttConnectReturnCode].byteValue()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].connectReturnCode()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 35
    EdgeCount: 91
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:244"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:235"
        BranchSideFuncs:
        - "isSessionPresent()"
        - "byteValue()"
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "connectReturnCode()"
        - "variableHeader()"
        - "writeByte(int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:234"
        BranchSideFuncs:
        - "isSessionPresent()"
        - "encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
        - "properties()"
        - "writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
        - "getMqttVersion(io.netty.channel.ChannelHandlerContext)"
        - "fixedHeader()"
        - "alloc()"
        - "getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
        - "buffer(int)"
        - "readableBytes()"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:235,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:237,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:238,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnAckMessage].variableHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:238,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].properties()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:236,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:241,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:241,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:242,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:242,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:242,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:243,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:244,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].isSessionPresent()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:245,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].connectReturnCode()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:245,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectReturnCode].byteValue()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:246,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:249,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttCodecUtil"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttVersion"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DefaultAttributeMap].attr(io.netty.util.AttributeKey)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - "[io.netty.util.Attribute].get()"
    functionUses: 12
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttCodecUtil:35"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:38"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:37"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:33,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:33,1"
      Dst: "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:34,1"
      Dst: "[io.netty.util.Attribute].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].properties()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].isSessionPresent()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].connectReturnCode()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttConnectReturnCode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].encodePublishMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttPublishMessage)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 423
    functionLinenumberEnd: 457
    functionDepth: 10
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.mqtt.MqttPublishMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].variableHeader()"
    - "[io.netty.buffer.UnreleasableByteBuf].duplicate()"
    - "[io.netty.buffer.ReadOnlyByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].duplicate()"
    - "[io.netty.buffer.PooledSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.SlicedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractByteBuf].duplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].duplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.SwappedByteBuf].duplicate()"
    - "[io.netty.buffer.EmptyByteBuf].duplicate()"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].payload()"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].topicName()"
    - "[io.netty.buffer.ByteBufUtil].utf8Bytes(java.lang.CharSequence)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].properties()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].qosLevel()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.mqtt.MqttQoS].value()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].writeExactUTF8String(io.netty.buffer.ByteBuf,java.lang.String,int)"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].packetId()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 46
    EdgeCount: 116
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:438"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:424"
        BranchSideFuncs:
        - "writeExactUTF8String(io.netty.buffer.ByteBuf,java.lang.String,int)"
        - "qosLevel()"
        - "writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
        - "writeByte(int)"
        - "alloc()"
        - "getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
        - "readableBytes()"
        - "buffer(int)"
        - "value()"
        - "getVariableLengthInt(int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:423"
        BranchSideFuncs:
        - "encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
        - "payload()"
        - "topicName()"
        - "properties()"
        - "duplicate()"
        - "getMqttVersion(io.netty.channel.ChannelHandlerContext)"
        - "variableHeader()"
        - "fixedHeader()"
        - "utf8Bytes(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:447"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:450"
        BranchSideFuncs:
        - "writeShort(int)"
        - "packetId()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:449"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:424,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:425,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:426,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].variableHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:427,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].payload()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:427,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:429,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].topicName()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:430,1"
      Dst: "[io.netty.buffer.ByteBufUtil].utf8Bytes(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:433,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:434,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].properties()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:432,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:438,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].qosLevel()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:438,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttQoS].value()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:438,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:441,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:443,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:444,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:444,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:445,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:446,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].writeExactUTF8String(io.netty.buffer.ByteBuf,java.lang.String,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:448,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].packetId()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:448,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:450,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:455,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishMessage].variableHeader()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttPublishVariableHeader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:37,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishMessage].payload()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:42,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].ensureAccessible(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttMessage].payload()"
    functionUses: 20
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:47,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].payload()"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:47,1"
      Dst: "[io.netty.buffer.ByteBufUtil].ensureAccessible(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].topicName()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishVariableHeader"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].properties()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishVariableHeader"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].packetId()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishVariableHeader"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeSubscribeMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttSubscribeMessage)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 255
    functionLinenumberEnd: 313
    functionDepth: 10
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.mqtt.MqttSubscribeMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].idAndPropertiesVariableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].properties()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].payload()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribePayload].topicSubscriptions()"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].topicName()"
    - "[io.netty.buffer.ByteBufUtil].utf8Bytes(java.lang.CharSequence)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].messageId()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].writeUnsafeUTF8String(io.netty.buffer.ByteBuf,java.lang.String)"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].qualityOfService()"
    - "[io.netty.handler.codec.mqtt.MqttQoS].value()"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].option()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].retainHandling()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy].value()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].isRetainAsPublished()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].isNoLocal()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].qos()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 73
    EdgeCount: 347
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:269"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:276"
        BranchSideFuncs:
        - "utf8Bytes(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:275"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
        - "writeShort(int)"
        - "topicSubscriptions()"
        - "alloc()"
        - "buffer(int)"
        - "messageId()"
        - "iterator()"
        - "getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
        - "getVariableLengthInt(int)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:289"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:274"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "topicSubscriptions()"
        - "writeUnsafeUTF8String(io.netty.buffer.ByteBuf,java.lang.String)"
        - "topicName()"
        - "iterator()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:273"
        BranchSideFuncs:
        - "qualityOfService()"
        - "hasNext()"
        - "next()"
        - "isNoLocal()"
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
        - "retainHandling()"
        - "writeShort(int)"
        - "topicSubscriptions()"
        - "writeByte(int)"
        - "alloc()"
        - "buffer(int)"
        - "release()"
        - "writeUnsafeUTF8String(io.netty.buffer.ByteBuf,java.lang.String)"
        - "topicName()"
        - "messageId()"
        - "iterator()"
        - "isRetainAsPublished()"
        - "qos()"
        - "option()"
        - "getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
        - "getVariableLengthInt(int)"
        - "value()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:291"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:292"
        BranchSideFuncs:
        - "qualityOfService()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:291"
        BranchSideFuncs:
        - "qualityOfService()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:291"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:294"
        BranchSideFuncs:
        - "qualityOfService()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:293"
        BranchSideFuncs:
        - "retainHandling()"
        - "isRetainAsPublished()"
        - "option()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:297"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:300"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:299"
        BranchSideFuncs:
        - "isNoLocal()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:300"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:303"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:302"
        BranchSideFuncs:
        - "writeByte(int)"
        - "qos()"
        - "value()"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:256,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:258,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:259,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].idAndPropertiesVariableHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:259,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].properties()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:257,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:262,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:265,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:266,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].variableHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:267,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].payload()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:269,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscribePayload].topicSubscriptions()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:269,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:269,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:269,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:270,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttTopicSubscription].topicName()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:271,1"
      Dst: "[io.netty.buffer.ByteBufUtil].utf8Bytes(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:277,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:279,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:280,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:280,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:281,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:284,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].messageId()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:285,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:286,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:290,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].writeUnsafeUTF8String(io.netty.buffer.ByteBuf,java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:292,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttTopicSubscription].qualityOfService()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:292,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttQoS].value()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:294,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttTopicSubscription].option()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:296,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].retainHandling()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:296,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy].value()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:297,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].isRetainAsPublished()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:300,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].isNoLocal()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:303,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].qos()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:311,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].properties()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscribePayload].topicSubscriptions()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscribePayload"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].writeUnsafeUTF8String(io.netty.buffer.ByteBuf,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 723
    functionLinenumberEnd: 731
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBufUtil].reserveAndWriteUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setShort(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].setShort(int,int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:728"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:724"
        BranchSideFuncs:
        - "setShort(int,int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:723"
        BranchSideFuncs:
        - "writerIndex(int)"
        - "reserveAndWriteUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence,int)"
        - "writerIndex()"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:724,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:727,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:728,1"
      Dst: "[io.netty.buffer.ByteBufUtil].reserveAndWriteUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:729,1"
      Dst: "[io.netty.buffer.ByteBuf].setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeUnsubscribeMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttUnsubscribeMessage)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 317
    functionLinenumberEnd: 357
    functionDepth: 10
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.mqtt.MqttUnsubscribeMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].idAndPropertiesVariableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].properties()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].payload()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].topics()"
    - "[io.netty.buffer.ByteBufUtil].utf8Bytes(java.lang.CharSequence)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].messageId()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].writeUnsafeUTF8String(io.netty.buffer.ByteBuf,java.lang.String)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 48
    EdgeCount: 318
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:331"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:336"
        BranchSideFuncs:
        - "utf8Bytes(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:335"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
        - "messageId()"
        - "writeShort(int)"
        - "iterator()"
        - "topics()"
        - "writeByte(int)"
        - "alloc()"
        - "getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
        - "buffer(int)"
        - "getVariableLengthInt(int)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:349"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:334"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "writeUnsafeUTF8String(io.netty.buffer.ByteBuf,java.lang.String)"
        - "iterator()"
        - "topics()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:333"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "writeUnsafeUTF8String(io.netty.buffer.ByteBuf,java.lang.String)"
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
        - "messageId()"
        - "writeShort(int)"
        - "iterator()"
        - "topics()"
        - "writeByte(int)"
        - "alloc()"
        - "getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
        - "buffer(int)"
        - "getVariableLengthInt(int)"
        - "release()"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:318,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:320,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:321,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].idAndPropertiesVariableHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:321,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].properties()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:319,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:324,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:327,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:328,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].variableHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:329,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].payload()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:331,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].topics()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:331,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:331,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:331,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:332,1"
      Dst: "[io.netty.buffer.ByteBufUtil].utf8Bytes(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:337,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:339,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:340,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:340,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:341,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:344,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].messageId()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:345,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:346,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:350,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].writeUnsafeUTF8String(io.netty.buffer.ByteBuf,java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:355,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].topics()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeSubAckMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttSubAckMessage)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 361
    functionLinenumberEnd: 384
    functionDepth: 10
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.mqtt.MqttSubAckMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckMessage].idAndPropertiesVariableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].properties()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckPayload].grantedQoSLevels()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckMessage].payload()"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].messageId()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckMessage].variableHeader()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[java.lang.Integer].intValue()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckPayload].reasonCodes()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[java.util.List].size()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 41
    EdgeCount: 216
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:376"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:378"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "intValue()"
        - "writeByte(int)"
        - "reasonCodes()"
        - "payload()"
        - "iterator()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:377"
        BranchSideFuncs:
        - "release()"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:362,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:364,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:365,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubAckMessage].idAndPropertiesVariableHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:365,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].properties()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:363,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:367,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:368,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubAckMessage].payload()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:368,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubAckPayload].grantedQoSLevels()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:368,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:370,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:371,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:372,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:372,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:372,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:373,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:374,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubAckMessage].variableHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:374,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].messageId()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:374,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:375,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:376,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubAckPayload].reasonCodes()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:376,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:376,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:376,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:376,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:382,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubAckMessage].idAndPropertiesVariableHeader()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubAckMessage"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckMessage:44,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubAckMessage].payload()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubAckMessage"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttSubAckPayload"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].payload()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckMessage:49,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].payload()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubAckPayload].grantedQoSLevels()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubAckPayload"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 65
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[java.lang.Integer].intValue()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.handler.codec.mqtt.MqttQoS].value()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttQoS:java.util.ArrayList].value()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 24
    EdgeCount: 108
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttSubAckPayload:57"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubAckPayload:64"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "intValue()"
        - "next()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubAckPayload:63"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttSubAckPayload:58"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubAckPayload:61"
        BranchSideFuncs:
        - "value()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubAckPayload:60"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "valueOf(int)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:56,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:56,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:57,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:57,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:57,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:57,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:58,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttQoS].value()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:59,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:59,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubAckMessage].variableHeader()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubAckMessage"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckMessage:40,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubAckPayload].reasonCodes()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubAckPayload"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeUnsubAckMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttUnsubAckMessage)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 388
    functionLinenumberEnd: 418
    functionDepth: 10
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.mqtt.MqttUnsubAckMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].idAndPropertiesVariableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].properties()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].payload()"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].unsubscribeReasonCodes()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].messageId()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.lang.Short].shortValue()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodeMessageWithOnlySingleByteFixedHeaderAndMessageId(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttMessage)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[java.util.List].size()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 51
    EdgeCount: 219
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:389"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:417"
        BranchSideFuncs:
        - "idAndPropertiesVariableHeader()"
        - "getMqttVersion(io.netty.channel.ChannelHandlerContext)"
        - "encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
        - "payload()"
        - "properties()"
        - "readableBytes()"
        - "size()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:416"
        BranchSideFuncs:
        - "alloc()"
        - "encodeMessageWithOnlySingleByteFixedHeaderAndMessageId(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttMessage)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:397"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:390"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
        - "writeShort(int)"
        - "buffer(int)"
        - "variableHeader()"
        - "messageId()"
        - "fixedHeader()"
        - "getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
        - "getVariableLengthInt(int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:389"
        BranchSideFuncs:
        - "idAndPropertiesVariableHeader()"
        - "getMqttVersion(io.netty.channel.ChannelHandlerContext)"
        - "encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
        - "payload()"
        - "properties()"
        - "readableBytes()"
        - "size()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:406"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:406"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "unsubscribeReasonCodes()"
        - "iterator()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:405"
        BranchSideFuncs:
        - "shortValue()"
        - "hasNext()"
        - "next()"
        - "writeByte(int)"
        - "release()"
        - "unsubscribeReasonCodes()"
        - "iterator()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:407"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:406"
        BranchSideFuncs:
        - "shortValue()"
        - "hasNext()"
        - "next()"
        - "writeByte(int)"
        - "unsubscribeReasonCodes()"
        - "iterator()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:405"
        BranchSideFuncs:
        - "shortValue()"
        - "hasNext()"
        - "next()"
        - "writeByte(int)"
        - "release()"
        - "unsubscribeReasonCodes()"
        - "iterator()"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:389,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].variableHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:390,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:392,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:393,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].idAndPropertiesVariableHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:393,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].properties()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:391,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodePropertiesIfNeeded(io.netty.handler.codec.mqtt.MqttVersion,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:395,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:396,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].payload()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:397,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].unsubscribeReasonCodes()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:397,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:399,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:400,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:401,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:401,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:401,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:402,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:403,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].messageId()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:403,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:404,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:407,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:407,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:407,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:408,1"
      Dst: "[java.lang.Short].shortValue()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:414,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:417,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeMessageWithOnlySingleByteFixedHeaderAndMessageId(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttMessage)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].variableHeader()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage:51,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].idAndPropertiesVariableHeader()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage:55,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].payload()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].payload()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage:60,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].payload()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].unsubscribeReasonCodes()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeMessageWithOnlySingleByteFixedHeaderAndMessageId(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttMessage)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 505
    functionLinenumberEnd: 518
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.mqtt.MqttMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttPubAckMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttConnectMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].messageId()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    functionUses: 3
    ICount: 15
    EdgeCount: 36
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:506,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:507,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:508,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].messageId()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:511,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:512,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:513,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:513,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:514,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:515,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].encodePubReplyMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttMessage)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 460
    functionLinenumberEnd: 500
    functionDepth: 9
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.mqtt.MqttMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttPubAckMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttConnectMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].messageId()"
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].reasonCode()"
    - "[io.netty.handler.codec.mqtt.MqttProperties].isEmpty()"
    - "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].properties()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodeProperties(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodeMessageWithOnlySingleByteFixedHeaderAndMessageId(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttMessage)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 50
    EdgeCount: 107
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:461"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:499"
        BranchSideFuncs:
        - "getMqttVersion(io.netty.channel.ChannelHandlerContext)"
        - "variableHeader()"
        - "messageId()"
        - "fixedHeader()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:498"
        BranchSideFuncs:
        - "alloc()"
        - "encodeMessageWithOnlySingleByteFixedHeaderAndMessageId(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttMessage)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:471"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:478"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:477"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:472"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:474"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:473"
        BranchSideFuncs:
        - "properties()"
        - "encodeProperties(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:473"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:478"
        BranchSideFuncs:
        - "properties()"
        - "encodeProperties(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:477"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:489"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:492"
        BranchSideFuncs:
        - "reasonCode()"
        - "writeByte(int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:491"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:461,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:462,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:465,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].messageId()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:470,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:472,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].reasonCode()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:473,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].properties()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:473,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties].isEmpty()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:474,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:474,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeProperties(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:476,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:484,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:485,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:486,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:486,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:487,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:488,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:492,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:496,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:499,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeMessageWithOnlySingleByteFixedHeaderAndMessageId(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttMessage)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties].isEmpty()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties"
    linkageType: ""
    functionLinenumber: 362
    functionLinenumberEnd: 365
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.IntObjectHashMap].isEmpty()"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:364"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:362"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties:364"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties:362"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties:364,1"
      Dst: "[io.netty.util.collection.IntObjectHashMap].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeReasonCodePlusPropertiesMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttMessage)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 522
    functionLinenumberEnd: 560
    functionDepth: 9
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.mqtt.MqttMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttPubAckMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttConnectMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].reasonCode()"
    - "[io.netty.handler.codec.mqtt.MqttProperties].isEmpty()"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].properties()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodeProperties(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encodeMessageWithOnlySingleByteFixedHeader(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttMessage)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 48
    EdgeCount: 96
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:523"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:559"
        BranchSideFuncs:
        - "getMqttVersion(io.netty.channel.ChannelHandlerContext)"
        - "variableHeader()"
        - "fixedHeader()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:558"
        BranchSideFuncs:
        - "encodeMessageWithOnlySingleByteFixedHeader(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttMessage)"
        - "alloc()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:532"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:539"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:538"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:533"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:535"
        BranchSideFuncs:
        - "isEmpty()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:534"
        BranchSideFuncs:
        - "properties()"
        - "encodeProperties(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:534"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:539"
        BranchSideFuncs:
        - "properties()"
        - "encodeProperties(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:538"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttEncoder:549"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:552"
        BranchSideFuncs:
        - "reasonCode()"
        - "writeByte(int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttEncoder:551"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:523,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:524,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:525,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:533,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].reasonCode()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:534,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].properties()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:534,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties].isEmpty()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:535,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:535,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeProperties(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:537,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:545,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getVariableLengthInt(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:546,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:547,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:547,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:548,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].writeVariableLengthInt(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:552,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:556,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:559,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeMessageWithOnlySingleByteFixedHeader(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttMessage)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].reasonCode()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].properties()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttProperties"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].encodeMessageWithOnlySingleByteFixedHeader(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.mqtt.MqttMessage)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 565
    functionLinenumberEnd: 572
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.mqtt.MqttMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:566,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:567,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:568,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].getFixedHeaderByte1(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:568,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttEncoder"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttMessage,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttEncoder:42,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttMessage,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.TrustManagerFactoryWrapper].<init>(javax.net.ssl.TrustManager)"
    functionSourceFile: "io.netty.handler.ssl.util.TrustManagerFactoryWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.TrustManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SimpleTrustManagerFactory].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.TrustManagerFactoryWrapper:28,1"
      Dst: "[io.netty.handler.ssl.util.SimpleTrustManagerFactory].<init>()"
    - Src: "io.netty.handler.ssl.util.TrustManagerFactoryWrapper:29,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.TrustManagerFactoryWrapper].engineInit(java.security.KeyStore)"
    functionSourceFile: "io.netty.handler.ssl.util.TrustManagerFactoryWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.KeyStore"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.TrustManagerFactoryWrapper].engineInit(javax.net.ssl.ManagerFactoryParameters)"
    functionSourceFile: "io.netty.handler.ssl.util.TrustManagerFactoryWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.ManagerFactoryParameters"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.TrustManagerFactoryWrapper].engineGetTrustManagers()"
    functionSourceFile: "io.netty.handler.ssl.util.TrustManagerFactoryWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.TrustManager[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel$2].<init>(io.netty.channel.epoll.EpollDatagramChannel,java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.epoll.EpollDatagramChannel"
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$2:249,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel$2"
    linkageType: ""
    functionLinenumber: 251
    functionLinenumberEnd: 254
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDatagramChannel].access$100(io.netty.channel.epoll.EpollDatagramChannel,java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 49
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$2:252,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].access$100(io.netty.channel.epoll.EpollDatagramChannel,java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].access$100(io.netty.channel.epoll.EpollDatagramChannel,java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.epoll.EpollDatagramChannel"
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup0(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:55,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup0(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup0(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 271
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.epoll.LinuxSocket].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 20
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:262"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:265"
        BranchSideFuncs:
        - "leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "setSuccess()"
        - "eventLoop()"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:264"
        BranchSideFuncs:
        - "leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
        - "setFailure(java.lang.Throwable)"
        - "setSuccess()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:262"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:265"
        BranchSideFuncs:
        - "leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "setSuccess()"
        - "eventLoop()"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:264"
        BranchSideFuncs:
        - "leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
        - "setFailure(java.lang.Throwable)"
        - "setSuccess()"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:262,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:262,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:262,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:265,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:266,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:268,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.LinuxSocket].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 152
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.NativeInetAddress].newInstance(java.net.InetAddress)"
    - "[io.netty.channel.epoll.LinuxSocket].deriveInetAddress(java.net.NetworkInterface,boolean)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.channel.unix.NativeInetAddress].address()"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].leaveSsmGroup(int,boolean,byte[],byte[],int,int,byte[])"
    - "[io.netty.channel.epoll.LinuxSocket].interfaceIndex(java.net.NetworkInterface)"
    - "[io.netty.channel.unix.NativeInetAddress].scopeId()"
    - "[io.netty.channel.epoll.LinuxSocket].leaveGroup(int,boolean,byte[],byte[],int,int)"
    functionUses: 1
    ICount: 43
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.LinuxSocket:141"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:149"
        BranchSideFuncs:
        - "getClass()"
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:148"
        BranchSideFuncs:
        - "interfaceIndex(java.net.NetworkInterface)"
        - "address()"
        - "intValue()"
        - "scopeId()"
        - "leaveGroup(int,boolean,byte[],byte[],int,int)"
    - Branch String: "io.netty.channel.epoll.LinuxSocket:142"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:145"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:144"
        BranchSideFuncs:
        - "leaveSsmGroup(int,boolean,byte[],byte[],int,int,byte[])"
        - "newInstance(java.net.InetAddress)"
    - Branch String: "io.netty.channel.epoll.LinuxSocket:146"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:145"
        BranchSideFuncs:
        - "leaveSsmGroup(int,boolean,byte[],byte[],int,int,byte[])"
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:144"
        BranchSideFuncs:
        - "leaveSsmGroup(int,boolean,byte[],byte[],int,int,byte[])"
        - "newInstance(java.net.InetAddress)"
    - Branch String: "io.netty.channel.epoll.LinuxSocket:146"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:145"
        BranchSideFuncs:
        - "leaveSsmGroup(int,boolean,byte[],byte[],int,int,byte[])"
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:144"
        BranchSideFuncs:
        - "leaveSsmGroup(int,boolean,byte[],byte[],int,int,byte[])"
        - "newInstance(java.net.InetAddress)"
    - Branch String: "io.netty.channel.epoll.LinuxSocket:149"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:148"
        BranchSideFuncs:
        - "interfaceIndex(java.net.NetworkInterface)"
        - "address()"
        - "intValue()"
        - "scopeId()"
        - "leaveGroup(int,boolean,byte[],byte[],int,int)"
    - Branch String: "io.netty.channel.epoll.LinuxSocket:149"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:148"
        BranchSideFuncs:
        - "interfaceIndex(java.net.NetworkInterface)"
        - "address()"
        - "intValue()"
        - "scopeId()"
        - "leaveGroup(int,boolean,byte[],byte[],int,int)"
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:138,1"
      Dst: "[io.netty.channel.unix.NativeInetAddress].newInstance(java.net.InetAddress)"
    - Src: "io.netty.channel.epoll.LinuxSocket:140,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].deriveInetAddress(java.net.NetworkInterface,boolean)"
    - Src: "io.netty.channel.epoll.LinuxSocket:142,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.channel.epoll.LinuxSocket:143,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.channel.epoll.LinuxSocket:146,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:146,1"
      Dst: "[io.netty.channel.unix.NativeInetAddress].address()"
    - Src: "io.netty.channel.epoll.LinuxSocket:147,1"
      Dst: "[io.netty.channel.unix.NativeInetAddress].scopeId()"
    - Src: "io.netty.channel.epoll.LinuxSocket:147,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].interfaceIndex(java.net.NetworkInterface)"
    - Src: "io.netty.channel.epoll.LinuxSocket:146,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].leaveSsmGroup(int,boolean,byte[],byte[],int,int,byte[])"
    - Src: "io.netty.channel.epoll.LinuxSocket:149,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].leaveGroup(int,boolean,byte[],byte[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.epoll.LinuxSocket].deriveInetAddress(java.net.NetworkInterface,boolean)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 315
    functionLinenumberEnd: 328
    functionDepth: 0
    returnType: "java.net.InetAddress"
    argCount: 2
    argTypes:
    - "java.net.NetworkInterface"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.NetworkInterface].getInetAddresses()"
    - "[jdk.internal.loader.URLClassPath$1].hasMoreElements()"
    - "[jdk.internal.loader.Loader$3].hasMoreElements()"
    - "[io.netty.handler.ssl.OpenSslSessionContext$1].hasMoreElements()"
    - "[jdk.internal.loader.BuiltinClassLoader$1].hasMoreElements()"
    - "[jdk.internal.loader.URLClassPath$2].hasMoreElements()"
    - "[java.util.StringTokenizer].hasMoreElements()"
    - "[jdk.internal.loader.URLClassPath$2].nextElement()"
    - "[jdk.internal.loader.BuiltinClassLoader$1].nextElement()"
    - "[jdk.internal.loader.Loader$3].nextElement()"
    - "[jdk.internal.loader.URLClassPath$1].nextElement()"
    - "[io.netty.handler.ssl.OpenSslSessionContext$1].nextElement()"
    - "[java.util.StringTokenizer].nextElement()"
    - "[java.util.Enumeration].hasMoreElements()"
    - "[java.util.Enumeration].nextElement()"
    functionUses: 3
    ICount: 18
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.LinuxSocket:316"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:316"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:315"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.LinuxSocket:317"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:327"
        BranchSideFuncs:
        - "getInetAddresses()"
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:326"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.LinuxSocket:319"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:327"
        BranchSideFuncs:
        - "nextElement()"
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:326"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.LinuxSocket:322"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:325"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:324"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:318,1"
      Dst: "[java.net.NetworkInterface].getInetAddresses()"
    - Src: "io.netty.channel.epoll.LinuxSocket:319,1"
      Dst: "[java.util.Enumeration].hasMoreElements()"
    - Src: "io.netty.channel.epoll.LinuxSocket:320,1"
      Dst: "[java.util.Enumeration].nextElement()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.epoll.LinuxSocket].interfaceIndex(java.net.NetworkInterface)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.net.NetworkInterface"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.NetworkInterface].getIndex()"
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    functionUses: 5
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.LinuxSocket:154"
      Branch Sides: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:154,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.epoll.LinuxSocket:154,1"
      Dst: "[java.net.NetworkInterface].getIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.LinuxSocket].leaveSsmGroup(int,boolean,byte[],byte[],int,int,byte[])"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "int"
    - "boolean"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.LinuxSocket].leaveGroup(int,boolean,byte[],byte[],int,int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "boolean"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec$1].<init>(io.netty.handler.codec.http2.Http2ServerUpgradeCodec,io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec$1"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2ServerUpgradeCodec"
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec$1:191,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec$1].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec$1"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 196
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Settings].copyFrom(io.netty.handler.codec.http2.Http2Settings)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec$1:194,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].copyFrom(io.netty.handler.codec.http2.Http2Settings)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].copyFrom(io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 190
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Settings"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap].clear()"
    - "[io.netty.util.collection.CharObjectHashMap].putAll(java.util.Map)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:187,1"
      Dst: "[io.netty.util.collection.CharObjectHashMap].clear()"
    - Src: "io.netty.handler.codec.http2.Http2Settings:188,1"
      Dst: "[io.netty.util.collection.CharObjectHashMap].putAll(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$4].run()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$4"
    linkageType: ""
    functionLinenumber: 853
    functionLinenumberEnd: 856
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].access$200(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext,boolean)"
    functionUses: 50
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$4:854,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].access$200(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Snappy].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Snappy].reset()"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Snappy].decode(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 269
    functionLinenumberEnd: 348
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.compression.Snappy].readPreamble(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.compression.Snappy].decodeLiteral(byte,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.compression.Snappy].decodeCopyWith1ByteOffset(byte,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.compression.Snappy].decodeCopyWith2ByteOffset(byte,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.compression.Snappy].decodeCopyWith4ByteOffset(byte,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    functionUses: 2
    ICount: 87
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Snappy:270"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:347"
        BranchSideFuncs:
        - "ordinal()"
      - BranchSide: "io.netty.handler.codec.compression.Snappy:346"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:274"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:277"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:278"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:281"
        BranchSideFuncs:
        - "ensureWritable(int)"
    - Branch String: "io.netty.handler.codec.compression.Snappy:286"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:289"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:288"
        BranchSideFuncs:
        - "readByte()"
    - Branch String: "io.netty.handler.codec.compression.Snappy:303"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:308"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:307"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:316"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:321"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:320"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:326"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:331"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:330"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:336"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:341"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:340"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:270,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.compression.Snappy:271,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.compression.Snappy:273,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].readPreamble(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.Snappy:282,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - Src: "io.netty.handler.codec.compression.Snappy:289,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.compression.Snappy:302,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].decodeLiteral(byte,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.Snappy:315,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].decodeCopyWith1ByteOffset(byte,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.Snappy:325,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].decodeCopyWith2ByteOffset(byte,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.Snappy:335,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].decodeCopyWith4ByteOffset(byte,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 29
    CyclomaticComplexity: 11
  - functionName: "[io.netty.handler.codec.compression.Snappy].readPreamble(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 358
    functionLinenumberEnd: 374
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    functionUses: 2
    ICount: 22
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Snappy:361"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:373"
        BranchSideFuncs:
        - "readUnsignedByte()"
      - BranchSide: "io.netty.handler.codec.compression.Snappy:372"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:364"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:368"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:367"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:368"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:371"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.Snappy:370"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:361,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.compression.Snappy:362,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.compression.Snappy:369,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Snappy].decodeLiteral(byte,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 408
    functionLinenumberEnd: 448
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.CompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.SwappedByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedByteBuf].markReaderIndex()"
    - "[io.netty.buffer.EmptyByteBuf].markReaderIndex()"
    - "[io.netty.buffer.AbstractByteBuf].markReaderIndex()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShortLE()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedMediumLE()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readIntLE()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readIntLE()"
    - "[io.netty.buffer.AbstractByteBuf].readIntLE()"
    - "[io.netty.buffer.EmptyByteBuf].readIntLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readIntLE()"
    - "[io.netty.buffer.WrappedByteBuf].readIntLE()"
    - "[io.netty.buffer.SwappedByteBuf].readIntLE()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readIntLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].resetReaderIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.AbstractByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.SwappedByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.CompositeByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.WrappedByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.EmptyByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].markReaderIndex()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.ByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.ByteBuf].readIntLE()"
    - "[io.netty.buffer.ByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    functionUses: 1
    ICount: 45
    EdgeCount: 85
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Snappy:413"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:419"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:422"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:421"
        BranchSideFuncs:
        - "readUnsignedShortLE()"
    - Branch String: "io.netty.handler.codec.compression.Snappy:425"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:428"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:427"
        BranchSideFuncs:
        - "readUnsignedMediumLE()"
    - Branch String: "io.netty.handler.codec.compression.Snappy:431"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:434"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:433"
        BranchSideFuncs:
        - "readIntLE()"
    - Branch String: "io.netty.handler.codec.compression.Snappy:441"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:446"
        BranchSideFuncs:
        - "resetReaderIndex()"
      - BranchSide: "io.netty.handler.codec.compression.Snappy:445"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf,int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:409,1"
      Dst: "[io.netty.buffer.ByteBuf].markReaderIndex()"
    - Src: "io.netty.handler.codec.compression.Snappy:413,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.compression.Snappy:-1,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.compression.Snappy:419,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.Snappy:422,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShortLE()"
    - Src: "io.netty.handler.codec.compression.Snappy:428,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedMediumLE()"
    - Src: "io.netty.handler.codec.compression.Snappy:434,1"
      Dst: "[io.netty.buffer.ByteBuf].readIntLE()"
    - Src: "io.netty.handler.codec.compression.Snappy:442,1"
      Dst: "[io.netty.buffer.ByteBuf].resetReaderIndex()"
    - Src: "io.netty.handler.codec.compression.Snappy:446,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.compression.Snappy].decodeCopyWith1ByteOffset(byte,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 463
    functionLinenumberEnd: 492
    functionDepth: 4
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.compression.Snappy].validateOffset(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.CompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.SwappedByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedByteBuf].markReaderIndex()"
    - "[io.netty.buffer.AbstractByteBuf].markReaderIndex()"
    - "[io.netty.buffer.EmptyByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].resetReaderIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.AbstractByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.SwappedByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.CompositeByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.WrappedByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.EmptyByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.ByteBuf].markReaderIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].resetReaderIndex()"
    functionUses: 1
    ICount: 44
    EdgeCount: 83
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Snappy:464"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:468"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:467"
        BranchSideFuncs:
        - "markReaderIndex()"
        - "writerIndex()"
        - "validateOffset(int,int)"
        - "readUnsignedByte()"
    - Branch String: "io.netty.handler.codec.compression.Snappy:475"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:486"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:485"
        BranchSideFuncs:
        - "readBytes(io.netty.buffer.ByteBuf,int)"
        - "readerIndex(int)"
    - Branch String: "io.netty.handler.codec.compression.Snappy:477"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:480"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:481"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:485"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:484"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:464,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.compression.Snappy:468,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.compression.Snappy:470,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.compression.Snappy:472,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].validateOffset(int,int)"
    - Src: "io.netty.handler.codec.compression.Snappy:474,1"
      Dst: "[io.netty.buffer.ByteBuf].markReaderIndex()"
    - Src: "io.netty.handler.codec.compression.Snappy:478,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - Src: "io.netty.handler.codec.compression.Snappy:479,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.Snappy:489,1"
      Dst: "[io.netty.buffer.ByteBuf].resetReaderIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.compression.Snappy].validateOffset(int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 591
    functionLinenumberEnd: 605
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Snappy:592"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:596"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:595"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:596"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:600"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:601"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:604"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.Snappy:603"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:593,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Snappy].decodeCopyWith2ByteOffset(byte,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 507
    functionLinenumberEnd: 536
    functionDepth: 4
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShortLE()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShortLE()"
    - "[io.netty.handler.codec.compression.Snappy].validateOffset(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.CompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.SwappedByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedByteBuf].markReaderIndex()"
    - "[io.netty.buffer.AbstractByteBuf].markReaderIndex()"
    - "[io.netty.buffer.EmptyByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].resetReaderIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.AbstractByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.SwappedByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.CompositeByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.WrappedByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.EmptyByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.ByteBuf].markReaderIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].resetReaderIndex()"
    functionUses: 1
    ICount: 37
    EdgeCount: 83
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Snappy:508"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:512"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:511"
        BranchSideFuncs:
        - "readUnsignedShortLE()"
        - "markReaderIndex()"
        - "writerIndex()"
        - "validateOffset(int,int)"
    - Branch String: "io.netty.handler.codec.compression.Snappy:519"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:530"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:529"
        BranchSideFuncs:
        - "readBytes(io.netty.buffer.ByteBuf,int)"
        - "readerIndex(int)"
    - Branch String: "io.netty.handler.codec.compression.Snappy:521"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:524"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:525"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:529"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:528"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:508,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.Snappy:512,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.compression.Snappy:514,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShortLE()"
    - Src: "io.netty.handler.codec.compression.Snappy:516,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].validateOffset(int,int)"
    - Src: "io.netty.handler.codec.compression.Snappy:518,1"
      Dst: "[io.netty.buffer.ByteBuf].markReaderIndex()"
    - Src: "io.netty.handler.codec.compression.Snappy:522,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - Src: "io.netty.handler.codec.compression.Snappy:523,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.Snappy:533,1"
      Dst: "[io.netty.buffer.ByteBuf].resetReaderIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.compression.Snappy].decodeCopyWith4ByteOffset(byte,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 551
    functionLinenumberEnd: 580
    functionDepth: 4
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readIntLE()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readIntLE()"
    - "[io.netty.buffer.AbstractByteBuf].readIntLE()"
    - "[io.netty.buffer.EmptyByteBuf].readIntLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readIntLE()"
    - "[io.netty.buffer.WrappedByteBuf].readIntLE()"
    - "[io.netty.buffer.SwappedByteBuf].readIntLE()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readIntLE()"
    - "[io.netty.handler.codec.compression.Snappy].validateOffset(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.CompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.SwappedByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedByteBuf].markReaderIndex()"
    - "[io.netty.buffer.AbstractByteBuf].markReaderIndex()"
    - "[io.netty.buffer.EmptyByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].resetReaderIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.AbstractByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.SwappedByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.CompositeByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.WrappedByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.EmptyByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readIntLE()"
    - "[io.netty.buffer.ByteBuf].markReaderIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].resetReaderIndex()"
    functionUses: 1
    ICount: 37
    EdgeCount: 83
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Snappy:552"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:556"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:555"
        BranchSideFuncs:
        - "readIntLE()"
        - "markReaderIndex()"
        - "writerIndex()"
        - "validateOffset(int,int)"
    - Branch String: "io.netty.handler.codec.compression.Snappy:563"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:574"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:573"
        BranchSideFuncs:
        - "readBytes(io.netty.buffer.ByteBuf,int)"
        - "readerIndex(int)"
    - Branch String: "io.netty.handler.codec.compression.Snappy:565"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:568"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Snappy:569"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:573"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Snappy:572"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:552,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.Snappy:556,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.compression.Snappy:558,1"
      Dst: "[io.netty.buffer.ByteBuf].readIntLE()"
    - Src: "io.netty.handler.codec.compression.Snappy:560,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].validateOffset(int,int)"
    - Src: "io.netty.handler.codec.compression.Snappy:562,1"
      Dst: "[io.netty.buffer.ByteBuf].markReaderIndex()"
    - Src: "io.netty.handler.codec.compression.Snappy:566,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - Src: "io.netty.handler.codec.compression.Snappy:567,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.Snappy:577,1"
      Dst: "[io.netty.buffer.ByteBuf].resetReaderIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.compression.Snappy].getPreamble(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 385
    functionLinenumberEnd: 395
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.handler.codec.compression.Snappy].readPreamble(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Snappy:386"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:394"
        BranchSideFuncs:
        - "readPreamble(io.netty.buffer.ByteBuf)"
        - "readerIndex()"
      - BranchSide: "io.netty.handler.codec.compression.Snappy:393"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:387,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.Snappy:389,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].readPreamble(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.Snappy:391,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Snappy].validateChecksum(int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.compression.Snappy].validateChecksum(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:642,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.Snappy:642,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.Snappy:642,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].validateChecksum(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Snappy].validateChecksum(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Snappy"
    linkageType: ""
    functionLinenumber: 654
    functionLinenumberEnd: 662
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Snappy].calculateChecksum(io.netty.buffer.ByteBuf,int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Integer].toHexString(int)"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 20
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Snappy:656"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Snappy:661"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "toHexString(int)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.Snappy:660"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Snappy:655,1"
      Dst: "[io.netty.handler.codec.compression.Snappy].calculateChecksum(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.compression.Snappy:657,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.Snappy:657,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Snappy:658,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "io.netty.handler.codec.compression.Snappy:659,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.compression.Snappy:659,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.Snappy:659,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdResponseDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdResponseDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:37,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdResponseDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdResponseDecoder"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 95
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.ReplayingDecoder].state()"
    - "[io.netty.handler.codec.socks.SocksProtocolVersion].byteValue()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.socks.SocksCmdStatus].valueOf(byte)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.socks.SocksAddressType].valueOf(byte)"
    - "[io.netty.util.NetUtil].intToIpAddress(int)"
    - "[io.netty.buffer.SwappedByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readInt()"
    - "[io.netty.buffer.EmptyByteBuf].readInt()"
    - "[io.netty.buffer.AbstractByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readInt()"
    - "[io.netty.buffer.WrappedByteBuf].readInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readInt()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.socks.SocksCmdResponse].<init>(io.netty.handler.codec.socks.SocksCmdStatus,io.netty.handler.codec.socks.SocksAddressType,java.lang.String,int)"
    - "[io.netty.handler.codec.socks.SocksCommonUtils].readUsAscii(io.netty.buffer.ByteBuf,int)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(byte[])"
    - "[io.netty.handler.codec.socks.SocksCommonUtils].ipv6toStr(byte[])"
    - "[io.netty.channel.AbstractChannelHandlerContext:java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.lang.Error].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].readInt()"
    - "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    functionUses: 1
    ICount: 76
    EdgeCount: 120
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:42,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].state()"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:42,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:44,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:44,1"
      Dst: "[io.netty.handler.codec.socks.SocksProtocolVersion].byteValue()"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:45,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:48,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:51,1"
      Dst: "[io.netty.handler.codec.socks.SocksCmdStatus].valueOf(byte)"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:52,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:53,1"
      Dst: "[io.netty.handler.codec.socks.SocksAddressType].valueOf(byte)"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:59,1"
      Dst: "[io.netty.buffer.ByteBuf].readInt()"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:59,1"
      Dst: "[io.netty.util.NetUtil].intToIpAddress(int)"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:60,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:61,1"
      Dst: "[io.netty.handler.codec.socks.SocksCmdResponse].<init>(io.netty.handler.codec.socks.SocksCmdStatus,io.netty.handler.codec.socks.SocksAddressType,java.lang.String,int)"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:66,1"
      Dst: "[io.netty.handler.codec.socks.SocksCommonUtils].readUsAscii(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:73,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:74,1"
      Dst: "[io.netty.handler.codec.socks.SocksCommonUtils].ipv6toStr(byte[])"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:84,1"
      Dst: "[java.lang.Error].<init>()"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:93,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder:93,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.socks.SocksProtocolVersion].byteValue()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksProtocolVersion"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdStatus].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdStatus"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 52
    functionDepth: 1
    returnType: "io.netty.handler.codec.socks.SocksCmdStatus"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksCmdStatus].values()"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksCmdStatus:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdStatus:51"
        BranchSideFuncs:
        - "values()"
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdStatus:50"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socks.SocksCmdStatus:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdStatus:46"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdStatus:45"
        BranchSideFuncs:
        - "values()"
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdStatus:46,1"
      Dst: "[io.netty.handler.codec.socks.SocksCmdStatus].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socks.SocksCmdStatus].values()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdStatus"
    linkageType: ""
    functionLinenumber: 18
    functionLinenumberEnd: 20
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksCmdStatus[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdStatus:19,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAddressType].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAddressType"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 46
    functionDepth: 1
    returnType: "io.netty.handler.codec.socks.SocksAddressType"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksAddressType].values()"
    functionUses: 2
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksAddressType:40"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksAddressType:45"
        BranchSideFuncs:
        - "values()"
      - BranchSide: "io.netty.handler.codec.socks.SocksAddressType:44"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socks.SocksAddressType:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksAddressType:40"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksAddressType:39"
        BranchSideFuncs:
        - "values()"
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAddressType:40,1"
      Dst: "[io.netty.handler.codec.socks.SocksAddressType].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socks.SocksAddressType].values()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAddressType"
    linkageType: ""
    functionLinenumber: 18
    functionLinenumberEnd: 20
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksAddressType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 5
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAddressType:19,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].intToIpAddress(int)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 389
    functionLinenumberEnd: 399
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 5
    ICount: 19
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtil:390,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.util.NetUtil:391,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.NetUtil:392,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.NetUtil:398,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdResponse].<init>(io.netty.handler.codec.socks.SocksCmdStatus,io.netty.handler.codec.socks.SocksAddressType,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdResponse"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 98
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.socks.SocksCmdStatus"
    - "io.netty.handler.codec.socks.SocksAddressType"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksResponse].<init>(io.netty.handler.codec.socks.SocksResponseType)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.net.IDN].toASCII(java.lang.String)"
    - "[java.lang.String].length()"
    - "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - "[java.lang.AbstractStringBuilder:java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 3
    ICount: 65
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksCmdResponse:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdResponse:90"
        BranchSideFuncs:
        - "ordinal()"
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdResponse:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socks.SocksCmdResponse:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdResponse:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdResponse:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socks.SocksCmdResponse:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdResponse:79"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdResponse:78"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socks.SocksCmdResponse:82"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdResponse:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdResponse:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socks.SocksCmdResponse:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdResponse:91"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdResponse:90"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.socks.SocksCmdResponse:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdResponse:93"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdResponse:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdResponse:64,1"
      Dst: "[io.netty.handler.codec.socks.SocksResponse].<init>(io.netty.handler.codec.socks.SocksResponseType)"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponse:65,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponse:68,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponse:70,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponse:71,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponse:71,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponse:71,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponse:71,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponse:75,1"
      Dst: "[java.net.IDN].toASCII(java.lang.String)"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponse:76,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponse:82,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - Src: "io.netty.handler.codec.socks.SocksCmdResponse:91,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.socks.SocksCommonUtils].readUsAscii(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCommonUtils"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 4
    ICount: 7
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCommonUtils:61,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.socks.SocksCommonUtils:61,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.socks.SocksCommonUtils:62,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCommonUtils].ipv6toStr(byte[])"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCommonUtils"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[io.netty.handler.codec.socks.SocksCommonUtils].ipv6toStr(java.lang.StringBuilder,byte[],int,int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksCommonUtils:39"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCommonUtils:40"
        BranchSideFuncs:
        - "<init>(int)"
        - "ipv6toStr(java.lang.StringBuilder,byte[],int,int)"
        - "toString()"
      - BranchSide: "io.netty.handler.codec.socks.SocksCommonUtils:39"
        BranchSideFuncs:
        - "<init>(int)"
        - "ipv6toStr(java.lang.StringBuilder,byte[],int,int)"
        - "toString()"
    - Branch String: "io.netty.handler.codec.socks.SocksCommonUtils:39"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCommonUtils:40"
        BranchSideFuncs:
        - "<init>(int)"
        - "ipv6toStr(java.lang.StringBuilder,byte[],int,int)"
        - "toString()"
      - BranchSide: "io.netty.handler.codec.socks.SocksCommonUtils:39"
        BranchSideFuncs:
        - "<init>(int)"
        - "ipv6toStr(java.lang.StringBuilder,byte[],int,int)"
        - "toString()"
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCommonUtils:39,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.socks.SocksCommonUtils:40,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.socks.SocksCommonUtils:41,1"
      Dst: "[io.netty.handler.codec.socks.SocksCommonUtils].ipv6toStr(java.lang.StringBuilder,byte[],int,int)"
    - Src: "io.netty.handler.codec.socks.SocksCommonUtils:42,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socks.SocksCommonUtils].ipv6toStr(java.lang.StringBuilder,byte[],int,int)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCommonUtils"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 55
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.StringBuilder"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksCommonUtils].appendHextet(java.lang.StringBuilder,byte[],int)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 1
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksCommonUtils:48"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCommonUtils:52"
        BranchSideFuncs:
        - "appendHextet(java.lang.StringBuilder,byte[],int)"
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCommonUtils:49,1"
      Dst: "[io.netty.handler.codec.socks.SocksCommonUtils].appendHextet(java.lang.StringBuilder,byte[],int)"
    - Src: "io.netty.handler.codec.socks.SocksCommonUtils:50,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socks.SocksCommonUtils].appendHextet(java.lang.StringBuilder,byte[],int)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCommonUtils"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.StringUtil].toHexString(java.lang.Appendable,byte[],int,int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCommonUtils:57,1"
      Dst: "[io.netty.util.internal.StringUtil].toHexString(java.lang.Appendable,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].toHexString(java.lang.Appendable,byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 246
    functionDepth: 5
    returnType: "java.lang.Appendable"
    argCount: 4
    argTypes:
    - "java.lang.Appendable"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.internal.StringUtil].byteToHexString(java.lang.Appendable,int)"
    - "[io.netty.util.internal.StringUtil].toHexStringPadded(java.lang.Appendable,byte[],int,int)"
    functionUses: 1
    ICount: 28
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:225"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:226"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:225"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:225"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:226"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:225"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:226"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:230"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:235"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:241"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:240"
        BranchSideFuncs:
        - "byteToHexString(java.lang.Appendable,int)"
        - "toHexStringPadded(java.lang.Appendable,byte[],int,int)"
    - Branch String: "io.netty.util.internal.StringUtil:236"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:230"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:229"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:225,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.util.internal.StringUtil:241,1"
      Dst: "[io.netty.util.internal.StringUtil].byteToHexString(java.lang.Appendable,int)"
    - Src: "io.netty.util.internal.StringUtil:243,1"
      Dst: "[io.netty.util.internal.StringUtil].toHexStringPadded(java.lang.Appendable,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.internal.StringUtil].byteToHexString(java.lang.Appendable,int)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 198
    functionDepth: 3
    returnType: "java.lang.Appendable"
    argCount: 2
    argTypes:
    - "java.lang.Appendable"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintWriter].append(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - "[java.lang.StringBuffer].append(java.lang.CharSequence)"
    - "[java.io.StringWriter].append(java.lang.CharSequence)"
    - "[io.netty.util.internal.AppendableCharSequence].append(java.lang.CharSequence)"
    - "[java.io.PrintStream].append(java.lang.CharSequence)"
    - "[java.io.OutputStreamWriter].append(java.lang.CharSequence)"
    - "[java.lang.AbstractStringBuilder].append(java.lang.CharSequence)"
    - "[java.io.Writer].append(java.lang.CharSequence)"
    - "[java.nio.CharBuffer].append(java.lang.CharSequence)"
    - "[io.netty.util.internal.StringUtil].byteToHexString(int)"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[java.lang.Appendable].append(java.lang.CharSequence)"
    functionUses: 1
    ICount: 8
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:193,1"
      Dst: "[io.netty.util.internal.StringUtil].byteToHexString(int)"
    - Src: "io.netty.util.internal.StringUtil:193,1"
      Dst: "[java.lang.Appendable].append(java.lang.CharSequence)"
    - Src: "io.netty.util.internal.StringUtil:195,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].byteToHexString(int)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].toHexStringPadded(java.lang.Appendable,byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 179
    functionDepth: 4
    returnType: "java.lang.Appendable"
    argCount: 4
    argTypes:
    - "java.lang.Appendable"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.StringUtil].byteToHexStringPadded(java.lang.Appendable,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:175"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:177"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:176,1"
      Dst: "[io.netty.util.internal.StringUtil].byteToHexStringPadded(java.lang.Appendable,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.StringUtil].byteToHexStringPadded(java.lang.Appendable,int)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 147
    functionDepth: 3
    returnType: "java.lang.Appendable"
    argCount: 2
    argTypes:
    - "java.lang.Appendable"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PrintWriter].append(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - "[java.lang.StringBuffer].append(java.lang.CharSequence)"
    - "[java.io.StringWriter].append(java.lang.CharSequence)"
    - "[io.netty.util.internal.AppendableCharSequence].append(java.lang.CharSequence)"
    - "[java.io.PrintStream].append(java.lang.CharSequence)"
    - "[java.io.OutputStreamWriter].append(java.lang.CharSequence)"
    - "[java.lang.AbstractStringBuilder].append(java.lang.CharSequence)"
    - "[java.io.Writer].append(java.lang.CharSequence)"
    - "[java.nio.CharBuffer].append(java.lang.CharSequence)"
    - "[io.netty.util.internal.StringUtil].byteToHexStringPadded(int)"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[java.lang.Appendable].append(java.lang.CharSequence)"
    functionUses: 1
    ICount: 8
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:142,1"
      Dst: "[io.netty.util.internal.StringUtil].byteToHexStringPadded(int)"
    - Src: "io.netty.util.internal.StringUtil:142,1"
      Dst: "[java.lang.Appendable].append(java.lang.CharSequence)"
    - Src: "io.netty.util.internal.StringUtil:144,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].byteToHexStringPadded(int)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringEncoder].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringEncoder].<init>(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:53,1"
      Dst: "[io.netty.handler.codec.http.QueryStringEncoder].<init>(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringEncoder].<init>(java.lang.String,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.nio.charset.Charset].equals(java.lang.Object)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:60"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:60,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:61,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:62,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:63,1"
      Dst: "[java.nio.charset.Charset].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.QueryStringEncoder].addParam(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.http.QueryStringEncoder].encodeComponent(java.lang.CharSequence)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:74"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:73"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:83"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:70,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:72,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:78,1"
      Dst: "[io.netty.handler.codec.http.QueryStringEncoder].encodeComponent(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.QueryStringEncoder].encodeComponent(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringEncoder].encodeUtf8Component(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.QueryStringEncoder].encodeNonUtf8Component(java.lang.CharSequence)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:86"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:89"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:87,1"
      Dst: "[io.netty.handler.codec.http.QueryStringEncoder].encodeUtf8Component(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:89,1"
      Dst: "[io.netty.handler.codec.http.QueryStringEncoder].encodeNonUtf8Component(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.QueryStringEncoder].encodeUtf8Component(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.handler.codec.http.QueryStringEncoder].dontNeedEncoding(char)"
    - "[io.netty.handler.codec.http.QueryStringEncoder].encodeUtf8Component(java.lang.CharSequence,int,int)"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:163"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:162"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:158"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:156"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:155"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:156,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:157,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:158,1"
      Dst: "[io.netty.handler.codec.http.QueryStringEncoder].dontNeedEncoding(char)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:159,1"
      Dst: "[io.netty.handler.codec.http.QueryStringEncoder].encodeUtf8Component(java.lang.CharSequence,int,int)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:163,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.QueryStringEncoder].dontNeedEncoding(char)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:247"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:247"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:246"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:247"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:247"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:246"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:247"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:247"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:246"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:247"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:246"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:247"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:246"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:247"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:246"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:247"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:246"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:247"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:246"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 12
  - functionName: "[io.netty.handler.codec.http.QueryStringEncoder].encodeUtf8Component(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    - "[io.netty.handler.codec.http.QueryStringEncoder].encodeUtf8ComponentSlow(java.lang.CharSequence,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:170"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:169,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:171,1"
      Dst: "[io.netty.handler.codec.http.QueryStringEncoder].encodeUtf8ComponentSlow(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.QueryStringEncoder].encodeUtf8ComponentSlow(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.handler.codec.http.QueryStringEncoder].dontNeedEncoding(char)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.http.QueryStringEncoder].appendEncoded(int)"
    - "[io.netty.util.internal.StringUtil].isSurrogate(char)"
    - "[java.lang.Character].isHighSurrogate(char)"
    - "[java.lang.CharSequence].length()"
    - "[io.netty.handler.codec.http.QueryStringEncoder].writeUtf8Surrogate(char,char)"
    functionUses: 0
    ICount: 56
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:183"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:186"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:185"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:192"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:191"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:192"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:197"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:196"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:176,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:178,1"
      Dst: "[io.netty.handler.codec.http.QueryStringEncoder].dontNeedEncoding(char)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:179,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:181,1"
      Dst: "[io.netty.handler.codec.http.QueryStringEncoder].appendEncoded(int)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:186,1"
      Dst: "[io.netty.util.internal.StringUtil].isSurrogate(char)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:187,1"
      Dst: "[java.lang.Character].isHighSurrogate(char)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:192,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:197,1"
      Dst: "[io.netty.handler.codec.http.QueryStringEncoder].writeUtf8Surrogate(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.http.QueryStringEncoder].appendEncoded(int)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.http.QueryStringEncoder].forDigit(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:221,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:221,1"
      Dst: "[io.netty.handler.codec.http.QueryStringEncoder].forDigit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringEncoder].forDigit(int)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringEncoder].writeUtf8Surrogate(char,char)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "char"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Character].isLowSurrogate(char)"
    - "[io.netty.handler.codec.http.QueryStringEncoder].appendEncoded(int)"
    - "[java.lang.Character].isHighSurrogate(char)"
    - "[java.lang.Character].toCodePoint(char,char)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:207"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:212"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:211"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:209"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:208"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:207"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:207,1"
      Dst: "[java.lang.Character].isLowSurrogate(char)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:208,1"
      Dst: "[io.netty.handler.codec.http.QueryStringEncoder].appendEncoded(int)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:209,1"
      Dst: "[java.lang.Character].isHighSurrogate(char)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:212,1"
      Dst: "[java.lang.Character].toCodePoint(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.QueryStringEncoder].encodeNonUtf8Component(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.handler.codec.http.QueryStringEncoder].dontNeedEncoding(char)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.String].<init>(char[],int,int)"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.QueryStringEncoder].appendEncoded(int)"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:150"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:149"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:132"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:131"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:138"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:137"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:141"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:142"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:141"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:137"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringEncoder:145"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringEncoder:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:126,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:127,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:128,1"
      Dst: "[io.netty.handler.codec.http.QueryStringEncoder].dontNeedEncoding(char)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:129,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:143,1"
      Dst: "[java.lang.String].<init>(char[],int,int)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:143,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:146,1"
      Dst: "[io.netty.handler.codec.http.QueryStringEncoder].appendEncoded(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http.QueryStringEncoder].toUri()"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.net.URI"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringEncoder].toString()"
    - "[java.net.URI].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:99,1"
      Dst: "[io.netty.handler.codec.http.QueryStringEncoder].toString()"
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:99,1"
      Dst: "[java.net.URI].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.net.URISyntaxException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringEncoder].toString()"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringEncoder"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringEncoder:109,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel$1].<init>(io.netty.channel.sctp.nio.NioSctpChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel$1"
    linkageType: ""
    functionLinenumber: 355
    functionLinenumberEnd: 357
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.sctp.nio.NioSctpChannel"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel$1:356,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel$1"
    linkageType: ""
    functionLinenumber: 358
    functionLinenumberEnd: 361
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 50
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel$1:359,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 347
    functionLinenumberEnd: 364
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].<init>(io.netty.channel.sctp.nio.NioSctpChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[com.sun.nio.sctp.SctpChannel].bindAddress(java.net.InetAddress)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 18
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:348"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:355"
        BranchSideFuncs:
        - "<init>(io.netty.channel.sctp.nio.NioSctpChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
        - "run()"
        - "eventLoop()"
        - "execute(java.lang.Runnable)"
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:348,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:348,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:350,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:350,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].bindAddress(java.net.InetAddress)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:351,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:353,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:356,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel$1].<init>(io.netty.channel.sctp.nio.NioSctpChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:356,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionDepth: 0
    returnType: "com.sun.nio.sctp.SctpChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].javaChannel()"
    functionUses: 14
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:184,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].javaChannel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ConstantTimeUtils].<init>()"
    functionSourceFile: "io.netty.util.internal.ConstantTimeUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ConstantTimeUtils:19,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ConstantTimeUtils].equalsConstantTime(int,int)"
    functionSourceFile: "io.netty.util.internal.ConstantTimeUtils"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ConstantTimeUtils].equalsConstantTime(long,long)"
    functionSourceFile: "io.netty.util.internal.ConstantTimeUtils"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ConstantTimeUtils].equalsConstantTime(byte[],int,byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.ConstantTimeUtils"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 102
    functionDepth: 1
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ConstantTimeUtils].equalsConstantTime(int,int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ConstantTimeUtils:98"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ConstantTimeUtils:100"
        BranchSideFuncs:
        - "equalsConstantTime(int,int)"
    Callsites:
    - Src: "io.netty.util.internal.ConstantTimeUtils:101,1"
      Dst: "[io.netty.util.internal.ConstantTimeUtils].equalsConstantTime(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.ConstantTimeUtils].equalsConstantTime(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.internal.ConstantTimeUtils"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 130
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[io.netty.util.AsciiString:io.netty.util.internal.AppendableCharSequence:java.lang.AbstractStringBuilder:java.lang.StringBuffer:java.lang.StringBuilder:java.nio.CharBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[io.netty.util.internal.ConstantTimeUtils].equalsConstantTime(int,int)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 1
    ICount: 18
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ConstantTimeUtils:120"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ConstantTimeUtils:125"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.ConstantTimeUtils:124"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.util.internal.ConstantTimeUtils:126"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ConstantTimeUtils:128"
        BranchSideFuncs:
        - "equalsConstantTime(int,int)"
    Callsites:
    - Src: "io.netty.util.internal.ConstantTimeUtils:120,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.internal.ConstantTimeUtils:127,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.internal.ConstantTimeUtils:129,1"
      Dst: "[io.netty.util.internal.ConstantTimeUtils].equalsConstantTime(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.HashedWheelTimer$Worker].<init>(io.netty.util.HashedWheelTimer)"
    functionSourceFile: "io.netty.util.HashedWheelTimer$Worker"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.HashedWheelTimer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashSet].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$Worker:479,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.HashedWheelTimer$Worker:480,1"
      Dst: "[java.util.HashSet].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$Worker].run()"
    functionSourceFile: "io.netty.util.HashedWheelTimer$Worker"
    linkageType: ""
    functionLinenumber: 486
    functionLinenumberEnd: 527
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer].access$202(io.netty.util.HashedWheelTimer,long)"
    - "[java.lang.System].nanoTime()"
    - "[io.netty.util.HashedWheelTimer].access$200(io.netty.util.HashedWheelTimer)"
    - "[io.netty.util.HashedWheelTimer].access$300(io.netty.util.HashedWheelTimer)"
    - "[java.util.concurrent.CountDownLatch].countDown()"
    - "[io.netty.util.HashedWheelTimer$Worker].waitForNextTick()"
    - "[io.netty.util.HashedWheelTimer].access$400(io.netty.util.HashedWheelTimer)"
    - "[io.netty.util.HashedWheelTimer].access$508(io.netty.util.HashedWheelTimer)"
    - "[io.netty.util.HashedWheelTimer$Worker].processCancelledTasks()"
    - "[io.netty.util.HashedWheelTimer].access$600(io.netty.util.HashedWheelTimer)"
    - "[io.netty.util.HashedWheelTimer$Worker].transferTimeoutsToBuckets()"
    - "[io.netty.util.HashedWheelTimer].access$500(io.netty.util.HashedWheelTimer)"
    - "[io.netty.util.HashedWheelTimer$HashedWheelBucket].expireTimeouts(long,long)"
    - "[io.netty.util.HashedWheelTimer].access$700()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelBucket].clearTimeouts(java.util.Set)"
    - "[io.netty.util.HashedWheelTimer].access$800(io.netty.util.HashedWheelTimer)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].isCancelled()"
    - "[io.netty.util.internal.ConcurrentSet].add(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].add(java.lang.Object)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].add(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].add(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].add(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.util.TreeSet].add(java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].get(java.lang.Object)"
    - "[java.util.Queue].poll()"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 49
    ICount: 68
    EdgeCount: 50
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:488"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:493"
        BranchSideFuncs:
        - "countDown()"
        - "access$300(io.netty.util.HashedWheelTimer)"
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:498"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:510"
        BranchSideFuncs:
        - "access$400(io.netty.util.HashedWheelTimer)"
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:509"
        BranchSideFuncs:
        - "access$700()"
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:500"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:503"
        BranchSideFuncs:
        - "access$508(io.netty.util.HashedWheelTimer)"
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:502"
        BranchSideFuncs:
        - "transferTimeoutsToBuckets()"
        - "access$500(io.netty.util.HashedWheelTimer)"
        - "expireTimeouts(long,long)"
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:500"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:503"
        BranchSideFuncs:
        - "access$508(io.netty.util.HashedWheelTimer)"
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:502"
        BranchSideFuncs:
        - "transferTimeoutsToBuckets()"
        - "access$500(io.netty.util.HashedWheelTimer)"
        - "expireTimeouts(long,long)"
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:510"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:496"
        BranchSideFuncs:
        - "waitForNextTick()"
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:513"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:516"
        BranchSideFuncs:
        - "access$800(io.netty.util.HashedWheelTimer)"
        - "poll()"
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:518"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:521"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:520"
        BranchSideFuncs:
        - "isCancelled()"
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:521"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:524"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:523"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$Worker:487,1"
      Dst: "[java.lang.System].nanoTime()"
    - Src: "io.netty.util.HashedWheelTimer$Worker:487,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$202(io.netty.util.HashedWheelTimer,long)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:488,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$200(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:494,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$300(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:494,1"
      Dst: "[java.util.concurrent.CountDownLatch].countDown()"
    - Src: "io.netty.util.HashedWheelTimer$Worker:497,1"
      Dst: "[io.netty.util.HashedWheelTimer$Worker].waitForNextTick()"
    - Src: "io.netty.util.HashedWheelTimer$Worker:499,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$400(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:501,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$508(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:503,1"
      Dst: "[io.netty.util.HashedWheelTimer$Worker].processCancelledTasks()"
    - Src: "io.netty.util.HashedWheelTimer$Worker:505,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$600(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:506,1"
      Dst: "[io.netty.util.HashedWheelTimer$Worker].transferTimeoutsToBuckets()"
    - Src: "io.netty.util.HashedWheelTimer$Worker:507,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$500(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:507,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelBucket].expireTimeouts(long,long)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:510,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$700()"
    - Src: "io.netty.util.HashedWheelTimer$Worker:510,1"
      Dst: "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].get(java.lang.Object)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:514,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelBucket].clearTimeouts(java.util.Set)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:517,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$800(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:517,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.util.HashedWheelTimer$Worker:521,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].isCancelled()"
    - Src: "io.netty.util.HashedWheelTimer$Worker:522,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 9
  - functionName: "[io.netty.util.HashedWheelTimer].access$202(io.netty.util.HashedWheelTimer,long)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "io.netty.util.HashedWheelTimer"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer].access$300(io.netty.util.HashedWheelTimer)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "java.util.concurrent.CountDownLatch"
    argCount: 1
    argTypes:
    - "io.netty.util.HashedWheelTimer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$Worker].waitForNextTick()"
    functionSourceFile: "io.netty.util.HashedWheelTimer$Worker"
    linkageType: ""
    functionLinenumber: 576
    functionLinenumberEnd: 611
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer].access$1000(io.netty.util.HashedWheelTimer)"
    - "[io.netty.util.HashedWheelTimer].access$200(io.netty.util.HashedWheelTimer)"
    - "[java.lang.System].nanoTime()"
    - "[io.netty.util.internal.PlatformDependent].isWindows()"
    - "[java.lang.Thread].sleep(long)"
    - "[io.netty.util.HashedWheelTimer].access$700()"
    - "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].get(java.lang.Object)"
    functionUses: 1
    ICount: 37
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:583"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:596"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:595"
        BranchSideFuncs:
        - "isWindows()"
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:584"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:587"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:586"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:596"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:604"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:603"
        BranchSideFuncs:
        - "sleep(long)"
        - "access$700()"
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:598"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:604"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:603"
        BranchSideFuncs:
        - "sleep(long)"
        - "access$700()"
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:606"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:610"
        BranchSideFuncs:
        - "sleep(long)"
        - "access$700()"
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:609"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$Worker:577,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$1000(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:580,1"
      Dst: "[java.lang.System].nanoTime()"
    - Src: "io.netty.util.HashedWheelTimer$Worker:580,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$200(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:596,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isWindows()"
    - Src: "io.netty.util.HashedWheelTimer$Worker:604,1"
      Dst: "[java.lang.Thread].sleep(long)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:606,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$700()"
    - Src: "io.netty.util.HashedWheelTimer$Worker:606,1"
      Dst: "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.HashedWheelTimer].access$1000(io.netty.util.HashedWheelTimer)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.util.HashedWheelTimer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer].access$700()"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "java.util.concurrent.atomic.AtomicIntegerFieldUpdater"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer].access$400(io.netty.util.HashedWheelTimer)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.HashedWheelTimer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer].access$508(io.netty.util.HashedWheelTimer)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.util.HashedWheelTimer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$Worker].processCancelledTasks()"
    functionSourceFile: "io.netty.util.HashedWheelTimer$Worker"
    linkageType: ""
    functionLinenumber: 554
    functionLinenumberEnd: 569
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer].access$1100(io.netty.util.HashedWheelTimer)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].remove()"
    - "[io.netty.util.internal.logging.JdkLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.util.Queue].poll()"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 17
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:556"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:560"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "remove()"
        - "isWarnEnabled()"
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:563"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:567"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "remove()"
        - "isWarnEnabled()"
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:566"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$Worker:555,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$1100(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:555,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.util.HashedWheelTimer$Worker:561,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].remove()"
    - Src: "io.netty.util.HashedWheelTimer$Worker:563,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.util.HashedWheelTimer$Worker:564,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.HashedWheelTimer].access$600(io.netty.util.HashedWheelTimer)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "io.netty.util.HashedWheelTimer$HashedWheelBucket[]"
    argCount: 1
    argTypes:
    - "io.netty.util.HashedWheelTimer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$Worker].transferTimeoutsToBuckets()"
    functionSourceFile: "io.netty.util.HashedWheelTimer$Worker"
    linkageType: ""
    functionLinenumber: 530
    functionLinenumberEnd: 552
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer].access$800(io.netty.util.HashedWheelTimer)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].state()"
    - "[io.netty.util.HashedWheelTimer].access$1000(io.netty.util.HashedWheelTimer)"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].access$900(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
    - "[io.netty.util.HashedWheelTimer].access$600(io.netty.util.HashedWheelTimer)"
    - "[java.lang.Math].max(long,long)"
    - "[io.netty.util.HashedWheelTimer].access$400(io.netty.util.HashedWheelTimer)"
    - "[io.netty.util.HashedWheelTimer$HashedWheelBucket].addTimeout(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
    - "[java.util.Queue].poll()"
    functionUses: 1
    ICount: 36
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:531"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:551"
        BranchSideFuncs:
        - "access$800(io.netty.util.HashedWheelTimer)"
        - "poll()"
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:550"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:533"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:536"
        BranchSideFuncs:
        - "state()"
    - Branch String: "io.netty.util.HashedWheelTimer$Worker:537"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$Worker:541"
        BranchSideFuncs:
        - "access$1000(io.netty.util.HashedWheelTimer)"
        - "access$600(io.netty.util.HashedWheelTimer)"
        - "addTimeout(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
        - "access$900(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
        - "access$400(io.netty.util.HashedWheelTimer)"
        - "max(long,long)"
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$Worker:532,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$800(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:532,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.util.HashedWheelTimer$Worker:537,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].state()"
    - Src: "io.netty.util.HashedWheelTimer$Worker:542,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].access$900(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:542,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$1000(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:543,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$600(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:545,1"
      Dst: "[java.lang.Math].max(long,long)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:546,1"
      Dst: "[io.netty.util.HashedWheelTimer].access$400(io.netty.util.HashedWheelTimer)"
    - Src: "io.netty.util.HashedWheelTimer$Worker:549,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelBucket].addTimeout(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.HashedWheelTimer].access$800(io.netty.util.HashedWheelTimer)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "java.util.Queue"
    argCount: 1
    argTypes:
    - "io.netty.util.HashedWheelTimer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelBucket].addTimeout(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelBucket"
    linkageType: ""
    functionLinenumber: 770
    functionLinenumberEnd: 781
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    functionUses: 1
    ICount: 21
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelBucket:771"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:772"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:771"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelBucket:771"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:772"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:771"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelBucket:773"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:776"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:775"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelBucket:771,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.HashedWheelTimer].access$500(io.netty.util.HashedWheelTimer)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.util.HashedWheelTimer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelBucket].expireTimeouts(long,long)"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelBucket"
    linkageType: ""
    functionLinenumber: 785
    functionLinenumberEnd: 808
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer$HashedWheelBucket].remove(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].access$900(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].expire()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Long].valueOf(long)"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].isCancelled()"
    functionUses: 1
    ICount: 33
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelBucket:789"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:807"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:806"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelBucket:791"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:800"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:799"
        BranchSideFuncs:
        - "isCancelled()"
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelBucket:793"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:797"
        BranchSideFuncs:
        - "expire()"
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:796"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelBucket:800"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:807"
        BranchSideFuncs:
        - "remove(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:806"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelBucket:792,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelBucket].remove(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelBucket:793,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].access$900(io.netty.util.HashedWheelTimer$HashedWheelTimeout)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelBucket:794,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].expire()"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelBucket:798,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelBucket:797,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelBucket:797,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelBucket:800,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].isCancelled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelBucket].clearTimeouts(java.util.Set)"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelBucket"
    linkageType: ""
    functionLinenumber: 843
    functionLinenumberEnd: 853
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer$HashedWheelBucket].pollTimeout()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].isCancelled()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].isExpired()"
    - "[io.netty.util.internal.ConcurrentSet].add(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].add(java.lang.Object)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].add(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].add(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].add(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.util.TreeSet].add(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelBucket:845"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:848"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:847"
        BranchSideFuncs:
        - "isExpired()"
        - "isCancelled()"
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelBucket:848"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:844"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:843"
        BranchSideFuncs:
        - "pollTimeout()"
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelBucket:848"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:851"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:850"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelBucket:844,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelBucket].pollTimeout()"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelBucket:848,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].isExpired()"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelBucket:848,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].isCancelled()"
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelBucket:851,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelBucket].pollTimeout()"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelBucket"
    linkageType: ""
    functionLinenumber: 855
    functionLinenumberEnd: 873
    functionDepth: 0
    returnType: "io.netty.util.HashedWheelTimer$HashedWheelTimeout"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelBucket:857"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:860"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:859"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer$HashedWheelBucket:861"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:864"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer$HashedWheelBucket:863"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.HashedWheelTimer$Worker].unprocessedTimeouts()"
    functionSourceFile: "io.netty.util.HashedWheelTimer$Worker"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$Worker:614,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$Worker].<init>(io.netty.util.HashedWheelTimer,io.netty.util.HashedWheelTimer$1)"
    functionSourceFile: "io.netty.util.HashedWheelTimer$Worker"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.HashedWheelTimer"
    - "io.netty.util.HashedWheelTimer$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer$Worker].<init>(io.netty.util.HashedWheelTimer)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$Worker:479,1"
      Dst: "[io.netty.util.HashedWheelTimer$Worker].<init>(io.netty.util.HashedWheelTimer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].<init>(io.netty.channel.kqueue.KQueueServerSocketChannel)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.KQueueServerSocketChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setReuseAddress(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:36,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:41,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setReuseAddress(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:46,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].getOptions()"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:46,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:49,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].getOptions()"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:49,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 59
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].isReusePort()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].getAcceptFilter()"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 5
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:52"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:55"
        BranchSideFuncs:
        - "isReusePort()"
        - "valueOf(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:54"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:55"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:58"
        BranchSideFuncs:
        - "getAcceptFilter()"
      - BranchSide: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:57"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:53,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].isReusePort()"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:53,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:56,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].getAcceptFilter()"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:58,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].isReusePort()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isReusePort()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:87,1"
      Dst: "[io.netty.channel.unix.Socket].isReusePort()"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:89,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].isReusePort()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 444
    functionLinenumberEnd: 446
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isReusePort(int)"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:445"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:444"
        BranchSideFuncs:
        - "isReusePort(int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:445,1"
      Dst: "[io.netty.channel.unix.Socket].isReusePort(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Socket].isReusePort(int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].getAcceptFilter()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 107
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.AcceptFilter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.BsdSocket].getAcceptFilter()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:104,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].getAcceptFilter()"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:106,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.BsdSocket].getAcceptFilter()"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.AcceptFilter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.BsdSocket].getAcceptFilter(int)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.kqueue.AcceptFilter].<init>(java.lang.String,java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.BsdSocket:83"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:81"
        BranchSideFuncs:
        - "getAcceptFilter(int)"
        - "intValue()"
        - "<init>(java.lang.String,java.lang.String)"
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:82,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.BsdSocket:82,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].getAcceptFilter(int)"
    - Src: "io.netty.channel.kqueue.BsdSocket:83,1"
      Dst: "[io.netty.channel.kqueue.AcceptFilter].<init>(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.BsdSocket].getAcceptFilter(int)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.AcceptFilter].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.channel.kqueue.AcceptFilter"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AcceptFilter:27,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.kqueue.AcceptFilter:28,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 74
    functionDepth: 7
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setReusePort(boolean)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setAcceptFilter(io.netty.channel.kqueue.AcceptFilter)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 2
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:65"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:67"
        BranchSideFuncs:
        - "booleanValue()"
        - "setReusePort(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:66"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:67"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:70"
        BranchSideFuncs:
        - "setAcceptFilter(io.netty.channel.kqueue.AcceptFilter)"
      - BranchSide: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:69"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:63,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:66,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:66,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setReusePort(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:68,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setAcceptFilter(io.netty.channel.kqueue.AcceptFilter)"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:70,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setReusePort(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setReusePort(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:78,1"
      Dst: "[io.netty.channel.unix.Socket].setReusePort(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:81,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].setReusePort(boolean)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 488
    functionLinenumberEnd: 491
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setReusePort(int,int)"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:489"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:489"
        BranchSideFuncs:
        - "setReusePort(int,int)"
      - BranchSide: "io.netty.channel.unix.Socket:488"
        BranchSideFuncs:
        - "setReusePort(int,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:489,1"
      Dst: "[io.netty.channel.unix.Socket].setReusePort(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Socket].setReusePort(int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setAcceptFilter(io.netty.channel.kqueue.AcceptFilter)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 99
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.AcceptFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.BsdSocket].setAcceptFilter(io.netty.channel.kqueue.AcceptFilter)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:95,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].setAcceptFilter(io.netty.channel.kqueue.AcceptFilter)"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:98,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.BsdSocket].setAcceptFilter(io.netty.channel.kqueue.AcceptFilter)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.AcceptFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AcceptFilter].filterArgs()"
    - "[io.netty.channel.kqueue.AcceptFilter].filterName()"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.kqueue.BsdSocket].setAcceptFilter(int,java.lang.String,java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:58,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.BsdSocket:58,1"
      Dst: "[io.netty.channel.kqueue.AcceptFilter].filterName()"
    - Src: "io.netty.channel.kqueue.BsdSocket:58,1"
      Dst: "[io.netty.channel.kqueue.AcceptFilter].filterArgs()"
    - Src: "io.netty.channel.kqueue.BsdSocket:58,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].setAcceptFilter(int,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AcceptFilter].filterName()"
    functionSourceFile: "io.netty.channel.kqueue.AcceptFilter"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AcceptFilter].filterArgs()"
    functionSourceFile: "io.netty.channel.kqueue.AcceptFilter"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.BsdSocket].setAcceptFilter(int,java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 87
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setReceiveBufferSize(int)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setReceiveBufferSize(int)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setReuseAddress(boolean)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setReuseAddress(boolean)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setBacklog(int)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setBacklog(int)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig:java.lang.Integer].intValue()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setTcpFastOpen(boolean)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setTcpFastOpen(boolean)"
    functionUses: 3
    ICount: 35
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueServerChannelConfig:74"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:76"
        BranchSideFuncs:
        - "setReceiveBufferSize(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:75"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueServerChannelConfig:76"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:78"
        BranchSideFuncs:
        - "booleanValue()"
        - "setReuseAddress(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:77"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueServerChannelConfig:78"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:80"
        BranchSideFuncs:
        - "setBacklog(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:79"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueServerChannelConfig:80"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:83"
        BranchSideFuncs:
        - "setTcpFastOpen(boolean)"
        - "intValue()"
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:82"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - Branch String: "io.netty.channel.kqueue.KQueueServerChannelConfig:81"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:80"
        BranchSideFuncs:
        - "setTcpFastOpen(boolean)"
        - "intValue()"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:72,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:75,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:75,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:77,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:77,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setReuseAddress(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:79,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setBacklog(int)"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:81,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setTcpFastOpen(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:83,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 124
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setReceiveBufferSize(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:120,1"
      Dst: "[io.netty.channel.unix.Socket].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:123,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setReuseAddress(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 105
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setReuseAddress(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:101,1"
      Dst: "[io.netty.channel.unix.Socket].setReuseAddress(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:104,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setBacklog(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 137
    functionDepth: 1
    returnType: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:134,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setTcpFastOpen(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionDepth: 0
    returnType: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:112,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 165
    functionDepth: 1
    returnType: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:163,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setReuseAddress(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setReuseAddress(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:118,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setReuseAddress(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setReceiveBufferSize(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:124,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setReceiveBufferSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setPerformancePreferences(int,int,int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setBacklog(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setBacklog(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:135,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setBacklog(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setTcpFastOpen(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionDepth: 1
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setTcpFastOpen(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:141,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setTcpFastOpen(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 149
    functionDepth: 4
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:147,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:174,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionDepth: 4
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:154,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:181,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionDepth: 4
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setWriteSpinCount(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:160,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 189
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteSpinCount(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:187,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionDepth: 4
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:166,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:193,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionDepth: 4
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:172,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:199,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionDepth: 4
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setAutoRead(boolean)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:178,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 207
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setAutoRead(boolean)"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:205,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionDepth: 5
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:185,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 214
    functionDepth: 4
    returnType: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:212,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:167,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionDepth: 5
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:192,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 221
    functionDepth: 4
    returnType: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:219,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:174,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionDepth: 4
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:198,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 227
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:225,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionDepth: 4
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig:204,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 233
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:231,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(io.netty.handler.codec.http2.Http2Error)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Error].code()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:42,1"
      Dst: "[io.netty.handler.codec.http2.Http2Error].code()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:42,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(long)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(long,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:51,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(long,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(io.netty.handler.codec.http2.Http2Error,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Error].code()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(long,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:61,1"
      Dst: "[io.netty.handler.codec.http2.Http2Error].code()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:61,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(long,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(long,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(int,long,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:71,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(int,long,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(int,long,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 85
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 3
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:81,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].name()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].errorCode()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].extraStreamIds()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].setExtraStreamIds(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 106
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2GoAwayFrame"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:103,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].lastStreamId()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].copy()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http2.Http2GoAwayFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(int,long,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:115,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:115,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:115,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(int,long,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].duplicate()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http2.Http2GoAwayFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].duplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:120,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionDepth: 4
    returnType: "io.netty.handler.codec.http2.Http2GoAwayFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retainedDuplicate()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:125,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionDepth: 4
    returnType: "io.netty.handler.codec.http2.Http2GoAwayFrame"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].setExtraStreamIds(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:130,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(long,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:130,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].setExtraStreamIds(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].retain()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2GoAwayFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retain()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:135,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2GoAwayFrame"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:141,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].touch()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 149
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2GoAwayFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].touch()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:147,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2GoAwayFrame"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].touch(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:153,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 164
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].equals(java.lang.Object)"
    functionUses: 9
    ICount: 19
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:159"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:162"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:161"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:163,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 172
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].hashCode()"
    functionUses: 5
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:168,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].toString()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(long)"
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 20
    ICount: 20
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:176,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:176,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:176,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:176,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:176,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:176,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:176,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:176,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame:176,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.SelectedSelectionKeySet].<init>()"
    functionSourceFile: "io.netty.channel.nio.SelectedSelectionKeySet"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractSet].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.SelectedSelectionKeySet:29,1"
      Dst: "[java.util.AbstractSet].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.SelectedSelectionKeySet].add(java.nio.channels.SelectionKey)"
    functionSourceFile: "io.netty.channel.nio.SelectedSelectionKeySet"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 45
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.nio.channels.SelectionKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.SelectedSelectionKeySet].increaseCapacity()"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.SelectedSelectionKeySet:35"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.SelectedSelectionKeySet:39"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.SelectedSelectionKeySet:38"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.SelectedSelectionKeySet:39"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.SelectedSelectionKeySet:43"
        BranchSideFuncs:
        - "increaseCapacity()"
      - BranchSide: "io.netty.channel.nio.SelectedSelectionKeySet:42"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.SelectedSelectionKeySet:40,1"
      Dst: "[io.netty.channel.nio.SelectedSelectionKeySet].increaseCapacity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.nio.SelectedSelectionKeySet].increaseCapacity()"
    functionSourceFile: "io.netty.channel.nio.SelectedSelectionKeySet"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.SelectedSelectionKeySet:98,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.SelectedSelectionKeySet].remove(java.lang.Object)"
    functionSourceFile: "io.netty.channel.nio.SelectedSelectionKeySet"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.SelectedSelectionKeySet].contains(java.lang.Object)"
    functionSourceFile: "io.netty.channel.nio.SelectedSelectionKeySet"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.SelectedSelectionKeySet].size()"
    functionSourceFile: "io.netty.channel.nio.SelectedSelectionKeySet"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    functionSourceFile: "io.netty.channel.nio.SelectedSelectionKeySet"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].<init>(io.netty.channel.nio.SelectedSelectionKeySet)"
    functionUses: 119
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.SelectedSelectionKeySet:64,1"
      Dst: "[io.netty.channel.nio.SelectedSelectionKeySet$1].<init>(io.netty.channel.nio.SelectedSelectionKeySet)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.SelectedSelectionKeySet$1].<init>(io.netty.channel.nio.SelectedSelectionKeySet)"
    functionSourceFile: "io.netty.channel.nio.SelectedSelectionKeySet$1"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.nio.SelectedSelectionKeySet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.SelectedSelectionKeySet$1:64,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.SelectedSelectionKeySet].reset()"
    functionSourceFile: "io.netty.channel.nio.SelectedSelectionKeySet"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.SelectedSelectionKeySet].reset(int)"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.SelectedSelectionKeySet:88,1"
      Dst: "[io.netty.channel.nio.SelectedSelectionKeySet].reset(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.SelectedSelectionKeySet].reset(int)"
    functionSourceFile: "io.netty.channel.nio.SelectedSelectionKeySet"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].fill(java.lang.Object[],int,int,java.lang.Object)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.SelectedSelectionKeySet:92,1"
      Dst: "[java.util.Arrays].fill(java.lang.Object[],int,int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.SelectedSelectionKeySet].add(java.lang.Object)"
    functionSourceFile: "io.netty.channel.nio.SelectedSelectionKeySet"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.SelectedSelectionKeySet].add(java.nio.channels.SelectionKey)"
    functionUses: 21
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.SelectedSelectionKeySet:24,1"
      Dst: "[io.netty.channel.nio.SelectedSelectionKeySet].add(java.nio.channels.SelectionKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(boolean,java.lang.Iterable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:47,1"
      Dst: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(boolean,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(java.lang.String[])"
    functionSourceFile: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(boolean,java.lang.String[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:55,1"
      Dst: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(boolean,java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(boolean,java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(boolean,boolean,java.lang.Iterable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:64,1"
      Dst: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(boolean,boolean,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(boolean,java.lang.String[])"
    functionSourceFile: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(boolean,boolean,java.lang.String[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:73,1"
      Dst: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(boolean,boolean,java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(boolean,boolean,java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "boolean"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.lang.Iterable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:84"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:83"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:84"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:84,1"
      Dst: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(boolean,boolean,java.lang.String[])"
    functionSourceFile: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "boolean"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.lang.String[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:97"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:97"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:96"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:97"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:97"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:97,1"
      Dst: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.lang.Iterable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:110,1"
      Dst: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.lang.String[])"
    functionSourceFile: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.lang.String[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:121,1"
      Dst: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].wrapperFactory()"
    functionSourceFile: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 1
    returnType: "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].wrapperFactory()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:25,1"
      Dst: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].wrapperFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].wrapperFactory()"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionDepth: 0
    returnType: "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].protocolListenerFactory()"
    functionSourceFile: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 1
    returnType: "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocolListenerFactory()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:25,1"
      Dst: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocolListenerFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocolListenerFactory()"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].protocolSelectorFactory()"
    functionSourceFile: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 1
    returnType: "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocolSelectorFactory()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:25,1"
      Dst: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocolSelectorFactory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocolSelectorFactory()"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].protocols()"
    functionSourceFile: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocols()"
    functionUses: 11
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator:25,1"
      Dst: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocols()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocols()"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SimpleKeyManagerFactory$2].<init>()"
    functionSourceFile: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$2:53,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SimpleKeyManagerFactory$2].initialValue()"
    functionSourceFile: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$2"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 2
    returnType: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi].<init>(io.netty.handler.ssl.util.SimpleKeyManagerFactory$1)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$2:56,1"
      Dst: "[io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi].<init>(io.netty.handler.ssl.util.SimpleKeyManagerFactory$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi].<init>(io.netty.handler.ssl.util.SimpleKeyManagerFactory$1)"
    functionSourceFile: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.util.SimpleKeyManagerFactory$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:99,1"
      Dst: "[io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi].<init>()"
    functionSourceFile: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.KeyManagerFactorySpi].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:99,1"
      Dst: "[javax.net.ssl.KeyManagerFactorySpi].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception$ClosedStreamCreationException].<init>(io.netty.handler.codec.http2.Http2Error)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception$ClosedStreamCreationException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception$ClosedStreamCreationException:254,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception$ClosedStreamCreationException].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception$ClosedStreamCreationException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception$ClosedStreamCreationException:262,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnreleasableByteBuf].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.UnreleasableByteBuf"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SlicedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf:io.netty.buffer.AbstractUnpooledSlicedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.DuplicatedByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.ReadOnlyByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.SwappedByteBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf:io.netty.buffer.WrappedByteBuf:io.netty.buffer.WrappedCompositeByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].unwrap()"
    functionUses: 6
    ICount: 9
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnreleasableByteBuf:31"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnreleasableByteBuf:31"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf)"
        - "unwrap()"
      - BranchSide: "io.netty.buffer.UnreleasableByteBuf:30"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf)"
        - "unwrap()"
    Callsites:
    - Src: "io.netty.buffer.UnreleasableByteBuf:31,1"
      Dst: "[io.netty.buffer.ByteBuf].unwrap()"
    - Src: "io.netty.buffer.UnreleasableByteBuf:31,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    functionSourceFile: "io.netty.buffer.UnreleasableByteBuf"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 45
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteOrder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.SwappedByteBuf].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 34
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnreleasableByteBuf:36"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnreleasableByteBuf:40"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnreleasableByteBuf:39"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnreleasableByteBuf:41"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnreleasableByteBuf:44"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.buffer.UnreleasableByteBuf:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.UnreleasableByteBuf:36,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.UnreleasableByteBuf:36,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].order()"
    - Src: "io.netty.buffer.UnreleasableByteBuf:42,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.SwappedByteBuf].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 51
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.ByteBuf].order()"
    functionUses: 4
    ICount: 15
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.buffer.SwappedByteBuf:45"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SwappedByteBuf:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.SwappedByteBuf:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:43,1"
      Dst: "[io.netty.buffer.ByteBuf].<init>()"
    - Src: "io.netty.buffer.SwappedByteBuf:44,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.SwappedByteBuf:45,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnreleasableByteBuf].asReadOnly()"
    functionSourceFile: "io.netty.buffer.UnreleasableByteBuf"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnreleasableByteBuf].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].asReadOnly()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].asReadOnly()"
    - "[io.netty.buffer.AbstractByteBuf].asReadOnly()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].asReadOnly()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].asReadOnly()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].asReadOnly()"
    - "[io.netty.buffer.WrappedByteBuf].asReadOnly()"
    - "[io.netty.buffer.SwappedByteBuf].asReadOnly()"
    - "[io.netty.buffer.EmptyByteBuf].asReadOnly()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].asReadOnly()"
    - "[io.netty.buffer.UnreleasableByteBuf].asReadOnly()"
    - "[io.netty.buffer.ReadOnlyByteBuf].asReadOnly()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].isReadOnly()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isReadOnly()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].isReadOnly()"
    - "[io.netty.buffer.SwappedByteBuf].isReadOnly()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadOnly()"
    - "[io.netty.buffer.WrappedByteBuf].isReadOnly()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.ReadOnlyByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.handler.codec.ReplayingDecoderByteBuf].isReadOnly()"
    - "[io.netty.buffer.ByteBuf].isReadOnly()"
    - "[io.netty.buffer.ByteBuf].asReadOnly()"
    functionUses: 14
    ICount: 11
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnreleasableByteBuf:49"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnreleasableByteBuf:48"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf)"
        - "asReadOnly()"
        - "isReadOnly()"
    Callsites:
    - Src: "io.netty.buffer.UnreleasableByteBuf:49,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadOnly()"
    - Src: "io.netty.buffer.UnreleasableByteBuf:49,1"
      Dst: "[io.netty.buffer.ByteBuf].asReadOnly()"
    - Src: "io.netty.buffer.UnreleasableByteBuf:49,1"
      Dst: "[io.netty.buffer.UnreleasableByteBuf].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnreleasableByteBuf].readSlice(int)"
    functionSourceFile: "io.netty.buffer.UnreleasableByteBuf"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnreleasableByteBuf].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readSlice(int)"
    - "[io.netty.buffer.SwappedByteBuf].readSlice(int)"
    - "[io.netty.buffer.ByteBuf].readSlice(int)"
    functionUses: 22
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnreleasableByteBuf:54,1"
      Dst: "[io.netty.buffer.ByteBuf].readSlice(int)"
    - Src: "io.netty.buffer.UnreleasableByteBuf:54,1"
      Dst: "[io.netty.buffer.UnreleasableByteBuf].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    functionSourceFile: "io.netty.buffer.UnreleasableByteBuf"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnreleasableByteBuf].readSlice(int)"
    functionUses: 40
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnreleasableByteBuf:62,1"
      Dst: "[io.netty.buffer.UnreleasableByteBuf].readSlice(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnreleasableByteBuf].slice()"
    functionSourceFile: "io.netty.buffer.UnreleasableByteBuf"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnreleasableByteBuf].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice()"
    - "[io.netty.buffer.SwappedByteBuf].slice()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice()"
    - "[io.netty.buffer.AbstractByteBuf].slice()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice()"
    - "[io.netty.buffer.WrappedByteBuf].slice()"
    - "[io.netty.buffer.UnreleasableByteBuf].slice()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice()"
    - "[io.netty.buffer.EmptyByteBuf].slice()"
    - "[io.netty.buffer.ByteBuf].slice()"
    functionUses: 9
    ICount: 6
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnreleasableByteBuf:67,1"
      Dst: "[io.netty.buffer.ByteBuf].slice()"
    - Src: "io.netty.buffer.UnreleasableByteBuf:67,1"
      Dst: "[io.netty.buffer.UnreleasableByteBuf].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnreleasableByteBuf].retainedSlice()"
    functionSourceFile: "io.netty.buffer.UnreleasableByteBuf"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnreleasableByteBuf].slice()"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnreleasableByteBuf:75,1"
      Dst: "[io.netty.buffer.UnreleasableByteBuf].slice()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnreleasableByteBuf].slice(int,int)"
    functionSourceFile: "io.netty.buffer.UnreleasableByteBuf"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnreleasableByteBuf].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].slice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].slice(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].slice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].slice(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.ByteBuf].slice(int,int)"
    functionUses: 20
    ICount: 8
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnreleasableByteBuf:80,1"
      Dst: "[io.netty.buffer.ByteBuf].slice(int,int)"
    - Src: "io.netty.buffer.UnreleasableByteBuf:80,1"
      Dst: "[io.netty.buffer.UnreleasableByteBuf].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnreleasableByteBuf].retainedSlice(int,int)"
    functionSourceFile: "io.netty.buffer.UnreleasableByteBuf"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnreleasableByteBuf].slice(int,int)"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnreleasableByteBuf:88,1"
      Dst: "[io.netty.buffer.UnreleasableByteBuf].slice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnreleasableByteBuf].duplicate()"
    functionSourceFile: "io.netty.buffer.UnreleasableByteBuf"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnreleasableByteBuf].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.UnreleasableByteBuf].duplicate()"
    - "[io.netty.buffer.ReadOnlyByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].duplicate()"
    - "[io.netty.buffer.PooledSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.SlicedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractByteBuf].duplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].duplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.SwappedByteBuf].duplicate()"
    - "[io.netty.buffer.EmptyByteBuf].duplicate()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    functionUses: 23
    ICount: 6
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnreleasableByteBuf:93,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.buffer.UnreleasableByteBuf:93,1"
      Dst: "[io.netty.buffer.UnreleasableByteBuf].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnreleasableByteBuf].retainedDuplicate()"
    functionSourceFile: "io.netty.buffer.UnreleasableByteBuf"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnreleasableByteBuf].duplicate()"
    functionUses: 8
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnreleasableByteBuf:101,1"
      Dst: "[io.netty.buffer.UnreleasableByteBuf].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnreleasableByteBuf].retain(int)"
    functionSourceFile: "io.netty.buffer.UnreleasableByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnreleasableByteBuf].retain()"
    functionSourceFile: "io.netty.buffer.UnreleasableByteBuf"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 63
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnreleasableByteBuf].touch()"
    functionSourceFile: "io.netty.buffer.UnreleasableByteBuf"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.UnreleasableByteBuf"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnreleasableByteBuf].release()"
    functionSourceFile: "io.netty.buffer.UnreleasableByteBuf"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 346
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnreleasableByteBuf].release(int)"
    functionSourceFile: "io.netty.buffer.UnreleasableByteBuf"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].decodabet(io.netty.handler.codec.base64.Base64Dialect)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.base64.Base64Dialect"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:58,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].breakLines(io.netty.handler.codec.base64.Base64Dialect)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.base64.Base64Dialect"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:62,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 6
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,io.netty.handler.codec.base64.Base64Dialect)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:66,1"
      Dst: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,io.netty.handler.codec.base64.Base64Dialect)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,io.netty.handler.codec.base64.Base64Dialect)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 5
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.base64.Base64Dialect"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.base64.Base64].breakLines(io.netty.handler.codec.base64.Base64Dialect)"
    - "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,boolean,io.netty.handler.codec.base64.Base64Dialect)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:70,1"
      Dst: "[io.netty.handler.codec.base64.Base64].breakLines(io.netty.handler.codec.base64.Base64Dialect)"
    - Src: "io.netty.handler.codec.base64.Base64:70,1"
      Dst: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,boolean,io.netty.handler.codec.base64.Base64Dialect)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,int,int,io.netty.handler.codec.base64.Base64Dialect)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:86,1"
      Dst: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,int,int,io.netty.handler.codec.base64.Base64Dialect)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,int,int,io.netty.handler.codec.base64.Base64Dialect)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "io.netty.handler.codec.base64.Base64Dialect"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.base64.Base64].breakLines(io.netty.handler.codec.base64.Base64Dialect)"
    - "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,int,int,boolean,io.netty.handler.codec.base64.Base64Dialect)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:90,1"
      Dst: "[io.netty.handler.codec.base64.Base64].breakLines(io.netty.handler.codec.base64.Base64Dialect)"
    - Src: "io.netty.handler.codec.base64.Base64:90,1"
      Dst: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,int,int,boolean,io.netty.handler.codec.base64.Base64Dialect)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,int,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,int,int,boolean,io.netty.handler.codec.base64.Base64Dialect)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:95,1"
      Dst: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,int,int,boolean,io.netty.handler.codec.base64.Base64Dialect)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf,io.netty.handler.codec.base64.Base64Dialect)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:275,1"
      Dst: "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf,io.netty.handler.codec.base64.Base64Dialect)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf,io.netty.handler.codec.base64.Base64Dialect)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 278
    functionLinenumberEnd: 284
    functionDepth: 6
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.base64.Base64Dialect"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf,int,int,io.netty.handler.codec.base64.Base64Dialect)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 27
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:279,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.base64.Base64:281,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.base64.Base64:281,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.base64.Base64:281,1"
      Dst: "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf,int,int,io.netty.handler.codec.base64.Base64Dialect)"
    - Src: "io.netty.handler.codec.base64.Base64:282,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.base64.Base64:282,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf,int,int,io.netty.handler.codec.base64.Base64Dialect)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 292
    functionLinenumberEnd: 294
    functionDepth: 5
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "io.netty.handler.codec.base64.Base64Dialect"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].alloc()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].alloc()"
    - "[io.netty.buffer.DuplicatedByteBuf].alloc()"
    - "[io.netty.buffer.SwappedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].alloc()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].alloc()"
    - "[io.netty.buffer.WrappedByteBuf].alloc()"
    - "[io.netty.buffer.SlicedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].alloc()"
    - "[io.netty.buffer.PooledByteBuf].alloc()"
    - "[io.netty.buffer.FixedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.EmptyByteBuf].alloc()"
    - "[io.netty.buffer.CompositeByteBuf].alloc()"
    - "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf,int,int,io.netty.handler.codec.base64.Base64Dialect,io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.buffer.ByteBuf].alloc()"
    functionUses: 2
    ICount: 7
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:293,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    - Src: "io.netty.handler.codec.base64.Base64:293,1"
      Dst: "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf,int,int,io.netty.handler.codec.base64.Base64Dialect,io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf,int,int,io.netty.handler.codec.base64.Base64Dialect,io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 297
    functionLinenumberEnd: 303
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "io.netty.handler.codec.base64.Base64Dialect"
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.base64.Base64$Decoder].<init>(io.netty.handler.codec.base64.Base64$1)"
    - "[io.netty.handler.codec.base64.Base64$Decoder].decode(io.netty.buffer.ByteBuf,int,int,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.base64.Base64Dialect)"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:298,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.base64.Base64:302,1"
      Dst: "[io.netty.handler.codec.base64.Base64$Decoder].<init>(io.netty.handler.codec.base64.Base64$1)"
    - Src: "io.netty.handler.codec.base64.Base64:302,1"
      Dst: "[io.netty.handler.codec.base64.Base64$Decoder].decode(io.netty.buffer.ByteBuf,int,int,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.base64.Base64Dialect)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64$Decoder].<init>(io.netty.handler.codec.base64.Base64$1)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64$Decoder"
    linkageType: ""
    functionLinenumber: 309
    functionLinenumberEnd: 311
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.base64.Base64$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.base64.Base64$Decoder].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:310,1"
      Dst: "[io.netty.handler.codec.base64.Base64$Decoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64$Decoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.base64.Base64$Decoder"
    linkageType: ""
    functionLinenumber: 309
    functionLinenumberEnd: 312
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:310,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64$Decoder].decode(io.netty.buffer.ByteBuf,int,int,io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.base64.Base64Dialect)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64$Decoder"
    linkageType: ""
    functionLinenumber: 317
    functionLinenumberEnd: 328
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.base64.Base64Dialect"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.base64.Base64].decodedBufferSize(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.SwappedByteBuf].order()"
    - "[io.netty.buffer.EmptyByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.handler.codec.base64.Base64].access$100(io.netty.handler.codec.base64.Base64Dialect)"
    - "[io.netty.buffer.SlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.DuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ReadOnlyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].slice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].slice(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].slice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].slice(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].order()"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].slice(int,int)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 23
    EdgeCount: 78
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:318,1"
      Dst: "[io.netty.handler.codec.base64.Base64].decodedBufferSize(int)"
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:318,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:318,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:318,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:320,1"
      Dst: "[io.netty.handler.codec.base64.Base64].access$100(io.netty.handler.codec.base64.Base64Dialect)"
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:322,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:323,1"
      Dst: "[io.netty.buffer.ByteBuf].slice(int,int)"
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:325,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:326,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].decodedBufferSize(int)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 308
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].access$100(io.netty.handler.codec.base64.Base64Dialect)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.base64.Base64Dialect"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.base64.Base64].decodabet(io.netty.handler.codec.base64.Base64Dialect)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:38,1"
      Dst: "[io.netty.handler.codec.base64.Base64].decodabet(io.netty.handler.codec.base64.Base64Dialect)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf,int,int,io.netty.handler.codec.base64.Base64Dialect)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:288,1"
      Dst: "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf,int,int,io.netty.handler.codec.base64.Base64Dialect)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64].<init>()"
    functionSourceFile: "io.netty.handler.codec.base64.Base64"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64:426,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].<init>(io.netty.handler.codec.http2.Http2Connection)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].<init>(io.netty.handler.codec.http2.Http2Connection,float,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:59,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].<init>(io.netty.handler.codec.http2.Http2Connection,float,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].<init>(io.netty.handler.codec.http2.Http2Connection,float,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    - "float"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].windowUpdateRatio(float)"
    - "[io.netty.handler.codec.http2.Http2Connection].newKey()"
    - "[io.netty.handler.codec.http2.Http2Connection].connectionStream()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$AutoRefillState].<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.Http2Stream,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.Http2Stream,int)"
    - "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1].<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - "[io.netty.handler.codec.http2.Http2Connection].addListener(io.netty.handler.codec.http2.Http2Connection$Listener)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:83"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:77"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:77,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:78,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:79,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].windowUpdateRatio(float)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:82,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].newKey()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:84,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].connectionStream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:84,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$AutoRefillState].<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.Http2Stream,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:85,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.Http2Stream,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:86,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:89,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1].<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:89,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].addListener(io.netty.handler.codec.http2.Http2Connection$Listener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].frameWriter(io.netty.handler.codec.http2.Http2FrameWriter)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:132,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].channelHandlerContext(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:138,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].initialWindowSize(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 151
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor].<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor].throwIfError()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.handler.codec.http2.Http2Connection].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    functionUses: 2
    ICount: 22
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:143"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:144"
        BranchSideFuncs:
        - "throwIfError()"
        - "forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
        - "<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:143"
        BranchSideFuncs:
        - "throwIfError()"
        - "forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
        - "<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:143"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:144"
        BranchSideFuncs:
        - "throwIfError()"
        - "forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
        - "<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:143"
        BranchSideFuncs:
        - "throwIfError()"
        - "forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
        - "<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:143"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:144"
        BranchSideFuncs:
        - "throwIfError()"
        - "forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
        - "<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:143"
        BranchSideFuncs:
        - "throwIfError()"
        - "forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
        - "<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:143,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:143,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:143,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:147,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor].<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:148,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:149,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor].throwIfError()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor].<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor"
    linkageType: ""
    functionLinenumber: 621
    functionLinenumberEnd: 625
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor:622,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor].throwIfError()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor"
    linkageType: ""
    functionLinenumber: 642
    functionLinenumberEnd: 647
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor:643"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor:646"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor:645"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception$CompositeStreamException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].initialWindowSize()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].windowSize(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].windowSize()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:159,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:159,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].windowSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].initialWindowSize(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].initialWindowSize()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$2].initialWindowSize()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].initialWindowSize()"
    functionUses: 2
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:164,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:164,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].initialWindowSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].incrementWindowSize(io.netty.handler.codec.http2.Http2Stream,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 176
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].incrementInitialStreamWindow(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$2].incrementInitialStreamWindow(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$2].writeWindowUpdateIfNeeded()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].writeWindowUpdateIfNeeded()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].incrementInitialStreamWindow(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].writeWindowUpdateIfNeeded()"
    functionUses: 3
    ICount: 18
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:170"
        BranchSideFuncs:
        - "writeWindowUpdateIfNeeded()"
        - "state(io.netty.handler.codec.http2.Http2Stream)"
        - "incrementInitialStreamWindow(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:169"
        BranchSideFuncs:
        - "writeWindowUpdateIfNeeded()"
        - "state(io.netty.handler.codec.http2.Http2Stream)"
        - "incrementInitialStreamWindow(int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:169"
        BranchSideFuncs:
        - "writeWindowUpdateIfNeeded()"
        - "state(io.netty.handler.codec.http2.Http2Stream)"
        - "incrementInitialStreamWindow(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:168"
        BranchSideFuncs:
        - "<init>()"
        - "executor()"
        - "inEventLoop()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:170"
        BranchSideFuncs:
        - "writeWindowUpdateIfNeeded()"
        - "state(io.netty.handler.codec.http2.Http2Stream)"
        - "incrementInitialStreamWindow(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:169"
        BranchSideFuncs:
        - "writeWindowUpdateIfNeeded()"
        - "state(io.netty.handler.codec.http2.Http2Stream)"
        - "incrementInitialStreamWindow(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:169,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:169,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:169,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:170,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:173,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].incrementInitialStreamWindow(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:174,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].writeWindowUpdateIfNeeded()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].consumeBytes(io.netty.handler.codec.http2.Http2Stream,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 195
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].isClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].consumeAllBytes(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    functionUses: 7
    ICount: 29
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:179"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:180"
        BranchSideFuncs:
        - "checkPositiveOrZero(int,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:179"
        BranchSideFuncs:
        - "checkPositiveOrZero(int,java.lang.String)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:179"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:179"
        BranchSideFuncs:
        - "checkPositiveOrZero(int,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:178"
        BranchSideFuncs:
        - "<init>()"
        - "executor()"
        - "inEventLoop()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:179"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:180"
        BranchSideFuncs:
        - "checkPositiveOrZero(int,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:179"
        BranchSideFuncs:
        - "checkPositiveOrZero(int,java.lang.String)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:187"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:186"
        BranchSideFuncs:
        - "isClosed(io.netty.handler.codec.http2.Http2Stream)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:194"
        BranchSideFuncs:
        - "id()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:193"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:194"
        BranchSideFuncs:
        - "id()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:193"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:192"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:191"
        BranchSideFuncs:
        - "consumeAllBytes(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState,int)"
        - "state(io.netty.handler.codec.http2.Http2Stream)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:179,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:179,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:179,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:180,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:187,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].isClosed(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:188,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:189,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:192,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:192,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].consumeAllBytes(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState,int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].isClosed(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 294
    functionLinenumberEnd: 296
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].state()"
    - "[io.netty.handler.codec.http2.Http2Stream].state()"
    functionUses: 3
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:295"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:294"
        BranchSideFuncs:
        - "state()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:295,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].state()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].unconsumedBytes(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$2].unconsumedBytes()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].unconsumedBytes()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].unconsumedBytes()"
    functionUses: 2
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:203,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:203,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].unconsumedBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].checkValidRatio(float)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].compare(double,double)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(float)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:207"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:208"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:207"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:207"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:210"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:209"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:207,1"
      Dst: "[java.lang.Double].compare(double,double)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:208,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:208,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:208,1"
      Dst: "[java.lang.StringBuilder].append(float)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:208,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:208,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].windowUpdateRatio(float)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].checkValidRatio(float)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:220"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:221"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:220"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:220"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:221"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:220"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:220"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:221"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:220,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:220,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:220,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:221,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].checkValidRatio(float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].windowUpdateRatio()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].windowUpdateRatio(io.netty.handler.codec.http2.Http2Stream,float)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].checkValidRatio(float)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].windowUpdateRatio(float)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].writeWindowUpdateIfNeeded()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:248"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:249"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:248"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:248"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:248"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:247"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:248"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:249"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:248,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:248,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:248,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:249,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].checkValidRatio(float)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:250,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:251,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].windowUpdateRatio(float)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:252,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].writeWindowUpdateIfNeeded()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].windowUpdateRatio(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "float"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].windowUpdateRatio()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:262,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:262,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].windowUpdateRatio()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].receiveFlowControlledFrame(io.netty.handler.codec.http2.Http2Stream,io.netty.buffer.ByteBuf,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 285
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].connectionState()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].receiveFlowControlledFrame(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$2].receiveFlowControlledFrame(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$AutoRefillState].receiveFlowControlledFrame(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].isClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$2].endOfStream(boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].endOfStream(boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].consumeBytes(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$AutoRefillState].consumeBytes(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$2].consumeBytes(int)"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].receiveFlowControlledFrame(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].endOfStream(boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].consumeBytes(int)"
    functionUses: 4
    ICount: 30
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:268"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:269"
        BranchSideFuncs:
        - "isClosed(io.netty.handler.codec.http2.Http2Stream)"
        - "readableBytes()"
        - "connectionState()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:268"
        BranchSideFuncs:
        - "isClosed(io.netty.handler.codec.http2.Http2Stream)"
        - "readableBytes()"
        - "connectionState()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:268"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:268"
        BranchSideFuncs:
        - "isClosed(io.netty.handler.codec.http2.Http2Stream)"
        - "readableBytes()"
        - "connectionState()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:267"
        BranchSideFuncs:
        - "<init>()"
        - "executor()"
        - "inEventLoop()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:268"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:269"
        BranchSideFuncs:
        - "isClosed(io.netty.handler.codec.http2.Http2Stream)"
        - "readableBytes()"
        - "connectionState()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:268"
        BranchSideFuncs:
        - "isClosed(io.netty.handler.codec.http2.Http2Stream)"
        - "readableBytes()"
        - "connectionState()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:275"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:268"
        BranchSideFuncs:
        - "isClosed(io.netty.handler.codec.http2.Http2Stream)"
        - "readableBytes()"
        - "connectionState()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:275"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:268"
        BranchSideFuncs:
        - "isClosed(io.netty.handler.codec.http2.Http2Stream)"
        - "readableBytes()"
        - "connectionState()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:275"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:283"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:268,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:268,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:268,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:269,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:272,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].connectionState()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:273,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].receiveFlowControlledFrame(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:275,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].isClosed(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:277,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].state(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:278,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].endOfStream(boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:282,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].consumeBytes(int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$700(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].isClosed(io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController:44,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].isClosed(io.netty.handler.codec.http2.Http2Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$800(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameWriter"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite].values()"
    functionSourceFile: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite:37,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite:37,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite:37,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].maxCapacity()"
    functionUses: 67
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:68,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].maxCapacity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].capacity(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:73,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    functionUses: 58
    ICount: 5
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:78,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:78,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:78,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 438
    functionLinenumberEnd: 440
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 56
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    functionUses: 38
    ICount: 7
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:83,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:83,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].nioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    functionUses: 20
    ICount: 8
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:88,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:89,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:89,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:89,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].nioBuffers(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionDepth: 1
    returnType: "java.nio.ByteBuffer[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    functionUses: 19
    ICount: 8
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:94,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:95,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:95,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:95,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].copy(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].copy(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].copy(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].copy(int,int)"
    functionUses: 10
    ICount: 8
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:100,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:101,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:101,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:101,1"
      Dst: "[io.netty.buffer.ByteBuf].copy(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].slice(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].slice(int,int)"
    functionUses: 22
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:106,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:107,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:107,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].slice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].retainedSlice(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].newInstance0(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 11
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:112,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:113,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:113,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:113,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].newInstance0(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].duplicate()"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].duplicate0()"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].setIndex(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].setIndex(int,int)"
    functionUses: 23
    ICount: 8
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:118,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].duplicate0()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:118,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:118,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:118,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:118,1"
      Dst: "[io.netty.buffer.ByteBuf].setIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].retainedDuplicate()"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].newInstance(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    functionUses: 8
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:123,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:123,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:123,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:123,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:123,1"
      Dst: "[io.netty.buffer.PooledDuplicatedByteBuf].newInstance(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 136
    ICount: 7
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:128,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:129,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:129,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:129,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._getByte(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getByte(int)"
    functionUses: 16
    ICount: 6
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:134,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:134,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:134,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].getShort(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 20
    ICount: 7
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:139,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:140,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:140,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:140,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._getShort(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getShort(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getShort(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:145,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:145,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:145,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].getShortLE(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 152
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 13
    ICount: 7
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:150,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:151,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:151,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:151,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._getShortLE(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getShortLE(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:156,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:156,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:156,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.SlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 15
    ICount: 7
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:161,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:162,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:162,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:162,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getUnsignedMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getUnsignedMedium(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:167,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:167,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:167,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getUnsignedMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 14
    ICount: 7
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:172,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:173,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:173,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:173,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getUnsignedMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getUnsignedMediumLE(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:178,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:178,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:178,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getUnsignedMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].getInt(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.SlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 25
    ICount: 7
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:183,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:184,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:184,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:184,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._getInt(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getInt(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getInt(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getInt(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:189,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:189,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:189,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].getIntLE(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 196
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 14
    ICount: 7
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:194,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:195,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:195,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:195,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._getIntLE(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 201
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getIntLE(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getIntLE(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:200,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:200,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:200,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].getLong(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 207
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 20
    ICount: 7
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:205,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:206,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:206,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:206,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._getLong(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getLong(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getLong(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getLong(int)"
    functionUses: 7
    ICount: 6
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:211,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:211,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:211,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].getLongLE(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 218
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLongLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 13
    ICount: 7
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:216,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:217,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:217,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:217,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getLongLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._getLongLE(int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getLongLE(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:222,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:222,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:222,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getLongLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 226
    functionLinenumberEnd: 230
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 15
    ICount: 10
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:227,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:228,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:228,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:228,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 233
    functionLinenumberEnd: 237
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    functionUses: 17
    ICount: 10
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:234,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:235,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:235,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:235,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 240
    functionLinenumberEnd: 244
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[java.nio.Buffer].remaining()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionUses: 12
    ICount: 9
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:241,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:241,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:242,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:242,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:242,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].setByte(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 251
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 65
    ICount: 8
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:248,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:249,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:249,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:249,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._setByte(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 254
    functionLinenumberEnd: 257
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setByte(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setByte(int,int)"
    functionUses: 25
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:255,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:255,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:255,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].setShort(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 259
    functionLinenumberEnd: 263
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 18
    ICount: 8
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:260,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:261,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:261,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:261,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._setShort(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 269
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setShort(int,int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:267,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:267,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:267,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 275
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShortLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 9
    ICount: 8
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:272,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:273,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:273,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:273,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setShortLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 278
    functionLinenumberEnd: 281
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledSlicedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setShortLE(int,int)"
    functionUses: 5
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:279,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:279,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:279,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setShortLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 283
    functionLinenumberEnd: 287
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 11
    ICount: 8
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:284,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:285,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:285,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:285,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 293
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setMedium(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setMedium(int,int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:291,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:291,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:291,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 299
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 10
    ICount: 8
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:296,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:297,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:297,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:297,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setMediumLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 302
    functionLinenumberEnd: 305
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setMediumLE(int,int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:303,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:303,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:303,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setMediumLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].setInt(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 307
    functionLinenumberEnd: 311
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 26
    ICount: 8
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:308,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:309,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:309,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:309,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._setInt(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 314
    functionLinenumberEnd: 317
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setInt(int,int)"
    functionUses: 10
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:315,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:315,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:315,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 319
    functionLinenumberEnd: 323
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 12
    ICount: 8
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:320,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:321,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:321,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:321,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setIntLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 326
    functionLinenumberEnd: 329
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setIntLE(int,int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:327,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:327,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:327,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setIntLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].setLong(int,long)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 331
    functionLinenumberEnd: 335
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractByteBuf].setLong(int,long)"
    - "[io.netty.buffer.DuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 14
    ICount: 8
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:332,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:333,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:333,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:333,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._setLong(int,long)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 338
    functionLinenumberEnd: 341
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setLong(int,long)"
    functionUses: 8
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:339,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:339,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:339,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractByteBuf].setLongLE(int,long)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:344,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:345,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:345,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:345,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setLongLE(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf]._setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractByteBuf].setLongLE(int,long)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:351,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:351,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:351,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setLongLE(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 355
    functionLinenumberEnd: 359
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,byte[],int,int)"
    functionUses: 13
    ICount: 10
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:356,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:357,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:357,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:357,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 362
    functionLinenumberEnd: 366
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 20
    ICount: 10
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:363,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:364,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:364,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:364,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 369
    functionLinenumberEnd: 373
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[java.nio.Buffer].remaining()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionUses: 8
    ICount: 9
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:370,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:370,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:371,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:371,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:371,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 377
    functionLinenumberEnd: 381
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionUses: 10
    ICount: 9
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:378,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:379,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:379,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:379,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 385
    functionLinenumberEnd: 388
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionUses: 8
    ICount: 9
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:386,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:387,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:387,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:387,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:393,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:394,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:394,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:394,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 399
    functionLinenumberEnd: 402
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.io.InputStream,int)"
    functionUses: 8
    ICount: 9
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:400,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:401,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:401,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:401,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 406
    functionLinenumberEnd: 409
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionUses: 8
    ICount: 9
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:407,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:408,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:408,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:408,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 413
    functionLinenumberEnd: 416
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionUses: 8
    ICount: 10
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:414,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:415,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:415,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:415,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 419
    functionLinenumberEnd: 426
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.DuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ReadOnlyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 19
    ICount: 15
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledSlicedByteBuf:422"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledSlicedByteBuf:425"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledSlicedByteBuf:424"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:420,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:421,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:421,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:421,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledSlicedByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.PooledSlicedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledSlicedByteBuf:432"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledSlicedByteBuf:435"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledSlicedByteBuf:434"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PooledSlicedByteBuf:430,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex0(int,int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:431,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:431,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledSlicedByteBuf:431,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame:29,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame:35,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].name()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].windowSizeIncrement()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].toString()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 20
    ICount: 14
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame:51,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame:51,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame:51,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame:52,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame:52,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame:52,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame:52,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame:52,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolSubpage].<init>()"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReentrantLock].<init>()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 16
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolSubpage:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.buffer.PoolSubpage:45,1"
      Dst: "[java.util.concurrent.locks.ReentrantLock].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolSubpage].<init>(io.netty.buffer.PoolSubpage,io.netty.buffer.PoolChunk,int,int,int,int)"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.buffer.PoolSubpage"
    - "io.netty.buffer.PoolChunk"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReentrantLock].<init>()"
    - "[java.lang.Object].<init>()"
    - "[io.netty.buffer.PoolSubpage].addToPool(io.netty.buffer.PoolSubpage)"
    functionUses: 1
    ICount: 43
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolSubpage:69"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:81"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:80"
        BranchSideFuncs:
        - "addToPool(io.netty.buffer.PoolSubpage)"
    - Branch String: "io.netty.buffer.PoolSubpage:73"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:77"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:76"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolSubpage:77"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:80"
        BranchSideFuncs:
        - "addToPool(io.netty.buffer.PoolSubpage)"
    Callsites:
    - Src: "io.netty.buffer.PoolSubpage:60,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.buffer.PoolSubpage:45,1"
      Dst: "[java.util.concurrent.locks.ReentrantLock].<init>()"
    - Src: "io.netty.buffer.PoolSubpage:81,1"
      Dst: "[io.netty.buffer.PoolSubpage].addToPool(io.netty.buffer.PoolSubpage)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.PoolSubpage].allocate()"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 109
    functionDepth: 3
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolSubpage].getNextAvail()"
    - "[io.netty.buffer.PoolSubpage].removeFromPool()"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.PoolSubpage].toHandle(int)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 2
    ICount: 49
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolSubpage:88"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:89"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:88"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolSubpage:88"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:91"
        BranchSideFuncs:
        - "getNextAvail()"
    - Branch String: "io.netty.buffer.PoolSubpage:93"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:99"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
      - BranchSide: "io.netty.buffer.PoolSubpage:98"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.buffer.PoolSubpage:101"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:101"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolSubpage:101"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:101"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolSubpage:104"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:108"
        BranchSideFuncs:
        - "removeFromPool()"
      - BranchSide: "io.netty.buffer.PoolSubpage:107"
        BranchSideFuncs:
        - "toHandle(int)"
    Callsites:
    - Src: "io.netty.buffer.PoolSubpage:92,1"
      Dst: "[io.netty.buffer.PoolSubpage].getNextAvail()"
    - Src: "io.netty.buffer.PoolSubpage:94,1"
      Dst: "[io.netty.buffer.PoolSubpage].removeFromPool()"
    - Src: "io.netty.buffer.PoolSubpage:95,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.PoolSubpage:95,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.PoolSubpage:95,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.PoolSubpage:95,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.PoolSubpage:95,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    - Src: "io.netty.buffer.PoolSubpage:101,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.PoolSubpage:108,1"
      Dst: "[io.netty.buffer.PoolSubpage].toHandle(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.PoolSubpage].getNextAvail()"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 180
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolSubpage].findNextAvail()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolSubpage:175"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:179"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:178"
        BranchSideFuncs:
        - "findNextAvail()"
    Callsites:
    - Src: "io.netty.buffer.PoolSubpage:179,1"
      Dst: "[io.netty.buffer.PoolSubpage].findNextAvail()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolSubpage].findNextAvail()"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 192
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolSubpage].findNextAvail0(int,long)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolSubpage:185"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolSubpage:187"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:183"
        BranchSideFuncs:
        - "findNextAvail0(int,long)"
      - BranchSide: "io.netty.buffer.PoolSubpage:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolSubpage:188,1"
      Dst: "[io.netty.buffer.PoolSubpage].findNextAvail0(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolSubpage].findNextAvail0(int,long)"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 210
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolSubpage:198"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolSubpage:199"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolSubpage:201"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:null"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.PoolSubpage].removeFromPool()"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 168
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    functionUses: 3
    ICount: 19
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolSubpage:162"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:163"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:162"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolSubpage:162"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:162"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:161"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.buffer.PoolSubpage:162"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:163"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:162"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolSubpage:162,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.PoolSubpage].toHandle(int)"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 215
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolSubpage].free(io.netty.buffer.PoolSubpage<T>,int)"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 150
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.buffer.PoolSubpage<T>"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.PoolSubpage].setNextAvail(int)"
    - "[io.netty.buffer.PoolSubpage].addToPool(io.netty.buffer.PoolSubpage)"
    - "[io.netty.buffer.PoolSubpage].removeFromPool()"
    functionUses: 1
    ICount: 44
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolSubpage:116"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:119"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:118"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.buffer.PoolSubpage:121"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:122"
        BranchSideFuncs:
        - "setNextAvail(int)"
      - BranchSide: "io.netty.buffer.PoolSubpage:121"
        BranchSideFuncs:
        - "setNextAvail(int)"
    - Branch String: "io.netty.buffer.PoolSubpage:121"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:122"
        BranchSideFuncs:
        - "setNextAvail(int)"
      - BranchSide: "io.netty.buffer.PoolSubpage:121"
        BranchSideFuncs:
        - "setNextAvail(int)"
    - Branch String: "io.netty.buffer.PoolSubpage:126"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:137"
        BranchSideFuncs:
        - "addToPool(io.netty.buffer.PoolSubpage)"
      - BranchSide: "io.netty.buffer.PoolSubpage:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolSubpage:132"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:137"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolSubpage:137"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:141"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:140"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolSubpage:141"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:146"
        BranchSideFuncs:
        - "removeFromPool()"
    Callsites:
    - Src: "io.netty.buffer.PoolSubpage:121,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.PoolSubpage:124,1"
      Dst: "[io.netty.buffer.PoolSubpage].setNextAvail(int)"
    - Src: "io.netty.buffer.PoolSubpage:127,1"
      Dst: "[io.netty.buffer.PoolSubpage].addToPool(io.netty.buffer.PoolSubpage)"
    - Src: "io.netty.buffer.PoolSubpage:148,1"
      Dst: "[io.netty.buffer.PoolSubpage].removeFromPool()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.PoolSubpage].setNextAvail(int)"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolSubpage].addToPool(io.netty.buffer.PoolSubpage<T>)"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 160
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PoolSubpage<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    functionUses: 2
    ICount: 18
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolSubpage:154"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:155"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:154"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolSubpage:154"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:154"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:153"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.buffer.PoolSubpage:154"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:155"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolSubpage:154,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.PoolSubpage].toString()"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: 226
    functionLinenumberEnd: 256
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena].lock()"
    - "[io.netty.buffer.PoolArena].unlock()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 19
    ICount: 65
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolSubpage:227"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:233"
        BranchSideFuncs:
        - "lock()"
    - Branch String: "io.netty.buffer.PoolSubpage:236"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:241"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:240"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolSubpage:251"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:255"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolSubpage:254"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
    Callsites:
    - Src: "io.netty.buffer.PoolSubpage:234,1"
      Dst: "[io.netty.buffer.PoolArena].lock()"
    - Src: "io.netty.buffer.PoolSubpage:247,1"
      Dst: "[io.netty.buffer.PoolArena].unlock()"
    - Src: "io.netty.buffer.PoolSubpage:252,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.PoolSubpage:252,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.PoolSubpage:252,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.PoolSubpage:252,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.PoolSubpage:255,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolSubpage].maxNumElements()"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena].lock()"
    - "[io.netty.buffer.PoolArena].unlock()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolSubpage:261"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:264"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolSubpage:265,1"
      Dst: "[io.netty.buffer.PoolArena].lock()"
    - Src: "io.netty.buffer.PoolSubpage:269,1"
      Dst: "[io.netty.buffer.PoolArena].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolSubpage].numAvailable()"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena].lock()"
    - "[io.netty.buffer.PoolArena].unlock()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolSubpage:275"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:279"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolSubpage:280,1"
      Dst: "[io.netty.buffer.PoolArena].lock()"
    - Src: "io.netty.buffer.PoolSubpage:284,1"
      Dst: "[io.netty.buffer.PoolArena].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolSubpage].elementSize()"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena].lock()"
    - "[io.netty.buffer.PoolArena].unlock()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolSubpage:290"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:294"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolSubpage:295,1"
      Dst: "[io.netty.buffer.PoolArena].lock()"
    - Src: "io.netty.buffer.PoolSubpage:299,1"
      Dst: "[io.netty.buffer.PoolArena].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolSubpage].pageSize()"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolSubpage].destroy()"
    functionSourceFile: "io.netty.buffer.PoolSubpage"
    linkageType: ""
    functionLinenumber: 308
    functionLinenumberEnd: 313
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolChunk].destroy()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolSubpage:309"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolSubpage:312"
        BranchSideFuncs:
        - "destroy()"
      - BranchSide: "io.netty.buffer.PoolSubpage:311"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolSubpage:310,1"
      Dst: "[io.netty.buffer.PoolChunk].destroy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolChunk].destroy()"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 658
    functionLinenumberEnd: 661
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena$DirectArena].destroyChunk(io.netty.buffer.PoolChunk)"
    - "[io.netty.buffer.PoolArena$HeapArena].destroyChunk(io.netty.buffer.PoolChunk)"
    - "[io.netty.buffer.PoolArena].destroyChunk(io.netty.buffer.PoolChunk)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:659,1"
      Dst: "[io.netty.buffer.PoolArena].destroyChunk(io.netty.buffer.PoolChunk)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultAddressedEnvelope].refCnt()"
    functionSourceFile: "io.netty.channel.DefaultAddressedEnvelope"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].refCnt()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].refCnt()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].refCnt()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].refCnt()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].refCnt()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].refCnt()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].refCnt()"
    - "[io.netty.buffer.DefaultByteBufHolder].refCnt()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].refCnt()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.channel.DefaultAddressedEnvelope].refCnt()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].refCnt()"
    - "[io.netty.handler.ssl.PemX509Certificate].refCnt()"
    - "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].refCnt()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].refCnt()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.handler.codec.http.ComposedLastHttpContent:io.netty.handler.codec.http.LastHttpContent$1:io.netty.handler.codec.memcache.LastMemcacheContent$1:io.netty.handler.codec.redis.FullBulkStringRedisMessage$1:io.netty.handler.codec.redis.FullBulkStringRedisMessage$2:io.netty.handler.codec.redis.LastBulkStringRedisContent$1:io.netty.handler.codec.smtp.LastSmtpContent$1:io.netty.handler.codec.stomp.LastStompContentSubframe$1].refCnt()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 3
    ICount: 9
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultAddressedEnvelope:78"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultAddressedEnvelope:81"
        BranchSideFuncs:
        - "refCnt()"
      - BranchSide: "io.netty.channel.DefaultAddressedEnvelope:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultAddressedEnvelope:79,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultAddressedEnvelope].release()"
    functionSourceFile: "io.netty.channel.DefaultAddressedEnvelope"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultAddressedEnvelope:99,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultAddressedEnvelope].release(int)"
    functionSourceFile: "io.netty.channel.DefaultAddressedEnvelope"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultAddressedEnvelope:104,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object,int)"
    functionSourceFile: "io.netty.util.ReferenceCountUtil"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 105
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].release(int)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].release(int)"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].release(int)"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].release(int)"
    - "[io.netty.buffer.DefaultByteBufHolder].release(int)"
    - "[io.netty.channel.DefaultAddressedEnvelope].release(int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].release(int)"
    - "[io.netty.buffer.WrappedByteBuf].release(int)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    - "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].release(int)"
    - "[io.netty.handler.ssl.PemX509Certificate].release(int)"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].release(int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].release(int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].release(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].release(int)"
    - "[io.netty.handler.codec.http.DefaultHttpContent].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release(int)"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].release(int)"
    - "[io.netty.buffer.SwappedByteBuf].release(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release(int)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release(int)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].release(int)"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].release(int)"
    - "[io.netty.util.AbstractReferenceCounted].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.handler.codec.http.ComposedLastHttpContent:io.netty.handler.codec.http.LastHttpContent$1:io.netty.handler.codec.memcache.LastMemcacheContent$1:io.netty.handler.codec.redis.ArrayRedisMessage$1:io.netty.handler.codec.redis.ArrayRedisMessage$2:io.netty.handler.codec.redis.FullBulkStringRedisMessage$1:io.netty.handler.codec.redis.FullBulkStringRedisMessage$2:io.netty.handler.codec.redis.LastBulkStringRedisContent$1:io.netty.handler.codec.smtp.LastSmtpContent$1:io.netty.handler.codec.stomp.LastStompContentSubframe$1].release(int)"
    - "[io.netty.util.ReferenceCounted].release(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.util.ReferenceCountUtil:101"
      Branch Sides:
      - BranchSide: "io.netty.util.ReferenceCountUtil:104"
        BranchSideFuncs:
        - "release(int)"
      - BranchSide: "io.netty.util.ReferenceCountUtil:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.ReferenceCountUtil:100,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.util.ReferenceCountUtil:102,1"
      Dst: "[io.netty.util.ReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultAddressedEnvelope].toString()"
    functionSourceFile: "io.netty.channel.DefaultAddressedEnvelope"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 126
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 20
    ICount: 32
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultAddressedEnvelope:121"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultAddressedEnvelope:125"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultAddressedEnvelope:124"
        BranchSideFuncs:
        - "append(char)"
        - "simpleClassName(java.lang.Object)"
        - "<init>()"
        - "toString()"
    Callsites:
    - Src: "io.netty.channel.DefaultAddressedEnvelope:122,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.DefaultAddressedEnvelope:122,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.channel.DefaultAddressedEnvelope:122,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.DefaultAddressedEnvelope:122,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.channel.DefaultAddressedEnvelope:122,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.channel.DefaultAddressedEnvelope:122,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder].<init>(boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:36,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder].<init>(boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder].acceptInboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageDecoder].acceptInboundMessage(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder].extensionDecoderFilter()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter$2].mustSkip(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter].mustSkip(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    functionUses: 2
    ICount: 23
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:55"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:54"
        BranchSideFuncs:
        - "extensionDecoderFilter()"
        - "mustSkip(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:56"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:60"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:59"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:62"
        BranchSideFuncs:
        - "rsv()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:61"
        BranchSideFuncs:
        - "rsv()"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:62"
        BranchSideFuncs:
        - "rsv()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:61"
        BranchSideFuncs:
        - "rsv()"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:-1"
        BranchSideFuncs:
        - "rsv()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:51,1"
      Dst: "[io.netty.handler.codec.MessageToMessageDecoder].acceptInboundMessage(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:56,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder].extensionDecoderFilter()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:56,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter].mustSkip(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:62,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder].newRsv(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder:67,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder].appendFrameTail(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.CharSequenceMap].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.CharSequenceMap"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.CharSequenceMap].<init>(boolean)"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.CharSequenceMap:32,1"
      Dst: "[io.netty.handler.codec.http2.CharSequenceMap].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.CharSequenceMap].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.CharSequenceMap"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.CharSequenceMap].<init>(boolean,io.netty.handler.codec.ValueConverter)"
    - "[io.netty.handler.codec.UnsupportedValueConverter].instance()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.CharSequenceMap:36,1"
      Dst: "[io.netty.handler.codec.UnsupportedValueConverter].instance()"
    - Src: "io.netty.handler.codec.http2.CharSequenceMap:36,1"
      Dst: "[io.netty.handler.codec.http2.CharSequenceMap].<init>(boolean,io.netty.handler.codec.ValueConverter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.CharSequenceMap].<init>(boolean,io.netty.handler.codec.ValueConverter)"
    functionSourceFile: "io.netty.handler.codec.http2.CharSequenceMap"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.handler.codec.ValueConverter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.CharSequenceMap:40"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.CharSequenceMap:40"
        BranchSideFuncs:
        - "<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter)"
      - BranchSide: "io.netty.handler.codec.http2.CharSequenceMap:39"
        BranchSideFuncs:
        - "<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.CharSequenceMap:40,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.NoopDnsQueryLifecycleObserver].<init>()"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsQueryLifecycleObserver"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.NoopDnsQueryLifecycleObserver:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsQueryLifecycleObserver].queryWritten(java.net.InetSocketAddress,io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsQueryLifecycleObserver"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.InetSocketAddress"
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsQueryLifecycleObserver].queryCancelled(int)"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsQueryLifecycleObserver"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsQueryLifecycleObserver].queryRedirected(java.util.List<InetSocketAddress>)"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsQueryLifecycleObserver"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsQueryLifecycleObserver"
    argCount: 1
    argTypes:
    - "java.util.List<InetSocketAddress>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsQueryLifecycleObserver].queryCNAMEd(io.netty.handler.codec.dns.DnsQuestion)"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsQueryLifecycleObserver"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsQueryLifecycleObserver"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsQuestion"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsQueryLifecycleObserver].queryNoAnswer(io.netty.handler.codec.dns.DnsResponseCode)"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsQueryLifecycleObserver"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsQueryLifecycleObserver"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsResponseCode"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsQueryLifecycleObserver].queryFailed(java.lang.Throwable)"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsQueryLifecycleObserver"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsQueryLifecycleObserver].querySucceed()"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsQueryLifecycleObserver"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine].<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
    functionSourceFile: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 138
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JettyAlpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JettyAlpnSslEngine$1)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$1].newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$2].newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    - "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine$1].<init>(io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector)"
    - "[org.eclipse.jetty.alpn.ALPN].put(javax.net.ssl.SSLEngine,org.eclipse.jetty.alpn.ALPN$Provider)"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.ApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory].newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    functionUses: 1
    ICount: 17
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine:117,1"
      Dst: "[io.netty.handler.ssl.JettyAlpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JettyAlpnSslEngine$1)"
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine:118,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine:119,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator].protocolSelectorFactory()"
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine:120,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolNegotiator].protocols()"
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine:120,1"
      Dst: "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine:120,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory].newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine:122,1"
      Dst: "[io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine$1].<init>(io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector)"
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine:122,1"
      Dst: "[org.eclipse.jetty.alpn.ALPN].put(javax.net.ssl.SSLEngine,org.eclipse.jetty.alpn.ALPN$Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine].closeInbound()"
    functionSourceFile: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 147
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - "[org.eclipse.jetty.alpn.ALPN].remove(javax.net.ssl.SSLEngine)"
    - "[io.netty.handler.ssl.JdkSslEngine].closeInbound()"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine:142,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine:142,1"
      Dst: "[org.eclipse.jetty.alpn.ALPN].remove(javax.net.ssl.SSLEngine)"
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine:144,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].closeInbound()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].closeInbound()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].closeInbound()"
    - "[io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine].closeInbound()"
    - "[io.netty.handler.ssl.JdkSslEngine].closeInbound()"
    - "[io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine].closeInbound()"
    - "[io.netty.handler.ssl.JettyNpnSslEngine].closeInbound()"
    - "[javax.net.ssl.SSLEngine].closeInbound()"
    functionUses: 7
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:57,1"
      Dst: "[javax.net.ssl.SSLEngine].closeInbound()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine].closeOutbound()"
    functionSourceFile: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 156
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - "[org.eclipse.jetty.alpn.ALPN].remove(javax.net.ssl.SSLEngine)"
    - "[io.netty.handler.ssl.JdkSslEngine].closeOutbound()"
    functionUses: 4
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine:151,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine:151,1"
      Dst: "[org.eclipse.jetty.alpn.ALPN].remove(javax.net.ssl.SSLEngine)"
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine:153,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].closeOutbound()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].closeOutbound()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine].closeOutbound()"
    - "[io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine].closeOutbound()"
    - "[io.netty.handler.ssl.JettyNpnSslEngine].closeOutbound()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].closeOutbound()"
    - "[io.netty.handler.ssl.JdkSslEngine].closeOutbound()"
    - "[javax.net.ssl.SSLEngine].closeOutbound()"
    functionUses: 9
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:62,1"
      Dst: "[javax.net.ssl.SSLEngine].closeOutbound()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders$2"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 284
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 227
    ICount: 4
    EdgeCount: 56
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$2:283,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders$2"
    linkageType: ""
    functionLinenumber: 287
    functionLinenumberEnd: 289
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[java.util.Iterator].next()"
    - "[java.lang.CharSequence].toString()"
    functionUses: 229
    ICount: 6
    EdgeCount: 62
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$2:288,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$2:288,1"
      Dst: "[java.lang.CharSequence].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders$2].remove()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders$2"
    linkageType: ""
    functionLinenumber: 292
    functionLinenumberEnd: 295
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.CombinedIterator].remove()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].remove()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].remove()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].remove()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].remove()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].remove()"
    - "[io.netty.channel.nio.NioEventLoop$7].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].remove()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].remove()"
    - "[io.netty.util.internal.ReadOnlyIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].remove()"
    - "[java.util.Iterator].remove()"
    functionUses: 21
    ICount: 4
    EdgeCount: 52
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$2:293,1"
      Dst: "[java.util.Iterator].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$1].<init>(io.netty.resolver.dns.DnsResolveContext,int,io.netty.util.concurrent.Promise,java.lang.String[],boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$1"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 224
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.resolver.dns.DnsResolveContext"
    - "int"
    - "io.netty.util.concurrent.Promise"
    - "java.lang.String[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:222,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$1"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 248
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.util.concurrent.FailedFuture].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.util.concurrent.SucceededFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].getNow()"
    - "[io.netty.channel.VoidChannelPromise].getNow()"
    - "[io.netty.util.concurrent.SucceededFuture].getNow()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].getNow()"
    - "[io.netty.util.concurrent.FailedFuture].getNow()"
    - "[io.netty.channel.CompleteChannelFuture].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].trySuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].trySuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].trySuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].trySuccess(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - "[io.netty.resolver.dns.DnsNameResolver].isTransportOrTimeoutError(java.lang.Throwable)"
    - "[io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException].<init>(java.lang.Throwable,java.lang.String,java.lang.String[])"
    - "[io.netty.resolver.dns.DnsResolveContext].access$000(io.netty.resolver.dns.DnsResolveContext)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].tryFailure(java.lang.Throwable)"
    - "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].newPromise()"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.resolver.dns.DnsResolveContext].doSearchDomainQuery(java.lang.String,io.netty.util.concurrent.Promise)"
    - "[io.netty.resolver.dns.DnsAddressResolveContext].doSearchDomainQuery(java.lang.String,io.netty.util.concurrent.Promise)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.resolver.dns.DnsResolveContext].access$100(io.netty.resolver.dns.DnsResolveContext,java.lang.String,io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.concurrent.Future].getNow()"
    - "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 67
    EdgeCount: 180
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$1:227"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$1:235"
        BranchSideFuncs:
        - "trySuccess(java.lang.Object)"
        - "getNow()"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$1:234"
        BranchSideFuncs:
        - "isTransportOrTimeoutError(java.lang.Throwable)"
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$1:229"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$1:234"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$1:233"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$1:230"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$1:234"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "safeRelease(java.lang.Object)"
        - "iterator()"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$1:233"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$1:235"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$1:237"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$1:236"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$1:237"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$1:237"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "doSearchDomainQuery(java.lang.String,io.netty.util.concurrent.Promise)"
        - "append(char)"
        - "newPromise()"
        - "<init>()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "executor()"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$1:236"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$1:237"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$1:244"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "doSearchDomainQuery(java.lang.String,io.netty.util.concurrent.Promise)"
        - "append(char)"
        - "newPromise()"
        - "<init>()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "executor()"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$1:243"
        BranchSideFuncs:
        - "access$000(io.netty.resolver.dns.DnsResolveContext)"
        - "<init>(java.lang.Throwable,java.lang.String,java.lang.String[])"
        - "tryFailure(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:226,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:228,1"
      Dst: "[io.netty.util.concurrent.Future].getNow()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:229,1"
      Dst: "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:230,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:230,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:230,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:231,1"
      Dst: "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:235,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].isTransportOrTimeoutError(java.lang.Throwable)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:236,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext].access$000(io.netty.resolver.dns.DnsResolveContext)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:236,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException].<init>(java.lang.Throwable,java.lang.String,java.lang.String[])"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:236,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:238,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].executor()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:238,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:239,1"
      Dst: "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:240,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:240,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:240,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:240,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:240,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext].doSearchDomainQuery(java.lang.String,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$1:242,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext].access$100(io.netty.resolver.dns.DnsResolveContext,java.lang.String,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 7
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException].<init>(java.lang.Throwable,java.lang.String,java.lang.String[])"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException"
    linkageType: ""
    functionLinenumber: 265
    functionLinenumberEnd: 272
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Throwable"
    - "java.lang.String"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.UnknownHostException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Arrays].toString(java.lang.Object[])"
    - "[java.lang.Throwable].getStackTrace()"
    - "[java.lang.Throwable].setStackTrace(java.lang.StackTraceElement[])"
    - "[java.io.UncheckedIOException].getCause()"
    - "[java.lang.Throwable].getCause()"
    - "[java.lang.ClassNotFoundException].getCause()"
    - "[java.lang.reflect.UndeclaredThrowableException].getCause()"
    - "[java.security.PrivilegedActionException].getCause()"
    - "[java.lang.ExceptionInInitializerError].getCause()"
    - "[javax.naming.NamingException].getCause()"
    - "[java.lang.reflect.InvocationTargetException].getCause()"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 2
    ICount: 18
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException:266,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException:266,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException:267,1"
      Dst: "[java.util.Arrays].toString(java.lang.Object[])"
    - Src: "io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException:267,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException:266,1"
      Dst: "[java.net.UnknownHostException].<init>(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException:268,1"
      Dst: "[java.lang.Throwable].getStackTrace()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException:268,1"
      Dst: "[java.lang.Throwable].setStackTrace(java.lang.StackTraceElement[])"
    - Src: "io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException:270,1"
      Dst: "[java.lang.Throwable].getCause()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException:270,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlDocumentStart].<init>(java.lang.String,java.lang.String,boolean,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlDocumentStart"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlDocumentStart:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlDocumentStart].encoding()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlDocumentStart"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlDocumentStart].version()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlDocumentStart"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlDocumentStart].standalone()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlDocumentStart"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlDocumentStart].encodingScheme()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlDocumentStart"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlDocumentStart].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlDocumentStart"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 9
    ICount: 45
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.xml.XmlDocumentStart:57"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:60"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:59"
        BranchSideFuncs:
        - "getClass()"
    - Branch String: "io.netty.handler.codec.xml.XmlDocumentStart:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:61"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:60"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlDocumentStart:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:64"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:63"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlDocumentStart:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:69"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:68"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlDocumentStart:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:69"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:68"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlDocumentStart:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:71"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlDocumentStart:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:71"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlDocumentStart:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:71"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlDocumentStart:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:75"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:74"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.xml.XmlDocumentStart:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:75"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:74"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.xml.XmlDocumentStart:75"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:75"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:74"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.xml.XmlDocumentStart:75"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:79"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:78"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlDocumentStart:75"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:79"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlDocumentStart:60,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.codec.xml.XmlDocumentStart:69,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 23
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.xml.XmlDocumentStart].hashCode()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlDocumentStart"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 5
    ICount: 31
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.xml.XmlDocumentStart:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:84"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:83"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlDocumentStart:85"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:85"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:84"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlDocumentStart:86"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:85"
        BranchSideFuncs:
        - "hashCode()"
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:84"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlDocumentStart:87"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:86"
        BranchSideFuncs:
        - "hashCode()"
      - BranchSide: "io.netty.handler.codec.xml.XmlDocumentStart:85"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlDocumentStart:84,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.xml.XmlDocumentStart].toString()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlDocumentStart"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(boolean)"
    functionUses: 19
    ICount: 21
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlDocumentStart:93,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.xml.XmlDocumentStart:93,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlDocumentStart:93,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.xml.XmlDocumentStart:93,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "io.netty.handler.codec.xml.XmlDocumentStart:93,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise$4].<init>(io.netty.util.concurrent.DefaultPromise,io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener,long,long)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise$4"
    linkageType: ""
    functionLinenumber: 746
    functionLinenumberEnd: 748
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.util.concurrent.DefaultPromise"
    - "io.netty.util.concurrent.ProgressiveFuture"
    - "io.netty.util.concurrent.GenericProgressiveFutureListener"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise$4:747,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise$4].run()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise$4"
    linkageType: ""
    functionLinenumber: 749
    functionLinenumberEnd: 752
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].access$500(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener,long,long)"
    functionUses: 49
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise$4:750,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].access$500(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener,long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].access$500(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener,long,long)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.util.concurrent.ProgressiveFuture"
    - "io.netty.util.concurrent.GenericProgressiveFutureListener"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].notifyProgressiveListener0(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener,long,long)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:35,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].notifyProgressiveListener0(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener,long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].notifyProgressiveListener0(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener,long,long)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 815
    functionLinenumberEnd: 823
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.util.concurrent.ProgressiveFuture"
    - "io.netty.util.concurrent.GenericProgressiveFutureListener"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.JdkLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isWarnEnabled()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.concurrent.GenericProgressiveFutureListener].operationProgressed(io.netty.util.concurrent.ProgressiveFuture,long,long)"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[java.lang.Object].getClass()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 3
    ICount: 21
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:818"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:822"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "<init>()"
        - "getName()"
        - "append(java.lang.String)"
        - "toString()"
        - "isWarnEnabled()"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:821"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:816,1"
      Dst: "[io.netty.util.concurrent.GenericProgressiveFutureListener].operationProgressed(io.netty.util.concurrent.ProgressiveFuture,long,long)"
    - Src: "io.netty.util.concurrent.DefaultPromise:818,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.util.concurrent.DefaultPromise:819,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.concurrent.DefaultPromise:819,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultPromise:819,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.util.concurrent.DefaultPromise:819,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.util.concurrent.DefaultPromise:819,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.concurrent.DefaultPromise:819,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.local.LocalServerChannel$1].<init>(io.netty.channel.local.LocalServerChannel,io.netty.channel.Channel,io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.local.LocalServerChannel$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.local.LocalServerChannel"
    - "io.netty.channel.Channel"
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel,io.netty.channel.RecvByteBufAllocator)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalServerChannel$1:40,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel,io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.CommonsLoggerFactory].<init>()"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLoggerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.InternalLoggerFactory].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLoggerFactory:38,1"
      Dst: "[io.netty.util.internal.logging.InternalLoggerFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.CommonsLoggerFactory].newInstance(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLoggerFactory"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 2
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.CommonsLogger].<init>(org.apache.commons.logging.Log,java.lang.String)"
    - "[org.apache.commons.logging.LogFactory].getLog(java.lang.String)"
    functionUses: 5
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLoggerFactory:43,1"
      Dst: "[org.apache.commons.logging.LogFactory].getLog(java.lang.String)"
    - Src: "io.netty.util.internal.logging.CommonsLoggerFactory:43,1"
      Dst: "[io.netty.util.internal.logging.CommonsLogger].<init>(org.apache.commons.logging.Log,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].<init>(org.apache.commons.logging.Log,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 63
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "org.apache.commons.logging.Log"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.AbstractInternalLogger].<init>(java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:60,1"
      Dst: "[io.netty.util.internal.logging.AbstractInternalLogger].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.logging.CommonsLogger:61,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi].init(io.netty.handler.ssl.util.SimpleKeyManagerFactory)"
    functionSourceFile: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.util.SimpleKeyManagerFactory"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi].engineInit(java.security.KeyStore,char[])"
    functionSourceFile: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.KeyStore"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SimpleKeyManagerFactory].engineInit(java.security.KeyStore,char[])"
    - "[java.security.KeyStoreException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:111,1"
      Dst: "[io.netty.handler.ssl.util.SimpleKeyManagerFactory].engineInit(java.security.KeyStore,char[])"
    - Src: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:115,1"
      Dst: "[java.security.KeyStoreException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.security.KeyStoreException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi].engineInit(javax.net.ssl.ManagerFactoryParameters)"
    functionSourceFile: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.ManagerFactoryParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SimpleKeyManagerFactory].engineInit(javax.net.ssl.ManagerFactoryParameters)"
    - "[java.security.InvalidAlgorithmParameterException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:123,1"
      Dst: "[io.netty.handler.ssl.util.SimpleKeyManagerFactory].engineInit(javax.net.ssl.ManagerFactoryParameters)"
    - Src: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:127,1"
      Dst: "[java.security.InvalidAlgorithmParameterException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.security.InvalidAlgorithmParameterException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi].engineGetKeyManagers()"
    functionSourceFile: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "javax.net.ssl.KeyManager[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SimpleKeyManagerFactory].engineGetKeyManagers()"
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi].wrapIfNeeded(javax.net.ssl.KeyManager[])"
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:141"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:140"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:139"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:138"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:135,1"
      Dst: "[io.netty.handler.ssl.util.SimpleKeyManagerFactory].engineGetKeyManagers()"
    - Src: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:136,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:137,1"
      Dst: "[io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi].wrapIfNeeded(javax.net.ssl.KeyManager[])"
    - Src: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:141,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi].wrapIfNeeded(javax.net.ssl.KeyManager[])"
    functionSourceFile: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.KeyManager[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.X509KeyManagerWrapper].<init>(javax.net.ssl.X509KeyManager)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:146"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:152"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:151"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:146"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:145"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:146"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$SimpleKeyManagerFactorySpi:149,1"
      Dst: "[io.netty.handler.ssl.util.X509KeyManagerWrapper].<init>(javax.net.ssl.X509KeyManager)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].<init>()"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer()"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer()"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer()"
    functionUses: 23
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:33,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    functionUses: 78
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:38,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int,int)"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int,int)"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:43,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer()"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer()"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer()"
    functionUses: 2
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:48,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int,int)"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:58,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer()"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer()"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer()"
    functionUses: 8
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:63,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    functionUses: 24
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:68,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int,int)"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int,int)"
    functionUses: 11
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:73,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer()"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer()"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer()"
    functionUses: 5
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:78,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    functionUses: 24
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:83,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int,int)"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int,int)"
    functionUses: 9
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:88,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeBuffer()"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeDirectBuffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].compositeDirectBuffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].compositeDirectBuffer()"
    - "[io.netty.buffer.ByteBufAllocator].compositeDirectBuffer()"
    functionUses: 2
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:93,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].compositeDirectBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeBuffer(int)"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].compositeDirectBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeDirectBuffer(int)"
    - "[io.netty.buffer.UnpooledByteBufAllocator].compositeDirectBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].compositeDirectBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].compositeDirectBuffer(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:98,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].compositeDirectBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeHeapBuffer()"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PreferHeapByteBufAllocator].compositeHeapBuffer()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeHeapBuffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].compositeHeapBuffer()"
    - "[io.netty.buffer.ByteBufAllocator].compositeHeapBuffer()"
    functionUses: 3
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:103,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].compositeHeapBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeHeapBuffer(int)"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledByteBufAllocator].compositeHeapBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].compositeHeapBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeHeapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].compositeHeapBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].compositeHeapBuffer(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:108,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].compositeHeapBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeDirectBuffer()"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeDirectBuffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].compositeDirectBuffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].compositeDirectBuffer()"
    - "[io.netty.buffer.ByteBufAllocator].compositeDirectBuffer()"
    functionUses: 3
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:113,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].compositeDirectBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeDirectBuffer(int)"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].compositeDirectBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeDirectBuffer(int)"
    - "[io.netty.buffer.UnpooledByteBufAllocator].compositeDirectBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].compositeDirectBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].compositeDirectBuffer(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:118,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].compositeDirectBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].isDirectBufferPooled()"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.buffer.PooledByteBufAllocator:io.netty.buffer.UnpooledByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.buffer.ByteBufAllocator].isDirectBufferPooled()"
    functionUses: 9
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:123,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].isDirectBufferPooled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].calculateNewCapacity(int,int)"
    functionSourceFile: "io.netty.channel.unix.PreferredDirectByteBufAllocator"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PreferHeapByteBufAllocator].calculateNewCapacity(int,int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].calculateNewCapacity(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].calculateNewCapacity(int,int)"
    - "[io.netty.buffer.ByteBufAllocator].calculateNewCapacity(int,int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PreferredDirectByteBufAllocator:128,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].calculateNewCapacity(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.UDPPacket].<init>()"
    functionSourceFile: "io.netty.handler.pcap.UDPPacket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.UDPPacket:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe].<init>(io.netty.channel.epoll.AbstractEpollServerChannel)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.AbstractEpollServerChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:77,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:86,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:86,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe].epollInReady()"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 136
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].config()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].clearEpollIn0()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].edgeTriggered(boolean)"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isFlagSet(int)"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInBefore()"
    - "[io.netty.channel.unix.Socket].accept(byte[])"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].newChildChannel(int,byte[],int,int)"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].newChildChannel(int,byte[],int,int)"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInFinally(io.netty.channel.ChannelConfig)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].config()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].newChildChannel(int,byte[],int,int)"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 3
    ICount: 62
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:91"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:92"
        BranchSideFuncs:
        - "config()"
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:91"
        BranchSideFuncs:
        - "config()"
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
    - Branch String: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:91"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:92"
        BranchSideFuncs:
        - "config()"
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:91"
        BranchSideFuncs:
        - "config()"
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
    - Branch String: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:93"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:97"
        BranchSideFuncs:
        - "clearEpollIn0()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:96"
        BranchSideFuncs:
        - "edgeTriggered(boolean)"
        - "reset(io.netty.channel.ChannelConfig)"
        - "attemptedBytesRead(int)"
        - "recvBufAllocHandle()"
        - "pipeline()"
        - "epollInBefore()"
        - "isFlagSet(int)"
    - Branch String: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:113"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:117"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "edgeTriggered(boolean)"
        - "continueReading()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "config()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "attemptedBytesRead(int)"
        - "recvBufAllocHandle()"
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
        - "pipeline()"
        - "fireChannelRead(java.lang.Object)"
        - "fireChannelReadComplete()"
        - "newChildChannel(int,byte[],int,int)"
        - "clearEpollIn0()"
        - "<init>()"
        - "incMessagesRead(int)"
        - "eventLoop()"
        - "epollInBefore()"
        - "isFlagSet(int)"
        - "readComplete()"
        - "accept(byte[])"
        - "lastBytesRead()"
        - "epollInFinally(io.netty.channel.ChannelConfig)"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:116"
        BranchSideFuncs:
        - "continueReading()"
        - "fireChannelRead(java.lang.Object)"
        - "newChildChannel(int,byte[],int,int)"
        - "incMessagesRead(int)"
        - "lastBytesRead()"
    - Branch String: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:122"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:112"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "edgeTriggered(boolean)"
        - "continueReading()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "config()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "attemptedBytesRead(int)"
        - "recvBufAllocHandle()"
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
        - "pipeline()"
        - "fireChannelRead(java.lang.Object)"
        - "fireChannelReadComplete()"
        - "newChildChannel(int,byte[],int,int)"
        - "clearEpollIn0()"
        - "<init>()"
        - "incMessagesRead(int)"
        - "eventLoop()"
        - "epollInBefore()"
        - "isFlagSet(int)"
        - "readComplete()"
        - "accept(byte[])"
        - "lastBytesRead()"
        - "epollInFinally(io.netty.channel.ChannelConfig)"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:111"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "accept(byte[])"
    - Branch String: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:129"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:133"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:132"
        BranchSideFuncs:
        - "epollInFinally(io.netty.channel.ChannelConfig)"
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:91,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:91,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:91,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:92,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].config()"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:93,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:94,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].clearEpollIn0()"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:97,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].recvBufAllocHandle()"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:98,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].isFlagSet(int)"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:98,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].edgeTriggered(boolean)"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:100,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:101,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:102,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:103,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInBefore()"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:112,1"
      Dst: "[io.netty.channel.unix.Socket].accept(byte[])"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:112,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:113,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:117,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:120,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollServerChannel].newChildChannel(int,byte[],int,int)"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:120,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:122,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading()"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:126,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:127,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:130,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe:133,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInFinally(io.netty.channel.ChannelConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].edgeTriggered(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    functionSourceFile: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].reset(io.netty.channel.ChannelConfig)"
    functionUses: 15
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle:150,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].reset(io.netty.channel.ChannelConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    functionSourceFile: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle"
    linkageType: ""
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].attemptedBytesRead(int)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].attemptedBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].attemptedBytesRead(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle:180,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].attemptedBytesRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].accept(byte[])"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 398
    functionLinenumberEnd: 408
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].accept(int,byte[])"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    functionUses: 2
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:400"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:403"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:402"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Socket:403"
      Branch Sides: []
    - Branch String: "io.netty.channel.unix.Socket:403"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:406"
        BranchSideFuncs:
        - "newIOException(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:399,1"
      Dst: "[io.netty.channel.unix.Socket].accept(int,byte[])"
    - Src: "io.netty.channel.unix.Socket:407,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Socket].accept(int,byte[])"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    functionSourceFile: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].lastBytesRead(int)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].lastBytesRead(int)"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead(int)"
    functionUses: 22
    ICount: 5
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle:160,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading()"
    functionSourceFile: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    functionUses: 13
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:86,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    functionSourceFile: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.util.UncheckedBooleanSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].delegate()"
    - "[io.netty.channel.RecvByteBufAllocator$ExtendedHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    functionUses: 6
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:80,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].delegate()"
    - Src: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:80,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$ExtendedHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].<init>()"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertInt(int)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:40,1"
      Dst: "[java.lang.String].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertLong(long)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(long)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:45,1"
      Dst: "[java.lang.String].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertDouble(double)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:50,1"
      Dst: "[java.lang.String].valueOf(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertChar(char)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(char)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:55,1"
      Dst: "[java.lang.String].valueOf(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertBoolean(boolean)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:60,1"
      Dst: "[java.lang.String].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertFloat(float)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(float)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:65,1"
      Dst: "[java.lang.String].valueOf(float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToBoolean(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:70,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertByte(byte)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:75,1"
      Dst: "[java.lang.String].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToByte(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "byte"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[io.netty.util.AsciiString].byteAt(int)"
    - "[java.lang.CharSequence].toString()"
    - "[java.lang.Byte].parseByte(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.CharSequenceValueConverter:80"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:83"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:82"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.CharSequenceValueConverter:80"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:83"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:80,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:81,1"
      Dst: "[io.netty.util.AsciiString].byteAt(int)"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:83,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:83,1"
      Dst: "[java.lang.Byte].parseByte(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToChar(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:88,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertShort(short)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:93,1"
      Dst: "[java.lang.String].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToShort(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 102
    functionDepth: 8
    returnType: "short"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].parseShort()"
    - "[java.lang.Short].parseShort(java.lang.String)"
    - "[io.netty.util.AsciiString].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.lang.String:java.lang.StringBuilder:java.nio.CharBuffer].toString()"
    - "[java.lang.CharSequence].toString()"
    functionUses: 2
    ICount: 10
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.CharSequenceValueConverter:98"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:101"
        BranchSideFuncs:
        - "parseShort()"
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:100"
        BranchSideFuncs:
        - "parseShort(java.lang.String)"
        - "toString()"
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:99,1"
      Dst: "[io.netty.util.AsciiString].parseShort()"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:101,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:101,1"
      Dst: "[java.lang.Short].parseShort(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].parseShort()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1209
    functionLinenumberEnd: 1211
    functionDepth: 7
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].parseShort(int,int,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1210,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:1210,1"
      Dst: "[io.netty.util.AsciiString].parseShort(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].parseShort(int,int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1221
    functionLinenumberEnd: 1228
    functionDepth: 6
    returnType: "short"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].parseInt(int,int,int)"
    - "[java.lang.NumberFormatException].<init>(java.lang.String)"
    - "[io.netty.util.AsciiString].subSequence(int,int,boolean)"
    - "[io.netty.util.AsciiString].toString()"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1224"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1227"
        BranchSideFuncs:
        - "toString()"
        - "subSequence(int,int,boolean)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.AsciiString:1226"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1222,1"
      Dst: "[io.netty.util.AsciiString].parseInt(int,int,int)"
    - Src: "io.netty.util.AsciiString:1225,1"
      Dst: "[io.netty.util.AsciiString].subSequence(int,int,boolean)"
    - Src: "io.netty.util.AsciiString:1225,1"
      Dst: "[io.netty.util.AsciiString].toString()"
    - Src: "io.netty.util.AsciiString:1225,1"
      Dst: "[java.lang.NumberFormatException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToInt(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 110
    functionDepth: 7
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].parseInt()"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[io.netty.util.AsciiString].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.lang.String:java.lang.StringBuilder:java.nio.CharBuffer].toString()"
    - "[java.lang.CharSequence].toString()"
    functionUses: 3
    ICount: 10
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.CharSequenceValueConverter:106"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:109"
        BranchSideFuncs:
        - "parseInt()"
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:108"
        BranchSideFuncs:
        - "parseInt(java.lang.String)"
        - "toString()"
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:107,1"
      Dst: "[io.netty.util.AsciiString].parseInt()"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:109,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:109,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToLong(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 118
    functionDepth: 7
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].parseLong()"
    - "[java.lang.Long].parseLong(java.lang.String)"
    - "[io.netty.util.AsciiString].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.lang.String:java.lang.StringBuilder:java.nio.CharBuffer].toString()"
    - "[java.lang.CharSequence].toString()"
    functionUses: 1
    ICount: 10
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.CharSequenceValueConverter:114"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:117"
        BranchSideFuncs:
        - "parseLong()"
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:116"
        BranchSideFuncs:
        - "toString()"
        - "parseLong(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:115,1"
      Dst: "[io.netty.util.AsciiString].parseLong()"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:117,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:117,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].parseLong()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1287
    functionLinenumberEnd: 1289
    functionDepth: 6
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].parseLong(int,int,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1288,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:1288,1"
      Dst: "[io.netty.util.AsciiString].parseLong(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].parseLong(int,int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1299
    functionLinenumberEnd: 1315
    functionDepth: 5
    returnType: "long"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NumberFormatException].<init>()"
    - "[io.netty.util.AsciiString].byteAt(int)"
    - "[java.lang.NumberFormatException].<init>(java.lang.String)"
    - "[io.netty.util.AsciiString].subSequence(int,int,boolean)"
    - "[io.netty.util.AsciiString].toString()"
    - "[io.netty.util.AsciiString].parseLong(int,int,int,boolean)"
    functionUses: 1
    ICount: 33
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1300"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1301"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1300"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1300"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1304"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1303"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1304"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1308"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.util.AsciiString:1307"
        BranchSideFuncs:
        - "byteAt(int)"
    - Branch String: "io.netty.util.AsciiString:1309"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:-1"
        BranchSideFuncs:
        - "byteAt(int)"
      - BranchSide: "io.netty.util.AsciiString:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1310"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1314"
        BranchSideFuncs:
        - "toString()"
        - "subSequence(int,int,boolean)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.AsciiString:1313"
        BranchSideFuncs:
        - "parseLong(int,int,int,boolean)"
    - Branch String: "io.netty.util.AsciiString:1310"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1314"
        BranchSideFuncs:
        - "toString()"
        - "subSequence(int,int,boolean)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.AsciiString:1313"
        BranchSideFuncs:
        - "parseLong(int,int,int,boolean)"
    Callsites:
    - Src: "io.netty.util.AsciiString:1301,1"
      Dst: "[java.lang.NumberFormatException].<init>()"
    - Src: "io.netty.util.AsciiString:1309,1"
      Dst: "[io.netty.util.AsciiString].byteAt(int)"
    - Src: "io.netty.util.AsciiString:1311,1"
      Dst: "[io.netty.util.AsciiString].subSequence(int,int,boolean)"
    - Src: "io.netty.util.AsciiString:1311,1"
      Dst: "[io.netty.util.AsciiString].toString()"
    - Src: "io.netty.util.AsciiString:1311,1"
      Dst: "[java.lang.NumberFormatException].<init>(java.lang.String)"
    - Src: "io.netty.util.AsciiString:1314,1"
      Dst: "[io.netty.util.AsciiString].parseLong(int,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.AsciiString].parseLong(int,int,int,boolean)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1317
    functionLinenumberEnd: 1342
    functionDepth: 4
    returnType: "long"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Character].digit(char,int)"
    - "[java.lang.NumberFormatException].<init>(java.lang.String)"
    - "[io.netty.util.AsciiString].subSequence(int,int,boolean)"
    - "[io.netty.util.AsciiString].toString()"
    functionUses: 1
    ICount: 60
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1321"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1335"
        BranchSideFuncs:
        - "digit(char,int)"
      - BranchSide: "io.netty.util.AsciiString:1334"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1323"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1326"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1325"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1326"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1329"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1328"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1330"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1333"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1332"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1335"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1341"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1340"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1337"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1341"
        BranchSideFuncs:
        - "toString()"
        - "subSequence(int,int,boolean)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.AsciiString:1340"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1322,1"
      Dst: "[java.lang.Character].digit(char,int)"
    - Src: "io.netty.util.AsciiString:1324,1"
      Dst: "[io.netty.util.AsciiString].subSequence(int,int,boolean)"
    - Src: "io.netty.util.AsciiString:1324,1"
      Dst: "[io.netty.util.AsciiString].toString()"
    - Src: "io.netty.util.AsciiString:1324,1"
      Dst: "[java.lang.NumberFormatException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertTimeMillis(long)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Date].<init>(long)"
    - "[io.netty.handler.codec.DateFormatter].format(java.util.Date)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:122,1"
      Dst: "[java.util.Date].<init>(long)"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:122,1"
      Dst: "[io.netty.handler.codec.DateFormatter].format(java.util.Date)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DateFormatter].format(java.util.Date)"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.Date"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.DateFormatter].format0(java.util.Date)"
    - "[io.netty.handler.codec.DateFormatter].formatter()"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:116,1"
      Dst: "[io.netty.handler.codec.DateFormatter].formatter()"
    - Src: "io.netty.handler.codec.DateFormatter:116,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.DateFormatter:116,1"
      Dst: "[io.netty.handler.codec.DateFormatter].format0(java.util.Date)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DateFormatter].format0(java.util.Date)"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: 425
    functionLinenumberEnd: 428
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.Date"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DateFormatter].append0(java.util.Date,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:426,1"
      Dst: "[io.netty.handler.codec.DateFormatter].append0(java.util.Date,java.lang.StringBuilder)"
    - Src: "io.netty.handler.codec.DateFormatter:427,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DateFormatter].append0(java.util.Date,java.lang.StringBuilder)"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: 430
    functionLinenumberEnd: 440
    functionDepth: 1
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "java.util.Date"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Calendar].setTime(java.util.Date)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Calendar].get(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.DateFormatter].appendZeroLeftPadded(int,java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 1
    ICount: 39
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:431,1"
      Dst: "[java.util.Calendar].setTime(java.util.Date)"
    - Src: "io.netty.handler.codec.DateFormatter:433,1"
      Dst: "[java.util.Calendar].get(int)"
    - Src: "io.netty.handler.codec.DateFormatter:433,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.DateFormatter:434,1"
      Dst: "[io.netty.handler.codec.DateFormatter].appendZeroLeftPadded(int,java.lang.StringBuilder)"
    - Src: "io.netty.handler.codec.DateFormatter:434,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.DateFormatter:436,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DateFormatter].appendZeroLeftPadded(int,java.lang.StringBuilder)"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: 442
    functionLinenumberEnd: 447
    functionDepth: 0
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 4
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DateFormatter:443"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DateFormatter:446"
        BranchSideFuncs:
        - "append(char)"
      - BranchSide: "io.netty.handler.codec.DateFormatter:445"
        BranchSideFuncs:
        - "append(int)"
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:444,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.DateFormatter:446,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToTimeMillis(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DateFormatter].parseHttpDate(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.text.ParseException].<init>(java.lang.String,int)"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[java.util.Date].getTime()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.CharSequenceValueConverter:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:132"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:127,1"
      Dst: "[io.netty.handler.codec.DateFormatter].parseHttpDate(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:129,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:129,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:129,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:129,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:129,1"
      Dst: "[java.text.ParseException].<init>(java.lang.String,int)"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:129,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:132,1"
      Dst: "[java.util.Date].getTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DateFormatter].parseHttpDate(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "java.util.Date"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[io.netty.handler.codec.DateFormatter].parseHttpDate(java.lang.CharSequence,int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:87,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.DateFormatter:87,1"
      Dst: "[io.netty.handler.codec.DateFormatter].parseHttpDate(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToFloat(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "float"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].parseFloat()"
    - "[java.lang.CharSequence].toString()"
    - "[java.lang.Float].parseFloat(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.CharSequenceValueConverter:137"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:140"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:138,1"
      Dst: "[io.netty.util.AsciiString].parseFloat()"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:140,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:140,1"
      Dst: "[java.lang.Float].parseFloat(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].parseFloat()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].parseFloat(int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1345,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:1345,1"
      Dst: "[io.netty.util.AsciiString].parseFloat(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].parseFloat(int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "float"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].toString(int,int)"
    - "[java.lang.Float].parseFloat(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1349,1"
      Dst: "[io.netty.util.AsciiString].toString(int,int)"
    - Src: "io.netty.util.AsciiString:1349,1"
      Dst: "[java.lang.Float].parseFloat(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToDouble(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "double"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].parseDouble()"
    - "[java.lang.CharSequence].toString()"
    - "[java.lang.Double].parseDouble(java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.CharSequenceValueConverter:145"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:148"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.CharSequenceValueConverter:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:146,1"
      Dst: "[io.netty.util.AsciiString].parseDouble()"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:148,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:148,1"
      Dst: "[java.lang.Double].parseDouble(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].parseDouble()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].parseDouble(int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1353,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:1353,1"
      Dst: "[io.netty.util.AsciiString].parseDouble(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].parseDouble(int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "double"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].toString(int,int)"
    - "[java.lang.Double].parseDouble(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1357,1"
      Dst: "[io.netty.util.AsciiString].toString(int,int)"
    - Src: "io.netty.util.AsciiString:1357,1"
      Dst: "[java.lang.Double].parseDouble(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToDouble(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "double"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertToDouble(java.lang.CharSequence)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:26,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].convertToDouble(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToFloat(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "float"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertToFloat(java.lang.CharSequence)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:26,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].convertToFloat(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToTimeMillis(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertToTimeMillis(java.lang.CharSequence)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:26,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].convertToTimeMillis(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToLong(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 8
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertToLong(java.lang.CharSequence)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:26,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].convertToLong(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToInt(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 8
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertToInt(java.lang.CharSequence)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:26,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].convertToInt(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToShort(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 9
    returnType: "short"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertToShort(java.lang.CharSequence)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:26,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].convertToShort(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToChar(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "char"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertToChar(java.lang.CharSequence)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:26,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].convertToChar(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToByte(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "byte"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertToByte(java.lang.CharSequence)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:26,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].convertToByte(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CharSequenceValueConverter].convertToBoolean(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.CharSequenceValueConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertToBoolean(java.lang.CharSequence)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CharSequenceValueConverter:26,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].convertToBoolean(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].iterator()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.List].iterator()"
    functionUses: 24
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig:39,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].newBuilder()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder].<init>(io.netty.handler.ssl.OpenSslCertificateCompressionConfig$1)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig:48,1"
      Dst: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$Builder].<init>(io.netty.handler.ssl.OpenSslCertificateCompressionConfig$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCommonUtils].<init>()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCommonUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCommonUtils:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.CookieEncoder].<init>(boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:62,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieEncoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].<init>(java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:75,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].<init>(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:75,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNonEmptyAfterTrim(java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].setValue(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:43,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:44,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmptyAfterTrim(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:45,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].setValue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].setValue(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:60,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.cookie.Cookie"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.CookieUtil].stringBuilder()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(java.lang.StringBuilder,io.netty.handler.codec.http.cookie.Cookie)"
    - "[io.netty.handler.codec.http.cookie.CookieUtil].stripTrailingSeparator(java.lang.StringBuilder)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:85,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].stringBuilder()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:86,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:86,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(java.lang.StringBuilder,io.netty.handler.codec.http.cookie.Cookie)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:87,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].stripTrailingSeparator(java.lang.StringBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.CookieUtil].stringBuilder()"
    functionSourceFile: "io.netty.handler.codec.http.cookie.CookieUtil"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 4
    returnType: "java.lang.StringBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - "[io.netty.util.internal.InternalThreadLocalMap].stringBuilder()"
    functionUses: 1
    ICount: 3
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:80,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:80,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].stringBuilder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(java.lang.StringBuilder,io.netty.handler.codec.http.cookie.Cookie)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.handler.codec.http.cookie.Cookie"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.Cookie].name()"
    - "[io.netty.handler.codec.http.cookie.Cookie].value()"
    - "[io.netty.handler.codec.http.cookie.CookieEncoder].validateCookie(java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.Cookie].wrap()"
    - "[io.netty.handler.codec.http.cookie.CookieUtil].addQuoted(java.lang.StringBuilder,java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.CookieUtil].add(java.lang.StringBuilder,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:213"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:219"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:222"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:214,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].name()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:215,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].value()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:217,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieEncoder].validateCookie(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:219,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].wrap()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:220,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].addQuoted(java.lang.StringBuilder,java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:222,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].add(java.lang.StringBuilder,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.cookie.CookieUtil].addQuoted(java.lang.StringBuilder,java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.CookieUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.CookieUtil:121"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieUtil:125"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieUtil:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:125,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:126,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.cookie.CookieUtil].add(java.lang.StringBuilder,java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.CookieUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:107,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:108,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.CookieUtil].stripTrailingSeparator(java.lang.StringBuilder)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.CookieUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.CookieUtil:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieUtil:95"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieUtil:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:92,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:93,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:95,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie[])"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.cookie.Cookie[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.CookieUtil].stringBuilder()"
    - "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(java.lang.StringBuilder,io.netty.handler.codec.http.cookie.Cookie)"
    - "[java.util.Arrays].copyOf(java.lang.Object[],int)"
    - "[java.util.Arrays].sort(java.lang.Object[],java.util.Comparator)"
    - "[io.netty.handler.codec.http.cookie.CookieUtil].stripTrailingSeparatorOrNull(java.lang.StringBuilder)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:122"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:125"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:138"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:137"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:131"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:130"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:135"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:122,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:126,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].stringBuilder()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:129,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(java.lang.StringBuilder,io.netty.handler.codec.http.cookie.Cookie)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:131,1"
      Dst: "[java.util.Arrays].copyOf(java.lang.Object[],int)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:132,1"
      Dst: "[java.util.Arrays].sort(java.lang.Object[],java.util.Comparator)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:142,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].stripTrailingSeparatorOrNull(java.lang.StringBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.cookie.CookieUtil].stripTrailingSeparatorOrNull(java.lang.StringBuilder)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.CookieUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].length()"
    - "[io.netty.handler.codec.http.cookie.CookieUtil].stripTrailingSeparator(java.lang.StringBuilder)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.CookieUtil:88"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.CookieUtil:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:88,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:88,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].stripTrailingSeparator(java.lang.StringBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(java.util.Collection<?\
      \ extends Cookie>)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.Collection<? extends Cookie>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Collection].isEmpty()"
    - "[io.netty.handler.codec.http.cookie.CookieUtil].stringBuilder()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(java.lang.StringBuilder,io.netty.handler.codec.http.cookie.Cookie)"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    - "[java.util.Arrays].sort(java.lang.Object[],java.util.Comparator)"
    - "[java.util.Iterator].hasNext()"
    - "[io.netty.handler.codec.http.cookie.CookieUtil].stripTrailingSeparatorOrNull(java.lang.StringBuilder)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:153"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:156"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:158"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:169"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:168"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:159"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:162"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:161"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:164"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:166"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:173"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:153,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:153,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:157,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].stringBuilder()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:159,1"
      Dst: "[java.util.Collection].size()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:160,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:160,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:160,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(java.lang.StringBuilder,io.netty.handler.codec.http.cookie.Cookie)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:162,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:163,1"
      Dst: "[java.util.Arrays].sort(java.lang.Object[],java.util.Comparator)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:169,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:173,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].stripTrailingSeparatorOrNull(java.lang.StringBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(java.lang.Iterable<?\
      \ extends Cookie>)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<? extends Cookie>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[io.netty.handler.codec.http.cookie.CookieUtil].stringBuilder()"
    - "[java.util.Iterator].next()"
    - "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(java.lang.StringBuilder,io.netty.handler.codec.http.cookie.Cookie)"
    - "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - "[io.netty.util.internal.InternalThreadLocalMap].arrayList()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[java.util.Arrays].sort(java.lang.Object[],java.util.Comparator)"
    - "[io.netty.handler.codec.http.cookie.CookieUtil].stripTrailingSeparatorOrNull(java.lang.StringBuilder)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:188"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:187"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:189"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:206"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:205"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:191"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:194"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:193"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:199"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:198"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:201"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:204"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:210"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:209"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:183,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:183,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:184,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:188,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].stringBuilder()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:190,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:192,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(java.lang.StringBuilder,io.netty.handler.codec.http.cookie.Cookie)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:194,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:194,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].arrayList()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:195,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:199,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:200,1"
      Dst: "[java.util.Arrays].sort(java.lang.Object[],java.util.Comparator)"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder:210,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].stripTrailingSeparatorOrNull(java.lang.StringBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 6
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].arrayList()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.ArrayList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].arrayList(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:251,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].arrayList(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].arrayList(int)"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.ArrayList<E>"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.ArrayList].clear()"
    - "[java.util.ArrayList].ensureCapacity(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:257"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:261"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:260"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:258,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:261,1"
      Dst: "[java.util.ArrayList].clear()"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:262,1"
      Dst: "[java.util.ArrayList].ensureCapacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.CookieUtil].validCookieValueOctets()"
    functionSourceFile: "io.netty.handler.codec.http.CookieUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.BitSet"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.BitSet].<init>(int)"
    - "[java.util.BitSet].set(int)"
    - "[java.util.BitSet].set(int,boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.CookieUtil:33"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieUtil:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CookieUtil:32,1"
      Dst: "[java.util.BitSet].<init>(int)"
    - Src: "io.netty.handler.codec.http.CookieUtil:35,1"
      Dst: "[java.util.BitSet].set(int)"
    - Src: "io.netty.handler.codec.http.CookieUtil:37,1"
      Dst: "[java.util.BitSet].set(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.CookieUtil].validCookieNameOctets(java.util.BitSet)"
    functionSourceFile: "io.netty.handler.codec.http.CookieUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.BitSet"
    argCount: 1
    argTypes:
    - "java.util.BitSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.BitSet].<init>(int)"
    - "[java.util.BitSet].or(java.util.BitSet)"
    - "[java.util.BitSet].set(int,boolean)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CookieUtil:50,1"
      Dst: "[java.util.BitSet].<init>(int)"
    - Src: "io.netty.handler.codec.http.CookieUtil:51,1"
      Dst: "[java.util.BitSet].or(java.util.BitSet)"
    - Src: "io.netty.handler.codec.http.CookieUtil:52,1"
      Dst: "[java.util.BitSet].set(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.CookieUtil].firstInvalidCookieNameOctet(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.CookieUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.CookieUtil].firstInvalidOctet(java.lang.CharSequence,java.util.BitSet)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CookieUtil:71,1"
      Dst: "[io.netty.handler.codec.http.CookieUtil].firstInvalidOctet(java.lang.CharSequence,java.util.BitSet)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.CookieUtil].firstInvalidOctet(java.lang.CharSequence,java.util.BitSet)"
    functionSourceFile: "io.netty.handler.codec.http.CookieUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.util.BitSet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.util.BitSet].get(int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.CookieUtil:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieUtil:81"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieUtil:79"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieUtil:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CookieUtil:79,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http.CookieUtil:80,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.http.CookieUtil:81,1"
      Dst: "[java.util.BitSet].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.CookieUtil].firstInvalidCookieValueOctet(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.CookieUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.CookieUtil].firstInvalidOctet(java.lang.CharSequence,java.util.BitSet)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CookieUtil:75,1"
      Dst: "[io.netty.handler.codec.http.CookieUtil].firstInvalidOctet(java.lang.CharSequence,java.util.BitSet)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.CookieUtil].unwrapValue(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.CookieUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.lang.CharSequence].subSequence(int,int)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.CookieUtil:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieUtil:98"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieUtil:97"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieUtil:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieUtil:98"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieUtil:97"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieUtil:91"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieUtil:94"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieUtil:91"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieUtil:94"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieUtil:93"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieUtil:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CookieUtil:89,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http.CookieUtil:90,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.http.CookieUtil:93,1"
      Dst: "[java.lang.CharSequence].subSequence(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.CookieUtil].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.CookieUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CookieUtil:101,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameCodec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:587,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener"
    linkageType: ""
    functionLinenumber: 591
    functionLinenumberEnd: 599
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "byte"
    - "int"
    - "io.netty.handler.codec.http2.Http2Flags"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].<init>(byte,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].requireStream(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].retain()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionUses: 4
    ICount: 16
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:592"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:595"
        BranchSideFuncs:
        - "retain()"
        - "requireStream(int)"
        - "onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
        - "stream(io.netty.handler.codec.http2.Http2FrameStream)"
        - "<init>(byte,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:596,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].<init>(byte,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:597,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].requireStream(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:597,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:597,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].retain()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:596,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].<init>(byte,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 39
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte"
    - "io.netty.handler.codec.http2.Http2Flags"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:35,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].requireStream(int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener"
    linkageType: ""
    functionLinenumber: 684
    functionLinenumberEnd: 690
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2FrameStream"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].stream(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionUses: 7
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:686"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:689"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:688"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:685,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:685,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:685,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:687,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:687,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:687,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:687,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:687,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameStream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].retain()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retain()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:88,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec"
    linkageType: ""
    functionLinenumber: 706
    functionLinenumberEnd: 709
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Frame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 13
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:707,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener"
    linkageType: ""
    functionLinenumber: 601
    functionLinenumberEnd: 604
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].<init>(io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    functionUses: 5
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:602,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].<init>(io.netty.handler.codec.http2.Http2Settings)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:602,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].<init>(io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2SettingsFrame"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 34
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2SettingsFrame:31,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2SettingsFrame:32,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener"
    linkageType: ""
    functionLinenumber: 606
    functionLinenumberEnd: 609
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].<init>(long,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    functionUses: 5
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:607,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].<init>(long,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:607,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].<init>(long,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PingFrame"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener"
    linkageType: ""
    functionLinenumber: 611
    functionLinenumberEnd: 614
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].<init>(long,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    functionUses: 5
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:612,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].<init>(long,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:612,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener"
    linkageType: ""
    functionLinenumber: 616
    functionLinenumberEnd: 619
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].<init>(long)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].requireStream(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionUses: 5
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:617,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].<init>(long)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:617,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].requireStream(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:617,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:617,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].<init>(long)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:45,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:51,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener"
    linkageType: ""
    functionLinenumber: 621
    functionLinenumberEnd: 628
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].<init>(int)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].requireStream(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionUses: 5
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:622"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:625"
        BranchSideFuncs:
        - "<init>(int)"
        - "requireStream(int)"
        - "onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
        - "stream(io.netty.handler.codec.http2.Http2FrameStream)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:626,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].<init>(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:626,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].requireStream(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:626,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:626,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener"
    linkageType: ""
    functionLinenumber: 632
    functionLinenumberEnd: 635
    functionDepth: 3
    returnType: "void"
    argCount: 8
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "short"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    functionUses: 6
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:633,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener"
    linkageType: ""
    functionLinenumber: 638
    functionLinenumberEnd: 642
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].<init>(io.netty.handler.codec.http2.Http2Headers,boolean,int)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].requireStream(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionUses: 8
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:639,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].<init>(io.netty.handler.codec.http2.Http2Headers,boolean,int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:640,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].requireStream(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:640,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:639,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].<init>(io.netty.handler.codec.http2.Http2Headers,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 65
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2Headers"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil].verifyPadding(int)"
    functionUses: 2
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:59,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:60,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:62,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].verifyPadding(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:68,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener"
    linkageType: ""
    functionLinenumber: 645
    functionLinenumberEnd: 650
    functionDepth: 5
    returnType: "int"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean,int)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].requireStream(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].retain()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionUses: 9
    ICount: 14
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:646,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean,int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:647,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].requireStream(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:647,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:647,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].retain()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:646,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 83
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil].verifyPadding(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 2
    ICount: 27
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:81"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:80"
        BranchSideFuncs:
        - "content()"
        - "readableBytes()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:73,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:74,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:76,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].verifyPadding(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:78,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].content()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:78,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:79,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].content()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].ensureAccessible(io.netty.buffer.ByteBuf)"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:107,1"
      Dst: "[io.netty.buffer.ByteBufUtil].ensureAccessible(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:86,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].retain()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 2
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:152,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener"
    linkageType: ""
    functionLinenumber: 653
    functionLinenumberEnd: 656
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].retain()"
    functionUses: 4
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:654,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].<init>(int,long,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:654,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].retain()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:654,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener"
    linkageType: ""
    functionLinenumber: 660
    functionLinenumberEnd: 669
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    - "short"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].<init>(int,short,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].requireStream(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    functionUses: 5
    ICount: 18
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:662"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:665"
        BranchSideFuncs:
        - "requireStream(int)"
        - "<init>(int,short,boolean)"
        - "onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
        - "stream(io.netty.handler.codec.http2.Http2FrameStream)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:661,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:661,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:666,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].<init>(int,short,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:667,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].requireStream(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:667,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:666,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].<init>(int,short,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PriorityFrame"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "short"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PriorityFrame:30,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PriorityFrame"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2PriorityFrame"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PriorityFrame:53,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener"
    linkageType: ""
    functionLinenumber: 671
    functionLinenumberEnd: 674
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    functionUses: 5
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:672,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener"
    linkageType: ""
    functionLinenumber: 677
    functionLinenumberEnd: 683
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].<init>()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].<init>(io.netty.handler.codec.http2.Http2Headers,int,int)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].pushStream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].setStreamAndProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].requireStream(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.Http2StreamFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionUses: 5
    ICount: 22
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:678,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].<init>(io.netty.handler.codec.http2.Http2Headers,int,int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:678,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:680,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:680,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:680,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].setStreamAndProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:679,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].pushStream(io.netty.handler.codec.http2.Http2FrameStream)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:681,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].requireStream(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:681,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:678,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2Frame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Frame)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].<init>(io.netty.handler.codec.http2.Http2Headers,int,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame:40,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].setStreamAndProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream"
    linkageType: ""
    functionLinenumber: 740
    functionLinenumberEnd: 745
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection$PropertyKey"
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    functionUses: 3
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:741"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:742"
        BranchSideFuncs:
        - "setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:741"
        BranchSideFuncs:
        - "setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:741"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:742"
        BranchSideFuncs:
        - "setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:741"
        BranchSideFuncs:
        - "setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:741"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:742"
        BranchSideFuncs:
        - "setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:741"
        BranchSideFuncs:
        - "setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:741,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:741,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:743,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].pushStream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2StreamFrame"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameStream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.handler.codec.http2.Http2FrameCodec$1)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameCodec"
    - "io.netty.handler.codec.http2.Http2FrameCodec$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$FrameListener:587,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.rtsp.RtspDecoder].<init>(int,int,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspDecoder:85,1"
      Dst: "[io.netty.handler.codec.rtsp.RtspDecoder].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspDecoder].<init>(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectDecoder].<init>(int,int,int,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspDecoder:99,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectDecoder].<init>(int,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspDecoder].<init>(int,int,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectDecoder].<init>(int,int,int,boolean,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspDecoder:113,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectDecoder].<init>(int,int,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspDecoder].createMessage(java.lang.String[])"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspDecoder"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 135
    functionDepth: 8
    returnType: "io.netty.handler.codec.http.HttpMessage"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].matches()"
    - "[io.netty.handler.codec.rtsp.RtspVersions].valueOf(java.lang.String)"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].<init>(int,java.lang.String)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,boolean)"
    - "[io.netty.handler.codec.rtsp.RtspMethods].valueOf(java.lang.String)"
    functionUses: 1
    ICount: 29
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.rtsp.RtspDecoder:125"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.rtsp.RtspDecoder:132"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.rtsp.RtspDecoder:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspDecoder:125,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.rtsp.RtspDecoder:125,1"
      Dst: "[java.util.regex.Matcher].matches()"
    - Src: "io.netty.handler.codec.rtsp.RtspDecoder:127,1"
      Dst: "[io.netty.handler.codec.rtsp.RtspVersions].valueOf(java.lang.String)"
    - Src: "io.netty.handler.codec.rtsp.RtspDecoder:128,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "io.netty.handler.codec.rtsp.RtspDecoder:128,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].<init>(int,java.lang.String)"
    - Src: "io.netty.handler.codec.rtsp.RtspDecoder:128,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean)"
    - Src: "io.netty.handler.codec.rtsp.RtspDecoder:134,1"
      Dst: "[io.netty.handler.codec.rtsp.RtspMethods].valueOf(java.lang.String)"
    - Src: "io.netty.handler.codec.rtsp.RtspDecoder:134,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspVersions].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspVersions"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 46
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.HttpVersion"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.String].toUpperCase()"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpVersion].<init>(java.lang.String,boolean)"
    functionUses: 2
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.rtsp.RtspVersions:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.rtsp.RtspVersions:45"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.rtsp.RtspVersions:44"
        BranchSideFuncs:
        - "<init>(java.lang.String,boolean)"
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspVersions:38,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.rtsp.RtspVersions:40,1"
      Dst: "[java.lang.String].trim()"
    - Src: "io.netty.handler.codec.rtsp.RtspVersions:40,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "io.netty.handler.codec.rtsp.RtspVersions:41,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.rtsp.RtspVersions:45,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].<init>(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspMethods].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspMethods"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 128
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.HttpMethod"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNonEmptyAfterTrim(java.lang.String,java.lang.String)"
    - "[java.lang.String].toUpperCase()"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap:io.netty.util.collection.CharCollections$EmptyMap:io.netty.util.collection.IntCollections$EmptyMap:io.netty.util.collection.LongCollections$EmptyMap:io.netty.util.collection.ShortCollections$EmptyMap:java.security.Provider:java.util.AbstractMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.LinkedHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMethod].valueOf(java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.rtsp.RtspMethods:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.rtsp.RtspMethods:127"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.rtsp.RtspMethods:126"
        BranchSideFuncs:
        - "valueOf(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspMethods:122,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmptyAfterTrim(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.rtsp.RtspMethods:122,1"
      Dst: "[java.lang.String].toUpperCase()"
    - Src: "io.netty.handler.codec.rtsp.RtspMethods:123,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.rtsp.RtspMethods:127,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].valueOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspDecoder].isContentAlwaysEmpty(io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspDecoder"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpObjectDecoder].isContentAlwaysEmpty(io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.rtsp.RtspDecoder:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.rtsp.RtspDecoder:143"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence)"
        - "isContentAlwaysEmpty(io.netty.handler.codec.http.HttpMessage)"
        - "headers()"
    - Branch String: "io.netty.handler.codec.rtsp.RtspDecoder:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.rtsp.RtspDecoder:143"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence)"
        - "isContentAlwaysEmpty(io.netty.handler.codec.http.HttpMessage)"
        - "headers()"
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspDecoder:144,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectDecoder].isContentAlwaysEmpty(io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.rtsp.RtspDecoder:144,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.rtsp.RtspDecoder:144,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.rtsp.RtspDecoder].createInvalidMessage()"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspDecoder"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 154
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.HttpMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean)"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.rtsp.RtspDecoder:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.rtsp.RtspDecoder:153"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,boolean)"
      - BranchSide: "io.netty.handler.codec.rtsp.RtspDecoder:152"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean)"
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspDecoder:150,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.rtsp.RtspDecoder:153,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpMethod"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.buffer.Unpooled].buffer(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:45,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:45,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpResponseStatus"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,boolean,boolean)"
    - "[io.netty.buffer.Unpooled].buffer(int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:47,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:47,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspDecoder].isDecodingRequest()"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspDecoder"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[io.netty.handler.codec.spdy.SpdyHttpDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,java.util.Map,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:64,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:64,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,java.util.Map,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[io.netty.handler.codec.spdy.SpdyHttpDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,java.util.Map,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:77,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:77,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,java.util.Map,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,java.util.Map)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    - "int"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHttpDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,java.util.Map,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:90,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,java.util.Map,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,java.util.Map,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    - "int"
    - "java.util.Map"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.spdy.SpdyVersion].getVersion()"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:104,1"
      Dst: "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:105,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:105,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyVersion].getVersion()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:106,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpDecoder"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 120
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.LongCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].entrySet()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].entrySet()"
    - "[java.security.Provider].entrySet()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].clear()"
    - "[io.netty.util.collection.ByteObjectHashMap].clear()"
    - "[io.netty.util.collection.LongObjectHashMap].clear()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].clear()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].clear()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].clear()"
    - "[io.netty.util.collection.CharObjectHashMap].clear()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].clear()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].clear()"
    - "[io.netty.util.collection.ShortObjectHashMap].clear()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].clear()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap:io.netty.util.collection.CharCollections$EmptyMap:io.netty.util.collection.IntCollections$EmptyMap:io.netty.util.collection.LongCollections$EmptyMap:io.netty.util.collection.ShortCollections$EmptyMap:java.security.Provider:java.util.AbstractMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.LinkedHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].clear()"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Map].clear()"
    functionUses: 3
    ICount: 16
    EdgeCount: 140
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:114"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:117"
        BranchSideFuncs:
        - "safeRelease(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "getValue()"
        - "next()"
        - "entrySet()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:116"
        BranchSideFuncs:
        - "channelInactive(io.netty.channel.ChannelHandlerContext)"
        - "clear()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:114,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:114,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:114,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:114,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:115,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:115,1"
      Dst: "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:117,1"
      Dst: "[java.util.Map].clear()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:118,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].channelInactive(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].putMessage(int,io.netty.handler.codec.http.FullHttpMessage)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpDecoder"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.FullHttpMessage"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.http.FullHttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.ShortObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider:java.util.AbstractMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 8
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:122,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:122,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].getMessage(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpDecoder"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.FullHttpMessage"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap:io.netty.util.collection.CharCollections$EmptyMap:io.netty.util.collection.IntCollections$EmptyMap:io.netty.util.collection.LongCollections$EmptyMap:io.netty.util.collection.ShortCollections$EmptyMap:java.security.Provider:java.util.AbstractMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.LinkedHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 7
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:126,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:126,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].removeMessage(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpDecoder"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.FullHttpMessage"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].remove(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].remove(java.lang.Object)"
    - "[java.util.Hashtable].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].remove(java.lang.Object)"
    - "[java.util.IdentityHashMap].remove(java.lang.Object)"
    - "[java.util.AbstractMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[java.util.Properties].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].remove(java.lang.Object)"
    - "[java.util.WeakHashMap].remove(java.lang.Object)"
    - "[java.util.jar.Attributes].remove(java.lang.Object)"
    - "[java.util.TreeMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].remove(java.lang.Object)"
    - "[java.security.Provider].remove(java.lang.Object)"
    - "[java.util.HashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].remove(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 4
    ICount: 7
    EdgeCount: 27
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:130,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:130,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdyFrame,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpDecoder"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 356
    functionDepth: 10
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.spdy.SpdyFrame"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].streamId()"
    - "[io.netty.handler.codec.spdy.SpdyCodecUtil].isServerId(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].associatedStreamId()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].<init>(int,io.netty.handler.codec.spdy.SpdyStreamStatus)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].isLast()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].isTruncated()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.spdy.SpdyHttpDecoder].createHttpRequest(io.netty.handler.codec.spdy.SpdyHeadersFrame,io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].priority()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].<init>(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].setLast(boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].headers()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    - "[io.netty.handler.codec.DefaultHeaders].setInt(java.lang.Object,int)"
    - "[io.netty.handler.codec.DefaultHeaders].setObject(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdyHttpDecoder].putMessage(int,io.netty.handler.codec.http.FullHttpMessage)"
    - "[io.netty.handler.codec.spdy.SpdyHttpDecoder].createHttpResponse(io.netty.handler.codec.spdy.SpdyHeadersFrame,io.netty.buffer.ByteBufAllocator,boolean)"
    - "[io.netty.handler.codec.http.HttpUtil].setContentLength(io.netty.handler.codec.http.HttpMessage,long)"
    - "[io.netty.handler.codec.spdy.SpdyHttpDecoder].getMessage(int)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    - "[java.util.AbstractMap$SimpleEntry].getKey()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.spdy.SpdyHttpDecoder].removeMessage(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].content()"
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.spdy.SpdyStreamFrame].streamId()"
    - "[io.netty.handler.codec.spdy.SpdySynStreamFrame].associatedStreamId()"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdyStreamFrame].isLast()"
    - "[io.netty.handler.codec.spdy.SpdyHeadersFrame].isTruncated()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.spdy.SpdySynStreamFrame].priority()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdySynReplyFrame].setLast(boolean)"
    - "[io.netty.handler.codec.spdy.SpdyHeadersFrame].headers()"
    - "[io.netty.handler.codec.Headers].setInt(java.lang.Object,int)"
    - "[io.netty.handler.codec.Headers].setObject(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.Headers].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.spdy.SpdyDataFrame].content()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 1
    ICount: 222
    EdgeCount: 383
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:135"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:142"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:193"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:158"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:157"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:158"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:167"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:166"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:175"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:174"
        BranchSideFuncs:
        - "priority()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:194"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:205"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:204"
        BranchSideFuncs:
        - "createHttpRequest(io.netty.handler.codec.spdy.SpdyHeadersFrame,io.netty.buffer.ByteBufAllocator)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:210"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:214"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:213"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:135"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:236"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:245"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:244"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:250"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:255"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:254"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:135"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:271"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:309"
        BranchSideFuncs:
        - "writeAndFlush(java.lang.Object)"
        - "setLast(boolean)"
        - "createHttpResponse(io.netty.handler.codec.spdy.SpdyHeadersFrame,io.netty.buffer.ByteBufAllocator,boolean)"
        - "<init>(int,io.netty.handler.codec.spdy.SpdyStreamStatus)"
        - "<init>(int)"
        - "setObject(java.lang.Object,java.lang.Object)"
        - "code()"
        - "alloc()"
        - "setInt(java.lang.CharSequence,int)"
        - "isServerId(int)"
        - "setInt(java.lang.Object,int)"
        - "priority()"
        - "putMessage(int,io.netty.handler.codec.http.FullHttpMessage)"
        - "createHttpRequest(io.netty.handler.codec.spdy.SpdyHeadersFrame,io.netty.buffer.ByteBufAllocator)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:308"
        BranchSideFuncs:
        - "isTruncated()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:273"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:305"
        BranchSideFuncs:
        - "writeAndFlush(java.lang.Object)"
        - "setLast(boolean)"
        - "createHttpResponse(io.netty.handler.codec.spdy.SpdyHeadersFrame,io.netty.buffer.ByteBufAllocator,boolean)"
        - "<init>(int,io.netty.handler.codec.spdy.SpdyStreamStatus)"
        - "<init>(int)"
        - "setObject(java.lang.Object,java.lang.Object)"
        - "code()"
        - "alloc()"
        - "setInt(java.lang.CharSequence,int)"
        - "isServerId(int)"
        - "setInt(java.lang.Object,int)"
        - "priority()"
        - "putMessage(int,io.netty.handler.codec.http.FullHttpMessage)"
        - "createHttpRequest(io.netty.handler.codec.spdy.SpdyHeadersFrame,io.netty.buffer.ByteBufAllocator)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:304"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:277"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:285"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:284"
        BranchSideFuncs:
        - "createHttpResponse(io.netty.handler.codec.spdy.SpdyHeadersFrame,io.netty.buffer.ByteBufAllocator,boolean)"
        - "alloc()"
        - "setInt(java.lang.CharSequence,int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:290"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:295"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:294"
        BranchSideFuncs:
        - "putMessage(int,io.netty.handler.codec.http.FullHttpMessage)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:309"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:315"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:314"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:310"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:315"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "headers()"
        - "getKey()"
        - "add(java.lang.CharSequence,java.lang.Object)"
        - "getValue()"
        - "iterator()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:314"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:315"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:321"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:320"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:135"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:328"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:332"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:331"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:333"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:339"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "toString()"
        - "append(int)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:338"
        BranchSideFuncs:
        - "content()"
        - "readerIndex()"
        - "isLast()"
        - "writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:343"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:349"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "setContentLength(io.netty.handler.codec.http.HttpMessage,long)"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:348"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:354"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:140,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamFrame].streamId()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:142,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyCodecUtil].isServerId(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:144,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySynStreamFrame].associatedStreamId()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:149,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].<init>(int,io.netty.handler.codec.spdy.SpdyStreamStatus)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:151,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:158,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamFrame].isLast()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:167,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeadersFrame].isTruncated()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:175,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:175,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].createHttpRequest(io.netty.handler.codec.spdy.SpdyHeadersFrame,io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:178,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:178,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].setInt(java.lang.CharSequence,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:180,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySynStreamFrame].priority()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:182,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:195,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].<init>(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:196,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySynReplyFrame].setLast(boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:197,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeadersFrame].headers()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:198,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:198,1"
      Dst: "[io.netty.handler.codec.Headers].setInt(java.lang.Object,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:199,1"
      Dst: "[io.netty.handler.codec.Headers].setObject(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:214,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].putMessage(int,io.netty.handler.codec.http.FullHttpMessage)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:245,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].createHttpResponse(io.netty.handler.codec.spdy.SpdyHeadersFrame,io.netty.buffer.ByteBufAllocator,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:251,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].setContentLength(io.netty.handler.codec.http.HttpMessage,long)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:269,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].getMessage(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:310,1"
      Dst: "[io.netty.handler.codec.Headers].iterator()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:310,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:310,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:311,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:311,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:311,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:316,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:316,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:317,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].removeMessage(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:333,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyDataFrame].content()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:335,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:335,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:335,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:335,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:335,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:341,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:341,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 57
    CyclomaticComplexity: 15
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].createHttpRequest(io.netty.handler.codec.spdy.SpdyHeadersFrame,io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpDecoder"
    linkageType: ""
    functionLinenumber: 359
    functionLinenumberEnd: 397
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.FullHttpRequest"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyHeadersFrame"
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].headers()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].getAsString(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpMethod].valueOf(java.lang.String)"
    - "[io.netty.handler.codec.http.HttpVersion].valueOf(java.lang.String)"
    - "[io.netty.handler.codec.DefaultHeaders].remove(java.lang.Object)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    - "[java.util.AbstractMap$SimpleEntry].getKey()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[io.netty.handler.codec.http.HttpUtil].setKeepAlive(io.netty.handler.codec.http.HttpMessage,boolean)"
    - "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.codec.spdy.SpdyHeadersFrame].headers()"
    - "[io.netty.handler.codec.spdy.SpdyHeaders].getAsString(java.lang.CharSequence)"
    - "[io.netty.handler.codec.Headers].remove(java.lang.Object)"
    - "[io.netty.buffer.ByteBufAllocator].buffer()"
    - "[io.netty.handler.codec.Headers].get(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.Headers].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    functionUses: 2
    ICount: 55
    EdgeCount: 202
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:381"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:386"
        BranchSideFuncs:
        - "add(java.lang.CharSequence,java.lang.Object)"
        - "hasNext()"
        - "getValue()"
        - "next()"
        - "iterator()"
        - "getKey()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:385"
        BranchSideFuncs:
        - "headers()"
        - "remove(java.lang.CharSequence)"
        - "setKeepAlive(io.netty.handler.codec.http.HttpMessage,boolean)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:393"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:386"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:385"
        BranchSideFuncs:
        - "headers()"
        - "remove(java.lang.CharSequence)"
        - "setKeepAlive(io.netty.handler.codec.http.HttpMessage,boolean)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:393"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:396"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:395"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:360,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeadersFrame].headers()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:361,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaders].getAsString(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:361,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].valueOf(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:363,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].valueOf(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:364,1"
      Dst: "[io.netty.handler.codec.Headers].remove(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:369,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:371,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:377,1"
      Dst: "[io.netty.handler.codec.Headers].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:379,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:379,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:381,1"
      Dst: "[io.netty.handler.codec.Headers].iterator()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:381,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:381,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:382,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:382,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:382,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:386,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].setKeepAlive(io.netty.handler.codec.http.HttpMessage,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:389,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:394,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpMethod"
    - "java.lang.String"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf,boolean)"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:41,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].setKeepAlive(io.netty.handler.codec.http.HttpMessage,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpUtil].setKeepAlive(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    functionUses: 4
    ICount: 6
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:113,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpUtil:113,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http.HttpUtil:113,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].setKeepAlive(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].<init>(int,boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame:38,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].<init>(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].createHttpResponse(io.netty.handler.codec.spdy.SpdyHeadersFrame,io.netty.buffer.ByteBufAllocator,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpDecoder"
    linkageType: ""
    functionLinenumber: 402
    functionLinenumberEnd: 431
    functionDepth: 9
    returnType: "io.netty.handler.codec.http.FullHttpResponse"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyHeadersFrame"
    - "io.netty.buffer.ByteBufAllocator"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].headers()"
    - "[io.netty.handler.codec.DefaultHeaders].get(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].parseLine(java.lang.CharSequence)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].getAsString(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpVersion].valueOf(java.lang.String)"
    - "[io.netty.handler.codec.DefaultHeaders].remove(java.lang.Object)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    - "[java.util.AbstractMap$SimpleEntry].getKey()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpUtil].setKeepAlive(io.netty.handler.codec.http.HttpMessage,boolean)"
    - "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.codec.spdy.SpdyHeadersFrame].headers()"
    - "[io.netty.handler.codec.Headers].get(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdyHeaders].getAsString(java.lang.CharSequence)"
    - "[io.netty.handler.codec.Headers].remove(java.lang.Object)"
    - "[io.netty.buffer.ByteBufAllocator].buffer()"
    - "[io.netty.handler.codec.Headers].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    functionUses: 2
    ICount: 46
    EdgeCount: 197
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:413"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:418"
        BranchSideFuncs:
        - "add(java.lang.CharSequence,java.lang.Object)"
        - "hasNext()"
        - "getValue()"
        - "next()"
        - "iterator()"
        - "getKey()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:417"
        BranchSideFuncs:
        - "headers()"
        - "remove(java.lang.CharSequence)"
        - "setKeepAlive(io.netty.handler.codec.http.HttpMessage,boolean)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:427"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:418"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:417"
        BranchSideFuncs:
        - "headers()"
        - "remove(java.lang.CharSequence)"
        - "setKeepAlive(io.netty.handler.codec.http.HttpMessage,boolean)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpDecoder:427"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:430"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpDecoder:429"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:403,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeadersFrame].headers()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:404,1"
      Dst: "[io.netty.handler.codec.Headers].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:404,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].parseLine(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:405,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaders].getAsString(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:405,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].valueOf(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:406,1"
      Dst: "[io.netty.handler.codec.Headers].remove(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:410,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:412,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:413,1"
      Dst: "[io.netty.handler.codec.Headers].iterator()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:413,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:413,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:414,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:414,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:414,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:414,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:418,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].setKeepAlive(io.netty.handler.codec.http.HttpMessage,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:421,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:428,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpUtil].setContentLength(io.netty.handler.codec.http.HttpMessage,long)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: 249
    functionLinenumberEnd: 252
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[java.lang.Long].valueOf(long)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 7
    ICount: 7
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:250,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpUtil:250,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http.HttpUtil:250,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpDecoder"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHttpDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdyFrame,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpDecoder:48,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHttpDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdyFrame,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].<init>(long)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PingFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].<init>(long,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:32,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].<init>(long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].ack()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PingFrame"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].name()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PingFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].content()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PingFrame"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PingFrame"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].ack()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].content()"
    - "[io.netty.handler.codec.http2.Http2PingFrame].ack()"
    - "[io.netty.handler.codec.http2.Http2PingFrame].content()"
    functionUses: 9
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:57"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:60"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:59"
        BranchSideFuncs:
        - "content()"
        - "ack()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:61"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:59"
        BranchSideFuncs:
        - "content()"
        - "ack()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:61"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:59"
        BranchSideFuncs:
        - "content()"
        - "ack()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:61,1"
      Dst: "[io.netty.handler.codec.http2.Http2PingFrame].ack()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:61,1"
      Dst: "[io.netty.handler.codec.http2.Http2PingFrame].content()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PingFrame"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].hashCode()"
    functionUses: 5
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:66"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:65"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:66,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].toString()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PingFrame"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(boolean)"
    functionUses: 19
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:73,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:73,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:73,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:73,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:73,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:73,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PingFrame:73,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.SegmentedDatagramPacket].<init>(io.netty.buffer.ByteBuf,int,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.channel.unix.SegmentedDatagramPacket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:40,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:41,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.SegmentedDatagramPacket].<init>(io.netty.buffer.ByteBuf,int,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.channel.unix.SegmentedDatagramPacket"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "java.net.InetSocketAddress"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 4
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:53,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:54,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.SegmentedDatagramPacket].segmentSize()"
    functionSourceFile: "io.netty.channel.unix.SegmentedDatagramPacket"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.SegmentedDatagramPacket].copy()"
    functionSourceFile: "io.netty.channel.unix.SegmentedDatagramPacket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.unix.SegmentedDatagramPacket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - "[io.netty.channel.unix.SegmentedDatagramPacket].<init>(io.netty.buffer.ByteBuf,int,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:68,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].content()"
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:68,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:68,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:68,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:68,1"
      Dst: "[io.netty.channel.unix.SegmentedDatagramPacket].<init>(io.netty.buffer.ByteBuf,int,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.SegmentedDatagramPacket].duplicate()"
    functionSourceFile: "io.netty.channel.unix.SegmentedDatagramPacket"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 4
    returnType: "io.netty.channel.unix.SegmentedDatagramPacket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.SegmentedDatagramPacket].<init>(io.netty.buffer.ByteBuf,int,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.buffer.UnreleasableByteBuf].duplicate()"
    - "[io.netty.buffer.ReadOnlyByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].duplicate()"
    - "[io.netty.buffer.PooledSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.SlicedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractByteBuf].duplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].duplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.SwappedByteBuf].duplicate()"
    - "[io.netty.buffer.EmptyByteBuf].duplicate()"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    functionUses: 1
    ICount: 12
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:73,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].content()"
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:73,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:73,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:73,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:73,1"
      Dst: "[io.netty.channel.unix.SegmentedDatagramPacket].<init>(io.netty.buffer.ByteBuf,int,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.SegmentedDatagramPacket].retainedDuplicate()"
    functionSourceFile: "io.netty.channel.unix.SegmentedDatagramPacket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.unix.SegmentedDatagramPacket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - "[io.netty.channel.unix.SegmentedDatagramPacket].<init>(io.netty.buffer.ByteBuf,int,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:78,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].content()"
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:78,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:78,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:78,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:78,1"
      Dst: "[io.netty.channel.unix.SegmentedDatagramPacket].<init>(io.netty.buffer.ByteBuf,int,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.SegmentedDatagramPacket].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.unix.SegmentedDatagramPacket"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 4
    returnType: "io.netty.channel.unix.SegmentedDatagramPacket"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.SegmentedDatagramPacket].<init>(io.netty.buffer.ByteBuf,int,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:83,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:83,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:83,1"
      Dst: "[io.netty.channel.unix.SegmentedDatagramPacket].<init>(io.netty.buffer.ByteBuf,int,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.SegmentedDatagramPacket].retain()"
    functionSourceFile: "io.netty.channel.unix.SegmentedDatagramPacket"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionDepth: 3
    returnType: "io.netty.channel.unix.SegmentedDatagramPacket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramPacket].retain()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:88,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DatagramPacket].retain()"
    functionSourceFile: "io.netty.channel.socket.DatagramPacket"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionDepth: 2
    returnType: "io.netty.channel.socket.DatagramPacket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].retain()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DatagramPacket:67,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.SegmentedDatagramPacket].retain(int)"
    functionSourceFile: "io.netty.channel.unix.SegmentedDatagramPacket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.unix.SegmentedDatagramPacket"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramPacket].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:94,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DatagramPacket].retain(int)"
    functionSourceFile: "io.netty.channel.socket.DatagramPacket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.socket.DatagramPacket"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DatagramPacket:73,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.SegmentedDatagramPacket].touch()"
    functionSourceFile: "io.netty.channel.unix.SegmentedDatagramPacket"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionDepth: 3
    returnType: "io.netty.channel.unix.SegmentedDatagramPacket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramPacket].touch()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:100,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DatagramPacket].touch()"
    functionSourceFile: "io.netty.channel.socket.DatagramPacket"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionDepth: 2
    returnType: "io.netty.channel.socket.DatagramPacket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].touch()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DatagramPacket:79,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.SegmentedDatagramPacket].touch(java.lang.Object)"
    functionSourceFile: "io.netty.channel.unix.SegmentedDatagramPacket"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionDepth: 3
    returnType: "io.netty.channel.unix.SegmentedDatagramPacket"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramPacket].touch(java.lang.Object)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.SegmentedDatagramPacket:106,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DatagramPacket].touch(java.lang.Object)"
    functionSourceFile: "io.netty.channel.socket.DatagramPacket"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionDepth: 2
    returnType: "io.netty.channel.socket.DatagramPacket"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].touch(java.lang.Object)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DatagramPacket:85,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].<init>(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$5"
    linkageType: ""
    functionLinenumber: 603
    functionLinenumberEnd: 605
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.epoll.AbstractEpollStreamChannel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$5:604,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$5"
    linkageType: ""
    functionLinenumber: 606
    functionLinenumberEnd: 609
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].access$100(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.ChannelPromise)"
    functionUses: 50
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$5:607,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].access$100(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnacceptableProtocolVersionException].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnacceptableProtocolVersionException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnacceptableProtocolVersionException:31,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnacceptableProtocolVersionException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnacceptableProtocolVersionException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnacceptableProtocolVersionException:37,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnacceptableProtocolVersionException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnacceptableProtocolVersionException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnacceptableProtocolVersionException:51,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool$7].<init>(io.netty.channel.pool.SimpleChannelPool)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool$7"
    linkageType: ""
    functionLinenumber: 418
    functionLinenumberEnd: 420
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.pool.SimpleChannelPool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool$7:419,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool$7].call()"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool$7"
    linkageType: ""
    functionLinenumber: 421
    functionLinenumberEnd: 424
    functionDepth: 2
    returnType: "java.lang.Void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].close()"
    - "[io.netty.channel.pool.FixedChannelPool].close()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool$7:422,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ApplicationProtocolConfig].<init>(io.netty.handler.ssl.ApplicationProtocolConfig$Protocol,io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior,io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior,java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.ssl.ApplicationProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.ssl.ApplicationProtocolConfig$Protocol"
    - "io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior"
    - "io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ApplicationProtocolUtil].toList(java.lang.Iterable)"
    - "[io.netty.handler.ssl.ApplicationProtocolConfig].<init>(io.netty.handler.ssl.ApplicationProtocolConfig$Protocol,io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior,io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior,java.util.List)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig:51,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolUtil].toList(java.lang.Iterable)"
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig:51,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolConfig].<init>(io.netty.handler.ssl.ApplicationProtocolConfig$Protocol,io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior,io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ApplicationProtocolConfig].<init>(io.netty.handler.ssl.ApplicationProtocolConfig$Protocol,io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior,io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior,java.lang.String[])"
    functionSourceFile: "io.netty.handler.ssl.ApplicationProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.ssl.ApplicationProtocolConfig$Protocol"
    - "io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior"
    - "io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ApplicationProtocolUtil].toList(java.lang.String[])"
    - "[io.netty.handler.ssl.ApplicationProtocolConfig].<init>(io.netty.handler.ssl.ApplicationProtocolConfig$Protocol,io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior,io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior,java.util.List)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig:63,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolUtil].toList(java.lang.String[])"
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig:63,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolConfig].<init>(io.netty.handler.ssl.ApplicationProtocolConfig$Protocol,io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior,io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ApplicationProtocolConfig].<init>(io.netty.handler.ssl.ApplicationProtocolConfig$Protocol,io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior,io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior,java.util.List)"
    functionSourceFile: "io.netty.handler.ssl.ApplicationProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.ssl.ApplicationProtocolConfig$Protocol"
    - "io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior"
    - "io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.util.Collection,java.lang.String)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ApplicationProtocolConfig:81"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ApplicationProtocolConfig:84"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ApplicationProtocolConfig:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig:75,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig:76,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig:76,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig:82,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig:82,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig:82,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig:82,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig:84,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.util.Collection,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ApplicationProtocolConfig].<init>()"
    functionSourceFile: "io.netty.handler.ssl.ApplicationProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Collections].emptyList()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig:90,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.ApplicationProtocolConfig:91,1"
      Dst: "[java.util.Collections].emptyList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocalRunnable].<init>(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocalRunnable"
    linkageType: ""
    functionLinenumber: 22
    functionLinenumberEnd: 26
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocalRunnable:23,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.concurrent.FastThreadLocalRunnable:24,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocalRunnable"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$2:io.netty.channel.oio.AbstractOioChannel$3:io.netty.util.concurrent.AbstractScheduledEventExecutor$2:io.netty.util.concurrent.GlobalEventExecutor$1:io.netty.util.concurrent.PromiseTask$SentinelRunnable:io.netty.util.concurrent.SingleThreadEventExecutor$1:java.lang.invoke.MethodHandleNatives$CallSiteContext:java.lang.ref.Finalizer$2:java.lang.ref.Finalizer$FinalizerThread:java.util.concurrent.CompletableFuture$Completion:java.util.concurrent.ForkJoinWorkerThread:java.util.concurrent.ThreadPoolExecutor$Worker:java.util.zip.Deflater$DeflaterZStreamRef:java.util.zip.Inflater$InflaterZStreamRef:java.util.zip.ZipFile$CleanableResource].run()"
    - "[io.netty.util.concurrent.FastThreadLocal].removeAll()"
    - "[java.lang.Runnable].run()"
    functionUses: 49
    ICount: 9
    EdgeCount: 171
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocalRunnable:30,1"
      Dst: "[java.lang.Runnable].run()"
    - Src: "io.netty.util.concurrent.FastThreadLocalRunnable:32,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].removeAll()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].removeAll()"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 74
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].getIfSet()"
    - "[io.netty.util.internal.InternalThreadLocalMap].indexedVariable(int)"
    - "[io.netty.channel.group.DefaultChannelGroup].toArray(java.lang.Object[])"
    - "[java.util.AbstractCollection:java.util.concurrent.ConcurrentHashMap$CollectionView].toArray(java.lang.Object[])"
    - "[io.netty.util.concurrent.FastThreadLocal].remove(io.netty.util.internal.InternalThreadLocalMap)"
    - "[io.netty.util.internal.InternalThreadLocalMap].remove()"
    - "[java.util.Set].toArray(java.lang.Object[])"
    functionUses: 14
    ICount: 25
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:55"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:60"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:59"
        BranchSideFuncs:
        - "indexedVariable(int)"
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:61"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:71"
        BranchSideFuncs:
        - "indexedVariable(int)"
        - "toArray(java.lang.Object[])"
        - "remove(io.netty.util.internal.InternalThreadLocalMap)"
        - "remove()"
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:70"
        BranchSideFuncs:
        - "remove()"
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:61"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:71"
        BranchSideFuncs:
        - "indexedVariable(int)"
        - "toArray(java.lang.Object[])"
        - "remove(io.netty.util.internal.InternalThreadLocalMap)"
        - "remove()"
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:70"
        BranchSideFuncs:
        - "remove()"
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:66"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:71"
        BranchSideFuncs:
        - "indexedVariable(int)"
        - "toArray(java.lang.Object[])"
        - "remove(io.netty.util.internal.InternalThreadLocalMap)"
        - "remove()"
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:70"
        BranchSideFuncs:
        - "remove()"
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocal:54,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].getIfSet()"
    - Src: "io.netty.util.concurrent.FastThreadLocal:60,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].indexedVariable(int)"
    - Src: "io.netty.util.concurrent.FastThreadLocal:65,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    - Src: "io.netty.util.concurrent.FastThreadLocal:67,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].remove(io.netty.util.internal.InternalThreadLocalMap)"
    - Src: "io.netty.util.concurrent.FastThreadLocal:71,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].remove()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 146
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].currentThread()"
    - "[io.netty.util.concurrent.FastThreadLocalThread].setThreadLocalMap(io.netty.util.internal.InternalThreadLocalMap)"
    - "[jdk.internal.misc.TerminatingThreadLocal].remove()"
    - "[java.lang.ThreadLocal].remove()"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:140"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:143"
        BranchSideFuncs:
        - "setThreadLocalMap(io.netty.util.internal.InternalThreadLocalMap)"
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:142"
        BranchSideFuncs:
        - "remove()"
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:139,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:141,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocalThread].setThreadLocalMap(io.netty.util.internal.InternalThreadLocalMap)"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:143,1"
      Dst: "[java.lang.ThreadLocal].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.FastThreadLocalRunnable].wrap(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocalRunnable"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 2
    returnType: "java.lang.Runnable"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].<init>(java.lang.Runnable)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.FastThreadLocalRunnable:37"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocalRunnable:36"
        BranchSideFuncs:
        - "<init>(java.lang.Runnable)"
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocalRunnable:37,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocalRunnable].<init>(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].<init>()"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.http.HttpClientCodec].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:232,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:233,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 236
    functionLinenumberEnd: 239
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:237,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 177
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].<init>(io.netty.channel.CombinedChannelDuplexHandler,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelHandler)"
    - "[io.netty.handler.codec.compression.BrotliDecoder].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.SslHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelInitializer].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.MessageAggregator].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.HttpContentDecoder].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.timeout.IdleStateHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.stream.ChunkedWriteHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ChannelDuplexHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.ApplicationProtocolNegotiationHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.proxy.ProxyHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.CleartextHttp2ServerUpgradeHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.flush.FlushConsolidationHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandlerAdapter].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.flow.FlowControlHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.ByteToMessageCodec].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.DatagramPacketDecoder].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.HttpContentCompressor].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.compression.ZstdEncoder].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.compression.JZlibEncoder].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.compression.Bzip2Encoder].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.DatagramPacketEncoder].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionUses: 5
    ICount: 41
    EdgeCount: 102
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:129"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:136"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "getSimpleName()"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:135"
        BranchSideFuncs:
        - "handlerAdded(io.netty.channel.ChannelHandlerContext)"
        - "<init>(io.netty.channel.CombinedChannelDuplexHandler,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelHandler)"
        - "<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelHandler)"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:130,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:130,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:131,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:132,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:132,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:136,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:137,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$1].<init>(io.netty.channel.CombinedChannelDuplexHandler,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:172,1"
      Dst: "[io.netty.channel.ChannelHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 367
    functionLinenumberEnd: 372
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:368,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 241
    functionLinenumberEnd: 244
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:242,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 186
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].remove()"
    functionUses: 3
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:181,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].remove()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].remove()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 590
    functionLinenumberEnd: 603
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].remove0()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].<init>(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 5
    ICount: 10
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:592"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:595"
        BranchSideFuncs:
        - "remove0()"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:594"
        BranchSideFuncs:
        - "run()"
        - "<init>(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
        - "execute(java.lang.Runnable)"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:591,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:592,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:593,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].remove0()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:595,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].<init>(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:595,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 379
    functionLinenumberEnd: 381
    functionDepth: 0
    returnType: "io.netty.util.concurrent.EventExecutor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    functionUses: 64
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:380,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 246
    functionLinenumberEnd: 249
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:247,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 236
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.handler.flush.FlushConsolidationHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.marshalling.CompatibleMarshallingDecoder].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.proxy.ProxyHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.pcap.PcapWriteHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$2].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.ssl.ApplicationProtocolNegotiationHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.DatagramPacketDecoder].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.logging.LoggingHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.channel.ChannelInitializer].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelInboundHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionUses: 4
    ICount: 21
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:229"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:230"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:229"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:230"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:230"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:233"
        BranchSideFuncs:
        - "exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:232"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:229,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:229,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:231,1"
      Dst: "[io.netty.channel.ChannelInboundHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:233,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 361
    functionLinenumberEnd: 363
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 251
    functionLinenumberEnd: 254
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:252,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 196
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelInitializer].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.logging.LoggingHandler].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.timeout.IdleStateHandler].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ipfilter.AbstractRemoteAddressFilter].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.DatagramPacketDecoder].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRegistered()"
    - "[io.netty.channel.ChannelInboundHandler].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    functionUses: 4
    ICount: 20
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:189"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:190"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:189"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:189"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:190"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:189"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:190"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:193"
        BranchSideFuncs:
        - "channelRegistered(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:192"
        BranchSideFuncs:
        - "fireChannelRegistered()"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:189,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:189,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:191,1"
      Dst: "[io.netty.channel.ChannelInboundHandler].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:193,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRegistered()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRegistered()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 399
    functionLinenumberEnd: 402
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRegistered()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRegistered()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRegistered()"
    functionUses: 7
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:400,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRegistered()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].channelUnregistered(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 256
    functionLinenumberEnd: 259
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].channelUnregistered(io.netty.channel.ChannelHandlerContext)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:257,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].channelUnregistered(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].channelUnregistered(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 206
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.handler.codec.DatagramPacketDecoder].channelUnregistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].channelUnregistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelUnregistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.logging.LoggingHandler].channelUnregistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].channelUnregistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].channelUnregistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].channelUnregistered(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelUnregistered()"
    - "[io.netty.channel.ChannelInboundHandler].channelUnregistered(io.netty.channel.ChannelHandlerContext)"
    functionUses: 4
    ICount: 20
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:199"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:200"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:199"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:199"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:200"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:199"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:200"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:203"
        BranchSideFuncs:
        - "channelUnregistered(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:202"
        BranchSideFuncs:
        - "fireChannelUnregistered()"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:199,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:199,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:201,1"
      Dst: "[io.netty.channel.ChannelInboundHandler].channelUnregistered(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:203,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelUnregistered()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelUnregistered()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 405
    functionLinenumberEnd: 408
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelUnregistered()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelUnregistered()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelUnregistered()"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:406,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelUnregistered()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].channelActive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 264
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:262,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 216
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.logging.LoggingHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.SslHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.DatagramPacketDecoder].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.timeout.IdleStateHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.proxy.ProxyHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.pcap.PcapWriteHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ipfilter.AbstractRemoteAddressFilter].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelActive()"
    - "[io.netty.channel.ChannelInboundHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    functionUses: 4
    ICount: 20
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:209"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:210"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:209"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:209"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:210"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:209"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:210"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:213"
        BranchSideFuncs:
        - "channelActive(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:212"
        BranchSideFuncs:
        - "fireChannelActive()"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:209,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:209,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:211,1"
      Dst: "[io.netty.channel.ChannelInboundHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:213,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelActive()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelActive()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 411
    functionLinenumberEnd: 414
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelActive()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelActive()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelActive()"
    functionUses: 8
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:412,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelActive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 269
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:267,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 226
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.HttpContentDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.ApplicationProtocolNegotiationHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.HttpContentEncoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.timeout.IdleStateHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.proxy.ProxyHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.HttpClientCodec$Decoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.compression.BrotliDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.stream.ChunkedWriteHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.MessageAggregator].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.ByteToMessageCodec].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.spdy.SpdyHttpDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.SslHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.DatagramPacketDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.logging.LoggingHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.flow.FlowControlHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$2].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelInactive()"
    - "[io.netty.channel.ChannelInboundHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionUses: 4
    ICount: 20
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:219"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:220"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:219"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:219"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:220"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:219"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:220"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:223"
        BranchSideFuncs:
        - "channelInactive(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:222"
        BranchSideFuncs:
        - "fireChannelInactive()"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:219,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:219,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:221,1"
      Dst: "[io.netty.channel.ChannelInboundHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:223,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelInactive()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelInactive()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 417
    functionLinenumberEnd: 420
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelInactive()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelInactive()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelInactive()"
    functionUses: 13
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:418,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelInactive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 274
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:272,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 248
    functionLinenumberEnd: 256
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$2].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.MessageToMessageDecoder].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.flush.FlushConsolidationHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.timeout.IdleStateHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.channel.SimpleChannelInboundHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.ByteToMessageCodec].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http.cors.CorsHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpServerKeepAliveHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http2.InboundHttpToHttp2Adapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.proxy.ProxyHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpServerExpectContinueHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.flow.FlowControlHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.pcap.PcapWriteHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.logging.LoggingHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.MessageToMessageCodec].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.ssl.ApplicationProtocolNegotiationHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelInboundHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionUses: 4
    ICount: 21
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:249"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:250"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:249"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:249"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:250"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:249"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:250"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:253"
        BranchSideFuncs:
        - "channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:252"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:249,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:249,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:251,1"
      Dst: "[io.netty.channel.ChannelInboundHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:253,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 435
    functionLinenumberEnd: 438
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 43
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:436,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 279
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:277,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 258
    functionLinenumberEnd: 266
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.logging.LoggingHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.ByteToMessageCodec].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.proxy.ProxyHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.MessageAggregator].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.HttpContentDecoder].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.flush.FlushConsolidationHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.SslHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.flow.FlowControlHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.timeout.IdleStateHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.DatagramPacketDecoder].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelInboundHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    functionUses: 4
    ICount: 20
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:259"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:260"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:259"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:259"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:260"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:259"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:260"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:263"
        BranchSideFuncs:
        - "channelReadComplete(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:262"
        BranchSideFuncs:
        - "fireChannelReadComplete()"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:259,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:259,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:261,1"
      Dst: "[io.netty.channel.ChannelInboundHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:263,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelReadComplete()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelReadComplete()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 441
    functionLinenumberEnd: 444
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    functionUses: 20
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:442,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 281
    functionLinenumberEnd: 284
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:282,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 246
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.channel.SimpleUserEventChannelHandler].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.ssl.SslMasterKeyHandler].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.logging.LoggingHandler].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.ssl.ocsp.OcspClientHandler].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectDecoder].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.DatagramPacketDecoder].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.ssl.ApplicationProtocolNegotiationHandler].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.ChannelInboundHandler].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionUses: 4
    ICount: 21
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:239"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:240"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:239"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:239"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:240"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:239"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:240"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:243"
        BranchSideFuncs:
        - "userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:242"
        BranchSideFuncs:
        - "fireUserEventTriggered(java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:239,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:239,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:241,1"
      Dst: "[io.netty.channel.ChannelInboundHandler].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:243,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 429
    functionLinenumberEnd: 432
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    functionUses: 38
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:430,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 289
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:287,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 268
    functionLinenumberEnd: 276
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.stream.ChunkedWriteHandler].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.logging.LoggingHandler].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.DatagramPacketDecoder].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.flush.FlushConsolidationHandler].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelWritabilityChanged()"
    - "[io.netty.channel.ChannelInboundHandler].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    functionUses: 4
    ICount: 20
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:269"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:270"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:269"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:269"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:270"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:269"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:270"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:273"
        BranchSideFuncs:
        - "channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:272"
        BranchSideFuncs:
        - "fireChannelWritabilityChanged()"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:269,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:269,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:271,1"
      Dst: "[io.netty.channel.ChannelInboundHandler].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:273,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelWritabilityChanged()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelWritabilityChanged()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 447
    functionLinenumberEnd: 450
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelWritabilityChanged()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelWritabilityChanged()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelWritabilityChanged()"
    functionUses: 8
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:448,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelWritabilityChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 292
    functionLinenumberEnd: 295
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:293,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 280
    functionLinenumberEnd: 288
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.HttpClientUpgradeHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundHandlerAdapter].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelDuplexHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.ssl.SslHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.DatagramPacketEncoder].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.ssl.SslClientHelloHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.logging.LoggingHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 4
    ICount: 22
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:281"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:282"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:281"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:281"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:282"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:281"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:282"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:285"
        BranchSideFuncs:
        - "bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:284"
        BranchSideFuncs:
        - "bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:281,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:281,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:283,1"
      Dst: "[io.netty.channel.ChannelOutboundHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:285,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 483
    functionLinenumberEnd: 485
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 11
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:484,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 298
    functionLinenumberEnd: 301
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:299,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 293
    functionLinenumberEnd: 301
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.handler.ssl.SslHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.ssl.SslClientHelloHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundHandlerAdapter].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.DatagramPacketEncoder].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.logging.LoggingHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelDuplexHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.proxy.ProxyHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.address.ResolveAddressHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.address.DynamicAddressConnectHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.HttpClientUpgradeHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 4
    ICount: 23
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:294"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:295"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:294"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:294"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:295"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:294"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:295"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:298"
        BranchSideFuncs:
        - "connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:297"
        BranchSideFuncs:
        - "connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:294,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:294,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:296,1"
      Dst: "[io.netty.channel.ChannelOutboundHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:298,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 494
    functionLinenumberEnd: 496
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 15
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:495,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 303
    functionLinenumberEnd: 306
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:304,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 303
    functionLinenumberEnd: 311
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.HttpClientUpgradeHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.ssl.SslClientHelloHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.ssl.SslHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.DatagramPacketEncoder].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundHandlerAdapter].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.logging.LoggingHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.flush.FlushConsolidationHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelDuplexHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 4
    ICount: 21
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:304"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:305"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:304"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:304"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:305"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:304"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:305"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:308"
        BranchSideFuncs:
        - "disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:307"
        BranchSideFuncs:
        - "disconnect(io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:304,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:304,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:306,1"
      Dst: "[io.netty.channel.ChannelOutboundHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:308,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 499
    functionLinenumberEnd: 501
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    functionUses: 12
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:500,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 308
    functionLinenumberEnd: 311
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:309,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 313
    functionLinenumberEnd: 321
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.compression.Bzip2Encoder].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.flush.FlushConsolidationHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.ssl.SslClientHelloHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.logging.LoggingHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelDuplexHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.HttpClientUpgradeHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.DatagramPacketEncoder].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.ssl.SslHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.compression.JZlibEncoder].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundHandlerAdapter].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 4
    ICount: 21
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:314"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:315"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:314"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:314"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:315"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:314"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:315"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:318"
        BranchSideFuncs:
        - "close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:317"
        BranchSideFuncs:
        - "close(io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:314,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:314,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:316,1"
      Dst: "[io.netty.channel.ChannelOutboundHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:318,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 504
    functionLinenumberEnd: 506
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 30
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:505,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 313
    functionLinenumberEnd: 316
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:314,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 323
    functionLinenumberEnd: 331
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelDuplexHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.ssl.SslClientHelloHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.DatagramPacketEncoder].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.logging.LoggingHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.HttpClientUpgradeHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundHandlerAdapter].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.ssl.SslHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 4
    ICount: 21
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:324"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:325"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:324"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:324"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:325"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:324"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:325"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:328"
        BranchSideFuncs:
        - "deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:327"
        BranchSideFuncs:
        - "deregister(io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:324,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:324,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:326,1"
      Dst: "[io.netty.channel.ChannelOutboundHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:328,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 509
    functionLinenumberEnd: 511
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].deregister(io.netty.channel.ChannelPromise)"
    functionUses: 11
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:510,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].deregister(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].read(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 318
    functionLinenumberEnd: 321
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].read(io.netty.channel.ChannelHandlerContext)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:319,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].read(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].read(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 333
    functionLinenumberEnd: 341
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.handler.codec.DatagramPacketEncoder].read(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.flow.FlowControlHandler].read(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].read(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].read(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelDuplexHandler].read(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].read(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].read(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.SslHandler].read(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.HttpClientUpgradeHandler].read(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].read(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelOutboundHandlerAdapter].read(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.SslClientHelloHandler].read(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].read(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].read(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].read(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].read(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].read()"
    - "[io.netty.channel.ChannelOutboundHandler].read(io.netty.channel.ChannelHandlerContext)"
    functionUses: 4
    ICount: 20
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:334"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:335"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:334"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:334"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:335"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:334"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:335"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:338"
        BranchSideFuncs:
        - "read(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:337"
        BranchSideFuncs:
        - "read()"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:334,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:334,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:336,1"
      Dst: "[io.netty.channel.ChannelOutboundHandler].read(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:338,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].read()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].read()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 514
    functionLinenumberEnd: 517
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].read()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].read()"
    - "[io.netty.channel.ChannelHandlerContext].read()"
    functionUses: 24
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:515,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 323
    functionLinenumberEnd: 326
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:324,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 343
    functionLinenumberEnd: 351
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.handler.codec.http.HttpObjectEncoder].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.MessageToByteEncoder].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.ssl.SslClientHelloHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.MessageToMessageEncoder].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelDuplexHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundHandlerAdapter].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.HttpServerKeepAliveHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.MessageToMessageCodec].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.pcap.PcapWriteHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.ByteToMessageCodec].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.HttpClientUpgradeHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.timeout.WriteTimeoutHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.proxy.ProxyHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.stream.ChunkedWriteHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.ssl.SslHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.logging.LoggingHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.timeout.IdleStateHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.cors.CorsHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 4
    ICount: 22
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:344"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:345"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:344"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:344"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:345"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:344"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:345"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:348"
        BranchSideFuncs:
        - "write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:347"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:344,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:344,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:346,1"
      Dst: "[io.netty.channel.ChannelOutboundHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:348,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 525
    functionLinenumberEnd: 527
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 85
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:526,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].flush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: 328
    functionLinenumberEnd: 331
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].flush(io.netty.channel.ChannelHandlerContext)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:329,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].flush(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].flush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 353
    functionLinenumberEnd: 361
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - "[io.netty.handler.codec.compression.ZstdEncoder].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.SslHandler].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.SslClientHelloHandler].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.DatagramPacketEncoder].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.HttpClientUpgradeHandler].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelDuplexHandler].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.logging.LoggingHandler].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.flush.FlushConsolidationHandler].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelOutboundHandlerAdapter].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.proxy.ProxyHandler].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.stream.ChunkedWriteHandler].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.ChannelOutboundHandler].flush(io.netty.channel.ChannelHandlerContext)"
    functionUses: 4
    ICount: 20
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:354"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:355"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:354"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:354"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:355"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:354"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:355"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:358"
        BranchSideFuncs:
        - "flush(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:357"
        BranchSideFuncs:
        - "flush()"
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:354,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].access$300(io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:354,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:356,1"
      Dst: "[io.netty.channel.ChannelOutboundHandler].flush(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:358,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 530
    functionLinenumberEnd: 533
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 32
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext:531,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].<init>(io.netty.handler.proxy.HttpProxyHandler$1)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.proxy.HttpProxyHandler$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper:232,1"
      Dst: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].<init>(io.netty.handler.logging.LogLevel)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.logging.LogLevel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].checkAndConvertLevel(io.netty.handler.logging.LogLevel)"
    - "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.Class)"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].<init>(io.netty.util.internal.logging.InternalLogLevel,io.netty.util.internal.logging.InternalLogger)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:46,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].checkAndConvertLevel(io.netty.handler.logging.LogLevel)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:46,1"
      Dst: "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.Class)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:46,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].<init>(io.netty.util.internal.logging.InternalLogLevel,io.netty.util.internal.logging.InternalLogger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].<init>(io.netty.handler.logging.LogLevel,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.logging.LogLevel"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].checkAndConvertLevel(io.netty.handler.logging.LogLevel)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].<init>(io.netty.util.internal.logging.InternalLogLevel,io.netty.util.internal.logging.InternalLogger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:50,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].checkAndConvertLevel(io.netty.handler.logging.LogLevel)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:50,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:50,1"
      Dst: "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:50,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].<init>(io.netty.util.internal.logging.InternalLogLevel,io.netty.util.internal.logging.InternalLogger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].<init>(io.netty.handler.logging.LogLevel,java.lang.Class)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.logging.LogLevel"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].checkAndConvertLevel(io.netty.handler.logging.LogLevel)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.Class)"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].<init>(io.netty.util.internal.logging.InternalLogLevel,io.netty.util.internal.logging.InternalLogger)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:54,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].checkAndConvertLevel(io.netty.handler.logging.LogLevel)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:54,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:54,1"
      Dst: "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.Class)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:54,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].<init>(io.netty.util.internal.logging.InternalLogLevel,io.netty.util.internal.logging.InternalLogger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].<init>(io.netty.util.internal.logging.InternalLogLevel,io.netty.util.internal.logging.InternalLogger)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.logging.InternalLogLevel"
    - "io.netty.util.internal.logging.InternalLogger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerAdapter].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:57,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].checkAndConvertLevel(io.netty.handler.logging.LogLevel)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.internal.logging.InternalLogLevel"
    argCount: 1
    argTypes:
    - "io.netty.handler.logging.LogLevel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.logging.LogLevel].toInternalLevel()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:63,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:63,1"
      Dst: "[io.netty.handler.logging.LogLevel].toInternalLevel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    functionUses: 12
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:67,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].logData(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 77
    functionDepth: 6
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameLogger$Direction"
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:java.lang.Enum].name()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].toString(io.netty.buffer.ByteBuf)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[java.lang.Enum].name()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 29
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameLogger:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:76"
        BranchSideFuncs:
        - "channel()"
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:72,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:73,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:74,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:74,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:74,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:74,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:74,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].toString(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:73,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].toString(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 175
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufUtil].hexDump(io.netty.buffer.ByteBuf)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.buffer.ByteBufUtil].hexDump(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    functionUses: 3
    ICount: 19
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameLogger:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:168"
        BranchSideFuncs:
        - "hexDump(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.http2.Http2FrameLogger:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:172"
        BranchSideFuncs:
        - "min(int,int)"
        - "<init>()"
        - "hexDump(io.netty.buffer.ByteBuf,int,int)"
        - "append(java.lang.String)"
        - "toString()"
        - "readerIndex()"
        - "readableBytes()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:167,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:169,1"
      Dst: "[io.netty.buffer.ByteBufUtil].hexDump(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:173,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:174,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:174,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:174,1"
      Dst: "[io.netty.buffer.ByteBufUtil].hexDump(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:174,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:174,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].hexDump(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].hexDump(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 6
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:135,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.ByteBufUtil:135,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.ByteBufUtil:135,1"
      Dst: "[io.netty.buffer.ByteBufUtil].hexDump(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].hexDump(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil$HexUtil].access$000(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:143,1"
      Dst: "[io.netty.buffer.ByteBufUtil$HexUtil].access$000(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$HexUtil].access$000(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$HexUtil"
    linkageType: ""
    functionLinenumber: 1419
    functionLinenumberEnd: 1421
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil$HexUtil].hexDump(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1420,1"
      Dst: "[io.netty.buffer.ByteBufUtil$HexUtil].hexDump(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$HexUtil].hexDump(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$HexUtil"
    linkageType: ""
    functionLinenumber: 1483
    functionLinenumberEnd: 1501
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedByte(int)"
    - "[java.lang.String].<init>(char[])"
    - "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    functionUses: 1
    ICount: 23
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil$HexUtil:1485"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1489"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1488"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil$HexUtil:1494"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1499"
        BranchSideFuncs:
        - "<init>(char[])"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1484,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1496,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1495,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1500,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].logHeaders(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 85
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameLogger$Direction"
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[java.lang.Enum].name()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 25
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameLogger:80"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:84"
        BranchSideFuncs:
        - "channel()"
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:80,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:81,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:82,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:82,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:82,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:81,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].logHeaders(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 94
    functionDepth: 1
    returnType: "void"
    argCount: 9
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameLogger$Direction"
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "short"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[java.lang.Enum].name()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Short].valueOf(short)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 34
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameLogger:88"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:88,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:90,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:91,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:91,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:91,1"
      Dst: "[java.lang.Short].valueOf(short)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:91,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:89,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].logPriority(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 102
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameLogger$Direction"
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    - "short"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[java.lang.Enum].name()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Short].valueOf(short)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 26
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameLogger:97"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:101"
        BranchSideFuncs:
        - "channel()"
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:100"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:97,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:98,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:99,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:99,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:99,1"
      Dst: "[java.lang.Short].valueOf(short)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:99,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:98,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].logRstStream(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 109
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameLogger$Direction"
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[java.lang.Enum].name()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Long].valueOf(long)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 20
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameLogger:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:108"
        BranchSideFuncs:
        - "channel()"
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:104,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:105,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:106,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:106,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:106,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:105,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].logSettingsAck(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameLogger$Direction"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.Enum].name()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:111,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:111,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:111,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].logSettings(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 119
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameLogger$Direction"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[java.lang.Enum].name()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 16
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameLogger:115"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:118"
        BranchSideFuncs:
        - "name()"
        - "channel()"
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:115,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:116,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:116,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:116,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].logPing(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 126
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameLogger$Direction"
    - "io.netty.channel.ChannelHandlerContext"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[java.lang.Enum].name()"
    - "[java.lang.Long].valueOf(long)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 17
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameLogger:121"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:125"
        BranchSideFuncs:
        - "channel()"
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:121,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:122,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:123,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:123,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:122,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].logPingAck(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 133
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameLogger$Direction"
    - "io.netty.channel.ChannelHandlerContext"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[java.lang.Enum].name()"
    - "[java.lang.Long].valueOf(long)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 17
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameLogger:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:132"
        BranchSideFuncs:
        - "channel()"
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:128,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:129,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:130,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:130,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:129,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].logPushPromise(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 141
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameLogger$Direction"
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[java.lang.Enum].name()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 25
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameLogger:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:136,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:138,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:138,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:138,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:137,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].logGoAway(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 149
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameLogger$Direction"
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[java.lang.Enum].name()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].toString(io.netty.buffer.ByteBuf)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Long].valueOf(long)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 26
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameLogger:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:148"
        BranchSideFuncs:
        - "channel()"
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:144,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:145,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:146,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:146,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:146,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:146,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:146,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].toString(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:145,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].logWindowsUpdate(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 157
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameLogger$Direction"
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[java.lang.Enum].name()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 20
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameLogger:152"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:156"
        BranchSideFuncs:
        - "channel()"
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:155"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:152,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:153,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:154,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:154,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:153,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameLogger].logUnknownFrame(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameLogger"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 165
    functionDepth: 6
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameLogger$Direction"
    - "io.netty.channel.ChannelHandlerContext"
    - "byte"
    - "int"
    - "io.netty.handler.codec.http2.Http2Flags"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    - "[java.lang.Enum].name()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].toString(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2Flags].value()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Short].valueOf(short)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 33
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameLogger:160"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:164"
        BranchSideFuncs:
        - "channel()"
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameLogger:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:160,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].isEnabled()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:161,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:162,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:162,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:162,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].value()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:162,1"
      Dst: "[java.lang.Short].valueOf(short)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:162,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:162,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].toString(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.Http2FrameLogger:161,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf$Component].<init>(int,int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf$Component"
    linkageType: ""
    functionLinenumber: 681
    functionLinenumberEnd: 687
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 1
    ICount: 11
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf$Component:682,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf$Component:685,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf$Component"
    linkageType: ""
    functionLinenumber: 675
    functionLinenumberEnd: 677
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.FixedCompositeByteBuf$Component"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$100(io.netty.buffer.FixedCompositeByteBuf$Component)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf$Component"
    linkageType: ""
    functionLinenumber: 675
    functionLinenumberEnd: 677
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.FixedCompositeByteBuf$Component"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$200(io.netty.buffer.FixedCompositeByteBuf$Component)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf$Component"
    linkageType: ""
    functionLinenumber: 675
    functionLinenumberEnd: 677
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.FixedCompositeByteBuf$Component"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.NativeStaticallyReferencedJniMethods].<init>()"
    functionSourceFile: "io.netty.channel.epoll.NativeStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.NativeStaticallyReferencedJniMethods:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.NativeStaticallyReferencedJniMethods].epollin()"
    functionSourceFile: "io.netty.channel.epoll.NativeStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.NativeStaticallyReferencedJniMethods].epollout()"
    functionSourceFile: "io.netty.channel.epoll.NativeStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.NativeStaticallyReferencedJniMethods].epollrdhup()"
    functionSourceFile: "io.netty.channel.epoll.NativeStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.NativeStaticallyReferencedJniMethods].epollet()"
    functionSourceFile: "io.netty.channel.epoll.NativeStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.NativeStaticallyReferencedJniMethods].epollerr()"
    functionSourceFile: "io.netty.channel.epoll.NativeStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.NativeStaticallyReferencedJniMethods].ssizeMax()"
    functionSourceFile: "io.netty.channel.epoll.NativeStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.NativeStaticallyReferencedJniMethods].tcpMd5SigMaxKeyLen()"
    functionSourceFile: "io.netty.channel.epoll.NativeStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.NativeStaticallyReferencedJniMethods].iovMax()"
    functionSourceFile: "io.netty.channel.epoll.NativeStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.NativeStaticallyReferencedJniMethods].uioMaxIov()"
    functionSourceFile: "io.netty.channel.epoll.NativeStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.NativeStaticallyReferencedJniMethods].isSupportingSendmmsg()"
    functionSourceFile: "io.netty.channel.epoll.NativeStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.NativeStaticallyReferencedJniMethods].isSupportingRecvmmsg()"
    functionSourceFile: "io.netty.channel.epoll.NativeStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.NativeStaticallyReferencedJniMethods].tcpFastopenMode()"
    functionSourceFile: "io.netty.channel.epoll.NativeStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.NativeStaticallyReferencedJniMethods].kernelVersion()"
    functionSourceFile: "io.netty.channel.epoll.NativeStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$ToSend].<init>(long,java.lang.Object,long,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$ToSend"
    linkageType: ""
    functionLinenumber: 602
    functionLinenumberEnd: 609
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "java.lang.Object"
    - "long"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$ToSend:603,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$ToSend].<init>(long,java.lang.Object,long,io.netty.channel.ChannelPromise,io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1)"
    functionSourceFile: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$ToSend"
    linkageType: ""
    functionLinenumber: 596
    functionLinenumberEnd: 598
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "long"
    - "java.lang.Object"
    - "long"
    - "io.netty.channel.ChannelPromise"
    - "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$ToSend].<init>(long,java.lang.Object,long,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$ToSend:597,1"
      Dst: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$ToSend].<init>(long,java.lang.Object,long,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator"
    linkageType: ""
    functionLinenumber: 386
    functionLinenumberEnd: 388
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator:387,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator].validate(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator"
    linkageType: ""
    functionLinenumber: 391
    functionLinenumberEnd: 398
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpHeaderValidationUtil].validateValidHeaderValue(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator:393"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator:397"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "toHexString(int)"
        - "charAt(int)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator:396"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator:392,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaderValidationUtil].validateValidHeaderValue(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator:394,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator:394,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator:395,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator:395,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator:395,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator:395,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator:395,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator:395,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpHeaderValidationUtil].validateValidHeaderValue(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.HttpHeaderValidationUtil"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 115
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[io.netty.util.AsciiString:io.netty.util.internal.AppendableCharSequence:java.lang.AbstractStringBuilder:java.lang.StringBuffer:java.lang.StringBuilder:java.nio.CharBuffer].length()"
    - "[io.netty.handler.codec.http.HttpHeaderValidationUtil].verifyValidHeaderValueAsciiString(io.netty.util.AsciiString)"
    - "[io.netty.handler.codec.http.HttpHeaderValidationUtil].verifyValidHeaderValueCharSequence(java.lang.CharSequence)"
    - "[java.lang.CharSequence].length()"
    functionUses: 2
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:111"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:114"
        BranchSideFuncs:
        - "verifyValidHeaderValueAsciiString(io.netty.util.AsciiString)"
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:113"
        BranchSideFuncs:
        - "verifyValidHeaderValueCharSequence(java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpHeaderValidationUtil:107,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http.HttpHeaderValidationUtil:112,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaderValidationUtil].verifyValidHeaderValueAsciiString(io.netty.util.AsciiString)"
    - Src: "io.netty.handler.codec.http.HttpHeaderValidationUtil:114,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaderValidationUtil].verifyValidHeaderValueCharSequence(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpHeaderValidationUtil].verifyValidHeaderValueAsciiString(io.netty.util.AsciiString)"
    functionSourceFile: "io.netty.handler.codec.http.HttpHeaderValidationUtil"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 141
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.AsciiString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].array()"
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[io.netty.util.AsciiString].length()"
    functionUses: 1
    ICount: 29
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:130"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:131"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:130"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:130"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:133"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:132"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:137"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:133"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:132"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpHeaderValidationUtil:127,1"
      Dst: "[io.netty.util.AsciiString].array()"
    - Src: "io.netty.handler.codec.http.HttpHeaderValidationUtil:128,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.handler.codec.http.HttpHeaderValidationUtil:133,1"
      Dst: "[io.netty.util.AsciiString].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.HttpHeaderValidationUtil].verifyValidHeaderValueCharSequence(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.HttpHeaderValidationUtil"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 165
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.lang.CharSequence].length()"
    functionUses: 1
    ICount: 22
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:154"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:155"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:154"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:154"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:156"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:158"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:null"
        BranchSideFuncs:
        - "charAt(int)"
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:160"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:160"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:161"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:160"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpHeaderValidationUtil:160"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpHeaderValidationUtil:156"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpHeaderValidationUtil:153,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.http.HttpHeaderValidationUtil:157,1"
      Dst: "[java.lang.CharSequence].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator].validate(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator"
    linkageType: ""
    functionLinenumber: 386
    functionLinenumberEnd: 388
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator].validate(java.lang.CharSequence)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator:387,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueValidator].validate(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeDirectSwappedByteBuf].<init>(io.netty.buffer.AbstractByteBuf)"
    functionSourceFile: "io.netty.buffer.UnsafeDirectSwappedByteBuf"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].<init>(io.netty.buffer.AbstractByteBuf)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeDirectSwappedByteBuf:27,1"
      Dst: "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].<init>(io.netty.buffer.AbstractByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeDirectSwappedByteBuf].addr(io.netty.buffer.AbstractByteBuf,int)"
    functionSourceFile: "io.netty.buffer.UnsafeDirectSwappedByteBuf"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    functionUses: 6
    ICount: 6
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeDirectSwappedByteBuf:35,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeDirectSwappedByteBuf]._getLong(io.netty.buffer.AbstractByteBuf,int)"
    functionSourceFile: "io.netty.buffer.UnsafeDirectSwappedByteBuf"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 2
    returnType: "long"
    argCount: 2
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeDirectSwappedByteBuf].addr(io.netty.buffer.AbstractByteBuf,int)"
    - "[io.netty.util.internal.PlatformDependent].getLong(long)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeDirectSwappedByteBuf:40,1"
      Dst: "[io.netty.buffer.UnsafeDirectSwappedByteBuf].addr(io.netty.buffer.AbstractByteBuf,int)"
    - Src: "io.netty.buffer.UnsafeDirectSwappedByteBuf:40,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].getLong(long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 570
    functionLinenumberEnd: 572
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getLong(long)"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:571,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].getLong(long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 643
    functionLinenumberEnd: 645
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getLong(long)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:644,1"
      Dst: "[sun.misc.Unsafe].getLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeDirectSwappedByteBuf]._getInt(io.netty.buffer.AbstractByteBuf,int)"
    functionSourceFile: "io.netty.buffer.UnsafeDirectSwappedByteBuf"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeDirectSwappedByteBuf].addr(io.netty.buffer.AbstractByteBuf,int)"
    - "[io.netty.util.internal.PlatformDependent].getInt(long)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeDirectSwappedByteBuf:45,1"
      Dst: "[io.netty.buffer.UnsafeDirectSwappedByteBuf].addr(io.netty.buffer.AbstractByteBuf,int)"
    - Src: "io.netty.buffer.UnsafeDirectSwappedByteBuf:45,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getInt(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].getInt(long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 566
    functionLinenumberEnd: 568
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getInt(long)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:567,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getInt(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].getInt(long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 639
    functionLinenumberEnd: 641
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getInt(long)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:640,1"
      Dst: "[sun.misc.Unsafe].getInt(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeDirectSwappedByteBuf]._getShort(io.netty.buffer.AbstractByteBuf,int)"
    functionSourceFile: "io.netty.buffer.UnsafeDirectSwappedByteBuf"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 2
    returnType: "short"
    argCount: 2
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeDirectSwappedByteBuf].addr(io.netty.buffer.AbstractByteBuf,int)"
    - "[io.netty.util.internal.PlatformDependent].getShort(long)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeDirectSwappedByteBuf:50,1"
      Dst: "[io.netty.buffer.UnsafeDirectSwappedByteBuf].addr(io.netty.buffer.AbstractByteBuf,int)"
    - Src: "io.netty.buffer.UnsafeDirectSwappedByteBuf:50,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getShort(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].getShort(long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 562
    functionLinenumberEnd: 564
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getShort(long)"
    functionUses: 8
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:563,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getShort(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].getShort(long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 635
    functionLinenumberEnd: 637
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getShort(long)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:636,1"
      Dst: "[sun.misc.Unsafe].getShort(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeDirectSwappedByteBuf]._setShort(io.netty.buffer.AbstractByteBuf,int,short)"
    functionSourceFile: "io.netty.buffer.UnsafeDirectSwappedByteBuf"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeDirectSwappedByteBuf].addr(io.netty.buffer.AbstractByteBuf,int)"
    - "[io.netty.util.internal.PlatformDependent].putShort(long,short)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeDirectSwappedByteBuf:55,1"
      Dst: "[io.netty.buffer.UnsafeDirectSwappedByteBuf].addr(io.netty.buffer.AbstractByteBuf,int)"
    - Src: "io.netty.buffer.UnsafeDirectSwappedByteBuf:55,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putShort(long,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].putShort(long,short)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 702
    functionLinenumberEnd: 705
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].putShort(long,short)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:703,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].putShort(long,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].putShort(long,short)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 687
    functionLinenumberEnd: 690
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].putShort(long,short)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:688,1"
      Dst: "[sun.misc.Unsafe].putShort(long,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeDirectSwappedByteBuf]._setInt(io.netty.buffer.AbstractByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.UnsafeDirectSwappedByteBuf"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeDirectSwappedByteBuf].addr(io.netty.buffer.AbstractByteBuf,int)"
    - "[io.netty.util.internal.PlatformDependent].putInt(long,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeDirectSwappedByteBuf:60,1"
      Dst: "[io.netty.buffer.UnsafeDirectSwappedByteBuf].addr(io.netty.buffer.AbstractByteBuf,int)"
    - Src: "io.netty.buffer.UnsafeDirectSwappedByteBuf:60,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putInt(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeDirectSwappedByteBuf]._setLong(io.netty.buffer.AbstractByteBuf,int,long)"
    functionSourceFile: "io.netty.buffer.UnsafeDirectSwappedByteBuf"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeDirectSwappedByteBuf].addr(io.netty.buffer.AbstractByteBuf,int)"
    - "[io.netty.util.internal.PlatformDependent].putLong(long,long)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeDirectSwappedByteBuf:65,1"
      Dst: "[io.netty.buffer.UnsafeDirectSwappedByteBuf].addr(io.netty.buffer.AbstractByteBuf,int)"
    - Src: "io.netty.buffer.UnsafeDirectSwappedByteBuf:65,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putLong(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2HuffmanAllocator].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2HuffmanAllocator:183,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttFixedHeader].remainingLength()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttFixedHeader"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttFixedHeader].toString()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttFixedHeader"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 78
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 20
    ICount: 23
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttFixedHeader:69,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttFixedHeader:69,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttFixedHeader:70,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.mqtt.MqttFixedHeader:71,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttFixedHeader:71,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttFixedHeader:72,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "io.netty.handler.codec.mqtt.MqttFixedHeader:75,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttFixedHeader:77,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].getByte(byte[],int)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionDepth: 0
    returnType: "byte"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].getShort(byte[],int)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "short"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].getShortLE(byte[],int)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "short"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].getUnsignedMedium(byte[],int)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].getUnsignedMediumLE(byte[],int)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].getInt(byte[],int)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].getIntLE(byte[],int)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].getLong(byte[],int)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 48
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].getLongLE(byte[],int)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 48
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].setByte(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].setShort(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].setShortLE(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].setMedium(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].setMediumLE(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].setInt(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].setIntLE(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].setLong(byte[],int,long)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 133
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 42
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].setLongLE(byte[],int,long)"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.HeapByteBufUtil].<init>()"
    functionSourceFile: "io.netty.buffer.HeapByteBufUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.HeapByteBufUtil:145,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].<init>(io.netty.handler.codec.http2.Http2Error)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2Error].code()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:36,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:37,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:37,1"
      Dst: "[io.netty.handler.codec.http2.Http2Error].code()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].name()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].errorCode()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].toString()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(long)"
    functionUses: 20
    ICount: 14
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:67,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:67,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:67,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:67,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:67,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:67,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:67,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:67,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].equals(java.lang.Object)"
    functionUses: 9
    ICount: 16
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:75"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:74"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:74"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:74"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:76,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].hashCode()"
    functionUses: 5
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ResetFrame:81,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].<init>(io.netty.channel.kqueue.AbstractKQueueStreamChannel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.kqueue.AbstractKQueueStreamChannel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$2:410,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    functionSourceFile: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$2"
    linkageType: ""
    functionLinenumber: 412
    functionLinenumberEnd: 415
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].shutdownOutput(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    functionUses: 49
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$2:413,1"
      Dst: "[io.netty.channel.AbstractChannel].unsafe()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$2:413,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].shutdownOutput(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,int)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.InetSocketAddress"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:43,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponse].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,int,io.netty.handler.codec.dns.DnsOpCode)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.InetSocketAddress"
    - "int"
    - "io.netty.handler.codec.dns.DnsOpCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:55,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponse].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].content()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].recipient()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 34
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].setAuthoritativeAnswer(boolean)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].setAuthoritativeAnswer(boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:97,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].setAuthoritativeAnswer(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].setAuthoritativeAnswer(boolean)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].setTruncated(boolean)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].setTruncated(boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:102,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].setTruncated(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].setTruncated(boolean)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].setRecursionAvailable(boolean)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].setRecursionAvailable(boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:107,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].setRecursionAvailable(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].setRecursionAvailable(boolean)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].setCode(io.netty.handler.codec.dns.DnsResponseCode)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 2
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsResponseCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].setCode(io.netty.handler.codec.dns.DnsResponseCode)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:112,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].setCode(io.netty.handler.codec.dns.DnsResponseCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].setId(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].setId(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:117,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].setId(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].setId(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].setId(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:111,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].setId(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].setOpCode(io.netty.handler.codec.dns.DnsOpCode)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsOpCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].setOpCode(io.netty.handler.codec.dns.DnsOpCode)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:122,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].setOpCode(io.netty.handler.codec.dns.DnsOpCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].setOpCode(io.netty.handler.codec.dns.DnsOpCode)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsOpCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].setOpCode(io.netty.handler.codec.dns.DnsOpCode)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:116,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].setOpCode(io.netty.handler.codec.dns.DnsOpCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].setRecursionDesired(boolean)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].setRecursionDesired(boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:127,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].setRecursionDesired(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].setRecursionDesired(boolean)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].setRecursionDesired(boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:121,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].setRecursionDesired(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].setZ(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].setZ(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:132,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].setZ(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].setZ(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].setZ(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:126,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].setZ(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].setRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsSection"
    - "io.netty.handler.codec.dns.DnsRecord"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].setRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:137,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].setRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].setRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsSection"
    - "io.netty.handler.codec.dns.DnsRecord"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].setRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:131,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].setRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsSection"
    - "io.netty.handler.codec.dns.DnsRecord"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:142,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsSection"
    - "io.netty.handler.codec.dns.DnsRecord"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:136,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].addRecord(io.netty.handler.codec.dns.DnsSection,io.netty.handler.codec.dns.DnsRecord)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].addRecord(io.netty.handler.codec.dns.DnsSection,int,io.netty.handler.codec.dns.DnsRecord)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.dns.DnsSection"
    - "int"
    - "io.netty.handler.codec.dns.DnsRecord"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].addRecord(io.netty.handler.codec.dns.DnsSection,int,io.netty.handler.codec.dns.DnsRecord)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:147,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].addRecord(io.netty.handler.codec.dns.DnsSection,int,io.netty.handler.codec.dns.DnsRecord)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].addRecord(io.netty.handler.codec.dns.DnsSection,int,io.netty.handler.codec.dns.DnsRecord)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.dns.DnsSection"
    - "int"
    - "io.netty.handler.codec.dns.DnsRecord"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].addRecord(io.netty.handler.codec.dns.DnsSection,int,io.netty.handler.codec.dns.DnsRecord)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:141,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].addRecord(io.netty.handler.codec.dns.DnsSection,int,io.netty.handler.codec.dns.DnsRecord)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].clear(io.netty.handler.codec.dns.DnsSection)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsSection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].clear(io.netty.handler.codec.dns.DnsSection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:152,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].clear(io.netty.handler.codec.dns.DnsSection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].clear(io.netty.handler.codec.dns.DnsSection)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsSection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].clear(io.netty.handler.codec.dns.DnsSection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:146,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].clear(io.netty.handler.codec.dns.DnsSection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].clear()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].clear()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:157,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].clear()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].clear()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:151,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].touch()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].touch()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:162,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].touch()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].touch()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:156,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].touch(java.lang.Object)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:167,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].touch(java.lang.Object)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:161,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].retain()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].retain()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:172,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].retain()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].retain()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:166,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].retain(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DatagramDnsResponse"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:177,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].retain(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponse"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:171,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 208
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].equals(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].sender()"
    - "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].sender()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].sender()"
    - "[java.net.InetSocketAddress].equals(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].recipient()"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].recipient()"
    - "[io.netty.channel.AddressedEnvelope].sender()"
    - "[io.netty.channel.AddressedEnvelope].recipient()"
    functionUses: 10
    ICount: 33
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsResponse:182"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:186"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:185"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsResponse:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:190"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:189"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsResponse:190"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:195"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:194"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsResponse:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:200"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:199"
        BranchSideFuncs:
        - "sender()"
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsResponse:197"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsResponse:200"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsResponse:204"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:207"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:206"
        BranchSideFuncs:
        - "recipient()"
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsResponse:205"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:204"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:186,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:196,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponse].sender()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:197,1"
      Dst: "[io.netty.channel.AddressedEnvelope].sender()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:200,1"
      Dst: "[java.net.InetSocketAddress].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:204,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponse].recipient()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:205,1"
      Dst: "[io.netty.channel.AddressedEnvelope].recipient()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponse].hashCode()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponse"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 221
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].hashCode()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].sender()"
    - "[java.net.InetSocketAddress].hashCode()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].recipient()"
    functionUses: 6
    ICount: 16
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsResponse:214"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:217"
        BranchSideFuncs:
        - "sender()"
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:216"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsResponse:217"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:220"
        BranchSideFuncs:
        - "recipient()"
        - "hashCode()"
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsResponse:219"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:213,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].hashCode()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:214,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponse].sender()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:215,1"
      Dst: "[java.net.InetSocketAddress].hashCode()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponse:217,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponse].recipient()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2"
    linkageType: ""
    functionLinenumber: 732
    functionLinenumberEnd: 734
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2:733,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2"
    linkageType: ""
    functionLinenumber: 735
    functionLinenumberEnd: 747
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1000(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelInactive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$400(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$402(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelUnregistered()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].access$1100(io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPipeline].fireChannelInactive()"
    - "[io.netty.channel.ChannelPipeline].fireChannelUnregistered()"
    functionUses: 49
    ICount: 22
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2:736"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2:741"
        BranchSideFuncs:
        - "fireChannelInactive()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2:740"
        BranchSideFuncs:
        - "access$400(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2:741"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2:745"
        BranchSideFuncs:
        - "fireChannelUnregistered()"
        - "access$1000(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
        - "access$402(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2:744"
        BranchSideFuncs:
        - "access$1100(io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2:737,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1000(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2:737,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelInactive()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2:741,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$400(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2:742,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$402(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2:743,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelUnregistered()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2:745,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].access$1100(io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].access$1100(io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 578
    functionLinenumberEnd: 580
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].safeSetSuccess(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:579,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].safeSetSuccess(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].safeSetSuccess(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 750
    functionLinenumberEnd: 755
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelProgressivePromise].trySuccess()"
    - "[io.netty.channel.DefaultChannelPromise].trySuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].trySuccess()"
    - "[io.netty.channel.VoidChannelPromise].trySuccess()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1200()"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.channel.ChannelPromise].trySuccess()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:751"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:754"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Object)"
        - "access$1200()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:753"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:751"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:754"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Object)"
        - "access$1200()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:753"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:751,1"
      Dst: "[io.netty.channel.ChannelPromise].trySuccess()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:752,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1200()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:752,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils$6].<init>()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils$6"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils$6:92,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils$6].run()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils$6"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "java.lang.reflect.Method"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils$6:95,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelPromiseNotifier].<init>(io.netty.channel.ChannelPromise[])"
    functionSourceFile: "io.netty.channel.ChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseNotifier].<init>(io.netty.util.concurrent.Promise[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelPromiseNotifier:36,1"
      Dst: "[io.netty.util.concurrent.PromiseNotifier].<init>(io.netty.util.concurrent.Promise[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelPromiseNotifier].<init>(boolean,io.netty.channel.ChannelPromise[])"
    functionSourceFile: "io.netty.channel.ChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.channel.ChannelPromise[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseNotifier].<init>(boolean,io.netty.util.concurrent.Promise[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelPromiseNotifier:46,1"
      Dst: "[io.netty.util.concurrent.PromiseNotifier].<init>(boolean,io.netty.util.concurrent.Promise[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine$1].<init>(io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine)"
    functionSourceFile: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine$1"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.conscrypt.HandshakeListener].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine$1:103,1"
      Dst: "[org.conscrypt.HandshakeListener].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine$1].onHandshakeFinished()"
    functionSourceFile: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine].access$100(io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine$1:106,1"
      Dst: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine].access$100(io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine].access$100(io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine)"
    functionSourceFile: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine].selectProtocol()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine:96,1"
      Dst: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine].selectProtocol()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine].selectProtocol()"
    functionSourceFile: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - "[org.conscrypt.Conscrypt].getApplicationProtocol(javax.net.ssl.SSLEngine)"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener].selected(java.lang.String)"
    - "[io.netty.handler.ssl.SslUtils].toSSLHandshakeException(java.lang.Throwable)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine:116,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine:116,1"
      Dst: "[org.conscrypt.Conscrypt].getApplicationProtocol(javax.net.ssl.SSLEngine)"
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine:118,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener].selected(java.lang.String)"
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ClientEngine:120,1"
      Dst: "[io.netty.handler.ssl.SslUtils].toSSLHandshakeException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttSubAckPayload)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubAckMessage"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader"
    - "io.netty.handler.codec.mqtt.MqttSubAckPayload"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckMessage:28,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader,io.netty.handler.codec.mqtt.MqttSubAckPayload)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubAckMessage"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    - "io.netty.handler.codec.mqtt.MqttSubAckPayload"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttSubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttSubAckPayload)"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].withDefaultEmptyProperties()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].withDefaultEmptyProperties()"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckMessage:35,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].withDefaultEmptyProperties()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckMessage:35,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttSubAckPayload)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CodecOutputList$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.CodecOutputList$1"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CodecOutputList$1:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CodecOutputList$1].recycle(io.netty.handler.codec.CodecOutputList)"
    functionSourceFile: "io.netty.handler.codec.CodecOutputList$1"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.CodecOutputList"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class)"
    functionSourceFile: "io.netty.util.concurrent.DefaultThreadFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class,boolean,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:40,1"
      Dst: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.String)"
    functionSourceFile: "io.netty.util.concurrent.DefaultThreadFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.String,boolean,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:44,1"
      Dst: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.String,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class,boolean)"
    functionSourceFile: "io.netty.util.concurrent.DefaultThreadFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class,boolean,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:48,1"
      Dst: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.String,boolean)"
    functionSourceFile: "io.netty.util.concurrent.DefaultThreadFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.String,boolean,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:52,1"
      Dst: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.String,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class,int)"
    functionSourceFile: "io.netty.util.concurrent.DefaultThreadFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class,boolean,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:56,1"
      Dst: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.util.concurrent.DefaultThreadFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.String,boolean,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:60,1"
      Dst: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.String,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class,boolean,int)"
    functionSourceFile: "io.netty.util.concurrent.DefaultThreadFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultThreadFactory].toPoolName(java.lang.Class)"
    - "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.String,boolean,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:64,1"
      Dst: "[io.netty.util.concurrent.DefaultThreadFactory].toPoolName(java.lang.Class)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:64,1"
      Dst: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.String,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultThreadFactory].toPoolName(java.lang.Class<?>)"
    functionSourceFile: "io.netty.util.concurrent.DefaultThreadFactory"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 81
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - "[java.lang.String].length()"
    - "[java.lang.String].toLowerCase(java.util.Locale)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].isLowerCase(char)"
    - "[java.lang.Character].isUpperCase(char)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.Character].toLowerCase(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 1
    ICount: 25
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultThreadFactory:77"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultThreadFactory:80"
        BranchSideFuncs:
        - "substring(int)"
        - "<init>()"
        - "toLowerCase(char)"
        - "append(java.lang.String)"
        - "toString()"
        - "charAt(int)"
      - BranchSide: "io.netty.util.concurrent.DefaultThreadFactory:79"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultThreadFactory:77"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultThreadFactory:80"
        BranchSideFuncs:
        - "substring(int)"
        - "<init>()"
        - "toLowerCase(char)"
        - "append(java.lang.String)"
        - "toString()"
        - "charAt(int)"
      - BranchSide: "io.netty.util.concurrent.DefaultThreadFactory:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:68,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:70,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:71,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:75,1"
      Dst: "[java.lang.String].toLowerCase(java.util.Locale)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:77,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:77,1"
      Dst: "[java.lang.Character].isUpperCase(char)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:77,1"
      Dst: "[java.lang.Character].isLowerCase(char)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:78,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:78,1"
      Dst: "[java.lang.Character].toLowerCase(char)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:78,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:78,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:78,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:78,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.String,boolean,int,java.lang.ThreadGroup)"
    functionSourceFile: "io.netty.util.concurrent.DefaultThreadFactory"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "boolean"
    - "int"
    - "java.lang.ThreadGroup"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].<init>()"
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.util.concurrent.atomic.AtomicInteger].incrementAndGet()"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 2
    ICount: 35
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultThreadFactory:88"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultThreadFactory:89"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.concurrent.DefaultThreadFactory:88"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.util.concurrent.DefaultThreadFactory:88"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultThreadFactory:93"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.concurrent.DefaultThreadFactory:92"
        BranchSideFuncs:
        - "append(char)"
        - "incrementAndGet()"
        - "<init>()"
        - "toString()"
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:85,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:33,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].<init>()"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:86,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:89,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:89,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:89,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:89,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:89,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:93,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:93,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].incrementAndGet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.String,boolean,int)"
    functionSourceFile: "io.netty.util.concurrent.DefaultThreadFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.String,boolean,int,java.lang.ThreadGroup)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:100,1"
      Dst: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.String,boolean,int,java.lang.ThreadGroup)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultThreadFactory].newThread(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.DefaultThreadFactory"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 118
    functionDepth: 5
    returnType: "java.lang.Thread"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.util.concurrent.atomic.AtomicInteger].incrementAndGet()"
    - "[io.netty.util.concurrent.DefaultThreadFactory].newThread(java.lang.Runnable,java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].wrap(java.lang.Runnable)"
    - "[java.lang.Thread].isDaemon()"
    - "[java.lang.Thread].setDaemon(boolean)"
    - "[java.lang.Thread].getPriority()"
    - "[java.lang.Thread].setPriority(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 3
    ICount: 25
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultThreadFactory:107"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultThreadFactory:111"
        BranchSideFuncs:
        - "setDaemon(boolean)"
      - BranchSide: "io.netty.util.concurrent.DefaultThreadFactory:110"
        BranchSideFuncs:
        - "getPriority()"
    - Branch String: "io.netty.util.concurrent.DefaultThreadFactory:111"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultThreadFactory:116"
        BranchSideFuncs:
        - "setPriority(int)"
      - BranchSide: "io.netty.util.concurrent.DefaultThreadFactory:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:105,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocalRunnable].wrap(java.lang.Runnable)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:105,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:105,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:105,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].incrementAndGet()"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:105,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:105,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:105,1"
      Dst: "[io.netty.util.concurrent.DefaultThreadFactory].newThread(java.lang.Runnable,java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:107,1"
      Dst: "[java.lang.Thread].isDaemon()"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:108,1"
      Dst: "[java.lang.Thread].setDaemon(boolean)"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:111,1"
      Dst: "[java.lang.Thread].getPriority()"
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:112,1"
      Dst: "[java.lang.Thread].setPriority(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.concurrent.DefaultThreadFactory].newThread(java.lang.Runnable,java.lang.String)"
    functionSourceFile: "io.netty.util.concurrent.DefaultThreadFactory"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 4
    returnType: "java.lang.Thread"
    argCount: 2
    argTypes:
    - "java.lang.Runnable"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocalThread].<init>(java.lang.ThreadGroup,java.lang.Runnable,java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultThreadFactory:121,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocalThread].<init>(java.lang.ThreadGroup,java.lang.Runnable,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocalThread].<init>(java.lang.ThreadGroup,java.lang.Runnable,java.lang.String)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocalThread"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 68
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.ThreadGroup"
    - "java.lang.Runnable"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].<init>(java.lang.ThreadGroup,java.lang.Runnable,java.lang.String)"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].wrap(java.lang.Runnable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:65,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocalRunnable].wrap(java.lang.Runnable)"
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:65,1"
      Dst: "[java.lang.Thread].<init>(java.lang.ThreadGroup,java.lang.Runnable,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspResponseEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspResponseEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.rtsp.RtspEncoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspResponseEncoder:22,1"
      Dst: "[io.netty.handler.codec.rtsp.RtspEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspHeaders].<init>()"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspHeaders:397,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrap$1$1].<init>(io.netty.bootstrap.ServerBootstrap$1,io.netty.channel.ChannelPipeline,io.netty.channel.Channel)"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap$1$1"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.bootstrap.ServerBootstrap$1"
    - "io.netty.channel.ChannelPipeline"
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrap$1$1:151,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap$1$1"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 157
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor].<init>(io.netty.channel.Channel,io.netty.channel.EventLoopGroup,io.netty.channel.ChannelHandler,java.util.Map$Entry[],java.util.Map$Entry[])"
    - "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - "[io.netty.channel.ChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    functionUses: 50
    ICount: 17
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrap$1$1:154,1"
      Dst: "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor].<init>(io.netty.channel.Channel,io.netty.channel.EventLoopGroup,io.netty.channel.ChannelHandler,java.util.Map$Entry[],java.util.Map$Entry[])"
    - Src: "io.netty.bootstrap.ServerBootstrap$1$1:154,1"
      Dst: "[io.netty.channel.ChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor].<init>(io.netty.channel.Channel,io.netty.channel.EventLoopGroup,io.netty.channel.ChannelHandler,java.util.Map$Entry[],java.util.Map$Entry[])"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 203
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.channel.EventLoopGroup"
    - "io.netty.channel.ChannelHandler"
    - "java.util.Map$Entry[]"
    - "java.util.Map$Entry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].<init>(io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor,io.netty.channel.Channel)"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:185,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:196,1"
      Dst: "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].<init>(io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor,io.netty.channel.Channel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].<init>(io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor,io.netty.channel.Channel)"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor"
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1:196,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.LongAdderCounter].<init>()"
    functionSourceFile: "io.netty.util.internal.LongAdderCounter"
    linkageType: ""
    functionLinenumber: 20
    functionLinenumberEnd: 22
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.LongAdder].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.LongAdderCounter:21,1"
      Dst: "[java.util.concurrent.atomic.LongAdder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.LongAdderCounter].value()"
    functionSourceFile: "io.netty.util.internal.LongAdderCounter"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.LongAdder].longValue()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.LongAdderCounter:25,1"
      Dst: "[java.util.concurrent.atomic.LongAdder].longValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].<init>(io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe,io.netty.channel.ChannelPromise,boolean)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe"
    - "io.netty.channel.ChannelPromise"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1:167,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 181
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.rxtx.RxtxChannel].doInit()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe].access$100(io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelActive()"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe].access$200(io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe,io.netty.channel.ChannelPromise,java.lang.Throwable)"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe].access$300(io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe)"
    - "[io.netty.channel.ChannelPipeline].fireChannelActive()"
    functionUses: 49
    ICount: 25
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1:173"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1:179"
        BranchSideFuncs:
        - "pipeline()"
        - "fireChannelActive()"
      - BranchSide: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1:178"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1:173"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1:179"
        BranchSideFuncs:
        - "pipeline()"
        - "fireChannelActive()"
      - BranchSide: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1:171,1"
      Dst: "[io.netty.channel.rxtx.RxtxChannel].doInit()"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1:172,1"
      Dst: "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe].access$100(io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1:173,1"
      Dst: "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1:174,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1:174,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelActive()"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1:177,1"
      Dst: "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe].access$200(io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe,io.netty.channel.ChannelPromise,java.lang.Throwable)"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1:178,1"
      Dst: "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe].access$300(io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.rxtx.RxtxChannel].doInit()"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannel"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 97
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.rxtx.RxtxChannelConfig$Databits].value()"
    - "[io.netty.channel.rxtx.RxtxChannelConfig$Stopbits].value()"
    - "[io.netty.channel.rxtx.RxtxChannelConfig$Paritybit].value()"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.oio.OioByteStreamChannel].activate(java.io.InputStream,java.io.OutputStream)"
    - "[io.netty.channel.ChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[gnu.io.SerialPort].setSerialPortParams(int,int,int,int)"
    - "[gnu.io.SerialPort].setDTR(boolean)"
    - "[gnu.io.SerialPort].setRTS(boolean)"
    - "[gnu.io.SerialPort].getInputStream()"
    - "[gnu.io.SerialPort].getOutputStream()"
    functionUses: 2
    ICount: 43
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannel:87,1"
      Dst: "[io.netty.channel.rxtx.RxtxChannel].config()"
    - Src: "io.netty.channel.rxtx.RxtxChannel:87,1"
      Dst: "[io.netty.channel.ChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - Src: "io.netty.channel.rxtx.RxtxChannel:87,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.rxtx.RxtxChannel:88,1"
      Dst: "[io.netty.channel.rxtx.RxtxChannelConfig$Databits].value()"
    - Src: "io.netty.channel.rxtx.RxtxChannel:89,1"
      Dst: "[io.netty.channel.rxtx.RxtxChannelConfig$Stopbits].value()"
    - Src: "io.netty.channel.rxtx.RxtxChannel:90,1"
      Dst: "[io.netty.channel.rxtx.RxtxChannelConfig$Paritybit].value()"
    - Src: "io.netty.channel.rxtx.RxtxChannel:86,1"
      Dst: "[gnu.io.SerialPort].setSerialPortParams(int,int,int,int)"
    - Src: "io.netty.channel.rxtx.RxtxChannel:92,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.rxtx.RxtxChannel:92,1"
      Dst: "[gnu.io.SerialPort].setDTR(boolean)"
    - Src: "io.netty.channel.rxtx.RxtxChannel:93,1"
      Dst: "[gnu.io.SerialPort].setRTS(boolean)"
    - Src: "io.netty.channel.rxtx.RxtxChannel:95,1"
      Dst: "[gnu.io.SerialPort].getInputStream()"
    - Src: "io.netty.channel.rxtx.RxtxChannel:95,1"
      Dst: "[gnu.io.SerialPort].getOutputStream()"
    - Src: "io.netty.channel.rxtx.RxtxChannel:95,1"
      Dst: "[io.netty.channel.oio.OioByteStreamChannel].activate(java.io.InputStream,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannel].config()"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannel"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 61
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannelConfig$Databits].value()"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannelConfig$Databits"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannelConfig$Stopbits].value()"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe].access$100(io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].safeSetSuccess(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:152,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].safeSetSuccess(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe].access$200(io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe,io.netty.channel.ChannelPromise,java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe"
    - "io.netty.channel.ChannelPromise"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].safeSetFailure(io.netty.channel.ChannelPromise,java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:152,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].safeSetFailure(io.netty.channel.ChannelPromise,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe].access$300(io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].closeIfClosed()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:152,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].closeIfClosed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle$1].<init>(io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle$1"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle$1:33,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle$1].get()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle$1"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].maybeMoreDataToRead()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle$1:36,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].maybeMoreDataToRead()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].maybeMoreDataToRead()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:106"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:105"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders].connect()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders:722,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:98,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders].connAck()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder].<init>(io.netty.handler.codec.mqtt.MqttMessageBuilders$1)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders:726,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnAckBuilder].<init>(io.netty.handler.codec.mqtt.MqttMessageBuilders$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders].publish()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders:730,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder:39,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders].subscribe()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders:734,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder:223,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders].unsubscribe()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders:738,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubscribeBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders].pubAck()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PubAckBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$PubAckBuilder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders:742,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$PubAckBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$PubAckBuilder].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PubAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PubAckBuilder:527,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders].subAck()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders:746,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:568,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:566,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders].unsubAck()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders:750,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder:623,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder:621,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders].disconnect()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$DisconnectBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$DisconnectBuilder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders:754,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$DisconnectBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders].auth()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$AuthBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$AuthBuilder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders:758,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$AuthBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders:761,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].forAnyOrigin()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:44,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.util.Collections].emptySet()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:97,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:73,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:77,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:99,1"
      Dst: "[java.util.Collections].emptySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].forOrigin(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].<init>()"
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].<init>(java.lang.String[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsConfigBuilder:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfigBuilder:56"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfigBuilder:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:53,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:54,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:56,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].<init>(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].<init>(java.lang.String[])"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashSet].<init>()"
    - "[java.util.HashMap].<init>()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:87,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:73,1"
      Dst: "[java.util.HashSet].<init>()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:77,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:88,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:88,1"
      Dst: "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].forOrigins(java.lang.String[])"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].<init>(java.lang.String[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:65,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].<init>(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].allowNullOrigin()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].disable()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].exposeHeaders(java.lang.String[])"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.Set].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:150,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:150,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].exposeHeaders(java.lang.CharSequence[])"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].toString()"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsConfigBuilder:180"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfigBuilder:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:181,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:181,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].allowCredentials()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].maxAge(long)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].allowedRequestMethods(io.netty.handler.codec.http.HttpMethod[])"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMethod[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.Set].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:228,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:228,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].allowedRequestHeaders(java.lang.String[])"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.Set].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:249,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:249,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].allowedRequestHeaders(java.lang.CharSequence[])"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].toString()"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsConfigBuilder:270"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfigBuilder:272"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:271,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:271,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].preflightResponseHeader(java.lang.CharSequence,java.lang.Object[])"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator].<init>(java.lang.Object,io.netty.handler.codec.http.cors.CorsConfigBuilder$1)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].preflightResponseHeader(java.lang.CharSequence,java.lang.Iterable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsConfigBuilder:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfigBuilder:290"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfigBuilder:289"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:288,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator].<init>(java.lang.Object,io.netty.handler.codec.http.cors.CorsConfigBuilder$1)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:288,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:290,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:290,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].preflightResponseHeader(java.lang.CharSequence,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator].<init>(java.lang.Object,io.netty.handler.codec.http.cors.CorsConfigBuilder$1)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.handler.codec.http.cors.CorsConfigBuilder$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator:387,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator].<init>(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator:396,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator:397,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].preflightResponseHeader(java.lang.CharSequence,java.lang.Iterable<T>)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.Iterable<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator].<init>(java.lang.Object,io.netty.handler.codec.http.cors.CorsConfigBuilder$1)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:307,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator].<init>(java.lang.Object,io.netty.handler.codec.http.cors.CorsConfigBuilder$1)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:307,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].preflightResponseHeader(java.lang.CharSequence,java.util.concurrent.Callable<T>)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.util.concurrent.Callable<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:327,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].noPreflightResponseHeaders()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].shortCircuit()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].allowPrivateNetwork()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].build()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.cors.CorsConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].isEmpty()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator].<init>(java.lang.Object,io.netty.handler.codec.http.cors.CorsConfigBuilder$1)"
    - "[io.netty.handler.codec.http.cors.CorsConfig].<init>(io.netty.handler.codec.http.cors.CorsConfigBuilder)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsConfigBuilder:375"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfigBuilder:379"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfigBuilder:378"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cors.CorsConfigBuilder:375"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfigBuilder:379"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfigBuilder:378"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:375,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:376,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:377,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator].<init>(java.lang.Object,io.netty.handler.codec.http.cors.CorsConfigBuilder$1)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder:379,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].<init>(io.netty.handler.codec.http.cors.CorsConfigBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].<init>(io.netty.handler.codec.http.cors.CorsConfigBuilder)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.cors.CorsConfigBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:51,1"
      Dst: "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishVariableHeader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].<init>(java.lang.String,int,io.netty.handler.codec.mqtt.MqttProperties)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishVariableHeader:31,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].<init>(java.lang.String,int,io.netty.handler.codec.mqtt.MqttProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].<init>(java.lang.String,int,io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishVariableHeader"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 39
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.mqtt.MqttProperties].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttProperties)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishVariableHeader:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishVariableHeader:37,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].messageId()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishVariableHeader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].toString()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishVariableHeader"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 68
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 14
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishVariableHeader:62,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishVariableHeader:62,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishVariableHeader:63,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishVariableHeader:64,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishVariableHeader:65,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishVariableHeader:67,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].newServerSocket()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.sun.nio.sctp.SctpServerChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.sun.nio.sctp.SctpServerChannel].open()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:64,1"
      Dst: "[com.sun.nio.sctp.SctpServerChannel].open()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:66,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].<init>()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].newServerSocket()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].<init>(com.sun.nio.sctp.SctpServerChannel)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:78,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpServerChannel].newServerSocket()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:78,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpServerChannel].<init>(com.sun.nio.sctp.SctpServerChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].<init>(com.sun.nio.sctp.SctpServerChannel)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.sun.nio.sctp.SctpServerChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.oio.AbstractOioMessageChannel].<init>(io.netty.channel.Channel)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.nio.channels.spi.AbstractSelectableChannel].configureBlocking(boolean)"
    - "[java.nio.channels.Selector].open()"
    - "[java.nio.channels.SelectableChannel].register(java.nio.channels.Selector,int)"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$OioSctpServerChannelConfig].<init>(io.netty.channel.sctp.oio.OioSctpServerChannel,io.netty.channel.sctp.oio.OioSctpServerChannel,com.sun.nio.sctp.SctpServerChannel,io.netty.channel.sctp.oio.OioSctpServerChannel$1)"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpServerChannel:99"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:107"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.oio.OioSctpServerChannel:99"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:106"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:87,1"
      Dst: "[io.netty.channel.oio.AbstractOioMessageChannel].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:88,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:91,1"
      Dst: "[java.nio.channels.spi.AbstractSelectableChannel].configureBlocking(boolean)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:92,1"
      Dst: "[java.nio.channels.Selector].open()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:93,1"
      Dst: "[java.nio.channels.SelectableChannel].register(java.nio.channels.Selector,int)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:94,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpServerChannel$OioSctpServerChannelConfig].<init>(io.netty.channel.sctp.oio.OioSctpServerChannel,io.netty.channel.sctp.oio.OioSctpServerChannel,com.sun.nio.sctp.SctpServerChannel,io.netty.channel.sctp.oio.OioSctpServerChannel$1)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:101,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:103,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:97,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].metadata()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "io.netty.channel.ChannelMetadata"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].config()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "io.netty.channel.sctp.SctpServerChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 52
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].localAddress()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:126,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].isOpen()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].isOpen()"
    functionUses: 10
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:131,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].isOpen()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 145
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[com.sun.nio.sctp.SctpServerChannel].getAllLocalAddresses()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 12
    EdgeCount: 132
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpServerChannel:138"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:143"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:137,1"
      Dst: "[com.sun.nio.sctp.SctpServerChannel].getAllLocalAddresses()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:137,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:138,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:139,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].allLocalAddresses()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.sun.nio.sctp.SctpServerChannel].getAllLocalAddresses()"
    - "[java.util.Set].size()"
    - "[java.util.LinkedHashSet].<init>(int)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Collections].emptySet()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpServerChannel:152"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:155"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:150,1"
      Dst: "[com.sun.nio.sctp.SctpServerChannel].getAllLocalAddresses()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:151,1"
      Dst: "[java.util.Set].size()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:151,1"
      Dst: "[java.util.LinkedHashSet].<init>(int)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:152,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:152,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:152,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:153,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:157,1"
      Dst: "[java.util.Collections].emptySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isOpen()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].localAddress0()"
    functionUses: 37
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpServerChannel:163"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:162"
        BranchSideFuncs:
        - "isOpen()"
        - "localAddress0()"
    - Branch String: "io.netty.channel.sctp.oio.OioSctpServerChannel:163"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:162"
        BranchSideFuncs:
        - "isOpen()"
        - "localAddress0()"
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:163,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpServerChannel].isOpen()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:163,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpServerChannel].localAddress0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].getBacklog()"
    - "[io.netty.channel.sctp.SctpServerChannelConfig].getBacklog()"
    - "[com.sun.nio.sctp.SctpServerChannel].bind(java.net.SocketAddress,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:168,1"
      Dst: "[io.netty.channel.sctp.SctpServerChannelConfig].getBacklog()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:168,1"
      Dst: "[com.sun.nio.sctp.SctpServerChannel].bind(java.net.SocketAddress,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].doClose()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 180
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].close()"
    - "[java.nio.channels.spi.AbstractSelector].close()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.nio.channels.Selector].close()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    functionUses: 3
    ICount: 10
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:174,1"
      Dst: "[java.nio.channels.Selector].close()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:176,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:178,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].doReadMessages(java.util.List<Object>)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 220
    functionDepth: 9
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].select(long)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].selectedKeys()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].remove()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].remove()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].remove()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].remove()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].remove()"
    - "[io.netty.channel.nio.NioEventLoop$7].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].remove()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].remove()"
    - "[io.netty.util.internal.ReadOnlyIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].remove()"
    - "[io.netty.channel.group.CombinedIterator].remove()"
    - "[java.util.Iterator].remove()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].<init>(io.netty.channel.Channel,com.sun.nio.sctp.SctpChannel)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.nio.channels.Selector].select(long)"
    - "[java.nio.channels.Selector].selectedKeys()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.nio.channels.SelectionKey].isAcceptable()"
    - "[com.sun.nio.sctp.SctpServerChannel].accept()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Iterator].hasNext()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    functionUses: 1
    ICount: 42
    EdgeCount: 206
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpServerChannel:183"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:187"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:186"
        BranchSideFuncs:
        - "select(long)"
    - Branch String: "io.netty.channel.sctp.oio.OioSctpServerChannel:191"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:217"
        BranchSideFuncs:
        - "selectedKeys()"
        - "iterator()"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:216"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.oio.OioSctpServerChannel:196"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:203"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:202"
        BranchSideFuncs:
        - "hasNext()"
    - Branch String: "io.netty.channel.sctp.oio.OioSctpServerChannel:198"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:203"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(io.netty.channel.Channel,com.sun.nio.sctp.SctpChannel)"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:202"
        BranchSideFuncs:
        - "hasNext()"
    - Branch String: "io.netty.channel.sctp.oio.OioSctpServerChannel:203"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:206"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:205"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.oio.OioSctpServerChannel:210"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:219"
        BranchSideFuncs:
        - "selectedKeys()"
        - "select(long)"
        - "add(java.lang.Object)"
        - "hasNext()"
        - "warn(java.lang.String,java.lang.Throwable)"
        - "iterator()"
        - "next()"
        - "remove()"
        - "<init>(io.netty.channel.Channel,com.sun.nio.sctp.SctpChannel)"
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:183,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:190,1"
      Dst: "[java.nio.channels.Selector].select(long)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:192,1"
      Dst: "[java.nio.channels.Selector].selectedKeys()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:192,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:194,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:195,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:196,1"
      Dst: "[java.nio.channels.SelectionKey].isAcceptable()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:197,1"
      Dst: "[com.sun.nio.sctp.SctpServerChannel].accept()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:199,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel].<init>(io.netty.channel.Channel,com.sun.nio.sctp.SctpChannel)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:199,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:203,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:209,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:212,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel$OioSctpChannelConfig].<init>(io.netty.channel.sctp.oio.OioSctpChannel,io.netty.channel.sctp.oio.OioSctpChannel,com.sun.nio.sctp.SctpChannel,io.netty.channel.sctp.oio.OioSctpChannel$1)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel$OioSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 463
    functionLinenumberEnd: 465
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.sctp.oio.OioSctpChannel"
    - "io.netty.channel.sctp.oio.OioSctpChannel"
    - "com.sun.nio.sctp.SctpChannel"
    - "io.netty.channel.sctp.oio.OioSctpChannel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.oio.OioSctpChannel$OioSctpChannelConfig].<init>(io.netty.channel.sctp.oio.OioSctpChannel,io.netty.channel.sctp.oio.OioSctpChannel,com.sun.nio.sctp.SctpChannel)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel$OioSctpChannelConfig:464,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpChannel$OioSctpChannelConfig].<init>(io.netty.channel.sctp.oio.OioSctpChannel,io.netty.channel.sctp.oio.OioSctpChannel,com.sun.nio.sctp.SctpChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpChannel$OioSctpChannelConfig].<init>(io.netty.channel.sctp.oio.OioSctpChannel,io.netty.channel.sctp.oio.OioSctpChannel,com.sun.nio.sctp.SctpChannel)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpChannel$OioSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 464
    functionLinenumberEnd: 468
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.sctp.oio.OioSctpChannel"
    - "io.netty.channel.sctp.oio.OioSctpChannel"
    - "com.sun.nio.sctp.SctpChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].<init>(io.netty.channel.sctp.SctpChannel,com.sun.nio.sctp.SctpChannel)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpChannel$OioSctpChannelConfig:466,1"
      Dst: "[io.netty.channel.sctp.DefaultSctpChannelConfig].<init>(io.netty.channel.sctp.SctpChannel,com.sun.nio.sctp.SctpChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].<init>(io.netty.channel.sctp.SctpChannel,com.sun.nio.sctp.SctpChannel)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 58
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.sctp.SctpChannel"
    - "com.sun.nio.sctp.SctpChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.PlatformDependent].canEnableTcpNoDelayByDefault()"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setSctpNoDelay(boolean)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.DefaultSctpChannelConfig:50"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.DefaultSctpChannelConfig:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:46,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:47,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:50,1"
      Dst: "[io.netty.util.internal.PlatformDependent].canEnableTcpNoDelayByDefault()"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:52,1"
      Dst: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setSctpNoDelay(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].canEnableTcpNoDelayByDefault()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 368
    functionLinenumberEnd: 370
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setSctpNoDelay(boolean)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 120
    functionDepth: 1
    returnType: "io.netty.channel.sctp.SctpChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[com.sun.nio.sctp.SctpChannel].setOption(com.sun.nio.sctp.SctpSocketOption,java.lang.Object)"
    functionUses: 2
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:115,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:115,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].setOption(com.sun.nio.sctp.SctpSocketOption,java.lang.Object)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:117,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.SctpNotificationHandler].<init>(io.netty.channel.sctp.SctpChannel)"
    functionSourceFile: "io.netty.channel.sctp.SctpNotificationHandler"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 40
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.sctp.SctpChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.sun.nio.sctp.AbstractNotificationHandler].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.SctpNotificationHandler:37,1"
      Dst: "[com.sun.nio.sctp.AbstractNotificationHandler].<init>()"
    - Src: "io.netty.channel.sctp.SctpNotificationHandler:38,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].bindAddress(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:224,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:224,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpServerChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 245
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].<init>(io.netty.channel.sctp.oio.OioSctpServerChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[com.sun.nio.sctp.SctpServerChannel].bindAddress(java.net.InetAddress)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 1
    ICount: 18
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpServerChannel:229"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:236"
        BranchSideFuncs:
        - "run()"
        - "eventLoop()"
        - "<init>(io.netty.channel.sctp.oio.OioSctpServerChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
        - "execute(java.lang.Runnable)"
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:229,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:229,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:231,1"
      Dst: "[com.sun.nio.sctp.SctpServerChannel].bindAddress(java.net.InetAddress)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:232,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:234,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:237,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].<init>(io.netty.channel.sctp.oio.OioSctpServerChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:237,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].<init>(io.netty.channel.sctp.oio.OioSctpServerChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel$1"
    linkageType: ""
    functionLinenumber: 236
    functionLinenumberEnd: 238
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.sctp.oio.OioSctpServerChannel"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel$1:237,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].unbindAddress(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:249,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:249,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpServerChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 253
    functionLinenumberEnd: 270
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].<init>(io.netty.channel.sctp.oio.OioSctpServerChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[com.sun.nio.sctp.SctpServerChannel].unbindAddress(java.net.InetAddress)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 1
    ICount: 18
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.oio.OioSctpServerChannel:254"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.oio.OioSctpServerChannel:261"
        BranchSideFuncs:
        - "run()"
        - "eventLoop()"
        - "<init>(io.netty.channel.sctp.oio.OioSctpServerChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
        - "execute(java.lang.Runnable)"
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:254,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:254,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:256,1"
      Dst: "[com.sun.nio.sctp.SctpServerChannel].unbindAddress(java.net.InetAddress)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:257,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:259,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:262,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].<init>(io.netty.channel.sctp.oio.OioSctpServerChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:262,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].<init>(io.netty.channel.sctp.oio.OioSctpServerChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel$2"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 263
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.sctp.oio.OioSctpServerChannel"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel$2:262,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 274
    functionLinenumberEnd: 276
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:275,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].remoteAddress0()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].doDisconnect()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 284
    functionLinenumberEnd: 286
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:285,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].doWrite(io.netty.channel.ChannelOutboundBuffer)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 289
    functionLinenumberEnd: 291
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:290,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel].filterOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 294
    functionLinenumberEnd: 296
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel:295,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].toString()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$StringProperty"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 13
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$StringProperty:181,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$StringProperty:181,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$StringProperty:181,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$StringProperty:181,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannelOption].<init>()"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannelOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOption].<init>(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannelOption:42,1"
      Dst: "[io.netty.channel.ChannelOption].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.LongLongHashMapFuzzer].<init>(com.code_intelligence.jazzer.api.FuzzedDataProvider)"
    functionSourceFile: "io.netty.buffer.LongLongHashMapFuzzer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.code_intelligence.jazzer.api.FuzzedDataProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.LongLongHashMapFuzzer:14,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.LongLongHashMapFuzzer].test()"
    functionSourceFile: "io.netty.buffer.LongLongHashMapFuzzer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>()"
    - "[io.netty.buffer.LongLongHashMap].<init>(long)"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].remainingBytes()"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeLong()"
    - "[java.lang.Long].valueOf(long)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeBoolean()"
    - "[io.netty.buffer.LongLongHashMap].remove(long)"
    - "[java.util.Map].remove(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.Long].longValue()"
    - "[io.netty.buffer.LongLongHashMap].put(long,long)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.LongLongHashMapFuzzer:21"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMapFuzzer:37"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.LongLongHashMapFuzzer:36"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.LongLongHashMapFuzzer:23"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMapFuzzer:33"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.LongLongHashMapFuzzer:32"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.LongLongHashMapFuzzer:24"
      Branch Sides:
      - BranchSide: "io.netty.buffer.LongLongHashMapFuzzer:28"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.LongLongHashMapFuzzer:27"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.LongLongHashMapFuzzer:19,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "io.netty.buffer.LongLongHashMapFuzzer:20,1"
      Dst: "[io.netty.buffer.LongLongHashMap].<init>(long)"
    - Src: "io.netty.buffer.LongLongHashMapFuzzer:21,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].remainingBytes()"
    - Src: "io.netty.buffer.LongLongHashMapFuzzer:22,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeLong()"
    - Src: "io.netty.buffer.LongLongHashMapFuzzer:23,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.buffer.LongLongHashMapFuzzer:23,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "io.netty.buffer.LongLongHashMapFuzzer:24,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeBoolean()"
    - Src: "io.netty.buffer.LongLongHashMapFuzzer:25,1"
      Dst: "[io.netty.buffer.LongLongHashMap].remove(long)"
    - Src: "io.netty.buffer.LongLongHashMapFuzzer:26,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "io.netty.buffer.LongLongHashMapFuzzer:28,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.buffer.LongLongHashMapFuzzer:28,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "io.netty.buffer.LongLongHashMapFuzzer:29,1"
      Dst: "[io.netty.buffer.LongLongHashMap].put(long,long)"
    - Src: "io.netty.buffer.LongLongHashMapFuzzer:30,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.LongLongHashMap].<init>(long)"
    functionSourceFile: "io.netty.buffer.LongLongHashMap"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 38
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.buffer.LongLongHashMap].computeMaskAndProbe()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.LongLongHashMap:30,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.buffer.LongLongHashMap:36,1"
      Dst: "[io.netty.buffer.LongLongHashMap].computeMaskAndProbe()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.LongLongHashMapFuzzer].fuzzerTestOneInput(com.code_intelligence.jazzer.api.FuzzedDataProvider)"
    functionSourceFile: "io.netty.buffer.LongLongHashMapFuzzer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.code_intelligence.jazzer.api.FuzzedDataProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.LongLongHashMapFuzzer].<init>(com.code_intelligence.jazzer.api.FuzzedDataProvider)"
    - "[io.netty.buffer.LongLongHashMapFuzzer].test()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.LongLongHashMapFuzzer:40,1"
      Dst: "[io.netty.buffer.LongLongHashMapFuzzer].<init>(com.code_intelligence.jazzer.api.FuzzedDataProvider)"
    - Src: "io.netty.buffer.LongLongHashMapFuzzer:41,1"
      Dst: "[io.netty.buffer.LongLongHashMapFuzzer].test()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlComment].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlComment"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.xml.XmlContent].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlComment:24,1"
      Dst: "[io.netty.handler.codec.xml.XmlContent].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception$StacklessHttp2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception$StacklessHttp2Exception"
    linkageType: ""
    functionLinenumber: 329
    functionLinenumberEnd: 332
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.String"
    - "io.netty.handler.codec.http2.Http2Exception$ShutdownHint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception$StacklessHttp2Exception:330,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception$StacklessHttp2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception$StacklessHttp2Exception"
    linkageType: ""
    functionLinenumber: 333
    functionLinenumberEnd: 336
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.String"
    - "io.netty.handler.codec.http2.Http2Exception$ShutdownHint"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint,boolean,io.netty.handler.codec.http2.Http2Exception$1)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception$StacklessHttp2Exception:334,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint,boolean,io.netty.handler.codec.http2.Http2Exception$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception$StacklessHttp2Exception].fillInStackTrace()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception$StacklessHttp2Exception"
    linkageType: ""
    functionLinenumber: 340
    functionLinenumberEnd: 342
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.CookieDecoder].decode(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.CookieDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.CookieDecoder].decode(java.lang.String,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CookieDecoder:72,1"
      Dst: "[io.netty.handler.codec.http.CookieDecoder].decode(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.CookieDecoder].decode(java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.CookieDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "java.util.Set"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.CookieDecoder].doDecode(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CookieDecoder:76,1"
      Dst: "[io.netty.handler.codec.http.CookieDecoder].doDecode(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.CookieDecoder].doDecode(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.CookieDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.handler.codec.http.CookieDecoder].extractKeyValuePairs(java.lang.String,java.util.List,java.util.List)"
    - "[java.util.List].isEmpty()"
    - "[java.util.Collections].emptySet()"
    - "[java.util.List].get(int)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.util.List].size()"
    - "[java.util.TreeSet].<init>()"
    - "[io.netty.handler.codec.http.CookieDecoder].initCookie(java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.DateFormatter].parseHttpDate(java.lang.CharSequence)"
    - "[java.util.Date].getTime()"
    - "[java.lang.System].currentTimeMillis()"
    - "[java.lang.String].split(java.lang.String)"
    - "[java.lang.Integer].valueOf(java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.Cookie].setVersion(int)"
    - "[io.netty.handler.codec.http.Cookie].setMaxAge(long)"
    - "[io.netty.handler.codec.http.cookie.Cookie].setPath(java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.Cookie].setDomain(java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.Cookie].setSecure(boolean)"
    - "[io.netty.handler.codec.http.cookie.Cookie].setHttpOnly(boolean)"
    - "[io.netty.handler.codec.http.Cookie].setComment(java.lang.String)"
    - "[io.netty.handler.codec.http.Cookie].setCommentUrl(java.lang.String)"
    - "[io.netty.handler.codec.http.Cookie].setPorts(java.lang.Iterable)"
    - "[io.netty.handler.codec.http.Cookie].setDiscard(boolean)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 155
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:94"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:93"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:98"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:105"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:109"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:115"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:198"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:197"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:118"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:122"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:121"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:128"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:127"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:180"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:179"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:142"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:144"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:143"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:146"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:145"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:146"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:148"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:147"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:150"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:149"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:152"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:151"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:152"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:154"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:153"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:154"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:156"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:155"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:156"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:155"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:158"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:162"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:161"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:160"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:158"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:164"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:163"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:164"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:166"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:165"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:166"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:180"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:179"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:168"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:128"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:127"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:189"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:188"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:189"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CookieDecoder:85,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:87,1"
      Dst: "[io.netty.handler.codec.http.CookieDecoder].extractKeyValuePairs(java.lang.String,java.util.List,java.util.List)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:89,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.handler.codec.http.CookieDecoder:90,1"
      Dst: "[java.util.Collections].emptySet()"
    - Src: "io.netty.handler.codec.http.CookieDecoder:98,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:98,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:100,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:109,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http.CookieDecoder:114,1"
      Dst: "[java.util.TreeSet].<init>()"
    - Src: "io.netty.handler.codec.http.CookieDecoder:122,1"
      Dst: "[io.netty.handler.codec.http.CookieDecoder].initCookie(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:157,1"
      Dst: "[io.netty.handler.codec.DateFormatter].parseHttpDate(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:159,1"
      Dst: "[java.util.Date].getTime()"
    - Src: "io.netty.handler.codec.http.CookieDecoder:159,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    - Src: "io.netty.handler.codec.http.CookieDecoder:167,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:170,1"
      Dst: "[java.lang.Integer].valueOf(java.lang.String)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:170,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:180,1"
      Dst: "[io.netty.handler.codec.http.Cookie].setVersion(int)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:181,1"
      Dst: "[io.netty.handler.codec.http.Cookie].setMaxAge(long)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:182,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].setPath(java.lang.String)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:183,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].setDomain(java.lang.String)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:184,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].setSecure(boolean)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:185,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].setHttpOnly(boolean)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:187,1"
      Dst: "[io.netty.handler.codec.http.Cookie].setComment(java.lang.String)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:190,1"
      Dst: "[io.netty.handler.codec.http.Cookie].setCommentUrl(java.lang.String)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:191,1"
      Dst: "[io.netty.handler.codec.http.Cookie].setPorts(java.lang.Iterable)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:192,1"
      Dst: "[io.netty.handler.codec.http.Cookie].setDiscard(boolean)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:195,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 55
    CyclomaticComplexity: 22
  - functionName: "[io.netty.handler.codec.http.CookieDecoder].extractKeyValuePairs(java.lang.String,java.util.List,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.http.CookieDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.util.List"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.String].indexOf(int,int)"
    - "[java.lang.String].substring(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 93
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:208"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:211"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:210"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:222"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:225"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:224"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:235"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:234"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:235"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:239"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:238"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:251"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:257"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:259"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:260"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:259"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:295"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:266"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:270"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:269"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:270"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:283"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:282"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:284"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:288"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:287"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:289"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:266"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:265"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:297"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:301"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:300"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:310"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:240"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CookieDecoder:203,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.CookieDecoder:211,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:244,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:261,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:267,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.CookieDecoder:276,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.codec.http.CookieDecoder:276,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:280,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:296,1"
      Dst: "[java.lang.String].indexOf(int,int)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:301,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:319,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 38
    CyclomaticComplexity: 18
  - functionName: "[io.netty.handler.codec.http.CookieDecoder].initCookie(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.CookieDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.http.DefaultCookie"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - "[io.netty.handler.codec.http.CookieUtil].unwrapValue(java.lang.CharSequence)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.handler.codec.http.CookieUtil].firstInvalidCookieNameOctet(java.lang.CharSequence)"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].valueOf(char)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.CharSequence].length()"
    - "[io.netty.handler.codec.http.CookieUtil].firstInvalidCookieValueOctet(java.lang.CharSequence)"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.lang.CharSequence].toString()"
    - "[io.netty.handler.codec.http.DefaultCookie].<init>(java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].setWrap(boolean)"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:329"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:330"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:329"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:329"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:334"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:333"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:334"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:339"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:338"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:340"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:347"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:346"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:347"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:355"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:354"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:347"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:355"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:354"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:348"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:351"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:355"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:355"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:354"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:357"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:365"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:364"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:357"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:365"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:364"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.CookieDecoder:358"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.CookieDecoder:361"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CookieDecoder:329,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.CookieDecoder:330,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:339,1"
      Dst: "[io.netty.handler.codec.http.CookieUtil].unwrapValue(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:341,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:347,1"
      Dst: "[io.netty.handler.codec.http.CookieUtil].firstInvalidCookieNameOctet(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:348,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.handler.codec.http.CookieDecoder:350,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:350,1"
      Dst: "[java.lang.Character].valueOf(char)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:349,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:355,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http.CookieDecoder:357,1"
      Dst: "[io.netty.handler.codec.http.CookieUtil].firstInvalidCookieValueOctet(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:360,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:365,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.http.CookieDecoder:365,1"
      Dst: "[io.netty.handler.codec.http.DefaultCookie].<init>(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.CookieDecoder:366,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].setWrap(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].<init>(java.lang.String,java.lang.String)"
    - "[java.util.Collections].emptySet()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultCookie:43,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].<init>(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.DefaultCookie:35,1"
      Dst: "[java.util.Collections].emptySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].setWrap(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.CookieDecoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.CookieDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Object].getClass()"
    - "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.Class)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CookieDecoder:324,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.CookieDecoder:53,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.codec.http.CookieDecoder:53,1"
      Dst: "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].<init>(io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest:1171,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].setProtocolVersion(io.netty.handler.codec.http.HttpVersion)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpRequest"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpRequest].setProtocolVersion(io.netty.handler.codec.http.HttpVersion)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest:1177,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].setProtocolVersion(io.netty.handler.codec.http.HttpVersion)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].setMethod(io.netty.handler.codec.http.HttpMethod)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpRequest"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMethod"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpRequest].setMethod(io.netty.handler.codec.http.HttpMethod)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest:1183,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].setMethod(io.netty.handler.codec.http.HttpMethod)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].setUri(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpRequest"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpRequest].setUri(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest:1189,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].setUri(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].getMethod()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpMethod"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpRequest].method()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest:1195,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].method()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].method()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest"
    linkageType: ""
    functionLinenumber: 1199
    functionLinenumberEnd: 1201
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpMethod"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].method()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].method()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].method()"
    - "[io.netty.handler.codec.http.HttpRequest].method()"
    functionUses: 17
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest:1200,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].method()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].getUri()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpRequest].uri()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest:1205,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].uri()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].uri()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest"
    linkageType: ""
    functionLinenumber: 1209
    functionLinenumberEnd: 1211
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].uri()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].uri()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].uri()"
    - "[io.netty.handler.codec.http.HttpRequest].uri()"
    functionUses: 16
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest:1210,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].uri()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].getProtocolVersion()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpVersion"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest:1215,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].protocolVersion()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest"
    linkageType: ""
    functionLinenumber: 1219
    functionLinenumberEnd: 1221
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpVersion"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    functionUses: 21
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest:1220,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest"
    linkageType: ""
    functionLinenumber: 1224
    functionLinenumberEnd: 1226
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 97
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest:1225,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].decoderResult()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest"
    linkageType: ""
    functionLinenumber: 1229
    functionLinenumberEnd: 1231
    functionDepth: 0
    returnType: "io.netty.handler.codec.DecoderResult"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].decoderResult()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].decoderResult()"
    - "[io.netty.handler.codec.http.DefaultHttpObject].decoderResult()"
    - "[io.netty.handler.codec.DecoderResultProvider].decoderResult()"
    functionUses: 9
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest:1230,1"
      Dst: "[io.netty.handler.codec.DecoderResultProvider].decoderResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].getDecoderResult()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.DecoderResult"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObject].getDecoderResult()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest:1236,1"
      Dst: "[io.netty.handler.codec.http.HttpObject].getDecoderResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest"
    linkageType: ""
    functionLinenumber: 1240
    functionLinenumberEnd: 1243
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.DecoderResult"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[io.netty.handler.codec.http.DefaultHttpObject].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    functionUses: 6
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest:1241,1"
      Dst: "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers$3].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers$3"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$3:86,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers$3].validate(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers$3"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 95
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpHeaderValidationUtil].validateValidHeaderValue(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.AbstractStringBuilder:java.lang.StringBuilder:java.nio.CharBuffer].toString()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 20
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers$3:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$3:94"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "toHexString(int)"
        - "charAt(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$3:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$3:89,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaderValidationUtil].validateValidHeaderValue(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$3:91,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$3:91,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$3:92,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$3:92,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$3:92,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$3:92,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$3:92,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$3:92,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers$3].validate(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers$3"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers$3].validate(java.lang.CharSequence)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$3:86,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers$3].validate(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator"
    linkageType: ""
    functionLinenumber: 219
    functionLinenumberEnd: 221
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.DefaultPriorityQueue].access$100(io.netty.util.internal.DefaultPriorityQueue)"
    functionUses: 227
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator:220"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator:219"
        BranchSideFuncs:
        - "access$100(io.netty.util.internal.DefaultPriorityQueue)"
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator:220,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].access$100(io.netty.util.internal.DefaultPriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 230
    functionDepth: 1
    returnType: "io.netty.util.internal.PriorityQueueNode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.DefaultPriorityQueue].access$100(io.netty.util.internal.DefaultPriorityQueue)"
    - "[java.util.NoSuchElementException].<init>()"
    - "[io.netty.util.internal.DefaultPriorityQueue].access$200(io.netty.util.internal.DefaultPriorityQueue)"
    functionUses: 229
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator:225"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator:229"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator:228"
        BranchSideFuncs:
        - "access$200(io.netty.util.internal.DefaultPriorityQueue)"
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator:225,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].access$100(io.netty.util.internal.DefaultPriorityQueue)"
    - Src: "io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator:226,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    - Src: "io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator:229,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].access$200(io.netty.util.internal.DefaultPriorityQueue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].remove()"
    functionSourceFile: "io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator"
    linkageType: ""
    functionLinenumber: 233
    functionLinenumberEnd: 235
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator:234,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.DefaultNameResolver].doResolve(java.lang.String,io.netty.util.concurrent.Promise<InetAddress>)"
    functionSourceFile: "io.netty.resolver.DefaultNameResolver"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.util.concurrent.Promise<InetAddress>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils].addressByName(java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setSuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 9
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.DefaultNameResolver:41,1"
      Dst: "[io.netty.util.internal.SocketUtils].addressByName(java.lang.String)"
    - Src: "io.netty.resolver.DefaultNameResolver:41,1"
      Dst: "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - Src: "io.netty.resolver.DefaultNameResolver:43,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils].addressByName(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.SocketUtils"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 161
    functionDepth: 1
    returnType: "java.net.InetAddress"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils$8].<init>(java.lang.String)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - "[io.netty.util.internal.SocketUtils$8].run()"
    - "[java.security.PrivilegedActionException].getCause()"
    functionUses: 2
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils:153,1"
      Dst: "[io.netty.util.internal.SocketUtils$8].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.SocketUtils:153,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - Src: "io.netty.util.internal.SocketUtils:160,1"
      Dst: "[java.security.PrivilegedActionException].getCause()"
    JavaMethodInfo:
      exceptions:
      - "java.net.UnknownHostException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.DefaultNameResolver].doResolveAll(java.lang.String,io.netty.util.concurrent.Promise<List<InetAddress>>)"
    functionSourceFile: "io.netty.resolver.DefaultNameResolver"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 55
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.util.concurrent.Promise<List<InetAddress>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils].allAddressesByName(java.lang.String)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setSuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.DefaultNameResolver:50,1"
      Dst: "[io.netty.util.internal.SocketUtils].allAddressesByName(java.lang.String)"
    - Src: "io.netty.resolver.DefaultNameResolver:50,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.resolver.DefaultNameResolver:50,1"
      Dst: "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - Src: "io.netty.resolver.DefaultNameResolver:52,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils].allAddressesByName(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.SocketUtils"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 174
    functionDepth: 1
    returnType: "java.net.InetAddress[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils$9].<init>(java.lang.String)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - "[io.netty.util.internal.SocketUtils$9].run()"
    - "[java.security.PrivilegedActionException].getCause()"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils:166,1"
      Dst: "[io.netty.util.internal.SocketUtils$9].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.SocketUtils:166,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - Src: "io.netty.util.internal.SocketUtils:173,1"
      Dst: "[java.security.PrivilegedActionException].getCause()"
    JavaMethodInfo:
      exceptions:
      - "java.net.UnknownHostException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$9].<init>(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.SocketUtils$9"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$9:166,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].<init>()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelHandler[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:84,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,io.netty.channel.ChannelHandler[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:93,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelHandler[])"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandler[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,io.netty.channel.ChannelHandler[])"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:102,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].<init>(boolean,io.netty.channel.ChannelHandler[])"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.channel.ChannelHandler[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,boolean,io.netty.channel.ChannelHandler[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:113,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,boolean,io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].<init>(boolean,boolean,io.netty.channel.ChannelHandler[])"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "boolean"
    - "io.netty.channel.ChannelHandler[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,boolean,boolean,io.netty.channel.ChannelHandler[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:126,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,boolean,boolean,io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,io.netty.channel.ChannelHandler[])"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelId"
    - "io.netty.channel.ChannelHandler[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,boolean,io.netty.channel.ChannelHandler[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:137,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,boolean,io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,boolean,io.netty.channel.ChannelHandler[])"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelId"
    - "boolean"
    - "io.netty.channel.ChannelHandler[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,boolean,boolean,io.netty.channel.ChannelHandler[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:150,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,boolean,boolean,io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.ChannelId,boolean,boolean,io.netty.channel.ChannelHandler[])"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelId"
    - "boolean"
    - "boolean"
    - "io.netty.channel.ChannelHandler[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.Channel,io.netty.channel.ChannelId,boolean,boolean,io.netty.channel.ChannelHandler[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:166,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.Channel,io.netty.channel.ChannelId,boolean,boolean,io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].<init>(io.netty.channel.Channel,io.netty.channel.ChannelId,boolean,boolean,io.netty.channel.ChannelHandler[])"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 188
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.channel.ChannelId"
    - "boolean"
    - "boolean"
    - "io.netty.channel.ChannelHandler[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedEventLoop].<init>()"
    - "[io.netty.channel.embedded.EmbeddedChannel$1].<init>(io.netty.channel.embedded.EmbeddedChannel)"
    - "[io.netty.channel.AbstractChannel].<init>(io.netty.channel.Channel,io.netty.channel.ChannelId)"
    - "[io.netty.channel.embedded.EmbeddedChannel].metadata(boolean)"
    - "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    - "[io.netty.channel.embedded.EmbeddedChannel].setup(boolean,io.netty.channel.ChannelHandler[])"
    functionUses: 1
    ICount: 20
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:183,1"
      Dst: "[io.netty.channel.AbstractChannel].<init>(io.netty.channel.Channel,io.netty.channel.ChannelId)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:64,1"
      Dst: "[io.netty.channel.embedded.EmbeddedEventLoop].<init>()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:65,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel$1].<init>(io.netty.channel.embedded.EmbeddedChannel)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:184,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].metadata(boolean)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:185,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:186,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].setup(boolean,io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].register()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedEventLoop].register(io.netty.channel.Channel)"
    - "[java.util.concurrent.Future].isDone()"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:237"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:238"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:237"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:237"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:238"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:237"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:239"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:242"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:236,1"
      Dst: "[io.netty.channel.embedded.EmbeddedEventLoop].register(io.netty.channel.Channel)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:237,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:237,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:238,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:240,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].newChannelPipeline()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 245
    functionLinenumberEnd: 247
    functionDepth: 4
    returnType: "io.netty.channel.DefaultChannelPipeline"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedChannelPipeline].<init>(io.netty.channel.embedded.EmbeddedChannel,io.netty.channel.embedded.EmbeddedChannel)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:246,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedChannelPipeline].<init>(io.netty.channel.embedded.EmbeddedChannel,io.netty.channel.embedded.EmbeddedChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector].isEnabled()"
    functionSourceFile: "io.netty.util.ResourceLeakDetector"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector].getLevel()"
    - "[java.lang.Enum].ordinal()"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.ResourceLeakDetector:146"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector:145"
        BranchSideFuncs:
        - "getLevel()"
        - "ordinal()"
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector:146,1"
      Dst: "[io.netty.util.ResourceLeakDetector].getLevel()"
    - Src: "io.netty.util.ResourceLeakDetector:146,1"
      Dst: "[java.lang.Enum].ordinal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.ResourceLeakDetector].getLevel()"
    functionSourceFile: "io.netty.util.ResourceLeakDetector"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionDepth: 0
    returnType: "io.netty.util.ResourceLeakDetector$Level"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.SucceededChannelFuture].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.channel.SucceededChannelFuture"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CompleteChannelFuture].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.SucceededChannelFuture:33,1"
      Dst: "[io.netty.channel.CompleteChannelFuture].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$TailContext].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.DefaultChannelPipeline)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$TailContext"
    linkageType: ""
    functionLinenumber: 1246
    functionLinenumberEnd: 1251
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.DefaultChannelPipeline"
    - "io.netty.channel.DefaultChannelPipeline"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.util.concurrent.EventExecutor,java.lang.String,java.lang.Class)"
    - "[io.netty.channel.DefaultChannelPipeline].access$400()"
    - "[io.netty.channel.AbstractChannelHandlerContext].setAddComplete()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$TailContext:1248,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].access$400()"
    - Src: "io.netty.channel.DefaultChannelPipeline$TailContext:1248,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.util.concurrent.EventExecutor,java.lang.String,java.lang.Class)"
    - Src: "io.netty.channel.DefaultChannelPipeline$TailContext:1249,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].setAddComplete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.channel.DefaultChannelPipeline)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1309
    functionLinenumberEnd: 1315
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.DefaultChannelPipeline"
    - "io.netty.channel.DefaultChannelPipeline"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.util.concurrent.EventExecutor,java.lang.String,java.lang.Class)"
    - "[io.netty.channel.DefaultChannelPipeline].access$500()"
    - "[io.netty.channel.DefaultChannelPipeline].channel()"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.embedded.EmbeddedChannel].unsafe()"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - "[io.netty.channel.AbstractChannelHandlerContext].setAddComplete()"
    - "[io.netty.channel.Channel].unsafe()"
    functionUses: 1
    ICount: 11
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1311,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].access$500()"
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1311,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].<init>(io.netty.channel.DefaultChannelPipeline,io.netty.util.concurrent.EventExecutor,java.lang.String,java.lang.Class)"
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1312,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].channel()"
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1312,1"
      Dst: "[io.netty.channel.Channel].unsafe()"
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1313,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].setAddComplete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].metadata()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 250
    functionLinenumberEnd: 252
    functionDepth: 0
    returnType: "io.netty.channel.ChannelMetadata"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].config()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionDepth: 0
    returnType: "io.netty.channel.ChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 51
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 265
    functionLinenumberEnd: 267
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 34
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:266"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:265"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].lastInboundBuffer()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Queue"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].inboundMessages()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:284,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].inboundMessages()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].outboundMessages()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 295
    functionDepth: 0
    returnType: "java.util.Queue"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:291"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:294"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:293"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:292,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].lastOutboundBuffer()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Queue"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].outboundMessages()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:302,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].outboundMessages()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].readOutbound()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 321
    functionLinenumberEnd: 327
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].poll(java.util.Queue)"
    - "[io.netty.util.ReferenceCountUtil].touch(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:323"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:326"
        BranchSideFuncs:
        - "touch(java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:325"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:322,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].poll(java.util.Queue)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:324,1"
      Dst: "[io.netty.util.ReferenceCountUtil].touch(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].writeOneInbound(java.lang.Object)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.embedded.EmbeddedChannel].writeOneInbound(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:358,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:358,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].writeOneInbound(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].writeOneInbound(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].checkOpen(boolean)"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.embedded.EmbeddedChannel].checkException(io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:368"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:371"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:370"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:368,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].checkOpen(boolean)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:369,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:369,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:371,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].checkException(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].flushInbound()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.embedded.EmbeddedChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].voidPromise()"
    - "[io.netty.channel.embedded.EmbeddedChannel].flushInbound(boolean,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:380,1"
      Dst: "[io.netty.channel.AbstractChannel].voidPromise()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:380,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].flushInbound(boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].writeOutbound(java.lang.Object[])"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 399
    functionLinenumberEnd: 432
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].ensureOpen()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isNotEmpty(java.util.Queue)"
    - "[io.netty.util.internal.RecyclableArrayList].newInstance(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[io.netty.channel.AbstractChannel].write(java.lang.Object)"
    - "[io.netty.channel.embedded.EmbeddedChannel].flushOutbound0()"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.channel.embedded.EmbeddedChannel].recordException(io.netty.channel.ChannelFuture)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.embedded.EmbeddedChannel].checkException()"
    - "[io.netty.util.internal.RecyclableArrayList].recycle()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 3
    ICount: 42
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:401"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:405"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:404"
        BranchSideFuncs:
        - "newInstance(int)"
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:407"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:414"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:413"
        BranchSideFuncs:
        - "flushOutbound0()"
        - "size()"
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:408"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:402"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:401"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "recordException(io.netty.channel.ChannelFuture)"
        - "isNotEmpty(java.util.Queue)"
        - "get(int)"
        - "isDone()"
        - "recycle()"
        - "newInstance(int)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "checkException()"
        - "write(java.lang.Object)"
        - "flushOutbound0()"
        - "size()"
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:417"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:427"
        BranchSideFuncs:
        - "get(int)"
        - "isDone()"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:426"
        BranchSideFuncs:
        - "isNotEmpty(java.util.Queue)"
        - "checkException()"
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:419"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:423"
        BranchSideFuncs:
        - "recordException(io.netty.channel.ChannelFuture)"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:422"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:400,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].ensureOpen()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:402,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].isNotEmpty(java.util.Queue)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:405,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].newInstance(int)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:411,1"
      Dst: "[io.netty.channel.AbstractChannel].write(java.lang.Object)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:411,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:414,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].flushOutbound0()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:416,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:418,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:419,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:420,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].recordException(io.netty.channel.ChannelFuture)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:423,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:427,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].checkException()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:430,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].recycle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].flushOutbound0()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 472
    functionLinenumberEnd: 477
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    - "[io.netty.channel.AbstractChannel].flush()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:473,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].runPendingTasks()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:475,1"
      Dst: "[io.netty.channel.AbstractChannel].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].recordException(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 635
    functionLinenumberEnd: 640
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.channel.embedded.EmbeddedChannel].recordException(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].cause()"
    functionUses: 2
    ICount: 7
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:636"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:639"
        BranchSideFuncs:
        - "recordException(java.lang.Throwable)"
        - "cause()"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:638"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:636,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:637,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:637,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].recordException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].writeOneOutbound(java.lang.Object)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.embedded.EmbeddedChannel].writeOneOutbound(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:441,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:441,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].writeOneOutbound(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].writeOneOutbound(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].checkOpen(boolean)"
    - "[io.netty.channel.AbstractChannel].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel].checkException(io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:451"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:454"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:453"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:451,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].checkOpen(boolean)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:452,1"
      Dst: "[io.netty.channel.AbstractChannel].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:454,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].checkException(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].flushOutbound()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.embedded.EmbeddedChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].checkOpen(boolean)"
    - "[io.netty.channel.embedded.EmbeddedChannel].flushOutbound0()"
    - "[io.netty.channel.AbstractChannel].voidPromise()"
    - "[io.netty.channel.embedded.EmbeddedChannel].checkException(io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:463"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:466"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:465"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:463,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].checkOpen(boolean)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:464,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].flushOutbound0()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:466,1"
      Dst: "[io.netty.channel.AbstractChannel].voidPromise()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:466,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].checkException(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].releaseInbound()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].releaseAll(java.util.Queue)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:521,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].releaseAll(java.util.Queue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].releaseOutbound()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].releaseAll(java.util.Queue)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:529,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].releaseAll(java.util.Queue)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].releaseAll(java.util.Queue<Object>)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 532
    functionLinenumberEnd: 544
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Queue<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].isNotEmpty(java.util.Queue)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[java.util.Queue].poll()"
    functionUses: 4
    ICount: 10
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:533"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:542"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:536"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:539"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:538"
        BranchSideFuncs:
        - "release(java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:533,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].isNotEmpty(java.util.Queue)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:535,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:539,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].disconnect()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.embedded.EmbeddedChannel].disconnect(io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:561,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:561,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].disconnect(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].disconnect(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelMetadata].hasDisconnect()"
    - "[io.netty.channel.embedded.EmbeddedChannel].finishPendingTasks(boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:579"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:578"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:577"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:578,1"
      Dst: "[io.netty.channel.AbstractChannel].disconnect(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:579,1"
      Dst: "[io.netty.channel.ChannelMetadata].hasDisconnect()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:579,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].finishPendingTasks(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].isNotEmpty(java.util.Queue<Object>)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 583
    functionLinenumberEnd: 585
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Queue<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].isEmpty()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].isEmpty()"
    - "[java.util.ArrayDeque].isEmpty()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].isEmpty()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].isEmpty()"
    - "[io.netty.util.internal.DefaultPriorityQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].isEmpty()"
    - "[io.netty.util.internal.EmptyPriorityQueue].isEmpty()"
    - "[java.util.Collection].isEmpty()"
    functionUses: 7
    ICount: 8
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:584"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:583"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:584"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:583"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:584,1"
      Dst: "[java.util.Collection].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].poll(java.util.Queue<Object>)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 587
    functionLinenumberEnd: 589
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.util.Queue<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[java.util.Queue].poll()"
    functionUses: 2
    ICount: 6
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:588"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:587"
        BranchSideFuncs:
        - "poll()"
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:588,1"
      Dst: "[java.util.Queue].poll()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].hasPendingTasks()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].embeddedEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].hasPendingNormalTasks()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].nextScheduledTask()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:617"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:617"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:616"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:618"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:616"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:617,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].embeddedEventLoop()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:617,1"
      Dst: "[io.netty.channel.embedded.EmbeddedEventLoop].hasPendingNormalTasks()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:618,1"
      Dst: "[io.netty.channel.embedded.EmbeddedEventLoop].nextScheduledTask()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.embedded.EmbeddedEventLoop].hasPendingNormalTasks()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].isEmpty()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedEventLoop:79"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedEventLoop:78"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:79,1"
      Dst: "[java.util.Collection].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedEventLoop].nextScheduledTask()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].nextScheduledTaskNano()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:95,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].nextScheduledTaskNano()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].runScheduledPendingTasks()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].embeddedEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].runScheduledTasks()"
    - "[io.netty.channel.embedded.EmbeddedChannel].recordException(java.lang.Throwable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].nextScheduledTask()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:628,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].embeddedEventLoop()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:628,1"
      Dst: "[io.netty.channel.embedded.EmbeddedEventLoop].runScheduledTasks()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:630,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].recordException(java.lang.Throwable)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:631,1"
      Dst: "[io.netty.channel.embedded.EmbeddedEventLoop].nextScheduledTask()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].advanceTimeBy(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].embeddedEventLoop()"
    - "[java.util.concurrent.TimeUnit].toNanos(long)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].advanceTimeBy(long)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:656,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].embeddedEventLoop()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:656,1"
      Dst: "[java.util.concurrent.TimeUnit].toNanos(long)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:656,1"
      Dst: "[io.netty.channel.embedded.EmbeddedEventLoop].advanceTimeBy(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedEventLoop].advanceTimeBy(long)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedEventLoop:107"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedEventLoop:111"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedEventLoop:110"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].freezeTime()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].embeddedEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].freezeTime()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:665,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].embeddedEventLoop()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:665,1"
      Dst: "[io.netty.channel.embedded.EmbeddedEventLoop].freezeTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedEventLoop].freezeTime()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedEventLoop].getCurrentTimeNanos()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedEventLoop:116"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedEventLoop:120"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedEventLoop:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:117,1"
      Dst: "[io.netty.channel.embedded.EmbeddedEventLoop].getCurrentTimeNanos()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].unfreezeTime()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].embeddedEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].unfreezeTime()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:676,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].embeddedEventLoop()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:676,1"
      Dst: "[io.netty.channel.embedded.EmbeddedEventLoop].unfreezeTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedEventLoop].unfreezeTime()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].nanoTime()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedEventLoop:123"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedEventLoop:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedEventLoop:127,1"
      Dst: "[java.lang.System].nanoTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].isCompatible(io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 737
    functionLinenumberEnd: 739
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 742
    functionLinenumberEnd: 744
    functionDepth: 1
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:743"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:742"
        BranchSideFuncs:
        - "isActive()"
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:743,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].remoteAddress0()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 747
    functionLinenumberEnd: 749
    functionDepth: 1
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:748"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:747"
        BranchSideFuncs:
        - "isActive()"
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:748,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].doRegister()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 752
    functionLinenumberEnd: 755
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 758
    functionLinenumberEnd: 760
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].doDisconnect()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 762
    functionLinenumberEnd: 767
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelMetadata].hasDisconnect()"
    - "[io.netty.channel.embedded.EmbeddedChannel].doClose()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:763"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:766"
        BranchSideFuncs:
        - "doClose()"
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:765"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:763,1"
      Dst: "[io.netty.channel.ChannelMetadata].hasDisconnect()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:764,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].doClose()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].doClose()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 769
    functionLinenumberEnd: 772
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].doBeginRead()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 775
    functionLinenumberEnd: 777
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].newUnsafe()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 779
    functionLinenumberEnd: 781
    functionDepth: 3
    returnType: "io.netty.channel.AbstractChannel$AbstractUnsafe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe].<init>(io.netty.channel.embedded.EmbeddedChannel,io.netty.channel.embedded.EmbeddedChannel$1)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:780,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe].<init>(io.netty.channel.embedded.EmbeddedChannel,io.netty.channel.embedded.EmbeddedChannel$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe].<init>(io.netty.channel.embedded.EmbeddedChannel,io.netty.channel.embedded.EmbeddedChannel$1)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe"
    linkageType: ""
    functionLinenumber: 817
    functionLinenumberEnd: 819
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.embedded.EmbeddedChannel"
    - "io.netty.channel.embedded.EmbeddedChannel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe].<init>(io.netty.channel.embedded.EmbeddedChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe:818,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe].<init>(io.netty.channel.embedded.EmbeddedChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe].<init>(io.netty.channel.embedded.EmbeddedChannel)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe"
    linkageType: ""
    functionLinenumber: 817
    functionLinenumberEnd: 823
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.embedded.EmbeddedChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].<init>(io.netty.channel.AbstractChannel)"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].<init>(io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe:818,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].<init>(io.netty.channel.AbstractChannel)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe:822,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].<init>(io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].unsafe()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 784
    functionLinenumberEnd: 786
    functionDepth: 0
    returnType: "io.netty.channel.Channel$Unsafe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].unsafe()"
    functionUses: 22
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:785,1"
      Dst: "[io.netty.channel.AbstractChannel].unsafe()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].doWrite(io.netty.channel.ChannelOutboundBuffer)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 790
    functionLinenumberEnd: 801
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].current()"
    - "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    - "[io.netty.channel.embedded.EmbeddedChannel].handleOutboundMessage(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundBuffer].remove()"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannel:792"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:796"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannel:795"
        BranchSideFuncs:
        - "handleOutboundMessage(java.lang.Object)"
        - "retain(java.lang.Object)"
        - "remove()"
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:791,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].current()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:796,1"
      Dst: "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:797,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].handleOutboundMessage(java.lang.Object)"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:798,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].remove()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].handleOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 807
    functionLinenumberEnd: 810
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentLinkedQueue].add(java.lang.Object)"
    - "[java.util.AbstractQueue].add(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].add(java.lang.Object)"
    - "[java.util.ArrayDeque].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].add(java.lang.Object)"
    - "[io.netty.channel.embedded.EmbeddedChannel].outboundMessages()"
    - "[java.util.Queue].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:808,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].outboundMessages()"
    - Src: "io.netty.channel.embedded.EmbeddedChannel:808,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel].access$000(io.netty.channel.embedded.EmbeddedChannel,io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.embedded.EmbeddedChannel"
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].recordException(io.netty.channel.ChannelFuture)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel:51,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].recordException(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].<init>(io.netty.resolver.dns.SingletonDnsServerAddresses)"
    functionSourceFile: "io.netty.resolver.dns.SingletonDnsServerAddresses$1"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.SingletonDnsServerAddresses"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.SingletonDnsServerAddresses$1:25,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].next()"
    functionSourceFile: "io.netty.resolver.dns.SingletonDnsServerAddresses$1"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 1
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses].access$000(io.netty.resolver.dns.SingletonDnsServerAddresses)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.SingletonDnsServerAddresses$1:28,1"
      Dst: "[io.netty.resolver.dns.SingletonDnsServerAddresses].access$000(io.netty.resolver.dns.SingletonDnsServerAddresses)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.SingletonDnsServerAddresses].access$000(io.netty.resolver.dns.SingletonDnsServerAddresses)"
    functionSourceFile: "io.netty.resolver.dns.SingletonDnsServerAddresses"
    linkageType: ""
    functionLinenumber: 20
    functionLinenumberEnd: 22
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.SingletonDnsServerAddresses"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].size()"
    functionSourceFile: "io.netty.resolver.dns.SingletonDnsServerAddresses$1"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].duplicate()"
    functionSourceFile: "io.netty.resolver.dns.SingletonDnsServerAddresses$1"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsServerAddressStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].toString()"
    functionSourceFile: "io.netty.resolver.dns.SingletonDnsServerAddresses$1"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses].toString()"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.SingletonDnsServerAddresses$1:43,1"
      Dst: "[io.netty.resolver.dns.SingletonDnsServerAddresses].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.SingletonDnsServerAddresses].toString()"
    functionSourceFile: "io.netty.resolver.dns.SingletonDnsServerAddresses"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 20
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.SingletonDnsServerAddresses:58,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.dns.SingletonDnsServerAddresses:58,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.dns.SingletonDnsServerAddresses:58,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.resolver.dns.SingletonDnsServerAddresses:58,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.FixedLengthFrameDecoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.FixedLengthFrameDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.FixedLengthFrameDecoder:50,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.FixedLengthFrameDecoder:51,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.FixedLengthFrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.FixedLengthFrameDecoder"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 62
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.FixedLengthFrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.FixedLengthFrameDecoder:58"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.FixedLengthFrameDecoder:61"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.FixedLengthFrameDecoder:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.FixedLengthFrameDecoder:57,1"
      Dst: "[io.netty.handler.codec.FixedLengthFrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.FixedLengthFrameDecoder:59,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.FixedLengthFrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.FixedLengthFrameDecoder"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.FixedLengthFrameDecoder:73"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.FixedLengthFrameDecoder:76"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.FixedLengthFrameDecoder:75"
        BranchSideFuncs:
        - "readRetainedSlice(int)"
    Callsites:
    - Src: "io.netty.handler.codec.FixedLengthFrameDecoder:73,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.FixedLengthFrameDecoder:76,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMethod$EnumNameMap$Node].<init>(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMethod$EnumNameMap$Node"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 219
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 9
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMethod$EnumNameMap$Node:215,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedStream].<init>(java.io.InputStream)"
    functionSourceFile: "io.netty.handler.stream.ChunkedStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.stream.ChunkedStream].<init>(java.io.InputStream,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedStream:49,1"
      Dst: "[io.netty.handler.stream.ChunkedStream].<init>(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedStream].<init>(java.io.InputStream,int)"
    functionSourceFile: "io.netty.handler.stream.ChunkedStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[java.io.PushbackInputStream].<init>(java.io.InputStream)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.stream.ChunkedStream:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedStream:65"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedStream:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedStream:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.stream.ChunkedStream:59,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.stream.ChunkedStream:60,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.handler.stream.ChunkedStream:65,1"
      Dst: "[java.io.PushbackInputStream].<init>(java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.stream.ChunkedStream].transferredBytes()"
    functionSourceFile: "io.netty.handler.stream.ChunkedStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedStream].isEndOfInput()"
    functionSourceFile: "io.netty.handler.stream.ChunkedStream"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PushbackInputStream].available()"
    - "[java.io.PushbackInputStream].read()"
    - "[java.io.PushbackInputStream].unread(int)"
    functionUses: 10
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.stream.ChunkedStream:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedStream:82"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedStream:81"
        BranchSideFuncs:
        - "available()"
    - Branch String: "io.netty.handler.stream.ChunkedStream:82"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedStream:86"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedStream:85"
        BranchSideFuncs:
        - "read()"
    - Branch String: "io.netty.handler.stream.ChunkedStream:87"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedStream:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedStream:89"
        BranchSideFuncs:
        - "unread(int)"
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedStream:82,1"
      Dst: "[java.io.PushbackInputStream].available()"
    - Src: "io.netty.handler.stream.ChunkedStream:86,1"
      Dst: "[java.io.PushbackInputStream].read()"
    - Src: "io.netty.handler.stream.ChunkedStream:90,1"
      Dst: "[java.io.PushbackInputStream].unread(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedStream].close()"
    functionSourceFile: "io.netty.handler.stream.ChunkedStream"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.PushbackInputStream].close()"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedStream:98,1"
      Dst: "[java.io.PushbackInputStream].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedStream].readChunk(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.stream.ChunkedStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.handler.stream.ChunkedStream].readChunk(io.netty.buffer.ByteBufAllocator)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedStream:104,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.stream.ChunkedStream:104,1"
      Dst: "[io.netty.handler.stream.ChunkedStream].readChunk(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedStream].readChunk(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.handler.stream.ChunkedStream"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 137
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.stream.ChunkedStream].isEndOfInput()"
    - "[java.io.PushbackInputStream].available()"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(java.io.InputStream,int)"
    functionUses: 4
    ICount: 34
    EdgeCount: 54
    BranchProfiles:
    - Branch String: "io.netty.handler.stream.ChunkedStream:109"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedStream:113"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedStream:112"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedStream:115"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedStream:118"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedStream:117"
        BranchSideFuncs:
        - "available()"
        - "min(int,int)"
    - Branch String: "io.netty.handler.stream.ChunkedStream:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedStream:129"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedStream:128"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedStream:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedStream:127"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.stream.ChunkedStream:126"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedStream:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedStream:129"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.stream.ChunkedStream:128"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedStream:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedStream:136"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.stream.ChunkedStream:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedStream:109,1"
      Dst: "[io.netty.handler.stream.ChunkedStream].isEndOfInput()"
    - Src: "io.netty.handler.stream.ChunkedStream:113,1"
      Dst: "[java.io.PushbackInputStream].available()"
    - Src: "io.netty.handler.stream.ChunkedStream:118,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.stream.ChunkedStream:122,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.stream.ChunkedStream:125,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(java.io.InputStream,int)"
    - Src: "io.netty.handler.stream.ChunkedStream:134,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.stream.ChunkedStream].length()"
    functionSourceFile: "io.netty.handler.stream.ChunkedStream"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedStream].progress()"
    functionSourceFile: "io.netty.handler.stream.ChunkedStream"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$1"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$1:59,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$1].visit(io.netty.handler.codec.http2.Http2FrameStream)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$1"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].trySetWritable()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$1:64,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].trySetWritable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Processor].<init>(int[],int[])"
    functionSourceFile: "io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Processor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Processor:52,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Processor].process(byte)"
    functionSourceFile: "io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Processor"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 65
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getInt(int[],long)"
    functionUses: 2
    ICount: 19
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Processor:60"
      Branch Sides:
      - BranchSide: "io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Processor:64"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Processor:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Processor:59,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getInt(int[],long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].getInt(int[],long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 590
    functionLinenumberEnd: 592
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int[]"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getInt(int[],long)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:591,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getInt(int[],long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].getInt(int[],long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 663
    functionLinenumberEnd: 665
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int[]"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getInt(java.lang.Object,long)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:664,1"
      Dst: "[sun.misc.Unsafe].getInt(java.lang.Object,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Processor].getFoundNeedleId()"
    functionSourceFile: "io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Processor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Processor].reset()"
    functionSourceFile: "io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Processor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedWriteHandler$1].<init>(io.netty.handler.stream.ChunkedWriteHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.stream.ChunkedWriteHandler$1"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.stream.ChunkedWriteHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedWriteHandler$1:106,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    functionSourceFile: "io.netty.handler.stream.ChunkedWriteHandler$1"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.stream.ChunkedWriteHandler].access$000(io.netty.handler.stream.ChunkedWriteHandler,io.netty.channel.ChannelHandlerContext)"
    functionUses: 50
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedWriteHandler$1:110,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler].access$000(io.netty.handler.stream.ChunkedWriteHandler,io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedWriteHandler].access$000(io.netty.handler.stream.ChunkedWriteHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.stream.ChunkedWriteHandler"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.stream.ChunkedWriteHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.stream.ChunkedWriteHandler].resumeTransfer0(io.netty.channel.ChannelHandlerContext)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:70,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler].resumeTransfer0(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedWriteHandler].resumeTransfer0(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.stream.ChunkedWriteHandler"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 123
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.stream.ChunkedWriteHandler].doFlush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger:io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:118,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler].doFlush(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:120,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedWriteHandler].doFlush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.stream.ChunkedWriteHandler"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 316
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    - "[io.netty.channel.local.LocalServerChannel].isActive()"
    - "[io.netty.channel.Channel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    - "[io.netty.bootstrap.FailedChannel].isActive()"
    - "[io.netty.handler.stream.ChunkedWriteHandler].discard(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannel].isWritable()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isWritable()"
    - "[java.util.LinkedList].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].peek()"
    - "[java.util.concurrent.LinkedBlockingDeque].peek()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].peek()"
    - "[io.netty.util.internal.EmptyPriorityQueue].peek()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].peek()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].peek()"
    - "[java.util.ArrayDeque].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].peek()"
    - "[io.netty.util.internal.DefaultPriorityQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].peek()"
    - "[java.util.concurrent.LinkedBlockingQueue].peek()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].remove()"
    - "[java.util.AbstractQueue].remove()"
    - "[java.util.LinkedList].remove()"
    - "[io.netty.util.internal.EmptyPriorityQueue].remove()"
    - "[java.util.ArrayDeque].remove()"
    - "[java.util.concurrent.LinkedBlockingDeque].remove()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].remove()"
    - "[io.netty.handler.codec.http.HttpChunkedInput].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.stream.ChunkedStream].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.stream.ChunkedFile].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.codec.http2.Http2DataChunkedInput].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.stream.ChunkedNioStream].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.stream.ChunkedNioFile].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketChunkedInput].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.stream.ChunkedNioStream].isEndOfInput()"
    - "[io.netty.handler.codec.http2.Http2DataChunkedInput].isEndOfInput()"
    - "[io.netty.handler.stream.ChunkedStream].isEndOfInput()"
    - "[io.netty.handler.codec.http.HttpChunkedInput].isEndOfInput()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketChunkedInput].isEndOfInput()"
    - "[io.netty.handler.stream.ChunkedFile].isEndOfInput()"
    - "[io.netty.handler.stream.ChunkedNioFile].isEndOfInput()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].isEndOfInput()"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.handler.stream.ChunkedWriteHandler].closeInput(io.netty.handler.stream.ChunkedInput)"
    - "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].fail(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.handler.stream.ChunkedWriteHandler].handleEndOfInputFuture(io.netty.channel.ChannelFuture,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite)"
    - "[io.netty.handler.stream.ChunkedWriteHandler$2].<init>(io.netty.handler.stream.ChunkedWriteHandler,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.stream.ChunkedWriteHandler].handleFuture(io.netty.channel.ChannelFuture,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite,boolean)"
    - "[io.netty.handler.stream.ChunkedWriteHandler$3].<init>(io.netty.handler.stream.ChunkedWriteHandler,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite,boolean)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[java.nio.channels.ClosedChannelException].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.channel.Channel].isWritable()"
    - "[java.util.Queue].peek()"
    - "[java.util.concurrent.Future].isDone()"
    - "[java.util.Queue].remove()"
    - "[io.netty.handler.stream.ChunkedInput].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.stream.ChunkedInput].isEndOfInput()"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 4
    ICount: 95
    EdgeCount: 170
    BranchProfiles:
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:198"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:197"
        BranchSideFuncs:
        - "alloc()"
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:200"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:312"
        BranchSideFuncs:
        - "peek()"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:311"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:203"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:207"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:206"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:207"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:221"
        BranchSideFuncs:
        - "peek()"
        - "readChunk(io.netty.buffer.ByteBufAllocator)"
        - "alloc()"
        - "isEndOfInput()"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:220"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:223"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:301"
        BranchSideFuncs:
        - "readChunk(io.netty.buffer.ByteBufAllocator)"
        - "isEndOfInput()"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:300"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
        - "remove()"
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:232"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:236"
        BranchSideFuncs:
        - "peek()"
        - "readChunk(io.netty.buffer.ByteBufAllocator)"
        - "alloc()"
        - "isEndOfInput()"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:235"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:234"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:234"
        BranchSideFuncs:
        - "peek()"
        - "readChunk(io.netty.buffer.ByteBufAllocator)"
        - "alloc()"
        - "isEndOfInput()"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:233"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:241"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:245"
        BranchSideFuncs:
        - "release(java.lang.Object)"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:244"
        BranchSideFuncs:
        - "closeInput(io.netty.handler.stream.ChunkedInput)"
        - "fail(java.lang.Throwable)"
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:250"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:256"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:257"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:262"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:263"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:268"
        BranchSideFuncs:
        - "writeAndFlush(java.lang.Object)"
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:270"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:287"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:286"
        BranchSideFuncs:
        - "isWritable()"
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:271"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:279"
        BranchSideFuncs:
        - "handleEndOfInputFuture(io.netty.channel.ChannelFuture,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite)"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:278"
        BranchSideFuncs:
        - "<init>(io.netty.handler.stream.ChunkedWriteHandler,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite)"
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:-1"
        BranchSideFuncs:
        - "isDone()"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:288"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:291"
        BranchSideFuncs:
        - "handleFuture(io.netty.channel.ChannelFuture,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite,boolean)"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:290"
        BranchSideFuncs:
        - "<init>(io.netty.handler.stream.ChunkedWriteHandler,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite,boolean)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:306"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:310"
        BranchSideFuncs:
        - "discard(java.lang.Throwable)"
        - "<init>()"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:309"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:312"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:315"
        BranchSideFuncs:
        - "flush()"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:314"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:192,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:193,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:194,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler].discard(java.lang.Throwable)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:199,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:200,1"
      Dst: "[io.netty.channel.Channel].isWritable()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:201,1"
      Dst: "[java.util.Queue].peek()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:207,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:217,1"
      Dst: "[java.util.Queue].remove()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:229,1"
      Dst: "[io.netty.handler.stream.ChunkedInput].readChunk(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:230,1"
      Dst: "[io.netty.handler.stream.ChunkedInput].isEndOfInput()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:242,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:245,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler].closeInput(io.netty.handler.stream.ChunkedInput)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:246,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].fail(java.lang.Throwable)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:269,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:272,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler].handleEndOfInputFuture(io.netty.channel.ChannelFuture,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:279,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler$2].<init>(io.netty.handler.stream.ChunkedWriteHandler,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:279,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:289,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler].handleFuture(io.netty.channel.ChannelFuture,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite,boolean)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:291,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler$3].<init>(io.netty.handler.stream.ChunkedWriteHandler,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite,boolean)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:302,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:307,1"
      Dst: "[java.nio.channels.ClosedChannelException].<init>()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:313,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 43
    CyclomaticComplexity: 17
  - functionName: "[io.netty.handler.stream.ChunkedWriteHandler].discard(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.stream.ChunkedWriteHandler"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 190
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.handler.stream.ChunkedNioStream].isEndOfInput()"
    - "[io.netty.handler.codec.http2.Http2DataChunkedInput].isEndOfInput()"
    - "[io.netty.handler.stream.ChunkedStream].isEndOfInput()"
    - "[io.netty.handler.codec.http.HttpChunkedInput].isEndOfInput()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketChunkedInput].isEndOfInput()"
    - "[io.netty.handler.stream.ChunkedFile].isEndOfInput()"
    - "[io.netty.handler.stream.ChunkedNioFile].isEndOfInput()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].isEndOfInput()"
    - "[io.netty.handler.codec.http.HttpChunkedInput].length()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].length()"
    - "[io.netty.handler.stream.ChunkedStream].length()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketChunkedInput].length()"
    - "[io.netty.handler.codec.http2.Http2DataChunkedInput].length()"
    - "[io.netty.handler.stream.ChunkedNioFile].length()"
    - "[io.netty.handler.stream.ChunkedFile].length()"
    - "[io.netty.handler.stream.ChunkedNioStream].length()"
    - "[io.netty.handler.stream.ChunkedWriteHandler].closeInput(io.netty.handler.stream.ChunkedInput)"
    - "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].fail(java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isWarnEnabled()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.nio.channels.ClosedChannelException].<init>()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].success(long)"
    - "[java.util.Queue].poll()"
    - "[io.netty.handler.stream.ChunkedInput].isEndOfInput()"
    - "[io.netty.handler.stream.ChunkedInput].length()"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 49
    EdgeCount: 60
    BranchProfiles:
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:153"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:156"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:155"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:183"
        BranchSideFuncs:
        - "closeInput(io.netty.handler.stream.ChunkedInput)"
        - "warn(java.lang.String,java.lang.Throwable)"
        - "append(java.lang.String)"
        - "toString()"
        - "isWarnEnabled()"
        - "length()"
        - "isEndOfInput()"
        - "getSimpleName()"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:182"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:168"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:158"
        BranchSideFuncs:
        - "closeInput(io.netty.handler.stream.ChunkedInput)"
        - "warn(java.lang.String,java.lang.Throwable)"
        - "append(java.lang.String)"
        - "toString()"
        - "isWarnEnabled()"
        - "length()"
        - "isEndOfInput()"
        - "getSimpleName()"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:157"
        BranchSideFuncs:
        - "closeInput(io.netty.handler.stream.ChunkedInput)"
        - "warn(java.lang.String,java.lang.Throwable)"
        - "append(java.lang.String)"
        - "toString()"
        - "isWarnEnabled()"
        - "length()"
        - "isEndOfInput()"
        - "getSimpleName()"
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:174"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:180"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:179"
        BranchSideFuncs:
        - "success(long)"
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:183"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:-1"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:151,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:162,1"
      Dst: "[io.netty.handler.stream.ChunkedInput].isEndOfInput()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:163,1"
      Dst: "[io.netty.handler.stream.ChunkedInput].length()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:164,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler].closeInput(io.netty.handler.stream.ChunkedInput)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:167,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].fail(java.lang.Throwable)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:168,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:169,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:169,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:169,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:169,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:169,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:176,1"
      Dst: "[java.nio.channels.ClosedChannelException].<init>()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:180,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].success(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].fail(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite"
    linkageType: ""
    functionLinenumber: 364
    functionLinenumberEnd: 368
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 6
    ICount: 7
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite:365,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite:366,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].success(long)"
    functionSourceFile: "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite"
    linkageType: ""
    functionLinenumber: 369
    functionLinenumberEnd: 377
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].progress(long,long)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].trySuccess()"
    - "[io.netty.channel.DefaultChannelPromise].trySuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].trySuccess()"
    - "[io.netty.channel.VoidChannelPromise].trySuccess()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelPromise].trySuccess()"
    functionUses: 2
    ICount: 10
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite:370"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite:373"
        BranchSideFuncs:
        - "progress(long,long)"
        - "trySuccess()"
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite:370,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite:374,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].progress(long,long)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite:375,1"
      Dst: "[io.netty.channel.ChannelPromise].trySuccess()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].progress(long,long)"
    functionSourceFile: "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite"
    linkageType: ""
    functionLinenumber: 378
    functionLinenumberEnd: 383
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultProgressivePromise].tryProgress(long,long)"
    - "[io.netty.util.concurrent.ProgressivePromise].tryProgress(long,long)"
    functionUses: 3
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite:379"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite:382"
        BranchSideFuncs:
        - "tryProgress(long,long)"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite:381"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite:380,1"
      Dst: "[io.netty.util.concurrent.ProgressivePromise].tryProgress(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.stream.ChunkedWriteHandler].handleEndOfInputFuture(io.netty.channel.ChannelFuture,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite)"
    functionSourceFile: "io.netty.handler.stream.ChunkedWriteHandler"
    linkageType: ""
    functionLinenumber: 317
    functionLinenumberEnd: 331
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelFuture"
    - "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.handler.stream.ChunkedWriteHandler].closeInput(io.netty.handler.stream.ChunkedInput)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].fail(java.lang.Throwable)"
    - "[io.netty.handler.codec.http.HttpChunkedInput].progress()"
    - "[io.netty.handler.codec.http2.Http2DataChunkedInput].progress()"
    - "[io.netty.handler.stream.ChunkedNioFile].progress()"
    - "[io.netty.handler.stream.ChunkedFile].progress()"
    - "[io.netty.handler.stream.ChunkedStream].progress()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].progress()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketChunkedInput].progress()"
    - "[io.netty.handler.stream.ChunkedNioStream].progress()"
    - "[io.netty.handler.codec.http.HttpChunkedInput].length()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].length()"
    - "[io.netty.handler.stream.ChunkedStream].length()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketChunkedInput].length()"
    - "[io.netty.handler.codec.http2.Http2DataChunkedInput].length()"
    - "[io.netty.handler.stream.ChunkedNioFile].length()"
    - "[io.netty.handler.stream.ChunkedFile].length()"
    - "[io.netty.handler.stream.ChunkedNioStream].length()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].progress(long,long)"
    - "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].success(long)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.handler.stream.ChunkedInput].progress()"
    - "[io.netty.handler.stream.ChunkedInput].length()"
    functionUses: 2
    ICount: 16
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:319"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:324"
        BranchSideFuncs:
        - "fail(java.lang.Throwable)"
        - "cause()"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:323"
        BranchSideFuncs:
        - "closeInput(io.netty.handler.stream.ChunkedInput)"
        - "progress()"
        - "progress(long,long)"
        - "success(long)"
        - "length()"
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:319,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:320,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler].closeInput(io.netty.handler.stream.ChunkedInput)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:321,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:321,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].fail(java.lang.Throwable)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:324,1"
      Dst: "[io.netty.handler.stream.ChunkedInput].progress()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:325,1"
      Dst: "[io.netty.handler.stream.ChunkedInput].length()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:327,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].progress(long,long)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:328,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].success(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.stream.ChunkedWriteHandler$2].<init>(io.netty.handler.stream.ChunkedWriteHandler,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite)"
    functionSourceFile: "io.netty.handler.stream.ChunkedWriteHandler$2"
    linkageType: ""
    functionLinenumber: 278
    functionLinenumberEnd: 280
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.stream.ChunkedWriteHandler"
    - "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedWriteHandler$2:279,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedWriteHandler].handleFuture(io.netty.channel.ChannelFuture,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite,boolean)"
    functionSourceFile: "io.netty.handler.stream.ChunkedWriteHandler"
    linkageType: ""
    functionLinenumber: 332
    functionLinenumberEnd: 344
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelFuture"
    - "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.handler.stream.ChunkedWriteHandler].closeInput(io.netty.handler.stream.ChunkedInput)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].fail(java.lang.Throwable)"
    - "[io.netty.handler.codec.http.HttpChunkedInput].length()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].length()"
    - "[io.netty.handler.stream.ChunkedStream].length()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketChunkedInput].length()"
    - "[io.netty.handler.codec.http2.Http2DataChunkedInput].length()"
    - "[io.netty.handler.stream.ChunkedNioFile].length()"
    - "[io.netty.handler.stream.ChunkedFile].length()"
    - "[io.netty.handler.stream.ChunkedNioStream].length()"
    - "[io.netty.handler.codec.http.HttpChunkedInput].progress()"
    - "[io.netty.handler.codec.http2.Http2DataChunkedInput].progress()"
    - "[io.netty.handler.stream.ChunkedNioFile].progress()"
    - "[io.netty.handler.stream.ChunkedFile].progress()"
    - "[io.netty.handler.stream.ChunkedStream].progress()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].progress()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketChunkedInput].progress()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].progress(long,long)"
    - "[io.netty.handler.stream.ChunkedNioStream].progress()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.CompleteChannelFuture].channel()"
    - "[io.netty.channel.DefaultChannelPromise].channel()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].channel()"
    - "[io.netty.channel.VoidChannelPromise].channel()"
    - "[io.netty.channel.AbstractChannel].isWritable()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isWritable()"
    - "[io.netty.handler.stream.ChunkedWriteHandler].resumeTransfer()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.handler.stream.ChunkedInput].progress()"
    - "[io.netty.handler.stream.ChunkedInput].length()"
    - "[io.netty.channel.ChannelFuture].channel()"
    - "[io.netty.channel.Channel].isWritable()"
    functionUses: 2
    ICount: 21
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:334"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:338"
        BranchSideFuncs:
        - "closeInput(io.netty.handler.stream.ChunkedInput)"
        - "fail(java.lang.Throwable)"
        - "cause()"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:337"
        BranchSideFuncs:
        - "progress()"
        - "progress(long,long)"
        - "channel()"
        - "isWritable()"
        - "length()"
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:339"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:343"
        BranchSideFuncs:
        - "resumeTransfer()"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:342"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:339"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:343"
        BranchSideFuncs:
        - "resumeTransfer()"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:334,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:335,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler].closeInput(io.netty.handler.stream.ChunkedInput)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:336,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:336,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].fail(java.lang.Throwable)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:338,1"
      Dst: "[io.netty.handler.stream.ChunkedInput].progress()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:338,1"
      Dst: "[io.netty.handler.stream.ChunkedInput].length()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:338,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler$PendingWrite].progress(long,long)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:339,1"
      Dst: "[io.netty.channel.ChannelFuture].channel()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:339,1"
      Dst: "[io.netty.channel.Channel].isWritable()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:340,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler].resumeTransfer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.stream.ChunkedWriteHandler].resumeTransfer()"
    functionSourceFile: "io.netty.handler.stream.ChunkedWriteHandler"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 115
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop:io.netty.util.concurrent.ImmediateEventExecutor:io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor:io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.handler.stream.ChunkedWriteHandler].resumeTransfer0(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].<init>(io.netty.handler.stream.ChunkedWriteHandler,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 1
    ICount: 14
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:99"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:101"
        BranchSideFuncs:
        - "inEventLoop()"
    - Branch String: "io.netty.handler.stream.ChunkedWriteHandler:102"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:106"
        BranchSideFuncs:
        - "resumeTransfer0(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.stream.ChunkedWriteHandler:105"
        BranchSideFuncs:
        - "run()"
        - "<init>(io.netty.handler.stream.ChunkedWriteHandler,io.netty.channel.ChannelHandlerContext)"
        - "execute(java.lang.Runnable)"
        - "executor()"
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:102,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:102,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:103,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler].resumeTransfer0(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:106,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler$1].<init>(io.netty.handler.stream.ChunkedWriteHandler,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:106,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.stream.ChunkedWriteHandler$3].<init>(io.netty.handler.stream.ChunkedWriteHandler,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite,boolean)"
    functionSourceFile: "io.netty.handler.stream.ChunkedWriteHandler$3"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 292
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.stream.ChunkedWriteHandler"
    - "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedWriteHandler$3:291,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.Cache$1].<init>()"
    functionSourceFile: "io.netty.resolver.dns.Cache$1"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.Cache$1:45,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.Cache$1].cancel(boolean)"
    functionSourceFile: "io.netty.resolver.dns.Cache$1"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.Cache$1].getDelay(java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.resolver.dns.Cache$1"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.Cache$1].compareTo(java.util.concurrent.Delayed)"
    functionSourceFile: "io.netty.resolver.dns.Cache$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.concurrent.Delayed"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.Cache$1:61,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.Cache$1].isCancelled()"
    functionSourceFile: "io.netty.resolver.dns.Cache$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.Cache$1].isDone()"
    functionSourceFile: "io.netty.resolver.dns.Cache$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.Cache$1].get()"
    functionSourceFile: "io.netty.resolver.dns.Cache$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.Cache$1:76,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.Cache$1].get(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.resolver.dns.Cache$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.Cache$1:81,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.Cache$1].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.Cache$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.Cache$1].compareTo(java.util.concurrent.Delayed)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.Cache$1:45,1"
      Dst: "[io.netty.resolver.dns.Cache$1].compareTo(java.util.concurrent.Delayed)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:754,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder].process(byte)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder"
    linkageType: ""
    functionLinenumber: 759
    functionLinenumberEnd: 782
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.StringUtil].decodeHexNibble(char)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    functionUses: 2
    ICount: 43
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:760"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:761"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:765"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:764"
        BranchSideFuncs:
        - "decodeHexNibble(char)"
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:767"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:768"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:767"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:767"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:771"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:770"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:774"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:776"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:779"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:778"
        BranchSideFuncs:
        - "writeByte(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:765,1"
      Dst: "[io.netty.util.internal.StringUtil].decodeHexNibble(char)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder:771,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder].access$100(io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].<init>(javax.net.ssl.SSLEngine)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].<init>()"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:33,1"
      Dst: "[javax.net.ssl.SSLEngine].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].getNegotiatedApplicationProtocol()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].setNegotiatedApplicationProtocol(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].getSession()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "javax.net.ssl.SSLSession"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getSession()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getSession()"
    - "[javax.net.ssl.SSLEngine].getSession()"
    functionUses: 6
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:48,1"
      Dst: "[javax.net.ssl.SSLEngine].getSession()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].getPeerHost()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].getPeerHost()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:67,1"
      Dst: "[javax.net.ssl.SSLEngine].getPeerHost()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].getPeerPort()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].getPeerPort()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:72,1"
      Dst: "[javax.net.ssl.SSLEngine].getPeerPort()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].getDelegatedTask()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "java.lang.Runnable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getDelegatedTask()"
    - "[io.netty.handler.ssl.JdkSslEngine].getDelegatedTask()"
    - "[javax.net.ssl.SSLEngine].getDelegatedTask()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:107,1"
      Dst: "[javax.net.ssl.SSLEngine].getDelegatedTask()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].isInboundDone()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].isInboundDone()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isInboundDone()"
    - "[javax.net.ssl.SSLEngine].isInboundDone()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:112,1"
      Dst: "[javax.net.ssl.SSLEngine].isInboundDone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].isOutboundDone()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].isOutboundDone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:117,1"
      Dst: "[javax.net.ssl.SSLEngine].isOutboundDone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].getSupportedCipherSuites()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].getSupportedCipherSuites()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:122,1"
      Dst: "[javax.net.ssl.SSLEngine].getSupportedCipherSuites()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].getEnabledCipherSuites()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].getEnabledCipherSuites()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:127,1"
      Dst: "[javax.net.ssl.SSLEngine].getEnabledCipherSuites()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].setEnabledCipherSuites(java.lang.String[])"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].setEnabledCipherSuites(java.lang.String[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setEnabledCipherSuites(java.lang.String[])"
    - "[javax.net.ssl.SSLEngine].setEnabledCipherSuites(java.lang.String[])"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:132,1"
      Dst: "[javax.net.ssl.SSLEngine].setEnabledCipherSuites(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].getSupportedProtocols()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].getSupportedProtocols()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:137,1"
      Dst: "[javax.net.ssl.SSLEngine].getSupportedProtocols()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].getEnabledProtocols()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].getEnabledProtocols()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:142,1"
      Dst: "[javax.net.ssl.SSLEngine].getEnabledProtocols()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].setEnabledProtocols(java.lang.String[])"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setEnabledProtocols(java.lang.String[])"
    - "[io.netty.handler.ssl.JdkSslEngine].setEnabledProtocols(java.lang.String[])"
    - "[javax.net.ssl.SSLEngine].setEnabledProtocols(java.lang.String[])"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:147,1"
      Dst: "[javax.net.ssl.SSLEngine].setEnabledProtocols(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].getHandshakeSession()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.SSLSession"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].getHandshakeSession()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:153,1"
      Dst: "[javax.net.ssl.SSLEngine].getHandshakeSession()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].beginHandshake()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].beginHandshake()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].beginHandshake()"
    - "[javax.net.ssl.SSLEngine].beginHandshake()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:158,1"
      Dst: "[javax.net.ssl.SSLEngine].beginHandshake()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].getHandshakeStatus()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionDepth: 0
    returnType: "javax.net.ssl.SSLEngineResult$HandshakeStatus"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getHandshakeStatus()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getHandshakeStatus()"
    - "[javax.net.ssl.SSLEngine].getHandshakeStatus()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:163,1"
      Dst: "[javax.net.ssl.SSLEngine].getHandshakeStatus()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].setUseClientMode(boolean)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].setUseClientMode(boolean)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setUseClientMode(boolean)"
    - "[javax.net.ssl.SSLEngine].setUseClientMode(boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:168,1"
      Dst: "[javax.net.ssl.SSLEngine].setUseClientMode(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].getUseClientMode()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getUseClientMode()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getUseClientMode()"
    - "[javax.net.ssl.SSLEngine].getUseClientMode()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:173,1"
      Dst: "[javax.net.ssl.SSLEngine].getUseClientMode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].setNeedClientAuth(boolean)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].setNeedClientAuth(boolean)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setNeedClientAuth(boolean)"
    - "[javax.net.ssl.SSLEngine].setNeedClientAuth(boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:178,1"
      Dst: "[javax.net.ssl.SSLEngine].setNeedClientAuth(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].getNeedClientAuth()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].getNeedClientAuth()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:183,1"
      Dst: "[javax.net.ssl.SSLEngine].getNeedClientAuth()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].setWantClientAuth(boolean)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].setWantClientAuth(boolean)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setWantClientAuth(boolean)"
    - "[javax.net.ssl.SSLEngine].setWantClientAuth(boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:188,1"
      Dst: "[javax.net.ssl.SSLEngine].setWantClientAuth(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].getWantClientAuth()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].getWantClientAuth()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:193,1"
      Dst: "[javax.net.ssl.SSLEngine].getWantClientAuth()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].setEnableSessionCreation(boolean)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].setEnableSessionCreation(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:198,1"
      Dst: "[javax.net.ssl.SSLEngine].setEnableSessionCreation(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].getEnableSessionCreation()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].getEnableSessionCreation()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:203,1"
      Dst: "[javax.net.ssl.SSLEngine].getEnableSessionCreation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].getSSLParameters()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionDepth: 0
    returnType: "javax.net.ssl.SSLParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getSSLParameters()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getSSLParameters()"
    - "[javax.net.ssl.SSLEngine].getSSLParameters()"
    functionUses: 4
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:208,1"
      Dst: "[javax.net.ssl.SSLEngine].getSSLParameters()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslEngine].setSSLParameters(javax.net.ssl.SSLParameters)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslEngine"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 215
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].setSSLParameters(javax.net.ssl.SSLParameters)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setSSLParameters(javax.net.ssl.SSLParameters)"
    - "[javax.net.ssl.SSLEngine].setSSLParameters(javax.net.ssl.SSLParameters)"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslEngine:213,1"
      Dst: "[javax.net.ssl.SSLEngine].setSSLParameters(javax.net.ssl.SSLParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$2].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$2"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.nio.NioSocketChannel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$2:211,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$2"
    linkageType: ""
    functionLinenumber: 213
    functionLinenumberEnd: 216
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].access$100(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelPromise)"
    functionUses: 50
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$2:214,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].access$100(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].access$100(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.nio.NioSocketChannel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].shutdownInput0(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:59,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownInput0(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownInput0(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 274
    functionLinenumberEnd: 281
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].shutdownInput0()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 2
    ICount: 8
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:275,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownInput0()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:276,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:278,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownInput0()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 283
    functionLinenumberEnd: 290
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - "[java.net.Socket].shutdownInput()"
    - "[java.nio.channels.SocketChannel].shutdownInput()"
    - "[java.nio.channels.SocketChannel].socket()"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:284"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:287"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:286"
        BranchSideFuncs:
        - "shutdownInput()"
        - "javaChannel()"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:284,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:285,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:285,1"
      Dst: "[java.nio.channels.SocketChannel].shutdownInput()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:287,1"
      Dst: "[java.nio.channels.SocketChannel].socket()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:287,1"
      Dst: "[java.net.Socket].shutdownInput()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "java.nio.channels.SocketChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].javaChannel()"
    functionUses: 20
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:128,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].javaChannel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:66,1"
      Dst: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].<init>(io.netty.handler.codec.http2.Http2MultiplexCodec)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2MultiplexCodec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:76,1"
      Dst: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:87,1"
      Dst: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2MultiplexCodec)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.http2.Http2MultiplexCodec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:97,1"
      Dst: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].<init>(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.channel.ChannelHandler[])"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameCodec"
    - "io.netty.channel.ChannelHandler[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:108,1"
      Dst: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler[])"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    - "io.netty.channel.ChannelHandler[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].<init>()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:112,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:116,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].requiredUpgradeHeaders()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "java.util.Collection"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].prepareUpgradeResponse(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpRequest,io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 141
    functionDepth: 8
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.FullHttpRequest"
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpHeaders].getAll(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].getAll(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].decodeSettingsHeader(io.netty.channel.ChannelHandlerContext,java.lang.CharSequence)"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.util.internal.logging.JdkLogger].info(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].info(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].info(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].info(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].info(java.lang.String,java.lang.Throwable)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[io.netty.util.internal.logging.InternalLogger].info(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 28
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:131"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:135"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:134"
        BranchSideFuncs:
        - "get(int)"
        - "decodeSettingsHeader(io.netty.channel.ChannelHandlerContext,java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:130,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:130,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].getAll(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:131,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:132,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:132,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:132,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:132,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:132,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:135,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:135,1"
      Dst: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].decodeSettingsHeader(io.netty.channel.ChannelHandlerContext,java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:139,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].info(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].decodeSettingsHeader(io.netty.channel.ChannelHandlerContext,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 183
    functionDepth: 7
    returnType: "io.netty.handler.codec.http2.Http2Settings"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufUtil].encodeString(io.netty.buffer.ByteBufAllocator,java.nio.CharBuffer,java.nio.charset.Charset)"
    - "[java.nio.CharBuffer].wrap(java.lang.CharSequence)"
    - "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf,io.netty.handler.codec.base64.Base64Dialect)"
    - "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].createSettingsFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].decodeSettings(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 16
    EdgeCount: 31
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:170,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:170,1"
      Dst: "[java.nio.CharBuffer].wrap(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:170,1"
      Dst: "[io.netty.buffer.ByteBufUtil].encodeString(io.netty.buffer.ByteBufAllocator,java.nio.CharBuffer,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:173,1"
      Dst: "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf,io.netty.handler.codec.base64.Base64Dialect)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:176,1"
      Dst: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].createSettingsFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:179,1"
      Dst: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].decodeSettings(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:181,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].encodeString(io.netty.buffer.ByteBufAllocator,java.nio.CharBuffer,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1205
    functionLinenumberEnd: 1207
    functionDepth: 6
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "java.nio.CharBuffer"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].encodeString0(io.netty.buffer.ByteBufAllocator,boolean,java.nio.CharBuffer,java.nio.charset.Charset,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1206,1"
      Dst: "[io.netty.buffer.ByteBufUtil].encodeString0(io.netty.buffer.ByteBufAllocator,boolean,java.nio.CharBuffer,java.nio.charset.Charset,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].createSettingsFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 212
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http2.Http2Flags].<init>()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil].writeFrameHeader(io.netty.buffer.ByteBuf,int,byte,io.netty.handler.codec.http2.Http2Flags,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 13
    EdgeCount: 40
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:207,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:207,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:207,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:208,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:208,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].writeFrameHeader(io.netty.buffer.ByteBuf,int,byte,io.netty.handler.codec.http2.Http2Flags,int)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:209,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:210,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Flags].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Flags"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 13
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Flags:33,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].decodeSettings(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec"
    linkageType: ""
    functionLinenumber: 189
    functionLinenumberEnd: 201
    functionDepth: 2
    returnType: "io.netty.handler.codec.http2.Http2Settings"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Settings].<init>()"
    - "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec$1].<init>(io.netty.handler.codec.http2.Http2ServerUpgradeCodec,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].readFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.codec.http2.Http2FrameReader].readFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 14
    EdgeCount: 28
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:190,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:191,1"
      Dst: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec$1].<init>(io.netty.handler.codec.http2.Http2ServerUpgradeCodec,io.netty.handler.codec.http2.Http2Settings)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:191,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameReader].readFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:199,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameAdapter].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameAdapter"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameAdapter:25,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].upgradeTo(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 164
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.FullHttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].name()"
    - "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].context(io.netty.channel.ChannelHandler)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onHttpServerUpgrade(io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close()"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelHandlerContext].name()"
    - "[io.netty.channel.ChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.ChannelPipeline].context(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 1
    ICount: 33
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:152"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:158"
        BranchSideFuncs:
        - "name()"
        - "context(io.netty.channel.ChannelHandler)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:157"
        BranchSideFuncs:
        - "onHttpServerUpgrade(io.netty.handler.codec.http2.Http2Settings)"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "close()"
    - Branch String: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:154"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:158"
        BranchSideFuncs:
        - "onHttpServerUpgrade(io.netty.handler.codec.http2.Http2Settings)"
        - "pipeline()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
        - "close()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:157"
        BranchSideFuncs:
        - "onHttpServerUpgrade(io.netty.handler.codec.http2.Http2Settings)"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "close()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:148,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:148,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].name()"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:148,1"
      Dst: "[io.netty.channel.ChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:153,1"
      Dst: "[io.netty.channel.ChannelPipeline].context(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:158,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].onHttpServerUpgrade(io.netty.handler.codec.http2.Http2Settings)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:160,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2ServerUpgradeCodec:161,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].onHttpServerUpgrade(io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 191
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].isServer()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].prefaceSent()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].prefaceReceived()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].prefaceReceived()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].createStream(int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - "[io.netty.handler.codec.http2.Http2ConnectionDecoder].prefaceReceived()"
    - "[io.netty.handler.codec.http2.Http2ConnectionEncoder].remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].createStream(int,boolean)"
    functionUses: 1
    ICount: 28
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:176"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:175"
        BranchSideFuncs:
        - "prefaceSent()"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:176"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:180"
        BranchSideFuncs:
        - "prefaceReceived()"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:186"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:185"
        BranchSideFuncs:
        - "createStream(int,boolean)"
        - "remote()"
        - "remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
        - "connection()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:173,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:173,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:174,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:176,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].prefaceSent()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:181,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionDecoder].prefaceReceived()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:186,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionEncoder].remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:189,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:189,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].createStream(int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler$ChannelType].values()"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler$ChannelType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.pcap.PcapWriteHandler$ChannelType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler$ChannelType:638,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler$ChannelType].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler$ChannelType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.pcap.PcapWriteHandler$ChannelType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler$ChannelType:638,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.PcapWriteHandler$ChannelType].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.pcap.PcapWriteHandler$ChannelType"
    linkageType: ""
    functionLinenumber: 637
    functionLinenumberEnd: 639
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.PcapWriteHandler$ChannelType:638,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQueryEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsQueryEncoder].<init>(io.netty.handler.codec.dns.DnsRecordEncoder)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:43,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsQueryEncoder].<init>(io.netty.handler.codec.dns.DnsRecordEncoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQueryEncoder].<init>(io.netty.handler.codec.dns.DnsRecordEncoder)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecordEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    - "[io.netty.handler.codec.dns.DnsQueryEncoder].<init>(io.netty.handler.codec.dns.DnsRecordEncoder)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:49,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:50,1"
      Dst: "[io.netty.handler.codec.dns.DnsQueryEncoder].<init>(io.netty.handler.codec.dns.DnsRecordEncoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQueryEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.channel.AddressedEnvelope<DnsQuery,InetSocketAddress>,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 74
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.AddressedEnvelope<DnsQuery,InetSocketAddress>"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.channel.DefaultAddressedEnvelope:io.netty.handler.codec.dns.DatagramDnsQuery:io.netty.handler.codec.dns.DatagramDnsResponse:io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsQueryEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.channel.AddressedEnvelope)"
    - "[io.netty.handler.codec.dns.DnsQueryEncoder].encode(io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.channel.AddressedEnvelope].recipient()"
    - "[io.netty.channel.AddressedEnvelope].content()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 22
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:72"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:71"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - Branch String: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:70"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:58,1"
      Dst: "[io.netty.channel.AddressedEnvelope].recipient()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:59,1"
      Dst: "[io.netty.channel.AddressedEnvelope].content()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:60,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsQueryEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.channel.AddressedEnvelope)"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:64,1"
      Dst: "[io.netty.handler.codec.dns.DnsQueryEncoder].encode(io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:68,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:72,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:72,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DnsQueryEncoder].encode(io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsQueryEncoder"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 41
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsQuery"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsQueryEncoder].encodeHeader(io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DnsQueryEncoder].encodeQuestions(io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DnsQueryEncoder].encodeRecords(io.netty.handler.codec.dns.DnsQuery,io.netty.handler.codec.dns.DnsSection,io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsQueryEncoder:37,1"
      Dst: "[io.netty.handler.codec.dns.DnsQueryEncoder].encodeHeader(io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DnsQueryEncoder:38,1"
      Dst: "[io.netty.handler.codec.dns.DnsQueryEncoder].encodeQuestions(io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DnsQueryEncoder:39,1"
      Dst: "[io.netty.handler.codec.dns.DnsQueryEncoder].encodeRecords(io.netty.handler.codec.dns.DnsQuery,io.netty.handler.codec.dns.DnsSection,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsQueryEncoder].encodeHeader(io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsQueryEncoder"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 61
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsQuery"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].id()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.dns.DnsOpCode].byteValue()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].opCode()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].isRecursionDesired()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    - "[io.netty.handler.codec.dns.DnsMessage].id()"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.dns.DnsMessage].opCode()"
    - "[io.netty.handler.codec.dns.DnsMessage].isRecursionDesired()"
    - "[io.netty.handler.codec.dns.DnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    functionUses: 1
    ICount: 24
    EdgeCount: 66
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsQueryEncoder:52"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsQueryEncoder:55"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsQueryEncoder:54"
        BranchSideFuncs:
        - "writeShort(int)"
        - "count(io.netty.handler.codec.dns.DnsSection)"
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsQueryEncoder:49,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].id()"
    - Src: "io.netty.handler.codec.dns.DnsQueryEncoder:49,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.dns.DnsQueryEncoder:51,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].opCode()"
    - Src: "io.netty.handler.codec.dns.DnsQueryEncoder:51,1"
      Dst: "[io.netty.handler.codec.dns.DnsOpCode].byteValue()"
    - Src: "io.netty.handler.codec.dns.DnsQueryEncoder:52,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].isRecursionDesired()"
    - Src: "io.netty.handler.codec.dns.DnsQueryEncoder:56,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DnsQueryEncoder].encodeQuestions(io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsQueryEncoder"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsQuery"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeQuestion(io.netty.handler.codec.dns.DnsQuestion,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].recordAt(io.netty.handler.codec.dns.DnsSection,int)"
    - "[io.netty.handler.codec.dns.DnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    - "[io.netty.handler.codec.dns.DnsMessage].recordAt(io.netty.handler.codec.dns.DnsSection,int)"
    - "[io.netty.handler.codec.dns.DnsRecordEncoder].encodeQuestion(io.netty.handler.codec.dns.DnsQuestion,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsQueryEncoder:64"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsQueryEncoder:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsQueryEncoder:63,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    - Src: "io.netty.handler.codec.dns.DnsQueryEncoder:65,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].recordAt(io.netty.handler.codec.dns.DnsSection,int)"
    - Src: "io.netty.handler.codec.dns.DnsQueryEncoder:65,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecordEncoder].encodeQuestion(io.netty.handler.codec.dns.DnsQuestion,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DnsQueryEncoder].encodeRecords(io.netty.handler.codec.dns.DnsQuery,io.netty.handler.codec.dns.DnsSection,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsQueryEncoder"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.dns.DnsQuery"
    - "io.netty.handler.codec.dns.DnsSection"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    - "[io.netty.handler.codec.dns.DefaultDnsRecordEncoder].encodeRecord(io.netty.handler.codec.dns.DnsRecord,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].recordAt(io.netty.handler.codec.dns.DnsSection,int)"
    - "[io.netty.handler.codec.dns.DnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    - "[io.netty.handler.codec.dns.DnsMessage].recordAt(io.netty.handler.codec.dns.DnsSection,int)"
    - "[io.netty.handler.codec.dns.DnsRecordEncoder].encodeRecord(io.netty.handler.codec.dns.DnsRecord,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsQueryEncoder:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsQueryEncoder:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsQueryEncoder:70,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    - Src: "io.netty.handler.codec.dns.DnsQueryEncoder:72,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].recordAt(io.netty.handler.codec.dns.DnsSection,int)"
    - Src: "io.netty.handler.codec.dns.DnsQueryEncoder:72,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecordEncoder].encodeRecord(io.netty.handler.codec.dns.DnsRecord,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQueryEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.channel.AddressedEnvelope<DnsQuery,InetSocketAddress>)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.AddressedEnvelope<DnsQuery,InetSocketAddress>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:82,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:82,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQueryEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsQueryEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.channel.AddressedEnvelope,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryEncoder:33,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsQueryEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.channel.AddressedEnvelope,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Brotli].ensureAvailability()"
    functionSourceFile: "io.netty.handler.codec.compression.Brotli"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.aayushatharva.brotli4j.Brotli4jLoader].ensureAvailability()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Brotli:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Brotli:71"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Brotli:70"
        BranchSideFuncs:
        - "ensureAvailability()"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Brotli:71,1"
      Dst: "[com.aayushatharva.brotli4j.Brotli4jLoader].ensureAvailability()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Throwable"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Brotli].cause()"
    functionSourceFile: "io.netty.handler.codec.compression.Brotli"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Brotli].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.Brotli"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Brotli:81,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$1].process()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$1"
    linkageType: ""
    functionLinenumber: 954
    functionLinenumberEnd: 957
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].addToActiveStreams(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$1:955,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].addToActiveStreams(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].<init>(io.netty.util.internal.AppendableCharSequence,int)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.AppendableCharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:263,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:264,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].parse(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser"
    linkageType: ""
    functionLinenumber: 268
    functionLinenumberEnd: 277
    functionDepth: 2
    returnType: "io.netty.util.internal.AppendableCharSequence"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser].reset()"
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].reset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 2
    ICount: 11
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:271"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:275"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:274"
        BranchSideFuncs:
        - "readerIndex(int)"
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:269,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].reset()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:270,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:275,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].reset()"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser"
    linkageType: ""
    functionLinenumber: 327
    functionLinenumberEnd: 333
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].reset()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:328,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.AppendableCharSequence].reset()"
    functionSourceFile: "io.netty.util.internal.AppendableCharSequence"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].charSequence()"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser"
    linkageType: ""
    functionLinenumber: 279
    functionLinenumberEnd: 281
    functionDepth: 0
    returnType: "io.netty.util.internal.AppendableCharSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].process(byte)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser"
    linkageType: ""
    functionLinenumber: 284
    functionLinenumberEnd: 321
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser].appendTo(io.netty.util.internal.AppendableCharSequence,char)"
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].appendTo(io.netty.util.internal.AppendableCharSequence,char)"
    functionUses: 3
    ICount: 73
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:285"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:290"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:294"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:293"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:294"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:301"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:300"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:301"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:304"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:303"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:304"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:307"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:310"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:315"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:295,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:295,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:295,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:295,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:295,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:305,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].appendTo(io.netty.util.internal.AppendableCharSequence,char)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].appendTo(io.netty.util.internal.AppendableCharSequence,char)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser"
    linkageType: ""
    functionLinenumber: 323
    functionLinenumberEnd: 326
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.AppendableCharSequence"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].append(char)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser:324,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.AppendableCharSequence].append(char)"
    functionSourceFile: "io.netty.util.internal.AppendableCharSequence"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "io.netty.util.internal.AppendableCharSequence"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 8
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.AppendableCharSequence:80"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:85"
        BranchSideFuncs:
        - "arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.AppendableCharSequence:83,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel$3].<init>(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel$3"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.oio.OioSocketChannel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel$3:229,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel$3].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel$3"
    linkageType: ""
    functionLinenumber: 231
    functionLinenumberEnd: 234
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel].access$200(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel$3:232,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].access$200(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].access$200(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.socket.oio.OioSocketChannel"
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutputDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:46,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutputDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutputDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 239
    functionLinenumberEnd: 252
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel].shutdownInput()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].shutdownDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.socket.oio.OioSocketChannel$4].<init>(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 12
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:241"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:244"
        BranchSideFuncs:
        - "shutdownDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:243"
        BranchSideFuncs:
        - "<init>(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:240,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownInput()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:241,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:242,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:244,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel$4].<init>(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:244,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownInput()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].shutdownInput(io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:149,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:149,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownInput(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownInput(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 212
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].shutdownInput0(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].<init>(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:201"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:204"
        BranchSideFuncs:
        - "shutdownInput0(io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:203"
        BranchSideFuncs:
        - "run()"
        - "<init>(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelPromise)"
        - "execute(java.lang.Runnable)"
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:200,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:201,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:202,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownInput0(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:204,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel$2].<init>(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:204,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownInput0(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 222
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].shutdownInput()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 2
    ICount: 9
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:216,1"
      Dst: "[java.net.Socket].shutdownInput()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:217,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:219,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel$2].<init>(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel$2"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 205
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.oio.OioSocketChannel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel$2:204,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel$3].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel$3"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 230
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel$3].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel$3:229,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel$3].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker,java.lang.String,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 230
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker"
    - "java.lang.String"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1:229,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1"
    linkageType: ""
    functionLinenumber: 231
    functionLinenumberEnd: 240
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.CompleteChannelFuture].channel()"
    - "[io.netty.channel.DefaultChannelPromise].channel()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].channel()"
    - "[io.netty.channel.VoidChannelPromise].channel()"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(java.lang.String)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.channel.ChannelFuture].channel()"
    - "[io.netty.channel.Channel].pipeline()"
    - "[io.netty.channel.ChannelPipeline].remove(java.lang.String)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 15
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1:232"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1:237"
        BranchSideFuncs:
        - "pipeline()"
        - "channel()"
        - "setSuccess()"
        - "remove(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1:236"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "cause()"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1:232,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1:233,1"
      Dst: "[io.netty.channel.ChannelFuture].channel()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1:233,1"
      Dst: "[io.netty.channel.Channel].pipeline()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1:234,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1:235,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1:237,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1:237,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 230
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1:229,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompContentSubframe"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 3
    returnType: "io.netty.handler.codec.stomp.StompContentSubframe"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompContentSubframe:50,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompContentSubframe"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.DecoderResult"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].toString()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompContentSubframe"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 20
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompContentSubframe:89,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.stomp.DefaultStompContentSubframe:89,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.stomp.DefaultStompContentSubframe:89,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.stomp.DefaultStompContentSubframe:89,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.stomp.DefaultStompContentSubframe:89,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap$3].run()"
    functionSourceFile: "io.netty.bootstrap.Bootstrap$3"
    linkageType: ""
    functionLinenumber: 248
    functionLinenumberEnd: 256
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].connect(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel].connect(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 50
    ICount: 17
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.bootstrap.Bootstrap$3:249"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.Bootstrap$3:252"
        BranchSideFuncs:
        - "connect(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.bootstrap.Bootstrap$3:251"
        BranchSideFuncs:
        - "connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap$3:250,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.bootstrap.Bootstrap$3:252,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.bootstrap.Bootstrap$3:254,1"
      Dst: "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.HpackHeaderField].size()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHeaderField"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[io.netty.util.AsciiString:io.netty.util.internal.AppendableCharSequence:java.lang.AbstractStringBuilder:java.lang.StringBuffer:java.lang.StringBuilder:java.nio.CharBuffer].length()"
    - "[java.lang.CharSequence].length()"
    functionUses: 3
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackHeaderField:58,1"
      Dst: "[java.lang.CharSequence].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackHeaderField].equalsForTest(io.netty.handler.codec.http2.HpackHeaderField)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHeaderField"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.HpackHeaderField"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackUtil].equalsVariableTime(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackHeaderField:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackHeaderField:61"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackHeaderField:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackHeaderField:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackHeaderField:62,1"
      Dst: "[io.netty.handler.codec.http2.HpackUtil].equalsVariableTime(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.HpackHeaderField].toString()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHeaderField"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 19
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackHeaderField:67,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.HpackHeaderField:67,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.HpackHeaderField:67,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HpackHeaderField:67,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:46,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:39,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:47,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder].fingerprints(java.lang.CharSequence[])"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder].fingerprints(java.lang.Iterable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:57,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:57,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:57,1"
      Dst: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder].fingerprints(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder].fingerprints(java.lang.Iterable<?\
      \ extends CharSequence>)"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<? extends CharSequence>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - "[java.lang.CharSequence].toString()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:67,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:68,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:68,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:68,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:69,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:70,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:70,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder].build()"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].isEmpty()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].toFingerprintArray(java.lang.Iterable)"
    - "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].<init>(java.lang.String,byte[][])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:81"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:84"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:81,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:82,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:85,1"
      Dst: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].toFingerprintArray(java.lang.Iterable)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder:85,1"
      Dst: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].<init>(java.lang.String,byte[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].<init>(java.lang.String,byte[][])"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "byte[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SimpleTrustManagerFactory].<init>()"
    - "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1].<init>(io.netty.handler.ssl.util.FingerprintTrustManagerFactory)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.security.MessageDigest].getInstance(java.lang.String)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.security.MessageDigest].getDigestLength()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[io.netty.buffer.ByteBufUtil].hexDump(io.netty.buffer.ByteBuf)"
    - "[java.lang.Object].clone()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$2].<init>(io.netty.handler.ssl.util.FingerprintTrustManagerFactory,java.lang.String)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 60
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:194"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:201"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:200"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:209"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:221"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:220"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:210"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:213"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:212"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:213"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:190,1"
      Dst: "[io.netty.handler.ssl.util.SimpleTrustManagerFactory].<init>()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:99,1"
      Dst: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1].<init>(io.netty.handler.ssl.util.FingerprintTrustManagerFactory)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:191,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:195,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:201,1"
      Dst: "[java.security.MessageDigest].getInstance(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:204,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:204,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:207,1"
      Dst: "[java.security.MessageDigest].getDigestLength()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:208,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:216,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:216,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:216,1"
      Dst: "[io.netty.buffer.ByteBufUtil].hexDump(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:218,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:218,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:221,1"
      Dst: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$2].<init>(io.netty.handler.ssl.util.FingerprintTrustManagerFactory,java.lang.String)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:234,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1].<init>(io.netty.handler.ssl.util.FingerprintTrustManagerFactory)"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.util.FingerprintTrustManagerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:99,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 130
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.InternalThreadLocalMap].nextVariableIndex()"
    functionUses: 16
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocal:127,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.concurrent.FastThreadLocal:128,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].nextVariableIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].nextVariableIndex()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 158
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].getAndIncrement()"
    - "[java.util.concurrent.atomic.AtomicInteger].set(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:153"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:154"
        BranchSideFuncs:
        - "set(int)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:153"
        BranchSideFuncs:
        - "set(int)"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:153"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:157"
        BranchSideFuncs:
        - "set(int)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:152,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].getAndIncrement()"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:154,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].set(int)"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:155,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].add(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.DomainNameMapping"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:130,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].map(java.lang.String)"
    functionSourceFile: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 148
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DomainNameMapping].normalizeHostname(java.lang.String)"
    - "[io.netty.util.DomainNameMapping].matches(java.lang.String,java.lang.String)"
    functionUses: 2
    ICount: 19
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:136"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:147"
        BranchSideFuncs:
        - "normalizeHostname(java.lang.String)"
      - BranchSide: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:146"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:140"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:147"
        BranchSideFuncs:
        - "matches(java.lang.String,java.lang.String)"
      - BranchSide: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:146"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:141"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:137"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:136"
        BranchSideFuncs:
        - "normalizeHostname(java.lang.String)"
    Callsites:
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:137,1"
      Dst: "[io.netty.util.DomainNameMapping].normalizeHostname(java.lang.String)"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:141,1"
      Dst: "[io.netty.util.DomainNameMapping].matches(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.DomainNameMapping].matches(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.util.DomainNameMapping"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 104
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].regionMatches(int,java.lang.String,int,int)"
    - "[io.netty.util.internal.StringUtil].commonSuffixOfLength(java.lang.String,java.lang.String,int)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 2
    ICount: 17
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.util.DomainNameMapping:99"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainNameMapping:103"
        BranchSideFuncs:
        - "regionMatches(int,java.lang.String,int,int)"
      - BranchSide: "io.netty.util.DomainNameMapping:102"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.util.DomainNameMapping:100"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainNameMapping:100"
        BranchSideFuncs:
        - "length()"
        - "commonSuffixOfLength(java.lang.String,java.lang.String,int)"
      - BranchSide: "io.netty.util.DomainNameMapping:99"
        BranchSideFuncs:
        - "regionMatches(int,java.lang.String,int,int)"
    - Branch String: "io.netty.util.DomainNameMapping:101"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainNameMapping:99"
        BranchSideFuncs:
        - "regionMatches(int,java.lang.String,int,int)"
    Callsites:
    - Src: "io.netty.util.DomainNameMapping:99,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "io.netty.util.DomainNameMapping:100,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.util.DomainNameMapping:100,1"
      Dst: "[java.lang.String].regionMatches(int,java.lang.String,int,int)"
    - Src: "io.netty.util.DomainNameMapping:101,1"
      Dst: "[io.netty.util.internal.StringUtil].commonSuffixOfLength(java.lang.String,java.lang.String,int)"
    - Src: "io.netty.util.DomainNameMapping:103,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.StringUtil].commonSuffixOfLength(java.lang.String,java.lang.String,int)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].regionMatches(int,java.lang.String,int,int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:127"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:127"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:127"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:127"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:127,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.util.internal.StringUtil:127,1"
      Dst: "[java.lang.String].regionMatches(int,java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].asMap()"
    functionSourceFile: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].toString()"
    functionSourceFile: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 179
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ReflectiveChannelFactory].toString()"
    - "[sun.security.x509.SerialNumber].toString()"
    - "[io.netty.util.Version].toString()"
    - "[javax.net.ssl.SSLEngineResult].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].toString()"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].toString()"
    - "[java.util.AbstractCollection].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[sun.security.x509.CertificateAlgorithmId].toString()"
    - "[io.netty.buffer.PoolSubpage].toString()"
    - "[java.net.InetSocketAddress].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[java.lang.ProcessBuilder$Redirect$3].toString()"
    - "[io.netty.util.Recycler$1].toString()"
    - "[sun.security.x509.PolicyConstraintsExtension].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].toString()"
    - "[java.nio.charset.Charset].toString()"
    - "[java.util.Properties].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].toString()"
    - "[sun.security.util.JarConstraintsParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].toString()"
    - "[java.lang.reflect.Constructor].toString()"
    - "[java.nio.DoubleBuffer].toString()"
    - "[io.netty.util.Signal].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Thread].toString()"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].toString()"
    - "[java.lang.Throwable].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$CompositePrinterParser].toString()"
    - "[io.netty.channel.embedded.EmbeddedSocketAddress].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].toString()"
    - "[java.util.regex.Matcher].toString()"
    - "[java.lang.reflect.Field].toString()"
    - "[java.lang.invoke.MethodHandles$Lookup].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.net.URL].toString()"
    - "[java.lang.invoke.LambdaForm$Name].toString()"
    - "[sun.security.x509.RDN].toString()"
    - "[java.util.concurrent.atomic.AtomicReference].toString()"
    - "[java.util.Currency].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].toString()"
    - "[io.netty.channel.kqueue.NativeLongArray].toString()"
    - "[io.netty.handler.proxy.ProxyConnectionEvent].toString()"
    - "[java.util.Formatter].toString()"
    - "[java.lang.ModuleLayer].toString()"
    - "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - "[io.netty.handler.ssl.SslCompletionEvent].toString()"
    - "[io.netty.bootstrap.BootstrapConfig].toString()"
    - "[java.lang.ProcessBuilder$Redirect$1].toString()"
    - "[io.netty.handler.codec.xml.XmlEntityReference].toString()"
    - "[java.net.Proxy].toString()"
    - "[sun.security.util.DerValue].toString()"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].toString()"
    - "[sun.security.x509.AlgorithmId].toString()"
    - "[java.text.AttributedCharacterIterator$Attribute].toString()"
    - "[java.lang.Runtime$Version].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$2].toString()"
    - "[java.lang.module.ModuleDescriptor$Exports].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].toString()"
    - "[io.netty.channel.kqueue.AcceptFilter].toString()"
    - "[sun.security.x509.SubjectKeyIdentifierExtension].toString()"
    - "[io.netty.buffer.DefaultByteBufHolder].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.time.temporal.ChronoField].toString()"
    - "[java.security.PermissionCollection].toString()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].toString()"
    - "[java.util.concurrent.ConcurrentHashMap].toString()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].toString()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].toString()"
    - "[java.util.Vector].toString()"
    - "[io.netty.handler.codec.http.HttpVersion].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].toString()"
    - "[java.text.CalendarBuilder].toString()"
    - "[java.net.URLConnection].toString()"
    - "[java.util.EventObject].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].toString()"
    - "[io.netty.util.AbstractConstant].toString()"
    - "[sun.reflect.annotation.TypeAnnotation].toString()"
    - "[java.security.SecureRandom].toString()"
    - "[java.util.concurrent.atomic.AtomicLong].toString()"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].toString()"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].toString()"
    - "[sun.util.calendar.Era].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].toString()"
    - "[java.lang.module.ModuleDescriptor$Requires].toString()"
    - "[java.time.ZonedDateTime].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache].toString()"
    - "[java.math.MutableBigInteger].toString()"
    - "[java.lang.module.ModuleDescriptor$Provides].toString()"
    - "[java.net.InetSocketAddress$InetSocketAddressHolder].toString()"
    - "[sun.security.x509.GeneralNames].toString()"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].toString()"
    - "[sun.security.x509.Extension].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].toString()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].toString()"
    - "[io.netty.handler.ssl.util.LazyX509Certificate].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].toString()"
    - "[sun.security.x509.ExtendedKeyUsageExtension].toString()"
    - "[io.netty.buffer.WrappedByteBuf].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].toString()"
    - "[java.security.MessageDigest].toString()"
    - "[io.netty.handler.codec.dns.DnsOpCode].toString()"
    - "[java.io.ObjectOutputStream$DebugTraceInfoStack].toString()"
    - "[java.util.TreeMap$Entry].toString()"
    - "[java.time.zone.ZoneOffsetTransition].toString()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].toString()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].toString()"
    - "[java.lang.Integer].toString()"
    - "[java.lang.ProcessBuilder$Redirect$6].toString()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].toString()"
    - "[java.util.OptionalInt].toString()"
    - "[javax.naming.NamingException].toString()"
    - "[java.time.LocalDate].toString()"
    - "[java.util.ServiceLoader].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache].toString()"
    - "[java.net.InetAddress].toString()"
    - "[java.util.jar.Attributes$Name].toString()"
    - "[java.lang.Boolean].toString()"
    - "[io.netty.handler.codec.DefaultHeaders].toString()"
    - "[jaz.Zer].toString()"
    - "[io.netty.util.concurrent.DefaultPromise].toString()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].toString()"
    - "[io.netty.handler.ssl.PemX509Certificate].toString()"
    - "[sun.security.x509.UniqueIdentity].toString()"
    - "[java.security.CodeSigner].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].toString()"
    - "[sun.security.x509.CertificateX509Key].toString()"
    - "[java.nio.IntBuffer].toString()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].toString()"
    - "[java.util.concurrent.CountDownLatch].toString()"
    - "[io.netty.handler.codec.redis.IntegerRedisMessage].toString()"
    - "[java.nio.ByteOrder].toString()"
    - "[java.util.OptionalLong].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].toString()"
    - "[io.netty.handler.codec.xml.XmlElementEnd].toString()"
    - "[java.io.ObjectStreamClass].toString()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].toString()"
    - "[java.util.concurrent.atomic.LongAdder].toString()"
    - "[java.util.Optional].toString()"
    - "[java.net.URI].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].toString()"
    - "[java.nio.FloatBuffer].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuestion].toString()"
    - "[io.netty.handler.ssl.OpenSslSessionId].toString()"
    - "[io.netty.channel.group.DefaultChannelGroup].toString()"
    - "[sun.security.x509.AuthorityKeyIdentifierExtension].toString()"
    - "[sun.security.util.ObjectIdentifier].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].toString()"
    - "[java.util.concurrent.LinkedBlockingDeque].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].toString()"
    - "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].toString()"
    - "[java.time.format.DateTimePrintContext].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].toString()"
    - "[sun.nio.fs.UnixPath].toString()"
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].toString()"
    - "[java.lang.Class].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].toString()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].toString()"
    - "[java.util.BitSet].toString()"
    - "[java.lang.StackFrameInfo].toString()"
    - "[javax.xml.namespace.QName].toString()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].toString()"
    - "[sun.security.x509.CertificateExtensions].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].toString()"
    - "[sun.security.x509.BasicConstraintsExtension].toString()"
    - "[java.util.concurrent.atomic.AtomicReferenceArray].toString()"
    - "[java.lang.invoke.Invokers].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].toString()"
    - "[java.time.LocalDateTime].toString()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].toString()"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[java.time.format.DateTimeFormatter].toString()"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].toString()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].toString()"
    - "[sun.security.x509.CertificateIssuerName].toString()"
    - "[java.lang.invoke.SerializedLambda].toString()"
    - "[sun.util.locale.LocaleExtensions].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].toString()"
    - "[sun.security.x509.NameConstraintsExtension].toString()"
    - "[java.net.NetworkInterface].toString()"
    - "[java.util.StringJoiner].toString()"
    - "[java.util.AbstractMap].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].toString()"
    - "[java.time.LocalTime].toString()"
    - "[java.security.ProtectionDomain].toString()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock].toString()"
    - "[io.netty.handler.codec.EmptyHeaders].toString()"
    - "[java.time.temporal.ValueRange].toString()"
    - "[java.time.Instant].toString()"
    - "[java.security.PrivilegedActionException].toString()"
    - "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].toString()"
    - "[sun.util.calendar.CalendarDate].toString()"
    - "[java.lang.module.Configuration].toString()"
    - "[java.security.AlgorithmParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].toString()"
    - "[java.lang.ThreadGroup].toString()"
    - "[io.netty.buffer.AbstractByteBufAllocator].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].toString()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].toString()"
    - "[java.nio.file.attribute.FileTime].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].toString()"
    - "[io.netty.handler.codec.xml.XmlNamespace].toString()"
    - "[io.netty.channel.unix.FileDescriptor].toString()"
    - "[java.lang.Double].toString()"
    - "[java.util.OptionalDouble].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].toString()"
    - "[io.netty.bootstrap.AbstractBootstrap].toString()"
    - "[io.netty.channel.WriteBufferWaterMark].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].toString()"
    - "[java.math.BigInteger].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].toString()"
    - "[java.time.format.Parsed].toString()"
    - "[java.time.OffsetDateTime].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString()"
    - "[java.time.OffsetTime].toString()"
    - "[java.util.WeakHashMap$Entry].toString()"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].toString()"
    - "[sun.security.x509.X509CertImpl].toString()"
    - "[java.time.ZoneOffset].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribePayload].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].toString()"
    - "[java.lang.reflect.Method].toString()"
    - "[io.netty.handler.codec.http2.Http2Flags].toString()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].toString()"
    - "[io.netty.buffer.CompositeByteBuf].toString()"
    - "[java.lang.Enum].toString()"
    - "[io.netty.handler.codec.http2.HpackHeaderField].toString()"
    - "[java.net.ServerSocket].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[java.time.zone.ZoneRules].toString()"
    - "[java.security.spec.PSSParameterSpec].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent].toString()"
    - "[sun.security.x509.X500Name].toString()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].toString()"
    - "[io.netty.channel.embedded.EmbeddedChannelId].toString()"
    - "[java.util.concurrent.locks.AbstractQueuedSynchronizer].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.util.regex.Pattern].toString()"
    - "[java.util.concurrent.atomic.AtomicLongArray].toString()"
    - "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].toString()"
    - "[sun.util.locale.Extension].toString()"
    - "[io.netty.handler.codec.smtp.SmtpCommand].toString()"
    - "[java.util.concurrent.ForkJoinPool].toString()"
    - "[sun.security.x509.CertificateVersion].toString()"
    - "[java.lang.ProcessHandleImpl].toString()"
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].toString()"
    - "[java.util.LongSummaryStatistics].toString()"
    - "[java.io.ObjectStreamField].toString()"
    - "[java.lang.ProcessImpl].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[io.netty.resolver.dns.InflightNameResolver].toString()"
    - "[java.nio.charset.CodingErrorAction].toString()"
    - "[java.lang.Float].toString()"
    - "[java.time.format.DecimalStyle].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].toString()"
    - "[sun.security.x509.IssuerAlternativeNameExtension].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[java.io.File].toString()"
    - "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].toString()"
    - "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].toString()"
    - "[java.util.Calendar].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].toString()"
    - "[java.nio.ByteBuffer].toString()"
    - "[io.netty.buffer.EmptyByteBuf].toString()"
    - "[io.netty.buffer.AbstractByteBuf].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock].toString()"
    - "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].toString()"
    - "[java.lang.Package].toString()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].toString()"
    - "[java.text.ParsePosition].toString()"
    - "[sun.util.locale.BaseLocale].toString()"
    - "[sun.reflect.annotation.AnnotationType].toString()"
    - "[java.lang.Character$Subset].toString()"
    - "[sun.security.util.LazyCodeSourcePermissionCollection].toString()"
    - "[java.lang.Object].toString()"
    - "[io.netty.handler.codec.xml.XmlElement].toString()"
    - "[java.lang.Character].toString()"
    - "[sun.net.www.MessageHeader].toString()"
    - "[java.lang.invoke.MethodType].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].toString()"
    - "[io.netty.handler.codec.http.QueryStringEncoder].toString()"
    - "[java.net.InterfaceAddress].toString()"
    - "[java.time.zone.ZoneOffsetTransitionRule].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].toString()"
    - "[io.netty.handler.codec.dns.DnsRecordType].toString()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].toString()"
    - "[java.lang.StackTraceElement].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toString()"
    - "[java.lang.ProcessBuilder$Redirect$4].toString()"
    - "[java.lang.invoke.LambdaForm].toString()"
    - "[io.netty.handler.codec.dns.DnsResponseCode].toString()"
    - "[io.netty.util.collection.LongObjectHashMap].toString()"
    - "[javax.naming.directory.ModificationItem].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].toString()"
    - "[sun.security.x509.PolicyMappingsExtension].toString()"
    - "[sun.security.x509.CertificatePoliciesExtension].toString()"
    - "[java.security.CodeSource].toString()"
    - "[java.security.Permission].toString()"
    - "[java.security.Timestamp].toString()"
    - "[io.netty.buffer.PoolArena].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].toString()"
    - "[java.nio.charset.CoderResult].toString()"
    - "[io.netty.channel.unix.PeerCredentials].toString()"
    - "[java.security.SecureRandomSpi].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[javax.security.auth.Subject].toString()"
    - "[javax.crypto.CryptoPermission].toString()"
    - "[java.util.Locale].toString()"
    - "[java.time.chrono.AbstractChronology].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsPtrRecord].toString()"
    - "[java.util.concurrent.locks.ReentrantLock].toString()"
    - "[java.lang.module.ResolvedModule].toString()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].toString()"
    - "[io.netty.handler.codec.http.HttpMethod].toString()"
    - "[java.lang.invoke.MemberName].toString()"
    - "[sun.security.x509.PrivateKeyUsageExtension].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].toString()"
    - "[io.netty.handler.traffic.TrafficCounter].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].toString()"
    - "[java.io.ByteArrayOutputStream].toString()"
    - "[sun.security.x509.CertificateValidity].toString()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].toString()"
    - "[java.time.Duration].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[sun.security.x509.X509CertInfo].toString()"
    - "[sun.security.x509.AVA].toString()"
    - "[java.lang.module.ModuleDescriptor$Opens].toString()"
    - "[java.math.BigDecimal].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].toString()"
    - "[java.lang.invoke.MethodHandleImpl$LoopClauses].toString()"
    - "[sun.security.x509.CertificateSerialNumber].toString()"
    - "[sun.nio.fs.UnixFileStore].toString()"
    - "[java.net.Socket].toString()"
    - "[javax.net.ssl.SNIHostName].toString()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].toString()"
    - "[java.util.Hashtable$Entry].toString()"
    - "[java.security.Signature].toString()"
    - "[java.lang.Short].toString()"
    - "[java.util.concurrent.CompletableFuture].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsOptPseudoRrRecord].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses].toString()"
    - "[java.util.concurrent.ThreadPoolExecutor].toString()"
    - "[java.util.concurrent.LinkedBlockingQueue].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].toString()"
    - "[java.time.ZoneId].toString()"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].toString()"
    - "[java.net.SocketImpl].toString()"
    - "[sun.security.x509.KeyIdentifier].toString()"
    - "[java.util.Hashtable].toString()"
    - "[sun.security.x509.GeneralSubtrees].toString()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].toString()"
    - "[java.text.FieldPosition].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent].toString()"
    - "[io.netty.util.DomainNameMapping].toString()"
    - "[sun.security.x509.AuthorityInfoAccessExtension].toString()"
    - "[java.util.concurrent.CopyOnWriteArrayList].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].toString()"
    - "[io.netty.buffer.PoolChunkList].toString()"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].toString()"
    - "[io.netty.buffer.PoolChunk].toString()"
    - "[io.netty.resolver.dns.DefaultDnsServerAddresses].toString()"
    - "[io.netty.util.internal.EmptyPriorityQueue].toString()"
    - "[io.netty.channel.unix.DomainSocketAddress].toString()"
    - "[javax.net.ssl.SNIServerName].toString()"
    - "[java.lang.ProcessBuilder$RedirectPipeImpl].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckPayload].toString()"
    - "[java.io.StringWriter].toString()"
    - "[io.netty.handler.codec.xml.XmlAttribute].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].toString()"
    - "[java.util.zip.ZipEntry].toString()"
    - "[java.util.UUID].toString()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].toString()"
    - "[java.security.Provider].toString()"
    - "[java.time.Period].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].toString()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].toString()"
    - "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].toString()"
    - "[java.lang.reflect.Parameter].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].toString()"
    - "[sun.security.x509.CertificateSubjectName].toString()"
    - "[io.netty.channel.DefaultChannelId].toString()"
    - "[java.util.Date].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame].toString()"
    - "[java.util.IntSummaryStatistics].toString()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[sun.security.x509.CRLDistributionPointsExtension].toString()"
    - "[io.netty.channel.DefaultAddressedEnvelope].toString()"
    - "[io.netty.channel.local.LocalAddress].toString()"
    - "[io.netty.util.collection.CharObjectHashMap].toString()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[io.netty.handler.codec.xml.XmlElementStart].toString()"
    - "[io.netty.handler.codec.DecoderResult].toString()"
    - "[io.netty.handler.ssl.SniCompletionEvent].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[io.netty.util.collection.ByteObjectHashMap].toString()"
    - "[java.util.AbstractMap$SimpleEntry].toString()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].toString()"
    - "[io.netty.util.collection.ShortObjectHashMap].toString()"
    - "[java.time.format.DateTimeParseContext].toString()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].toString()"
    - "[java.math.MathContext].toString()"
    - "[io.netty.handler.codec.http.QueryStringDecoder].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$NumberPrinterParser].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$1].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].toString()"
    - "[java.nio.LongBuffer].toString()"
    - "[java.util.DoubleSummaryStatistics].toString()"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].toString()"
    - "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].toString()"
    - "[java.lang.Long].toString()"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].toString()"
    - "[java.security.Provider$Service].toString()"
    - "[io.netty.channel.sctp.SctpMessage].toString()"
    - "[io.netty.util.collection.IntObjectHashMap].toString()"
    - "[io.netty.handler.codec.xml.XmlContent].toString()"
    - "[io.netty.handler.codec.http.HttpHeaders].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].toString()"
    - "[java.lang.invoke.MethodHandle].toString()"
    - "[java.lang.invoke.MethodTypeForm].toString()"
    - "[java.util.HashMap$Node].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].toString()"
    - "[java.lang.ProcessBuilder$Redirect$2].toString()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].toString()"
    - "[java.time.temporal.ChronoUnit].toString()"
    - "[io.netty.buffer.FixedCompositeByteBuf].toString()"
    - "[java.nio.channels.FileChannel$MapMode].toString()"
    - "[sun.security.x509.SubjectAlternativeNameExtension].toString()"
    - "[io.netty.channel.DefaultChannelPipeline].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].toString()"
    - "[java.nio.ShortBuffer].toString()"
    - "[io.netty.handler.codec.string.LineSeparator].toString()"
    - "[java.util.ResourceBundle$CacheKey].toString()"
    - "[io.netty.buffer.SwappedByteBuf].toString()"
    - "[java.security.cert.CertPath].toString()"
    - "[io.netty.channel.unix.Socket].toString()"
    - "[java.lang.module.ModuleDescriptor].toString()"
    - "[sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo].toString()"
    - "[java.lang.module.ModuleDescriptor$Version].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].toString()"
    - "[java.net.HttpCookie].toString()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].toString()"
    - "[sun.util.calendar.JulianCalendar$Date].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].toString()"
    - "[java.lang.ProcessBuilder$Redirect$5].toString()"
    - "[io.netty.channel.AbstractChannel].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].toString()"
    - "[sun.security.x509.GeneralSubtree].toString()"
    - "[sun.security.x509.GeneralName].toString()"
    - "[java.lang.Byte].toString()"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams].toString()"
    - "[io.netty.handler.codec.xml.XmlDTD].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].toString()"
    - "[io.netty.bootstrap.ServerBootstrapConfig].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandType].toString()"
    - "[java.lang.Module].toString()"
    - "[sun.security.util.BitArray].toString()"
    - "[io.netty.channel.AbstractChannelHandlerContext].toString()"
    - "[java.nio.channels.FileLock].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].toString()"
    - "[io.netty.handler.codec.http.HttpScheme].toString()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].toString()"
    - "[javax.security.auth.x500.X500Principal].toString()"
    - "[java.util.logging.Level].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].length()"
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].estimateBufferSize(int,int,int)"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].appendMapping(java.lang.StringBuilder,java.lang.String,java.lang.String)"
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].appendMapping(java.lang.StringBuilder,int)"
    functionUses: 19
    ICount: 40
    EdgeCount: 1071
    BranchProfiles:
    - Branch String: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:160"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:164"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:163"
        BranchSideFuncs:
        - "<init>(int)"
        - "appendMapping(java.lang.StringBuilder,java.lang.String,java.lang.String)"
        - "length()"
        - "estimateBufferSize(int,int,int)"
    - Branch String: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:173"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:177"
        BranchSideFuncs:
        - "toString()"
        - "append(java.lang.String)"
    Callsites:
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:157,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:161,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:161,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:161,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:166,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:167,1"
      Dst: "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].estimateBufferSize(int,int,int)"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:169,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:172,1"
      Dst: "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].appendMapping(java.lang.StringBuilder,java.lang.String,java.lang.String)"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:175,1"
      Dst: "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].appendMapping(java.lang.StringBuilder,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].estimateBufferSize(int,int,int)"
    functionSourceFile: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].appendMapping(java.lang.StringBuilder,java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionDepth: 0
    returnType: "java.lang.StringBuilder"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 2
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:203,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:203,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].appendMapping(java.lang.StringBuilder,int)"
    functionSourceFile: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionDepth: 1
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].appendMapping(java.lang.StringBuilder,java.lang.String,java.lang.String)"
    - "[io.netty.channel.ReflectiveChannelFactory].toString()"
    - "[sun.security.x509.SerialNumber].toString()"
    - "[io.netty.util.Version].toString()"
    - "[javax.net.ssl.SSLEngineResult].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].toString()"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].toString()"
    - "[java.util.AbstractCollection].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[sun.security.x509.CertificateAlgorithmId].toString()"
    - "[io.netty.buffer.PoolSubpage].toString()"
    - "[java.net.InetSocketAddress].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[java.lang.ProcessBuilder$Redirect$3].toString()"
    - "[io.netty.util.Recycler$1].toString()"
    - "[sun.security.x509.PolicyConstraintsExtension].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].toString()"
    - "[java.nio.charset.Charset].toString()"
    - "[java.util.Properties].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].toString()"
    - "[sun.security.util.JarConstraintsParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].toString()"
    - "[java.lang.reflect.Constructor].toString()"
    - "[java.nio.DoubleBuffer].toString()"
    - "[io.netty.util.Signal].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Thread].toString()"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].toString()"
    - "[java.lang.Throwable].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$CompositePrinterParser].toString()"
    - "[io.netty.channel.embedded.EmbeddedSocketAddress].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].toString()"
    - "[java.util.regex.Matcher].toString()"
    - "[java.lang.reflect.Field].toString()"
    - "[java.lang.invoke.MethodHandles$Lookup].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.net.URL].toString()"
    - "[java.lang.invoke.LambdaForm$Name].toString()"
    - "[sun.security.x509.RDN].toString()"
    - "[java.util.concurrent.atomic.AtomicReference].toString()"
    - "[java.util.Currency].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].toString()"
    - "[io.netty.channel.kqueue.NativeLongArray].toString()"
    - "[io.netty.handler.proxy.ProxyConnectionEvent].toString()"
    - "[java.util.Formatter].toString()"
    - "[java.lang.ModuleLayer].toString()"
    - "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - "[io.netty.handler.ssl.SslCompletionEvent].toString()"
    - "[io.netty.bootstrap.BootstrapConfig].toString()"
    - "[java.lang.ProcessBuilder$Redirect$1].toString()"
    - "[io.netty.handler.codec.xml.XmlEntityReference].toString()"
    - "[java.net.Proxy].toString()"
    - "[sun.security.util.DerValue].toString()"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].toString()"
    - "[sun.security.x509.AlgorithmId].toString()"
    - "[java.text.AttributedCharacterIterator$Attribute].toString()"
    - "[java.lang.Runtime$Version].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$2].toString()"
    - "[java.lang.module.ModuleDescriptor$Exports].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].toString()"
    - "[io.netty.channel.kqueue.AcceptFilter].toString()"
    - "[sun.security.x509.SubjectKeyIdentifierExtension].toString()"
    - "[io.netty.buffer.DefaultByteBufHolder].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.time.temporal.ChronoField].toString()"
    - "[java.security.PermissionCollection].toString()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].toString()"
    - "[java.util.concurrent.ConcurrentHashMap].toString()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].toString()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].toString()"
    - "[java.util.Vector].toString()"
    - "[io.netty.handler.codec.http.HttpVersion].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].toString()"
    - "[java.text.CalendarBuilder].toString()"
    - "[java.net.URLConnection].toString()"
    - "[java.util.EventObject].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].toString()"
    - "[io.netty.util.AbstractConstant].toString()"
    - "[sun.reflect.annotation.TypeAnnotation].toString()"
    - "[java.security.SecureRandom].toString()"
    - "[java.util.concurrent.atomic.AtomicLong].toString()"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].toString()"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].toString()"
    - "[sun.util.calendar.Era].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].toString()"
    - "[java.lang.module.ModuleDescriptor$Requires].toString()"
    - "[java.time.ZonedDateTime].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache].toString()"
    - "[java.math.MutableBigInteger].toString()"
    - "[java.lang.module.ModuleDescriptor$Provides].toString()"
    - "[java.net.InetSocketAddress$InetSocketAddressHolder].toString()"
    - "[sun.security.x509.GeneralNames].toString()"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].toString()"
    - "[sun.security.x509.Extension].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].toString()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].toString()"
    - "[io.netty.handler.ssl.util.LazyX509Certificate].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].toString()"
    - "[sun.security.x509.ExtendedKeyUsageExtension].toString()"
    - "[io.netty.buffer.WrappedByteBuf].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].toString()"
    - "[java.security.MessageDigest].toString()"
    - "[io.netty.handler.codec.dns.DnsOpCode].toString()"
    - "[java.io.ObjectOutputStream$DebugTraceInfoStack].toString()"
    - "[java.util.TreeMap$Entry].toString()"
    - "[java.time.zone.ZoneOffsetTransition].toString()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].toString()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].toString()"
    - "[java.lang.Integer].toString()"
    - "[java.lang.ProcessBuilder$Redirect$6].toString()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].toString()"
    - "[java.util.OptionalInt].toString()"
    - "[javax.naming.NamingException].toString()"
    - "[java.time.LocalDate].toString()"
    - "[java.util.ServiceLoader].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache].toString()"
    - "[java.net.InetAddress].toString()"
    - "[java.util.jar.Attributes$Name].toString()"
    - "[java.lang.Boolean].toString()"
    - "[io.netty.handler.codec.DefaultHeaders].toString()"
    - "[jaz.Zer].toString()"
    - "[io.netty.util.concurrent.DefaultPromise].toString()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].toString()"
    - "[io.netty.handler.ssl.PemX509Certificate].toString()"
    - "[sun.security.x509.UniqueIdentity].toString()"
    - "[java.security.CodeSigner].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].toString()"
    - "[sun.security.x509.CertificateX509Key].toString()"
    - "[java.nio.IntBuffer].toString()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].toString()"
    - "[java.util.concurrent.CountDownLatch].toString()"
    - "[io.netty.handler.codec.redis.IntegerRedisMessage].toString()"
    - "[java.nio.ByteOrder].toString()"
    - "[java.util.OptionalLong].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].toString()"
    - "[io.netty.handler.codec.xml.XmlElementEnd].toString()"
    - "[java.io.ObjectStreamClass].toString()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].toString()"
    - "[java.util.concurrent.atomic.LongAdder].toString()"
    - "[java.util.Optional].toString()"
    - "[java.net.URI].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].toString()"
    - "[java.nio.FloatBuffer].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuestion].toString()"
    - "[io.netty.handler.ssl.OpenSslSessionId].toString()"
    - "[io.netty.channel.group.DefaultChannelGroup].toString()"
    - "[sun.security.x509.AuthorityKeyIdentifierExtension].toString()"
    - "[sun.security.util.ObjectIdentifier].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].toString()"
    - "[java.util.concurrent.LinkedBlockingDeque].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].toString()"
    - "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].toString()"
    - "[java.time.format.DateTimePrintContext].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].toString()"
    - "[sun.nio.fs.UnixPath].toString()"
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].toString()"
    - "[java.lang.Class].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].toString()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].toString()"
    - "[java.util.BitSet].toString()"
    - "[java.lang.StackFrameInfo].toString()"
    - "[javax.xml.namespace.QName].toString()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].toString()"
    - "[sun.security.x509.CertificateExtensions].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].toString()"
    - "[sun.security.x509.BasicConstraintsExtension].toString()"
    - "[java.util.concurrent.atomic.AtomicReferenceArray].toString()"
    - "[java.lang.invoke.Invokers].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].toString()"
    - "[java.time.LocalDateTime].toString()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].toString()"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[java.time.format.DateTimeFormatter].toString()"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].toString()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].toString()"
    - "[sun.security.x509.CertificateIssuerName].toString()"
    - "[java.lang.invoke.SerializedLambda].toString()"
    - "[sun.util.locale.LocaleExtensions].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].toString()"
    - "[sun.security.x509.NameConstraintsExtension].toString()"
    - "[java.net.NetworkInterface].toString()"
    - "[java.util.StringJoiner].toString()"
    - "[java.util.AbstractMap].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].toString()"
    - "[java.time.LocalTime].toString()"
    - "[java.security.ProtectionDomain].toString()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock].toString()"
    - "[io.netty.handler.codec.EmptyHeaders].toString()"
    - "[java.time.temporal.ValueRange].toString()"
    - "[java.time.Instant].toString()"
    - "[java.security.PrivilegedActionException].toString()"
    - "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].toString()"
    - "[sun.util.calendar.CalendarDate].toString()"
    - "[java.lang.module.Configuration].toString()"
    - "[java.security.AlgorithmParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].toString()"
    - "[java.lang.ThreadGroup].toString()"
    - "[io.netty.buffer.AbstractByteBufAllocator].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].toString()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].toString()"
    - "[java.nio.file.attribute.FileTime].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].toString()"
    - "[io.netty.handler.codec.xml.XmlNamespace].toString()"
    - "[io.netty.channel.unix.FileDescriptor].toString()"
    - "[java.lang.Double].toString()"
    - "[java.util.OptionalDouble].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].toString()"
    - "[io.netty.bootstrap.AbstractBootstrap].toString()"
    - "[io.netty.channel.WriteBufferWaterMark].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].toString()"
    - "[java.math.BigInteger].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].toString()"
    - "[java.time.format.Parsed].toString()"
    - "[java.time.OffsetDateTime].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString()"
    - "[java.time.OffsetTime].toString()"
    - "[java.util.WeakHashMap$Entry].toString()"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].toString()"
    - "[sun.security.x509.X509CertImpl].toString()"
    - "[java.time.ZoneOffset].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribePayload].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].toString()"
    - "[java.lang.reflect.Method].toString()"
    - "[io.netty.handler.codec.http2.Http2Flags].toString()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].toString()"
    - "[io.netty.buffer.CompositeByteBuf].toString()"
    - "[java.lang.Enum].toString()"
    - "[io.netty.handler.codec.http2.HpackHeaderField].toString()"
    - "[java.net.ServerSocket].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[java.time.zone.ZoneRules].toString()"
    - "[java.security.spec.PSSParameterSpec].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent].toString()"
    - "[sun.security.x509.X500Name].toString()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].toString()"
    - "[io.netty.channel.embedded.EmbeddedChannelId].toString()"
    - "[java.util.concurrent.locks.AbstractQueuedSynchronizer].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.util.regex.Pattern].toString()"
    - "[java.util.concurrent.atomic.AtomicLongArray].toString()"
    - "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].toString()"
    - "[sun.util.locale.Extension].toString()"
    - "[io.netty.handler.codec.smtp.SmtpCommand].toString()"
    - "[java.util.concurrent.ForkJoinPool].toString()"
    - "[sun.security.x509.CertificateVersion].toString()"
    - "[java.lang.ProcessHandleImpl].toString()"
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].toString()"
    - "[java.util.LongSummaryStatistics].toString()"
    - "[java.io.ObjectStreamField].toString()"
    - "[java.lang.ProcessImpl].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[io.netty.resolver.dns.InflightNameResolver].toString()"
    - "[java.nio.charset.CodingErrorAction].toString()"
    - "[java.lang.Float].toString()"
    - "[java.time.format.DecimalStyle].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].toString()"
    - "[sun.security.x509.IssuerAlternativeNameExtension].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[java.io.File].toString()"
    - "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].toString()"
    - "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].toString()"
    - "[java.util.Calendar].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].toString()"
    - "[java.nio.ByteBuffer].toString()"
    - "[io.netty.buffer.EmptyByteBuf].toString()"
    - "[io.netty.buffer.AbstractByteBuf].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock].toString()"
    - "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].toString()"
    - "[java.lang.Package].toString()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].toString()"
    - "[java.text.ParsePosition].toString()"
    - "[sun.util.locale.BaseLocale].toString()"
    - "[sun.reflect.annotation.AnnotationType].toString()"
    - "[java.lang.Character$Subset].toString()"
    - "[sun.security.util.LazyCodeSourcePermissionCollection].toString()"
    - "[java.lang.Object].toString()"
    - "[io.netty.handler.codec.xml.XmlElement].toString()"
    - "[java.lang.Character].toString()"
    - "[sun.net.www.MessageHeader].toString()"
    - "[java.lang.invoke.MethodType].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].toString()"
    - "[io.netty.handler.codec.http.QueryStringEncoder].toString()"
    - "[java.net.InterfaceAddress].toString()"
    - "[java.time.zone.ZoneOffsetTransitionRule].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].toString()"
    - "[io.netty.handler.codec.dns.DnsRecordType].toString()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].toString()"
    - "[java.lang.StackTraceElement].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toString()"
    - "[java.lang.ProcessBuilder$Redirect$4].toString()"
    - "[java.lang.invoke.LambdaForm].toString()"
    - "[io.netty.handler.codec.dns.DnsResponseCode].toString()"
    - "[io.netty.util.collection.LongObjectHashMap].toString()"
    - "[javax.naming.directory.ModificationItem].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].toString()"
    - "[sun.security.x509.PolicyMappingsExtension].toString()"
    - "[sun.security.x509.CertificatePoliciesExtension].toString()"
    - "[java.security.CodeSource].toString()"
    - "[java.security.Permission].toString()"
    - "[java.security.Timestamp].toString()"
    - "[io.netty.buffer.PoolArena].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].toString()"
    - "[java.nio.charset.CoderResult].toString()"
    - "[io.netty.channel.unix.PeerCredentials].toString()"
    - "[java.security.SecureRandomSpi].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[javax.security.auth.Subject].toString()"
    - "[javax.crypto.CryptoPermission].toString()"
    - "[java.util.Locale].toString()"
    - "[java.time.chrono.AbstractChronology].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsPtrRecord].toString()"
    - "[java.util.concurrent.locks.ReentrantLock].toString()"
    - "[java.lang.module.ResolvedModule].toString()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].toString()"
    - "[io.netty.handler.codec.http.HttpMethod].toString()"
    - "[java.lang.invoke.MemberName].toString()"
    - "[sun.security.x509.PrivateKeyUsageExtension].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].toString()"
    - "[io.netty.handler.traffic.TrafficCounter].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].toString()"
    - "[java.io.ByteArrayOutputStream].toString()"
    - "[sun.security.x509.CertificateValidity].toString()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].toString()"
    - "[java.time.Duration].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[sun.security.x509.X509CertInfo].toString()"
    - "[sun.security.x509.AVA].toString()"
    - "[java.lang.module.ModuleDescriptor$Opens].toString()"
    - "[java.math.BigDecimal].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].toString()"
    - "[java.lang.invoke.MethodHandleImpl$LoopClauses].toString()"
    - "[sun.security.x509.CertificateSerialNumber].toString()"
    - "[sun.nio.fs.UnixFileStore].toString()"
    - "[java.net.Socket].toString()"
    - "[javax.net.ssl.SNIHostName].toString()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].toString()"
    - "[java.util.Hashtable$Entry].toString()"
    - "[java.security.Signature].toString()"
    - "[java.lang.Short].toString()"
    - "[java.util.concurrent.CompletableFuture].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsOptPseudoRrRecord].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses].toString()"
    - "[java.util.concurrent.ThreadPoolExecutor].toString()"
    - "[java.util.concurrent.LinkedBlockingQueue].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].toString()"
    - "[java.time.ZoneId].toString()"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].toString()"
    - "[java.net.SocketImpl].toString()"
    - "[sun.security.x509.KeyIdentifier].toString()"
    - "[java.util.Hashtable].toString()"
    - "[sun.security.x509.GeneralSubtrees].toString()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].toString()"
    - "[java.text.FieldPosition].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent].toString()"
    - "[io.netty.util.DomainNameMapping].toString()"
    - "[sun.security.x509.AuthorityInfoAccessExtension].toString()"
    - "[java.util.concurrent.CopyOnWriteArrayList].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].toString()"
    - "[io.netty.buffer.PoolChunkList].toString()"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].toString()"
    - "[io.netty.buffer.PoolChunk].toString()"
    - "[io.netty.resolver.dns.DefaultDnsServerAddresses].toString()"
    - "[io.netty.util.internal.EmptyPriorityQueue].toString()"
    - "[io.netty.channel.unix.DomainSocketAddress].toString()"
    - "[javax.net.ssl.SNIServerName].toString()"
    - "[java.lang.ProcessBuilder$RedirectPipeImpl].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckPayload].toString()"
    - "[java.io.StringWriter].toString()"
    - "[io.netty.handler.codec.xml.XmlAttribute].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].toString()"
    - "[java.util.zip.ZipEntry].toString()"
    - "[java.util.UUID].toString()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].toString()"
    - "[java.security.Provider].toString()"
    - "[java.time.Period].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].toString()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].toString()"
    - "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].toString()"
    - "[java.lang.reflect.Parameter].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].toString()"
    - "[sun.security.x509.CertificateSubjectName].toString()"
    - "[io.netty.channel.DefaultChannelId].toString()"
    - "[java.util.Date].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame].toString()"
    - "[java.util.IntSummaryStatistics].toString()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[sun.security.x509.CRLDistributionPointsExtension].toString()"
    - "[io.netty.channel.DefaultAddressedEnvelope].toString()"
    - "[io.netty.channel.local.LocalAddress].toString()"
    - "[io.netty.util.collection.CharObjectHashMap].toString()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[io.netty.handler.codec.xml.XmlElementStart].toString()"
    - "[io.netty.handler.codec.DecoderResult].toString()"
    - "[io.netty.handler.ssl.SniCompletionEvent].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[io.netty.util.collection.ByteObjectHashMap].toString()"
    - "[java.util.AbstractMap$SimpleEntry].toString()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].toString()"
    - "[io.netty.util.collection.ShortObjectHashMap].toString()"
    - "[java.time.format.DateTimeParseContext].toString()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].toString()"
    - "[java.math.MathContext].toString()"
    - "[io.netty.handler.codec.http.QueryStringDecoder].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$NumberPrinterParser].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$1].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].toString()"
    - "[java.nio.LongBuffer].toString()"
    - "[java.util.DoubleSummaryStatistics].toString()"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].toString()"
    - "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].toString()"
    - "[java.lang.Long].toString()"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].toString()"
    - "[java.security.Provider$Service].toString()"
    - "[io.netty.channel.sctp.SctpMessage].toString()"
    - "[io.netty.util.collection.IntObjectHashMap].toString()"
    - "[io.netty.handler.codec.xml.XmlContent].toString()"
    - "[io.netty.handler.codec.http.HttpHeaders].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].toString()"
    - "[java.lang.invoke.MethodHandle].toString()"
    - "[java.lang.invoke.MethodTypeForm].toString()"
    - "[java.util.HashMap$Node].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].toString()"
    - "[java.lang.ProcessBuilder$Redirect$2].toString()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].toString()"
    - "[java.time.temporal.ChronoUnit].toString()"
    - "[io.netty.buffer.FixedCompositeByteBuf].toString()"
    - "[java.nio.channels.FileChannel$MapMode].toString()"
    - "[sun.security.x509.SubjectAlternativeNameExtension].toString()"
    - "[io.netty.channel.DefaultChannelPipeline].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].toString()"
    - "[java.nio.ShortBuffer].toString()"
    - "[io.netty.handler.codec.string.LineSeparator].toString()"
    - "[java.util.ResourceBundle$CacheKey].toString()"
    - "[io.netty.buffer.SwappedByteBuf].toString()"
    - "[java.security.cert.CertPath].toString()"
    - "[io.netty.channel.unix.Socket].toString()"
    - "[java.lang.module.ModuleDescriptor].toString()"
    - "[sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo].toString()"
    - "[java.lang.module.ModuleDescriptor$Version].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].toString()"
    - "[java.net.HttpCookie].toString()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].toString()"
    - "[sun.util.calendar.JulianCalendar$Date].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].toString()"
    - "[java.lang.ProcessBuilder$Redirect$5].toString()"
    - "[io.netty.channel.AbstractChannel].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].toString()"
    - "[sun.security.x509.GeneralSubtree].toString()"
    - "[sun.security.x509.GeneralName].toString()"
    - "[java.lang.Byte].toString()"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams].toString()"
    - "[io.netty.handler.codec.xml.XmlDTD].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].toString()"
    - "[io.netty.bootstrap.ServerBootstrapConfig].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandType].toString()"
    - "[java.lang.Module].toString()"
    - "[sun.security.util.BitArray].toString()"
    - "[io.netty.channel.AbstractChannelHandlerContext].toString()"
    - "[java.nio.channels.FileLock].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].toString()"
    - "[io.netty.handler.codec.http.HttpScheme].toString()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].toString()"
    - "[javax.security.auth.x500.X500Principal].toString()"
    - "[java.util.logging.Level].toString()"
    functionUses: 1
    ICount: 10
    EdgeCount: 527
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:199,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:199,1"
      Dst: "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].appendMapping(java.lang.StringBuilder,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].map(java.lang.Object)"
    functionSourceFile: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].map(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping:93,1"
      Dst: "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].map(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$8].<init>(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$8"
    linkageType: ""
    functionLinenumber: 418
    functionLinenumberEnd: 420
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$8:419,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$8].run()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$8"
    linkageType: ""
    functionLinenumber: 422
    functionLinenumberEnd: 429
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    functionUses: 4
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$8:423,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.util.internal.PlatformDependent0$8:423,1"
      Dst: "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollRecvByteAllocatorStreamingHandle].<init>(io.netty.channel.RecvByteBufAllocator$ExtendedHandle)"
    functionSourceFile: "io.netty.channel.epoll.EpollRecvByteAllocatorStreamingHandle"
    linkageType: ""
    functionLinenumber: 21
    functionLinenumberEnd: 24
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator$ExtendedHandle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].<init>(io.netty.channel.RecvByteBufAllocator$ExtendedHandle)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollRecvByteAllocatorStreamingHandle:22,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].<init>(io.netty.channel.RecvByteBufAllocator$ExtendedHandle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollRecvByteAllocatorStreamingHandle].maybeMoreDataToRead()"
    functionSourceFile: "io.netty.channel.epoll.EpollRecvByteAllocatorStreamingHandle"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead()"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].isReceivedRdHup()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollRecvByteAllocatorStreamingHandle:33"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollRecvByteAllocatorStreamingHandle:32"
        BranchSideFuncs:
        - "attemptedBytesRead()"
        - "isReceivedRdHup()"
        - "lastBytesRead()"
    - Branch String: "io.netty.channel.epoll.EpollRecvByteAllocatorStreamingHandle:33"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollRecvByteAllocatorStreamingHandle:32"
        BranchSideFuncs:
        - "attemptedBytesRead()"
        - "isReceivedRdHup()"
        - "lastBytesRead()"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollRecvByteAllocatorStreamingHandle:33,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - Src: "io.netty.channel.epoll.EpollRecvByteAllocatorStreamingHandle:33,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead()"
    - Src: "io.netty.channel.epoll.EpollRecvByteAllocatorStreamingHandle:33,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].isReceivedRdHup()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead()"
    functionSourceFile: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].attemptedBytesRead()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].attemptedBytesRead()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].attemptedBytesRead()"
    functionUses: 6
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle:175,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].attemptedBytesRead()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].isReceivedRdHup()"
    functionSourceFile: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].<init>(io.netty.handler.codec.http2.Http2InboundFrameLogger,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2InboundFrameLogger"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:41,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionDepth: 7
    returnType: "int"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logData(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    functionUses: 9
    ICount: 13
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:47,1"
      Dst: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:47,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logData(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:48,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameLogger"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2InboundFrameLogger"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 58
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter:io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logHeaders(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    functionUses: 7
    ICount: 13
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:55,1"
      Dst: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:55,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logHeaders(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:56,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 68
    functionDepth: 2
    returnType: "void"
    argCount: 8
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "short"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter:io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logHeaders(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    functionUses: 6
    ICount: 16
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:63,1"
      Dst: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:63,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logHeaders(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:65,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 75
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    - "short"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter:io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logPriority(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    functionUses: 5
    ICount: 13
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:72,1"
      Dst: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:72,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logPriority(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:73,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 82
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logRstStream(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    functionUses: 5
    ICount: 11
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:79,1"
      Dst: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:79,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logRstStream(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,long)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:80,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 88
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter:io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logSettingsAck(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    functionUses: 5
    ICount: 9
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:85,1"
      Dst: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:85,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logSettingsAck(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:86,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter:io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logSettings(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec$1].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    functionUses: 5
    ICount: 10
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:92,1"
      Dst: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:92,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logSettings(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:93,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 101
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter:io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logPing(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    functionUses: 5
    ICount: 10
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:98,1"
      Dst: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:98,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logPing(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,long)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:99,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 107
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logPingAck(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    functionUses: 5
    ICount: 10
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:104,1"
      Dst: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:104,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logPingAck(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,long)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:105,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logPushPromise(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    functionUses: 5
    ICount: 13
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:111,1"
      Dst: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:111,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logPushPromise(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:112,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 121
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter:io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logGoAway(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    functionUses: 4
    ICount: 12
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:118,1"
      Dst: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:118,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logGoAway(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:119,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2EventAdapter:io.netty.handler.codec.http2.Http2FrameAdapter:io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logWindowsUpdate(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    functionUses: 5
    ICount: 11
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:125,1"
      Dst: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:125,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logWindowsUpdate(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,int)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:126,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionDepth: 7
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "byte"
    - "int"
    - "io.netty.handler.codec.http2.Http2Flags"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logUnknownFrame(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    functionUses: 4
    ICount: 13
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:132,1"
      Dst: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].access$000(io.netty.handler.codec.http2.Http2InboundFrameLogger)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:132,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logUnknownFrame(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger$1:133,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.svm.PlatformDependent0Substitution].<init>()"
    functionSourceFile: "io.netty.util.internal.svm.PlatformDependent0Substitution"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.svm.PlatformDependent0Substitution:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:102,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 231
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.util.internal.logging.CommonsLogger].isTraceEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isTraceEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isTraceEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isTraceEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isTraceEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.Byte].valueOf(byte)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.CompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeLong(long)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeLong(long)"
    - "[io.netty.buffer.AbstractByteBuf].writeLong(long)"
    - "[io.netty.buffer.WrappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.EmptyByteBuf].writeLong(long)"
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextInt(int)"
    - "[java.util.Random].nextInt(int)"
    - "[java.util.concurrent.ThreadLocalRandom].nextInt(int)"
    - "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.SwappedByteBuf].order()"
    - "[io.netty.buffer.EmptyByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[java.lang.Long].reverseBytes(long)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLong(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLong(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLong(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.SlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder].byteAtIndex(int,int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.util.internal.logging.InternalLogger].isTraceEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeLong(long)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].order()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].getLong(int)"
    - "[io.netty.buffer.ByteBuf].getInt(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].retain()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 217
    EdgeCount: 371
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:113"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:112"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:115"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:114"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:115"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:117"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:116"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:117"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:119"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:118"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:119"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:121"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:120"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:121"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:124"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:123"
        BranchSideFuncs:
        - "getName()"
        - "getClass()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:129"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:133"
        BranchSideFuncs:
        - "trace(java.lang.String,java.lang.Object,java.lang.Object)"
        - "valueOf(int)"
        - "valueOf(byte)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:132"
        BranchSideFuncs:
        - "isFinalFragment()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:137"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:136"
        BranchSideFuncs:
        - "rsv()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:140"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:145"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "toString()"
        - "append(int)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:144"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:140"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:145"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "toString()"
        - "append(int)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:144"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:147"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:152"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:149"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:165"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:164"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:156"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:159"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:158"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:161"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:159"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:158"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:166"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:169"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:168"
        BranchSideFuncs:
        - "alloc()"
        - "buffer(int)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:169"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:168"
        BranchSideFuncs:
        - "alloc()"
        - "buffer(int)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:176"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:215"
        BranchSideFuncs:
        - "isReadable()"
        - "threadLocalRandom()"
        - "nextInt(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:214"
        BranchSideFuncs:
        - "writableBytes()"
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:180"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:213"
        BranchSideFuncs:
        - "order()"
        - "append(java.lang.String)"
        - "isReadable()"
        - "readerIndex()"
        - "writerIndex()"
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "isTraceEnabled()"
        - "writableBytes()"
        - "getInt(int)"
        - "retain()"
        - "<init>()"
        - "getLong(int)"
        - "writeByte(int)"
        - "isFinalFragment()"
        - "alloc()"
        - "getByte(int)"
        - "trace(java.lang.String,java.lang.Object,java.lang.Object)"
        - "buffer(int)"
        - "writeInt(int)"
        - "threadLocalRandom()"
        - "add(java.lang.Object)"
        - "toString()"
        - "rsv()"
        - "append(int)"
        - "reverseBytes(long)"
        - "valueOf(int)"
        - "valueOf(byte)"
        - "<init>(java.lang.String)"
        - "byteAtIndex(int,int)"
        - "readableBytes()"
        - "writeLong(long)"
        - "nextInt(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:212"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:207"
        BranchSideFuncs:
        - "order()"
        - "append(java.lang.String)"
        - "isReadable()"
        - "readerIndex()"
        - "writerIndex()"
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "isTraceEnabled()"
        - "writableBytes()"
        - "getInt(int)"
        - "retain()"
        - "<init>()"
        - "getLong(int)"
        - "writeByte(int)"
        - "isFinalFragment()"
        - "alloc()"
        - "getByte(int)"
        - "trace(java.lang.String,java.lang.Object,java.lang.Object)"
        - "buffer(int)"
        - "writeInt(int)"
        - "threadLocalRandom()"
        - "add(java.lang.Object)"
        - "toString()"
        - "rsv()"
        - "append(int)"
        - "reverseBytes(long)"
        - "valueOf(int)"
        - "valueOf(byte)"
        - "<init>(java.lang.String)"
        - "byteAtIndex(int,int)"
        - "readableBytes()"
        - "writeLong(long)"
        - "nextInt(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:206"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:194"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:198"
        BranchSideFuncs:
        - "reverseBytes(long)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:197"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:198"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:202"
        BranchSideFuncs:
        - "order()"
        - "append(java.lang.String)"
        - "isReadable()"
        - "readerIndex()"
        - "writerIndex()"
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "isTraceEnabled()"
        - "writableBytes()"
        - "getInt(int)"
        - "retain()"
        - "<init>()"
        - "getLong(int)"
        - "writeByte(int)"
        - "isFinalFragment()"
        - "alloc()"
        - "getByte(int)"
        - "trace(java.lang.String,java.lang.Object,java.lang.Object)"
        - "buffer(int)"
        - "writeInt(int)"
        - "threadLocalRandom()"
        - "add(java.lang.Object)"
        - "toString()"
        - "rsv()"
        - "append(int)"
        - "reverseBytes(long)"
        - "valueOf(int)"
        - "valueOf(byte)"
        - "<init>(java.lang.String)"
        - "byteAtIndex(int,int)"
        - "readableBytes()"
        - "writeLong(long)"
        - "nextInt(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:201"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:202"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:207"
        BranchSideFuncs:
        - "getInt(int)"
        - "writeInt(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:206"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:208"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:213"
        BranchSideFuncs:
        - "order()"
        - "append(java.lang.String)"
        - "isReadable()"
        - "readerIndex()"
        - "writerIndex()"
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "isTraceEnabled()"
        - "writableBytes()"
        - "getInt(int)"
        - "retain()"
        - "<init>()"
        - "getLong(int)"
        - "writeByte(int)"
        - "isFinalFragment()"
        - "alloc()"
        - "getByte(int)"
        - "trace(java.lang.String,java.lang.Object,java.lang.Object)"
        - "buffer(int)"
        - "writeInt(int)"
        - "threadLocalRandom()"
        - "add(java.lang.Object)"
        - "toString()"
        - "rsv()"
        - "append(int)"
        - "reverseBytes(long)"
        - "valueOf(int)"
        - "valueOf(byte)"
        - "<init>(java.lang.String)"
        - "byteAtIndex(int,int)"
        - "readableBytes()"
        - "writeLong(long)"
        - "nextInt(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:212"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:220"
        BranchSideFuncs:
        - "order()"
        - "append(java.lang.String)"
        - "isReadable()"
        - "readerIndex()"
        - "writerIndex()"
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "isTraceEnabled()"
        - "writableBytes()"
        - "getInt(int)"
        - "retain()"
        - "<init>()"
        - "getLong(int)"
        - "writeByte(int)"
        - "isFinalFragment()"
        - "alloc()"
        - "getByte(int)"
        - "trace(java.lang.String,java.lang.Object,java.lang.Object)"
        - "buffer(int)"
        - "writeInt(int)"
        - "threadLocalRandom()"
        - "add(java.lang.Object)"
        - "toString()"
        - "rsv()"
        - "append(int)"
        - "reverseBytes(long)"
        - "valueOf(int)"
        - "valueOf(byte)"
        - "<init>(java.lang.String)"
        - "byteAtIndex(int,int)"
        - "readableBytes()"
        - "writeLong(long)"
        - "nextInt(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:219"
        BranchSideFuncs:
        - "retain()"
        - "add(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:226"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:230"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:226"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:230"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:226"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:229"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:228"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:226"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:229"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:228"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:108,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:124,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:124,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:124,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:124,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:124,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:124,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:127,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:129,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isTraceEnabled()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:130,1"
      Dst: "[java.lang.Byte].valueOf(byte)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:130,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:130,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:134,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:137,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:141,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:141,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:150,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:150,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:151,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:172,1"
      Dst: "[io.netty.buffer.ByteBuf].writeLong(long)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:177,1"
      Dst: "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:177,1"
      Dst: "[java.util.Random].nextInt(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:178,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:180,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:182,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:185,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:186,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:195,1"
      Dst: "[java.lang.Long].reverseBytes(long)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:199,1"
      Dst: "[io.netty.buffer.ByteBuf].getLong(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:203,1"
      Dst: "[io.netty.buffer.ByteBuf].getInt(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:209,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:210,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder].byteAtIndex(int,int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:213,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:215,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:217,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:221,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:227,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 67
    CyclomaticComplexity: 29
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder].byteAtIndex(int,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder"
    linkageType: ""
    functionLinenumber: 232
    functionLinenumberEnd: 234
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder:74,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainWildcardMappingBuilder].<init>(java.lang.Object)"
    functionSourceFile: "io.netty.util.DomainWildcardMappingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DomainWildcardMappingBuilder].<init>(int,java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainWildcardMappingBuilder:40,1"
      Dst: "[io.netty.util.DomainWildcardMappingBuilder].<init>(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainWildcardMappingBuilder].<init>(int,java.lang.Object)"
    functionSourceFile: "io.netty.util.DomainWildcardMappingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.LinkedHashMap].<init>(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainWildcardMappingBuilder:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.DomainWildcardMappingBuilder:51,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.DomainWildcardMappingBuilder:52,1"
      Dst: "[java.util.LinkedHashMap].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainWildcardMappingBuilder].add(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.DomainWildcardMappingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.util.DomainWildcardMappingBuilder"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DomainWildcardMappingBuilder].normalizeHostName(java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainWildcardMappingBuilder:73,1"
      Dst: "[io.netty.util.DomainWildcardMappingBuilder].normalizeHostName(java.lang.String)"
    - Src: "io.netty.util.DomainWildcardMappingBuilder:74,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.DomainWildcardMappingBuilder:73,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainWildcardMappingBuilder].normalizeHostName(java.lang.String)"
    functionSourceFile: "io.netty.util.DomainWildcardMappingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.String].isEmpty()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].normalize(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.DomainWildcardMappingBuilder:80"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder:81"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder:80"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DomainWildcardMappingBuilder:80"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder:83"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder:82"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DomainWildcardMappingBuilder:84"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DomainWildcardMappingBuilder:85"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder:86"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder:85"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DomainWildcardMappingBuilder:85"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder:88"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.DomainWildcardMappingBuilder:79,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.DomainWildcardMappingBuilder:80,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.util.DomainWildcardMappingBuilder:80,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.util.DomainWildcardMappingBuilder:81,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.DomainWildcardMappingBuilder:81,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.DomainWildcardMappingBuilder:81,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.DomainWildcardMappingBuilder:81,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.util.DomainWildcardMappingBuilder:83,1"
      Dst: "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].normalize(java.lang.String)"
    - Src: "io.netty.util.DomainWildcardMappingBuilder:85,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.util.DomainWildcardMappingBuilder:88,1"
      Dst: "[java.lang.String].substring(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].normalize(java.lang.String)"
    functionSourceFile: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DomainNameMapping].normalizeHostname(java.lang.String)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:140,1"
      Dst: "[io.netty.util.DomainNameMapping].normalizeHostname(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainWildcardMappingBuilder].build()"
    functionSourceFile: "io.netty.util.DomainWildcardMappingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.Mapping"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].<init>(java.lang.Object,java.util.Map)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainWildcardMappingBuilder:98,1"
      Dst: "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].<init>(java.lang.Object,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].<init>(java.lang.Object,java.util.Map)"
    functionSourceFile: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.LinkedHashMap].<init>(java.util.Map)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:109,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:111,1"
      Dst: "[java.util.LinkedHashMap].<init>(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakException].<init>()"
    functionSourceFile: "io.netty.util.ResourceLeakException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>()"
    - "[java.lang.Throwable].getStackTrace()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakException:31,1"
      Dst: "[java.lang.RuntimeException].<init>()"
    - Src: "io.netty.util.ResourceLeakException:32,1"
      Dst: "[java.lang.Throwable].getStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.util.ResourceLeakException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    - "[java.lang.Throwable].getStackTrace()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakException:36,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    - Src: "io.netty.util.ResourceLeakException:37,1"
      Dst: "[java.lang.Throwable].getStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.ResourceLeakException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.Throwable].getStackTrace()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakException:41,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.util.ResourceLeakException:42,1"
      Dst: "[java.lang.Throwable].getStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.util.ResourceLeakException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    - "[java.lang.Throwable].getStackTrace()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakException:46,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    - Src: "io.netty.util.ResourceLeakException:47,1"
      Dst: "[java.lang.Throwable].getStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakException].hashCode()"
    functionSourceFile: "io.netty.util.ResourceLeakException"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StackTraceElement].hashCode()"
    functionUses: 5
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.ResourceLeakException:53"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakException:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakException:54,1"
      Dst: "[java.lang.StackTraceElement].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.ResourceLeakException].equals(java.lang.Object)"
    functionSourceFile: "io.netty.util.ResourceLeakException"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    functionUses: 10
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.ResourceLeakException:61"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakException:64"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ResourceLeakException:63"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.ResourceLeakException:64"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakException:68"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ResourceLeakException:67"
        BranchSideFuncs:
        - "equals(java.lang.Object[],java.lang.Object[])"
    Callsites:
    - Src: "io.netty.util.ResourceLeakException:68,1"
      Dst: "[java.util.Arrays].equals(java.lang.Object[],java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.TCPPacket].<init>()"
    functionSourceFile: "io.netty.handler.pcap.TCPPacket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.TCPPacket:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector].<init>(io.netty.handler.ssl.JdkAlpnSslEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.JdkAlpnSslEngine"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector].apply(javax.net.ssl.SSLEngine,java.util.List)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector].select(java.util.List)"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector].select(java.util.List)"
    functionUses: 1
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:51"
        BranchSideFuncs:
        - "select(java.util.List)"
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:50"
        BranchSideFuncs:
        - "select(java.util.List)"
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:51"
        BranchSideFuncs:
        - "select(java.util.List)"
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:50"
        BranchSideFuncs:
        - "select(java.util.List)"
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:51"
        BranchSideFuncs:
        - "<init>()"
        - "select(java.util.List)"
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:50"
        BranchSideFuncs:
        - "select(java.util.List)"
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:50,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:54,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector].select(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector].apply(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector].apply(javax.net.ssl.SSLEngine,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector:40,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector].apply(javax.net.ssl.SSLEngine,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator:82,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator].newHandle()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "io.netty.channel.MessageSizeEstimator$Handle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator].access$1900()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "io.netty.channel.MessageSizeEstimator$Handle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ConnectTimeoutException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.channel.ConnectTimeoutException"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ConnectException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ConnectTimeoutException:28,1"
      Dst: "[java.net.ConnectException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ConnectTimeoutException].<init>()"
    functionSourceFile: "io.netty.channel.ConnectTimeoutException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ConnectException].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ConnectTimeoutException:31,1"
      Dst: "[java.net.ConnectException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.NativeLibraryLoader$1].<init>(java.lang.Class,java.lang.String,boolean)"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader$1"
    linkageType: ""
    functionLinenumber: 416
    functionLinenumberEnd: 418
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader$1:417,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.NativeLibraryLoader$1].run()"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader$1"
    linkageType: ""
    functionLinenumber: 422
    functionLinenumberEnd: 428
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].setAccessible(boolean)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 4
    ICount: 18
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader$1:423,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "io.netty.util.internal.NativeLibraryLoader$1:424,1"
      Dst: "[java.lang.reflect.Method].setAccessible(boolean)"
    - Src: "io.netty.util.internal.NativeLibraryLoader$1:425,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.util.internal.NativeLibraryLoader$1:425,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV].totalNumBytes()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 5
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].contentNumBytes()"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].contentNumBytes()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:41,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyTLV].contentNumBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV].contentNumBytes()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:45,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:45,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV].<init>(byte,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyTLV$Type].typeForByteValue(byte)"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].<init>(io.netty.handler.codec.haproxy.HAProxyTLV$Type,byte,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:125,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyTLV$Type].typeForByteValue(byte)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:125,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyTLV].<init>(io.netty.handler.codec.haproxy.HAProxyTLV$Type,byte,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV].<init>(io.netty.handler.codec.haproxy.HAProxyTLV$Type,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.haproxy.HAProxyTLV$Type"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyTLV$Type].byteValueForType(io.netty.handler.codec.haproxy.HAProxyTLV$Type)"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].<init>(io.netty.handler.codec.haproxy.HAProxyTLV$Type,byte,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:135,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyTLV$Type].byteValueForType(io.netty.handler.codec.haproxy.HAProxyTLV$Type)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:135,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyTLV].<init>(io.netty.handler.codec.haproxy.HAProxyTLV$Type,byte,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV].<init>(io.netty.handler.codec.haproxy.HAProxyTLV$Type,byte,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 150
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.haproxy.HAProxyTLV$Type"
    - "byte"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:146,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:147,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV].type()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionDepth: 0
    returnType: "io.netty.handler.codec.haproxy.HAProxyTLV$Type"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV].typeByteValue()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV].copy()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.haproxy.HAProxyTLV"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:167,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:167,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:167,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyTLV].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionDepth: 3
    returnType: "io.netty.handler.codec.haproxy.HAProxyTLV"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].<init>(io.netty.handler.codec.haproxy.HAProxyTLV$Type,byte,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:182,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyTLV].<init>(io.netty.handler.codec.haproxy.HAProxyTLV$Type,byte,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV].duplicate()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.haproxy.HAProxyTLV"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:172,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:172,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:172,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyTLV].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.haproxy.HAProxyTLV"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:177,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:177,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:177,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyTLV].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV].retain()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 189
    functionDepth: 1
    returnType: "io.netty.handler.codec.haproxy.HAProxyTLV"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retain()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:187,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV].retain(int)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.haproxy.HAProxyTLV"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:193,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV].touch()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionDepth: 1
    returnType: "io.netty.handler.codec.haproxy.HAProxyTLV"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].touch()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:199,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 207
    functionDepth: 1
    returnType: "io.netty.handler.codec.haproxy.HAProxyTLV"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].touch(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:205,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV].toString()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 215
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].type()"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].typeByteValue()"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.buffer.DefaultByteBufHolder].contentToString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 20
    ICount: 18
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:211,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:211,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:211,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:212,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyTLV].type()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:212,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:213,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyTLV].typeByteValue()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:213,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:214,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].contentToString()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:214,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV:214,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.ProtocolFamilyConverter].<init>()"
    functionSourceFile: "io.netty.channel.socket.nio.ProtocolFamilyConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.ProtocolFamilyConverter:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].<init>()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.BsdSocket].newSocketDomainDgram()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].<init>(io.netty.channel.kqueue.BsdSocket,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:60,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].newSocketDomainDgram()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:60,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].<init>(io.netty.channel.kqueue.BsdSocket,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].<init>(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].<init>(io.netty.channel.kqueue.BsdSocket,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:64,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:64,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].<init>(io.netty.channel.kqueue.BsdSocket,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].<init>(io.netty.channel.kqueue.BsdSocket,boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.kqueue.BsdSocket"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueDatagramChannel].<init>(io.netty.channel.Channel,io.netty.channel.kqueue.BsdSocket,boolean)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].<init>(io.netty.channel.kqueue.KQueueDomainDatagramChannel)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:68,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueDatagramChannel].<init>(io.netty.channel.Channel,io.netty.channel.kqueue.BsdSocket,boolean)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:69,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].<init>(io.netty.channel.kqueue.KQueueDomainDatagramChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 57
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].doBind(java.net.SocketAddress)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:79,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].doBind(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].doClose()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].doClose()"
    functionUses: 7
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:86,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].doClose()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:94"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:101"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:95"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:98"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:94,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].doDisconnect()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].doClose()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:107,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].doClose()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].doWriteMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 162
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].content()"
    - "[io.netty.channel.DefaultAddressedEnvelope:io.netty.handler.codec.dns.DatagramDnsQuery:io.netty.handler.codec.dns.DatagramDnsResponse:io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.channel.DefaultAddressedEnvelope:io.netty.handler.codec.dns.DatagramDnsQuery:io.netty.handler.codec.dns.DatagramDnsResponse:io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.channel.unix.FileDescriptor].writeAddress(long,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.channel.unix.Socket].sendToAddressDomainSocket(long,int,int,byte[])"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.channel.unix.DomainSocketAddress].path()"
    - "[io.netty.channel.kqueue.KQueueEventLoop].cleanArray()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.channel.unix.IovArray].add(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.channel.unix.IovArray].count()"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.unix.IovArray].memoryAddress(int)"
    - "[io.netty.channel.unix.FileDescriptor].writevAddresses(long,int)"
    - "[io.netty.channel.unix.Socket].sendToAddressesDomainSocket(long,int,byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.channel.unix.FileDescriptor].write(java.nio.ByteBuffer,int,int)"
    - "[io.netty.channel.unix.Socket].sendToDomainSocket(java.nio.ByteBuffer,int,int,byte[])"
    - "[io.netty.channel.AddressedEnvelope].content()"
    - "[io.netty.channel.AddressedEnvelope].recipient()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.Buffer].limit()"
    functionUses: 1
    ICount: 87
    EdgeCount: 149
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:114"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:120"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:126"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:131"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:130"
        BranchSideFuncs:
        - "hasMemoryAddress()"
        - "nioBufferCount()"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:131"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:131"
        BranchSideFuncs:
        - "memoryAddress()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:130"
        BranchSideFuncs:
        - "hasMemoryAddress()"
        - "nioBufferCount()"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:133"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:136"
        BranchSideFuncs:
        - "writeAddress(long,int,int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:135"
        BranchSideFuncs:
        - "sendToAddressDomainSocket(long,int,int,byte[])"
        - "writerIndex()"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:131"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:152"
        BranchSideFuncs:
        - "memoryAddress()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:151"
        BranchSideFuncs:
        - "readerIndex()"
        - "internalNioBuffer(int,int)"
        - "readableBytes()"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:143"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:144"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:143"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:144"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:145"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:148"
        BranchSideFuncs:
        - "writevAddresses(long,int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:147"
        BranchSideFuncs:
        - "sendToAddressesDomainSocket(long,int,byte[])"
        - "memoryAddress(int)"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:153"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:156"
        BranchSideFuncs:
        - "write(java.nio.ByteBuffer,int,int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:155"
        BranchSideFuncs:
        - "sendToDomainSocket(java.nio.ByteBuffer,int,int,byte[])"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:161"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:118,1"
      Dst: "[io.netty.channel.AddressedEnvelope].content()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:119,1"
      Dst: "[io.netty.channel.AddressedEnvelope].recipient()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:125,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:131,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:132,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:134,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:134,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:134,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].writeAddress(long,int,int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:137,1"
      Dst: "[io.netty.channel.unix.DomainSocketAddress].path()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:137,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:136,1"
      Dst: "[io.netty.channel.unix.Socket].sendToAddressDomainSocket(long,int,int,byte[])"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:131,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:140,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:140,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].cleanArray()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:141,1"
      Dst: "[io.netty.channel.unix.IovArray].add(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:142,1"
      Dst: "[io.netty.channel.unix.IovArray].count()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:143,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:146,1"
      Dst: "[io.netty.channel.unix.IovArray].memoryAddress(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:146,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].writevAddresses(long,int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:148,1"
      Dst: "[io.netty.channel.unix.Socket].sendToAddressesDomainSocket(long,int,byte[])"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:152,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:154,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:154,1"
      Dst: "[java.nio.Buffer].limit()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:154,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].write(java.nio.ByteBuffer,int,int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:156,1"
      Dst: "[io.netty.channel.unix.Socket].sendToDomainSocket(java.nio.ByteBuffer,int,int,byte[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 25
    CyclomaticComplexity: 9
  - functionName: "[io.netty.channel.unix.FileDescriptor].writeAddress(long,int,int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 111
    functionDepth: 3
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].writeAddress(int,long,int,int)"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.FileDescriptor:107"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:110"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.FileDescriptor:109"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.unix.FileDescriptor:106,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].writeAddress(int,long,int,int)"
    - Src: "io.netty.channel.unix.FileDescriptor:110,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].writeAddress(int,long,int,int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].cleanArray()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionDepth: 1
    returnType: "io.netty.channel.unix.IovArray"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.IovArray].clear()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:143,1"
      Dst: "[io.netty.channel.unix.IovArray].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].write(java.nio.ByteBuffer,int,int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 103
    functionDepth: 3
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].write(int,java.nio.ByteBuffer,int,int)"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.FileDescriptor:99"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.FileDescriptor:101"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.unix.FileDescriptor:98,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].write(int,java.nio.ByteBuffer,int,int)"
    - Src: "io.netty.channel.unix.FileDescriptor:102,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].write(int,java.nio.ByteBuffer,int,int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].filterOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 193
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.channel.unix.UnixChannelUtil].isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.unix.DomainDatagramPacket].<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].newDirectBuffer(java.lang.Object,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].newDirectBuffer(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].content()"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.channel.DefaultAddressedEnvelope].content()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].recipient()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].recipient()"
    - "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.AddressedEnvelope].content()"
    - "[io.netty.channel.AddressedEnvelope].recipient()"
    functionUses: 1
    ICount: 62
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:166"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:173"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:169"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:167"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:166"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:173"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:178"
        BranchSideFuncs:
        - "newDirectBuffer(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:177"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:175"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:173"
        BranchSideFuncs:
        - "newDirectBuffer(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:178"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:190"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:181"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:191"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:190"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:182"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:183"
        BranchSideFuncs:
        - "content()"
        - "isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:182"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:190"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:185"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:184"
        BranchSideFuncs:
        - "isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf)"
        - "newDirectBuffer(java.lang.Object,io.netty.buffer.ByteBuf)"
        - "<init>(java.lang.Object,java.net.SocketAddress)"
        - "recipient()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:183"
        BranchSideFuncs:
        - "content()"
        - "isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:168,1"
      Dst: "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:169,1"
      Dst: "[io.netty.channel.unix.UnixChannelUtil].isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:170,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].newDirectBuffer(java.lang.Object,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:170,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:170,1"
      Dst: "[io.netty.channel.unix.DomainDatagramPacket].<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:175,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].newDirectBuffer(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:181,1"
      Dst: "[io.netty.channel.AddressedEnvelope].content()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:182,1"
      Dst: "[io.netty.channel.AddressedEnvelope].recipient()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:187,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:191,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:191,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:192,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:192,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:192,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 7
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 198
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].getActiveOnOpen()"
    - "[io.netty.channel.unix.FileDescriptor].isOpen()"
    - "[io.netty.channel.AbstractChannel].isRegistered()"
    functionUses: 37
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:197"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:196"
        BranchSideFuncs:
        - "isRegistered()"
        - "getActiveOnOpen()"
        - "isOpen()"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:197"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:196"
        BranchSideFuncs:
        - "isRegistered()"
        - "getActiveOnOpen()"
        - "isOpen()"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:197"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:196"
        BranchSideFuncs:
        - "isRegistered()"
        - "getActiveOnOpen()"
        - "isOpen()"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:197"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:196"
        BranchSideFuncs:
        - "isRegistered()"
        - "getActiveOnOpen()"
        - "isOpen()"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:197,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].isOpen()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:197,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].getActiveOnOpen()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:197,1"
      Dst: "[io.netty.channel.AbstractChannel].isRegistered()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isConnected()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].localAddress()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 208
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:207,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 213
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].newUnsafe()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 218
    functionDepth: 1
    returnType: "io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe].<init>(io.netty.channel.kqueue.KQueueDomainDatagramChannel)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:217,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe].<init>(io.netty.channel.kqueue.KQueueDomainDatagramChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe].<init>(io.netty.channel.kqueue.KQueueDomainDatagramChannel)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe"
    linkageType: ""
    functionLinenumber: 237
    functionLinenumberEnd: 239
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:238,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].peerCredentials()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.unix.PeerCredentials"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.BsdSocket].getPeerCredentials()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:225,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].getPeerCredentials()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.BsdSocket].getPeerCredentials()"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.unix.PeerCredentials"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.kqueue.BsdSocket].getPeerCredentials(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:91,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.BsdSocket:91,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].getPeerCredentials(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.BsdSocket].getPeerCredentials(int)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.unix.PeerCredentials"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 229
    functionLinenumberEnd: 231
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:230,1"
      Dst: "[io.netty.channel.AbstractChannel].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].remoteAddress0()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 234
    functionLinenumberEnd: 236
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].metadata()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "io.netty.channel.ChannelMetadata"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueDatagramChannel].metadata()"
    functionUses: 15
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:42,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueDatagramChannel].metadata()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isOpen()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isOpen()"
    functionUses: 12
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel:42,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].isOpen()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuery].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuery"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].<init>(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:32,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsMessage].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuery].toString()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuery"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[io.netty.handler.codec.dns.DnsMessageUtil].appendQuery(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsQuery)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:112,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:112,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].appendQuery(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsQuery)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuery:112,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsMessageUtil].appendQuery(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsQuery)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsMessageUtil"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 34
    functionDepth: 2
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.handler.codec.dns.DnsQuery"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsMessageUtil].appendQueryHeader(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsQuery)"
    - "[io.netty.handler.codec.dns.DnsMessageUtil].appendAllRecords(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsMessage)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:31,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].appendQueryHeader(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsQuery)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:32,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].appendAllRecords(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsMessage)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsMessageUtil].appendQueryHeader(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsQuery)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsMessageUtil"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 95
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.handler.codec.dns.DnsQuery"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.dns.DnsMessageUtil].appendAddresses(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsMessage)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].id()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].opCode()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].isRecursionDesired()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].z()"
    - "[io.netty.handler.codec.dns.DnsMessage].id()"
    - "[io.netty.handler.codec.dns.DnsMessage].opCode()"
    - "[io.netty.handler.codec.dns.DnsMessage].isRecursionDesired()"
    - "[io.netty.handler.codec.dns.DnsMessage].z()"
    functionUses: 1
    ICount: 21
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:86"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:89"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:88"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:93"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "z()"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:92"
        BranchSideFuncs:
        - "append(char)"
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:78,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:78,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:79,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:81,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].appendAddresses(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsMessage)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:82,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].id()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:82,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:84,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].opCode()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:84,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:86,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].isRecursionDesired()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:89,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].z()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.dns.DnsMessageUtil].appendAddresses(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsMessage)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsMessageUtil"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 164
    functionDepth: 0
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.handler.codec.dns.DnsMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].sender()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].sender()"
    - "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].sender()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].recipient()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].recipient()"
    - "[io.netty.channel.AddressedEnvelope].sender()"
    - "[io.netty.channel.AddressedEnvelope].recipient()"
    functionUses: 2
    ICount: 17
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:142"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:147"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:146"
        BranchSideFuncs:
        - "sender()"
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:156"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:155"
        BranchSideFuncs:
        - "recipient()"
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:163"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:162"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:149,1"
      Dst: "[io.netty.channel.AddressedEnvelope].sender()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:151,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:152,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:156,1"
      Dst: "[io.netty.channel.AddressedEnvelope].recipient()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.dns.DnsMessageUtil].appendAllRecords(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsMessage)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsMessageUtil"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 172
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.handler.codec.dns.DnsMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsMessageUtil].appendRecords(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsMessage,io.netty.handler.codec.dns.DnsSection)"
    functionUses: 2
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:167,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].appendRecords(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsMessage,io.netty.handler.codec.dns.DnsSection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsMessageUtil].appendRecords(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsMessage,io.netty.handler.codec.dns.DnsSection)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsMessageUtil"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 181
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.handler.codec.dns.DnsMessage"
    - "io.netty.handler.codec.dns.DnsSection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].recordAt(io.netty.handler.codec.dns.DnsSection,int)"
    - "[io.netty.handler.codec.dns.DnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    - "[io.netty.handler.codec.dns.DnsMessage].recordAt(io.netty.handler.codec.dns.DnsSection,int)"
    functionUses: 4
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:174,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].count(io.netty.handler.codec.dns.DnsSection)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:176,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:177,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:178,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].recordAt(io.netty.handler.codec.dns.DnsSection,int)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:178,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$2].<init>(io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder)"
    functionSourceFile: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$2:149,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$2].onStreamRemoved(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$2"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 157
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].access$000(io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].cleanup(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.embedded.EmbeddedChannel)"
    - "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$2:153"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$2:156"
        BranchSideFuncs:
        - "cleanup(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.embedded.EmbeddedChannel)"
      - BranchSide: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$2:155"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$2:152,1"
      Dst: "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].access$000(io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder)"
    - Src: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$2:152,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - Src: "io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$2:154,1"
      Dst: "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].cleanup(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.embedded.EmbeddedChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.serialization.CachingClassResolver].<init>(io.netty.handler.codec.serialization.ClassResolver,java.util.Map)"
    functionSourceFile: "io.netty.handler.codec.serialization.CachingClassResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.serialization.ClassResolver"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.CachingClassResolver:25,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.CachingClassResolver].resolve(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.serialization.CachingClassResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Class<?>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ClassResolver].resolve(java.lang.String)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.serialization.CachingClassResolver:35"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.serialization.CachingClassResolver:40"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.serialization.CachingClassResolver:39"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.CachingClassResolver:34,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.serialization.CachingClassResolver:40,1"
      Dst: "[io.netty.handler.codec.serialization.ClassResolver].resolve(java.lang.String)"
    - Src: "io.netty.handler.codec.serialization.CachingClassResolver:42,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.ClassNotFoundException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].<init>(io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1"
    linkageType: ""
    functionLinenumber: 713
    functionLinenumberEnd: 716
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].access$800(io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList)"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].duplicate()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].duplicate()"
    - "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].duplicate()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].duplicate()"
    - "[io.netty.resolver.dns.DnsServerAddressStream].duplicate()"
    functionUses: 1
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1:714,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1:715,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].access$800(io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1:715,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStream].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1"
    linkageType: ""
    functionLinenumber: 719
    functionLinenumberEnd: 721
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].size()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].size()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].size()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].size()"
    - "[io.netty.resolver.dns.DnsServerAddressStream].size()"
    functionUses: 228
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1:720"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1:719"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1:720,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStream].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1"
    linkageType: ""
    functionLinenumber: 724
    functionLinenumberEnd: 730
    functionDepth: 1
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[java.util.NoSuchElementException].<init>()"
    - "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].next()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].next()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].next()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].next()"
    - "[io.netty.resolver.dns.DnsServerAddressStream].next()"
    functionUses: 229
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1:725"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1:728"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1:727"
        BranchSideFuncs:
        - "next()"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1:725,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1:726,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1:729,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStream].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].remove()"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1"
    linkageType: ""
    functionLinenumber: 733
    functionLinenumberEnd: 735
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 21
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1:734,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].<init>(io.netty.channel.socket.ServerSocketChannel,java.net.ServerSocket)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.ServerSocketChannel"
    - "java.net.ServerSocket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].<init>(io.netty.channel.socket.ServerSocketChannel,java.net.ServerSocket)"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].<init>(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:45,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].<init>(io.netty.channel.socket.ServerSocketChannel,java.net.ServerSocket)"
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:46,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:46,1"
      Dst: "[io.netty.channel.PreferHeapByteBufAllocator].<init>(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:46,1"
      Dst: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].<init>(io.netty.channel.socket.oio.OioServerSocketChannel,java.net.ServerSocket)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.oio.OioServerSocketChannel"
    - "java.net.ServerSocket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].<init>(io.netty.channel.socket.ServerSocketChannel,java.net.ServerSocket)"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].<init>(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:50,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].<init>(io.netty.channel.socket.ServerSocketChannel,java.net.ServerSocket)"
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:51,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:51,1"
      Dst: "[io.netty.channel.PreferHeapByteBufAllocator].<init>(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:51,1"
      Dst: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:57,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getOptions()"
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:56,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:57,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions()"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:57,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 67
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].getSoTimeout()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 5
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:63"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:66"
        BranchSideFuncs:
        - "valueOf(int)"
        - "getSoTimeout()"
      - BranchSide: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:65"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:64,1"
      Dst: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].getSoTimeout()"
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:64,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:66,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].getSoTimeout()"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 97
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ServerSocket].getSoTimeout()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:94,1"
      Dst: "[java.net.ServerSocket].getSoTimeout()"
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:96,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 79
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setSoTimeout(int)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:73"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:76"
        BranchSideFuncs:
        - "setSoTimeout(int)"
        - "intValue()"
      - BranchSide: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:75"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:71,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:74,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:74,1"
      Dst: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setSoTimeout(int)"
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:76,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setSoTimeout(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionDepth: 1
    returnType: "io.netty.channel.socket.oio.OioServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ServerSocket].setSoTimeout(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:84,1"
      Dst: "[java.net.ServerSocket].setSoTimeout(int)"
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:86,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 91
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setReceiveBufferSize(int)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setReceiveBufferSize(int)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setReuseAddress(boolean)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setReuseAddress(boolean)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setBacklog(int)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setBacklog(int)"
    - "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 4
    ICount: 25
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultServerSocketChannelConfig:80"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultServerSocketChannelConfig:82"
        BranchSideFuncs:
        - "setReceiveBufferSize(int)"
      - BranchSide: "io.netty.channel.socket.DefaultServerSocketChannelConfig:81"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultServerSocketChannelConfig:82"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultServerSocketChannelConfig:84"
        BranchSideFuncs:
        - "booleanValue()"
        - "setReuseAddress(boolean)"
      - BranchSide: "io.netty.channel.socket.DefaultServerSocketChannelConfig:83"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultServerSocketChannelConfig:84"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultServerSocketChannelConfig:87"
        BranchSideFuncs:
        - "intValue()"
        - "setBacklog(int)"
      - BranchSide: "io.netty.channel.socket.DefaultServerSocketChannelConfig:86"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:78,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:81,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:81,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:83,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:83,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setReuseAddress(boolean)"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:85,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setBacklog(int)"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:87,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 129
    functionDepth: 1
    returnType: "io.netty.channel.socket.ServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ServerSocket].setReceiveBufferSize(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:124,1"
      Dst: "[java.net.ServerSocket].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:126,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setReuseAddress(boolean)"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 110
    functionDepth: 1
    returnType: "io.netty.channel.socket.ServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ServerSocket].setReuseAddress(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:105,1"
      Dst: "[java.net.ServerSocket].setReuseAddress(boolean)"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:107,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setBacklog(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 147
    functionDepth: 1
    returnType: "io.netty.channel.socket.ServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:144,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setBacklog(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 104
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setBacklog(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:102,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setBacklog(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setReuseAddress(boolean)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setReuseAddress(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:108,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setReuseAddress(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setReceiveBufferSize(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:114,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setReceiveBufferSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setPerformancePreferences(int,int,int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.socket.oio.OioServerSocketChannelConfig"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setPerformancePreferences(int,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:120,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setPerformancePreferences(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setPerformancePreferences(int,int,int)"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.socket.ServerSocketChannelConfig"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ServerSocket].setPerformancePreferences(int,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:133,1"
      Dst: "[java.net.ServerSocket].setPerformancePreferences(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:126,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionDepth: 2
    returnType: "io.netty.channel.socket.ServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:151,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:133,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionDepth: 2
    returnType: "io.netty.channel.socket.ServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:158,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setWriteSpinCount(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:139,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionDepth: 2
    returnType: "io.netty.channel.socket.ServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:164,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:145,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionDepth: 2
    returnType: "io.netty.channel.socket.ServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:170,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:151,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionDepth: 2
    returnType: "io.netty.channel.socket.ServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:176,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 159
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setAutoRead(boolean)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:157,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 184
    functionDepth: 2
    returnType: "io.netty.channel.socket.ServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:182,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].autoReadCleared()"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 167
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].clearReadPending0()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:163"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:166"
        BranchSideFuncs:
        - "clearReadPending0()"
      - BranchSide: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:165"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:164,1"
      Dst: "[io.netty.channel.socket.oio.OioServerSocketChannel].clearReadPending0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].clearReadPending0()"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 207
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.oio.AbstractOioChannel].clearReadPending()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:205,1"
      Dst: "[io.netty.channel.oio.AbstractOioChannel].clearReadPending()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setAutoClose(boolean)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionDepth: 1
    returnType: "io.netty.channel.socket.oio.OioServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:170,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionDepth: 4
    returnType: "io.netty.channel.socket.oio.OioServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:176,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionDepth: 3
    returnType: "io.netty.channel.socket.ServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:188,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 184
    functionDepth: 4
    returnType: "io.netty.channel.socket.oio.OioServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:182,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 196
    functionDepth: 3
    returnType: "io.netty.channel.socket.ServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:194,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:188,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionDepth: 2
    returnType: "io.netty.channel.socket.ServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:200,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 196
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig:194,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionDepth: 2
    returnType: "io.netty.channel.socket.ServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:206,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelOption].<init>()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.UnixChannelOption].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelOption:37,1"
      Dst: "[io.netty.channel.unix.UnixChannelOption].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:45,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].isOriginForm(java.net.URI)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.net.URI"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URI].toString()"
    - "[io.netty.handler.codec.http.HttpUtil].isOriginForm(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:52,1"
      Dst: "[java.net.URI].toString()"
    - Src: "io.netty.handler.codec.http.HttpUtil:52,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].isOriginForm(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].isAsteriskForm(java.net.URI)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.net.URI"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.URI].toString()"
    - "[io.netty.handler.codec.http.HttpUtil].isAsteriskForm(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:68,1"
      Dst: "[java.net.URI].toString()"
    - Src: "io.netty.handler.codec.http.HttpUtil:68,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].isAsteriskForm(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].isKeepAlive(io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.HttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage:io.netty.handler.codec.http.HttpVersion].isKeepAliveDefault()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpVersion].isKeepAliveDefault()"
    functionUses: 5
    ICount: 18
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:87"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:-1"
        BranchSideFuncs:
        - "protocolVersion()"
        - "isKeepAliveDefault()"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:88"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:87"
        BranchSideFuncs:
        - "containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:86"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:87,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpUtil:87,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - Src: "io.netty.handler.codec.http.HttpUtil:88,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http.HttpUtil:88,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].isKeepAliveDefault()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.HttpUtil].getContentLength(io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[java.lang.Long].parseLong(java.lang.String)"
    - "[io.netty.handler.codec.http.HttpUtil].getWebSocketContentLength(io.netty.handler.codec.http.HttpMessage)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.NumberFormatException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:165"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:171"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:170"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:172"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:177"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:164,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpUtil:164,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpUtil:166,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpUtil:171,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].getWebSocketContentLength(io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.http.HttpUtil:177,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpUtil:177,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpUtil:177,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpUtil:177,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.HttpUtil:177,1"
      Dst: "[java.lang.NumberFormatException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].getWebSocketContentLength(io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 244
    functionDepth: 6
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpMethod].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].method()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].method()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].method()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpRequest].method()"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    functionUses: 1
    ICount: 32
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:226"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:225"
        BranchSideFuncs:
        - "method()"
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:224"
        BranchSideFuncs:
        - "headers()"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:228"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:233"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:232"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:229"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:233"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:232"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:230"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:233"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:232"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:226"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:null"
        BranchSideFuncs:
        - "method()"
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:235"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:236"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:null"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:237"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:225,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpUtil:228,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].method()"
    - Src: "io.netty.handler.codec.http.HttpUtil:228,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpUtil:229,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpUtil:235,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.http.HttpUtil:235,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http.HttpUtil].getContentLength(io.netty.handler.codec.http.HttpMessage,long)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 205
    functionDepth: 7
    returnType: "long"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[java.lang.Long].parseLong(java.lang.String)"
    - "[io.netty.handler.codec.http.HttpUtil].getWebSocketContentLength(io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 3
    ICount: 15
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:192"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:198"
        BranchSideFuncs:
        - "parseLong(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:197"
        BranchSideFuncs:
        - "getWebSocketContentLength(io.netty.handler.codec.http.HttpMessage)"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:191,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpUtil:191,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpUtil:193,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpUtil:198,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].getWebSocketContentLength(io.netty.handler.codec.http.HttpMessage)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].getContentLength(io.netty.handler.codec.http.HttpMessage,int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpUtil].getContentLength(io.netty.handler.codec.http.HttpMessage,long)"
    - "[java.lang.Math].min(long,long)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:216,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].getContentLength(io.netty.handler.codec.http.HttpMessage,long)"
    - Src: "io.netty.handler.codec.http.HttpUtil:216,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].isContentLengthSet(io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: 253
    functionLinenumberEnd: 255
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 5
    ICount: 5
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:254,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpUtil:254,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].is100ContinueExpected(io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 270
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpUtil].isExpectHeaderValid(io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 3
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:267"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:267"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
        - "isExpectHeaderValid(io.netty.handler.codec.http.HttpMessage)"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:266"
        BranchSideFuncs:
        - "isExpectHeaderValid(io.netty.handler.codec.http.HttpMessage)"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:269"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:266"
        BranchSideFuncs:
        - "isExpectHeaderValid(io.netty.handler.codec.http.HttpMessage)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:267,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].isExpectHeaderValid(io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.http.HttpUtil:269,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpUtil:269,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpUtil].isExpectHeaderValid(io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: 294
    functionLinenumberEnd: 297
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpVersion].compareTo(io.netty.handler.codec.http.HttpVersion)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    functionUses: 2
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:295"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:295"
        BranchSideFuncs:
        - "protocolVersion()"
        - "compareTo(io.netty.handler.codec.http.HttpVersion)"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:294"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:296"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:294"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:296,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http.HttpUtil:296,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].compareTo(io.netty.handler.codec.http.HttpVersion)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpUtil].isUnsupportedExpectation(io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: 280
    functionLinenumberEnd: 287
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpUtil].isExpectHeaderValid(io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[io.netty.util.AsciiString].toString()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 16
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:281"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:285"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:284"
        BranchSideFuncs:
        - "get(java.lang.CharSequence)"
        - "toString()"
        - "headers()"
        - "equalsIgnoreCase(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:286"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:284"
        BranchSideFuncs:
        - "get(java.lang.CharSequence)"
        - "toString()"
        - "headers()"
        - "equalsIgnoreCase(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:286"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:284"
        BranchSideFuncs:
        - "get(java.lang.CharSequence)"
        - "toString()"
        - "headers()"
        - "equalsIgnoreCase(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:281,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].isExpectHeaderValid(io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.http.HttpUtil:285,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpUtil:285,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpUtil:286,1"
      Dst: "[io.netty.util.AsciiString].toString()"
    - Src: "io.netty.handler.codec.http.HttpUtil:286,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpUtil].set100ContinueExpected(io.netty.handler.codec.http.HttpMessage,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:307"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:310"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:309"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:308,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpUtil:308,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpUtil:310,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpUtil].isTransferEncodingChunked(io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: 320
    functionLinenumberEnd: 322
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.HttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 6
    ICount: 6
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:321,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpUtil:321,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].setTransferEncodingChunked(io.netty.handler.codec.http.HttpMessage,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: 332
    functionLinenumberEnd: 356
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].getAll(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].getAll(java.lang.CharSequence)"
    - "[jaz.Zer].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].remove()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].remove()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].remove()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].remove()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].remove()"
    - "[io.netty.channel.nio.NioEventLoop$7].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].remove()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].remove()"
    - "[io.netty.util.internal.ReadOnlyIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].remove()"
    - "[io.netty.channel.group.CombinedIterator].remove()"
    - "[java.util.Iterator].remove()"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Iterable)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Iterable)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 39
    EdgeCount: 198
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:333"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:337"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:336"
        BranchSideFuncs:
        - "getAll(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:338"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:341"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:340"
        BranchSideFuncs:
        - "iterator()"
        - "<init>(java.util.Collection)"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:343"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:349"
        BranchSideFuncs:
        - "contentEqualsIgnoreCase(java.lang.CharSequence)"
        - "next()"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:348"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:345"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:348"
        BranchSideFuncs:
        - "remove()"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:347"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:349"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:352"
        BranchSideFuncs:
        - "remove(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:351"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Iterable)"
        - "headers()"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:334,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpUtil:334,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpUtil:335,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpUtil:337,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].getAll(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpUtil:338,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.handler.codec.http.HttpUtil:341,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "io.netty.handler.codec.http.HttpUtil:342,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.HttpUtil:343,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.HttpUtil:344,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.HttpUtil:345,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpUtil:346,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "io.netty.handler.codec.http.HttpUtil:352,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.HttpUtil].getCharset(io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpUtil].getCharset(io.netty.handler.codec.http.HttpMessage,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:365,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].getCharset(io.netty.handler.codec.http.HttpMessage,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].getCharset(io.netty.handler.codec.http.HttpMessage,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "java.nio.charset.Charset"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpUtil].getCharset(java.lang.CharSequence,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:393"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:396"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:395"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:392,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpUtil:392,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpUtil:394,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].getCharset(java.lang.CharSequence,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].getCharset(java.lang.CharSequence,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "java.nio.charset.Charset"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpUtil].getCharsetAsSequence(java.lang.CharSequence)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.lang.CharSequence].subSequence(int,int)"
    - "[java.lang.CharSequence].toString()"
    - "[java.nio.charset.Charset].forName(java.lang.String)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:409"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:426"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:425"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:411"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:426"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:425"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:412"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:418"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:417"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:413"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:418"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:417"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:413"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:418"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:417"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:410,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].getCharsetAsSequence(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpUtil:412,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http.HttpUtil:413,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.http.HttpUtil:414,1"
      Dst: "[java.lang.CharSequence].subSequence(int,int)"
    - Src: "io.netty.handler.codec.http.HttpUtil:418,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.http.HttpUtil:418,1"
      Dst: "[java.nio.charset.Charset].forName(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.HttpUtil].getCharsetAsSequence(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.AsciiString].indexOfIgnoreCaseAscii(java.lang.CharSequence,java.lang.CharSequence,int)"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].subSequence(int,int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:478"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:482"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:481"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:483"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:493"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:492"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:486"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:490"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:489"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:475,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpUtil:477,1"
      Dst: "[io.netty.util.AsciiString].indexOfIgnoreCaseAscii(java.lang.CharSequence,java.lang.CharSequence,int)"
    - Src: "io.netty.handler.codec.http.HttpUtil:482,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.handler.codec.http.HttpUtil:483,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http.HttpUtil:484,1"
      Dst: "[java.lang.CharSequence].subSequence(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].indexOfIgnoreCaseAscii(java.lang.CharSequence,java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[io.netty.util.AsciiString].regionMatchesAscii(java.lang.CharSequence,boolean,int,java.lang.CharSequence,int,int)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1767"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1767"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1770"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1769"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1770"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1773"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1772"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1775"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1778"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1777"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1778"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1781"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1780"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1781"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1782"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1781"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1780"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1773,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:1782,1"
      Dst: "[io.netty.util.AsciiString].regionMatchesAscii(java.lang.CharSequence,boolean,int,java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.AsciiString].regionMatchesAscii(java.lang.CharSequence,boolean,int,java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 6
    argTypes:
    - "java.lang.CharSequence"
    - "boolean"
    - "int"
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - "[io.netty.util.AsciiString].regionMatches(boolean,int,java.lang.CharSequence,int,int)"
    - "[io.netty.util.AsciiString].regionMatchesCharSequences(java.lang.CharSequence,int,java.lang.CharSequence,int,int,io.netty.util.AsciiString$CharEqualityComparator)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1663"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1664"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1663"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1663"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1667"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1666"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1667"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1673"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1667"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1673"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1667"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1673"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1674"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1678"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1677"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1678"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1677"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1671,1"
      Dst: "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - Src: "io.netty.util.AsciiString:1675,1"
      Dst: "[io.netty.util.AsciiString].regionMatches(boolean,int,java.lang.CharSequence,int,int)"
    - Src: "io.netty.util.AsciiString:1678,1"
      Dst: "[io.netty.util.AsciiString].regionMatchesCharSequences(java.lang.CharSequence,int,java.lang.CharSequence,int,int,io.netty.util.AsciiString$CharEqualityComparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.AsciiString].regionMatches(boolean,int,java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "boolean"
    - "int"
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].regionMatches(int,java.lang.CharSequence,int,int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.CharSequence].length()"
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[io.netty.util.AsciiString].b2c(byte)"
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.util.AsciiString].equalsIgnoreCase(char,char)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:839"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:843"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:842"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:846"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:847"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:846"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:846"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:849"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:848"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:849"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:850"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:849"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:849"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:853"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:852"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:855"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:860"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:859"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:856"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:855"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:854"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:840,1"
      Dst: "[io.netty.util.AsciiString].regionMatches(int,java.lang.CharSequence,int,int)"
    - Src: "io.netty.util.AsciiString:843,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.AsciiString:845,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:849,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:853,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.util.AsciiString:856,1"
      Dst: "[io.netty.util.AsciiString].b2c(byte)"
    - Src: "io.netty.util.AsciiString:856,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.AsciiString:856,1"
      Dst: "[io.netty.util.AsciiString].equalsIgnoreCase(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.AsciiString].regionMatches(int,java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "int"
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.CharSequence].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[io.netty.util.AsciiString].b2c(byte)"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:804"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:805"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:804"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:804"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:808"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:807"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:809"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:810"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:809"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:809"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:813"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:812"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:813"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:817"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:816"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:818"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:823"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:822"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:819"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:817"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:816"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:802,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.AsciiString:804,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:808,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:818,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.util.AsciiString:819,1"
      Dst: "[io.netty.util.AsciiString].b2c(byte)"
    - Src: "io.netty.util.AsciiString:819,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.AsciiString].regionMatchesCharSequences(java.lang.CharSequence,int,java.lang.CharSequence,int,int,io.netty.util.AsciiString$CharEqualityComparator)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 6
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "java.lang.CharSequence"
    - "int"
    - "int"
    - "io.netty.util.AsciiString$CharEqualityComparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.util.AsciiString$CharEqualityComparator].equals(char,char)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1600"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1601"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1600"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1600"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1603"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1602"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1603"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1604"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1603"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1603"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1607"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1606"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1611"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1619"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1618"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1615"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1618"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1617"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1600,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:1612,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.AsciiString:1615,1"
      Dst: "[io.netty.util.AsciiString$CharEqualityComparator].equals(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.HttpUtil].getCharset(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "java.nio.charset.Charset"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpUtil].getCharset(java.lang.CharSequence,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:376"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:379"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:378"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:377,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].getCharset(java.lang.CharSequence,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].getCharsetAsString(io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpUtil].getCharsetAsSequence(io.netty.handler.codec.http.HttpMessage)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:442,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].getCharsetAsSequence(io.netty.handler.codec.http.HttpMessage)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].getCharsetAsSequence(io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpUtil].getCharsetAsSequence(java.lang.CharSequence)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:456"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:459"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:458"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:455,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpUtil:455,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpUtil:457,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].getCharsetAsSequence(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].getMimeType(io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpUtil].getMimeType(java.lang.CharSequence)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:509"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:512"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:511"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:508,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpUtil:508,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpUtil:510,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].getMimeType(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpUtil].getMimeType(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.AsciiString].indexOfIgnoreCaseAscii(java.lang.CharSequence,java.lang.CharSequence,int)"
    - "[java.lang.CharSequence].subSequence(int,int)"
    - "[java.lang.CharSequence].length()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:532"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:535"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:534"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:535"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:534"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:529,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpUtil:531,1"
      Dst: "[io.netty.util.AsciiString].indexOfIgnoreCaseAscii(java.lang.CharSequence,java.lang.CharSequence,int)"
    - Src: "io.netty.handler.codec.http.HttpUtil:533,1"
      Dst: "[java.lang.CharSequence].subSequence(int,int)"
    - Src: "io.netty.handler.codec.http.HttpUtil:535,1"
      Dst: "[java.lang.CharSequence].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpUtil].formatHostnameForHttp(java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: 546
    functionLinenumberEnd: 555
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.NetUtil].getHostname(java.net.InetSocketAddress)"
    - "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - "[java.net.InetSocketAddress].isUnresolved()"
    - "[java.net.InetSocketAddress].getAddress()"
    - "[io.netty.util.NetUtil].toAddressString(java.net.InetAddress)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 17
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:548"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:554"
        BranchSideFuncs:
        - "isUnresolved()"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:553"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:549"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:552"
        BranchSideFuncs:
        - "getAddress()"
        - "toAddressString(java.net.InetAddress)"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:551"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:547,1"
      Dst: "[io.netty.util.NetUtil].getHostname(java.net.InetSocketAddress)"
    - Src: "io.netty.handler.codec.http.HttpUtil:548,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpUtil:549,1"
      Dst: "[java.net.InetSocketAddress].isUnresolved()"
    - Src: "io.netty.handler.codec.http.HttpUtil:550,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.handler.codec.http.HttpUtil:550,1"
      Dst: "[io.netty.util.NetUtil].toAddressString(java.net.InetAddress)"
    - Src: "io.netty.handler.codec.http.HttpUtil:552,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpUtil:552,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.HttpUtil:552,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpUtil:552,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.NetUtil].getHostname(java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 1067
    functionLinenumberEnd: 1069
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].getHostName()"
    - "[java.net.InetSocketAddress].getHostString()"
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:1068"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1067"
        BranchSideFuncs:
        - "javaVersion()"
        - "getHostName()"
        - "getHostString()"
    Callsites:
    - Src: "io.netty.util.NetUtil:1068,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.util.NetUtil:1068,1"
      Dst: "[java.net.InetSocketAddress].getHostString()"
    - Src: "io.netty.util.NetUtil:1068,1"
      Dst: "[java.net.InetSocketAddress].getHostName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.NetUtil].toAddressString(java.net.InetAddress)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 935
    functionLinenumberEnd: 937
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.NetUtil].toAddressString(java.net.InetAddress,boolean)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtil:936,1"
      Dst: "[io.netty.util.NetUtil].toAddressString(java.net.InetAddress,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].toAddressString(java.net.InetAddress,boolean)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 963
    functionLinenumberEnd: 972
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Inet6Address].getHostAddress()"
    - "[java.net.Inet4Address].getHostAddress()"
    - "[java.net.InetAddress].getHostAddress()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.net.Inet4Address].getAddress()"
    - "[java.net.InetAddress].getAddress()"
    - "[java.net.Inet6Address].getAddress()"
    - "[io.netty.util.NetUtil].toAddressString(byte[],int,boolean)"
    functionUses: 1
    ICount: 19
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:964"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:967"
        BranchSideFuncs:
        - "getHostAddress()"
      - BranchSide: "io.netty.util.NetUtil:966"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:967"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:971"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.NetUtil:970"
        BranchSideFuncs:
        - "getAddress()"
        - "toAddressString(byte[],int,boolean)"
    Callsites:
    - Src: "io.netty.util.NetUtil:965,1"
      Dst: "[java.net.InetAddress].getHostAddress()"
    - Src: "io.netty.util.NetUtil:968,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.NetUtil:968,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.NetUtil:968,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.util.NetUtil:968,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.NetUtil:968,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.util.NetUtil:971,1"
      Dst: "[java.net.InetAddress].getAddress()"
    - Src: "io.netty.util.NetUtil:971,1"
      Dst: "[io.netty.util.NetUtil].toAddressString(byte[],int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].toAddressString(byte[],int,boolean)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 974
    functionLinenumberEnd: 1059
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.util.NetUtil].inRangeEndExclusive(int,int,int)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 123
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:978"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:987"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1002"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:1001"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:988"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:992"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:991"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:989"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:983"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:982"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:992"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:983"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:982"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:994"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:1002"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1010"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:1009"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:1004"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1010"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:1009"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:1010"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1016"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:1015"
        BranchSideFuncs:
        - "<init>(int)"
    - Branch String: "io.netty.util.NetUtil:1018"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1027"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:1026"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:1020"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1057"
        BranchSideFuncs:
        - "toString()"
    - Branch String: "io.netty.util.NetUtil:1027"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1031"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:1030"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:1029"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:1029"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:1029"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:1034"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1058"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:1057"
        BranchSideFuncs:
        - "toString()"
    - Branch String: "io.netty.util.NetUtil:1035"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1051"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:1050"
        BranchSideFuncs:
        - "inRangeEndExclusive(int,int,int)"
    - Branch String: "io.netty.util.NetUtil:1036"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1043"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:1038"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1039"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:1038"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:1038"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1041"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:1040"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:1044"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1049"
        BranchSideFuncs:
        - "append(char)"
        - "append(int)"
      - BranchSide: "io.netty.util.NetUtil:1048"
        BranchSideFuncs:
        - "toHexString(int)"
    - Branch String: "io.netty.util.NetUtil:1044"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1049"
        BranchSideFuncs:
        - "append(char)"
        - "append(int)"
      - BranchSide: "io.netty.util.NetUtil:1048"
        BranchSideFuncs:
        - "toHexString(int)"
    - Branch String: "io.netty.util.NetUtil:1051"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1033"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.NetUtil:1017,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.util.NetUtil:1019,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "io.netty.util.NetUtil:1019,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.NetUtil:1021,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.NetUtil:1027,1"
      Dst: "[io.netty.util.NetUtil].inRangeEndExclusive(int,int,int)"
    - Src: "io.netty.util.NetUtil:1045,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.NetUtil:1058,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 46
    CyclomaticComplexity: 24
  - functionName: "[io.netty.util.NetUtil].inRangeEndExclusive(int,int,int)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 1082
    functionLinenumberEnd: 1084
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:1083"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1082"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:1083"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:1082"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpUtil].normalizeAndGetContentLength(java.util.List<?\
      \ extends CharSequence>,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpUtil"
    linkageType: ""
    functionLinenumber: 570
    functionLinenumberEnd: 629
    functionDepth: 1
    returnType: "long"
    argCount: 3
    argTypes:
    - "java.util.List<? extends CharSequence>"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jaz.Zer].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[java.lang.String].indexOf(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.lang.String].split(java.lang.String,int)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].isDigit(char)"
    - "[java.lang.String].isEmpty()"
    - "[java.lang.Long].parseLong(java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    - "[java.lang.CharSequence].toString()"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 86
    EdgeCount: 182
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpUtil:571"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:588"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:587"
        BranchSideFuncs:
        - "indexOf(int)"
        - "get(int)"
        - "size()"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:590"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:588"
        BranchSideFuncs:
        - "isEmpty()"
        - "hasNext()"
        - "toString()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "indexOf(int)"
        - "next()"
        - "isDigit(char)"
        - "get(int)"
        - "trim()"
        - "parseLong(java.lang.String)"
        - "checkPositiveOrZero(long,java.lang.String)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "iterator()"
        - "<init>()"
        - "<init>(java.lang.String)"
        - "equals(java.lang.Object)"
        - "charAt(int)"
        - "size()"
        - "split(java.lang.String,int)"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:587"
        BranchSideFuncs:
        - "indexOf(int)"
        - "get(int)"
        - "size()"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:590"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:588"
        BranchSideFuncs:
        - "isEmpty()"
        - "hasNext()"
        - "toString()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "indexOf(int)"
        - "next()"
        - "isDigit(char)"
        - "get(int)"
        - "trim()"
        - "parseLong(java.lang.String)"
        - "checkPositiveOrZero(long,java.lang.String)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "iterator()"
        - "<init>()"
        - "<init>(java.lang.String)"
        - "equals(java.lang.Object)"
        - "charAt(int)"
        - "size()"
        - "split(java.lang.String,int)"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:587"
        BranchSideFuncs:
        - "indexOf(int)"
        - "get(int)"
        - "size()"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:592"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:618"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:617"
        BranchSideFuncs:
        - "isEmpty()"
        - "isDigit(char)"
        - "charAt(int)"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:592"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:618"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:617"
        BranchSideFuncs:
        - "isEmpty()"
        - "isDigit(char)"
        - "charAt(int)"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:593"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:612"
        BranchSideFuncs:
        - "isEmpty()"
        - "hasNext()"
        - "toString()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "indexOf(int)"
        - "next()"
        - "isDigit(char)"
        - "get(int)"
        - "trim()"
        - "parseLong(java.lang.String)"
        - "checkPositiveOrZero(long,java.lang.String)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "iterator()"
        - "<init>()"
        - "<init>(java.lang.String)"
        - "equals(java.lang.Object)"
        - "charAt(int)"
        - "size()"
        - "split(java.lang.String,int)"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:611"
        BranchSideFuncs:
        - "append(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:596"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:609"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "split(java.lang.String,int)"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:608"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:598"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:607"
        BranchSideFuncs:
        - "trim()"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:606"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpUtil:600"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:602"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:601"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:602"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:596"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:595"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "split(java.lang.String,int)"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:618"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:620"
        BranchSideFuncs:
        - "isEmpty()"
        - "hasNext()"
        - "toString()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "indexOf(int)"
        - "next()"
        - "isDigit(char)"
        - "get(int)"
        - "trim()"
        - "parseLong(java.lang.String)"
        - "checkPositiveOrZero(long,java.lang.String)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "iterator()"
        - "<init>()"
        - "<init>(java.lang.String)"
        - "equals(java.lang.Object)"
        - "charAt(int)"
        - "size()"
        - "split(java.lang.String,int)"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:619"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.HttpUtil:618"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:624"
        BranchSideFuncs:
        - "isEmpty()"
        - "hasNext()"
        - "toString()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "indexOf(int)"
        - "next()"
        - "isDigit(char)"
        - "get(int)"
        - "trim()"
        - "parseLong(java.lang.String)"
        - "checkPositiveOrZero(long,java.lang.String)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "iterator()"
        - "<init>()"
        - "<init>(java.lang.String)"
        - "equals(java.lang.Object)"
        - "charAt(int)"
        - "size()"
        - "split(java.lang.String,int)"
      - BranchSide: "io.netty.handler.codec.http.HttpUtil:623"
        BranchSideFuncs:
        - "parseLong(java.lang.String)"
        - "checkPositiveOrZero(long,java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpUtil:571,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.handler.codec.http.HttpUtil:588,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.http.HttpUtil:588,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.http.HttpUtil:590,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http.HttpUtil:590,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "io.netty.handler.codec.http.HttpUtil:596,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.HttpUtil:596,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.HttpUtil:596,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.HttpUtil:597,1"
      Dst: "[java.lang.String].split(java.lang.String,int)"
    - Src: "io.netty.handler.codec.http.HttpUtil:599,1"
      Dst: "[java.lang.String].trim()"
    - Src: "io.netty.handler.codec.http.HttpUtil:602,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpUtil:603,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpUtil:603,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpUtil:603,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpUtil:603,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.HttpUtil:603,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpUtil:618,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.codec.http.HttpUtil:618,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.HttpUtil:618,1"
      Dst: "[java.lang.Character].isDigit(char)"
    - Src: "io.netty.handler.codec.http.HttpUtil:624,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpUtil:625,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpUtil:628,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 26
    CyclomaticComplexity: 8
  - functionName: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ObjectUtil"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 158
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 3
    ICount: 16
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ObjectUtil:154"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectUtil:157"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.ObjectUtil:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectUtil:155,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.ObjectUtil:155,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:155,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.util.internal.ObjectUtil:155,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.ObjectUtil:155,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannelConfig$Databits].values()"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannelConfig$Databits"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig$Databits[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Databits:91,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannelConfig$Databits].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannelConfig$Databits"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig$Databits"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Databits:91,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannelConfig$Databits].<init>(java.lang.String,int,int)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannelConfig$Databits"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Databits:111,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannelConfig$Databits].valueOf(int)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannelConfig$Databits"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig$Databits"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.rxtx.RxtxChannelConfig$Databits].values()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.rxtx.RxtxChannelConfig$Databits:120"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.RxtxChannelConfig$Databits:125"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.rxtx.RxtxChannelConfig$Databits:124"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.RxtxChannelConfig$Databits:121"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.RxtxChannelConfig$Databits:120"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.rxtx.RxtxChannelConfig$Databits:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Databits:120,1"
      Dst: "[io.netty.channel.rxtx.RxtxChannelConfig$Databits].values()"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Databits:125,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Databits:125,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Databits:125,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Databits:125,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Databits:125,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Databits:125,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeEncoder$1$1].<init>(io.netty.handler.codec.stomp.StompSubframeEncoder$1,int,float,boolean)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeEncoder$1$1"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.stomp.StompSubframeEncoder$1"
    - "int"
    - "float"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedHashMap].<init>(int,float,boolean)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder$1$1:62,1"
      Dst: "[java.util.LinkedHashMap].<init>(int,float,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeEncoder$1$1].removeEldestEntry(java.util.Map$Entry)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeEncoder$1$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Map$Entry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].size()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder$1$1:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder$1$1:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder$1$1:66,1"
      Dst: "[java.util.HashMap].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec:73,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec:81,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec:89,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean,boolean,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec:98,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].<init>()"
    - "[java.util.ArrayDeque].<init>()"
    - "[java.util.concurrent.atomic.AtomicLong].<init>()"
    - "[io.netty.handler.codec.http.HttpClientCodec$Decoder].<init>(io.netty.handler.codec.http.HttpClientCodec,int,int,int,boolean)"
    - "[io.netty.handler.codec.http.HttpClientCodec$Encoder].<init>(io.netty.handler.codec.http.HttpClientCodec,io.netty.handler.codec.http.HttpClientCodec$1)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].init(io.netty.channel.ChannelInboundHandler,io.netty.channel.ChannelOutboundHandler)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec:107,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].<init>()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec:58,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec:64,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].<init>()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec:108,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec$Decoder].<init>(io.netty.handler.codec.http.HttpClientCodec,int,int,int,boolean)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec:108,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec$Encoder].<init>(io.netty.handler.codec.http.HttpClientCodec,io.netty.handler.codec.http.HttpClientCodec$1)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec:108,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].init(io.netty.channel.ChannelInboundHandler,io.netty.channel.ChannelOutboundHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "int"
    - "boolean"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean,boolean,int,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec:119,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean,boolean,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "int"
    - "int"
    - "int"
    - "boolean"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean,boolean,int,boolean,boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec:129,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean,boolean,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean,boolean,int,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "int"
    - "int"
    - "boolean"
    - "boolean"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean,boolean,int,boolean,boolean,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec:140,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean,boolean,int,boolean,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].<init>(int,int,int,boolean,boolean,int,boolean,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 9
    argTypes:
    - "int"
    - "int"
    - "int"
    - "boolean"
    - "boolean"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].<init>()"
    - "[java.util.ArrayDeque].<init>()"
    - "[java.util.concurrent.atomic.AtomicLong].<init>()"
    - "[io.netty.handler.codec.http.HttpClientCodec$Decoder].<init>(io.netty.handler.codec.http.HttpClientCodec,int,int,int,boolean,int,boolean,boolean)"
    - "[io.netty.handler.codec.http.HttpClientCodec$Encoder].<init>(io.netty.handler.codec.http.HttpClientCodec,io.netty.handler.codec.http.HttpClientCodec$1)"
    - "[io.netty.channel.CombinedChannelDuplexHandler].init(io.netty.channel.ChannelInboundHandler,io.netty.channel.ChannelOutboundHandler)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec:151,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].<init>()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec:58,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec:64,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].<init>()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec:152,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec$Decoder].<init>(io.netty.handler.codec.http.HttpClientCodec,int,int,int,boolean,int,boolean,boolean)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec:152,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec$Encoder].<init>(io.netty.handler.codec.http.HttpClientCodec,io.netty.handler.codec.http.HttpClientCodec$1)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec:152,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].init(io.netty.channel.ChannelInboundHandler,io.netty.channel.ChannelOutboundHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].prepareUpgradeFrom(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].outboundHandler()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec:164,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].outboundHandler()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].outboundHandler()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "io.netty.channel.ChannelOutboundHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].upgradeFrom(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 176
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    functionUses: 1
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec:173,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec:174,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].setSingleDecode(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].inboundHandler()"
    - "[io.netty.handler.codec.ByteToMessageDecoder].setSingleDecode(boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec:178,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].inboundHandler()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec:178,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].setSingleDecode(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].inboundHandler()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelInboundHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].isSingleDecode()"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].inboundHandler()"
    - "[io.netty.handler.codec.ByteToMessageDecoder].isSingleDecode()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec:182,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].inboundHandler()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec:182,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].isSingleDecode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].access$100(io.netty.handler.codec.http.HttpClientCodec)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "java.util.Queue"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpClientCodec"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].access$200(io.netty.handler.codec.http.HttpClientCodec)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpClientCodec"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].access$300(io.netty.handler.codec.http.HttpClientCodec)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpClientCodec"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].access$400(io.netty.handler.codec.http.HttpClientCodec)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "java.util.concurrent.atomic.AtomicLong"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpClientCodec"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].access$500(io.netty.handler.codec.http.HttpClientCodec)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpClientCodec"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec].access$302(io.netty.handler.codec.http.HttpClientCodec,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpClientCodec"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SniHandler].<init>(io.netty.util.Mapping)"
    functionSourceFile: "io.netty.handler.ssl.SniHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.Mapping"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SniHandler$AsyncMappingAdapter].<init>(io.netty.util.Mapping,io.netty.handler.ssl.SniHandler$1)"
    - "[io.netty.handler.ssl.SniHandler].<init>(io.netty.util.AsyncMapping)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SniHandler:51,1"
      Dst: "[io.netty.handler.ssl.SniHandler$AsyncMappingAdapter].<init>(io.netty.util.Mapping,io.netty.handler.ssl.SniHandler$1)"
    - Src: "io.netty.handler.ssl.SniHandler:51,1"
      Dst: "[io.netty.handler.ssl.SniHandler].<init>(io.netty.util.AsyncMapping)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SniHandler].<init>(io.netty.util.DomainNameMapping)"
    functionSourceFile: "io.netty.handler.ssl.SniHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.DomainNameMapping"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SniHandler].<init>(io.netty.util.Mapping)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SniHandler:61,1"
      Dst: "[io.netty.handler.ssl.SniHandler].<init>(io.netty.util.Mapping)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SniHandler].<init>(io.netty.util.AsyncMapping)"
    functionSourceFile: "io.netty.handler.ssl.SniHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.AsyncMapping"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.AbstractSniHandler].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SniHandler:71,1"
      Dst: "[io.netty.handler.ssl.AbstractSniHandler].<init>()"
    - Src: "io.netty.handler.ssl.SniHandler:72,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SniHandler].hostname()"
    functionSourceFile: "io.netty.handler.ssl.SniHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SniHandler].sslContext()"
    functionSourceFile: "io.netty.handler.ssl.SniHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SniHandler].lookup(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SniHandler"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future<SslContext>"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.handler.ssl.SniHandler$AsyncMappingAdapter].map(java.lang.Object,io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].newPromise()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].newPromise()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].newPromise()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[io.netty.util.AsyncMapping].map(java.lang.Object,io.netty.util.concurrent.Promise)"
    functionUses: 1
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SniHandler:97,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.ssl.SniHandler:97,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.handler.ssl.SniHandler:97,1"
      Dst: "[io.netty.util.AsyncMapping].map(java.lang.Object,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SniHandler].onLookupComplete(io.netty.channel.ChannelHandlerContext,java.lang.String,io.netty.util.concurrent.Future<SslContext>)"
    functionSourceFile: "io.netty.handler.ssl.SniHandler"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 120
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.String"
    - "io.netty.util.concurrent.Future<SslContext>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.util.concurrent.FailedFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture:io.netty.channel.SucceededChannelFuture:io.netty.channel.VoidChannelPromise:io.netty.channel.group.VoidChannelGroupFuture:io.netty.util.concurrent.FailedFuture:io.netty.util.concurrent.SucceededFuture].cause()"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.channel.CompleteChannelFuture:io.netty.channel.VoidChannelPromise:io.netty.channel.group.VoidChannelGroupFuture:io.netty.util.concurrent.FailedFuture:io.netty.util.concurrent.SucceededFuture:java.lang.StringBuilder].toString()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].getNow()"
    - "[io.netty.handler.ssl.SniHandler$Selection].<init>(io.netty.handler.ssl.SslContext,java.lang.String)"
    - "[io.netty.handler.ssl.SniHandler].replaceHandler(io.netty.channel.ChannelHandlerContext,java.lang.String,io.netty.handler.ssl.SslContext)"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.concurrent.Future].getNow()"
    functionUses: 1
    ICount: 31
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SniHandler:103"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SniHandler:111"
        BranchSideFuncs:
        - "cause()"
      - BranchSide: "io.netty.handler.ssl.SniHandler:110"
        BranchSideFuncs:
        - "<init>(io.netty.handler.ssl.SslContext,java.lang.String)"
        - "throwException(java.lang.Throwable)"
        - "replaceHandler(io.netty.channel.ChannelHandlerContext,java.lang.String,io.netty.handler.ssl.SslContext)"
        - "getNow()"
    - Branch String: "io.netty.handler.ssl.SniHandler:105"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SniHandler:108"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SniHandler:107"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.handler.ssl.SniHandler:103,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.ssl.SniHandler:104,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.ssl.SniHandler:108,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.SniHandler:108,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.SniHandler:108,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.SniHandler:108,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SniHandler:111,1"
      Dst: "[io.netty.util.concurrent.Future].getNow()"
    - Src: "io.netty.handler.ssl.SniHandler:112,1"
      Dst: "[io.netty.handler.ssl.SniHandler$Selection].<init>(io.netty.handler.ssl.SslContext,java.lang.String)"
    - Src: "io.netty.handler.ssl.SniHandler:114,1"
      Dst: "[io.netty.handler.ssl.SniHandler].replaceHandler(io.netty.channel.ChannelHandlerContext,java.lang.String,io.netty.handler.ssl.SslContext)"
    - Src: "io.netty.handler.ssl.SniHandler:117,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.DecoderException"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DecoderException:35,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CodecException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.CodecException"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CodecException:35,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SniHandler].replaceHandler(io.netty.channel.ChannelHandlerContext,java.lang.String,io.netty.handler.ssl.SslContext)"
    functionSourceFile: "io.netty.handler.ssl.SniHandler"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 145
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.String"
    - "io.netty.handler.ssl.SslContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.ssl.SniHandler].newSslHandler(io.netty.handler.ssl.SslContext,io.netty.buffer.ByteBufAllocator)"
    - "[java.lang.Class].getName()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].replace(io.netty.channel.ChannelHandler,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.handler.ssl.SslHandler].engine()"
    - "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].replace(io.netty.channel.ChannelHandler,java.lang.String,io.netty.channel.ChannelHandler)"
    functionUses: 1
    ICount: 22
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SniHandler:140"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SniHandler:144"
        BranchSideFuncs:
        - "engine()"
        - "safeRelease(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.SniHandler:143"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SniHandler:140"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SniHandler:143"
        BranchSideFuncs:
        - "engine()"
        - "safeRelease(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.SniHandler:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SniHandler:133,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.ssl.SniHandler:133,1"
      Dst: "[io.netty.handler.ssl.SniHandler].newSslHandler(io.netty.handler.ssl.SslContext,io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.handler.ssl.SniHandler:134,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.ssl.SniHandler:134,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.handler.ssl.SniHandler:134,1"
      Dst: "[io.netty.channel.ChannelPipeline].replace(io.netty.channel.ChannelHandler,java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.ssl.SniHandler:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.SniHandler:141,1"
      Dst: "[io.netty.handler.ssl.SslHandler].engine()"
    - Src: "io.netty.handler.ssl.SniHandler:141,1"
      Dst: "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SniHandler].newSslHandler(io.netty.handler.ssl.SslContext,io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.handler.ssl.SniHandler"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslHandler"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslContext"
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].newHandler(io.netty.buffer.ByteBufAllocator)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SniHandler:151,1"
      Dst: "[io.netty.handler.ssl.SslContext].newHandler(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].<init>(io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2:131,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 138
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].access$000(io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler].buildHandshakeException(java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].buildHandshakeException(java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].buildHandshakeException(java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 49
    ICount: 11
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2:137"
        BranchSideFuncs:
        - "access$000(io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler)"
        - "buildHandshakeException(java.lang.String)"
        - "tryFailure(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2:134,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].access$000(io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2:134,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2:135,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler].buildHandshakeException(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2:135,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].<init>(byte,io.netty.handler.codec.http2.Http2Flags)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte"
    - "io.netty.handler.codec.http2.Http2Flags"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].<init>(byte,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:31,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].<init>(byte,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].stream()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].frameType()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].flags()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Flags"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].name()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].copy()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:68,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:68,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:68,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 3
    returnType: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].<init>(byte,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:83,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].<init>(byte,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:83,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].duplicate()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:73,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:73,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:73,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:78,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:78,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:78,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:94,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].toString()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.buffer.DefaultByteBufHolder].contentToString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 21
    ICount: 21
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:100,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:100,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:101,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].contentToString()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:101,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:101,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].touch()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].touch()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:106,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].touch(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:112,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 127
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].stream()"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Flags].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].flags()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].frameType()"
    - "[io.netty.buffer.DefaultByteBufHolder].equals(java.lang.Object)"
    functionUses: 9
    ICount: 28
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:118"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:121"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:120"
        BranchSideFuncs:
        - "stream()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:123"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:124"
        BranchSideFuncs:
        - "flags()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:123"
        BranchSideFuncs:
        - "flags()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:123"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:-1"
        BranchSideFuncs:
        - "flags()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:123"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:-1"
        BranchSideFuncs:
        - "flags()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:-1"
        BranchSideFuncs:
        - "frameType()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:125"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:-1"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:122,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].stream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:123,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:124,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].flags()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:124,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:125,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].frameType()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:126,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http2.Http2Flags].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Flags"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 183
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    functionUses: 10
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2Flags:172"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Flags:175"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2Flags:174"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2Flags:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Flags:178"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2Flags:177"
        BranchSideFuncs:
        - "getClass()"
    - Branch String: "io.netty.handler.codec.http2.Http2Flags:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Flags:182"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2Flags:181"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2Flags:182"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Flags:181"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Flags:178,1"
      Dst: "[java.lang.Object].getClass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 139
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].hashCode()"
    - "[io.netty.handler.codec.http2.Http2Flags].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 5
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:138"
        BranchSideFuncs:
        - "hashCode()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:131,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].hashCode()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:133,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].hashCode()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2UnknownFrame:135,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2Flags].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Flags"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture$1].<init>(io.netty.channel.group.DefaultChannelGroupFuture)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.group.DefaultChannelGroupFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:48,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture$1"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 79
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].access$008(io.netty.channel.group.DefaultChannelGroupFuture)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].access$108(io.netty.channel.group.DefaultChannelGroupFuture)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].access$000(io.netty.channel.group.DefaultChannelGroupFuture)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].access$100(io.netty.channel.group.DefaultChannelGroupFuture)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].access$200(io.netty.channel.group.DefaultChannelGroupFuture)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].size()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].size()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].size()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].size()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].size()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].size()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].size()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].values()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].values()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.IntObjectHashMap].values()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.CharObjectHashMap].values()"
    - "[io.netty.util.collection.LongObjectHashMap].values()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].values()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].values()"
    - "[io.netty.util.collection.ByteObjectHashMap].values()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].values()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].values()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].values()"
    - "[io.netty.util.collection.ShortObjectHashMap].values()"
    - "[java.util.Hashtable].values()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].<init>(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.CompleteChannelFuture:io.netty.channel.DefaultChannelProgressivePromise:io.netty.channel.DefaultChannelPromise:io.netty.channel.FailedChannelFuture:io.netty.channel.SucceededChannelFuture:io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.group.ChannelGroupException].<init>(java.util.Collection)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].access$300(io.netty.channel.group.DefaultChannelGroupFuture,io.netty.channel.group.ChannelGroupException)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].access$400(io.netty.channel.group.DefaultChannelGroupFuture)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[java.util.Map].size()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.ChannelFuture].channel()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 75
    EdgeCount: 188
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture$1:54"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture$1:57"
        BranchSideFuncs:
        - "access$008(io.netty.channel.group.DefaultChannelGroupFuture)"
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture$1:56"
        BranchSideFuncs:
        - "access$108(io.netty.channel.group.DefaultChannelGroupFuture)"
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture$1:60"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture$1:60"
        BranchSideFuncs:
        - "access$000(io.netty.channel.group.DefaultChannelGroupFuture)"
        - "<init>()"
        - "size()"
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture$1:59"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture$1:61"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture$1:62"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture$1:61"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture$1:61"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture$1:62"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture$1:61"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture$1:64"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture$1:78"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture$1:77"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture$1:65"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture$1:75"
        BranchSideFuncs:
        - "access$200(io.netty.channel.group.DefaultChannelGroupFuture)"
        - "hasNext()"
        - "access$100(io.netty.channel.group.DefaultChannelGroupFuture)"
        - "next()"
        - "<init>(int)"
        - "values()"
        - "iterator()"
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture$1:74"
        BranchSideFuncs:
        - "access$400(io.netty.channel.group.DefaultChannelGroupFuture)"
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture$1:68"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture$1:73"
        BranchSideFuncs:
        - "access$200(io.netty.channel.group.DefaultChannelGroupFuture)"
        - "hasNext()"
        - "next()"
        - "values()"
        - "iterator()"
        - "isSuccess()"
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture$1:72"
        BranchSideFuncs:
        - "<init>(java.util.Collection)"
        - "access$300(io.netty.channel.group.DefaultChannelGroupFuture,io.netty.channel.group.ChannelGroupException)"
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture$1:69"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture$1:72"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "channel()"
        - "<init>(java.lang.Object,java.lang.Object)"
        - "cause()"
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture$1:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:51,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:55,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].access$008(io.netty.channel.group.DefaultChannelGroupFuture)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:57,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].access$108(io.netty.channel.group.DefaultChannelGroupFuture)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:60,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].access$000(io.netty.channel.group.DefaultChannelGroupFuture)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:60,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].access$100(io.netty.channel.group.DefaultChannelGroupFuture)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:60,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].access$200(io.netty.channel.group.DefaultChannelGroupFuture)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:60,1"
      Dst: "[java.util.Map].size()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:61,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:67,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:68,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:68,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:68,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:68,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:70,1"
      Dst: "[io.netty.channel.ChannelFuture].channel()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:70,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:70,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].<init>(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:70,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:73,1"
      Dst: "[io.netty.channel.group.ChannelGroupException].<init>(java.util.Collection)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:73,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].access$300(io.netty.channel.group.DefaultChannelGroupFuture,io.netty.channel.group.ChannelGroupException)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:75,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].access$400(io.netty.channel.group.DefaultChannelGroupFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 7
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].access$008(io.netty.channel.group.DefaultChannelGroupFuture)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.group.DefaultChannelGroupFuture"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].access$108(io.netty.channel.group.DefaultChannelGroupFuture)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.group.DefaultChannelGroupFuture"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].access$000(io.netty.channel.group.DefaultChannelGroupFuture)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.group.DefaultChannelGroupFuture"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].access$100(io.netty.channel.group.DefaultChannelGroupFuture)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.group.DefaultChannelGroupFuture"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].access$200(io.netty.channel.group.DefaultChannelGroupFuture)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "io.netty.channel.group.DefaultChannelGroupFuture"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].<init>(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 243
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry:239,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.ChannelGroupException].<init>(java.util.Collection)"
    functionSourceFile: "io.netty.channel.group.ChannelGroupException"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 40
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelException].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.util.Collection,java.lang.String)"
    - "[java.util.Collections].unmodifiableCollection(java.util.Collection)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.ChannelGroupException:35,1"
      Dst: "[io.netty.channel.ChannelException].<init>()"
    - Src: "io.netty.channel.group.ChannelGroupException:36,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.util.Collection,java.lang.String)"
    - Src: "io.netty.channel.group.ChannelGroupException:38,1"
      Dst: "[java.util.Collections].unmodifiableCollection(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelException].<init>()"
    functionSourceFile: "io.netty.channel.ChannelException"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelException:33,1"
      Dst: "[java.lang.RuntimeException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.util.Collection,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ObjectUtil"
    linkageType: ""
    functionLinenumber: 249
    functionLinenumberEnd: 254
    functionDepth: 1
    returnType: "java.util.Collection"
    argCount: 2
    argTypes:
    - "java.util.Collection"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.util.TreeSet].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].isEmpty()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].isEmpty()"
    - "[io.netty.channel.group.DefaultChannelGroup].isEmpty()"
    - "[java.util.ArrayDeque].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].isEmpty()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].isEmpty()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.DefaultPriorityQueue].isEmpty()"
    - "[java.util.TreeMap$KeySet].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].isEmpty()"
    - "[java.util.HashSet].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[jaz.Zer].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].isEmpty()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].isEmpty()"
    - "[io.netty.util.internal.EmptyPriorityQueue].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Collection].isEmpty()"
    functionUses: 4
    ICount: 16
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ObjectUtil:250"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectUtil:253"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.ObjectUtil:252"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectUtil:250,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:250,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "io.netty.util.internal.ObjectUtil:251,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.ObjectUtil:251,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:251,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.ObjectUtil:251,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].access$300(io.netty.channel.group.DefaultChannelGroupFuture,io.netty.channel.group.ChannelGroupException)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.group.DefaultChannelGroupFuture"
    - "io.netty.channel.group.ChannelGroupException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure0(io.netty.channel.group.ChannelGroupException)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:41,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure0(io.netty.channel.group.ChannelGroupException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure0(io.netty.channel.group.ChannelGroupException)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.group.ChannelGroupException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:204,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].access$400(io.netty.channel.group.DefaultChannelGroupFuture)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.group.DefaultChannelGroupFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess0()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:41,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess0()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:200,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture$1"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroupFuture$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$1:48,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder$2"
    linkageType: ""
    functionLinenumber: 375
    functionLinenumberEnd: 378
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder$2:376,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder$2"
    linkageType: ""
    functionLinenumber: 372
    functionLinenumberEnd: 374
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder$2:373,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameEncoder$2].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].<init>(io.netty.handler.codec.http.cors.CorsConfig)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.cors.CorsConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[io.netty.handler.codec.http.cors.CorsConfig].isShortCircuit()"
    - "[io.netty.handler.codec.http.cors.CorsHandler].<init>(java.util.List,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:64,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:64,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:64,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].isShortCircuit()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:64,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].<init>(java.util.List,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].<init>(java.util.List,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.util.Collection,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:74,1"
      Dst: "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:75,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.util.Collection,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 97
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.cors.CorsHandler].getForOrigin(java.lang.String)"
    - "[io.netty.handler.codec.http.cors.CorsHandler].isPreflightRequest(io.netty.handler.codec.http.HttpRequest)"
    - "[io.netty.handler.codec.http.cors.CorsHandler].handlePreflight(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
    - "[io.netty.handler.codec.http.cors.CorsHandler].forbidden(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 3
    ICount: 29
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:82"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:95"
        BranchSideFuncs:
        - "get(java.lang.CharSequence)"
        - "isPreflightRequest(io.netty.handler.codec.http.HttpRequest)"
        - "getForOrigin(java.lang.String)"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:94"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:86"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:90"
        BranchSideFuncs:
        - "handlePreflight(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:95"
        BranchSideFuncs:
        - "forbidden(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:94"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:95"
        BranchSideFuncs:
        - "forbidden(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:94"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:95"
        BranchSideFuncs:
        - "forbidden(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:94"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:84,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:84,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:85,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].getForOrigin(java.lang.String)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:86,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].isPreflightRequest(io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:87,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].handlePreflight(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:91,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].forbidden(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:95,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].getForOrigin(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 138
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.cors.CorsConfig"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].isAnyOriginSupported()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].contains(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[java.util.HashSet].contains(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].contains(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].contains(java.lang.Object)"
    - "[java.util.TreeSet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].contains(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].contains(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].contains(java.lang.Object)"
    - "[io.netty.handler.codec.http.cors.CorsConfig].origins()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.cors.CorsConfig].isNullOriginAllowed()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 1
    ICount: 23
    EdgeCount: 117
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:137"
        BranchSideFuncs:
        - "isAnyOriginSupported()"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:130"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:129"
        BranchSideFuncs:
        - "origins()"
        - "contains(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:130"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:133"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:132"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "isNullOriginAllowed()"
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:134"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:133"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:136"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:126,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:126,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:126,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:127,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].isAnyOriginSupported()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:130,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].origins()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:130,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:133,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].isNullOriginAllowed()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:133,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].isAnyOriginSupported()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].origins()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].isNullOriginAllowed()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].isPreflightRequest(io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 198
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpMethod].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].method()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].method()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].method()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpRequest].method()"
    functionUses: 1
    ICount: 16
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:195"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:-1"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:197"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:194,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:195,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].method()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:195,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:196,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].handlePreflight(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 114
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean,boolean)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.cors.CorsHandler].setOrigin(io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.cors.CorsHandler].setAllowMethods(io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.cors.CorsHandler].setAllowHeaders(io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.cors.CorsHandler].setAllowCredentials(io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.cors.CorsHandler].setMaxAge(io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.cors.CorsHandler].setPreflightHeaders(io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.cors.CorsHandler].setAllowPrivateNetwork(io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.handler.codec.http.cors.CorsHandler].respond(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 26
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:100"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:108"
        BranchSideFuncs:
        - "setPreflightHeaders(io.netty.handler.codec.http.HttpResponse)"
        - "setAllowMethods(io.netty.handler.codec.http.HttpResponse)"
        - "setAllowHeaders(io.netty.handler.codec.http.HttpResponse)"
        - "setMaxAge(io.netty.handler.codec.http.HttpResponse)"
        - "setAllowCredentials(io.netty.handler.codec.http.HttpResponse)"
        - "setAllowPrivateNetwork(io.netty.handler.codec.http.HttpResponse)"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:107"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:111"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:110"
        BranchSideFuncs:
        - "respond(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.HttpResponse)"
        - "release(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:99,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:99,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean,boolean)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:100,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].setOrigin(io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:101,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].setAllowMethods(io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:102,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].setAllowHeaders(io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:103,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].setAllowCredentials(io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:104,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].setMaxAge(io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:105,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].setPreflightHeaders(io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:106,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].setAllowPrivateNetwork(io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:108,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:108,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:109,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:111,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:112,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].respond(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.HttpResponse)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpResponseStatus"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,boolean,boolean)"
    - "[io.netty.buffer.Unpooled].buffer(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:52,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:52,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].setOrigin(io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 164
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.cors.CorsConfig].isNullOriginAllowed()"
    - "[io.netty.handler.codec.http.cors.CorsHandler].setNullOrigin(io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.cors.CorsConfig].isAnyOriginSupported()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].isCredentialsAllowed()"
    - "[io.netty.handler.codec.http.cors.CorsHandler].echoRequestOrigin(io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.cors.CorsHandler].setVaryHeader(io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.cors.CorsHandler].setAnyOrigin(io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].contains(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[java.util.HashSet].contains(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].contains(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].contains(java.lang.Object)"
    - "[java.util.TreeSet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].contains(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].contains(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].contains(java.lang.Object)"
    - "[io.netty.handler.codec.http.cors.CorsConfig].origins()"
    - "[io.netty.handler.codec.http.cors.CorsHandler].setOrigin(io.netty.handler.codec.http.HttpResponse,java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 40
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:142"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:163"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "isNullOriginAllowed()"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:162"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:142"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:163"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "isNullOriginAllowed()"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:162"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:143"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:147"
        BranchSideFuncs:
        - "setNullOrigin(io.netty.handler.codec.http.HttpResponse)"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:146"
        BranchSideFuncs:
        - "isAnyOriginSupported()"
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:143"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:147"
        BranchSideFuncs:
        - "setNullOrigin(io.netty.handler.codec.http.HttpResponse)"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:146"
        BranchSideFuncs:
        - "isAnyOriginSupported()"
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:147"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:156"
        BranchSideFuncs:
        - "isCredentialsAllowed()"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:155"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:152"
        BranchSideFuncs:
        - "echoRequestOrigin(io.netty.handler.codec.http.HttpResponse)"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:151"
        BranchSideFuncs:
        - "setAnyOrigin(io.netty.handler.codec.http.HttpResponse)"
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:161"
        BranchSideFuncs:
        - "setVaryHeader(io.netty.handler.codec.http.HttpResponse)"
        - "setOrigin(io.netty.handler.codec.http.HttpResponse,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:160"
        BranchSideFuncs:
        - "origins()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:141,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:141,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:143,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:143,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].isNullOriginAllowed()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:144,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].setNullOrigin(io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:147,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].isAnyOriginSupported()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:148,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].isCredentialsAllowed()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:149,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].echoRequestOrigin(io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:150,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].setVaryHeader(io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:152,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].setAnyOrigin(io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:156,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].origins()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:156,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:157,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].setOrigin(io.netty.handler.codec.http.HttpResponse,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:161,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].setNullOrigin(io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsHandler].setOrigin(io.netty.handler.codec.http.HttpResponse,java.lang.String)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:179,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].setOrigin(io.netty.handler.codec.http.HttpResponse,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].setOrigin(io.netty.handler.codec.http.HttpResponse,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 4
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:183,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:183,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].isCredentialsAllowed()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].echoRequestOrigin(io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.cors.CorsHandler].setOrigin(io.netty.handler.codec.http.HttpResponse,java.lang.String)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:167,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:167,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:167,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].setOrigin(io.netty.handler.codec.http.HttpResponse,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].setVaryHeader(io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 173
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 2
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:171,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:171,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].setAnyOrigin(io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 177
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsHandler].setOrigin(io.netty.handler.codec.http.HttpResponse,java.lang.String)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:175,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].setOrigin(io.netty.handler.codec.http.HttpResponse,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].setAllowMethods(io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 209
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfig].allowedRequestMethods()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Iterable)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Iterable)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:207,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:207,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].allowedRequestMethods()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:207,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].allowedRequestMethods()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:196,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].setAllowHeaders(io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 213
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfig].allowedRequestHeaders()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Iterable)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Iterable)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:211,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:211,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].allowedRequestHeaders()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:211,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].allowedRequestHeaders()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:208,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].setAllowCredentials(io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 192
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfig].isCredentialsAllowed()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 2
    ICount: 14
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:191"
        BranchSideFuncs:
        - "get(java.lang.CharSequence)"
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:190"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:191"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:187,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].isCredentialsAllowed()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:188,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:188,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:188,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:189,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].setMaxAge(io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].maxAge()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[java.lang.Long].valueOf(long)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:215,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:215,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].maxAge()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:215,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:215,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].maxAge()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].setPreflightHeaders(io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].preflightResponseHeaders()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:122,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:122,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].preflightResponseHeaders()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:122,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].preflightResponseHeaders()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 230
    functionDepth: 6
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].isEmpty()"
    - "[java.util.IdentityHashMap].isEmpty()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].isEmpty()"
    - "[java.util.HashMap].isEmpty()"
    - "[java.util.Hashtable].isEmpty()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].isEmpty()"
    - "[java.util.WeakHashMap].isEmpty()"
    - "[java.util.jar.Attributes].isEmpty()"
    - "[io.netty.util.collection.IntObjectHashMap].isEmpty()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.ByteObjectHashMap].isEmpty()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].isEmpty()"
    - "[io.netty.util.collection.LongObjectHashMap].isEmpty()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].isEmpty()"
    - "[java.util.AbstractMap].isEmpty()"
    - "[io.netty.util.collection.CharObjectHashMap].isEmpty()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].isEmpty()"
    - "[java.util.concurrent.ConcurrentHashMap].isEmpty()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].isEmpty()"
    - "[java.util.Properties].isEmpty()"
    - "[io.netty.util.collection.ShortObjectHashMap].isEmpty()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>()"
    - "[java.security.Provider].entrySet()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].entrySet()"
    - "[java.util.concurrent.ConcurrentHashMap].entrySet()"
    - "[io.netty.util.collection.ShortObjectHashMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].entrySet()"
    - "[java.util.TreeMap].entrySet()"
    - "[java.util.stream.Collectors$Partition].entrySet()"
    - "[java.util.Properties].entrySet()"
    - "[java.util.WeakHashMap].entrySet()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[io.netty.util.collection.IntObjectHashMap].entrySet()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].entrySet()"
    - "[java.util.jar.Attributes].entrySet()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].entrySet()"
    - "[java.util.IdentityHashMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.util.collection.ByteObjectHashMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].entrySet()"
    - "[java.util.HashMap].entrySet()"
    - "[io.netty.util.collection.CharObjectHashMap].entrySet()"
    - "[java.util.Hashtable].entrySet()"
    - "[io.netty.util.collection.LongObjectHashMap].entrySet()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].getValue(java.util.concurrent.Callable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].add(java.lang.CharSequence,java.lang.Iterable)"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    - "[java.util.AbstractMap$SimpleEntry].getKey()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - "[java.util.Map].isEmpty()"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Map$Entry].getKey()"
    - "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Iterable)"
    - "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    functionUses: 1
    ICount: 30
    EdgeCount: 241
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsConfig:217"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfig:220"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfig:219"
        BranchSideFuncs:
        - "hasNext()"
        - "<init>()"
        - "iterator()"
        - "next()"
        - "entrySet()"
    - Branch String: "io.netty.handler.codec.http.cors.CorsConfig:221"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfig:229"
        BranchSideFuncs:
        - "getValue(java.util.concurrent.Callable)"
        - "hasNext()"
        - "iterator()"
        - "getValue()"
        - "next()"
        - "entrySet()"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfig:228"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cors.CorsConfig:223"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfig:226"
        BranchSideFuncs:
        - "add(java.lang.CharSequence,java.lang.Iterable)"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfig:225"
        BranchSideFuncs:
        - "add(java.lang.CharSequence,java.lang.Object)"
        - "getKey()"
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:217,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:220,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpHeaders].<init>()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:221,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:221,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:221,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:221,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:222,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:222,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].getValue(java.util.concurrent.Callable)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:224,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:224,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Iterable)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:226,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].setAllowPrivateNetwork(io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 227
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].isPrivateNetworkAllowed()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 18
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:219"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:226"
        BranchSideFuncs:
        - "isPrivateNetworkAllowed()"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:225"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:220"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:223"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:222"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
        - "headers()"
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:219,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:219,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:220,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].isPrivateNetworkAllowed()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:221,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].isPrivateNetworkAllowed()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].respond(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 253
    functionLinenumberEnd: 263
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.HttpRequest"
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpUtil].isKeepAlive(io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.handler.codec.http.HttpUtil].setKeepAlive(io.netty.handler.codec.http.HttpMessage,boolean)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 10
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:259"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:262"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:261"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:254,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].isKeepAlive(io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:256,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].setKeepAlive(io.netty.handler.codec.http.HttpMessage,boolean)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:258,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:260,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].forbidden(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 241
    functionLinenumberEnd: 248
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.handler.codec.http.cors.CorsHandler].respond(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 15
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:243,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:243,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:243,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:243,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:244,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:244,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:245,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:246,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].respond(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.HttpResponse)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].setExposeHeaders(io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 205
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfig].exposedHeaders()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].isEmpty()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].isEmpty()"
    - "[java.util.TreeSet].isEmpty()"
    - "[java.util.TreeMap$KeySet].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[io.netty.channel.group.DefaultChannelGroup].isEmpty()"
    - "[java.util.HashSet].isEmpty()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Iterable)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Iterable)"
    - "[java.util.Set].isEmpty()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 12
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:201"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:204"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Iterable)"
        - "exposedHeaders()"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:201,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].exposedHeaders()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:201,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:202,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:202,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].exposedHeaders()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:151,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsHandler"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 240
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfig].isCorsSupportEnabled()"
    - "[io.netty.handler.codec.http.cors.CorsHandler].setOrigin(io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.cors.CorsHandler].setAllowCredentials(io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.cors.CorsHandler].setExposeHeaders(io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 18
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:231"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:238"
        BranchSideFuncs:
        - "setOrigin(io.netty.handler.codec.http.HttpResponse)"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:237"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:231"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:238"
        BranchSideFuncs:
        - "setOrigin(io.netty.handler.codec.http.HttpResponse)"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:237"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:231"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:238"
        BranchSideFuncs:
        - "setOrigin(io.netty.handler.codec.http.HttpResponse)"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:237"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http.cors.CorsHandler:233"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:238"
        BranchSideFuncs:
        - "setAllowCredentials(io.netty.handler.codec.http.HttpResponse)"
        - "setExposeHeaders(io.netty.handler.codec.http.HttpResponse)"
      - BranchSide: "io.netty.handler.codec.http.cors.CorsHandler:237"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:231,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].isCorsSupportEnabled()"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:233,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].setOrigin(io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:234,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].setAllowCredentials(io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:235,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsHandler].setExposeHeaders(io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.cors.CorsHandler:238,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].isCorsSupportEnabled()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.EmptyHttp2Headers].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.EmptyHeaders].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.EmptyHttp2Headers:26,1"
      Dst: "[io.netty.handler.codec.EmptyHeaders].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.EmptyHttp2Headers].method(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.EmptyHttp2Headers:31,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.EmptyHttp2Headers].scheme(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.EmptyHttp2Headers:36,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.EmptyHttp2Headers].authority(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.EmptyHttp2Headers:41,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.EmptyHttp2Headers].path(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.EmptyHttp2Headers:46,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.EmptyHttp2Headers].status(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.EmptyHttp2Headers:51,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.EmptyHttp2Headers].method()"
    functionSourceFile: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 1
    returnType: "java.lang.CharSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.EmptyHeaders].get(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.EmptyHttp2Headers:56,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    - Src: "io.netty.handler.codec.http2.EmptyHttp2Headers:56,1"
      Dst: "[io.netty.handler.codec.EmptyHeaders].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.EmptyHttp2Headers].scheme()"
    functionSourceFile: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.CharSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    - "[io.netty.handler.codec.EmptyHeaders].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.EmptyHttp2Headers:61,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    - Src: "io.netty.handler.codec.http2.EmptyHttp2Headers:61,1"
      Dst: "[io.netty.handler.codec.EmptyHeaders].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.EmptyHttp2Headers].authority()"
    functionSourceFile: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 1
    returnType: "java.lang.CharSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.EmptyHeaders].get(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.EmptyHttp2Headers:66,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    - Src: "io.netty.handler.codec.http2.EmptyHttp2Headers:66,1"
      Dst: "[io.netty.handler.codec.EmptyHeaders].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.EmptyHttp2Headers].path()"
    functionSourceFile: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 1
    returnType: "java.lang.CharSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.EmptyHeaders].get(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.EmptyHttp2Headers:71,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    - Src: "io.netty.handler.codec.http2.EmptyHttp2Headers:71,1"
      Dst: "[io.netty.handler.codec.EmptyHeaders].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.EmptyHttp2Headers].status()"
    functionSourceFile: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 1
    returnType: "java.lang.CharSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.EmptyHeaders].get(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    functionUses: 6
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.EmptyHttp2Headers:76,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].value()"
    - Src: "io.netty.handler.codec.http2.EmptyHttp2Headers:76,1"
      Dst: "[io.netty.handler.codec.EmptyHeaders].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.EmptyHttp2Headers].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.EmptyHttp2Headers].valueIterator(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.EmptyHttp2Headers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.EmptyHeaders].valueIterator(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.EmptyHttp2Headers:21,1"
      Dst: "[io.netty.handler.codec.EmptyHeaders].valueIterator(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException:35,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 45
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].reasonText()"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException:42"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException:42"
        BranchSideFuncs:
        - "reasonText()"
        - "<init>(java.lang.String,java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException:41"
        BranchSideFuncs:
        - "reasonText()"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException:42,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].reasonText()"
    - Src: "io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException:42,1"
      Dst: "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String,java.lang.Throwable)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException:50,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException:57,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].closeStatus()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.UnixChannelUtil].<init>()"
    functionSourceFile: "io.netty.channel.unix.UnixChannelUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.UnixChannelUtil:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.UnixChannelUtil].computeRemoteAddr(java.net.InetSocketAddress,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.channel.unix.UnixChannelUtil"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 61
    functionDepth: 2
    returnType: "java.net.InetSocketAddress"
    argCount: 2
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[java.net.InetAddress:java.net.InetSocketAddress].getByAddress(java.lang.String,byte[])"
    - "[java.net.InetSocketAddress].getHostString()"
    - "[java.net.Inet4Address].getAddress()"
    - "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    - "[java.net.Inet4Address:java.net.Inet6Address:java.net.InetAddress:java.net.InetSocketAddress].getPort()"
    - "[java.net.InetSocketAddress].getAddress()"
    - "[java.net.InetAddress].getAddress()"
    - "[java.net.InetAddress].getByAddress(java.lang.String,byte[])"
    - "[java.net.InetSocketAddress].getPort()"
    functionUses: 4
    ICount: 16
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.UnixChannelUtil:45"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.UnixChannelUtil:60"
        BranchSideFuncs:
        - "javaVersion()"
      - BranchSide: "io.netty.channel.unix.UnixChannelUtil:59"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.UnixChannelUtil:46"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.UnixChannelUtil:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.UnixChannelUtil:46,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.unix.UnixChannelUtil:51,1"
      Dst: "[java.net.InetSocketAddress].getHostString()"
    - Src: "io.netty.channel.unix.UnixChannelUtil:52,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.channel.unix.UnixChannelUtil:52,1"
      Dst: "[java.net.InetAddress].getAddress()"
    - Src: "io.netty.channel.unix.UnixChannelUtil:51,1"
      Dst: "[java.net.InetAddress].getByAddress(java.lang.String,byte[])"
    - Src: "io.netty.channel.unix.UnixChannelUtil:53,1"
      Dst: "[java.net.InetSocketAddress].getPort()"
    - Src: "io.netty.channel.unix.UnixChannelUtil:53,1"
      Dst: "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException].fillInStackTrace()"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException"
    linkageType: ""
    functionLinenumber: 275
    functionLinenumberEnd: 277
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2BitReader].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BitReader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BitReader:25,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthRequestDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthRequestDecoder$State"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksAuthRequestDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthRequestDecoder$State:66,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthRequestDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthRequestDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksAuthRequestDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthRequestDecoder$State:66,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthRequestDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthRequestDecoder$State"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthRequestDecoder$State:67,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule].<init>(java.net.Inet4Address,int,io.netty.handler.ipfilter.IpFilterRuleType)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.Inet4Address"
    - "int"
    - "io.netty.handler.ipfilter.IpFilterRuleType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule].prefixToSubnetMask(int)"
    - "[io.netty.util.NetUtil].ipv4AddressToInt(java.net.Inet4Address)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:135"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:134"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:139"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:138"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:133,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:136,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:135,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:135,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:139,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule].prefixToSubnetMask(int)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:140,1"
      Dst: "[io.netty.util.NetUtil].ipv4AddressToInt(java.net.Inet4Address)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule].matches(java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 152
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].getAddress()"
    - "[io.netty.util.NetUtil].ipv4AddressToInt(java.net.Inet4Address)"
    functionUses: 2
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:147"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:151"
        BranchSideFuncs:
        - "ipv4AddressToInt(java.net.Inet4Address)"
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:150"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:147"
        BranchSideFuncs:
        - "ipv4AddressToInt(java.net.Inet4Address)"
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:146,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:148,1"
      Dst: "[io.netty.util.NetUtil].ipv4AddressToInt(java.net.Inet4Address)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule].ruleType()"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "io.netty.handler.ipfilter.IpFilterRuleType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule].prefixToSubnetMask(int)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule].<init>(java.net.Inet4Address,int,io.netty.handler.ipfilter.IpFilterRuleType,io.netty.handler.ipfilter.IpSubnetFilterRule$1)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.net.Inet4Address"
    - "int"
    - "io.netty.handler.ipfilter.IpFilterRuleType"
    - "io.netty.handler.ipfilter.IpSubnetFilterRule$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule].<init>(java.net.Inet4Address,int,io.netty.handler.ipfilter.IpFilterRuleType)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:127,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule].<init>(java.net.Inet4Address,int,io.netty.handler.ipfilter.IpFilterRuleType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule].access$200(io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule].access$400(io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1].<init>(io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1,io.netty.resolver.dns.TcpDnsQueryContext)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1"
    linkageType: ""
    functionLinenumber: 1343
    functionLinenumberEnd: 1345
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1"
    - "io.netty.resolver.dns.TcpDnsQueryContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1344,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1"
    linkageType: ""
    functionLinenumber: 1346
    functionLinenumberEnd: 1369
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].id()"
    - "[io.netty.resolver.dns.DnsNameResolver].access$000()"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].remoteAddress()"
    - "[io.netty.channel.rxtx.RxtxChannel].remoteAddress()"
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].remoteAddress()"
    - "[io.netty.channel.local.LocalServerChannel].remoteAddress()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].remoteAddress()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].remoteAddress()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].remoteAddress()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].remoteAddress()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].remoteAddress()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].remoteAddress()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].remoteAddress()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].remoteAddress()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].remoteAddress()"
    - "[io.netty.channel.local.LocalChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollSocketChannel].remoteAddress()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].remoteAddress()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].remoteAddress()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].remoteAddress()"
    - "[io.netty.channel.AbstractServerChannel].remoteAddress()"
    - "[io.netty.resolver.dns.DnsQueryContextManager].get(java.net.InetSocketAddress,int)"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].sender()"
    - "[io.netty.resolver.dns.DnsQueryContext].finish(io.netty.channel.AddressedEnvelope)"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsResponse)"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].localAddress()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].localAddress()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].localAddress()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].localAddress()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].localAddress()"
    - "[io.netty.channel.local.LocalServerChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].localAddress()"
    - "[io.netty.channel.local.LocalChannel].localAddress()"
    - "[io.netty.channel.AbstractChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].localAddress()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].localAddress()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].localAddress()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].localAddress()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].localAddress()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].localAddress()"
    - "[io.netty.channel.rxtx.RxtxChannel].localAddress()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].localAddress()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].localAddress()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollSocketChannel].localAddress()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].localAddress()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].localAddress()"
    - "[io.netty.util.AbstractReferenceCounted].release()"
    - "[io.netty.resolver.dns.DnsQueryContext].tryFailure(java.lang.String,java.lang.Throwable,boolean)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.handler.codec.dns.DnsMessage].id()"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.channel.Channel].remoteAddress()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.channel.Channel].localAddress()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 46
    EdgeCount: 125
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1351"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1356"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1355"
        BranchSideFuncs:
        - "sender()"
        - "get(java.net.InetSocketAddress,int)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1357"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1362"
        BranchSideFuncs:
        - "tryFailure(java.lang.String,java.lang.Throwable,boolean)"
        - "access$000()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "release()"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1347,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1349,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].id()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1351,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].access$000()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1351,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1352,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1353,1"
      Dst: "[io.netty.channel.Channel].remoteAddress()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1352,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1356,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponse].sender()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1356,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContextManager].get(java.net.InetSocketAddress,int)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1360,1"
      Dst: "[io.netty.channel.Channel].localAddress()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1360,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].<init>(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsResponse)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1358,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].finish(io.netty.channel.AddressedEnvelope)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1363,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1364,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].tryFailure(java.lang.String,java.lang.Throwable,boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1365,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1"
    linkageType: ""
    functionLinenumber: 1371
    functionLinenumberEnd: 1378
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].access$000()"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.resolver.dns.DnsQueryContext].tryFailure(java.lang.String,java.lang.Throwable,boolean)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].remoteAddress()"
    - "[io.netty.channel.rxtx.RxtxChannel].remoteAddress()"
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].remoteAddress()"
    - "[io.netty.channel.local.LocalServerChannel].remoteAddress()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].remoteAddress()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].remoteAddress()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].remoteAddress()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].remoteAddress()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].remoteAddress()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].remoteAddress()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].remoteAddress()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].remoteAddress()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].remoteAddress()"
    - "[io.netty.channel.local.LocalChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollSocketChannel].remoteAddress()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].remoteAddress()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].remoteAddress()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].remoteAddress()"
    - "[io.netty.channel.AbstractServerChannel].remoteAddress()"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].remoteAddress()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 23
    EdgeCount: 49
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1372"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1377"
        BranchSideFuncs:
        - "access$000()"
        - "debug(java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1376"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1372"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1377"
        BranchSideFuncs:
        - "access$000()"
        - "debug(java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1376"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1372,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].tryFailure(java.lang.String,java.lang.Throwable,boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1372,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].access$000()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1372,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1374,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1374,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1375,1"
      Dst: "[io.netty.channel.Channel].remoteAddress()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1:1373,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder$State"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder$State:37,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder$State:37,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder$State"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder$State:38,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder$State"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder$State:39,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder$State:39,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder$State"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandRequestDecoder$State:40,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel$2"
    linkageType: ""
    functionLinenumber: 264
    functionLinenumberEnd: 267
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 50
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel$2:265,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpServerChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelHandlerMask].mask(java.lang.Class<? extends\
      \ ChannelHandler>)"
    functionSourceFile: "io.netty.channel.ChannelHandlerMask"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 86
    functionDepth: 5
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends ChannelHandler>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].get()"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerMask].mask0(java.lang.Class)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.util.collection.ShortObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelHandlerMask:81"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:85"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "mask0(java.lang.Class)"
        - "valueOf(int)"
      - BranchSide: "io.netty.channel.ChannelHandlerMask:84"
        BranchSideFuncs:
        - "intValue()"
    Callsites:
    - Src: "io.netty.channel.ChannelHandlerMask:79,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].get()"
    - Src: "io.netty.channel.ChannelHandlerMask:80,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.channel.ChannelHandlerMask:82,1"
      Dst: "[io.netty.channel.ChannelHandlerMask].mask0(java.lang.Class)"
    - Src: "io.netty.channel.ChannelHandlerMask:82,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.ChannelHandlerMask:83,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.ChannelHandlerMask:85,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelHandlerMask].mask0(java.lang.Class<? extends\
      \ ChannelHandler>)"
    functionSourceFile: "io.netty.channel.ChannelHandlerMask"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 164
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends ChannelHandler>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[io.netty.channel.ChannelHandlerMask].isSkippable(java.lang.Class,java.lang.String,java.lang.Class[])"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    functionUses: 1
    ICount: 126
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelHandlerMask:94"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelHandlerMask:97"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:100"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelHandlerMask:99"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelHandlerMask:100"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelHandlerMask:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelHandlerMask:103"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:106"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelHandlerMask:105"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelHandlerMask:106"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:109"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelHandlerMask:108"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelHandlerMask:109"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelHandlerMask:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelHandlerMask:112"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:115"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelHandlerMask:114"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelHandlerMask:115"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:118"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelHandlerMask:117"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelHandlerMask:118"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelHandlerMask:123"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:155"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelHandlerMask:154"
        BranchSideFuncs:
        - "isSkippable(java.lang.Class,java.lang.String,java.lang.Class[])"
    - Branch String: "io.netty.channel.ChannelHandlerMask:126"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:130"
        BranchSideFuncs:
        - "isSkippable(java.lang.Class,java.lang.String,java.lang.Class[])"
        - "throwException(java.lang.Throwable)"
        - "isAssignableFrom(java.lang.Class)"
      - BranchSide: "io.netty.channel.ChannelHandlerMask:129"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelHandlerMask:130"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:134"
        BranchSideFuncs:
        - "isSkippable(java.lang.Class,java.lang.String,java.lang.Class[])"
        - "throwException(java.lang.Throwable)"
        - "isAssignableFrom(java.lang.Class)"
      - BranchSide: "io.netty.channel.ChannelHandlerMask:133"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelHandlerMask:134"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:137"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelHandlerMask:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelHandlerMask:137"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:140"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelHandlerMask:139"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelHandlerMask:140"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:143"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelHandlerMask:142"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelHandlerMask:143"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:146"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelHandlerMask:145"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelHandlerMask:146"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:150"
        BranchSideFuncs:
        - "isSkippable(java.lang.Class,java.lang.String,java.lang.Class[])"
        - "throwException(java.lang.Throwable)"
        - "isAssignableFrom(java.lang.Class)"
      - BranchSide: "io.netty.channel.ChannelHandlerMask:149"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelHandlerMask:150"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:155"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelHandlerMask:154"
        BranchSideFuncs:
        - "isSkippable(java.lang.Class,java.lang.String,java.lang.Class[])"
    - Branch String: "io.netty.channel.ChannelHandlerMask:155"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask:161"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelHandlerMask:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelHandlerMask:94,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "io.netty.channel.ChannelHandlerMask:97,1"
      Dst: "[io.netty.channel.ChannelHandlerMask].isSkippable(java.lang.Class,java.lang.String,java.lang.Class[])"
    - Src: "io.netty.channel.ChannelHandlerMask:160,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 39
    CyclomaticComplexity: 20
  - functionName: "[io.netty.channel.ChannelHandlerMask].isSkippable(java.lang.Class,java.lang.String,java.lang.Class[])"
    functionSourceFile: "io.netty.channel.ChannelHandlerMask"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.String"
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerMask$2].<init>(java.lang.Class,java.lang.String,java.lang.Class[])"
    - "[java.lang.Boolean].booleanValue()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - "[io.netty.channel.ChannelHandlerMask$2].run()"
    functionUses: 17
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelHandlerMask:169,1"
      Dst: "[io.netty.channel.ChannelHandlerMask$2].<init>(java.lang.Class,java.lang.String,java.lang.Class[])"
    - Src: "io.netty.channel.ChannelHandlerMask:169,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - Src: "io.netty.channel.ChannelHandlerMask:169,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelHandlerMask$2].<init>(java.lang.Class,java.lang.String,java.lang.Class[])"
    functionSourceFile: "io.netty.channel.ChannelHandlerMask$2"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "java.lang.String"
    - "java.lang.Class[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelHandlerMask$2:169,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelHandlerMask].<init>()"
    functionSourceFile: "io.netty.channel.ChannelHandlerMask"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelHandlerMask:187,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelHandlerMask].access$000()"
    functionSourceFile: "io.netty.channel.ChannelHandlerMask"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeHeapSwappedByteBuf].idx(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.UnsafeHeapSwappedByteBuf"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.PooledHeapByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    functionUses: 6
    ICount: 5
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:31,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeHeapSwappedByteBuf]._getLong(io.netty.buffer.AbstractByteBuf,int)"
    functionSourceFile: "io.netty.buffer.UnsafeHeapSwappedByteBuf"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 2
    returnType: "long"
    argCount: 2
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.util.internal.PlatformDependent].getLong(byte[],int)"
    - "[io.netty.buffer.UnsafeHeapSwappedByteBuf].idx(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].array()"
    functionUses: 1
    ICount: 7
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:36,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:36,1"
      Dst: "[io.netty.buffer.UnsafeHeapSwappedByteBuf].idx(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:36,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getLong(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeHeapSwappedByteBuf]._getInt(io.netty.buffer.AbstractByteBuf,int)"
    functionSourceFile: "io.netty.buffer.UnsafeHeapSwappedByteBuf"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.util.internal.PlatformDependent].getInt(byte[],int)"
    - "[io.netty.buffer.UnsafeHeapSwappedByteBuf].idx(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].array()"
    functionUses: 1
    ICount: 7
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:41,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:41,1"
      Dst: "[io.netty.buffer.UnsafeHeapSwappedByteBuf].idx(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:41,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeHeapSwappedByteBuf]._getShort(io.netty.buffer.AbstractByteBuf,int)"
    functionSourceFile: "io.netty.buffer.UnsafeHeapSwappedByteBuf"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 2
    returnType: "short"
    argCount: 2
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.util.internal.PlatformDependent].getShort(byte[],int)"
    - "[io.netty.buffer.UnsafeHeapSwappedByteBuf].idx(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].array()"
    functionUses: 1
    ICount: 7
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:46,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:46,1"
      Dst: "[io.netty.buffer.UnsafeHeapSwappedByteBuf].idx(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:46,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getShort(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeHeapSwappedByteBuf]._setShort(io.netty.buffer.AbstractByteBuf,int,short)"
    functionSourceFile: "io.netty.buffer.UnsafeHeapSwappedByteBuf"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnsafeHeapSwappedByteBuf].idx(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.util.internal.PlatformDependent].putShort(byte[],int,short)"
    - "[io.netty.buffer.ByteBuf].array()"
    functionUses: 2
    ICount: 8
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:51,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:51,1"
      Dst: "[io.netty.buffer.UnsafeHeapSwappedByteBuf].idx(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:51,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putShort(byte[],int,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeHeapSwappedByteBuf]._setInt(io.netty.buffer.AbstractByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.UnsafeHeapSwappedByteBuf"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnsafeHeapSwappedByteBuf].idx(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.util.internal.PlatformDependent].putInt(byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].array()"
    functionUses: 2
    ICount: 8
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:56,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:56,1"
      Dst: "[io.netty.buffer.UnsafeHeapSwappedByteBuf].idx(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:56,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putInt(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeHeapSwappedByteBuf]._setLong(io.netty.buffer.AbstractByteBuf,int,long)"
    functionSourceFile: "io.netty.buffer.UnsafeHeapSwappedByteBuf"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnsafeHeapSwappedByteBuf].idx(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.util.internal.PlatformDependent].putLong(byte[],int,long)"
    - "[io.netty.buffer.ByteBuf].array()"
    functionUses: 2
    ICount: 8
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:61,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:61,1"
      Dst: "[io.netty.buffer.UnsafeHeapSwappedByteBuf].idx(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.buffer.UnsafeHeapSwappedByteBuf:61,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putLong(byte[],int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.redis.LastBulkStringRedisContent$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.LastBulkStringRedisContent$1:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].content()"
    functionSourceFile: "io.netty.handler.codec.redis.LastBulkStringRedisContent$1"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].copy()"
    functionSourceFile: "io.netty.handler.codec.redis.LastBulkStringRedisContent$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].duplicate()"
    functionSourceFile: "io.netty.handler.codec.redis.LastBulkStringRedisContent$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.redis.LastBulkStringRedisContent$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.redis.LastBulkStringRedisContent$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.LastBulkStringRedisContent$1:55,1"
      Dst: "[io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent:33,1"
      Dst: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].retain(int)"
    functionSourceFile: "io.netty.handler.codec.redis.LastBulkStringRedisContent$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].retain()"
    functionSourceFile: "io.netty.handler.codec.redis.LastBulkStringRedisContent$1"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].refCnt()"
    functionSourceFile: "io.netty.handler.codec.redis.LastBulkStringRedisContent$1"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].touch()"
    functionSourceFile: "io.netty.handler.codec.redis.LastBulkStringRedisContent$1"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.redis.LastBulkStringRedisContent$1"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].release()"
    functionSourceFile: "io.netty.handler.codec.redis.LastBulkStringRedisContent$1"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].release(int)"
    functionSourceFile: "io.netty.handler.codec.redis.LastBulkStringRedisContent$1"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:79,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].<init>(io.netty.handler.codec.http2.Http2HeadersDecoder)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:88,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:88,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].<init>(io.netty.handler.codec.http2.Http2HeadersDecoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].<init>(io.netty.handler.codec.http2.Http2HeadersDecoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2HeadersDecoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:91,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].headersConfiguration()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2HeadersDecoder$Configuration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].configuration()"
    - "[io.netty.handler.codec.http2.Http2HeadersDecoder].configuration()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:98,1"
      Dst: "[io.netty.handler.codec.http2.Http2HeadersDecoder].configuration()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].configuration()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameReader$Configuration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].frameSizePolicy()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameSizePolicy"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].maxFrameSize(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 119
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil].isMaxFrameSizeValid(int)"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:113,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].isMaxFrameSizeValid(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:115,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:114,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].maxFrameSize()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].close()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].closeHeadersContinuation()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:127,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].closeHeadersContinuation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].closeHeadersContinuation()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 136
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].close()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:131"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:135"
        BranchSideFuncs:
        - "close()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:134"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:132,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 176
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].processHeaderState(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].processPayloadState(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.handler.codec.http2.Http2Exception].isStreamError(io.netty.handler.codec.http2.Http2Exception)"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    functionUses: 3
    ICount: 37
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:140"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:146"
        BranchSideFuncs:
        - "readableBytes()"
        - "skipBytes(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:145"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:146"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:159"
        BranchSideFuncs:
        - "processHeaderState(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:158"
        BranchSideFuncs:
        - "processPayloadState(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:159"
        BranchSideFuncs:
        - "isReadable()"
        - "throwException(java.lang.Throwable)"
        - "isStreamError(io.netty.handler.codec.http2.Http2Exception)"
        - "processHeaderState(io.netty.buffer.ByteBuf)"
        - "processPayloadState(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:158"
        BranchSideFuncs:
        - "processPayloadState(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:160"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:164"
        BranchSideFuncs:
        - "isReadable()"
        - "throwException(java.lang.Throwable)"
        - "isStreamError(io.netty.handler.codec.http2.Http2Exception)"
        - "processHeaderState(io.netty.buffer.ByteBuf)"
        - "processPayloadState(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:163"
        BranchSideFuncs:
        - "isReadable()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:164"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:146"
        BranchSideFuncs:
        - "isReadable()"
        - "throwException(java.lang.Throwable)"
        - "isStreamError(io.netty.handler.codec.http2.Http2Exception)"
        - "processHeaderState(io.netty.buffer.ByteBuf)"
        - "processPayloadState(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:145"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:166"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:166"
        BranchSideFuncs:
        - "isStreamError(io.netty.handler.codec.http2.Http2Exception)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:165"
        BranchSideFuncs:
        - "isStreamError(io.netty.handler.codec.http2.Http2Exception)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:141,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:141,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:147,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].processHeaderState(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:159,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].processPayloadState(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:164,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:166,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].isStreamError(io.netty.handler.codec.http2.Http2Exception)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:173,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].processHeaderState(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 233
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedMedium()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedMedium()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.http2.Http2Flags].<init>(short)"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil].readUnsignedInt(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyDataFrame()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyHeadersFrame()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyPriorityFrame()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyRstStreamFrame()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifySettingsFrame()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyPushPromiseFrame()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyPingFrame()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyGoAwayFrame()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyWindowUpdateFrame()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyContinuationFrame()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyUnknownFrame()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    functionUses: 1
    ICount: 54
    EdgeCount: 46
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:183"
        BranchSideFuncs:
        - "readUnsignedMedium()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:185"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:189"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:188"
        BranchSideFuncs:
        - "<init>(short)"
        - "readByte()"
        - "readUnsignedInt(io.netty.buffer.ByteBuf)"
        - "readUnsignedByte()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:178,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:184,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedMedium()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:186,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:186,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:189,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:190,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:190,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].<init>(short)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:191,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].readUnsignedInt(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:198,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyDataFrame()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:201,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyHeadersFrame()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:204,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyPriorityFrame()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:207,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyRstStreamFrame()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:210,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifySettingsFrame()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:213,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyPushPromiseFrame()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:216,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyPingFrame()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:219,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyGoAwayFrame()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:222,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyWindowUpdateFrame()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:225,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyContinuationFrame()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:229,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyUnknownFrame()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 11
  - functionName: "[io.netty.handler.codec.http2.Http2Flags].<init>(short)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Flags"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Flags:36,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyDataFrame()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 295
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyAssociatedWithAStream()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - "[io.netty.handler.codec.http2.Http2Flags].getPaddingPresenceFieldLength()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:290"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:293"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:287,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyAssociatedWithAStream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:288,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:290,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].getPaddingPresenceFieldLength()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:292,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:291,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyAssociatedWithAStream()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 764
    functionLinenumberEnd: 769
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Byte].valueOf(byte)"
    functionUses: 5
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:765"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:768"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "valueOf(byte)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:767"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:766,1"
      Dst: "[java.lang.Byte].valueOf(byte)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:766,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 757
    functionLinenumberEnd: 763
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$3].getStreamId()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$2].getStreamId()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$1].getStreamId()"
    - "[java.lang.Byte].valueOf(byte)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].getStreamId()"
    functionUses: 10
    ICount: 15
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:758"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:761"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:760,1"
      Dst: "[java.lang.Byte].valueOf(byte)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:760,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].getStreamId()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:760,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:759,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Flags].getPaddingPresenceFieldLength()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Flags"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Flags].paddingPresent()"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2Flags:100"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Flags:99"
        BranchSideFuncs:
        - "paddingPresent()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Flags:100,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].paddingPresent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2Flags].paddingPresent()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Flags"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Flags].isFlagSet(short)"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Flags:84,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].isFlagSet(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyHeadersFrame()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 296
    functionLinenumberEnd: 306
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyAssociatedWithAStream()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - "[io.netty.handler.codec.http2.Http2Flags].getNumPriorityBytes()"
    - "[io.netty.handler.codec.http2.Http2Flags].getPaddingPresenceFieldLength()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 22
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:301"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:305"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:304"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:297,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyAssociatedWithAStream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:298,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:300,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].getPaddingPresenceFieldLength()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:300,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].getNumPriorityBytes()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:302,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:302,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:302,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:302,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:302,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Flags].getNumPriorityBytes()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Flags"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Flags].priorityPresent()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2Flags:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Flags:91"
        BranchSideFuncs:
        - "priorityPresent()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Flags:92,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].priorityPresent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2Flags].priorityPresent()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Flags"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Flags].isFlagSet(short)"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Flags:68,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].isFlagSet(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyPriorityFrame()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 307
    functionLinenumberEnd: 316
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyAssociatedWithAStream()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:311"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:314"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:308,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyAssociatedWithAStream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:309,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:313,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:312,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyRstStreamFrame()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 317
    functionLinenumberEnd: 325
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyAssociatedWithAStream()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:321"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:324"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "valueOf(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:318,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyAssociatedWithAStream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:319,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:322,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:322,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifySettingsFrame()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 326
    functionLinenumberEnd: 338
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2Flags].ack()"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 1
    ICount: 28
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:328"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:331"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:330"
        BranchSideFuncs:
        - "ack()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:331"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:334"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:333"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:331"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:334"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:333"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:334"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:337"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "valueOf(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:336"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:327,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:329,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:331,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].ack()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:335,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2Flags].ack()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Flags"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Flags].isFlagSet(short)"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Flags:76,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].isFlagSet(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyPushPromiseFrame()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 339
    functionLinenumberEnd: 350
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - "[io.netty.handler.codec.http2.Http2Flags].getPaddingPresenceFieldLength()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:345"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:348"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:340,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:344,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].getPaddingPresenceFieldLength()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:347,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:346,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyPingFrame()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 351
    functionLinenumberEnd: 361
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 1
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:353"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:356"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:355"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:356"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:359"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:352,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:354,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:358,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyGoAwayFrame()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 362
    functionLinenumberEnd: 372
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 1
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:365"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:368"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:367"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:368"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:371"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "valueOf(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:370"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:363,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:366,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:369,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyWindowUpdateFrame()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 373
    functionLinenumberEnd: 381
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyStreamOrConnectionId(int,java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:377"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:380"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "valueOf(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:379"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:374,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:375,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyStreamOrConnectionId(int,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:378,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:378,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyStreamOrConnectionId(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 771
    functionLinenumberEnd: 776
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:772"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:775"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:774"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:773,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyContinuationFrame()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 382
    functionLinenumberEnd: 400
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyAssociatedWithAStream()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Byte].valueOf(byte)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$3].getStreamId()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$2].getStreamId()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$1].getStreamId()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http2.Http2Flags].getPaddingPresenceFieldLength()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].getStreamId()"
    functionUses: 1
    ICount: 39
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:385"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:389"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:390"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:394"
        BranchSideFuncs:
        - "getPaddingPresenceFieldLength()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:395"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:398"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:383,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyAssociatedWithAStream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:387,1"
      Dst: "[java.lang.Byte].valueOf(byte)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:386,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:390,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].getStreamId()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:392,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:395,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].getPaddingPresenceFieldLength()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:396,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyUnknownFrame()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 401
    functionLinenumberEnd: 404
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:402,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyNotProcessingHeaders()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].processPayloadState(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 235
    functionLinenumberEnd: 285
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readDataFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readHeadersFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readPriorityFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readRstStreamFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readSettingsFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readPushPromiseFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readLong()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readLong()"
    - "[io.netty.buffer.WrappedByteBuf].readLong()"
    - "[io.netty.buffer.SwappedByteBuf].readLong()"
    - "[io.netty.buffer.EmptyByteBuf].readLong()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readLong()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readLong()"
    - "[io.netty.buffer.AbstractByteBuf].readLong()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readPingFrame(io.netty.channel.ChannelHandlerContext,long,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readGoAwayFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readWindowUpdateFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readContinuationFrame(io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readUnknownFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readLong()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 1
    ICount: 39
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:236"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:241"
        BranchSideFuncs:
        - "readerIndex()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:236,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:242,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:250,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readDataFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:253,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readHeadersFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:256,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readPriorityFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:259,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readRstStreamFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:262,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readSettingsFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:265,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readPushPromiseFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:268,1"
      Dst: "[io.netty.buffer.ByteBuf].readLong()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:268,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readPingFrame(io.netty.channel.ChannelHandlerContext,long,io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:271,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readGoAwayFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:274,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readWindowUpdateFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:277,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readContinuationFrame(io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:280,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readUnknownFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:283,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 11
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readDataFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 406
    functionLinenumberEnd: 417
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readPadding(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyPadding(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].lengthWithoutTrailingPadding(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readSlice(int)"
    - "[io.netty.buffer.SwappedByteBuf].readSlice(int)"
    - "[io.netty.handler.codec.http2.Http2Flags].endOfStream()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readSlice(int)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    functionUses: 1
    ICount: 16
    EdgeCount: 31
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:407,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readPadding(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:408,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyPadding(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:412,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:412,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].lengthWithoutTrailingPadding(int,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:414,1"
      Dst: "[io.netty.buffer.ByteBuf].readSlice(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:415,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].endOfStream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:415,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readPadding(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 612
    functionLinenumberEnd: 617
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Flags].paddingPresent()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    functionUses: 3
    ICount: 10
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:613"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:616"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:615"
        BranchSideFuncs:
        - "readUnsignedByte()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:613,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].paddingPresent()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:616,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyPadding(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 619
    functionLinenumberEnd: 625
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].lengthWithoutTrailingPadding(int,int)"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:621"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:624"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:623"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:620,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].lengthWithoutTrailingPadding(int,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:622,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].lengthWithoutTrailingPadding(int,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 630
    functionLinenumberEnd: 632
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:631"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:630"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readHeadersFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 419
    functionLinenumberEnd: 487
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readPadding(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyPadding(int)"
    - "[io.netty.handler.codec.http2.Http2Flags].priorityPresent()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedInt()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].lengthWithoutTrailingPadding(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$1].<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader,int,io.netty.channel.ChannelHandlerContext,int,short,boolean,int,io.netty.handler.codec.http2.Http2Flags)"
    - "[io.netty.handler.codec.http2.Http2Flags].endOfHeaders()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$1].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$3].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$2].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].resetHeadersContinuationIfEnd(boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$2].<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader,int,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Flags)"
    - "[io.netty.buffer.ByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    functionUses: 1
    ICount: 60
    EdgeCount: 48
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:427"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:464"
        BranchSideFuncs:
        - "readUnsignedInt()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:463"
        BranchSideFuncs:
        - "resetHeadersContinuationIfEnd(boolean)"
        - "readerIndex()"
        - "lengthWithoutTrailingPadding(int,int)"
        - "<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader,int,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Flags)"
        - "endOfHeaders()"
        - "processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:429"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:428"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:427"
        BranchSideFuncs:
        - "readUnsignedInt()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:431"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:434"
        BranchSideFuncs:
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:433"
        BranchSideFuncs:
        - "readUnsignedByte()"
        - "<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader,int,io.netty.channel.ChannelHandlerContext,int,short,boolean,int,io.netty.handler.codec.http2.Http2Flags)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:422,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readPadding(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:423,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyPadding(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:427,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].priorityPresent()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:428,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedInt()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:432,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:434,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:435,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:435,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].lengthWithoutTrailingPadding(int,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:438,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$1].<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader,int,io.netty.channel.ChannelHandlerContext,int,short,boolean,int,io.netty.handler.codec.http2.Http2Flags)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:457,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].endOfHeaders()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:457,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:458,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].resetHeadersContinuationIfEnd(boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:464,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$2].<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader,int,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Flags)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2Flags].endOfHeaders()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Flags"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Flags].isFlagSet(short)"
    functionUses: 11
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Flags:60,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].isFlagSet(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].resetHeadersContinuationIfEnd(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 488
    functionLinenumberEnd: 493
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].closeHeadersContinuation()"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:489"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:492"
        BranchSideFuncs:
        - "closeHeadersContinuation()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:491"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:490,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].closeHeadersContinuation()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$2].<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader,int,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Flags)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$2"
    linkageType: ""
    functionLinenumber: 463
    functionLinenumberEnd: 465
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    - "int"
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Flags"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader,io.netty.handler.codec.http2.DefaultHttp2FrameReader$1)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$2:464,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader,io.netty.handler.codec.http2.DefaultHttp2FrameReader$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readPriorityFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 495
    functionLinenumberEnd: 505
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedInt()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.buffer.ByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    functionUses: 1
    ICount: 27
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:497"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:496"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:495"
        BranchSideFuncs:
        - "readUnsignedInt()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:499"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:502"
        BranchSideFuncs:
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:501"
        BranchSideFuncs:
        - "onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
        - "readUnsignedByte()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:496,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedInt()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:500,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:502,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:503,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readRstStreamFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 507
    functionLinenumberEnd: 511
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedInt()"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.buffer.ByteBuf].readUnsignedInt()"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    functionUses: 1
    ICount: 8
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:508,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedInt()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:509,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readSettingsFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 513
    functionLinenumberEnd: 535
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Flags].ack()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2Settings].<init>()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedInt()"
    - "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Long)"
    - "[java.lang.Long].valueOf(long)"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[java.nio.file.InvalidPathException].getMessage()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.util.regex.PatternSyntaxException].getMessage()"
    - "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec$1].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.ByteBuf].readUnsignedInt()"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    functionUses: 1
    ICount: 42
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:514"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:517"
        BranchSideFuncs:
        - "onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:516"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:519"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:532"
        BranchSideFuncs:
        - "readUnsignedInt()"
        - "readUnsignedShort()"
        - "getMessage()"
        - "valueOf(long)"
        - "put(char,java.lang.Long)"
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:531"
        BranchSideFuncs:
        - "onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:525"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:520"
        BranchSideFuncs:
        - "readUnsignedInt()"
        - "readUnsignedShort()"
        - "getMessage()"
        - "valueOf(long)"
        - "put(char,java.lang.Long)"
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:519"
        BranchSideFuncs:
        - "readUnsignedInt()"
        - "readUnsignedShort()"
        - "getMessage()"
        - "valueOf(long)"
        - "put(char,java.lang.Long)"
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:514,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].ack()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:515,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:518,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:520,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:521,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedInt()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:523,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:523,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:527,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:526,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:532,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readPushPromiseFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 537
    functionLinenumberEnd: 566
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readPadding(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyPadding(int)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil].readUnsignedInt(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$3].<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader,int,io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].lengthWithoutTrailingPadding(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.handler.codec.http2.Http2Flags].endOfHeaders()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$1].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$3].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$2].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].resetHeadersContinuationIfEnd(boolean)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    functionUses: 1
    ICount: 23
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:539,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readPadding(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:540,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].verifyPadding(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:541,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].readUnsignedInt(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:544,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$3].<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader,int,io.netty.channel.ChannelHandlerContext,int,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:562,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:562,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].lengthWithoutTrailingPadding(int,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:563,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].endOfHeaders()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:563,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:564,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].resetHeadersContinuationIfEnd(boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readPingFrame(io.netty.channel.ChannelHandlerContext,long,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 568
    functionLinenumberEnd: 575
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "long"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Flags].ack()"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    functionUses: 1
    ICount: 11
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:569"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:572"
        BranchSideFuncs:
        - "onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:571"
        BranchSideFuncs:
        - "onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:569,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].ack()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:570,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:572,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readGoAwayFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 577
    functionLinenumberEnd: 583
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil].readUnsignedInt(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readSlice(int)"
    - "[io.netty.buffer.SwappedByteBuf].readSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readSlice(int)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 11
    EdgeCount: 33
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:578,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].readUnsignedInt(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:579,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedInt()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:580,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:580,1"
      Dst: "[io.netty.buffer.ByteBuf].readSlice(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:581,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readWindowUpdateFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 585
    functionLinenumberEnd: 593
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil].readUnsignedInt(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:587"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:590"
        BranchSideFuncs:
        - "onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:586,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].readUnsignedInt(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:589,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:588,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:591,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readContinuationFrame(io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 596
    functionLinenumberEnd: 601
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Flags].endOfHeaders()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$1].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$3].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$2].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].resetHeadersContinuationIfEnd(boolean)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    functionUses: 1
    ICount: 14
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:597,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].endOfHeaders()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:598,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:597,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:599,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].resetHeadersContinuationIfEnd(boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readUnknownFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    linkageType: ""
    functionLinenumber: 603
    functionLinenumberEnd: 607
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readSlice(int)"
    - "[io.netty.buffer.SwappedByteBuf].readSlice(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readSlice(int)"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 13
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:604,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:604,1"
      Dst: "[io.netty.buffer.ByteBuf].readSlice(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader:605,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$3].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$3"
    linkageType: ""
    functionLinenumber: 487
    functionLinenumberEnd: 489
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    - "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelInitializer].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$3:488,1"
      Dst: "[io.netty.channel.ChannelInitializer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$3].initChannel(io.netty.channel.socket.DatagramChannel)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$3"
    linkageType: ""
    functionLinenumber: 490
    functionLinenumberEnd: 493
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.socket.DatagramChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].access$200()"
    - "[io.netty.resolver.dns.DnsNameResolver].access$300()"
    - "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.Channel].pipeline()"
    - "[io.netty.channel.ChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    functionUses: 1
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$3:491,1"
      Dst: "[io.netty.channel.Channel].pipeline()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$3:491,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].access$200()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$3:491,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].access$300()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$3:491,1"
      Dst: "[io.netty.channel.ChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$3].initChannel(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$3"
    linkageType: ""
    functionLinenumber: 487
    functionLinenumberEnd: 489
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver$3].initChannel(io.netty.channel.socket.DatagramChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$3:488,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$3].initChannel(io.netty.channel.socket.DatagramChannel)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$3].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler,io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$3"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler"
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$3:181,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$3].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$3"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 186
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cancel(boolean)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cancel(boolean)"
    - "[io.netty.util.concurrent.CompleteFuture].cancel(boolean)"
    - "[io.netty.channel.VoidChannelPromise].cancel(boolean)"
    - "[io.netty.util.concurrent.Future].cancel(boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$3:184,1"
      Dst: "[io.netty.util.concurrent.Future].cancel(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslKeyMaterialManager].setKeyMaterialServerSide(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslKeyMaterialManager"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].authMethods()"
    - "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    - "[java.util.Map].size()"
    - "[java.util.HashSet].<init>(int)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslKeyMaterialManager].chooseServerAlias(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String)"
    - "[io.netty.handler.ssl.OpenSslKeyMaterialManager].setKeyMaterial(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Arrays].toString(java.lang.Object[])"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialManager:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:77"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:76"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialManager:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:89"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:88"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialManager:80"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:77"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:76"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialManager:80"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:77"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:76"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialManager:82"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:69,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].authMethods()"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:71,1"
      Dst: "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:77,1"
      Dst: "[java.util.Map].size()"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:77,1"
      Dst: "[java.util.HashSet].<init>(int)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:79,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:80,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:81,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterialManager].chooseServerAlias(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:84,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterialManager].setKeyMaterial(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:89,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:89,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:90,1"
      Dst: "[java.util.Arrays].toString(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:90,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].authMethods()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.internal.tcnative.SSL].authenticationMethods(long)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:412"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:415"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:414"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:412,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:415,1"
      Dst: "[io.netty.internal.tcnative.SSL].authenticationMethods(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslKeyMaterialManager].chooseServerAlias(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslKeyMaterialManager"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].keyManager()"
    - "[javax.net.ssl.X509ExtendedKeyManager].chooseEngineServerAlias(java.lang.String,java.security.Principal[],javax.net.ssl.SSLEngine)"
    - "[javax.net.ssl.X509KeyManager].chooseServerAlias(java.lang.String,java.security.Principal[],java.net.Socket)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialManager:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:136"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:135"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:132,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].keyManager()"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:134,1"
      Dst: "[javax.net.ssl.X509ExtendedKeyManager].chooseEngineServerAlias(java.lang.String,java.security.Principal[],javax.net.ssl.SSLEngine)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:136,1"
      Dst: "[javax.net.ssl.X509KeyManager].chooseServerAlias(java.lang.String,java.security.Principal[],java.net.Socket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].keyManager()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslKeyMaterialProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.X509KeyManager"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslKeyMaterialManager].setKeyMaterial(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslKeyMaterialManager"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].chooseKeyMaterial(io.netty.buffer.ByteBufAllocator,java.lang.String)"
    - "[io.netty.handler.ssl.OpenSslKeyMaterial].release()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setKeyMaterial(io.netty.handler.ssl.OpenSslKeyMaterial)"
    - "[javax.net.ssl.SSLException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialManager:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:111"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialManager:117"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:109"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:108"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialManager:117"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:121"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:120"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialManager:117"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:120"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:107,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].chooseKeyMaterial(io.netty.buffer.ByteBufAllocator,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:118,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterial].release()"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:111,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setKeyMaterial(io.netty.handler.ssl.OpenSslKeyMaterial)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:115,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setKeyMaterial(io.netty.handler.ssl.OpenSslKeyMaterial)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslKeyMaterial"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.handler.ssl.OpenSslKeyMaterial].certificateChainAddress()"
    - "[io.netty.handler.ssl.OpenSslKeyMaterial].privateKeyAddress()"
    - "[io.netty.internal.tcnative.SSL].setKeyMaterial(long,long,long)"
    - "[io.netty.handler.ssl.OpenSslKeyMaterial].certificateChain()"
    - "[io.netty.handler.ssl.OpenSslSession].setLocalCertificate(java.security.cert.Certificate[])"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:420"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:423"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:422"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:420,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:423,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterial].certificateChainAddress()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:423,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterial].privateKeyAddress()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:423,1"
      Dst: "[io.netty.internal.tcnative.SSL].setKeyMaterial(long,long,long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:425,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterial].certificateChain()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:425,1"
      Dst: "[io.netty.handler.ssl.OpenSslSession].setLocalCertificate(java.security.cert.Certificate[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslKeyMaterialManager].setKeyMaterialClientSide(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String[],javax.security.auth.x500.X500Principal[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslKeyMaterialManager"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    - "java.lang.String[]"
    - "javax.security.auth.x500.X500Principal[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslKeyMaterialManager].chooseClientAlias(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String[],javax.security.auth.x500.X500Principal[])"
    - "[io.netty.handler.ssl.OpenSslKeyMaterialManager].setKeyMaterial(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialManager:99"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:95,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterialManager].chooseClientAlias(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String[],javax.security.auth.x500.X500Principal[])"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:100,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterialManager].setKeyMaterial(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslKeyMaterialManager].chooseClientAlias(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String[],javax.security.auth.x500.X500Principal[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslKeyMaterialManager"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    - "java.lang.String[]"
    - "javax.security.auth.x500.X500Principal[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].keyManager()"
    - "[javax.net.ssl.X509ExtendedKeyManager].chooseEngineClientAlias(java.lang.String[],java.security.Principal[],javax.net.ssl.SSLEngine)"
    - "[javax.net.ssl.X509KeyManager].chooseClientAlias(java.lang.String[],java.security.Principal[],java.net.Socket)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslKeyMaterialManager:125"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:128"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslKeyMaterialManager:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:124,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].keyManager()"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:126,1"
      Dst: "[javax.net.ssl.X509ExtendedKeyManager].chooseEngineClientAlias(java.lang.String[],java.security.Principal[],javax.net.ssl.SSLEngine)"
    - Src: "io.netty.handler.ssl.OpenSslKeyMaterialManager:128,1"
      Dst: "[javax.net.ssl.X509KeyManager].chooseClientAlias(java.lang.String[],java.security.Principal[],java.net.Socket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].<init>(io.netty.util.concurrent.EventExecutorGroup)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutorGroup"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].<init>(io.netty.util.concurrent.EventExecutorGroup,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:50,1"
      Dst: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].<init>(io.netty.util.concurrent.EventExecutorGroup,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].<init>(io.netty.util.concurrent.EventExecutorGroup,int)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.EventExecutorGroup"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].verify(io.netty.util.concurrent.EventExecutorGroup)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:57,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:58,1"
      Dst: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].verify(io.netty.util.concurrent.EventExecutorGroup)"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:59,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].verify(io.netty.util.concurrent.EventExecutorGroup)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.EventExecutorGroup"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutorGroup"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.concurrent.EventExecutorGroup].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.NonStickyEventExecutorGroup:64"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup:71"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup:70"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.NonStickyEventExecutorGroup:66"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup:70"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.NonStickyEventExecutorGroup:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:63,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:63,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].iterator()"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:64,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:65,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:67,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:67,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:67,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:67,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:67,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].newExecutor(io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 3
    returnType: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].<init>(io.netty.util.concurrent.EventExecutor,int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:75,1"
      Dst: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].<init>(io.netty.util.concurrent.EventExecutor,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].newMpscQueue()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1039
    functionLinenumberEnd: 1041
    functionDepth: 1
    returnType: "java.util.Queue"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent$Mpsc].newMpscQueue()"
    functionUses: 4
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1040,1"
      Dst: "[io.netty.util.internal.PlatformDependent$Mpsc].newMpscQueue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent$Mpsc].newMpscQueue()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent$Mpsc"
    linkageType: ""
    functionLinenumber: 1028
    functionLinenumberEnd: 1030
    functionDepth: 0
    returnType: "java.util.Queue"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].<init>(int)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].<init>(int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent$Mpsc:1029"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent$Mpsc:1028"
        BranchSideFuncs:
        - "<init>(int)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent$Mpsc:1029,1"
      Dst: "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].<init>(int)"
    - Src: "io.netty.util.internal.PlatformDependent$Mpsc:1029,1"
      Dst: "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].isShuttingDown()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.EventExecutorGroup].isShuttingDown()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:80,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].isShuttingDown()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].shutdownGracefully()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.EventExecutorGroup].shutdownGracefully()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:85,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].shutdownGracefully()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].shutdownGracefully(long,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future<?>"
    argCount: 3
    argTypes:
    - "long"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.EventExecutorGroup].shutdownGracefully(long,long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:90,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].shutdownGracefully(long,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].terminationFuture()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.EventExecutorGroup].terminationFuture()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:95,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].terminationFuture()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].shutdown()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.EventExecutorGroup].shutdown()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:101,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].shutdown()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].shutdownNow()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.EventExecutorGroup].shutdownNow()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:107,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].shutdownNow()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].next()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 4
    returnType: "io.netty.util.concurrent.EventExecutor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].newExecutor(io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].next()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].next()"
    - "[io.netty.channel.MultithreadEventLoopGroup].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].next()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].next()"
    - "[io.netty.channel.SingleThreadEventLoop].next()"
    - "[io.netty.channel.AbstractEventLoop].next()"
    - "[io.netty.util.concurrent.AbstractEventExecutor:io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].next()"
    - "[io.netty.util.concurrent.EventExecutorGroup].next()"
    functionUses: 3
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:112,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].next()"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:112,1"
      Dst: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].newExecutor(io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].iterator()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].iterator()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].iterator()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].iterator()"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].iterator()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].<init>(io.netty.util.concurrent.NonStickyEventExecutorGroup,java.util.Iterator)"
    - "[io.netty.util.concurrent.EventExecutorGroup].iterator()"
    functionUses: 25
    ICount: 6
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:117,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].iterator()"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:118,1"
      Dst: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].<init>(io.netty.util.concurrent.NonStickyEventExecutorGroup,java.util.Iterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].<init>(io.netty.util.concurrent.NonStickyEventExecutorGroup,java.util.Iterator)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup$1"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$1:118,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].submit(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future<?>"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.EventExecutorGroup].submit(java.lang.Runnable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:138,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].submit(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].submit(java.lang.Runnable,java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 2
    argTypes:
    - "java.lang.Runnable"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.EventExecutorGroup].submit(java.lang.Runnable,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:143,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].submit(java.lang.Runnable,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].submit(java.util.concurrent.Callable<T>)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future<T>"
    argCount: 1
    argTypes:
    - "java.util.concurrent.Callable<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.EventExecutorGroup].submit(java.util.concurrent.Callable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:148,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].submit(java.util.concurrent.Callable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.ScheduledFuture<?>"
    argCount: 3
    argTypes:
    - "java.lang.Runnable"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:153,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].schedule(java.util.concurrent.Callable<V>,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.ScheduledFuture<V>"
    argCount: 3
    argTypes:
    - "java.util.concurrent.Callable<V>"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.util.concurrent.Callable,long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:158,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.util.concurrent.Callable,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionDepth: 0
    returnType: "io.netty.util.concurrent.ScheduledFuture<?>"
    argCount: 4
    argTypes:
    - "java.lang.Runnable"
    - "long"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutorGroup].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.EventExecutorGroup].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    functionUses: 3
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:163,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].scheduleWithFixedDelay(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.ScheduledFuture<?>"
    argCount: 4
    argTypes:
    - "java.lang.Runnable"
    - "long"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.EventExecutorGroup].scheduleWithFixedDelay(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:168,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].scheduleWithFixedDelay(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].isShutdown()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ExecutorService].isShutdown()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:173,1"
      Dst: "[java.util.concurrent.ExecutorService].isShutdown()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].isTerminated()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ExecutorService].isTerminated()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:178,1"
      Dst: "[java.util.concurrent.ExecutorService].isTerminated()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].awaitTermination(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ExecutorService].awaitTermination(long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:183,1"
      Dst: "[java.util.concurrent.ExecutorService].awaitTermination(long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].invokeAll(java.util.Collection<?\
      \ extends Callable<T>>)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List<java.util.concurrent.Future<T>>"
    argCount: 1
    argTypes:
    - "java.util.Collection<? extends Callable<T>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ExecutorService].invokeAll(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:189,1"
      Dst: "[java.util.concurrent.ExecutorService].invokeAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].invokeAll(java.util.Collection<?\
      \ extends Callable<T>>,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List<java.util.concurrent.Future<T>>"
    argCount: 3
    argTypes:
    - "java.util.Collection<? extends Callable<T>>"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ExecutorService].invokeAll(java.util.Collection,long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:195,1"
      Dst: "[java.util.concurrent.ExecutorService].invokeAll(java.util.Collection,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].invokeAny(java.util.Collection<?\
      \ extends Callable<T>>)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.util.Collection<? extends Callable<T>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ExecutorService].invokeAny(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:200,1"
      Dst: "[java.util.concurrent.ExecutorService].invokeAny(java.util.Collection)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      - "java.util.concurrent.ExecutionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].invokeAny(java.util.Collection<?\
      \ extends Callable<T>>,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.util.Collection<? extends Callable<T>>"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ExecutorService].invokeAny(java.util.Collection,long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:206,1"
      Dst: "[java.util.concurrent.ExecutorService].invokeAny(java.util.Collection,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      - "java.util.concurrent.ExecutionException"
      - "java.util.concurrent.TimeoutException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].execute(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 213
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.AbstractEventExecutorGroup].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[java.util.zip.Inflater$InflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$3].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[java.util.concurrent.CompletableFuture$Completion].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[java.util.zip.Deflater$DeflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[java.util.concurrent.ThreadPoolExecutor$Worker].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[java.util.zip.ZipFile$CleanableResource].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[java.lang.invoke.MethodHandleNatives$CallSiteContext].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor$2].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[java.util.concurrent.ForkJoinWorkerThread].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[java.lang.ref.Finalizer$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$2].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[java.lang.ref.Finalizer$FinalizerThread].run()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 7
    ICount: 5
    EdgeCount: 191
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:211,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].access$000(io.netty.util.concurrent.NonStickyEventExecutorGroup,io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 4
    returnType: "io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.NonStickyEventExecutorGroup"
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].newExecutor(io.netty.util.concurrent.EventExecutor)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup:41,1"
      Dst: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].newExecutor(io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.GroupsConverter].toOpenSsl(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.GroupsConverter"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap:io.netty.util.collection.CharCollections$EmptyMap:io.netty.util.collection.IntCollections$EmptyMap:io.netty.util.collection.LongCollections$EmptyMap:io.netty.util.collection.ShortCollections$EmptyMap:java.security.Provider:java.util.AbstractMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.LinkedHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 7
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.GroupsConverter:43"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.GroupsConverter:46"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.GroupsConverter:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.GroupsConverter:42,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.GroupsConverter].<init>()"
    functionSourceFile: "io.netty.handler.ssl.GroupsConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.GroupsConverter:49,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.Conscrypt].isAvailable()"
    functionSourceFile: "io.netty.handler.ssl.Conscrypt"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.Conscrypt:58"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.Conscrypt:57"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.Conscrypt].isEngineSupported(javax.net.ssl.SSLEngine)"
    functionSourceFile: "io.netty.handler.ssl.Conscrypt"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].booleanValue()"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 20
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.Conscrypt:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.Conscrypt:66"
        BranchSideFuncs:
        - "booleanValue()"
        - "invoke(java.lang.Object,java.lang.Object[])"
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.ssl.Conscrypt:65"
        BranchSideFuncs:
        - "booleanValue()"
        - "invoke(java.lang.Object,java.lang.Object[])"
    - Branch String: "io.netty.handler.ssl.Conscrypt:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.Conscrypt:66"
        BranchSideFuncs:
        - "booleanValue()"
        - "invoke(java.lang.Object,java.lang.Object[])"
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.ssl.Conscrypt:65"
        BranchSideFuncs:
        - "booleanValue()"
        - "invoke(java.lang.Object,java.lang.Object[])"
    Callsites:
    - Src: "io.netty.handler.ssl.Conscrypt:66,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.Conscrypt:66,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.handler.ssl.Conscrypt:70,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.Conscrypt].<init>()"
    functionSourceFile: "io.netty.handler.ssl.Conscrypt"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.Conscrypt:74,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].<init>(io.netty.channel.udt.UdtChannel,com.barchart.udt.nio.ChannelUDT,boolean)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.udt.UdtChannel"
    - "com.barchart.udt.nio.ChannelUDT"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].<init>(io.netty.channel.udt.UdtChannel,com.barchart.udt.nio.ChannelUDT,boolean)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].apply(com.barchart.udt.nio.ChannelUDT)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.udt.DefaultUdtServerChannelConfig:44"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtServerChannelConfig:47"
        BranchSideFuncs:
        - "apply(com.barchart.udt.nio.ChannelUDT)"
      - BranchSide: "io.netty.channel.udt.DefaultUdtServerChannelConfig:46"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:43,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].<init>(io.netty.channel.udt.UdtChannel,com.barchart.udt.nio.ChannelUDT,boolean)"
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:45,1"
      Dst: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].apply(com.barchart.udt.nio.ChannelUDT)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].apply(com.barchart.udt.nio.ChannelUDT)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.barchart.udt.nio.ChannelUDT"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].getBacklog()"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 66
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].getBacklog()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 5
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.udt.DefaultUdtServerChannelConfig:62"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtServerChannelConfig:65"
        BranchSideFuncs:
        - "valueOf(int)"
        - "getBacklog()"
      - BranchSide: "io.netty.channel.udt.DefaultUdtServerChannelConfig:64"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:63,1"
      Dst: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].getBacklog()"
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:63,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:65,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:70,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].getOptions()"
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:70,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:130,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:130,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setBacklog(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 88
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setBacklog(int)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.udt.DefaultUdtServerChannelConfig:82"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtServerChannelConfig:85"
        BranchSideFuncs:
        - "intValue()"
        - "setBacklog(int)"
      - BranchSide: "io.netty.channel.udt.DefaultUdtServerChannelConfig:84"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:81,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:83,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:83,1"
      Dst: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setBacklog(int)"
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:85,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 185
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setProtocolReceiveBufferSize(int)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setProtocolReceiveBufferSize(int)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setProtocolSendBufferSize(int)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setProtocolSendBufferSize(int)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setSystemReceiveBufferSize(int)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setSystemReceiveBufferSize(int)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setSystemSendBufferSize(int)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setSystemSendBufferSize(int)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setReceiveBufferSize(int)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setReceiveBufferSize(int)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setSendBufferSize(int)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setSendBufferSize(int)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setReuseAddress(boolean)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setReuseAddress(boolean)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setSoLinger(int)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setSoLinger(int)"
    - "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 3
    ICount: 55
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:165"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:167"
        BranchSideFuncs:
        - "setProtocolReceiveBufferSize(int)"
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:166"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:167"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:169"
        BranchSideFuncs:
        - "setProtocolSendBufferSize(int)"
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:168"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:169"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:171"
        BranchSideFuncs:
        - "setSystemReceiveBufferSize(int)"
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:170"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:171"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:173"
        BranchSideFuncs:
        - "setSystemSendBufferSize(int)"
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:173"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:175"
        BranchSideFuncs:
        - "setReceiveBufferSize(int)"
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:174"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:175"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:177"
        BranchSideFuncs:
        - "setSendBufferSize(int)"
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:177"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:179"
        BranchSideFuncs:
        - "booleanValue()"
        - "setReuseAddress(boolean)"
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:178"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:179"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:182"
        BranchSideFuncs:
        - "setSoLinger(int)"
        - "intValue()"
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:181"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:164,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:166,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:166,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setProtocolReceiveBufferSize(int)"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:168,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setProtocolSendBufferSize(int)"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:170,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setSystemReceiveBufferSize(int)"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:172,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setSystemSendBufferSize(int)"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:174,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:176,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setSendBufferSize(int)"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:178,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:178,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setReuseAddress(boolean)"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:180,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setSoLinger(int)"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:182,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 8
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setProtocolReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionDepth: 0
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setProtocolSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 233
    functionDepth: 0
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setSystemReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 237
    functionLinenumberEnd: 240
    functionDepth: 0
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setSystemSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 221
    functionDepth: 0
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionDepth: 0
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 203
    functionDepth: 0
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setReuseAddress(boolean)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionDepth: 0
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setSoLinger(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 209
    functionDepth: 0
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setProtocolReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionDepth: 1
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setProtocolReceiveBufferSize(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:93,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setProtocolReceiveBufferSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setProtocolSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionDepth: 1
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setProtocolSendBufferSize(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:100,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setProtocolSendBufferSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionDepth: 1
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setReceiveBufferSize(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:107,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setReceiveBufferSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setReuseAddress(boolean)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionDepth: 1
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setReuseAddress(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:113,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setReuseAddress(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionDepth: 1
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setSendBufferSize(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:119,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setSendBufferSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setSoLinger(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionDepth: 1
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setSoLinger(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:125,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setSoLinger(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setSystemReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionDepth: 1
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setSystemReceiveBufferSize(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:132,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setSystemReceiveBufferSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setSystemSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionDepth: 1
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setSystemSendBufferSize(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:139,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setSystemSendBufferSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionDepth: 3
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:145,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 248
    functionLinenumberEnd: 251
    functionDepth: 2
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:249,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionDepth: 3
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:152,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 255
    functionLinenumberEnd: 258
    functionDepth: 2
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:256,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionDepth: 3
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setWriteSpinCount(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:158,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 264
    functionDepth: 2
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:262,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionDepth: 3
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:164,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 270
    functionDepth: 2
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:268,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionDepth: 3
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:170,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 273
    functionLinenumberEnd: 276
    functionDepth: 2
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:274,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionDepth: 3
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setAutoRead(boolean)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:176,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 279
    functionLinenumberEnd: 282
    functionDepth: 2
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:280,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setAutoClose(boolean)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 184
    functionDepth: 2
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setAutoClose(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:182,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setAutoClose(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setAutoClose(boolean)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 285
    functionLinenumberEnd: 288
    functionDepth: 1
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:286,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionDepth: 4
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:188,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 291
    functionLinenumberEnd: 294
    functionDepth: 3
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:292,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 196
    functionDepth: 4
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:194,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 297
    functionLinenumberEnd: 300
    functionDepth: 3
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:298,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionDepth: 3
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:200,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 303
    functionLinenumberEnd: 306
    functionDepth: 2
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:304,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtServerChannelConfig"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionDepth: 3
    returnType: "io.netty.channel.udt.UdtServerChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtServerChannelConfig:206,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 309
    functionLinenumberEnd: 312
    functionDepth: 2
    returnType: "io.netty.channel.udt.UdtChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:310,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2:168,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 178
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException].<init>(java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].access$000(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 49
    ICount: 16
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2:177"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
        - "isDone()"
        - "tryFailure(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2:172"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2:177"
        BranchSideFuncs:
        - "flush()"
        - "access$000(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler)"
        - "fireUserEventTriggered(java.lang.Object)"
        - "close()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2:171,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2:171,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2:172,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2:173,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].access$000(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2:173,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2:174,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2:175,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].access$000(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].registerUnix()"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].newEventFd()"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionDepth: 2
    returnType: "io.netty.channel.unix.FileDescriptor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    - "[io.netty.channel.epoll.Native].eventFd()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.Native:141,1"
      Dst: "[io.netty.channel.epoll.Native].eventFd()"
    - Src: "io.netty.channel.epoll.Native:141,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].eventFd()"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].newTimerFd()"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.unix.FileDescriptor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.Native].timerFd()"
    - "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.Native:145,1"
      Dst: "[io.netty.channel.epoll.Native].timerFd()"
    - Src: "io.netty.channel.epoll.Native:145,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].timerFd()"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].isSupportingUdpSegment()"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].eventFdWrite(int,long)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].eventFdRead(int)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].newEpollCreate()"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionDepth: 2
    returnType: "io.netty.channel.unix.FileDescriptor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    - "[io.netty.channel.epoll.Native].epollCreate()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.Native:155,1"
      Dst: "[io.netty.channel.epoll.Native].epollCreate()"
    - Src: "io.netty.channel.epoll.Native:155,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].epollCreate()"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].epollWait(io.netty.channel.unix.FileDescriptor,io.netty.channel.epoll.EpollEventArray,io.netty.channel.unix.FileDescriptor,int,int)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "int"
    argCount: 5
    argTypes:
    - "io.netty.channel.unix.FileDescriptor"
    - "io.netty.channel.epoll.EpollEventArray"
    - "io.netty.channel.unix.FileDescriptor"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.Native].epollWait(io.netty.channel.unix.FileDescriptor,io.netty.channel.epoll.EpollEventArray,io.netty.channel.unix.FileDescriptor,int,int,long)"
    - "[io.netty.channel.epoll.Native].epollReady(long)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.Native:166,1"
      Dst: "[io.netty.channel.epoll.Native].epollWait(io.netty.channel.unix.FileDescriptor,io.netty.channel.epoll.EpollEventArray,io.netty.channel.unix.FileDescriptor,int,int,long)"
    - Src: "io.netty.channel.epoll.Native:167,1"
      Dst: "[io.netty.channel.epoll.Native].epollReady(long)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].epollWait(io.netty.channel.unix.FileDescriptor,io.netty.channel.epoll.EpollEventArray,io.netty.channel.unix.FileDescriptor,int,int,long)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 189
    functionDepth: 5
    returnType: "long"
    argCount: 6
    argTypes:
    - "io.netty.channel.unix.FileDescriptor"
    - "io.netty.channel.epoll.EpollEventArray"
    - "io.netty.channel.unix.FileDescriptor"
    - "int"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.Native].epollWait(io.netty.channel.unix.FileDescriptor,io.netty.channel.epoll.EpollEventArray,int)"
    - "[io.netty.channel.epoll.Native].epollWait0(int,long,int,int,int,int,long)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.EpollEventArray].length()"
    - "[io.netty.channel.epoll.EpollEventArray].memoryAddress()"
    - "[io.netty.channel.epoll.Native].epollReady(long)"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    functionUses: 2
    ICount: 25
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.Native:172"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Native:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.Native:172"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Native:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.Native:177"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Native:181"
        BranchSideFuncs:
        - "epollReady(long)"
        - "intValue()"
        - "memoryAddress()"
        - "epollWait0(int,long,int,int,int,int,long)"
        - "length()"
    - Branch String: "io.netty.channel.epoll.Native:185"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Native:188"
        BranchSideFuncs:
        - "newIOException(java.lang.String,int)"
      - BranchSide: "io.netty.channel.epoll.Native:187"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.Native:175,1"
      Dst: "[io.netty.channel.epoll.Native].epollWait(io.netty.channel.unix.FileDescriptor,io.netty.channel.epoll.EpollEventArray,int)"
    - Src: "io.netty.channel.epoll.Native:182,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.Native:182,1"
      Dst: "[io.netty.channel.epoll.EpollEventArray].memoryAddress()"
    - Src: "io.netty.channel.epoll.Native:182,1"
      Dst: "[io.netty.channel.epoll.EpollEventArray].length()"
    - Src: "io.netty.channel.epoll.Native:182,1"
      Dst: "[io.netty.channel.epoll.Native].epollWait0(int,long,int,int,int,int,long)"
    - Src: "io.netty.channel.epoll.Native:184,1"
      Dst: "[io.netty.channel.epoll.Native].epollReady(long)"
    - Src: "io.netty.channel.epoll.Native:186,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.epoll.Native].epollWait(io.netty.channel.unix.FileDescriptor,io.netty.channel.epoll.EpollEventArray,int)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 214
    functionDepth: 4
    returnType: "int"
    argCount: 3
    argTypes:
    - "io.netty.channel.unix.FileDescriptor"
    - "io.netty.channel.epoll.EpollEventArray"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.Native].epollWait(int,long,int,int)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.EpollEventArray].length()"
    - "[io.netty.channel.epoll.EpollEventArray].memoryAddress()"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    functionUses: 3
    ICount: 11
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.Native:210"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Native:213"
        BranchSideFuncs:
        - "newIOException(java.lang.String,int)"
      - BranchSide: "io.netty.channel.epoll.Native:212"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.Native:209,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.Native:209,1"
      Dst: "[io.netty.channel.epoll.EpollEventArray].memoryAddress()"
    - Src: "io.netty.channel.epoll.Native:209,1"
      Dst: "[io.netty.channel.epoll.EpollEventArray].length()"
    - Src: "io.netty.channel.epoll.Native:209,1"
      Dst: "[io.netty.channel.epoll.Native].epollWait(int,long,int,int)"
    - Src: "io.netty.channel.epoll.Native:211,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventArray].memoryAddress()"
    functionSourceFile: "io.netty.channel.epoll.EpollEventArray"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventArray].length()"
    functionSourceFile: "io.netty.channel.epoll.EpollEventArray"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].epollWait(int,long,int,int)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].epollWait0(int,long,int,int,int,int,long)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 7
    argTypes:
    - "int"
    - "long"
    - "int"
    - "int"
    - "int"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].epollReady(long)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].epollTimerWasUsed(long)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.Native:198"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Native:197"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.Native].epollWait(io.netty.channel.unix.FileDescriptor,io.netty.channel.epoll.EpollEventArray,boolean)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "io.netty.channel.unix.FileDescriptor"
    - "io.netty.channel.epoll.EpollEventArray"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.Native].epollWait(io.netty.channel.unix.FileDescriptor,io.netty.channel.epoll.EpollEventArray,int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.Native:202"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Native:201"
        BranchSideFuncs:
        - "epollWait(io.netty.channel.unix.FileDescriptor,io.netty.channel.epoll.EpollEventArray,int)"
    Callsites:
    - Src: "io.netty.channel.epoll.Native:202,1"
      Dst: "[io.netty.channel.epoll.Native].epollWait(io.netty.channel.unix.FileDescriptor,io.netty.channel.epoll.EpollEventArray,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.Native].epollBusyWait(io.netty.channel.unix.FileDescriptor,io.netty.channel.epoll.EpollEventArray)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 227
    functionDepth: 4
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.channel.unix.FileDescriptor"
    - "io.netty.channel.epoll.EpollEventArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.Native].epollBusyWait0(int,long,int)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.EpollEventArray].length()"
    - "[io.netty.channel.epoll.EpollEventArray].memoryAddress()"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.Native:223"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Native:226"
        BranchSideFuncs:
        - "newIOException(java.lang.String,int)"
      - BranchSide: "io.netty.channel.epoll.Native:225"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.Native:222,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.Native:222,1"
      Dst: "[io.netty.channel.epoll.EpollEventArray].memoryAddress()"
    - Src: "io.netty.channel.epoll.Native:222,1"
      Dst: "[io.netty.channel.epoll.EpollEventArray].length()"
    - Src: "io.netty.channel.epoll.Native:222,1"
      Dst: "[io.netty.channel.epoll.Native].epollBusyWait0(int,long,int)"
    - Src: "io.netty.channel.epoll.Native:224,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].epollBusyWait0(int,long,int)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].epollCtlAdd(int,int,int)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: 234
    functionLinenumberEnd: 240
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.Native].epollCtlAdd0(int,int,int)"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.Native:236"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Native:239"
        BranchSideFuncs:
        - "newIOException(java.lang.String,int)"
      - BranchSide: "io.netty.channel.epoll.Native:238"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.Native:235,1"
      Dst: "[io.netty.channel.epoll.Native].epollCtlAdd0(int,int,int)"
    - Src: "io.netty.channel.epoll.Native:237,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].epollCtlAdd0(int,int,int)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].epollCtlMod(int,int,int)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: 242
    functionLinenumberEnd: 248
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.Native].epollCtlMod0(int,int,int)"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.Native:244"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Native:247"
        BranchSideFuncs:
        - "newIOException(java.lang.String,int)"
      - BranchSide: "io.netty.channel.epoll.Native:246"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.Native:243,1"
      Dst: "[io.netty.channel.epoll.Native].epollCtlMod0(int,int,int)"
    - Src: "io.netty.channel.epoll.Native:245,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].epollCtlMod0(int,int,int)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].epollCtlDel(int,int)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: 250
    functionLinenumberEnd: 256
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.Native].epollCtlDel0(int,int)"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.Native:252"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Native:255"
        BranchSideFuncs:
        - "newIOException(java.lang.String,int)"
      - BranchSide: "io.netty.channel.epoll.Native:254"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.Native:251,1"
      Dst: "[io.netty.channel.epoll.Native].epollCtlDel0(int,int)"
    - Src: "io.netty.channel.epoll.Native:253,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].epollCtlDel0(int,int)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].splice(int,long,int,long,long)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: 259
    functionLinenumberEnd: 265
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "int"
    - "long"
    - "int"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.Native].splice0(int,long,int,long,long)"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.Native:261"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Native:264"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.Native:263"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.epoll.Native:260,1"
      Dst: "[io.netty.channel.epoll.Native].splice0(int,long,int,long,long)"
    - Src: "io.netty.channel.epoll.Native:264,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].splice0(int,long,int,long,long)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "int"
    - "long"
    - "int"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].sendmmsg(int,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isIPv6Preferred()"
    - "[io.netty.channel.epoll.Native].sendmmsg(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.Native:272,1"
      Dst: "[io.netty.channel.unix.Socket].isIPv6Preferred()"
    - Src: "io.netty.channel.epoll.Native:272,1"
      Dst: "[io.netty.channel.epoll.Native].sendmmsg(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].isIPv6Preferred()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].sendmmsg(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 282
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "int"
    - "boolean"
    - "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.Native].sendmmsg0(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.Native:278"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Native:281"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.Native:280"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.epoll.Native:277,1"
      Dst: "[io.netty.channel.epoll.Native].sendmmsg0(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    - Src: "io.netty.channel.epoll.Native:281,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].sendmmsg0(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "int"
    - "boolean"
    - "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].recvmmsg(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: 288
    functionLinenumberEnd: 294
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "int"
    - "boolean"
    - "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.Native].recvmmsg0(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.Native:290"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Native:293"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.Native:292"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.epoll.Native:289,1"
      Dst: "[io.netty.channel.epoll.Native].recvmmsg0(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    - Src: "io.netty.channel.epoll.Native:293,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].recvmmsg0(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "int"
    - "boolean"
    - "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].recvmsg(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: 299
    functionLinenumberEnd: 305
    functionDepth: 3
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "boolean"
    - "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.Native].recvmsg0(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket)"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.Native:301"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Native:304"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.Native:303"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.epoll.Native:300,1"
      Dst: "[io.netty.channel.epoll.Native].recvmsg0(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket)"
    - Src: "io.netty.channel.epoll.Native:304,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].recvmsg0(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket)"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "boolean"
    - "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].sizeofEpollEvent()"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].offsetofEpollData()"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.Native].loadNativeLibrary()"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: 314
    functionLinenumberEnd: 334
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].normalizedOs()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.util.internal.PlatformDependent].normalizedArch()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.PlatformDependent].getClassLoader(java.lang.Class)"
    - "[io.netty.util.internal.NativeLibraryLoader].load(java.lang.String,java.lang.ClassLoader)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 26
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.Native:316"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Native:320"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.epoll.Native:319"
        BranchSideFuncs:
        - "append(char)"
        - "addSuppressed(java.lang.Throwable,java.lang.Throwable)"
        - "<init>()"
        - "normalizedArch()"
        - "append(java.lang.String)"
        - "toString()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "getClassLoader(java.lang.Class)"
        - "load(java.lang.String,java.lang.ClassLoader)"
    Callsites:
    - Src: "io.netty.channel.epoll.Native:315,1"
      Dst: "[io.netty.util.internal.PlatformDependent].normalizedOs()"
    - Src: "io.netty.channel.epoll.Native:316,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.channel.epoll.Native:317,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.channel.epoll.Native:320,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.epoll.Native:320,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.epoll.Native:320,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.channel.epoll.Native:320,1"
      Dst: "[io.netty.util.internal.PlatformDependent].normalizedArch()"
    - Src: "io.netty.channel.epoll.Native:320,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.epoll.Native:321,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getClassLoader(java.lang.Class)"
    - Src: "io.netty.channel.epoll.Native:323,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].load(java.lang.String,java.lang.ClassLoader)"
    - Src: "io.netty.channel.epoll.Native:327,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.epoll.Native:329,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].<init>()"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.Native:335,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Native].access$000()"
    functionSourceFile: "io.netty.channel.epoll.Native"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.Native].registerUnix()"
    functionUses: 1
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.Native:52,1"
      Dst: "[io.netty.channel.epoll.Native].registerUnix()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].<init>(io.netty.channel.sctp.nio.NioSctpServerChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel$2"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 188
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.sctp.nio.NioSctpServerChannel"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel$2:187,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel$2"
    linkageType: ""
    functionLinenumber: 189
    functionLinenumberEnd: 192
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 50
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel$2:190,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 195
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].javaChannel()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].<init>(io.netty.channel.sctp.nio.NioSctpServerChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[com.sun.nio.sctp.SctpServerChannel].unbindAddress(java.net.InetAddress)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 18
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpServerChannel:179"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpServerChannel:186"
        BranchSideFuncs:
        - "run()"
        - "eventLoop()"
        - "<init>(io.netty.channel.sctp.nio.NioSctpServerChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
        - "execute(java.lang.Runnable)"
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:179,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:179,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:181,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:181,1"
      Dst: "[com.sun.nio.sctp.SctpServerChannel].unbindAddress(java.net.InetAddress)"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:182,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:184,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:187,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].<init>(io.netty.channel.sctp.nio.NioSctpServerChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:187,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].javaChannel()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "com.sun.nio.sctp.SctpServerChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].javaChannel()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:111,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].javaChannel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.LastMemcacheContent$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.memcache.LastMemcacheContent$1"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.LastMemcacheContent$1:33,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.LastMemcacheContent$1].copy()"
    functionSourceFile: "io.netty.handler.codec.memcache.LastMemcacheContent$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.LastMemcacheContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.LastMemcacheContent$1].duplicate()"
    functionSourceFile: "io.netty.handler.codec.memcache.LastMemcacheContent$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.LastMemcacheContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.LastMemcacheContent$1].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.memcache.LastMemcacheContent$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.LastMemcacheContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.LastMemcacheContent$1].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.LastMemcacheContent$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.memcache.LastMemcacheContent"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.LastMemcacheContent$1:52,1"
      Dst: "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent:34,1"
      Dst: "[io.netty.handler.codec.memcache.DefaultMemcacheContent].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.DefaultMemcacheContent].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.DefaultMemcacheContent"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.AbstractMemcacheObject].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.DefaultMemcacheContent:34,1"
      Dst: "[io.netty.handler.codec.memcache.AbstractMemcacheObject].<init>()"
    - Src: "io.netty.handler.codec.memcache.DefaultMemcacheContent:35,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.LastMemcacheContent$1].retain(int)"
    functionSourceFile: "io.netty.handler.codec.memcache.LastMemcacheContent$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.LastMemcacheContent"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.LastMemcacheContent$1].retain()"
    functionSourceFile: "io.netty.handler.codec.memcache.LastMemcacheContent$1"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.LastMemcacheContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.LastMemcacheContent$1].touch()"
    functionSourceFile: "io.netty.handler.codec.memcache.LastMemcacheContent$1"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.LastMemcacheContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.LastMemcacheContent$1].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.memcache.LastMemcacheContent$1"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.LastMemcacheContent"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.LastMemcacheContent$1].content()"
    functionSourceFile: "io.netty.handler.codec.memcache.LastMemcacheContent$1"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.LastMemcacheContent$1].decoderResult()"
    functionSourceFile: "io.netty.handler.codec.memcache.LastMemcacheContent$1"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "io.netty.handler.codec.DecoderResult"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.LastMemcacheContent$1].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    functionSourceFile: "io.netty.handler.codec.memcache.LastMemcacheContent$1"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.DecoderResult"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.LastMemcacheContent$1:87,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.LastMemcacheContent$1].refCnt()"
    functionSourceFile: "io.netty.handler.codec.memcache.LastMemcacheContent$1"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.LastMemcacheContent$1].release()"
    functionSourceFile: "io.netty.handler.codec.memcache.LastMemcacheContent$1"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.LastMemcacheContent$1].release(int)"
    functionSourceFile: "io.netty.handler.codec.memcache.LastMemcacheContent$1"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.ProxyConnectionEvent].<init>(java.lang.String,java.lang.String,java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.handler.proxy.ProxyConnectionEvent"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 19
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.ProxyConnectionEvent:36,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.proxy.ProxyConnectionEvent:37,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.ProxyConnectionEvent].protocol()"
    functionSourceFile: "io.netty.handler.proxy.ProxyConnectionEvent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.ProxyConnectionEvent].authScheme()"
    functionSourceFile: "io.netty.handler.proxy.ProxyConnectionEvent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.ProxyConnectionEvent].proxyAddress()"
    functionSourceFile: "io.netty.handler.proxy.ProxyConnectionEvent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.ProxyConnectionEvent].destinationAddress()"
    functionSourceFile: "io.netty.handler.proxy.ProxyConnectionEvent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.ProxyConnectionEvent].toString()"
    functionSourceFile: "io.netty.handler.proxy.ProxyConnectionEvent"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 92
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 25
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.proxy.ProxyConnectionEvent:75"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.ProxyConnectionEvent:79"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.proxy.ProxyConnectionEvent:78"
        BranchSideFuncs:
        - "<init>(int)"
        - "append(char)"
        - "simpleClassName(java.lang.Object)"
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
        - "toString()"
    Callsites:
    - Src: "io.netty.handler.proxy.ProxyConnectionEvent:79,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.proxy.ProxyConnectionEvent:80,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.proxy.ProxyConnectionEvent:80,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.proxy.ProxyConnectionEvent:81,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.proxy.ProxyConnectionEvent:86,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.proxy.ProxyConnectionEvent:91,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].<init>(java.util.Queue,int)"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Queue"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].add(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].offer(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 20
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.MaxCapacityQueue:33"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.MaxCapacityQueue:36"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.MaxCapacityQueue:35"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:33,1"
      Dst: "[io.netty.handler.codec.http2.MaxCapacityQueue].offer(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:36,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].offer(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].size()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].size()"
    - "[java.util.concurrent.LinkedBlockingQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.DefaultPriorityQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue:java.util.ArrayDeque:java.util.LinkedList:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue].offer(java.lang.Object)"
    - "[java.util.Collection].size()"
    - "[java.util.Queue].offer(java.lang.Object)"
    functionUses: 15
    ICount: 10
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.MaxCapacityQueue:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.MaxCapacityQueue:44"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.MaxCapacityQueue:43"
        BranchSideFuncs:
        - "offer(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:41,1"
      Dst: "[java.util.Collection].size()"
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:44,1"
      Dst: "[java.util.Queue].offer(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].remove()"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].remove()"
    - "[io.netty.util.internal.EmptyPriorityQueue].remove()"
    - "[java.util.AbstractQueue:java.util.ArrayDeque:java.util.LinkedList:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.LinkedBlockingDeque].remove()"
    - "[java.util.Queue].remove()"
    functionUses: 7
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:49,1"
      Dst: "[java.util.Queue].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue:java.util.ArrayDeque:java.util.LinkedList:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.Queue].poll()"
    functionUses: 39
    ICount: 4
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:54,1"
      Dst: "[java.util.Queue].poll()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].element()"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Queue].element()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:59,1"
      Dst: "[java.util.Queue].element()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].peek()"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].peek()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].peek()"
    - "[io.netty.util.internal.DefaultPriorityQueue:io.netty.util.internal.EmptyPriorityQueue:java.util.ArrayDeque:java.util.LinkedList:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue].peek()"
    - "[java.util.Queue].peek()"
    functionUses: 5
    ICount: 4
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:64,1"
      Dst: "[java.util.Queue].peek()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].size()"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].size()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].size()"
    - "[io.netty.util.internal.DefaultPriorityQueue:io.netty.util.internal.EmptyPriorityQueue:java.util.ArrayDeque:java.util.LinkedList:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue].size()"
    - "[java.util.Collection].size()"
    functionUses: 7
    ICount: 4
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:69,1"
      Dst: "[java.util.Collection].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].isEmpty()"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].isEmpty()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].isEmpty()"
    - "[io.netty.util.internal.DefaultPriorityQueue:io.netty.util.internal.EmptyPriorityQueue:java.util.AbstractCollection:java.util.ArrayDeque:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue].isEmpty()"
    - "[java.util.Collection].isEmpty()"
    functionUses: 16
    ICount: 4
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:74,1"
      Dst: "[java.util.Collection].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].contains(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].contains(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:79,1"
      Dst: "[java.util.Collection].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[java.util.AbstractSequentialList:java.util.ArrayDeque:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[java.util.Collection].iterator()"
    functionUses: 57
    ICount: 4
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:84,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].toArray()"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].toArray()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:89,1"
      Dst: "[java.util.Collection].toArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].toArray(java.lang.Object[])"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].toArray(java.lang.Object[])"
    - "[io.netty.util.internal.DefaultPriorityQueue].toArray(java.lang.Object[])"
    - "[io.netty.util.internal.EmptyPriorityQueue:java.util.AbstractCollection:java.util.ArrayDeque:java.util.LinkedList:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue].toArray(java.lang.Object[])"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:94,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].remove(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.DefaultPriorityQueue].remove(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].remove(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue:java.util.AbstractCollection:java.util.ArrayDeque:java.util.LinkedList:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue].remove(java.lang.Object)"
    - "[java.util.Collection].remove(java.lang.Object)"
    functionUses: 5
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:99,1"
      Dst: "[java.util.Collection].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].containsAll(java.util.Collection<?>)"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].containsAll(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:104,1"
      Dst: "[java.util.Collection].containsAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].addAll(java.util.Collection<?\
      \ extends E>)"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection<? extends E>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].size()"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].addAll(java.util.Collection)"
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.MaxCapacityQueue:109"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.MaxCapacityQueue:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.MaxCapacityQueue:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:109,1"
      Dst: "[io.netty.handler.codec.http2.MaxCapacityQueue].size()"
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:109,1"
      Dst: "[java.util.Collection].size()"
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:110,1"
      Dst: "[java.util.Collection].addAll(java.util.Collection)"
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:112,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].removeAll(java.util.Collection<?>)"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].removeAll(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:117,1"
      Dst: "[java.util.Collection].removeAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].retainAll(java.util.Collection<?>)"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].retainAll(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:122,1"
      Dst: "[java.util.Collection].retainAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.MaxCapacityQueue].clear()"
    functionSourceFile: "io.netty.handler.codec.http2.MaxCapacityQueue"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].clear()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].clear()"
    - "[io.netty.util.internal.DefaultPriorityQueue].clear()"
    - "[io.netty.util.internal.EmptyPriorityQueue:java.util.AbstractQueue:java.util.ArrayDeque:java.util.LinkedList:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue].clear()"
    - "[java.util.Collection].clear()"
    functionUses: 9
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.MaxCapacityQueue:127,1"
      Dst: "[java.util.Collection].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedNioStream].<init>(java.nio.channels.ReadableByteChannel)"
    functionSourceFile: "io.netty.handler.stream.ChunkedNioStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.ReadableByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.stream.ChunkedNioStream].<init>(java.nio.channels.ReadableByteChannel,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedNioStream:49,1"
      Dst: "[io.netty.handler.stream.ChunkedNioStream].<init>(java.nio.channels.ReadableByteChannel,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedNioStream].<init>(java.nio.channels.ReadableByteChannel,int)"
    functionSourceFile: "io.netty.handler.stream.ChunkedNioStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.ReadableByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[java.nio.ByteBuffer].allocate(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedNioStream:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.stream.ChunkedNioStream:59,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.stream.ChunkedNioStream:60,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.handler.stream.ChunkedNioStream:61,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedNioStream].transferredBytes()"
    functionSourceFile: "io.netty.handler.stream.ChunkedNioStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedNioStream].isEndOfInput()"
    functionSourceFile: "io.netty.handler.stream.ChunkedNioStream"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].isOpen()"
    - "[sun.nio.ch.FileChannelImpl].read(java.nio.ByteBuffer)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.channels.Channel].isOpen()"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    functionUses: 10
    ICount: 19
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.stream.ChunkedNioStream:73"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedNioStream:76"
        BranchSideFuncs:
        - "isOpen()"
    - Branch String: "io.netty.handler.stream.ChunkedNioStream:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedNioStream:86"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedNioStream:80"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedNioStream:83"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedNioStream:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedNioStream:73,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.handler.stream.ChunkedNioStream:77,1"
      Dst: "[java.nio.channels.Channel].isOpen()"
    - Src: "io.netty.handler.stream.ChunkedNioStream:79,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedNioStream].close()"
    functionSourceFile: "io.netty.handler.stream.ChunkedNioStream"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    - "[java.nio.channels.Channel].close()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedNioStream:92,1"
      Dst: "[java.nio.channels.Channel].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedNioStream].readChunk(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.stream.ChunkedNioStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.handler.stream.ChunkedNioStream].readChunk(io.netty.buffer.ByteBufAllocator)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedNioStream:98,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.stream.ChunkedNioStream:98,1"
      Dst: "[io.netty.handler.stream.ChunkedNioStream].readChunk(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedNioStream].readChunk(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.handler.stream.ChunkedNioStream"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 132
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.stream.ChunkedNioStream].isEndOfInput()"
    - "[sun.nio.ch.FileChannelImpl].read(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[java.nio.Buffer].position()"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    - "[java.nio.Buffer].remaining()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].clear()"
    functionUses: 4
    ICount: 39
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "io.netty.handler.stream.ChunkedNioStream:103"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedNioStream:107"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedNioStream:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedNioStream:110"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedNioStream:113"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedNioStream:112"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedNioStream:115"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedNioStream:118"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.stream.ChunkedNioStream:117"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.stream.ChunkedNioStream:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedNioStream:119"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.stream.ChunkedNioStream:118"
        BranchSideFuncs:
        - "writeBytes(java.nio.ByteBuffer)"
        - "buffer(int)"
    - Branch String: "io.netty.handler.stream.ChunkedNioStream:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.stream.ChunkedNioStream:131"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.stream.ChunkedNioStream:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedNioStream:103,1"
      Dst: "[io.netty.handler.stream.ChunkedNioStream].isEndOfInput()"
    - Src: "io.netty.handler.stream.ChunkedNioStream:107,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.handler.stream.ChunkedNioStream:109,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.stream.ChunkedNioStream:119,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "io.netty.handler.stream.ChunkedNioStream:121,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.handler.stream.ChunkedNioStream:121,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.stream.ChunkedNioStream:123,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.stream.ChunkedNioStream:124,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.handler.stream.ChunkedNioStream:129,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.stream.ChunkedNioStream].length()"
    functionSourceFile: "io.netty.handler.stream.ChunkedNioStream"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedNioStream].progress()"
    functionSourceFile: "io.netty.handler.stream.ChunkedNioStream"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    functionSourceFile: "io.netty.channel.sctp.oio.OioSctpServerChannel$1"
    linkageType: ""
    functionLinenumber: 239
    functionLinenumberEnd: 242
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 50
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.oio.OioSctpServerChannel$1:240,1"
      Dst: "[io.netty.channel.sctp.oio.OioSctpServerChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe].<init>(io.netty.channel.kqueue.KQueueDomainSocketChannel)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.KQueueDomainSocketChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe].<init>(io.netty.channel.kqueue.AbstractKQueueStreamChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:126,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe].<init>(io.netty.channel.kqueue.AbstractKQueueStreamChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe].readReady(io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 140
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].getReadMode()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe].readReady(io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe].readReadyFd()"
    - "[java.lang.Error].<init>()"
    functionUses: 3
    ICount: 17
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:129,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:129,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].getReadMode()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:129,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:131,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$KQueueStreamUnsafe].readReady(io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:134,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe].readReadyFd()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:137,1"
      Dst: "[java.lang.Error].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 63
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].getReadMode()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketReadMode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe].readReadyFd()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 186
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isInputShutdown()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].clearReadFilter0()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReadyBefore()"
    - "[io.netty.channel.unix.Socket].recvFd()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].lastBytesRead(int)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReadyFinally(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 1
    ICount: 48
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:142"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:146"
        BranchSideFuncs:
        - "clearReadFilter0()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:145"
        BranchSideFuncs:
        - "config()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "recvBufAllocHandle()"
        - "pipeline()"
        - "readReadyBefore()"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:174"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:158"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "continueReading()"
        - "readReadyFinally(io.netty.channel.ChannelConfig)"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "close(io.netty.channel.ChannelPromise)"
        - "config()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "voidPromise()"
        - "recvBufAllocHandle()"
        - "recvFd()"
        - "<init>(int)"
        - "pipeline()"
        - "fireChannelRead(java.lang.Object)"
        - "fireChannelReadComplete()"
        - "readReadyBefore()"
        - "incMessagesRead(int)"
        - "readComplete()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:157"
        BranchSideFuncs:
        - "recvFd()"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:142,1"
      Dst: "[io.netty.channel.unix.Socket].isInputShutdown()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:143,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].clearReadFilter0()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:146,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:147,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].recvBufAllocHandle()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:149,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:150,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].reset(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:151,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReadyBefore()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:158,1"
      Dst: "[io.netty.channel.unix.Socket].recvFd()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:161,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].lastBytesRead(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:165,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:165,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].close(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:183,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReadyFinally(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:169,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:171,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:171,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:174,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:176,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:177,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:181,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Socket].isInputShutdown()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].isInputShutdown(int)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:116,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].isInputShutdown(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].isInputShutdown(int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.FileDescriptor:213"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:212"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Socket].recvFd()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 309
    functionLinenumberEnd: 323
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].recvFd(int)"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:311"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:314"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:313"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Socket:314"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:318"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:317"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Socket:318"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:319"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Socket:318"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:321"
        BranchSideFuncs:
        - "newIOException(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:310,1"
      Dst: "[io.netty.channel.unix.Socket].recvFd(int)"
    - Src: "io.netty.channel.unix.Socket:322,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Socket].recvFd(int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe].<init>(io.netty.channel.kqueue.KQueueDomainSocketChannel,io.netty.channel.kqueue.KQueueDomainSocketChannel$1)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.kqueue.KQueueDomainSocketChannel"
    - "io.netty.channel.kqueue.KQueueDomainSocketChannel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe].<init>(io.netty.channel.kqueue.KQueueDomainSocketChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe:126,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe].<init>(io.netty.channel.kqueue.KQueueDomainSocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].<init>(int,int,int,int,byte[])"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsOptPseudoRrRecord].<init>(int,int,int)"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].verifyAddress(byte[])"
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:43,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsOptPseudoRrRecord].<init>(int,int,int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:45,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].verifyAddress(byte[])"
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:45,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].<init>(int,int,byte[])"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].<init>(int,int,int,int,byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:56,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].<init>(int,int,int,int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].<init>(int,io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.InternetProtocolFamily].localhost()"
    - "[java.net.InetAddress].getAddress()"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].<init>(int,int,int,int,byte[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:67,1"
      Dst: "[io.netty.channel.socket.InternetProtocolFamily].localhost()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:67,1"
      Dst: "[java.net.InetAddress].getAddress()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:67,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].<init>(int,int,int,int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].verifyAddress(byte[])"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:71"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:74"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:74,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].sourcePrefixLength()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].scopePrefixLength()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].address()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 5
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:89,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].toString()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 103
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsOptPseudoRrRecord].toStringBuilder()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Arrays].toString(byte[])"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].sourcePrefixLength()"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].scopePrefixLength()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 21
    ICount: 18
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:94,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsOptPseudoRrRecord].toStringBuilder()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:95,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:95,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:96,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:97,1"
      Dst: "[java.util.Arrays].toString(byte[])"
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:99,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].sourcePrefixLength()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:99,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:101,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].scopePrefixLength()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:102,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsOptEcsRecord:102,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ByteToMessageCodec$Encoder].<init>(io.netty.handler.codec.ByteToMessageCodec,boolean)"
    functionSourceFile: "io.netty.handler.codec.ByteToMessageCodec$Encoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.ByteToMessageCodec"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToByteEncoder].<init>(boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ByteToMessageCodec$Encoder:162,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ByteToMessageCodec$Encoder].acceptOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.ByteToMessageCodec$Encoder"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageCodec].acceptOutboundMessage(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ByteToMessageCodec$Encoder:167,1"
      Dst: "[io.netty.handler.codec.ByteToMessageCodec].acceptOutboundMessage(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ByteToMessageCodec$Encoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.ByteToMessageCodec$Encoder"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageCodec].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ByteToMessageCodec$Encoder:172,1"
      Dst: "[io.netty.handler.codec.ByteToMessageCodec].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMessageUtil].appendFullRequest(java.lang.StringBuilder,io.netty.handler.codec.http.FullHttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMessageUtil"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 60
    functionDepth: 2
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.handler.codec.http.FullHttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMessageUtil].appendFullCommon(java.lang.StringBuilder,io.netty.handler.codec.http.FullHttpMessage)"
    - "[io.netty.handler.codec.http.HttpMessageUtil].appendInitialLine(java.lang.StringBuilder,io.netty.handler.codec.http.HttpRequest)"
    - "[io.netty.handler.codec.http.HttpMessageUtil].appendHeaders(java.lang.StringBuilder,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].trailingHeaders()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpMessageUtil].removeLastNewLine(java.lang.StringBuilder)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    functionUses: 2
    ICount: 10
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:54,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].appendFullCommon(java.lang.StringBuilder,io.netty.handler.codec.http.FullHttpMessage)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:55,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].appendInitialLine(java.lang.StringBuilder,io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:56,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:56,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].appendHeaders(java.lang.StringBuilder,io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:57,1"
      Dst: "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:58,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].removeLastNewLine(java.lang.StringBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMessageUtil].appendFullCommon(java.lang.StringBuilder,io.netty.handler.codec.http.FullHttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMessageUtil"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 82
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.handler.codec.http.FullHttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].decoderResult()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].decoderResult()"
    - "[io.netty.handler.codec.http.DefaultHttpObject].decoderResult()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage:java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest:io.netty.handler.codec.http.DefaultFullHttpResponse:io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage:java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.DecoderResultProvider].decoderResult()"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 2
    ICount: 17
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:72,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:72,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:74,1"
      Dst: "[io.netty.handler.codec.DecoderResultProvider].decoderResult()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:74,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:76,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:78,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:79,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMessageUtil].appendFullResponse(java.lang.StringBuilder,io.netty.handler.codec.http.FullHttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMessageUtil"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 69
    functionDepth: 2
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.handler.codec.http.FullHttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMessageUtil].appendFullCommon(java.lang.StringBuilder,io.netty.handler.codec.http.FullHttpMessage)"
    - "[io.netty.handler.codec.http.HttpMessageUtil].appendInitialLine(java.lang.StringBuilder,io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.HttpMessageUtil].appendHeaders(java.lang.StringBuilder,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse:io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpMessageUtil].removeLastNewLine(java.lang.StringBuilder)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    functionUses: 2
    ICount: 10
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:63,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].appendFullCommon(java.lang.StringBuilder,io.netty.handler.codec.http.FullHttpMessage)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:64,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].appendInitialLine(java.lang.StringBuilder,io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:65,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:65,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].appendHeaders(java.lang.StringBuilder,io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:66,1"
      Dst: "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:67,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].removeLastNewLine(java.lang.StringBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMessageUtil].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.HttpMessageUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMessageUtil:112,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslClientContext].<init>()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,long,long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslClientContext:47,1"
      Dst: "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,long,long)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.io.File)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslClientContext:59,1"
      Dst: "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslClientContext].<init>(javax.net.ssl.TrustManagerFactory)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.TrustManagerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslClientContext:72,1"
      Dst: "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "javax.net.ssl.TrustManagerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,long,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslClientContext:87,1"
      Dst: "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,long,long)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.lang.Iterable,io.netty.handler.ssl.ApplicationProtocolConfig,long,long)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.io.File"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.ApplicationProtocolConfig"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,long,long)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslClientContext:111,1"
      Dst: "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,long,long)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,long,long)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.io.File"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.ApplicationProtocolConfig"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,long,long)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslClientContext:136,1"
      Dst: "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,long,long)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,long,long)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 11
    argTypes:
    - "java.io.File"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.io.File"
    - "java.io.File"
    - "java.lang.String"
    - "javax.net.ssl.KeyManagerFactory"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.ApplicationProtocolConfig"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].toX509CertificatesInternal(java.io.File)"
    - "[io.netty.handler.ssl.SslContext].toPrivateKeyInternal(java.io.File,java.lang.String)"
    - "[java.security.KeyStore].getDefaultType()"
    - "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,java.lang.String[],long,long,boolean,java.lang.String,java.util.Map$Entry[])"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslClientContext:178,1"
      Dst: "[io.netty.handler.ssl.SslContext].toX509CertificatesInternal(java.io.File)"
    - Src: "io.netty.handler.ssl.OpenSslClientContext:179,1"
      Dst: "[io.netty.handler.ssl.SslContext].toPrivateKeyInternal(java.io.File,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslClientContext:181,1"
      Dst: "[java.security.KeyStore].getDefaultType()"
    - Src: "io.netty.handler.ssl.OpenSslClientContext:178,1"
      Dst: "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,java.lang.String[],long,long,boolean,java.lang.String,java.util.Map$Entry[])"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslClientContext].<init>(java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,java.lang.String[],long,long,boolean,java.lang.String,java.util.Map$Entry[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 15
    argTypes:
    - "java.security.cert.X509Certificate[]"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.security.cert.X509Certificate[]"
    - "java.security.PrivateKey"
    - "java.lang.String"
    - "javax.net.ssl.KeyManagerFactory"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.ApplicationProtocolConfig"
    - "java.lang.String[]"
    - "long"
    - "long"
    - "boolean"
    - "java.lang.String"
    - "java.util.Map$Entry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslContext].<init>(java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,int,java.security.cert.Certificate[],io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean,boolean,java.util.Map$Entry[])"
    - "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].validateKeyMaterialSupported(java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext].newSessionContext(io.netty.handler.ssl.ReferenceCountedOpenSslContext,long,io.netty.handler.ssl.OpenSslEngineMap,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String,long,long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].release()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslClientContext:201"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslClientContext:205"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslClientContext:204"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslClientContext:201"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslClientContext:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslClientContext:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslClientContext:191,1"
      Dst: "[io.netty.handler.ssl.OpenSslContext].<init>(java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,int,java.security.cert.Certificate[],io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean,boolean,java.util.Map$Entry[])"
    - Src: "io.netty.handler.ssl.OpenSslClientContext:195,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].validateKeyMaterialSupported(java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslClientContext:196,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext].newSessionContext(io.netty.handler.ssl.ReferenceCountedOpenSslContext,long,io.netty.handler.ssl.OpenSslEngineMap,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String,long,long)"
    - Src: "io.netty.handler.ssl.OpenSslClientContext:202,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].release()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslClientContext].sessionContext()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslClientContext"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionDepth: 0
    returnType: "io.netty.handler.ssl.OpenSslSessionContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelPromiseAggregator].<init>(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ChannelPromiseAggregator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseAggregator].<init>(io.netty.util.concurrent.Promise)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelPromiseAggregator:35,1"
      Dst: "[io.netty.util.concurrent.PromiseAggregator].<init>(io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].<init>(io.netty.channel.epoll.AbstractEpollStreamChannel)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$1"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.AbstractEpollStreamChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$1:65,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$1"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].flush0()"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    functionUses: 49
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$1:70,1"
      Dst: "[io.netty.channel.AbstractChannel].unsafe()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$1:70,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].flush0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspHeaders$Values].<init>()"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspHeaders$Values"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspHeaders$Values:394,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompFrame].<init>(io.netty.handler.codec.stomp.StompCommand)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.stomp.StompCommand"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].<init>(io.netty.handler.codec.stomp.StompCommand,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:31,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:31,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompFrame].<init>(io.netty.handler.codec.stomp.StompCommand,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompFrame].<init>(io.netty.handler.codec.stomp.StompCommand,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompFrame"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.stomp.StompCommand"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].<init>(io.netty.handler.codec.stomp.StompCommand,io.netty.buffer.ByteBuf,io.netty.handler.codec.stomp.DefaultStompHeaders)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:35,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompFrame].<init>(io.netty.handler.codec.stomp.StompCommand,io.netty.buffer.ByteBuf,io.netty.handler.codec.stomp.DefaultStompHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompFrame].<init>(io.netty.handler.codec.stomp.StompCommand,io.netty.buffer.ByteBuf,io.netty.handler.codec.stomp.DefaultStompHeaders)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompFrame"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.stomp.StompCommand"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.stomp.DefaultStompHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].<init>(io.netty.handler.codec.stomp.StompCommand,io.netty.handler.codec.stomp.DefaultStompHeaders)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:39,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].<init>(io.netty.handler.codec.stomp.StompCommand,io.netty.handler.codec.stomp.DefaultStompHeaders)"
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:40,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompFrame].content()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompFrame"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompFrame].copy()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "io.netty.handler.codec.stomp.StompFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:50,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:50,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompFrame].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompFrame].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.handler.codec.stomp.StompFrame"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompHeaders].copy()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].<init>(io.netty.handler.codec.stomp.StompCommand,io.netty.buffer.ByteBuf,io.netty.handler.codec.stomp.DefaultStompHeaders)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:65,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompHeaders].copy()"
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:65,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompFrame].<init>(io.netty.handler.codec.stomp.StompCommand,io.netty.buffer.ByteBuf,io.netty.handler.codec.stomp.DefaultStompHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].<init>(io.netty.handler.codec.stomp.StompCommand,io.netty.handler.codec.stomp.DefaultStompHeaders)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompHeadersSubframe"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 38
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.stomp.StompCommand"
    - "io.netty.handler.codec.stomp.DefaultStompHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.stomp.DefaultStompHeaders].<init>()"
    functionUses: 2
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.DefaultStompHeadersSubframe:36"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.DefaultStompHeadersSubframe:34"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.stomp.DefaultStompHeadersSubframe:33"
        BranchSideFuncs:
        - "<init>()"
        - "checkNotNull(java.lang.Object,java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompHeadersSubframe:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.stomp.DefaultStompHeadersSubframe:35,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.stomp.DefaultStompHeadersSubframe:36,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompHeaders].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompFrame].duplicate()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "io.netty.handler.codec.stomp.StompFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:55,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:55,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompFrame].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompFrame].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "io.netty.handler.codec.stomp.StompFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:60,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:60,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompFrame].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompFrame].refCnt()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompFrame"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.buffer.EmptyByteBuf].refCnt()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 3
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:70,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompFrame].retain()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompFrame"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "io.netty.handler.codec.stomp.StompFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 1
    ICount: 4
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:75,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompFrame].retain(int)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.stomp.StompFrame"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:81,1"
      Dst: "[io.netty.buffer.ByteBuf].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompFrame].touch()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompFrame"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "io.netty.handler.codec.stomp.StompFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.SwappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.SimpleLeakAwareByteBuf:io.netty.buffer.UnreleasableByteBuf].touch()"
    - "[io.netty.buffer.ByteBuf].touch()"
    functionUses: 1
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:87,1"
      Dst: "[io.netty.buffer.ByteBuf].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompFrame].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompFrame"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "io.netty.handler.codec.stomp.StompFrame"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.SimpleLeakAwareByteBuf:io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:93,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompFrame].release()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompFrame"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.util.ReferenceCounted].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 5
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:99,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompFrame].release(int)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompFrame"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release(int)"
    - "[io.netty.buffer.WrappedByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release(int)"
    - "[io.netty.buffer.SwappedByteBuf].release(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release(int)"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf].release(int)"
    - "[io.netty.util.ReferenceCounted].release(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:104,1"
      Dst: "[io.netty.util.ReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompFrame].toString()"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompFrame"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf:java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 20
    ICount: 17
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:109,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:112,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:112,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.stomp.DefaultStompFrame:112,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufProcessor$6].<init>()"
    functionSourceFile: "io.netty.buffer.ByteBufProcessor$6"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufProcessor$6:86,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufProcessor$6].process(byte)"
    functionSourceFile: "io.netty.buffer.ByteBufProcessor$6"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufProcessor$6:89"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufProcessor$6:88"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.redis.BulkStringHeaderRedisMessage].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 39
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.redis.RedisCodecException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage:34"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage:37"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage:33,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage:35,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage:35,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage:35,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage:35,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage:35,1"
      Dst: "[io.netty.handler.codec.redis.RedisCodecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder$DecoderState].values()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder$DecoderState"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttDecoder$DecoderState[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder$DecoderState:56,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder$DecoderState].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder$DecoderState"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttDecoder$DecoderState"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder$DecoderState:56,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder$DecoderState].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder$DecoderState"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder$DecoderState:56,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.AppendableCharSequence].<init>(int)"
    functionSourceFile: "io.netty.util.internal.AppendableCharSequence"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.AppendableCharSequence:27,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.internal.AppendableCharSequence:28,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.AppendableCharSequence].<init>(char[])"
    functionSourceFile: "io.netty.util.internal.AppendableCharSequence"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNonEmpty(char[],java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.AppendableCharSequence:31,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.internal.AppendableCharSequence:32,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(char[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.AppendableCharSequence].setLength(int)"
    functionSourceFile: "io.netty.util.internal.AppendableCharSequence"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.AppendableCharSequence:37"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:38"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:37"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.util.internal.AppendableCharSequence:37"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:40"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:39"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.AppendableCharSequence:38,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.AppendableCharSequence:38,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.AppendableCharSequence:38,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.internal.AppendableCharSequence:38,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.internal.AppendableCharSequence:38,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.AppendableCharSequence:38,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.AppendableCharSequence].length()"
    functionSourceFile: "io.netty.util.internal.AppendableCharSequence"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 106
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    functionSourceFile: "io.netty.util.internal.AppendableCharSequence"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 113
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.AppendableCharSequence:50"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:53"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.AppendableCharSequence:51,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.AppendableCharSequence].charAtUnsafe(int)"
    functionSourceFile: "io.netty.util.internal.AppendableCharSequence"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.AppendableCharSequence].subSequence(int,int)"
    functionSourceFile: "io.netty.util.internal.AppendableCharSequence"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 76
    functionDepth: 3
    returnType: "io.netty.util.internal.AppendableCharSequence"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].<init>(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.util.internal.AppendableCharSequence].<init>(char[])"
    - "[java.lang.Math:java.util.Arrays].copyOfRange(char[],int,int)"
    - "[java.util.Arrays].copyOfRange(char[],int,int)"
    functionUses: 10
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.AppendableCharSequence:69"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:74"
        BranchSideFuncs:
        - "<init>(char[])"
        - "copyOfRange(char[],int,int)"
    Callsites:
    - Src: "io.netty.util.internal.AppendableCharSequence:73,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.util.internal.AppendableCharSequence:73,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].<init>(int)"
    - Src: "io.netty.util.internal.AppendableCharSequence:75,1"
      Dst: "[java.util.Arrays].copyOfRange(char[],int,int)"
    - Src: "io.netty.util.internal.AppendableCharSequence:75,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(char[],java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ObjectUtil"
    linkageType: ""
    functionLinenumber: 236
    functionLinenumberEnd: 241
    functionDepth: 1
    returnType: "char[]"
    argCount: 2
    argTypes:
    - "char[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 16
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ObjectUtil:237"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectUtil:240"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.ObjectUtil:239"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectUtil:237,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:238,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.ObjectUtil:238,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:238,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.ObjectUtil:238,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.AppendableCharSequence].append(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.internal.AppendableCharSequence"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 2
    returnType: "io.netty.util.internal.AppendableCharSequence"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].append(java.lang.CharSequence,int,int)"
    - "[java.lang.String].length()"
    - "[io.netty.util.AsciiString:io.netty.util.internal.AppendableCharSequence:java.lang.AbstractStringBuilder:java.lang.StringBuffer:java.lang.StringBuilder:java.nio.CharBuffer].length()"
    - "[java.lang.CharSequence].length()"
    functionUses: 6
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.AppendableCharSequence:91,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.internal.AppendableCharSequence:91,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].append(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.AppendableCharSequence].append(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.util.internal.AppendableCharSequence"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 117
    functionDepth: 1
    returnType: "io.netty.util.internal.AppendableCharSequence"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[io.netty.util.AsciiString:io.netty.util.internal.AppendableCharSequence:java.lang.AbstractStringBuilder:java.lang.StringBuffer:java.lang.StringBuilder:java.nio.CharBuffer].append(java.lang.String)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.AsciiString:io.netty.util.internal.AppendableCharSequence:java.lang.AbstractStringBuilder:java.lang.StringBuffer:java.lang.StringBuilder:java.nio.CharBuffer].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].expand(char[],int,int)"
    - "[java.lang.AbstractStringBuilder:java.lang.StringBuilder:java.lang.System:java.nio.CharBuffer].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 2
    ICount: 52
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.util.internal.AppendableCharSequence:96"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:100"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "length()"
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:99"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.AppendableCharSequence:101"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:104"
        BranchSideFuncs:
        - "expand(char[],int,int)"
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:103"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.AppendableCharSequence:104"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.AppendableCharSequence:112"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.AppendableCharSequence:96,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.internal.AppendableCharSequence:97,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.AppendableCharSequence:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.AppendableCharSequence:97,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.internal.AppendableCharSequence:98,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.AppendableCharSequence:98,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.AppendableCharSequence:102,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].expand(char[],int,int)"
    - Src: "io.netty.util.internal.AppendableCharSequence:108,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "io.netty.util.internal.AppendableCharSequence:113,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.AppendableCharSequence].expand(char[],int,int)"
    functionSourceFile: "io.netty.util.internal.AppendableCharSequence"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 169
    functionDepth: 0
    returnType: "char[]"
    argCount: 3
    argTypes:
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.AppendableCharSequence:159"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:163"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:162"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.AppendableCharSequence:163"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.AppendableCharSequence:160,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "io.netty.util.internal.AppendableCharSequence:166,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.AppendableCharSequence].toString()"
    functionSourceFile: "io.netty.util.internal.AppendableCharSequence"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].<init>(char[],int,int)"
    functionUses: 62
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.AppendableCharSequence:129,1"
      Dst: "[java.lang.String].<init>(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.AppendableCharSequence].substring(int,int)"
    functionSourceFile: "io.netty.util.internal.AppendableCharSequence"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 142
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].<init>(char[],int,int)"
    functionUses: 1
    ICount: 22
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.util.internal.AppendableCharSequence:137"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:138"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:137"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
    - Branch String: "io.netty.util.internal.AppendableCharSequence:137"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:141"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.util.internal.AppendableCharSequence:140"
        BranchSideFuncs:
        - "<init>(char[],int,int)"
    Callsites:
    - Src: "io.netty.util.internal.AppendableCharSequence:138,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.AppendableCharSequence:138,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.AppendableCharSequence:138,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.internal.AppendableCharSequence:138,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.AppendableCharSequence:138,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.AppendableCharSequence:141,1"
      Dst: "[java.lang.String].<init>(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.AppendableCharSequence].subStringUnsafe(int,int)"
    functionSourceFile: "io.netty.util.internal.AppendableCharSequence"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].<init>(char[],int,int)"
    functionUses: 5
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.AppendableCharSequence:150,1"
      Dst: "[java.lang.String].<init>(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask].run(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask"
    linkageType: ""
    functionLinenumber: 522
    functionLinenumberEnd: 547
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.IdleStateHandler].access$000(io.netty.handler.timeout.IdleStateHandler)"
    - "[io.netty.handler.timeout.IdleStateHandler].access$800(io.netty.handler.timeout.IdleStateHandler)"
    - "[io.netty.handler.timeout.IdleStateHandler].ticksInNanos()"
    - "[io.netty.handler.timeout.IdleStateHandler].access$902(io.netty.handler.timeout.IdleStateHandler,io.netty.util.concurrent.Future)"
    - "[io.netty.handler.timeout.IdleStateHandler].schedule(io.netty.channel.ChannelHandlerContext,java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.handler.timeout.IdleStateHandler].access$100(io.netty.handler.timeout.IdleStateHandler)"
    - "[io.netty.handler.timeout.IdleStateHandler].access$102(io.netty.handler.timeout.IdleStateHandler,boolean)"
    - "[io.netty.handler.timeout.IdleStateHandler].access$1000(io.netty.handler.timeout.IdleStateHandler,io.netty.channel.ChannelHandlerContext,boolean)"
    - "[io.netty.handler.timeout.IdleStateHandler].newIdleStateEvent(io.netty.handler.timeout.IdleState,boolean)"
    - "[io.netty.handler.timeout.ReadTimeoutHandler].channelIdle(io.netty.channel.ChannelHandlerContext,io.netty.handler.timeout.IdleStateEvent)"
    - "[io.netty.handler.timeout.IdleStateHandler].channelIdle(io.netty.channel.ChannelHandlerContext,io.netty.handler.timeout.IdleStateEvent)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 1
    ICount: 43
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask:525"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask:543"
        BranchSideFuncs:
        - "schedule(io.netty.channel.ChannelHandlerContext,java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "access$902(io.netty.handler.timeout.IdleStateHandler,io.netty.util.concurrent.Future)"
    - Branch String: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask:533"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask:537"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask:536"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
        - "newIdleStateEvent(io.netty.handler.timeout.IdleState,boolean)"
        - "channelIdle(io.netty.channel.ChannelHandlerContext,io.netty.handler.timeout.IdleStateEvent)"
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask:523,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].access$000(io.netty.handler.timeout.IdleStateHandler)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask:524,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].access$800(io.netty.handler.timeout.IdleStateHandler)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask:524,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].ticksInNanos()"
    - Src: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask:527,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].schedule(io.netty.channel.ChannelHandlerContext,java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask:527,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].access$902(io.netty.handler.timeout.IdleStateHandler,io.netty.util.concurrent.Future)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask:529,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].access$100(io.netty.handler.timeout.IdleStateHandler)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask:530,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].access$102(io.netty.handler.timeout.IdleStateHandler,boolean)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask:533,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].access$1000(io.netty.handler.timeout.IdleStateHandler,io.netty.channel.ChannelHandlerContext,boolean)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask:537,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].newIdleStateEvent(io.netty.handler.timeout.IdleState,boolean)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask:538,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].channelIdle(io.netty.channel.ChannelHandlerContext,io.netty.handler.timeout.IdleStateEvent)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$WriterIdleTimeoutTask:540,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:32,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:32,1"
      Dst: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:42,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:56,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].<init>(boolean,int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].fromText(java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:70,1"
      Dst: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].fromText(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:70,1"
      Dst: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].text()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:77,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:77,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].fromText(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    - "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:87"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:88"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:87"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:87"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:87,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:90,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].copy()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].copy()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:96,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].duplicate()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].duplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:101,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retainedDuplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:106,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:111,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:111,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:111,1"
      Dst: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].retain()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retain()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:116,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:122,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].touch()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].touch()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:128,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].touch(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame:134,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].<init>(io.netty.handler.codec.http2.Http2Headers)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Headers"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].<init>(io.netty.handler.codec.http2.Http2Headers,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:39,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].<init>(io.netty.handler.codec.http2.Http2Headers,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].<init>(io.netty.handler.codec.http2.Http2Headers,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Headers"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].<init>(io.netty.handler.codec.http2.Http2Headers,boolean,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:48,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].<init>(io.netty.handler.codec.http2.Http2Headers,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].name()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].headers()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Headers"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].isEndStream()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].padding()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].toString()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 20
    ICount: 20
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:94,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:94,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:94,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:94,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:94,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:94,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:94,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:94,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:94,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].equals(java.lang.Object)"
    - "[io.netty.handler.codec.EmptyHeaders].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 9
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:100"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:102"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:104,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:104,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].hashCode()"
    - "[io.netty.handler.codec.EmptyHeaders:java.lang.Object].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 5
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:110"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:109"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:110,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].hashCode()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersFrame:111,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].<init>()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$2"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].<init>(io.netty.handler.codec.redis.FullBulkStringRedisMessage$1)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$2:131,1"
      Dst: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].<init>(io.netty.handler.codec.redis.FullBulkStringRedisMessage$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].content()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$2"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].copy()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].duplicate()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].refCnt()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$2"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].retain()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$2"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].retain(int)"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].touch()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$2"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$2"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].release()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$2"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].release(int)"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$2"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$2"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionDepth: 4
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].replace(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$2:131,1"
      Dst: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 206
    functionDepth: 3
    returnType: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FullBulkStringRedisMessage:205,1"
      Dst: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FullBulkStringRedisMessage:42,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].certificateChain()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.cert.X509Certificate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:137,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].certificateChainAddress()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - "[io.netty.util.IllegalReferenceCountException].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:142"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:145"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:142,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:143,1"
      Dst: "[io.netty.util.IllegalReferenceCountException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].privateKeyAddress()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - "[io.netty.util.IllegalReferenceCountException].<init>()"
    - "[io.netty.handler.ssl.OpenSslPrivateKey].access$000(io.netty.handler.ssl.OpenSslPrivateKey)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:153"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:150,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:151,1"
      Dst: "[io.netty.util.IllegalReferenceCountException].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:153,1"
      Dst: "[io.netty.handler.ssl.OpenSslPrivateKey].access$000(io.netty.handler.ssl.OpenSslPrivateKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey].access$000(io.netty.handler.ssl.OpenSslPrivateKey)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslPrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslPrivateKey].privateKeyAddress()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey:27,1"
      Dst: "[io.netty.handler.ssl.OpenSslPrivateKey].privateKeyAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey].privateKeyAddress()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - "[io.netty.util.IllegalReferenceCountException].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslPrivateKey:52"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslPrivateKey:55"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslPrivateKey:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey:52,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey:53,1"
      Dst: "[io.netty.util.IllegalReferenceCountException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionDepth: 1
    returnType: "io.netty.handler.ssl.OpenSslKeyMaterial"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslPrivateKey].touch(java.lang.Object)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:158,1"
      Dst: "[io.netty.handler.ssl.OpenSslPrivateKey].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "io.netty.handler.ssl.OpenSslPrivateKey"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].retain()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionDepth: 0
    returnType: "io.netty.handler.ssl.OpenSslKeyMaterial"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].retain()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:164,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].retain(int)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.OpenSslKeyMaterial"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:170,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].touch()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionDepth: 1
    returnType: "io.netty.handler.ssl.OpenSslKeyMaterial"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslPrivateKey].touch()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:176,1"
      Dst: "[io.netty.handler.ssl.OpenSslPrivateKey].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey].touch()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "io.netty.handler.ssl.OpenSslPrivateKey"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].touch()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey:78,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].deallocate()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 185
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].releaseChain()"
    - "[io.netty.util.AbstractReferenceCounted].release()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:182,1"
      Dst: "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].releaseChain()"
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:183,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].releaseChain()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 190
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SSL].freeX509Chain(long)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial:187,1"
      Dst: "[io.netty.internal.tcnative.SSL].freeX509Chain(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:48,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskAttribute:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:52"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:51"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:52,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,long)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:58,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,long,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "long"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,long,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskAttribute:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:62"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:62,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,long,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.nio.charset.Charset,java.lang.String,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:68,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.nio.charset.Charset,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.nio.charset.Charset,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].<init>(java.lang.String,java.nio.charset.Charset,long)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskAttribute:73"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:72,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].<init>(java.lang.String,java.nio.charset.Charset,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,long,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "long"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:78,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "long"
    - "java.nio.charset.Charset"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].<init>(java.lang.String,java.nio.charset.Charset,long)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskAttribute:83"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:82"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:82,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].<init>(java.lang.String,java.nio.charset.Charset,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:88,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.lang.String,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.lang.String,java.nio.charset.Charset,java.lang.String,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:92,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.lang.String,java.nio.charset.Charset,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.lang.String,java.nio.charset.Charset,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].<init>(java.lang.String,java.nio.charset.Charset,long)"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].setValue(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskAttribute:99"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:97"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:97,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].<init>(java.lang.String,java.nio.charset.Charset,long)"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:98,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].setValue(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].getHttpDataType()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData$HttpDataType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].getValue()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].get()"
    - "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getCharset()"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:110,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].get()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:111,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getCharset()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:111,1"
      Dst: "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].setValue(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getCharset()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].checkSize(long)"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].setContent(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskAttribute:120"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:123"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:122"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:116,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:117,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getCharset()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:117,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:118,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].checkSize(long)"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:119,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:121,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:123,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].setContent(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].addContent(io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].checkSize(long)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].addContent(io.netty.buffer.ByteBuf,boolean)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskAttribute:135"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:138"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:137"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.DiskAttribute:135"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:138"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:137"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:128,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:130,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].checkSize(long)"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:132,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:138,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].addContent(io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - "[java.lang.String].hashCode()"
    functionUses: 6
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:143,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:143,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 153
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].getName()"
    - "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    functionUses: 10
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskAttribute:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:151"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:150"
        BranchSideFuncs:
        - "getName()"
        - "equalsIgnoreCase(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:152,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:152,1"
      Dst: "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:152,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].getHttpDataType()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getHttpDataType()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.ClassCastException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].compareTo(io.netty.handler.codec.http.multipart.Attribute)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskAttribute:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:161"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:158,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:158,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:158,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].getHttpDataType()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:158,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:159,1"
      Dst: "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getHttpDataType()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:159,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:159,1"
      Dst: "[java.lang.ClassCastException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:161,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].compareTo(io.netty.handler.codec.http.multipart.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].compareTo(io.netty.handler.codec.http.multipart.Attribute)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - "[java.lang.String].compareToIgnoreCase(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:165,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:165,1"
      Dst: "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:165,1"
      Dst: "[java.lang.String].compareToIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].toString()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 174
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].getValue()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 20
    ICount: 19
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:171,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:171,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:171,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:171,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:171,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].getValue()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:171,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:173,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].deleteOnExit()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].getBaseDirectory()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].getDiskFilename()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:189,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:189,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:189,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:189,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].getPostfix()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].getPrefix()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].copy()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskAttribute:205"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:204,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:205,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:205,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getCharset()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].setCharset(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].setContent(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].isCompleted()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].setCompleted(boolean)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskAttribute:238"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:244"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:236,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:236,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:237,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getCharset()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:237,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].setCharset(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:240,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].setContent(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:242,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:245,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].isCompleted()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:245,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].setCompleted(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].duplicate()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskAttribute:211"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:209"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:210,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:211,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:211,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DiskAttribute:217"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:230"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.DiskAttribute:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:218"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:217"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.DiskAttribute:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:228"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DiskAttribute:227"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:216,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:218,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:221,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].replace(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:226,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:251,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].retain()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: 256
    functionLinenumberEnd: 259
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].retain()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:257,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].touch()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 265
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].touch()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:263,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: 268
    functionLinenumberEnd: 271
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].touch(java.lang.Object)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:269,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DiskAttribute].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DiskAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DiskAttribute:31,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,io.netty.handler.ssl.OpenSslSessionContext)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: 2337
    functionLinenumberEnd: 2341
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    - "io.netty.handler.ssl.OpenSslSessionContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2338,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].newSSLSessionBindingEvent(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "javax.net.ssl.SSLSessionBindingEvent"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$800(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - "[javax.net.ssl.SSLSessionBindingEvent].<init>(javax.net.ssl.SSLSession,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2343,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$800(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2343,1"
      Dst: "[javax.net.ssl.SSLSessionBindingEvent].<init>(javax.net.ssl.SSLSession,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$800(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.OpenSslSession"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].setSessionId(io.netty.handler.ssl.OpenSslSessionId)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslSessionId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].currentTimeMillis()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2349"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2353"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2352"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2351,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].sessionId()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: 2357
    functionLinenumberEnd: 2368
    functionDepth: 2
    returnType: "io.netty.handler.ssl.OpenSslSessionId"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$400(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$500(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - "[io.netty.internal.tcnative.SSL].getSessionId(long)"
    - "[io.netty.handler.ssl.OpenSslSessionId].<init>(byte[])"
    functionUses: 3
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2359"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2366"
        BranchSideFuncs:
        - "getSessionId(long)"
        - "access$500(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2365"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2359"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2366"
        BranchSideFuncs:
        - "getSessionId(long)"
        - "access$500(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2365"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2361"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2366"
        BranchSideFuncs:
        - "<init>(byte[])"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2365"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2359,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$400(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2360,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$500(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2360,1"
      Dst: "[io.netty.internal.tcnative.SSL].getSessionId(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2362,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionId].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$500(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].setLocalCertificate(java.security.cert.Certificate[])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: 2371
    functionLinenumberEnd: 2374
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.cert.Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getId()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: 2376
    functionLinenumberEnd: 2378
    functionDepth: 3
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslSessionId].cloneBytes()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].sessionId()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2377,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].sessionId()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2377,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionId].cloneBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionId].cloneBytes()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionId"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 3
    ICount: 5
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionId:64,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getSessionContext()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.OpenSslSessionContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getCreationTime()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getLastAccessedTime()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$900(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getCreationTime()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2396"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2393"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2394,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$900(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2396,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getCreationTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$900(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].invalidate()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslSessionContext].removeFromCache(io.netty.handler.ssl.OpenSslSessionId)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2403,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionContext].removeFromCache(io.netty.handler.ssl.OpenSslSessionId)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].isValid()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslSessionContext].isInCache(io.netty.handler.ssl.OpenSslSessionId)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2410"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2409"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2408"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2410"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2409"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2408"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2410,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionContext].isInCache(io.netty.handler.ssl.OpenSslSessionId)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].putValue(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.HashMap].<init>(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].newSSLSessionBindingEvent(java.lang.String)"
    - "[javax.net.ssl.SSLSessionBindingListener].valueBound(javax.net.ssl.SSLSessionBindingEvent)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].notifyUnbound(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2422"
      Branch Sides: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2429"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2432"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2416,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2424,1"
      Dst: "[java.util.HashMap].<init>(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2426,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2431,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].newSSLSessionBindingEvent(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2431,1"
      Dst: "[javax.net.ssl.SSLSessionBindingListener].valueBound(javax.net.ssl.SSLSessionBindingEvent)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2433,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].notifyUnbound(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].notifyUnbound(java.lang.Object,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].newSSLSessionBindingEvent(java.lang.String)"
    - "[javax.net.ssl.SSLSessionBindingListener].valueUnbound(javax.net.ssl.SSLSessionBindingEvent)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2475"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2478"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2477,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].newSSLSessionBindingEvent(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2477,1"
      Dst: "[javax.net.ssl.SSLSessionBindingListener].valueUnbound(javax.net.ssl.SSLSessionBindingEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getValue(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2440"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2443"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2442"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2438,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2443,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].removeValue(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Map].remove(java.lang.Object)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].notifyUnbound(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2454"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2457"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2456"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2449,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2457,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2460,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].notifyUnbound(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getValueNames()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].isEmpty()"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2467"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2468"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2467"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2467"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2470"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2469"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2467,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2470,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2470,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].handshakeFinished(byte[],java.lang.String,java.lang.String,byte[],byte[][],long,long)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: 2488
    functionLinenumberEnd: 2538
    functionDepth: 6
    returnType: "void"
    argCount: 7
    argTypes:
    - "byte[]"
    - "java.lang.String"
    - "java.lang.String"
    - "byte[]"
    - "byte[][]"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$400(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - "[io.netty.handler.ssl.OpenSslSessionId].<init>(byte[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1000(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$200(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1100(java.lang.Object[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].initCerts(byte[][],int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1200(byte[])"
    - "[io.netty.handler.ssl.util.LazyX509Certificate].<init>(byte[])"
    - "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].<init>(byte[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1300(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1402(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,io.netty.handler.ssl.ReferenceCountedOpenSslEngine$HandshakeState)"
    - "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 100
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2490"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2534"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2533"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2492"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2495"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2494"
        BranchSideFuncs:
        - "access$200(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
        - "access$1000(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2493"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2492"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2498"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2513"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2512"
        BranchSideFuncs:
        - "access$1200(byte[])"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2499"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2503"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2502"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2513"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2517"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2516"
        BranchSideFuncs:
        - "access$1100(java.lang.Object[])"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2517"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2521"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2520"
        BranchSideFuncs:
        - "<init>(byte[])"
        - "initCerts(byte[][],int)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2490,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$400(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2493,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionId].<init>(byte[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2495,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1000(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2498,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$200(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2499,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1100(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2505,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].initCerts(byte[][],int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2513,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1200(byte[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2518,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].<init>(byte[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2519,1"
      Dst: "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].<init>(byte[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2530,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1300(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2532,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1402(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,io.netty.handler.ssl.ReferenceCountedOpenSslEngine$HandshakeState)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2534,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 20
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1000(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].toJavaCipherSuite(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:94,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].toJavaCipherSuite(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].toJavaCipherSuite(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2050
    functionLinenumberEnd: 2058
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SSL].getVersion(long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].toJavaCipherSuitePrefix(java.lang.String)"
    - "[io.netty.handler.ssl.CipherSuiteConverter].toJava(java.lang.String,java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2051"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2055"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2054"
        BranchSideFuncs:
        - "toJavaCipherSuitePrefix(java.lang.String)"
        - "toJava(java.lang.String,java.lang.String)"
        - "getVersion(long)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2055,1"
      Dst: "[io.netty.internal.tcnative.SSL].getVersion(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2056,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].toJavaCipherSuitePrefix(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2057,1"
      Dst: "[io.netty.handler.ssl.CipherSuiteConverter].toJava(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].toJavaCipherSuitePrefix(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2064
    functionLinenumberEnd: 2078
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    - "[java.lang.String].charAt(int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2065"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2066"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2065"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2065"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2068"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2067"
        BranchSideFuncs:
        - "charAt(int)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2065,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2068,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$200(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1100(java.lang.Object[])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isEmpty(java.lang.Object[])"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:94,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isEmpty(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isEmpty(java.lang.Object[])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1886
    functionLinenumberEnd: 1888
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1887"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1886"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1887"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1886"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].initCerts(byte[][],int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: 2539
    functionLinenumberEnd: 2546
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[][]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.LazyX509Certificate].<init>(byte[])"
    - "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].<init>(byte[])"
    functionUses: 2
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2540"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2544"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2542,1"
      Dst: "[io.netty.handler.ssl.util.LazyX509Certificate].<init>(byte[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2543,1"
      Dst: "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].<init>(byte[])"
    functionSourceFile: "io.netty.handler.ssl.util.LazyJavaxX509Certificate"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 43
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.security.cert.X509Certificate].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.LazyJavaxX509Certificate:40,1"
      Dst: "[javax.security.cert.X509Certificate].<init>()"
    - Src: "io.netty.handler.ssl.util.LazyJavaxX509Certificate:41,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1200(byte[])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isEmpty(byte[])"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:94,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isEmpty(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isEmpty(byte[])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1890
    functionLinenumberEnd: 1892
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1891"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1890"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1891"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1890"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1300(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].calculateMaxWrapOverhead()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:94,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].calculateMaxWrapOverhead()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].calculateMaxWrapOverhead()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 718
    functionLinenumberEnd: 726
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SSL].getMaxWrapOverhead(long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].maxEncryptedPacketLength0()"
    functionUses: 4
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:724"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:719"
        BranchSideFuncs:
        - "maxEncryptedPacketLength0()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:718"
        BranchSideFuncs:
        - "maxEncryptedPacketLength0()"
        - "getMaxWrapOverhead(long)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:719,1"
      Dst: "[io.netty.internal.tcnative.SSL].getMaxWrapOverhead(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:724,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].maxEncryptedPacketLength0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].maxEncryptedPacketLength0()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 698
    functionLinenumberEnd: 700
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1402(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,io.netty.handler.ssl.ReferenceCountedOpenSslEngine$HandshakeState)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$HandshakeState"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$HandshakeState"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getPeerCertificates()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.security.cert.Certificate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1100(java.lang.Object[])"
    - "[javax.net.ssl.SSLPeerUnverifiedException].<init>(java.lang.String)"
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2550"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2553"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2552"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2550,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1100(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2551,1"
      Dst: "[javax.net.ssl.SSLPeerUnverifiedException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2553,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLPeerUnverifiedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getLocalCertificates()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.cert.Certificate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2560"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2563"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2562"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2563,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getPeerCertificateChain()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "javax.security.cert.X509Certificate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1100(java.lang.Object[])"
    - "[javax.net.ssl.SSLPeerUnverifiedException].<init>(java.lang.String)"
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2569"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2572"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2571"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2569,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$1100(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2570,1"
      Dst: "[javax.net.ssl.SSLPeerUnverifiedException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2572,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLPeerUnverifiedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getPeerPrincipal()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.security.Principal"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getPeerCertificates()"
    - "[java.security.cert.X509Certificate].getSubjectX500Principal()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2578,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getPeerCertificates()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2581,1"
      Dst: "[java.security.cert.X509Certificate].getSubjectX500Principal()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLPeerUnverifiedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getLocalPrincipal()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.Principal"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.X509Certificate].getSubjectX500Principal()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2587"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2588"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2587"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2587"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2590"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2589"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2590,1"
      Dst: "[java.security.cert.X509Certificate].getSubjectX500Principal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getCipherSuite()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: 2594
    functionLinenumberEnd: 2601
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2596"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2599"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2598"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getProtocol()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: 2604
    functionLinenumberEnd: 2616
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$400(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$500(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - "[io.netty.internal.tcnative.SSL].getVersion(long)"
    functionUses: 3
    ICount: 19
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2606"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2615"
        BranchSideFuncs:
        - "access$400(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2614"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2608"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2611"
        BranchSideFuncs:
        - "access$500(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
        - "getVersion(long)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2610"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2608,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$400(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2609,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$500(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2609,1"
      Dst: "[io.netty.internal.tcnative.SSL].getVersion(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getPeerHost()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].getPeerHost()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2620,1"
      Dst: "[javax.net.ssl.SSLEngine].getPeerHost()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getPeerPort()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].getPeerPort()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2625,1"
      Dst: "[javax.net.ssl.SSLEngine].getPeerPort()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getPacketBufferSize()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: 2629
    functionLinenumberEnd: 2631
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].maxEncryptedPacketLength()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2630,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].maxEncryptedPacketLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].maxEncryptedPacketLength()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 690
    functionLinenumberEnd: 692
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].maxEncryptedPacketLength0()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:691,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].maxEncryptedPacketLength0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getApplicationBufferSize()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: 2634
    functionLinenumberEnd: 2636
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].tryExpandApplicationBufferSize(int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: 2639
    functionLinenumberEnd: 2644
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2640"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2643"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2642"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2640"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2643"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2642"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].toString()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession"
    linkageType: ""
    functionLinenumber: 2646
    functionLinenumberEnd: 2648
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 12
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2647,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2647,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2647,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2647,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession:2647,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$2].<init>(io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1,io.netty.channel.Channel)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$2"
    linkageType: ""
    functionLinenumber: 1380
    functionLinenumberEnd: 1382
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1"
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$2:1381,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$2"
    linkageType: ""
    functionLinenumber: 1384
    functionLinenumberEnd: 1395
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].close()"
    - "[io.netty.channel.AbstractChannel].close()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].close()"
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.util.concurrent.FailedFuture].isSuccess()"
    - "[io.netty.util.concurrent.SucceededFuture].isSuccess()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.resolver.dns.DnsQueryContext].finish(io.netty.channel.AddressedEnvelope)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].getNow()"
    - "[io.netty.channel.VoidChannelPromise].getNow()"
    - "[io.netty.util.concurrent.SucceededFuture].getNow()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].getNow()"
    - "[io.netty.util.concurrent.FailedFuture].getNow()"
    - "[io.netty.channel.CompleteChannelFuture].getNow()"
    - "[io.netty.util.AbstractReferenceCounted].release()"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].getNow()"
    functionUses: 1
    ICount: 21
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$2:1387"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$2:1392"
        BranchSideFuncs:
        - "getNow()"
        - "release()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$2:1391"
        BranchSideFuncs:
        - "finish(io.netty.channel.AddressedEnvelope)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$2:1385,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$2:1387,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$2:1388,1"
      Dst: "[io.netty.util.concurrent.Future].getNow()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$2:1388,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].finish(io.netty.channel.AddressedEnvelope)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$2:1389,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheOpcodes].<init>()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheOpcodes"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheOpcodes:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf].newUnsafeInstance(int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectPool$RecyclerObjectPool].get()"
    - "[io.netty.buffer.PooledByteBuf].reuse(int)"
    - "[io.netty.util.internal.ObjectPool].get()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:34,1"
      Dst: "[io.netty.util.internal.ObjectPool].get()"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:35,1"
      Dst: "[io.netty.buffer.PooledByteBuf].reuse(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledHeapByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:40,1"
      Dst: "[io.netty.buffer.PooledHeapByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getByte(int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 3
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getByte(byte[],int)"
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    functionUses: 16
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:45,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:45,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getByte(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getShort(int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 3
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getShort(byte[],int)"
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:50,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:50,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getShort(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getShortLE(int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 3
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getShortLE(byte[],int)"
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:55,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:55,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getShortLE(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getUnsignedMedium(byte[],int)"
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:60,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:60,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getUnsignedMedium(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getUnsignedMediumLE(byte[],int)"
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:65,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:65,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getUnsignedMediumLE(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getInt(int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getInt(byte[],int)"
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:70,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:70,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getInt(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getIntLE(int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getIntLE(byte[],int)"
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:75,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:75,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getIntLE(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getLong(int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 3
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getLong(byte[],int)"
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    functionUses: 7
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:80,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:80,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getLong(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getLongLE(int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 3
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnsafeByteBufUtil].getLongLE(byte[],int)"
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:85,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:85,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getLongLE(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setByte(int,int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setByte(byte[],int,int)"
    functionUses: 25
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:90,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:90,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setByte(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setShort(int,int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setShort(byte[],int,int)"
    functionUses: 6
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:95,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:95,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setShort(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setShortLE(byte[],int,int)"
    functionUses: 5
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:100,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:100,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setShortLE(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setMedium(byte[],int,int)"
    functionUses: 6
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:105,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:105,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setMedium(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setMediumLE(byte[],int,int)"
    functionUses: 6
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:110,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:110,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setMediumLE(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setInt(int,int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setInt(byte[],int,int)"
    functionUses: 10
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:115,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:115,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setInt(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 122
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setIntLE(byte[],int,int)"
    functionUses: 6
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:120,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:120,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setIntLE(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setLong(int,long)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setLong(byte[],int,long)"
    functionUses: 8
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:125,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:125,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setLong(byte[],int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setLongLE(byte[],int,long)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:130,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:130,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setLongLE(byte[],int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf].setZero(int,int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 142
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setZero(byte[],int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setZero(int,int)"
    functionUses: 3
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledUnsafeHeapByteBuf:135"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledUnsafeHeapByteBuf:141"
        BranchSideFuncs:
        - "idx(int)"
        - "setZero(byte[],int,int)"
        - "checkIndex(int,int)"
      - BranchSide: "io.netty.buffer.PooledUnsafeHeapByteBuf:140"
        BranchSideFuncs:
        - "setZero(int,int)"
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:135,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:136,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:138,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:138,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setZero(byte[],int,int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:141,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setZero(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf].writeZero(int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 155
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setZero(byte[],int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeZero(int)"
    functionUses: 5
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledUnsafeHeapByteBuf:146"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledUnsafeHeapByteBuf:153"
        BranchSideFuncs:
        - "writeZero(int)"
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:146,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:148,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:150,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:150,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setZero(byte[],int,int)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:154,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeZero(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf].newSwappedByteBuf()"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 165
    functionDepth: 2
    returnType: "io.netty.buffer.SwappedByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].isUnaligned()"
    - "[io.netty.buffer.UnsafeHeapSwappedByteBuf].<init>(io.netty.buffer.AbstractByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].newSwappedByteBuf()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledUnsafeHeapByteBuf:160"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledUnsafeHeapByteBuf:163"
        BranchSideFuncs:
        - "newSwappedByteBuf()"
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:160,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isUnaligned()"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:162,1"
      Dst: "[io.netty.buffer.UnsafeHeapSwappedByteBuf].<init>(io.netty.buffer.AbstractByteBuf)"
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:164,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].newSwappedByteBuf()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int,io.netty.buffer.PooledUnsafeHeapByteBuf$1)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    linkageType: ""
    functionLinenumber: 22
    functionLinenumberEnd: 24
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    - "int"
    - "io.netty.buffer.PooledUnsafeHeapByteBuf$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf:23,1"
      Dst: "[io.netty.buffer.PooledUnsafeHeapByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder].topicName(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder].retained(boolean)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder].qos(io.netty.handler.codec.mqtt.MqttQoS)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttQoS"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder].payload(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder].messageId(int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder].properties(io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder].build()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].<init>(java.lang.String,int,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.buffer.Unpooled].buffer()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttPublishVariableHeader,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder:73,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder:74,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].<init>(java.lang.String,int,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder:76,1"
      Dst: "[io.netty.buffer.Unpooled].buffer()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder:76,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$PublishBuilder:76,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttPublishVariableHeader,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].buffer()"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:102,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttPublishVariableHeader,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "io.netty.handler.codec.mqtt.MqttPublishVariableHeader"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:32,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelHandlerMask$2].run()"
    functionSourceFile: "io.netty.channel.ChannelHandlerMask$2"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 183
    functionDepth: 1
    returnType: "java.lang.Boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[io.netty.channel.ChannelHandlerMask].access$000()"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.lang.reflect.AccessibleObject].isAnnotationPresent(java.lang.Class)"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 23
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelHandlerMask$2:176"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelHandlerMask$2:174"
        BranchSideFuncs:
        - "access$000()"
        - "isDebugEnabled()"
        - "debug(java.lang.String,java.lang.Object[])"
        - "getMethod(java.lang.String,java.lang.Class[])"
      - BranchSide: "io.netty.channel.ChannelHandlerMask$2:173"
        BranchSideFuncs:
        - "access$000()"
        - "isDebugEnabled()"
        - "debug(java.lang.String,java.lang.Object[])"
        - "getMethod(java.lang.String,java.lang.Class[])"
    Callsites:
    - Src: "io.netty.channel.ChannelHandlerMask$2:174,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "io.netty.channel.ChannelHandlerMask$2:176,1"
      Dst: "[io.netty.channel.ChannelHandlerMask].access$000()"
    - Src: "io.netty.channel.ChannelHandlerMask$2:176,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.channel.ChannelHandlerMask$2:177,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.channel.ChannelHandlerMask$2:180,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.ChannelHandlerMask$2:182,1"
      Dst: "[java.lang.reflect.AccessibleObject].isAnnotationPresent(java.lang.Class)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].setOptions(java.util.Map<ChannelOption<?>,?>)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Map<ChannelOption<?>,?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelConfig:111"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:117"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelConfig:116"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:112"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:115"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelConfig:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:108,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelConfig:111,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "io.netty.channel.DefaultChannelConfig:111,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.DefaultChannelConfig:111,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.DefaultChannelConfig:111,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.DefaultChannelConfig:112,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.channel.DefaultChannelConfig:112,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.channel.DefaultChannelConfig:112,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 165
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.DefaultChannelConfig].getConnectTimeoutMillis()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.DefaultChannelConfig].getMaxMessagesPerRead()"
    - "[io.netty.channel.DefaultChannelConfig].getWriteSpinCount()"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.channel.DefaultChannelConfig].getRecvByteBufAllocator()"
    - "[io.netty.channel.DefaultChannelConfig].isAutoRead()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.DefaultChannelConfig].isAutoClose()"
    - "[io.netty.channel.DefaultChannelConfig].getWriteBufferHighWaterMark()"
    - "[io.netty.channel.DefaultChannelConfig].getWriteBufferLowWaterMark()"
    - "[io.netty.channel.DefaultChannelConfig].getWriteBufferWaterMark()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2StreamChannelConfig].getMessageSizeEstimator()"
    - "[io.netty.channel.DefaultChannelConfig].getMessageSizeEstimator()"
    - "[io.netty.channel.DefaultChannelConfig].getPinEventExecutorPerGroup()"
    - "[io.netty.channel.DefaultChannelConfig].getMaxMessagesPerWrite()"
    functionUses: 14
    ICount: 65
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelConfig:125"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:128"
        BranchSideFuncs:
        - "getConnectTimeoutMillis()"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:127"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:128"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:131"
        BranchSideFuncs:
        - "getMaxMessagesPerRead()"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:130"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:131"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:134"
        BranchSideFuncs:
        - "getWriteSpinCount()"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:133"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:134"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:137"
        BranchSideFuncs:
        - "getAllocator()"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:137"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:140"
        BranchSideFuncs:
        - "getRecvByteBufAllocator()"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:139"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:140"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:143"
        BranchSideFuncs:
        - "isAutoRead()"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:142"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:143"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:146"
        BranchSideFuncs:
        - "isAutoClose()"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:145"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:146"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:149"
        BranchSideFuncs:
        - "getWriteBufferHighWaterMark()"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:149"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:152"
        BranchSideFuncs:
        - "getWriteBufferLowWaterMark()"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:151"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:152"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:155"
        BranchSideFuncs:
        - "getWriteBufferWaterMark()"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:154"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:155"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:158"
        BranchSideFuncs:
        - "getMessageSizeEstimator()"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:157"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:158"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:161"
        BranchSideFuncs:
        - "valueOf(boolean)"
        - "getPinEventExecutorPerGroup()"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:160"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelConfig:161"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelConfig:164"
        BranchSideFuncs:
        - "getMaxMessagesPerWrite()"
        - "valueOf(int)"
      - BranchSide: "io.netty.channel.DefaultChannelConfig:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:123,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelConfig:126,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getConnectTimeoutMillis()"
    - Src: "io.netty.channel.DefaultChannelConfig:126,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.DefaultChannelConfig:129,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getMaxMessagesPerRead()"
    - Src: "io.netty.channel.DefaultChannelConfig:132,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getWriteSpinCount()"
    - Src: "io.netty.channel.DefaultChannelConfig:135,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - Src: "io.netty.channel.DefaultChannelConfig:138,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getRecvByteBufAllocator()"
    - Src: "io.netty.channel.DefaultChannelConfig:141,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].isAutoRead()"
    - Src: "io.netty.channel.DefaultChannelConfig:141,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.DefaultChannelConfig:144,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].isAutoClose()"
    - Src: "io.netty.channel.DefaultChannelConfig:147,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getWriteBufferHighWaterMark()"
    - Src: "io.netty.channel.DefaultChannelConfig:150,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getWriteBufferLowWaterMark()"
    - Src: "io.netty.channel.DefaultChannelConfig:153,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getWriteBufferWaterMark()"
    - Src: "io.netty.channel.DefaultChannelConfig:156,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getMessageSizeEstimator()"
    - Src: "io.netty.channel.DefaultChannelConfig:159,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getPinEventExecutorPerGroup()"
    - Src: "io.netty.channel.DefaultChannelConfig:162,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getMaxMessagesPerWrite()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 27
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].getConnectTimeoutMillis()"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].getMaxMessagesPerRead()"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 235
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].getRecvByteBufAllocator()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator].maxMessagesPerRead()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.MaxMessagesRecvByteBufAllocator].maxMessagesPerRead()"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:231,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getRecvByteBufAllocator()"
    - Src: "io.netty.channel.DefaultChannelConfig:232,1"
      Dst: "[io.netty.channel.MaxMessagesRecvByteBufAllocator].maxMessagesPerRead()"
    - Src: "io.netty.channel.DefaultChannelConfig:234,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBufAllocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].isAutoClose()"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 355
    functionLinenumberEnd: 357
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].getWriteBufferHighWaterMark()"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 366
    functionLinenumberEnd: 368
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.WriteBufferWaterMark].high()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:367,1"
      Dst: "[io.netty.channel.WriteBufferWaterMark].high()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].getWriteBufferLowWaterMark()"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 389
    functionLinenumberEnd: 391
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.WriteBufferWaterMark].low()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelConfig:390,1"
      Dst: "[io.netty.channel.WriteBufferWaterMark].low()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].getWriteBufferWaterMark()"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 418
    functionLinenumberEnd: 420
    functionDepth: 0
    returnType: "io.netty.channel.WriteBufferWaterMark"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].getMessageSizeEstimator()"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 423
    functionLinenumberEnd: 425
    functionDepth: 0
    returnType: "io.netty.channel.MessageSizeEstimator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].getPinEventExecutorPerGroup()"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 438
    functionLinenumberEnd: 440
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelConfig].getMaxMessagesPerWrite()"
    functionSourceFile: "io.netty.channel.DefaultChannelConfig"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 264
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsOpCode].hashCode()"
    functionSourceFile: "io.netty.handler.codec.dns.DnsOpCode"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsOpCode].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsOpCode"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsOpCode:99"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsOpCode:103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsOpCode:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DnsOpCode:103"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsOpCode:107"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsOpCode:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DnsOpCode:107"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsOpCode:106"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DnsOpCode].compareTo(io.netty.handler.codec.dns.DnsOpCode)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsOpCode"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsOpCode"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsOpCode].toString()"
    functionSourceFile: "io.netty.handler.codec.dns.DnsOpCode"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 19
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsOpCode:118"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsOpCode:121"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "toString()"
      - BranchSide: "io.netty.handler.codec.dns.DnsOpCode:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsOpCode:119,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.dns.DnsOpCode:119,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DnsOpCode:119,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.dns.DnsOpCode:119,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.dns.DnsOpCode:119,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DnsOpCode].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsOpCode"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsOpCode].compareTo(io.netty.handler.codec.dns.DnsOpCode)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsOpCode:25,1"
      Dst: "[io.netty.handler.codec.dns.DnsOpCode].compareTo(io.netty.handler.codec.dns.DnsOpCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask].<init>(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.epoll.AbstractEpollStreamChannel,int,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.epoll.AbstractEpollStreamChannel"
    - "io.netty.channel.epoll.AbstractEpollStreamChannel"
    - "int"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInTask].<init>(io.netty.channel.epoll.AbstractEpollStreamChannel,int,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:887,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInTask].<init>(io.netty.channel.epoll.AbstractEpollStreamChannel,int,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask"
    linkageType: ""
    functionLinenumber: 892
    functionLinenumberEnd: 897
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:893"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:896"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "cause()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:895"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:893,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:894,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:894,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask].spliceIn(io.netty.channel.RecvByteBufAllocator$Handle)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask"
    linkageType: ""
    functionLinenumber: 899
    functionLinenumberEnd: 952
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].access$500(io.netty.channel.epoll.AbstractEpollStreamChannel)"
    - "[io.netty.channel.unix.FileDescriptor].pipe()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].access$602(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.unix.FileDescriptor)"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].access$502(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.unix.FileDescriptor)"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInTask].spliceIn(io.netty.channel.unix.FileDescriptor,io.netty.channel.RecvByteBufAllocator$Handle)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].isAutoRead()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceOutTask].<init>(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.epoll.AbstractEpollStreamChannel,int,boolean)"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].flush()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].flush()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].flush()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.epoll.AbstractEpollChannel].config()"
    - "[io.netty.channel.Channel$Unsafe].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.Channel$Unsafe].flush()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 70
    EdgeCount: 49
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:900"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:901"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:900"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:900"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:901"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:900"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:901"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:909"
        BranchSideFuncs:
        - "setSuccess()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:908"
        BranchSideFuncs:
        - "access$500(io.netty.channel.epoll.AbstractEpollStreamChannel)"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:910"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:917"
        BranchSideFuncs:
        - "setSuccess()"
        - "access$602(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.unix.FileDescriptor)"
        - "config()"
        - "flush()"
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
        - "<init>(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.epoll.AbstractEpollStreamChannel,int,boolean)"
        - "isDone()"
        - "spliceIn(io.netty.channel.unix.FileDescriptor,io.netty.channel.RecvByteBufAllocator$Handle)"
        - "setAutoRead(boolean)"
        - "newPromise()"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "pipe()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "eventLoop()"
        - "access$500(io.netty.channel.epoll.AbstractEpollStreamChannel)"
        - "isAutoRead()"
        - "access$502(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.unix.FileDescriptor)"
        - "unsafe()"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:916"
        BranchSideFuncs:
        - "spliceIn(io.netty.channel.unix.FileDescriptor,io.netty.channel.RecvByteBufAllocator$Handle)"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:918"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:948"
        BranchSideFuncs:
        - "setSuccess()"
        - "access$602(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.unix.FileDescriptor)"
        - "config()"
        - "flush()"
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
        - "<init>(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.epoll.AbstractEpollStreamChannel,int,boolean)"
        - "isDone()"
        - "spliceIn(io.netty.channel.unix.FileDescriptor,io.netty.channel.RecvByteBufAllocator$Handle)"
        - "setAutoRead(boolean)"
        - "newPromise()"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "pipe()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "eventLoop()"
        - "access$500(io.netty.channel.epoll.AbstractEpollStreamChannel)"
        - "isAutoRead()"
        - "access$502(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.unix.FileDescriptor)"
        - "unsafe()"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:947"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:920"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:927"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:926"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:927"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:930"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:929"
        BranchSideFuncs:
        - "newPromise()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:939"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:948"
        BranchSideFuncs:
        - "setSuccess()"
        - "access$602(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.unix.FileDescriptor)"
        - "config()"
        - "flush()"
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
        - "<init>(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.epoll.AbstractEpollStreamChannel,int,boolean)"
        - "isDone()"
        - "spliceIn(io.netty.channel.unix.FileDescriptor,io.netty.channel.RecvByteBufAllocator$Handle)"
        - "setAutoRead(boolean)"
        - "newPromise()"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "pipe()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "eventLoop()"
        - "access$500(io.netty.channel.epoll.AbstractEpollStreamChannel)"
        - "isAutoRead()"
        - "access$502(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.unix.FileDescriptor)"
        - "unsafe()"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:947"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:939"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:948"
        BranchSideFuncs:
        - "setSuccess()"
        - "access$602(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.unix.FileDescriptor)"
        - "config()"
        - "flush()"
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
        - "<init>(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.epoll.AbstractEpollStreamChannel,int,boolean)"
        - "isDone()"
        - "spliceIn(io.netty.channel.unix.FileDescriptor,io.netty.channel.RecvByteBufAllocator$Handle)"
        - "setAutoRead(boolean)"
        - "newPromise()"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "pipe()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "eventLoop()"
        - "access$500(io.netty.channel.epoll.AbstractEpollStreamChannel)"
        - "isAutoRead()"
        - "access$502(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.unix.FileDescriptor)"
        - "unsafe()"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:947"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:948"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:948"
        BranchSideFuncs:
        - "setSuccess()"
        - "access$602(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.unix.FileDescriptor)"
        - "config()"
        - "flush()"
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
        - "<init>(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.epoll.AbstractEpollStreamChannel,int,boolean)"
        - "isDone()"
        - "spliceIn(io.netty.channel.unix.FileDescriptor,io.netty.channel.RecvByteBufAllocator$Handle)"
        - "setAutoRead(boolean)"
        - "newPromise()"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "pipe()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "eventLoop()"
        - "access$500(io.netty.channel.epoll.AbstractEpollStreamChannel)"
        - "isAutoRead()"
        - "access$502(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.unix.FileDescriptor)"
        - "unsafe()"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:947"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:900,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:900,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:900,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:902,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:909,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].access$500(io.netty.channel.epoll.AbstractEpollStreamChannel)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:912,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].pipe()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:913,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].access$602(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.unix.FileDescriptor)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:914,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].access$502(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.unix.FileDescriptor)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:917,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInTask].spliceIn(io.netty.channel.unix.FileDescriptor,io.netty.channel.RecvByteBufAllocator$Handle)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:930,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:930,1"
      Dst: "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:933,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].config()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:933,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].isAutoRead()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:937,1"
      Dst: "[io.netty.channel.AbstractChannel].unsafe()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:937,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceOutTask].<init>(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.epoll.AbstractEpollStreamChannel,int,boolean)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:937,1"
      Dst: "[io.netty.channel.Channel$Unsafe].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:938,1"
      Dst: "[io.netty.channel.Channel$Unsafe].flush()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:939,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:944,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setAutoRead(boolean)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:950,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 8
  - functionName: "[io.netty.channel.unix.FileDescriptor].pipe()"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 202
    functionDepth: 4
    returnType: "io.netty.channel.unix.FileDescriptor[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].newPipe()"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    - "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.FileDescriptor:198"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:201"
        BranchSideFuncs:
        - "newIOException(java.lang.String,int)"
      - BranchSide: "io.netty.channel.unix.FileDescriptor:200"
        BranchSideFuncs:
        - "<init>(int)"
    Callsites:
    - Src: "io.netty.channel.unix.FileDescriptor:197,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].newPipe()"
    - Src: "io.netty.channel.unix.FileDescriptor:199,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    - Src: "io.netty.channel.unix.FileDescriptor:201,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].newPipe()"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceOutTask].<init>(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.epoll.AbstractEpollStreamChannel,int,boolean)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceOutTask"
    linkageType: ""
    functionLinenumber: 960
    functionLinenumberEnd: 966
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.epoll.AbstractEpollStreamChannel"
    - "io.netty.channel.epoll.AbstractEpollStreamChannel"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceOutTask:961,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask"
    linkageType: ""
    functionLinenumber: 882
    functionLinenumberEnd: 884
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask:883,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateEventExecutor$ImmediateProgressivePromise].checkDeadLock()"
    functionSourceFile: "io.netty.util.concurrent.ImmediateEventExecutor$ImmediateProgressivePromise"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers$2].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers$2"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers$2].validateName(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers$2"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 84
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$000()"
    - "[io.netty.util.AsciiString].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[io.netty.util.AsciiString:io.netty.util.internal.AppendableCharSequence:java.lang.AbstractStringBuilder:java.lang.StringBuffer:java.lang.StringBuilder:java.nio.CharBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[io.netty.util.AsciiString:io.netty.util.internal.AppendableCharSequence:java.lang.AbstractStringBuilder:java.lang.StringBuffer:java.lang.StringBuilder:java.nio.CharBuffer].isUpperCase(char)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].hasPseudoHeaderFormat(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].getPseudoHeader(java.lang.CharSequence)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.util.AsciiString].isUpperCase(char)"
    functionUses: 1
    ICount: 57
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:45"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:46"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:45"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:45"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:50"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:49"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:68"
        BranchSideFuncs:
        - "forEachByte(io.netty.util.ByteProcessor)"
        - "access$000()"
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:67"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:67"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:66"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:76"
        BranchSideFuncs:
        - "isUpperCase(char)"
        - "charAt(int)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:75"
        BranchSideFuncs:
        - "hasPseudoHeaderFormat(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:68"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:67"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:83"
        BranchSideFuncs:
        - "getPseudoHeader(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:82"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:83"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "throwException(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:45,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:46,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:46,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:53,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$000()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:53,1"
      Dst: "[io.netty.util.AsciiString].forEachByte(io.netty.util.ByteProcessor)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:58,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:69,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:69,1"
      Dst: "[io.netty.util.AsciiString].isUpperCase(char)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:76,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].hasPseudoHeaderFormat(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:77,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].getPseudoHeader(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers$2].validateName(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers$2"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers$2].validateName(java.lang.CharSequence)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$2:42,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers$2].validateName(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].origin()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].isEmpty()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsConfig:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfig:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:89,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:89,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:89,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].isShortCircuit()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].isShortCurcuit()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfig].isShortCircuit()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:251,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig].isShortCircuit()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].getValue(java.util.concurrent.Callable<T>)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: 255
    functionLinenumberEnd: 259
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.util.concurrent.Callable<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder$DateValueGenerator].call()"
    - "[io.netty.channel.pool.SimpleChannelPool$7].call()"
    - "[io.netty.handler.codec.http.cors.CorsConfig$DateValueGenerator].call()"
    - "[io.netty.channel.pool.FixedChannelPool$6].call()"
    - "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].call()"
    - "[jaz.Zer].call()"
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator].call()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.concurrent.Callable].call()"
    functionUses: 1
    ICount: 13
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:256,1"
      Dst: "[java.util.concurrent.Callable].call()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:258,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:258,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:258,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:258,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:258,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:258,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].toString()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: 263
    functionLinenumberEnd: 265
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(long)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 38
    EdgeCount: 25
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:264,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:264,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:264,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:264,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:264,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:264,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:264,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:264,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].withAnyOrigin()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfig$Builder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:281,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$Builder:323,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$Builder:324,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].withOrigin(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.cors.CorsConfig$Builder].<init>()"
    - "[io.netty.handler.codec.http.cors.CorsConfig$Builder].<init>(java.lang.String[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cors.CorsConfig:289"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfig:292"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cors.CorsConfig:291"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:289,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:290,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].<init>()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:292,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].<init>(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].<init>(java.lang.String[])"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].<init>(java.lang.String[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$Builder:315,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$Builder:316,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].<init>(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig].withOrigins(java.lang.String[])"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfig$Builder].<init>(java.lang.String[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig:300,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].<init>(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:41,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:52,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 72
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].handshake(io.netty.channel.Channel)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].applyHandshakeTimeout()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 11
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:57,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].channelActive(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:58,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:58,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].handshake(io.netty.channel.Channel)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:58,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:58,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:70,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].applyHandshakeTimeout()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].applyHandshakeTimeout()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 135
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise:java.util.concurrent.TimeUnit].isDone()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$3].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler,io.netty.util.concurrent.Future)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 20
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:109"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:108"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:111"
        BranchSideFuncs:
        - "schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler,io.netty.channel.ChannelPromise)"
        - "<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler,io.netty.util.concurrent.Future)"
        - "executor()"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:108,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:112,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:112,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:112,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:128,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$3].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler,io.netty.util.concurrent.Future)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:128,1"
      Dst: "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$3].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler,io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$3"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler"
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$3:128,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 82
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 2
    ICount: 11
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:75"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:80"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
        - "tryFailure(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:79"
        BranchSideFuncs:
        - "channelInactive(io.netty.channel.ChannelHandlerContext)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:75,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:76,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:76,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:80,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].channelInactive(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext:io.netty.channel.VoidChannelPromise:io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].isHandshakeComplete()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].finishHandshake(io.netty.channel.Channel,io.netty.handler.codec.http.FullHttpResponse)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].trySuccess()"
    - "[io.netty.channel.DefaultChannelPromise].trySuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].trySuccess()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].release()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].release()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].isHandshakeComplete()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelPromise].trySuccess()"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 2
    ICount: 28
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:85"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:90"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:89"
        BranchSideFuncs:
        - "isHandshakeComplete()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:100"
        BranchSideFuncs:
        - "pipeline()"
        - "remove(io.netty.channel.ChannelHandler)"
        - "channel()"
        - "fireUserEventTriggered(java.lang.Object)"
        - "finishHandshake(io.netty.channel.Channel,io.netty.handler.codec.http.FullHttpResponse)"
        - "trySuccess()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:99"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:86,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:92,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].isHandshakeComplete()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:93,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:93,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].finishHandshake(io.netty.channel.Channel,io.netty.handler.codec.http.FullHttpResponse)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:94,1"
      Dst: "[io.netty.channel.ChannelPromise].trySuccess()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:95,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:97,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:97,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:102,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler:100,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].getHandshakeFuture()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].access$000(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$1].<init>(java.lang.Class)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$1"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$1:76,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$1].run()"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$1"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "java.lang.reflect.Method"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$1:79,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool$Tag].values()"
    functionSourceFile: "jdk.internal.reflect.ConstantPool$Tag"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "jdk.internal.reflect.ConstantPool$Tag[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool$Tag:70,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool$Tag].valueOf(java.lang.String)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool$Tag"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "jdk.internal.reflect.ConstantPool$Tag"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool$Tag:70,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool$Tag].<init>(java.lang.String,int,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool$Tag"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool$Tag:89,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool$Tag].valueOf(byte)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool$Tag"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "jdk.internal.reflect.ConstantPool$Tag"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool$Tag].values()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "jdk.internal.reflect.ConstantPool$Tag:94"
      Branch Sides:
      - BranchSide: "jdk.internal.reflect.ConstantPool$Tag:99"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.reflect.ConstantPool$Tag:98"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.reflect.ConstantPool$Tag:95"
      Branch Sides:
      - BranchSide: "jdk.internal.reflect.ConstantPool$Tag:94"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.reflect.ConstantPool$Tag:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool$Tag:94,1"
      Dst: "[jdk.internal.reflect.ConstantPool$Tag].values()"
    - Src: "jdk.internal.reflect.ConstantPool$Tag:99,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "jdk.internal.reflect.ConstantPool$Tag:99,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "jdk.internal.reflect.ConstantPool$Tag:99,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "jdk.internal.reflect.ConstantPool$Tag:99,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "jdk.internal.reflect.ConstantPool$Tag:99,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameStreamEvent$Type].values()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameStreamEvent$Type"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameStreamEvent$Type[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameStreamEvent$Type:26,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameStreamEvent$Type].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameStreamEvent$Type"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameStreamEvent$Type"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameStreamEvent$Type:26,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameStreamEvent$Type].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameStreamEvent$Type"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameStreamEvent$Type:27,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder$3].<init>(io.netty.handler.codec.compression.JZlibEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder$3"
    linkageType: ""
    functionLinenumber: 335
    functionLinenumberEnd: 337
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.compression.JZlibEncoder"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder$3:336,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder$3"
    linkageType: ""
    functionLinenumber: 338
    functionLinenumberEnd: 341
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 49
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder$3:339,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.CombinedIterator].<init>(java.util.Iterator,java.util.Iterator)"
    functionSourceFile: "io.netty.channel.group.CombinedIterator"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 36
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Iterator"
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.CombinedIterator:31,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.group.CombinedIterator:32,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.CombinedIterator].hasNext()"
    functionSourceFile: "io.netty.channel.group.CombinedIterator"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2].hasNext()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 227
    ICount: 12
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "io.netty.channel.group.CombinedIterator:40"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.CombinedIterator:44"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.CombinedIterator:43"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.CombinedIterator:44"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.CombinedIterator:47"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.CombinedIterator:46"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.CombinedIterator:40,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.group.CombinedIterator].next()"
    functionSourceFile: "io.netty.channel.group.CombinedIterator"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2].next()"
    - "[java.util.Iterator].next()"
    functionUses: 229
    ICount: 13
    EdgeCount: 54
    BranchProfiles:
    - Branch String: "io.netty.channel.group.CombinedIterator:58"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.CombinedIterator:61"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.CombinedIterator:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.CombinedIterator:56,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.CombinedIterator].remove()"
    functionSourceFile: "io.netty.channel.group.CombinedIterator"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.CombinedIterator].remove()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].remove()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].remove()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].remove()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].remove()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].remove()"
    - "[io.netty.channel.nio.NioEventLoop$7].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].remove()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].remove()"
    - "[io.netty.util.internal.ReadOnlyIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].remove()"
    - "[java.util.Iterator].remove()"
    functionUses: 21
    ICount: 4
    EdgeCount: 52
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.CombinedIterator:69,1"
      Dst: "[java.util.Iterator].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.ChannelMatchers$InstanceMatcher].<init>(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.group.ChannelMatchers$InstanceMatcher"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.ChannelMatchers$InstanceMatcher:147,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.ChannelMatchers$InstanceMatcher].matches(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.group.ChannelMatchers$InstanceMatcher"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.group.ChannelMatchers$InstanceMatcher:153"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.ChannelMatchers$InstanceMatcher:152"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socks.SocksAuthResponseDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthResponseDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthResponseDecoder:33,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthResponseDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthResponseDecoder"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 58
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.ReplayingDecoder].state()"
    - "[io.netty.handler.codec.socks.SocksSubnegotiationVersion].byteValue()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.socks.SocksAuthStatus].valueOf(byte)"
    - "[io.netty.handler.codec.socks.SocksAuthResponse].<init>(io.netty.handler.codec.socks.SocksAuthStatus)"
    - "[io.netty.channel.AbstractChannelHandlerContext:java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.lang.Error].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    functionUses: 1
    ICount: 33
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksAuthResponseDecoder:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthResponseDecoder:45"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthResponseDecoder:44"
        BranchSideFuncs:
        - "checkpoint(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthResponseDecoder:39,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].state()"
    - Src: "io.netty.handler.codec.socks.SocksAuthResponseDecoder:39,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.socks.SocksAuthResponseDecoder:41,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.socks.SocksAuthResponseDecoder:41,1"
      Dst: "[io.netty.handler.codec.socks.SocksSubnegotiationVersion].byteValue()"
    - Src: "io.netty.handler.codec.socks.SocksAuthResponseDecoder:42,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.socks.SocksAuthResponseDecoder:45,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.socks.SocksAuthResponseDecoder:48,1"
      Dst: "[io.netty.handler.codec.socks.SocksAuthStatus].valueOf(byte)"
    - Src: "io.netty.handler.codec.socks.SocksAuthResponseDecoder:49,1"
      Dst: "[io.netty.handler.codec.socks.SocksAuthResponse].<init>(io.netty.handler.codec.socks.SocksAuthStatus)"
    - Src: "io.netty.handler.codec.socks.SocksAuthResponseDecoder:53,1"
      Dst: "[java.lang.Error].<init>()"
    - Src: "io.netty.handler.codec.socks.SocksAuthResponseDecoder:56,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.socks.SocksAuthResponseDecoder:56,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.socks.SocksAuthStatus].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthStatus"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "io.netty.handler.codec.socks.SocksAuthStatus"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksAuthStatus].values()"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksAuthStatus:38"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthStatus:43"
        BranchSideFuncs:
        - "values()"
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthStatus:42"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socks.SocksAuthStatus:39"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthStatus:38"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthStatus:37"
        BranchSideFuncs:
        - "values()"
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthStatus:38,1"
      Dst: "[io.netty.handler.codec.socks.SocksAuthStatus].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socks.SocksAuthStatus].values()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthStatus"
    linkageType: ""
    functionLinenumber: 18
    functionLinenumberEnd: 20
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksAuthStatus[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthStatus:19,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].size()"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].getIfSet()"
    - "[io.netty.util.internal.InternalThreadLocalMap].size()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:80"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:83"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocal:79,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].getIfSet()"
    - Src: "io.netty.util.concurrent.FastThreadLocal:83,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].size()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].indexedVariable(int)"
    - "[java.util.Set].size()"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:177"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:180"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:179"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:180"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:183"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:182"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:183"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:186"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:185"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:186"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:189"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:188"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:189"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:192"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:191"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:192"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:195"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:194"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:195"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:198"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:197"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:198"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:201"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:200"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:201"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:204"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:207"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:206"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:207"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:211"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:210"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:212"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:217"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:212"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:217"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:211,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].indexedVariable(int)"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:215,1"
      Dst: "[java.util.Set].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 26
    CyclomaticComplexity: 14
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].destroy()"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].destroy()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocal:94,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].destroy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].destroy()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ThreadLocal].remove()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:148,1"
      Dst: "[java.lang.ThreadLocal].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].addToVariablesToRemove(io.netty.util.internal.InternalThreadLocalMap,io.netty.util.concurrent.FastThreadLocal<?>)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 110
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.InternalThreadLocalMap"
    - "io.netty.util.concurrent.FastThreadLocal<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].indexedVariable(int)"
    - "[java.util.IdentityHashMap].<init>()"
    - "[java.util.AbstractCollection:java.util.Collections:java.util.HashSet:java.util.TreeSet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView].newSetFromMap(java.util.Map)"
    - "[io.netty.util.internal.InternalThreadLocalMap].setIndexedVariable(int,java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].add(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].add(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].add(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].add(java.lang.Object)"
    - "[java.util.Collections].newSetFromMap(java.util.Map)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 2
    ICount: 17
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:101"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:102"
        BranchSideFuncs:
        - "<init>()"
        - "setIndexedVariable(int,java.lang.Object)"
        - "newSetFromMap(java.util.Map)"
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:101"
        BranchSideFuncs:
        - "<init>()"
        - "setIndexedVariable(int,java.lang.Object)"
        - "newSetFromMap(java.util.Map)"
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:101"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:105"
        BranchSideFuncs:
        - "<init>()"
        - "setIndexedVariable(int,java.lang.Object)"
        - "newSetFromMap(java.util.Map)"
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocal:99,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].indexedVariable(int)"
    - Src: "io.netty.util.concurrent.FastThreadLocal:102,1"
      Dst: "[java.util.IdentityHashMap].<init>()"
    - Src: "io.netty.util.concurrent.FastThreadLocal:102,1"
      Dst: "[java.util.Collections].newSetFromMap(java.util.Map)"
    - Src: "io.netty.util.concurrent.FastThreadLocal:103,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].setIndexedVariable(int,java.lang.Object)"
    - Src: "io.netty.util.concurrent.FastThreadLocal:108,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].removeFromVariablesToRemove(io.netty.util.internal.InternalThreadLocalMap,io.netty.util.concurrent.FastThreadLocal<?>)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 124
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.InternalThreadLocalMap"
    - "io.netty.util.concurrent.FastThreadLocal<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].indexedVariable(int)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet:java.util.AbstractCollection:java.util.HashSet:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.TreeSet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView].remove(java.lang.Object)"
    - "[java.util.Set].remove(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:116"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:117"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:116"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:116"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:121"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:120"
        BranchSideFuncs:
        - "remove(java.lang.Object)"
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocal:114,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].indexedVariable(int)"
    - Src: "io.netty.util.concurrent.FastThreadLocal:122,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].getIfExists()"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 158
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].getIfSet()"
    - "[io.netty.util.internal.InternalThreadLocalMap].indexedVariable(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:151"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:157"
        BranchSideFuncs:
        - "indexedVariable(int)"
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:156"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:153"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocal:150,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].getIfSet()"
    - Src: "io.netty.util.concurrent.FastThreadLocal:152,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].indexedVariable(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].get(io.netty.util.internal.InternalThreadLocalMap)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 172
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.InternalThreadLocalMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].indexedVariable(int)"
    - "[io.netty.util.concurrent.FastThreadLocal].initialize(io.netty.util.internal.InternalThreadLocalMap)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:167"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:171"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:170"
        BranchSideFuncs:
        - "initialize(io.netty.util.internal.InternalThreadLocalMap)"
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocal:166,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].indexedVariable(int)"
    - Src: "io.netty.util.concurrent.FastThreadLocal:171,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].initialize(io.netty.util.internal.InternalThreadLocalMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].set(io.netty.util.internal.InternalThreadLocalMap,java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 209
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.InternalThreadLocalMap"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].setKnownNotUnset(io.netty.util.internal.InternalThreadLocalMap,java.lang.Object)"
    - "[io.netty.util.concurrent.FastThreadLocal].remove(io.netty.util.internal.InternalThreadLocalMap)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:203"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:206"
        BranchSideFuncs:
        - "setKnownNotUnset(io.netty.util.internal.InternalThreadLocalMap,java.lang.Object)"
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:205"
        BranchSideFuncs:
        - "remove(io.netty.util.internal.InternalThreadLocalMap)"
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocal:204,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].setKnownNotUnset(io.netty.util.internal.InternalThreadLocalMap,java.lang.Object)"
    - Src: "io.netty.util.concurrent.FastThreadLocal:206,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].remove(io.netty.util.internal.InternalThreadLocalMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].isSet()"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].getIfSet()"
    - "[io.netty.util.concurrent.FastThreadLocal].isSet(io.netty.util.internal.InternalThreadLocalMap)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocal:223,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].getIfSet()"
    - Src: "io.netty.util.concurrent.FastThreadLocal:223,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].isSet(io.netty.util.internal.InternalThreadLocalMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocal].isSet(io.netty.util.internal.InternalThreadLocalMap)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocal"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.InternalThreadLocalMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].isIndexedVariableSet(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:231"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:230"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.FastThreadLocal:231"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocal:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocal:231,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].isIndexedVariableSet(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].isIndexedVariableSet(int)"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:380"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:378"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:380"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:378"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.SslHandler$1].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$1:641,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$1].run()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$1"
    linkageType: ""
    functionLinenumber: 643
    functionLinenumberEnd: 646
    functionDepth: 19
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].access$500(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelPromise)"
    functionUses: 49
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$1:644,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$500(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$500(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 18
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].closeOutbound0(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].closeOutbound0(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].closeOutbound0(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 651
    functionLinenumberEnd: 662
    functionDepth: 17
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].setState(int)"
    - "[io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine].closeOutbound()"
    - "[io.netty.handler.ssl.JettyNpnSslEngine].closeOutbound()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].closeOutbound()"
    - "[io.netty.handler.ssl.JdkSslEngine].closeOutbound()"
    - "[io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine].closeOutbound()"
    - "[io.netty.handler.ssl.SslHandler].flush(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[javax.net.ssl.SSLEngine].closeOutbound()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:657"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:661"
        BranchSideFuncs:
        - "channel()"
        - "closeOutbound()"
        - "warn(java.lang.String,java.lang.Object,java.lang.Object)"
        - "flush(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
        - "setState(int)"
        - "tryFailure(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:660"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:652,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:653,1"
      Dst: "[javax.net.ssl.SSLEngine].closeOutbound()"
    - Src: "io.netty.handler.ssl.SslHandler:655,1"
      Dst: "[io.netty.handler.ssl.SslHandler].flush(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler:657,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:658,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.ssl.SslHandler:658,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler].setState(int)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 2273
    functionLinenumberEnd: 2276
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].flush(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1966
    functionLinenumberEnd: 1974
    functionDepth: 16
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractCoalescingBufferQueue].add(io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.ssl.SslHandler].newPendingWritesNullException()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandler].flush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 2
    ICount: 13
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1967"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1970"
        BranchSideFuncs:
        - "add(io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1969"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "newPendingWritesNullException()"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1968,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].add(io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler:1970,1"
      Dst: "[io.netty.handler.ssl.SslHandler].newPendingWritesNullException()"
    - Src: "io.netty.handler.ssl.SslHandler:1970,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:1972,1"
      Dst: "[io.netty.handler.ssl.SslHandler].flush(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler].newPendingWritesNullException()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 743
    functionLinenumberEnd: 745
    functionDepth: 0
    returnType: "java.lang.IllegalStateException"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:744,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].flush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 764
    functionLinenumberEnd: 786
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - "[io.netty.handler.ssl.SslHandler].setState(int)"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].writeAndRemoveAll(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.SslHandler].forceFlush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.SslHandler].startHandshakeProcessing(boolean)"
    - "[io.netty.handler.ssl.SslHandler].wrapAndFlush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.SslHandler].setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    functionUses: 3
    ICount: 21
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:765"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:775"
        BranchSideFuncs:
        - "forceFlush(io.netty.channel.ChannelHandlerContext)"
        - "writeAndRemoveAll(io.netty.channel.ChannelHandlerContext)"
        - "startHandshakeProcessing(boolean)"
        - "setState(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:774"
        BranchSideFuncs:
        - "isStateSet(int)"
    - Branch String: "io.netty.handler.ssl.SslHandler:765"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:775"
        BranchSideFuncs:
        - "forceFlush(io.netty.channel.ChannelHandlerContext)"
        - "writeAndRemoveAll(io.netty.channel.ChannelHandlerContext)"
        - "startHandshakeProcessing(boolean)"
        - "setState(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:774"
        BranchSideFuncs:
        - "isStateSet(int)"
    - Branch String: "io.netty.handler.ssl.SslHandler:775"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:780"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:779"
        BranchSideFuncs:
        - "wrapAndFlush(io.netty.channel.ChannelHandlerContext)"
        - "throwException(java.lang.Throwable)"
        - "setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:765,1"
      Dst: "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - Src: "io.netty.handler.ssl.SslHandler:766,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:767,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].writeAndRemoveAll(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.SslHandler:768,1"
      Dst: "[io.netty.handler.ssl.SslHandler].forceFlush(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.SslHandler:771,1"
      Dst: "[io.netty.handler.ssl.SslHandler].startHandshakeProcessing(boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:780,1"
      Dst: "[io.netty.handler.ssl.SslHandler].wrapAndFlush(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.SslHandler:782,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:783,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 2269
    functionLinenumberEnd: 2271
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:2270"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2269"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler].forceFlush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 2136
    functionLinenumberEnd: 2140
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].clearState(int)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 9
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:2137,1"
      Dst: "[io.netty.handler.ssl.SslHandler].clearState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:2138,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].startHandshakeProcessing(boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1999
    functionLinenumberEnd: 2013
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - "[io.netty.handler.ssl.SslHandler].setState(int)"
    - "[io.netty.handler.ssl.JdkSslEngine].getUseClientMode()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getUseClientMode()"
    - "[io.netty.handler.ssl.SslHandler].handshake(boolean)"
    - "[io.netty.handler.ssl.SslHandler].applyHandshakeTimeout()"
    - "[io.netty.handler.ssl.SslHandler].forceFlush(io.netty.channel.ChannelHandlerContext)"
    - "[javax.net.ssl.SSLEngine].getUseClientMode()"
    functionUses: 3
    ICount: 16
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:2000"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2009"
        BranchSideFuncs:
        - "getUseClientMode()"
        - "setState(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:2008"
        BranchSideFuncs:
        - "isStateSet(int)"
    - Branch String: "io.netty.handler.ssl.SslHandler:2002"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2007"
        BranchSideFuncs:
        - "applyHandshakeTimeout()"
    - Branch String: "io.netty.handler.ssl.SslHandler:2009"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2012"
        BranchSideFuncs:
        - "forceFlush(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:2011"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:2000,1"
      Dst: "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - Src: "io.netty.handler.ssl.SslHandler:2001,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:2002,1"
      Dst: "[javax.net.ssl.SSLEngine].getUseClientMode()"
    - Src: "io.netty.handler.ssl.SslHandler:2006,1"
      Dst: "[io.netty.handler.ssl.SslHandler].handshake(boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:2008,1"
      Dst: "[io.netty.handler.ssl.SslHandler].applyHandshakeTimeout()"
    - Src: "io.netty.handler.ssl.SslHandler:2010,1"
      Dst: "[io.netty.handler.ssl.SslHandler].forceFlush(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.SslHandler].handshake(boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 2071
    functionLinenumberEnd: 2099
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getHandshakeStatus()"
    - "[io.netty.handler.ssl.JdkSslEngine].getHandshakeStatus()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].beginHandshake()"
    - "[io.netty.handler.ssl.JdkSslEngine].beginHandshake()"
    - "[io.netty.handler.ssl.SslHandler].wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
    - "[io.netty.handler.ssl.SslHandler].setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandler].forceFlush(io.netty.channel.ChannelHandlerContext)"
    - "[javax.net.ssl.SSLEngine].getHandshakeStatus()"
    - "[java.util.concurrent.Future].isDone()"
    - "[javax.net.ssl.SSLEngine].beginHandshake()"
    functionUses: 2
    ICount: 28
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:2072"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2076"
        BranchSideFuncs:
        - "isDone()"
    - Branch String: "io.netty.handler.ssl.SslHandler:2077"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2087"
        BranchSideFuncs:
        - "wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
        - "beginHandshake()"
        - "setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "isDone()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:2086"
        BranchSideFuncs:
        - "wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
        - "beginHandshake()"
        - "setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - Branch String: "io.netty.handler.ssl.SslHandler:2094"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2098"
        BranchSideFuncs:
        - "forceFlush(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:2097"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:2094"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2098"
        BranchSideFuncs:
        - "forceFlush(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:2097"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:2094"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2097"
        BranchSideFuncs:
        - "forceFlush(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:2096"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:2072,1"
      Dst: "[javax.net.ssl.SSLEngine].getHandshakeStatus()"
    - Src: "io.netty.handler.ssl.SslHandler:2077,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.ssl.SslHandler:2089,1"
      Dst: "[javax.net.ssl.SSLEngine].beginHandshake()"
    - Src: "io.netty.handler.ssl.SslHandler:2090,1"
      Dst: "[io.netty.handler.ssl.SslHandler].wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:2095,1"
      Dst: "[io.netty.handler.ssl.SslHandler].forceFlush(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.SslHandler:2092,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.SslHandler].wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 914
    functionLinenumberEnd: 1004
    functionDepth: 12
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].isRemoved()"
    - "[io.netty.channel.AbstractChannelHandlerContext].isRemoved()"
    - "[io.netty.handler.ssl.SslHandler].allocateOutNetBuf(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.ssl.SslHandler].wrap(io.netty.buffer.ByteBufAllocator,javax.net.ssl.SSLEngine,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[javax.net.ssl.SSLEngineResult].bytesProduced()"
    - "[io.netty.handler.ssl.SslHandler$2].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object)"
    - "[io.netty.handler.ssl.SslHandler].setState(int)"
    - "[javax.net.ssl.SSLEngineResult].getHandshakeStatus()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].isEmpty()"
    - "[io.netty.handler.ssl.SslHandler].setHandshakeSuccess()"
    - "[io.netty.handler.ssl.SslHandler].wrap(io.netty.channel.ChannelHandlerContext,boolean)"
    - "[io.netty.handler.ssl.SslHandler].runDelegatedTasks(boolean)"
    - "[io.netty.handler.ssl.SslHandler].unwrapNonAppData(io.netty.channel.ChannelHandlerContext)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.net.ssl.SSLEngineResult].bytesConsumed()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.channel.ChannelHandlerContext].isRemoved()"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 3
    ICount: 87
    EdgeCount: 101
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:920"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:999"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:998"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:921"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:926"
        BranchSideFuncs:
        - "wrap(io.netty.buffer.ByteBufAllocator,javax.net.ssl.SSLEngine,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.ssl.SslHandler:928"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:944"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
        - "write(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:943"
        BranchSideFuncs:
        - "ordinal()"
    - Branch String: "io.netty.handler.ssl.SslHandler:938"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:941"
        BranchSideFuncs:
        - "setState(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:940"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:951"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:999"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:998"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:951"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:999"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:998"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:951"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:999"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:998"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:999"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:954"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:953"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:956"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:988"
        BranchSideFuncs:
        - "isEmpty()"
        - "unwrapNonAppData(io.netty.channel.ChannelHandlerContext)"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "getHandshakeStatus()"
        - "setHandshakeSuccess()"
        - "<init>()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
        - "bytesConsumed()"
        - "runDelegatedTasks(boolean)"
        - "<init>(java.lang.String)"
        - "write(java.lang.Object)"
        - "setState(int)"
        - "ordinal()"
        - "bytesProduced()"
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:987"
        BranchSideFuncs:
        - "bytesProduced()"
    - Branch String: "io.netty.handler.ssl.SslHandler:963"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:999"
        BranchSideFuncs:
        - "isEmpty()"
        - "unwrapNonAppData(io.netty.channel.ChannelHandlerContext)"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "getHandshakeStatus()"
        - "setHandshakeSuccess()"
        - "<init>()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
        - "bytesConsumed()"
        - "runDelegatedTasks(boolean)"
        - "<init>(java.lang.String)"
        - "write(java.lang.Object)"
        - "setState(int)"
        - "ordinal()"
        - "bytesProduced()"
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:998"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:963"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:988"
        BranchSideFuncs:
        - "isEmpty()"
        - "unwrapNonAppData(io.netty.channel.ChannelHandlerContext)"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "getHandshakeStatus()"
        - "setHandshakeSuccess()"
        - "<init>()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
        - "bytesConsumed()"
        - "runDelegatedTasks(boolean)"
        - "<init>(java.lang.String)"
        - "write(java.lang.Object)"
        - "setState(int)"
        - "ordinal()"
        - "bytesProduced()"
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:987"
        BranchSideFuncs:
        - "bytesProduced()"
    - Branch String: "io.netty.handler.ssl.SslHandler:999"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:967"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:966"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:973"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:978"
        BranchSideFuncs:
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:977"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:973"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:978"
        BranchSideFuncs:
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:977"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:973"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:978"
        BranchSideFuncs:
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:977"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:978"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:999"
        BranchSideFuncs:
        - "unwrapNonAppData(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:998"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:999"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:981"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:980"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:988"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:994"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:993"
        BranchSideFuncs:
        - "getHandshakeStatus()"
        - "bytesConsumed()"
    - Branch String: "io.netty.handler.ssl.SslHandler:988"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:994"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:993"
        BranchSideFuncs:
        - "getHandshakeStatus()"
        - "bytesConsumed()"
    - Branch String: "io.netty.handler.ssl.SslHandler:994"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:997"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:996"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:994"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:997"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:996"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:999"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1003"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1002"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:999"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1002"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1001"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:916,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.ssl.SslHandler:920,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].isRemoved()"
    - Src: "io.netty.handler.ssl.SslHandler:925,1"
      Dst: "[io.netty.handler.ssl.SslHandler].allocateOutNetBuf(io.netty.channel.ChannelHandlerContext,int,int)"
    - Src: "io.netty.handler.ssl.SslHandler:927,1"
      Dst: "[io.netty.handler.ssl.SslHandler].wrap(io.netty.buffer.ByteBufAllocator,javax.net.ssl.SSLEngine,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.SslHandler:928,1"
      Dst: "[javax.net.ssl.SSLEngineResult].bytesProduced()"
    - Src: "io.netty.handler.ssl.SslHandler:929,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:929,1"
      Dst: "[io.netty.handler.ssl.SslHandler$2].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.SslHandler:929,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.ssl.SslHandler:939,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:944,1"
      Dst: "[javax.net.ssl.SSLEngineResult].getHandshakeStatus()"
    - Src: "io.netty.handler.ssl.SslHandler:945,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.ssl.SslHandler:951,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setHandshakeSuccess()"
    - Src: "io.netty.handler.ssl.SslHandler:951,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].isEmpty()"
    - Src: "io.netty.handler.ssl.SslHandler:952,1"
      Dst: "[io.netty.handler.ssl.SslHandler].wrap(io.netty.channel.ChannelHandlerContext,boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:1000,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.ssl.SslHandler:956,1"
      Dst: "[io.netty.handler.ssl.SslHandler].runDelegatedTasks(boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:963,1"
      Dst: "[io.netty.handler.ssl.SslHandler].unwrapNonAppData(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.SslHandler:983,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.SslHandler:983,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslHandler:983,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:983,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.SslHandler:983,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslHandler:994,1"
      Dst: "[javax.net.ssl.SSLEngineResult].bytesConsumed()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 47
    CyclomaticComplexity: 24
  - functionName: "[io.netty.handler.ssl.SslHandler].allocateOutNetBuf(io.netty.channel.ChannelHandlerContext,int,int)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 2265
    functionLinenumberEnd: 2267
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.handler.ssl.SslHandler$SslEngineType$1].allocateWrapBuffer(io.netty.handler.ssl.SslHandler,io.netty.buffer.ByteBufAllocator,int,int)"
    - "[io.netty.handler.ssl.SslHandler$SslEngineType$2].allocateWrapBuffer(io.netty.handler.ssl.SslHandler,io.netty.buffer.ByteBufAllocator,int,int)"
    - "[io.netty.handler.ssl.SslHandler$SslEngineType$3].allocateWrapBuffer(io.netty.handler.ssl.SslHandler,io.netty.buffer.ByteBufAllocator,int,int)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.handler.ssl.SslHandler$SslEngineType].allocateWrapBuffer(io.netty.handler.ssl.SslHandler,io.netty.buffer.ByteBufAllocator,int,int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:2266,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.ssl.SslHandler:2266,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslEngineType].allocateWrapBuffer(io.netty.handler.ssl.SslHandler,io.netty.buffer.ByteBufAllocator,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].wrap(io.netty.buffer.ByteBufAllocator,javax.net.ssl.SSLEngine,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1007
    functionLinenumberEnd: 1059
    functionDepth: 0
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "javax.net.ssl.SSLEngine"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isDirect()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.DuplicatedByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].isDirect()"
    - "[io.netty.buffer.CompositeByteBuf].isDirect()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBuf].isDirect()"
    - "[io.netty.buffer.PooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.PooledDirectByteBuf].isDirect()"
    - "[io.netty.buffer.SlicedByteBuf].isDirect()"
    - "[io.netty.buffer.EmptyByteBuf].isDirect()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isDirect()"
    - "[io.netty.buffer.FixedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedByteBuf].isDirect()"
    - "[io.netty.buffer.SwappedByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isDirect()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].nioBuffers()"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffers()"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffers()"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers()"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffers()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].nioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].wrap(java.nio.ByteBuffer[],java.nio.ByteBuffer)"
    - "[io.netty.handler.ssl.JdkSslEngine].wrap(java.nio.ByteBuffer[],java.nio.ByteBuffer)"
    - "[javax.net.ssl.SSLEngine].wrap(java.nio.ByteBuffer[],java.nio.ByteBuffer)"
    - "[javax.net.ssl.SSLEngineResult].bytesConsumed()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[javax.net.ssl.SSLEngineResult].bytesProduced()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[javax.net.ssl.SSLEngineResult].getStatus()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getPacketBufferSize()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getPacketBufferSize()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].getPacketBufferSize()"
    - "[io.netty.handler.ssl.JdkSslEngine].getSession()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getSession()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].isDirect()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].nioBuffers()"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[javax.net.ssl.SSLEngine].getSession()"
    - "[javax.net.ssl.SSLSession].getPacketBufferSize()"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    functionUses: 2
    ICount: 59
    EdgeCount: 206
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1016"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1020"
        BranchSideFuncs:
        - "nioBufferCount()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1016"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1032"
        BranchSideFuncs:
        - "readerIndex()"
        - "directBuffer(int)"
        - "internalNioBuffer(int,int)"
        - "writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1021"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1027"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1026"
        BranchSideFuncs:
        - "nioBuffers()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1021"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1027"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1026"
        BranchSideFuncs:
        - "nioBuffers()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1045"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1053"
        BranchSideFuncs:
        - "getPacketBufferSize()"
        - "getSession()"
        - "ensureWritable(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1052"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1055"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1048"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1047"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1055"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1058"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1057"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1010,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.ssl.SslHandler:1011,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.ssl.SslHandler:1016,1"
      Dst: "[io.netty.buffer.ByteBuf].isDirect()"
    - Src: "io.netty.handler.ssl.SslHandler:1021,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.handler.ssl.SslHandler:1025,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.handler.ssl.SslHandler:1027,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers()"
    - Src: "io.netty.handler.ssl.SslHandler:1033,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1034,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.ssl.SslHandler:1040,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.ssl.SslHandler:1040,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.handler.ssl.SslHandler:1040,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - Src: "io.netty.handler.ssl.SslHandler:1041,1"
      Dst: "[javax.net.ssl.SSLEngine].wrap(java.nio.ByteBuffer[],java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.SslHandler:1042,1"
      Dst: "[javax.net.ssl.SSLEngineResult].bytesConsumed()"
    - Src: "io.netty.handler.ssl.SslHandler:1042,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1043,1"
      Dst: "[javax.net.ssl.SSLEngineResult].bytesProduced()"
    - Src: "io.netty.handler.ssl.SslHandler:1043,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1045,1"
      Dst: "[javax.net.ssl.SSLEngineResult].getStatus()"
    - Src: "io.netty.handler.ssl.SslHandler:1046,1"
      Dst: "[javax.net.ssl.SSLEngine].getSession()"
    - Src: "io.netty.handler.ssl.SslHandler:1046,1"
      Dst: "[javax.net.ssl.SSLSession].getPacketBufferSize()"
    - Src: "io.netty.handler.ssl.SslHandler:1046,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1056,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.ssl.SslHandler$2].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$2"
    linkageType: ""
    functionLinenumber: 928
    functionLinenumberEnd: 930
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$2:929,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].setHandshakeSuccess()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1828
    functionLinenumberEnd: 1847
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].trySuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].trySuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].trySuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].trySuccess(java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.handler.ssl.JdkSslEngine].getSession()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getSession()"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].getProtocol()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getProtocol()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getProtocol()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].getCipherSuite()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getCipherSuite()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getCipherSuite()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - "[io.netty.handler.ssl.SslHandler].clearState(int)"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.embedded.EmbeddedChannel].config()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].config()"
    - "[io.netty.bootstrap.FailedChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.local.LocalServerChannel].config()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].config()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].config()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].isAutoRead()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].read()"
    - "[io.netty.channel.AbstractChannelHandlerContext].read()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[javax.net.ssl.SSLEngine].getSession()"
    - "[javax.net.ssl.SSLSession].getProtocol()"
    - "[javax.net.ssl.SSLSession].getCipherSuite()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.ChannelConfig].isAutoRead()"
    - "[io.netty.channel.ChannelHandlerContext].read()"
    functionUses: 6
    ICount: 45
    EdgeCount: 72
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1829"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:-1"
        BranchSideFuncs:
        - "isDebugEnabled()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1829"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:-1"
        BranchSideFuncs:
        - "isDebugEnabled()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1829"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1840"
        BranchSideFuncs:
        - "isDebugEnabled()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1839"
        BranchSideFuncs:
        - "isStateSet(int)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1830"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1838"
        BranchSideFuncs:
        - "getSession()"
        - "debug(java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1837"
        BranchSideFuncs:
        - "fireUserEventTriggered(java.lang.Object)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1840"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1846"
        BranchSideFuncs:
        - "channel()"
        - "clearState(int)"
        - "config()"
        - "isAutoRead()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1845"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1842"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1846"
        BranchSideFuncs:
        - "read()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1845"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1829,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.ssl.SslHandler:1829,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.ssl.SslHandler:1829,1"
      Dst: "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:1830,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.handler.ssl.SslHandler:1831,1"
      Dst: "[javax.net.ssl.SSLEngine].getSession()"
    - Src: "io.netty.handler.ssl.SslHandler:1835,1"
      Dst: "[javax.net.ssl.SSLSession].getProtocol()"
    - Src: "io.netty.handler.ssl.SslHandler:1836,1"
      Dst: "[javax.net.ssl.SSLSession].getCipherSuite()"
    - Src: "io.netty.handler.ssl.SslHandler:1832,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.SslHandler:1838,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:1840,1"
      Dst: "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1841,1"
      Dst: "[io.netty.handler.ssl.SslHandler].clearState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1842,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.handler.ssl.SslHandler:1842,1"
      Dst: "[io.netty.channel.ChannelConfig].isAutoRead()"
    - Src: "io.netty.handler.ssl.SslHandler:1843,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.ssl.SslHandler].wrap(io.netty.channel.ChannelHandlerContext,boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 808
    functionLinenumberEnd: 907
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].isRemoved()"
    - "[io.netty.channel.AbstractChannelHandlerContext].isRemoved()"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].remove(io.netty.buffer.ByteBufAllocator,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].removeFirst(io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.ssl.SslHandler].allocateOutNetBuf(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.ssl.SslHandler].wrap(io.netty.buffer.ByteBufAllocator,javax.net.ssl.SSLEngine,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].addFirst(io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object)"
    - "[javax.net.ssl.SSLEngineResult].getStatus()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.handler.ssl.SslClosedEngineException].<init>(java.lang.String)"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
    - "[javax.net.ssl.SSLEngineResult].getHandshakeStatus()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.ssl.SslHandler].runDelegatedTasks(boolean)"
    - "[io.netty.handler.ssl.SslHandler].setHandshakeSuccess()"
    - "[javax.net.ssl.SSLEngineResult].bytesProduced()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].isEmpty()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].add(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.ssl.SslHandler].readIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.ssl.SslHandler].setState(int)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.channel.ChannelHandlerContext].isRemoved()"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object)"
    - "[io.netty.util.concurrent.Future].cause()"
    functionUses: 5
    ICount: 113
    EdgeCount: 144
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:815"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:863"
        BranchSideFuncs:
        - "newPromise()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:862"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "setHandshakeSuccess()"
        - "<init>()"
        - "runDelegatedTasks(boolean)"
        - "releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "bytesProduced()"
        - "isEmpty()"
        - "append(java.lang.Object)"
        - "toString()"
        - "getHandshakeStatus()"
        - "add(io.netty.buffer.ByteBuf)"
        - "<init>(java.lang.String)"
        - "ordinal()"
    - Branch String: "io.netty.handler.ssl.SslHandler:817"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:819"
        BranchSideFuncs:
        - "remove(io.netty.buffer.ByteBufAllocator,int,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:818"
        BranchSideFuncs:
        - "removeFirst(io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.ssl.SslHandler:820"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:824"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:823"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:824"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:828"
        BranchSideFuncs:
        - "allocateOutNetBuf(io.netty.channel.ChannelHandlerContext,int,int)"
        - "nioBufferCount()"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:827"
        BranchSideFuncs:
        - "wrap(io.netty.buffer.ByteBufAllocator,javax.net.ssl.SSLEngine,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.ssl.SslHandler:829"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:835"
        BranchSideFuncs:
        - "addFirst(io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:834"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:840"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:840"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:839"
        BranchSideFuncs:
        - "isReadable()"
    - Branch String: "io.netty.handler.ssl.SslHandler:843"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:846"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:845"
        BranchSideFuncs:
        - "write(java.lang.Object)"
    - Branch String: "io.netty.handler.ssl.SslHandler:840"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:853"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:852"
        BranchSideFuncs:
        - "getStatus()"
    - Branch String: "io.netty.handler.ssl.SslHandler:853"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:863"
        BranchSideFuncs:
        - "isReadable()"
        - "append(java.lang.String)"
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
        - "addFirst(io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
        - "setHandshakeSuccess()"
        - "<init>()"
        - "getStatus()"
        - "runDelegatedTasks(boolean)"
        - "write(java.lang.Object)"
        - "releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "bytesProduced()"
        - "cause()"
        - "isEmpty()"
        - "append(java.lang.Object)"
        - "toString()"
        - "allocateOutNetBuf(io.netty.channel.ChannelHandlerContext,int,int)"
        - "wrap(io.netty.buffer.ByteBufAllocator,javax.net.ssl.SSLEngine,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
        - "getHandshakeStatus()"
        - "add(io.netty.buffer.ByteBuf)"
        - "nioBufferCount()"
        - "<init>(java.lang.String)"
        - "ordinal()"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:862"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "setHandshakeSuccess()"
        - "<init>()"
        - "runDelegatedTasks(boolean)"
        - "releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "bytesProduced()"
        - "isEmpty()"
        - "append(java.lang.Object)"
        - "toString()"
        - "getHandshakeStatus()"
        - "add(io.netty.buffer.ByteBuf)"
        - "<init>(java.lang.String)"
        - "ordinal()"
    - Branch String: "io.netty.handler.ssl.SslHandler:857"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:863"
        BranchSideFuncs:
        - "cause()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:862"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "setHandshakeSuccess()"
        - "<init>()"
        - "runDelegatedTasks(boolean)"
        - "releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "bytesProduced()"
        - "isEmpty()"
        - "append(java.lang.Object)"
        - "toString()"
        - "getHandshakeStatus()"
        - "add(io.netty.buffer.ByteBuf)"
        - "<init>(java.lang.String)"
        - "ordinal()"
    - Branch String: "io.netty.handler.ssl.SslHandler:859"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:863"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:862"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "setHandshakeSuccess()"
        - "<init>()"
        - "runDelegatedTasks(boolean)"
        - "releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "bytesProduced()"
        - "isEmpty()"
        - "append(java.lang.Object)"
        - "toString()"
        - "getHandshakeStatus()"
        - "add(io.netty.buffer.ByteBuf)"
        - "<init>(java.lang.String)"
        - "ordinal()"
    - Branch String: "io.netty.handler.ssl.SslHandler:899"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:902"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:901"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:902"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:863"
        BranchSideFuncs:
        - "setState(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:862"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "setHandshakeSuccess()"
        - "<init>()"
        - "runDelegatedTasks(boolean)"
        - "releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "bytesProduced()"
        - "isEmpty()"
        - "append(java.lang.Object)"
        - "toString()"
        - "getHandshakeStatus()"
        - "add(io.netty.buffer.ByteBuf)"
        - "<init>(java.lang.String)"
        - "ordinal()"
    - Branch String: "io.netty.handler.ssl.SslHandler:868"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:863"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "setHandshakeSuccess()"
        - "<init>()"
        - "runDelegatedTasks(boolean)"
        - "releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "bytesProduced()"
        - "isEmpty()"
        - "append(java.lang.Object)"
        - "toString()"
        - "getHandshakeStatus()"
        - "add(io.netty.buffer.ByteBuf)"
        - "<init>(java.lang.String)"
        - "ordinal()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:862"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "setHandshakeSuccess()"
        - "<init>()"
        - "runDelegatedTasks(boolean)"
        - "releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "bytesProduced()"
        - "isEmpty()"
        - "append(java.lang.Object)"
        - "toString()"
        - "getHandshakeStatus()"
        - "add(io.netty.buffer.ByteBuf)"
        - "<init>(java.lang.String)"
        - "ordinal()"
    - Branch String: "io.netty.handler.ssl.SslHandler:883"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:863"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "setHandshakeSuccess()"
        - "<init>()"
        - "runDelegatedTasks(boolean)"
        - "releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "bytesProduced()"
        - "isEmpty()"
        - "append(java.lang.Object)"
        - "toString()"
        - "getHandshakeStatus()"
        - "add(io.netty.buffer.ByteBuf)"
        - "<init>(java.lang.String)"
        - "ordinal()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:862"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "setHandshakeSuccess()"
        - "<init>()"
        - "runDelegatedTasks(boolean)"
        - "releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "bytesProduced()"
        - "isEmpty()"
        - "append(java.lang.Object)"
        - "toString()"
        - "getHandshakeStatus()"
        - "add(io.netty.buffer.ByteBuf)"
        - "<init>(java.lang.String)"
        - "ordinal()"
    - Branch String: "io.netty.handler.ssl.SslHandler:883"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:863"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "setHandshakeSuccess()"
        - "<init>()"
        - "runDelegatedTasks(boolean)"
        - "releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "bytesProduced()"
        - "isEmpty()"
        - "append(java.lang.Object)"
        - "toString()"
        - "getHandshakeStatus()"
        - "add(io.netty.buffer.ByteBuf)"
        - "<init>(java.lang.String)"
        - "ordinal()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:862"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "setHandshakeSuccess()"
        - "<init>()"
        - "runDelegatedTasks(boolean)"
        - "releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "bytesProduced()"
        - "isEmpty()"
        - "append(java.lang.Object)"
        - "toString()"
        - "getHandshakeStatus()"
        - "add(io.netty.buffer.ByteBuf)"
        - "<init>(java.lang.String)"
        - "ordinal()"
    - Branch String: "io.netty.handler.ssl.SslHandler:899"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:902"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:901"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:902"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:863"
        BranchSideFuncs:
        - "setState(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:862"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "setHandshakeSuccess()"
        - "<init>()"
        - "runDelegatedTasks(boolean)"
        - "releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "bytesProduced()"
        - "isEmpty()"
        - "append(java.lang.Object)"
        - "toString()"
        - "getHandshakeStatus()"
        - "add(io.netty.buffer.ByteBuf)"
        - "<init>(java.lang.String)"
        - "ordinal()"
    - Branch String: "io.netty.handler.ssl.SslHandler:899"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:902"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:901"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:902"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:906"
        BranchSideFuncs:
        - "setState(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:905"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:899"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:902"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:901"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:902"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:905"
        BranchSideFuncs:
        - "setState(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:904"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:810,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.ssl.SslHandler:815,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].isRemoved()"
    - Src: "io.netty.handler.ssl.SslHandler:816,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.ssl.SslHandler:818,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].remove(io.netty.buffer.ByteBufAllocator,int,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler:819,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].removeFirst(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler:825,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.ssl.SslHandler:825,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.handler.ssl.SslHandler:825,1"
      Dst: "[io.netty.handler.ssl.SslHandler].allocateOutNetBuf(io.netty.channel.ChannelHandlerContext,int,int)"
    - Src: "io.netty.handler.ssl.SslHandler:828,1"
      Dst: "[io.netty.handler.ssl.SslHandler].wrap(io.netty.buffer.ByteBufAllocator,javax.net.ssl.SSLEngine,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.SslHandler:829,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.ssl.SslHandler:830,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].addFirst(io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler:835,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.ssl.SslHandler:844,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler:846,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:853,1"
      Dst: "[javax.net.ssl.SSLEngineResult].getStatus()"
    - Src: "io.netty.handler.ssl.SslHandler:856,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.ssl.SslHandler:858,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].cause()"
    - Src: "io.netty.handler.ssl.SslHandler:860,1"
      Dst: "[io.netty.handler.ssl.SslClosedEngineException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslHandler:863,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:903,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:866,1"
      Dst: "[javax.net.ssl.SSLEngineResult].getHandshakeStatus()"
    - Src: "io.netty.handler.ssl.SslHandler:866,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.ssl.SslHandler:868,1"
      Dst: "[io.netty.handler.ssl.SslHandler].runDelegatedTasks(boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:876,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setHandshakeSuccess()"
    - Src: "io.netty.handler.ssl.SslHandler:883,1"
      Dst: "[javax.net.ssl.SSLEngineResult].bytesProduced()"
    - Src: "io.netty.handler.ssl.SslHandler:883,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].isEmpty()"
    - Src: "io.netty.handler.ssl.SslHandler:884,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].add(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.SslHandler:890,1"
      Dst: "[io.netty.handler.ssl.SslHandler].readIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.SslHandler:893,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.SslHandler:893,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslHandler:894,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:894,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.SslHandler:894,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 52
    CyclomaticComplexity: 23
  - functionName: "[io.netty.util.concurrent.DefaultPromise].cause()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionDepth: 3
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].cause0(java.lang.Object)"
    functionUses: 90
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:158,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].cause0(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].cause0(java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 173
    functionDepth: 2
    returnType: "java.lang.Throwable"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].<init>(io.netty.util.concurrent.DefaultPromise$1)"
    - "[io.netty.util.concurrent.DefaultPromise$CauseHolder].<init>(java.lang.Throwable)"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:162"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:165"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:164"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:165"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:172"
        BranchSideFuncs:
        - "<init>(io.netty.util.concurrent.DefaultPromise$1)"
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:171"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:167"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:170"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:166,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].<init>(io.netty.util.concurrent.DefaultPromise$1)"
    - Src: "io.netty.util.concurrent.DefaultPromise:167,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise$CauseHolder].<init>(java.lang.Throwable)"
    - Src: "io.netty.util.concurrent.DefaultPromise:167,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].<init>(io.netty.util.concurrent.DefaultPromise$1)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise$LeanCancellationException"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.DefaultPromise$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise$LeanCancellationException:140,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].<init>()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise$LeanCancellationException"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.CancellationException].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise$LeanCancellationException:140,1"
      Dst: "[java.util.concurrent.CancellationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslClosedEngineException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SslClosedEngineException"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslClosedEngineException:29,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].runDelegatedTasks(boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1519
    functionLinenumberEnd: 1558
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].inEventLoop(java.util.concurrent.Executor)"
    - "[io.netty.handler.ssl.JdkSslEngine].getDelegatedTask()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getDelegatedTask()"
    - "[io.netty.handler.ssl.SslHandler].setState(int)"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].<init>(io.netty.handler.ssl.SslHandler,boolean)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$AsyncTaskDecorator].run(java.lang.Runnable)"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].resumeLater()"
    - "[io.netty.handler.ssl.SslHandler].clearState(int)"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[java.util.zip.Inflater$InflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$3].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[java.util.concurrent.CompletableFuture$Completion].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[java.util.zip.Deflater$DeflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[java.util.concurrent.ThreadPoolExecutor$Worker].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[java.util.zip.ZipFile$CleanableResource].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[java.lang.invoke.MethodHandleNatives$CallSiteContext].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor$2].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[java.util.concurrent.ForkJoinWorkerThread].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[java.lang.ref.Finalizer$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$2].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[java.lang.ref.Finalizer$FinalizerThread].run()"
    - "[io.netty.handler.ssl.SslHandler].executeDelegatedTask(boolean)"
    - "[javax.net.ssl.SSLEngine].getDelegatedTask()"
    - "[io.netty.handler.ssl.AsyncRunnable].run(java.lang.Runnable)"
    - "[java.lang.Runnable].run()"
    functionUses: 3
    ICount: 43
    EdgeCount: 196
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1520"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1523"
        BranchSideFuncs:
        - "getDelegatedTask()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1520"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1555"
        BranchSideFuncs:
        - "executeDelegatedTask(boolean)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1525"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1528"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1527"
        BranchSideFuncs:
        - "setState(int)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1529"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1549"
        BranchSideFuncs:
        - "run()"
        - "clearState(int)"
        - "resumeLater()"
        - "<init>(io.netty.handler.ssl.SslHandler,boolean)"
        - "setState(int)"
        - "run(java.lang.Runnable)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1548"
        BranchSideFuncs:
        - "run()"
        - "clearState(int)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1537"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1541"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1540"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1541"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1538"
        BranchSideFuncs:
        - "run()"
        - "clearState(int)"
        - "resumeLater()"
        - "<init>(io.netty.handler.ssl.SslHandler,boolean)"
        - "setState(int)"
        - "run(java.lang.Runnable)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1537"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1541"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1547"
        BranchSideFuncs:
        - "run()"
        - "clearState(int)"
        - "resumeLater()"
        - "<init>(io.netty.handler.ssl.SslHandler,boolean)"
        - "setState(int)"
        - "run(java.lang.Runnable)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1546"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1541"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1546"
        BranchSideFuncs:
        - "run()"
        - "clearState(int)"
        - "resumeLater()"
        - "<init>(io.netty.handler.ssl.SslHandler,boolean)"
        - "setState(int)"
        - "run(java.lang.Runnable)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1545"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1520,1"
      Dst: "[io.netty.handler.ssl.SslHandler].inEventLoop(java.util.concurrent.Executor)"
    - Src: "io.netty.handler.ssl.SslHandler:1524,1"
      Dst: "[javax.net.ssl.SSLEngine].getDelegatedTask()"
    - Src: "io.netty.handler.ssl.SslHandler:1528,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1534,1"
      Dst: "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].<init>(io.netty.handler.ssl.SslHandler,boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:1535,1"
      Dst: "[io.netty.handler.ssl.AsyncRunnable].run(java.lang.Runnable)"
    - Src: "io.netty.handler.ssl.SslHandler:1536,1"
      Dst: "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].resumeLater()"
    - Src: "io.netty.handler.ssl.SslHandler:1544,1"
      Dst: "[io.netty.handler.ssl.SslHandler].clearState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1549,1"
      Dst: "[java.lang.Runnable].run()"
    - Src: "io.netty.handler.ssl.SslHandler:1556,1"
      Dst: "[io.netty.handler.ssl.SslHandler].executeDelegatedTask(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.ssl.SslHandler].inEventLoop(java.util.concurrent.Executor)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1508
    functionLinenumberEnd: 1510
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.concurrent.Executor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1509"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1508"
        BranchSideFuncs:
        - "inEventLoop()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1509"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1508"
        BranchSideFuncs:
        - "inEventLoop()"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1509,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].<init>(io.netty.handler.ssl.SslHandler,boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler"
    linkageType: ""
    functionLinenumber: 1583
    functionLinenumberEnd: 1587
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler:1584,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].resumeLater()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler"
    linkageType: ""
    functionLinenumber: 1596
    functionLinenumberEnd: 1602
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler:1597"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler:1601"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler:1600"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].executeDelegatedTask(boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1565
    functionLinenumberEnd: 1568
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].executeDelegatedTask(io.netty.handler.ssl.SslHandler$SslTasksRunner)"
    - "[io.netty.handler.ssl.SslHandler].getTaskRunner(boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1566,1"
      Dst: "[io.netty.handler.ssl.SslHandler].getTaskRunner(boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:1566,1"
      Dst: "[io.netty.handler.ssl.SslHandler].executeDelegatedTask(io.netty.handler.ssl.SslHandler$SslTasksRunner)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].getTaskRunner(boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1561
    functionLinenumberEnd: 1563
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1562"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1561"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler].executeDelegatedTask(io.netty.handler.ssl.SslHandler$SslTasksRunner)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1569
    functionLinenumberEnd: 1578
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].setState(int)"
    - "[io.netty.util.concurrent.ThreadPerTaskExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateExecutor].execute(java.lang.Runnable)"
    - "[java.util.concurrent.ForkJoinPool].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[java.util.concurrent.ScheduledThreadPoolExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.internal.ThreadExecutorMap$1].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.AbstractEventExecutorGroup].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[java.util.concurrent.ThreadPoolExecutor].execute(java.lang.Runnable)"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.handler.ssl.SslHandler].clearState(int)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 2
    ICount: 10
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1570,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1572,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.handler.ssl.SslHandler:1574,1"
      Dst: "[io.netty.handler.ssl.SslHandler].clearState(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].readIfNeeded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1308
    functionLinenumberEnd: 1316
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.embedded.EmbeddedChannel].config()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].config()"
    - "[io.netty.bootstrap.FailedChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.local.LocalServerChannel].config()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].config()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].config()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].isAutoRead()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].read()"
    - "[io.netty.channel.AbstractChannelHandlerContext].read()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelConfig].isAutoRead()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelHandlerContext].read()"
    functionUses: 3
    ICount: 13
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1309"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1315"
        BranchSideFuncs:
        - "isStateSet(int)"
        - "isDone()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1314"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1310"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1312"
        BranchSideFuncs:
        - "read()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1310"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1314"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1309,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.ssl.SslHandler:1309,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.handler.ssl.SslHandler:1309,1"
      Dst: "[io.netty.channel.ChannelConfig].isAutoRead()"
    - Src: "io.netty.handler.ssl.SslHandler:1310,1"
      Dst: "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1310,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.ssl.SslHandler:1313,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.SslHandler].unwrapNonAppData(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1326
    functionLinenumberEnd: 1328
    functionDepth: 11
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].unwrap(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1327,1"
      Dst: "[io.netty.handler.ssl.SslHandler].unwrap(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].unwrap(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1333
    functionLinenumberEnd: 1456
    functionDepth: 10
    returnType: "int"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].allocate(io.netty.channel.ChannelHandlerContext,int)"
    - "[io.netty.handler.ssl.SslHandler$SslEngineType$3].unwrap(io.netty.handler.ssl.SslHandler,io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.ssl.SslHandler$SslEngineType$2].unwrap(io.netty.handler.ssl.SslHandler,io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.ssl.SslHandler$SslEngineType$1].unwrap(io.netty.handler.ssl.SslHandler,io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf)"
    - "[javax.net.ssl.SSLEngineResult].getStatus()"
    - "[javax.net.ssl.SSLEngineResult].getHandshakeStatus()"
    - "[javax.net.ssl.SSLEngineResult].bytesProduced()"
    - "[javax.net.ssl.SSLEngineResult].bytesConsumed()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.handler.ssl.SslHandler].setHandshakeSuccess()"
    - "[io.netty.handler.ssl.SslHandler].setHandshakeSuccessUnwrapMarkReentry()"
    - "[io.netty.handler.ssl.SslHandler].setState(int)"
    - "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - "[io.netty.handler.ssl.SslHandler].executeChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getApplicationBufferSize()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].getApplicationBufferSize()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getApplicationBufferSize()"
    - "[io.netty.handler.ssl.JdkSslEngine].getSession()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getSession()"
    - "[io.netty.handler.ssl.SslHandler$SslEngineType$2].calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
    - "[io.netty.handler.ssl.SslHandler$SslEngineType$1].calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
    - "[io.netty.handler.ssl.SslHandler$SslEngineType$3].calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
    - "[io.netty.handler.ssl.SslHandler].runDelegatedTasks(boolean)"
    - "[io.netty.handler.ssl.SslHandler].wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
    - "[io.netty.handler.ssl.SslHandler].readIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].isRemoved()"
    - "[io.netty.channel.AbstractChannelHandlerContext].isRemoved()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.ssl.SslHandler].clearState(int)"
    - "[io.netty.handler.ssl.SslHandler].wrap(io.netty.channel.ChannelHandlerContext,boolean)"
    - "[io.netty.handler.ssl.SslHandler].executeNotifyClosePromise(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.SslHandler].notifyClosePromise(java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandler$SslEngineType].unwrap(io.netty.handler.ssl.SslHandler,io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[javax.net.ssl.SSLEngine].getSession()"
    - "[javax.net.ssl.SSLSession].getApplicationBufferSize()"
    - "[io.netty.handler.ssl.SslHandler$SslEngineType].calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
    - "[io.netty.channel.ChannelHandlerContext].isRemoved()"
    - "[java.util.concurrent.Future].isDone()"
    functionUses: 3
    ICount: 131
    EdgeCount: 100
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1358"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1359"
        BranchSideFuncs:
        - "setHandshakeSuccess()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1358"
        BranchSideFuncs:
        - "setHandshakeSuccess()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1358"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1367"
        BranchSideFuncs:
        - "setHandshakeSuccess()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1366"
        BranchSideFuncs:
        - "isReadable()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1359"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1359"
        BranchSideFuncs:
        - "setHandshakeSuccessUnwrapMarkReentry()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1358"
        BranchSideFuncs:
        - "setHandshakeSuccess()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1360"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1359"
        BranchSideFuncs:
        - "isReadable()"
        - "getSession()"
        - "wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
        - "clearState(int)"
        - "getApplicationBufferSize()"
        - "setHandshakeSuccess()"
        - "fireChannelRead(java.lang.Object)"
        - "setHandshakeSuccessUnwrapMarkReentry()"
        - "runDelegatedTasks(boolean)"
        - "setState(int)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
        - "calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
        - "isDone()"
        - "isStateSet(int)"
        - "allocate(io.netty.channel.ChannelHandlerContext,int)"
        - "executeChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "isRemoved()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1358"
        BranchSideFuncs:
        - "setHandshakeSuccess()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1359"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1359"
        BranchSideFuncs:
        - "setHandshakeSuccessUnwrapMarkReentry()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1358"
        BranchSideFuncs:
        - "setHandshakeSuccess()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1359"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1359"
        BranchSideFuncs:
        - "setHandshakeSuccessUnwrapMarkReentry()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1358"
        BranchSideFuncs:
        - "setHandshakeSuccess()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1367"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1378"
        BranchSideFuncs:
        - "setState(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1377"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1369"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1373"
        BranchSideFuncs:
        - "executeChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1372"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1378"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1380"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1379"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1380"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1394"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1393"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1381"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1384"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1383"
        BranchSideFuncs:
        - "getSession()"
        - "getApplicationBufferSize()"
        - "calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1389"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1384"
        BranchSideFuncs:
        - "calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1383"
        BranchSideFuncs:
        - "getSession()"
        - "getApplicationBufferSize()"
        - "calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1394"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1394"
        BranchSideFuncs:
        - "runDelegatedTasks(boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1393"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1396"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1405"
        BranchSideFuncs:
        - "isReadable()"
        - "getSession()"
        - "wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
        - "clearState(int)"
        - "getApplicationBufferSize()"
        - "setHandshakeSuccess()"
        - "fireChannelRead(java.lang.Object)"
        - "setHandshakeSuccessUnwrapMarkReentry()"
        - "runDelegatedTasks(boolean)"
        - "setState(int)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
        - "calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
        - "isDone()"
        - "isStateSet(int)"
        - "allocate(io.netty.channel.ChannelHandlerContext,int)"
        - "executeChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "isRemoved()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1404"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1394"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1414"
        BranchSideFuncs:
        - "runDelegatedTasks(boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1413"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1409"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1414"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1413"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1409"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1414"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1413"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1414"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1418"
        BranchSideFuncs:
        - "isReadable()"
        - "getSession()"
        - "wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
        - "clearState(int)"
        - "getApplicationBufferSize()"
        - "setHandshakeSuccess()"
        - "fireChannelRead(java.lang.Object)"
        - "setHandshakeSuccessUnwrapMarkReentry()"
        - "runDelegatedTasks(boolean)"
        - "setState(int)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
        - "calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
        - "isDone()"
        - "isStateSet(int)"
        - "allocate(io.netty.channel.ChannelHandlerContext,int)"
        - "executeChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "isRemoved()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1417"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1414"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1425"
        BranchSideFuncs:
        - "isReadable()"
        - "getSession()"
        - "wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
        - "clearState(int)"
        - "getApplicationBufferSize()"
        - "setHandshakeSuccess()"
        - "fireChannelRead(java.lang.Object)"
        - "setHandshakeSuccessUnwrapMarkReentry()"
        - "runDelegatedTasks(boolean)"
        - "setState(int)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
        - "calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
        - "isDone()"
        - "isStateSet(int)"
        - "allocate(io.netty.channel.ChannelHandlerContext,int)"
        - "executeChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "isRemoved()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1424"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1414"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1414"
        BranchSideFuncs:
        - "isReadable()"
        - "getSession()"
        - "wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
        - "clearState(int)"
        - "getApplicationBufferSize()"
        - "setHandshakeSuccess()"
        - "fireChannelRead(java.lang.Object)"
        - "setHandshakeSuccessUnwrapMarkReentry()"
        - "runDelegatedTasks(boolean)"
        - "setState(int)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
        - "calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
        - "isDone()"
        - "isStateSet(int)"
        - "allocate(io.netty.channel.ChannelHandlerContext,int)"
        - "executeChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "isRemoved()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1413"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1414"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1418"
        BranchSideFuncs:
        - "isReadable()"
        - "getSession()"
        - "wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
        - "clearState(int)"
        - "getApplicationBufferSize()"
        - "setHandshakeSuccess()"
        - "fireChannelRead(java.lang.Object)"
        - "setHandshakeSuccessUnwrapMarkReentry()"
        - "runDelegatedTasks(boolean)"
        - "setState(int)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
        - "calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
        - "isDone()"
        - "isStateSet(int)"
        - "allocate(io.netty.channel.ChannelHandlerContext,int)"
        - "executeChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "isRemoved()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1417"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1414"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1425"
        BranchSideFuncs:
        - "isReadable()"
        - "getSession()"
        - "wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
        - "clearState(int)"
        - "getApplicationBufferSize()"
        - "setHandshakeSuccess()"
        - "fireChannelRead(java.lang.Object)"
        - "setHandshakeSuccessUnwrapMarkReentry()"
        - "runDelegatedTasks(boolean)"
        - "setState(int)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
        - "calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
        - "isDone()"
        - "isStateSet(int)"
        - "allocate(io.netty.channel.ChannelHandlerContext,int)"
        - "executeChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "isRemoved()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1424"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1414"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1425"
        BranchSideFuncs:
        - "isReadable()"
        - "getSession()"
        - "wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
        - "clearState(int)"
        - "getApplicationBufferSize()"
        - "setHandshakeSuccess()"
        - "fireChannelRead(java.lang.Object)"
        - "setHandshakeSuccessUnwrapMarkReentry()"
        - "runDelegatedTasks(boolean)"
        - "setState(int)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
        - "calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
        - "isDone()"
        - "isStateSet(int)"
        - "allocate(io.netty.channel.ChannelHandlerContext,int)"
        - "executeChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "isRemoved()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1424"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1418"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1430"
        BranchSideFuncs:
        - "isReadable()"
        - "getSession()"
        - "wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
        - "clearState(int)"
        - "getApplicationBufferSize()"
        - "setHandshakeSuccess()"
        - "fireChannelRead(java.lang.Object)"
        - "setHandshakeSuccessUnwrapMarkReentry()"
        - "runDelegatedTasks(boolean)"
        - "setState(int)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
        - "calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
        - "isDone()"
        - "isStateSet(int)"
        - "allocate(io.netty.channel.ChannelHandlerContext,int)"
        - "executeChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "isRemoved()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1429"
        BranchSideFuncs:
        - "isDone()"
        - "isStateSet(int)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1425"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1428"
        BranchSideFuncs:
        - "allocate(io.netty.channel.ChannelHandlerContext,int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1427"
        BranchSideFuncs:
        - "isRemoved()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1428"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1343"
        BranchSideFuncs:
        - "isReadable()"
        - "getSession()"
        - "wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
        - "clearState(int)"
        - "getApplicationBufferSize()"
        - "setHandshakeSuccess()"
        - "fireChannelRead(java.lang.Object)"
        - "setHandshakeSuccessUnwrapMarkReentry()"
        - "runDelegatedTasks(boolean)"
        - "setState(int)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
        - "calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
        - "isDone()"
        - "isStateSet(int)"
        - "allocate(io.netty.channel.ChannelHandlerContext,int)"
        - "executeChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "isRemoved()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1342"
        BranchSideFuncs:
        - "skipBytes(int)"
        - "bytesConsumed()"
        - "getStatus()"
        - "unwrap(io.netty.handler.ssl.SslHandler,io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf)"
        - "bytesProduced()"
        - "getHandshakeStatus()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1430"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1439"
        BranchSideFuncs:
        - "isReadable()"
        - "getSession()"
        - "wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
        - "clearState(int)"
        - "getApplicationBufferSize()"
        - "setHandshakeSuccess()"
        - "fireChannelRead(java.lang.Object)"
        - "setHandshakeSuccessUnwrapMarkReentry()"
        - "runDelegatedTasks(boolean)"
        - "setState(int)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
        - "calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
        - "isDone()"
        - "isStateSet(int)"
        - "allocate(io.netty.channel.ChannelHandlerContext,int)"
        - "executeChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "isRemoved()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1438"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1430"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1439"
        BranchSideFuncs:
        - "isReadable()"
        - "getSession()"
        - "wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
        - "clearState(int)"
        - "getApplicationBufferSize()"
        - "setHandshakeSuccess()"
        - "fireChannelRead(java.lang.Object)"
        - "setHandshakeSuccessUnwrapMarkReentry()"
        - "runDelegatedTasks(boolean)"
        - "setState(int)"
        - "readIfNeeded(io.netty.channel.ChannelHandlerContext)"
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
        - "calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
        - "isDone()"
        - "isStateSet(int)"
        - "allocate(io.netty.channel.ChannelHandlerContext,int)"
        - "executeChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "isRemoved()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1438"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1439"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1443"
        BranchSideFuncs:
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1442"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1443"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1447"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1446"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1447"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1455"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1454"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1448"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1451"
        BranchSideFuncs:
        - "executeNotifyClosePromise(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1450"
        BranchSideFuncs:
        - "notifyClosePromise(java.lang.Throwable)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1443"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1447"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1446"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1447"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1454"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1453"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1448"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1451"
        BranchSideFuncs:
        - "executeNotifyClosePromise(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1450"
        BranchSideFuncs:
        - "notifyClosePromise(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1338,1"
      Dst: "[io.netty.handler.ssl.SslHandler].allocate(io.netty.channel.ChannelHandlerContext,int)"
    - Src: "io.netty.handler.ssl.SslHandler:1343,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslEngineType].unwrap(io.netty.handler.ssl.SslHandler,io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.SslHandler:1344,1"
      Dst: "[javax.net.ssl.SSLEngineResult].getStatus()"
    - Src: "io.netty.handler.ssl.SslHandler:1345,1"
      Dst: "[javax.net.ssl.SSLEngineResult].getHandshakeStatus()"
    - Src: "io.netty.handler.ssl.SslHandler:1346,1"
      Dst: "[javax.net.ssl.SSLEngineResult].bytesProduced()"
    - Src: "io.netty.handler.ssl.SslHandler:1347,1"
      Dst: "[javax.net.ssl.SSLEngineResult].bytesConsumed()"
    - Src: "io.netty.handler.ssl.SslHandler:1352,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1359,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.ssl.SslHandler:1360,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setHandshakeSuccessUnwrapMarkReentry()"
    - Src: "io.netty.handler.ssl.SslHandler:1359,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setHandshakeSuccess()"
    - Src: "io.netty.handler.ssl.SslHandler:1368,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1369,1"
      Dst: "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1371,1"
      Dst: "[io.netty.handler.ssl.SslHandler].executeChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.SslHandler:1373,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:1382,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.ssl.SslHandler:1384,1"
      Dst: "[javax.net.ssl.SSLEngine].getSession()"
    - Src: "io.netty.handler.ssl.SslHandler:1384,1"
      Dst: "[javax.net.ssl.SSLSession].getApplicationBufferSize()"
    - Src: "io.netty.handler.ssl.SslHandler:1389,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslEngineType].calculatePendingData(io.netty.handler.ssl.SslHandler,int)"
    - Src: "io.netty.handler.ssl.SslHandler:1395,1"
      Dst: "[io.netty.handler.ssl.SslHandler].runDelegatedTasks(boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:1409,1"
      Dst: "[io.netty.handler.ssl.SslHandler].wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:1421,1"
      Dst: "[io.netty.handler.ssl.SslHandler].readIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.SslHandler:1428,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].isRemoved()"
    - Src: "io.netty.handler.ssl.SslHandler:1430,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.ssl.SslHandler:1435,1"
      Dst: "[io.netty.handler.ssl.SslHandler].clearState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1440,1"
      Dst: "[io.netty.handler.ssl.SslHandler].wrap(io.netty.channel.ChannelHandlerContext,boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:1449,1"
      Dst: "[io.netty.handler.ssl.SslHandler].executeNotifyClosePromise(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.SslHandler:1451,1"
      Dst: "[io.netty.handler.ssl.SslHandler].notifyClosePromise(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 63
    CyclomaticComplexity: 35
  - functionName: "[io.netty.handler.ssl.SslHandler].allocate(io.netty.channel.ChannelHandlerContext,int)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 2252
    functionLinenumberEnd: 2258
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    functionUses: 3
    ICount: 11
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:2254"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2257"
        BranchSideFuncs:
        - "directBuffer(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:2256"
        BranchSideFuncs:
        - "buffer(int)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:2253,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.ssl.SslHandler:2255,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - Src: "io.netty.handler.ssl.SslHandler:2257,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].setHandshakeSuccessUnwrapMarkReentry()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1460
    functionLinenumberEnd: 1474
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - "[io.netty.handler.ssl.SslHandler].setState(int)"
    - "[io.netty.handler.ssl.SslHandler].setHandshakeSuccess()"
    - "[io.netty.handler.ssl.SslHandler].clearState(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1461"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:-1"
        BranchSideFuncs:
        - "isStateSet(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1462"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1466"
        BranchSideFuncs:
        - "setState(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1465"
        BranchSideFuncs:
        - "setHandshakeSuccess()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1470"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1466"
        BranchSideFuncs:
        - "clearState(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1465"
        BranchSideFuncs:
        - "setHandshakeSuccess()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1470"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1473"
        BranchSideFuncs:
        - "clearState(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1472"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1461,1"
      Dst: "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1463,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1466,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setHandshakeSuccess()"
    - Src: "io.netty.handler.ssl.SslHandler:1471,1"
      Dst: "[io.netty.handler.ssl.SslHandler].clearState(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.SslHandler].executeChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1490
    functionLinenumberEnd: 1502
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler$4].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 1
    ICount: 12
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1491,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.ssl.SslHandler:1491,1"
      Dst: "[io.netty.handler.ssl.SslHandler$4].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.SslHandler:1491,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.handler.ssl.SslHandler:1498,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].executeNotifyClosePromise(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1477
    functionLinenumberEnd: 1488
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler$3].<init>(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.handler.ssl.SslHandler].notifyClosePromise(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 2
    ICount: 10
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1478,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.ssl.SslHandler:1478,1"
      Dst: "[io.netty.handler.ssl.SslHandler$3].<init>(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler:1478,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.handler.ssl.SslHandler:1485,1"
      Dst: "[io.netty.handler.ssl.SslHandler].notifyClosePromise(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$3].<init>(io.netty.handler.ssl.SslHandler)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$3"
    linkageType: ""
    functionLinenumber: 1477
    functionLinenumberEnd: 1479
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$3:1478,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].notifyClosePromise(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1913
    functionLinenumberEnd: 1924
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslCloseCompletionEvent].<init>(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    functionUses: 6
    ICount: 20
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1914"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1919"
        BranchSideFuncs:
        - "trySuccess(java.lang.Object)"
        - "channel()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1918"
        BranchSideFuncs:
        - "tryFailure(java.lang.Throwable)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1915"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1923"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1922"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1919"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1923"
        BranchSideFuncs:
        - "fireUserEventTriggered(java.lang.Object)"
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1922"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1915,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.ssl.SslHandler:1915,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:1916,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:1919,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:1920,1"
      Dst: "[io.netty.handler.ssl.SslCloseCompletionEvent].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setFailure0(java.lang.Throwable)"
    functionUses: 68
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:117,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].setFailure0(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslCloseCompletionEvent].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslCloseCompletionEvent"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslCompletionEvent].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslCloseCompletionEvent:35,1"
      Dst: "[io.netty.handler.ssl.SslCompletionEvent].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1852
    functionLinenumberEnd: 1855
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean,boolean,boolean)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1853,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean,boolean,boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1862
    functionLinenumberEnd: 1891
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].setState(int)"
    - "[io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine].closeOutbound()"
    - "[io.netty.handler.ssl.JettyNpnSslEngine].closeOutbound()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].closeOutbound()"
    - "[io.netty.handler.ssl.JdkSslEngine].closeOutbound()"
    - "[io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine].closeOutbound()"
    - "[io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine].closeInbound()"
    - "[io.netty.handler.ssl.JdkSslEngine].closeInbound()"
    - "[io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine].closeInbound()"
    - "[io.netty.handler.ssl.JettyNpnSslEngine].closeInbound()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].closeInbound()"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].tryFailure(java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslUtils].handleHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean)"
    - "[io.netty.handler.ssl.SslHandler].releaseAndFailAll(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[javax.net.ssl.SSLEngine].closeOutbound()"
    - "[javax.net.ssl.SSLEngine].closeInbound()"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 5
    ICount: 38
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1866"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1882"
        BranchSideFuncs:
        - "tryFailure(java.lang.Throwable)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1870"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1883"
        BranchSideFuncs:
        - "channel()"
        - "isDebugEnabled()"
        - "contains(java.lang.CharSequence)"
        - "getMessage()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "closeInbound()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1882"
        BranchSideFuncs:
        - "tryFailure(java.lang.Throwable)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1876"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1868"
        BranchSideFuncs:
        - "channel()"
        - "isDebugEnabled()"
        - "contains(java.lang.CharSequence)"
        - "getMessage()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "closeInbound()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1867"
        BranchSideFuncs:
        - "channel()"
        - "isDebugEnabled()"
        - "contains(java.lang.CharSequence)"
        - "getMessage()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "closeInbound()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1876"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1883"
        BranchSideFuncs:
        - "channel()"
        - "isDebugEnabled()"
        - "contains(java.lang.CharSequence)"
        - "getMessage()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "closeInbound()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1882"
        BranchSideFuncs:
        - "tryFailure(java.lang.Throwable)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1877"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1883"
        BranchSideFuncs:
        - "channel()"
        - "isDebugEnabled()"
        - "contains(java.lang.CharSequence)"
        - "getMessage()"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "closeInbound()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1882"
        BranchSideFuncs:
        - "tryFailure(java.lang.Throwable)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1883"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1884"
        BranchSideFuncs:
        - "handleHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1883"
        BranchSideFuncs:
        - "handleHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1883"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1888"
        BranchSideFuncs:
        - "handleHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1887"
        BranchSideFuncs:
        - "releaseAndFailAll(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1863,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1864,1"
      Dst: "[javax.net.ssl.SSLEngine].closeOutbound()"
    - Src: "io.netty.handler.ssl.SslHandler:1868,1"
      Dst: "[javax.net.ssl.SSLEngine].closeInbound()"
    - Src: "io.netty.handler.ssl.SslHandler:1870,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.handler.ssl.SslHandler:1875,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.handler.ssl.SslHandler:1876,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "io.netty.handler.ssl.SslHandler:1878,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.ssl.SslHandler:1878,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:1883,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:1884,1"
      Dst: "[io.netty.handler.ssl.SslUtils].handleHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:1888,1"
      Dst: "[io.netty.handler.ssl.SslHandler].releaseAndFailAll(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.ssl.SslHandler].applyHandshakeTimeout()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 2100
    functionLinenumberEnd: 2135
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.ssl.SslHandler$7].<init>(io.netty.handler.ssl.SslHandler,io.netty.util.concurrent.Promise,long)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.handler.ssl.SslHandler$8].<init>(io.netty.handler.ssl.SslHandler,io.netty.util.concurrent.Future)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 19
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:2105"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2106"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:2105"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:2105"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2109"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:2108"
        BranchSideFuncs:
        - "schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "<init>(io.netty.handler.ssl.SslHandler,io.netty.util.concurrent.Promise,long)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.handler.ssl.SslHandler,io.netty.util.concurrent.Future)"
        - "executor()"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:2105,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.ssl.SslHandler:2109,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.ssl.SslHandler:2109,1"
      Dst: "[io.netty.handler.ssl.SslHandler$7].<init>(io.netty.handler.ssl.SslHandler,io.netty.util.concurrent.Promise,long)"
    - Src: "io.netty.handler.ssl.SslHandler:2109,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - Src: "io.netty.handler.ssl.SslHandler:2128,1"
      Dst: "[io.netty.handler.ssl.SslHandler$8].<init>(io.netty.handler.ssl.SslHandler,io.netty.util.concurrent.Future)"
    - Src: "io.netty.handler.ssl.SslHandler:2128,1"
      Dst: "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler$8].<init>(io.netty.handler.ssl.SslHandler,io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$8"
    linkageType: ""
    functionLinenumber: 2127
    functionLinenumberEnd: 2129
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$8:2128,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].wrapAndFlush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 787
    functionLinenumberEnd: 806
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractCoalescingBufferQueue].isEmpty()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].add(io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.ssl.SslHandler].setState(int)"
    - "[io.netty.handler.ssl.SslHandler].wrap(io.netty.channel.ChannelHandlerContext,boolean)"
    - "[io.netty.handler.ssl.SslHandler].forceFlush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[java.util.concurrent.Future].isDone()"
    functionUses: 2
    ICount: 20
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:788"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:794"
        BranchSideFuncs:
        - "isDone()"
    - Branch String: "io.netty.handler.ssl.SslHandler:795"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:799"
        BranchSideFuncs:
        - "setState(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:798"
        BranchSideFuncs:
        - "forceFlush(io.netty.channel.ChannelHandlerContext)"
        - "wrap(io.netty.channel.ChannelHandlerContext,boolean)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:788,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].isEmpty()"
    - Src: "io.netty.handler.ssl.SslHandler:793,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.ssl.SslHandler:793,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].add(io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler:795,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.ssl.SslHandler:796,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:799,1"
      Dst: "[io.netty.handler.ssl.SslHandler].wrap(io.netty.channel.ChannelHandlerContext,boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:803,1"
      Dst: "[io.netty.handler.ssl.SslHandler].forceFlush(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.LimitsStaticallyReferencedJniMethods].<init>()"
    functionSourceFile: "io.netty.channel.unix.LimitsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.LimitsStaticallyReferencedJniMethods:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.LimitsStaticallyReferencedJniMethods].ssizeMax()"
    functionSourceFile: "io.netty.channel.unix.LimitsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.LimitsStaticallyReferencedJniMethods].iovMax()"
    functionSourceFile: "io.netty.channel.unix.LimitsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.LimitsStaticallyReferencedJniMethods].uioMaxIov()"
    functionSourceFile: "io.netty.channel.unix.LimitsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.LimitsStaticallyReferencedJniMethods].sizeOfjlong()"
    functionSourceFile: "io.netty.channel.unix.LimitsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.LimitsStaticallyReferencedJniMethods].udsSunPathSize()"
    functionSourceFile: "io.netty.channel.unix.LimitsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.handler.codec.http2.HpackDynamicTable].<init>(long)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDynamicTable"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.http2.HpackDynamicTable].setCapacity(long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:49,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:50,1"
      Dst: "[io.netty.handler.codec.http2.HpackDynamicTable].setCapacity(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDynamicTable].length()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDynamicTable"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:58"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:61"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:60"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.HpackDynamicTable].size()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDynamicTable"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDynamicTable].capacity()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDynamicTable"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDynamicTable].getEntry(int)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDynamicTable"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 93
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.HpackHeaderField"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackDynamicTable].length()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 2
    ICount: 28
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:85"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:86"
        BranchSideFuncs:
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
        - "length()"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:85"
        BranchSideFuncs:
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
        - "length()"
        - "append(int)"
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:85"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:88"
        BranchSideFuncs:
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
        - "length()"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:87"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:85,1"
      Dst: "[io.netty.handler.codec.http2.HpackDynamicTable].length()"
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:86,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:86,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:86,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:86,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:86,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.HpackDynamicTable].add(io.netty.handler.codec.http2.HpackHeaderField)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDynamicTable"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 117
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.HpackHeaderField"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackHeaderField].size()"
    - "[io.netty.handler.codec.http2.HpackDynamicTable].clear()"
    - "[io.netty.handler.codec.http2.HpackDynamicTable].remove()"
    functionUses: 1
    ICount: 34
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:108"
        BranchSideFuncs:
        - "clear()"
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:107"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:111"
        BranchSideFuncs:
        - "remove()"
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:116"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:103,1"
      Dst: "[io.netty.handler.codec.http2.HpackHeaderField].size()"
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:105,1"
      Dst: "[io.netty.handler.codec.http2.HpackDynamicTable].clear()"
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:109,1"
      Dst: "[io.netty.handler.codec.http2.HpackDynamicTable].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.HpackDynamicTable].clear()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDynamicTable"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 148
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:144"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:143"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:140"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:138"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:137"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.HpackDynamicTable].remove()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDynamicTable"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 132
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.HpackHeaderField"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackHeaderField].size()"
    functionUses: 2
    ICount: 22
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:123"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:125"
        BranchSideFuncs:
        - "size()"
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:131"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:130"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:126,1"
      Dst: "[io.netty.handler.codec.http2.HpackHeaderField].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.HpackDynamicTable].setCapacity(long)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDynamicTable"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 201
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http2.HpackDynamicTable].clear()"
    - "[io.netty.handler.codec.http2.HpackDynamicTable].remove()"
    - "[io.netty.handler.codec.http2.HpackDynamicTable].length()"
    functionUses: 2
    ICount: 68
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:154"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:155"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:154"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:154"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:158"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:157"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:158"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:161"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:160"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:167"
        BranchSideFuncs:
        - "clear()"
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:166"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:172"
        BranchSideFuncs:
        - "remove()"
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:171"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:178"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:177"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:182"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:181"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:182"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:181"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:197"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:196"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:197"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:196"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDynamicTable:191"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:187"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDynamicTable:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:155,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:155,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:155,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:155,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:155,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:164,1"
      Dst: "[io.netty.handler.codec.http2.HpackDynamicTable].clear()"
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:168,1"
      Dst: "[io.netty.handler.codec.http2.HpackDynamicTable].remove()"
    - Src: "io.netty.handler.codec.http2.HpackDynamicTable:185,1"
      Dst: "[io.netty.handler.codec.http2.HpackDynamicTable].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 9
  - functionName: "[io.netty.util.concurrent.RejectedExecutionHandlers$2].<init>(int,long)"
    functionSourceFile: "io.netty.util.concurrent.RejectedExecutionHandlers$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.RejectedExecutionHandlers$2:52,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.RejectedExecutionHandlers$2].rejected(java.lang.Runnable,io.netty.util.concurrent.SingleThreadEventExecutor)"
    functionSourceFile: "io.netty.util.concurrent.RejectedExecutionHandlers$2"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Runnable"
    - "io.netty.util.concurrent.SingleThreadEventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].wakeup(boolean)"
    - "[io.netty.channel.nio.NioEventLoop].wakeup(boolean)"
    - "[io.netty.channel.kqueue.KQueueEventLoop].wakeup(boolean)"
    - "[io.netty.channel.epoll.EpollEventLoop].wakeup(boolean)"
    - "[java.util.concurrent.locks.LockSupport].parkNanos(long)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].offerTask(java.lang.Runnable)"
    - "[java.util.concurrent.RejectedExecutionException].<init>()"
    functionUses: 1
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.RejectedExecutionHandlers$2:55"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.RejectedExecutionHandlers$2:68"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.RejectedExecutionHandlers$2:67"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.util.concurrent.RejectedExecutionHandlers$2:56"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.RejectedExecutionHandlers$2:67"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.util.concurrent.RejectedExecutionHandlers$2:61"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.RejectedExecutionHandlers$2:56"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.RejectedExecutionHandlers$2:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.RejectedExecutionHandlers$2:55,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - Src: "io.netty.util.concurrent.RejectedExecutionHandlers$2:58,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].wakeup(boolean)"
    - Src: "io.netty.util.concurrent.RejectedExecutionHandlers$2:60,1"
      Dst: "[java.util.concurrent.locks.LockSupport].parkNanos(long)"
    - Src: "io.netty.util.concurrent.RejectedExecutionHandlers$2:61,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].offerTask(java.lang.Runnable)"
    - Src: "io.netty.util.concurrent.RejectedExecutionHandlers$2:68,1"
      Dst: "[java.util.concurrent.RejectedExecutionException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap].<init>()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap:833,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap:834,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap].remove(long)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap"
    linkageType: ""
    functionLinenumber: 837
    functionLinenumberEnd: 839
    functionDepth: 0
    returnType: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].remove(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].remove(java.lang.Object)"
    - "[java.util.Hashtable].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].remove(java.lang.Object)"
    - "[java.util.IdentityHashMap].remove(java.lang.Object)"
    - "[java.util.AbstractMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[java.util.Properties].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].remove(java.lang.Object)"
    - "[java.util.WeakHashMap].remove(java.lang.Object)"
    - "[java.util.jar.Attributes].remove(java.lang.Object)"
    - "[java.util.TreeMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].remove(java.lang.Object)"
    - "[java.security.Provider].remove(java.lang.Object)"
    - "[java.util.HashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].remove(java.lang.Object)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 27
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap:838,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap:838,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap].add(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap"
    linkageType: ""
    functionLinenumber: 842
    functionLinenumberEnd: 845
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.ShortObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Properties].put(java.lang.Object,java.lang.Object)"
    - "[java.util.IdentityHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.jar.Attributes].put(java.lang.Object,java.lang.Object)"
    - "[java.util.WeakHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[java.security.Provider].put(java.lang.Object,java.lang.Object)"
    - "[java.util.AbstractMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.TreeMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].sslPointer()"
    - "[java.lang.Long].valueOf(long)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 28
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap:843,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].sslPointer()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap:843,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap:843,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].sslPointer()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 555
    functionLinenumberEnd: 557
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap].get(long)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].valueOf(long)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap:848,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap:848,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslContext$1)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap:833,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].newStatus(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 330
    functionLinenumberEnd: 332
    functionDepth: 5
    returnType: "io.netty.handler.codec.http.HttpResponseStatus"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseStatus].<init>(int,java.lang.String,boolean)"
    functionUses: 57
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:331,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].<init>(int,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].codeClass()"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 599
    functionLinenumberEnd: 605
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.HttpStatusClass"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpStatusClass].valueOf(int)"
    functionUses: 10
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpResponseStatus:601"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:604"
        BranchSideFuncs:
        - "valueOf(int)"
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:603"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:602,1"
      Dst: "[io.netty.handler.codec.http.HttpStatusClass].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].compareTo(io.netty.handler.codec.http.HttpResponseStatus)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpResponseStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:631,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].toString()"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 635
    functionLinenumberEnd: 641
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 13
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:636,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:636,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:637,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:638,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:639,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:640,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].encode(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: 643
    functionLinenumberEnd: 652
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].copy(io.netty.util.AsciiString,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    functionUses: 1
    ICount: 14
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpResponseStatus:644"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:649"
        BranchSideFuncs:
        - "writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
        - "writeByte(int)"
        - "copy(io.netty.util.AsciiString,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.http.HttpResponseStatus:648"
        BranchSideFuncs:
        - "writeBytes(byte[])"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:645,1"
      Dst: "[io.netty.buffer.ByteBufUtil].copy(io.netty.util.AsciiString,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:646,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:647,1"
      Dst: "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:649,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpResponseStatus].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseStatus].compareTo(io.netty.handler.codec.http.HttpResponseStatus)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseStatus:34,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].compareTo(io.netty.handler.codec.http.HttpResponseStatus)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector].<init>()"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader$NoexecVolumeDetector:576,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.UnixResolverOptions].<init>(int,int,int)"
    functionSourceFile: "io.netty.resolver.dns.UnixResolverOptions"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.UnixResolverOptions:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.UnixResolverOptions].newBuilder()"
    functionSourceFile: "io.netty.resolver.dns.UnixResolverOptions"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 2
    returnType: "io.netty.resolver.dns.UnixResolverOptions$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.UnixResolverOptions$Builder].<init>(io.netty.resolver.dns.UnixResolverOptions$1)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.UnixResolverOptions:34,1"
      Dst: "[io.netty.resolver.dns.UnixResolverOptions$Builder].<init>(io.netty.resolver.dns.UnixResolverOptions$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.UnixResolverOptions$Builder].<init>(io.netty.resolver.dns.UnixResolverOptions$1)"
    functionSourceFile: "io.netty.resolver.dns.UnixResolverOptions$Builder"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.UnixResolverOptions$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.UnixResolverOptions$Builder].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.UnixResolverOptions$Builder:61,1"
      Dst: "[io.netty.resolver.dns.UnixResolverOptions$Builder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.UnixResolverOptions$Builder].<init>()"
    functionSourceFile: "io.netty.resolver.dns.UnixResolverOptions$Builder"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.UnixResolverOptions$Builder:67,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.UnixResolverOptions].ndots()"
    functionSourceFile: "io.netty.resolver.dns.UnixResolverOptions"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.UnixResolverOptions].timeout()"
    functionSourceFile: "io.netty.resolver.dns.UnixResolverOptions"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.UnixResolverOptions].attempts()"
    functionSourceFile: "io.netty.resolver.dns.UnixResolverOptions"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaders$HttpNames].<init>()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaders$HttpNames"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaders$HttpNames:60,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AttributeKey].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.util.AttributeKey"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "io.netty.util.AttributeKey<T>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ConstantPool].valueOf(java.lang.String)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AttributeKey:39,1"
      Dst: "[io.netty.util.ConstantPool].valueOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AttributeKey].exists(java.lang.String)"
    functionSourceFile: "io.netty.util.AttributeKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ConstantPool].exists(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AttributeKey:46,1"
      Dst: "[io.netty.util.ConstantPool].exists(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AttributeKey].newInstance(java.lang.String)"
    functionSourceFile: "io.netty.util.AttributeKey"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "io.netty.util.AttributeKey<T>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ConstantPool].newInstance(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AttributeKey:55,1"
      Dst: "[io.netty.util.ConstantPool].newInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AttributeKey].valueOf(java.lang.Class<?>,java.lang.String)"
    functionSourceFile: "io.netty.util.AttributeKey"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "io.netty.util.AttributeKey<T>"
    argCount: 2
    argTypes:
    - "java.lang.Class<?>"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ConstantPool].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AttributeKey:60,1"
      Dst: "[io.netty.util.ConstantPool].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AttributeKey].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.util.AttributeKey"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractConstant].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AttributeKey:64,1"
      Dst: "[io.netty.util.AbstractConstant].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AttributeKey].<init>(int,java.lang.String,io.netty.util.AttributeKey$1)"
    functionSourceFile: "io.netty.util.AttributeKey"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.String"
    - "io.netty.util.AttributeKey$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AttributeKey].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AttributeKey:25,1"
      Dst: "[io.netty.util.AttributeKey].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadLocalRandom$2].<init>()"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom$2"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadLocalRandom$2:104,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadLocalRandom$2].uncaughtException(java.lang.Thread,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Thread"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ThreadLocalRandom].access$200()"
    - "[java.lang.Thread].getName()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadLocalRandom$2:107,1"
      Dst: "[io.netty.util.internal.ThreadLocalRandom].access$200()"
    - Src: "io.netty.util.internal.ThreadLocalRandom$2:107,1"
      Dst: "[java.lang.Thread].getName()"
    - Src: "io.netty.util.internal.ThreadLocalRandom$2:107,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadLocalRandom].access$200()"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.SucceededChannelFuture].cause()"
    functionSourceFile: "io.netty.channel.SucceededChannelFuture"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    functionSourceFile: "io.netty.channel.SucceededChannelFuture"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 64
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SimpleTrustManagerFactory$2].<init>()"
    functionSourceFile: "io.netty.handler.ssl.util.SimpleTrustManagerFactory$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SimpleTrustManagerFactory$2:53,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SimpleTrustManagerFactory$2].initialValue()"
    functionSourceFile: "io.netty.handler.ssl.util.SimpleTrustManagerFactory$2"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 1
    returnType: "io.netty.handler.ssl.util.SimpleTrustManagerFactory$SimpleTrustManagerFactorySpi"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SimpleTrustManagerFactory$SimpleTrustManagerFactorySpi].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SimpleTrustManagerFactory$2:56,1"
      Dst: "[io.netty.handler.ssl.util.SimpleTrustManagerFactory$SimpleTrustManagerFactorySpi].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SimpleTrustManagerFactory$SimpleTrustManagerFactorySpi].<init>()"
    functionSourceFile: "io.netty.handler.ssl.util.SimpleTrustManagerFactory$SimpleTrustManagerFactorySpi"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.TrustManagerFactorySpi].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SimpleTrustManagerFactory$SimpleTrustManagerFactorySpi:101,1"
      Dst: "[javax.net.ssl.TrustManagerFactorySpi].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.UdtMessage].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.udt.UdtMessage"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.UdtMessage:34,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.UdtMessage].copy()"
    functionSourceFile: "io.netty.channel.udt.UdtMessage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.udt.UdtMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].copy()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.UdtMessage:39,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.UdtMessage].duplicate()"
    functionSourceFile: "io.netty.channel.udt.UdtMessage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.udt.UdtMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].duplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.UdtMessage:44,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.UdtMessage].retainedDuplicate()"
    functionSourceFile: "io.netty.channel.udt.UdtMessage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.udt.UdtMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retainedDuplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.UdtMessage:49,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.UdtMessage].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.udt.UdtMessage"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 3
    returnType: "io.netty.channel.udt.UdtMessage"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.UdtMessage].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.UdtMessage:54,1"
      Dst: "[io.netty.channel.udt.UdtMessage].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.UdtMessage].retain()"
    functionSourceFile: "io.netty.channel.udt.UdtMessage"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionDepth: 1
    returnType: "io.netty.channel.udt.UdtMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retain()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.UdtMessage:59,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.UdtMessage].retain(int)"
    functionSourceFile: "io.netty.channel.udt.UdtMessage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.udt.UdtMessage"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.UdtMessage:65,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.UdtMessage].touch()"
    functionSourceFile: "io.netty.channel.udt.UdtMessage"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionDepth: 1
    returnType: "io.netty.channel.udt.UdtMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].touch()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.UdtMessage:71,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.UdtMessage].touch(java.lang.Object)"
    functionSourceFile: "io.netty.channel.udt.UdtMessage"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionDepth: 1
    returnType: "io.netty.channel.udt.UdtMessage"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].touch(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.UdtMessage:77,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].<init>(io.netty.resolver.dns.DnsServerAddressStream)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList"
    linkageType: ""
    functionLinenumber: 690
    functionLinenumberEnd: 694
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsServerAddressStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractList].<init>()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].duplicate()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].duplicate()"
    - "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].duplicate()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].duplicate()"
    - "[io.netty.resolver.dns.DnsServerAddressStream].duplicate()"
    functionUses: 1
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList:691,1"
      Dst: "[java.util.AbstractList].<init>()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList:692,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStream].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList"
    linkageType: ""
    functionLinenumber: 696
    functionLinenumberEnd: 705
    functionDepth: 1
    returnType: "java.net.InetSocketAddress"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].duplicate()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].duplicate()"
    - "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].duplicate()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].duplicate()"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].size()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].size()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].size()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].next()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].next()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].next()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].next()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.resolver.dns.DnsServerAddressStream].duplicate()"
    - "[io.netty.resolver.dns.DnsServerAddressStream].size()"
    - "[io.netty.resolver.dns.DnsServerAddressStream].next()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].get(int)"
    functionUses: 72
    ICount: 22
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList:697"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList:704"
        BranchSideFuncs:
        - "<init>(int)"
        - "duplicate()"
        - "size()"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList:703"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList:700"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList:703"
        BranchSideFuncs:
        - "get(int)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList:698,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStream].duplicate()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList:699,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList:699,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList:700,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStream].size()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList:701,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStream].next()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList:701,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList:704,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList"
    linkageType: ""
    functionLinenumber: 708
    functionLinenumberEnd: 710
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].size()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].size()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].size()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].size()"
    - "[io.netty.resolver.dns.DnsServerAddressStream].size()"
    functionUses: 103
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList:709,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStream].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList"
    linkageType: ""
    functionLinenumber: 713
    functionLinenumberEnd: 715
    functionDepth: 2
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].<init>(io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList)"
    functionUses: 118
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList:714,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].<init>(io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].access$800(io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList"
    linkageType: ""
    functionLinenumber: 685
    functionLinenumberEnd: 687
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsServerAddressStream"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliOptions].<init>(com.aayushatharva.brotli4j.encoder.Encoder$Parameters)"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliOptions"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.aayushatharva.brotli4j.encoder.Encoder$Parameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.compression.Brotli].isAvailable()"
    - "[io.netty.handler.codec.compression.Brotli].cause()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.BrotliOptions:37"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.BrotliOptions:41"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.BrotliOptions:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliOptions:36,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.compression.BrotliOptions:37,1"
      Dst: "[io.netty.handler.codec.compression.Brotli].isAvailable()"
    - Src: "io.netty.handler.codec.compression.BrotliOptions:38,1"
      Dst: "[io.netty.handler.codec.compression.Brotli].cause()"
    - Src: "io.netty.handler.codec.compression.BrotliOptions:38,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.compression.BrotliOptions:41,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliOptions].parameters()"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliOptions"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "com.aayushatharva.brotli4j.encoder.Encoder$Parameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$6].<init>(java.lang.Class,java.lang.Class)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$6"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$6:118,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$6].run()"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$6"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "java.lang.reflect.Method"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$6:121,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ZlibCodecFactory].isSupportingWindowSizeAndMemLevel()"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker].<init>(int,boolean,int,boolean,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:58,1"
      Dst: "[io.netty.handler.codec.compression.ZlibCodecFactory].isSupportingWindowSizeAndMemLevel()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:58,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker].<init>(int,boolean,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker].<init>(int,boolean,int,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "boolean"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker].<init>(int,boolean,int,boolean,boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:81,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker].<init>(int,boolean,int,boolean,boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker].<init>(int,boolean,int,boolean,boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "boolean"
    - "int"
    - "boolean"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:109"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:108"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:113"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:112"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:116"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:107,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:109,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:109,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:109,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:109,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:121,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker].handshakeExtension(io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 175
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtension"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].name()"
    - "[java.security.Provider].entrySet()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].entrySet()"
    - "[java.util.concurrent.ConcurrentHashMap].entrySet()"
    - "[io.netty.util.collection.ShortObjectHashMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].entrySet()"
    - "[java.util.TreeMap].entrySet()"
    - "[java.util.stream.Collectors$Partition].entrySet()"
    - "[java.util.Properties].entrySet()"
    - "[java.util.WeakHashMap].entrySet()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[io.netty.util.collection.IntObjectHashMap].entrySet()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].entrySet()"
    - "[java.util.jar.Attributes].entrySet()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].entrySet()"
    - "[java.util.IdentityHashMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.util.collection.ByteObjectHashMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].entrySet()"
    - "[java.util.HashMap].entrySet()"
    - "[io.netty.util.collection.CharObjectHashMap].entrySet()"
    - "[java.util.Hashtable].entrySet()"
    - "[io.netty.util.collection.LongObjectHashMap].entrySet()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].parameters()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    - "[java.util.AbstractMap$SimpleEntry].getKey()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker$PermessageDeflateExtension].<init>(int,boolean,int,boolean,int,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    functionUses: 1
    ICount: 81
    EdgeCount: 258
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:130"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:129"
        BranchSideFuncs:
        - "iterator()"
        - "parameters()"
        - "entrySet()"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:170"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:169"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:170"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:169"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:141"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:143"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:153"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:146"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:152"
        BranchSideFuncs:
        - "parseInt(java.lang.String)"
        - "getValue()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:151"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:149"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:168"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:167"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:154"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:156"
        BranchSideFuncs:
        - "getKey()"
        - "equalsIgnoreCase(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:157"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:159"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:162"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:161"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:170"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:174"
        BranchSideFuncs:
        - "<init>(int,boolean,int,boolean,int,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:173"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:126,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].name()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:126,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:137,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].parameters()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:137,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:137,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:138,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:139,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:141,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:141,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:147,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:147,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker:171,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker$PermessageDeflateExtension].<init>(int,boolean,int,boolean,int,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 24
    CyclomaticComplexity: 11
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].name()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].parameters()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker$PermessageDeflateExtension].<init>(int,boolean,int,boolean,int,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker$PermessageDeflateExtension"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 197
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "boolean"
    - "int"
    - "boolean"
    - "int"
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker$PermessageDeflateExtension:189,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].<init>(io.netty.channel.socket.ServerSocketChannel,java.net.ServerSocket)"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.ServerSocketChannel"
    - "java.net.ServerSocket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ServerChannelRecvByteBufAllocator].<init>()"
    - "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel,io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:51,1"
      Dst: "[io.netty.channel.ServerChannelRecvByteBufAllocator].<init>()"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:51,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel,io.netty.channel.RecvByteBufAllocator)"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:52,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 74
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getReceiveBufferSize()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].isReuseAddress()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getBacklog()"
    - "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 7
    ICount: 19
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultServerSocketChannelConfig:63"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultServerSocketChannelConfig:66"
        BranchSideFuncs:
        - "getReceiveBufferSize()"
      - BranchSide: "io.netty.channel.socket.DefaultServerSocketChannelConfig:65"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultServerSocketChannelConfig:66"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultServerSocketChannelConfig:69"
        BranchSideFuncs:
        - "isReuseAddress()"
        - "valueOf(boolean)"
      - BranchSide: "io.netty.channel.socket.DefaultServerSocketChannelConfig:68"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultServerSocketChannelConfig:69"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultServerSocketChannelConfig:73"
        BranchSideFuncs:
        - "valueOf(int)"
        - "getBacklog()"
      - BranchSide: "io.netty.channel.socket.DefaultServerSocketChannelConfig:72"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:64,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getReceiveBufferSize()"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:64,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:67,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].isReuseAddress()"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:67,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:70,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getBacklog()"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:73,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getReceiveBufferSize()"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ServerSocket].getReceiveBufferSize()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:115,1"
      Dst: "[java.net.ServerSocket].getReceiveBufferSize()"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:117,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].isReuseAddress()"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 99
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ServerSocket].getReuseAddress()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:96,1"
      Dst: "[java.net.ServerSocket].getReuseAddress()"
    - Src: "io.netty.channel.socket.DefaultServerSocketChannelConfig:98,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getBacklog()"
    functionSourceFile: "io.netty.channel.socket.DefaultServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel$1].<init>(com.barchart.udt.nio.SocketChannelUDT,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel$1"
    linkageType: ""
    functionLinenumber: 241
    functionLinenumberEnd: 243
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.barchart.udt.nio.SocketChannelUDT"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel$1:242,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel$1].run()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel$1"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 247
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.barchart.udt.nio.SocketChannelUDT].bind(java.net.SocketAddress)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel$1:245,1"
      Dst: "[com.barchart.udt.nio.SocketChannelUDT].bind(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtilSubstitutions$NetUtilLocalhostLazyHolder].<init>()"
    functionSourceFile: "io.netty.util.NetUtilSubstitutions$NetUtilLocalhostLazyHolder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtilSubstitutions$NetUtilLocalhostLazyHolder:84,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 228
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].<init>(int,java.lang.String,boolean)"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:226,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].<init>(int,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].<init>(int,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 237
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].isValidStatusCode(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 4
    ICount: 21
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:230"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:234"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:233"
        BranchSideFuncs:
        - "checkNotNull(java.lang.Object,java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:230"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:234"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:233"
        BranchSideFuncs:
        - "checkNotNull(java.lang.Object,java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:229,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:230,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].isValidStatusCode(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:231,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:231,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:231,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:231,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:231,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:235,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].code()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 240
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].reasonText()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    linkageType: ""
    functionLinenumber: 242
    functionLinenumberEnd: 244
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].compareTo(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].code()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:251,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].code()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    linkageType: ""
    functionLinenumber: 258
    functionLinenumberEnd: 269
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    functionUses: 9
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:259"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:262"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:261"
        BranchSideFuncs:
        - "getClass()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:262"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:263"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:262"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:262"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:266"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:265"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:268"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:265"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:262,1"
      Dst: "[java.lang.Object].getClass()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    linkageType: ""
    functionLinenumber: 272
    functionLinenumberEnd: 274
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].toString()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    linkageType: ""
    functionLinenumber: 277
    functionLinenumberEnd: 284
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].code()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].reasonText()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 14
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:279"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:281,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:281,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].code()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:281,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:281,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:281,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].reasonText()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:281,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].isValidStatusCode(int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 288
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:286"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:286"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:286"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:286"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:286"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:286"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].valueOf(int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].<init>(int,java.lang.String)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:326,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:326,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:326,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:326,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:326,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].compareTo(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus:171,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].compareTo(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator"
    linkageType: ""
    functionLinenumber: 381
    functionLinenumberEnd: 387
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].findNextValue()"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:382,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:384,1"
      Dst: "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:385,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].findNextValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator"
    linkageType: ""
    functionLinenumber: 389
    functionLinenumberEnd: 391
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 228
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:390"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:389"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator"
    linkageType: ""
    functionLinenumber: 394
    functionLinenumberEnd: 401
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[java.util.NoSuchElementException].<init>()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].findNextValue()"
    - "[java.lang.CharSequence].toString()"
    functionUses: 229
    ICount: 15
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:395"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:398"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:397"
        BranchSideFuncs:
        - "toString()"
        - "findNextValue()"
        - "access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:395,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:396,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:398,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:398,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:399,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].findNextValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "java.lang.CharSequence[]"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].findNextValue()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator"
    linkageType: ""
    functionLinenumber: 408
    functionLinenumberEnd: 416
    functionDepth: 5
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    functionUses: 2
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:409"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:null"
        BranchSideFuncs:
        - "contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
        - "hashCode(java.lang.CharSequence)"
        - "access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:411"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:409"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:408"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:411"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:409"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:408"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:409,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:411,1"
      Dst: "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:411,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].remove()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator"
    linkageType: ""
    functionLinenumber: 404
    functionLinenumberEnd: 406
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:405,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].<init>(io.netty.channel.socket.SocketChannel,java.net.Socket)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.SocketChannel"
    - "java.net.Socket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].<init>(io.netty.channel.socket.SocketChannel,java.net.Socket)"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].<init>(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:43,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].<init>(io.netty.channel.socket.SocketChannel,java.net.Socket)"
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:44,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:44,1"
      Dst: "[io.netty.channel.PreferHeapByteBufAllocator].<init>(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:44,1"
      Dst: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].<init>(io.netty.channel.socket.oio.OioSocketChannel,java.net.Socket)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.oio.OioSocketChannel"
    - "java.net.Socket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].<init>(io.netty.channel.socket.SocketChannel,java.net.Socket)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].<init>(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:48,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].<init>(io.netty.channel.socket.SocketChannel,java.net.Socket)"
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:49,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:49,1"
      Dst: "[io.netty.channel.PreferHeapByteBufAllocator].<init>(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:49,1"
      Dst: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:55,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].getOptions()"
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:54,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 65
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].getSoTimeout()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 5
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:61"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:64"
        BranchSideFuncs:
        - "valueOf(int)"
        - "getSoTimeout()"
      - BranchSide: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:63"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:62,1"
      Dst: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].getSoTimeout()"
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:62,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:64,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].getSoTimeout()"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].getSoTimeout()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:92,1"
      Dst: "[java.net.Socket].getSoTimeout()"
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:94,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 77
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setSoTimeout(int)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:71"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:74"
        BranchSideFuncs:
        - "setSoTimeout(int)"
        - "intValue()"
      - BranchSide: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:73"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:69,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:72,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:72,1"
      Dst: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setSoTimeout(int)"
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:74,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setSoTimeout(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 87
    functionDepth: 1
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].setSoTimeout(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:82,1"
      Dst: "[java.net.Socket].setSoTimeout(int)"
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:84,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setTcpNoDelay(boolean)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setTcpNoDelay(boolean)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:100,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setTcpNoDelay(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setSoLinger(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setSoLinger(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:106,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setSoLinger(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setSendBufferSize(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:112,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setSendBufferSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setReceiveBufferSize(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:118,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setReceiveBufferSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setKeepAlive(boolean)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setKeepAlive(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:124,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setKeepAlive(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setTrafficClass(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setTrafficClass(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:130,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setTrafficClass(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setReuseAddress(boolean)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setReuseAddress(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:136,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setReuseAddress(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setPerformancePreferences(int,int,int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setPerformancePreferences(int,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:142,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setPerformancePreferences(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setAllowHalfClosure(boolean)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionDepth: 1
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setAllowHalfClosure(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:148,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setAllowHalfClosure(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:154,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:161,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setWriteSpinCount(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:167,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:173,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:179,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setAutoRead(boolean)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:185,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].autoReadCleared()"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 195
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel].clearReadPending0()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:191"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:194"
        BranchSideFuncs:
        - "clearReadPending0()"
      - BranchSide: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:192,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].clearReadPending0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].clearReadPending0()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 347
    functionLinenumberEnd: 350
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.oio.AbstractOioChannel].clearReadPending()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:348,1"
      Dst: "[io.netty.channel.oio.AbstractOioChannel].clearReadPending()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setAutoClose(boolean)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionDepth: 2
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setAutoClose(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:198,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setAutoClose(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionDepth: 4
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:204,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionDepth: 4
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:210,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 218
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:216,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 224
    functionDepth: 3
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.DefaultOioSocketChannelConfig:222,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].<init>(io.netty.util.concurrent.AbstractScheduledEventExecutor,java.lang.Runnable,long)"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.util.concurrent.AbstractScheduledEventExecutor"
    - "java.lang.Runnable"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseTask].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:40,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].<init>(io.netty.util.concurrent.AbstractScheduledEventExecutor,java.lang.Runnable,long,long)"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.util.concurrent.AbstractScheduledEventExecutor"
    - "java.lang.Runnable"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseTask].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].validatePeriod(long)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:48,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:50,1"
      Dst: "[io.netty.util.concurrent.ScheduledFutureTask].validatePeriod(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].<init>(io.netty.util.concurrent.AbstractScheduledEventExecutor,java.util.concurrent.Callable,long,long)"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.util.concurrent.AbstractScheduledEventExecutor"
    - "java.util.concurrent.Callable"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseTask].<init>(io.netty.util.concurrent.EventExecutor,java.util.concurrent.Callable)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].validatePeriod(long)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:56,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].<init>(io.netty.util.concurrent.EventExecutor,java.util.concurrent.Callable)"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:58,1"
      Dst: "[io.netty.util.concurrent.ScheduledFutureTask].validatePeriod(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].<init>(io.netty.util.concurrent.AbstractScheduledEventExecutor,java.util.concurrent.Callable,long)"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.util.concurrent.AbstractScheduledEventExecutor"
    - "java.util.concurrent.Callable"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseTask].<init>(io.netty.util.concurrent.EventExecutor,java.util.concurrent.Callable)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:64,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].<init>(io.netty.util.concurrent.EventExecutor,java.util.concurrent.Callable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].validatePeriod(long)"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:70"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:73"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:71,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].setId(long)"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "io.netty.util.concurrent.ScheduledFutureTask<V>"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:77"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:80"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:79"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].deadlineNanos()"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].setConsumed()"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 100
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].getCurrentTimeNanos()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].getCurrentTimeNanos()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].scheduledExecutor()"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:95"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:99"
        BranchSideFuncs:
        - "getCurrentTimeNanos()"
        - "<init>()"
        - "scheduledExecutor()"
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:98"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:96"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:97"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:96"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:96"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:97"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:96,1"
      Dst: "[io.netty.util.concurrent.ScheduledFutureTask].scheduledExecutor()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:96,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].getCurrentTimeNanos()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:96,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].getDelay(java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionDepth: 4
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.TimeUnit].convert(long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].delayNanos()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:115,1"
      Dst: "[io.netty.util.concurrent.ScheduledFutureTask].delayNanos()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:115,1"
      Dst: "[java.util.concurrent.TimeUnit].convert(long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].compareTo(java.util.concurrent.Delayed)"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 135
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.concurrent.Delayed"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.ScheduledFutureTask].deadlineNanos()"
    - "[java.lang.AssertionError].<init>()"
    functionUses: 1
    ICount: 34
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:120"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:124"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:123"
        BranchSideFuncs:
        - "deadlineNanos()"
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:126"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:128"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:127"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:128"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:130"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:129"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:130"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:133"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:132"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:133"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:134"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:133"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:133"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:134"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:125,1"
      Dst: "[io.netty.util.concurrent.ScheduledFutureTask].deadlineNanos()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:133,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 176
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].delayNanos()"
    - "[io.netty.util.concurrent.DefaultPromise].isCancelled()"
    - "[io.netty.util.internal.DefaultPriorityQueue].removeTyped(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].removeTyped(java.lang.Object)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].scheduledExecutor()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].scheduledTaskQueue()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].scheduleFromEventLoop(io.netty.util.concurrent.ScheduledFutureTask)"
    - "[io.netty.util.concurrent.PromiseTask].setUncancellableInternal()"
    - "[io.netty.util.concurrent.PromiseTask].runTask()"
    - "[io.netty.util.concurrent.PromiseTask].setSuccessInternal(java.lang.Object)"
    - "[java.util.concurrent.ThreadPoolExecutor].isShutdown()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].isShutdown()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].isShutdown()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].isShutdown()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].isShutdown()"
    - "[io.netty.util.concurrent.GlobalEventExecutor].isShutdown()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].getCurrentTimeNanos()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].getCurrentTimeNanos()"
    - "[java.util.AbstractQueue].add(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].add(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setFailureInternal(java.lang.Throwable)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.util.internal.PriorityQueue].removeTyped(java.lang.Object)"
    - "[java.util.concurrent.ExecutorService].isShutdown()"
    - "[java.util.Queue].add(java.lang.Object)"
    functionUses: 50
    ICount: 59
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:140"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:142"
        BranchSideFuncs:
        - "scheduleFromEventLoop(io.netty.util.concurrent.ScheduledFutureTask)"
        - "getCurrentTimeNanos()"
        - "add(java.lang.Object)"
        - "scheduledExecutor()"
        - "runTask()"
        - "scheduledTaskQueue()"
        - "isShutdown()"
        - "setFailureInternal(java.lang.Throwable)"
        - "setUncancellableInternal()"
        - "<init>()"
        - "setSuccessInternal(java.lang.Object)"
        - "delayNanos()"
        - "executor()"
        - "inEventLoop()"
        - "isCancelled()"
        - "removeTyped(java.lang.Object)"
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:141"
        BranchSideFuncs:
        - "delayNanos()"
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:140"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:142"
        BranchSideFuncs:
        - "scheduleFromEventLoop(io.netty.util.concurrent.ScheduledFutureTask)"
        - "getCurrentTimeNanos()"
        - "add(java.lang.Object)"
        - "scheduledExecutor()"
        - "runTask()"
        - "scheduledTaskQueue()"
        - "isShutdown()"
        - "setFailureInternal(java.lang.Throwable)"
        - "setUncancellableInternal()"
        - "<init>()"
        - "setSuccessInternal(java.lang.Object)"
        - "delayNanos()"
        - "executor()"
        - "inEventLoop()"
        - "isCancelled()"
        - "removeTyped(java.lang.Object)"
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:141"
        BranchSideFuncs:
        - "delayNanos()"
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:142"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:151"
        BranchSideFuncs:
        - "scheduleFromEventLoop(io.netty.util.concurrent.ScheduledFutureTask)"
        - "getCurrentTimeNanos()"
        - "add(java.lang.Object)"
        - "scheduledExecutor()"
        - "runTask()"
        - "scheduledTaskQueue()"
        - "isShutdown()"
        - "setFailureInternal(java.lang.Throwable)"
        - "setUncancellableInternal()"
        - "<init>()"
        - "setSuccessInternal(java.lang.Object)"
        - "delayNanos()"
        - "executor()"
        - "inEventLoop()"
        - "isCancelled()"
        - "removeTyped(java.lang.Object)"
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:150"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:144"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:147"
        BranchSideFuncs:
        - "removeTyped(java.lang.Object)"
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:146"
        BranchSideFuncs:
        - "scheduleFromEventLoop(io.netty.util.concurrent.ScheduledFutureTask)"
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:151"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:158"
        BranchSideFuncs:
        - "setUncancellableInternal()"
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:157"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:152"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:174"
        BranchSideFuncs:
        - "setSuccessInternal(java.lang.Object)"
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:158"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:174"
        BranchSideFuncs:
        - "runTask()"
        - "isShutdown()"
        - "executor()"
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:160"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:174"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:161"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:164"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:163"
        BranchSideFuncs:
        - "getCurrentTimeNanos()"
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:166"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:174"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "scheduledExecutor()"
        - "scheduledTaskQueue()"
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:173"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:140,1"
      Dst: "[io.netty.util.concurrent.ScheduledFutureTask].executor()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:140,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:140,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:142,1"
      Dst: "[io.netty.util.concurrent.ScheduledFutureTask].delayNanos()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:144,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].isCancelled()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:145,1"
      Dst: "[io.netty.util.concurrent.ScheduledFutureTask].scheduledExecutor()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:145,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].scheduledTaskQueue()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:145,1"
      Dst: "[io.netty.util.internal.PriorityQueue].removeTyped(java.lang.Object)"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:147,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].scheduleFromEventLoop(io.netty.util.concurrent.ScheduledFutureTask)"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:152,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].setUncancellableInternal()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:153,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].runTask()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:154,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].setSuccessInternal(java.lang.Object)"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:160,1"
      Dst: "[java.util.concurrent.ExecutorService].isShutdown()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:164,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].getCurrentTimeNanos()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:167,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:173,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].setFailureInternal(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 9
  - functionName: "[io.netty.util.concurrent.DefaultPromise].isCancelled()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 393
    functionLinenumberEnd: 395
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isCancelled0(java.lang.Object)"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:394,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].isCancelled0(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].isCancelled0(java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 824
    functionLinenumberEnd: 826
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:825"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:824"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:825"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:824"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.concurrent.PromiseTask].setUncancellableInternal()"
    functionSourceFile: "io.netty.util.concurrent.PromiseTask"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setUncancellable()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseTask:171,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].setUncancellable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].setUncancellable()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 127
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isCancelled0(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone0(java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionUses: 22
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:122"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:125"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:124"
        BranchSideFuncs:
        - "isDone0(java.lang.Object)"
        - "isCancelled0(java.lang.Object)"
    - Branch String: "io.netty.util.concurrent.DefaultPromise:126"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:124"
        BranchSideFuncs:
        - "isDone0(java.lang.Object)"
        - "isCancelled0(java.lang.Object)"
    - Branch String: "io.netty.util.concurrent.DefaultPromise:126"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:124"
        BranchSideFuncs:
        - "isDone0(java.lang.Object)"
        - "isCancelled0(java.lang.Object)"
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:122,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.concurrent.DefaultPromise:126,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].isDone0(java.lang.Object)"
    - Src: "io.netty.util.concurrent.DefaultPromise:126,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].isCancelled0(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.concurrent.PromiseTask].runTask()"
    functionSourceFile: "io.netty.util.concurrent.PromiseTask"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jaz.Zer].call()"
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder$DateValueGenerator].call()"
    - "[io.netty.channel.pool.SimpleChannelPool$7].call()"
    - "[io.netty.handler.codec.http.cors.CorsConfig$DateValueGenerator].call()"
    - "[io.netty.channel.pool.FixedChannelPool$6].call()"
    - "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].call()"
    - "[io.netty.channel.oio.AbstractOioChannel$2:io.netty.channel.oio.AbstractOioChannel$3:io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator:io.netty.util.concurrent.AbstractScheduledEventExecutor$2:io.netty.util.concurrent.GlobalEventExecutor$1:io.netty.util.concurrent.PromiseTask$SentinelRunnable:io.netty.util.concurrent.SingleThreadEventExecutor$1:java.lang.invoke.MethodHandleNatives$CallSiteContext:java.lang.ref.Finalizer$2:java.lang.ref.Finalizer$FinalizerThread:java.util.concurrent.CompletableFuture$Completion:java.util.concurrent.ForkJoinWorkerThread:java.util.concurrent.ThreadPoolExecutor$Worker:java.util.zip.Deflater$DeflaterZStreamRef:java.util.zip.Inflater$InflaterZStreamRef:java.util.zip.ZipFile$CleanableResource].call()"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[java.util.concurrent.Callable].call()"
    - "[java.lang.Runnable].run()"
    functionUses: 4
    ICount: 10
    EdgeCount: 175
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.PromiseTask:95"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseTask:98"
        BranchSideFuncs:
        - "call()"
      - BranchSide: "io.netty.util.concurrent.PromiseTask:97"
        BranchSideFuncs:
        - "run()"
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseTask:96,1"
      Dst: "[java.util.concurrent.Callable].call()"
    - Src: "io.netty.util.concurrent.PromiseTask:98,1"
      Dst: "[java.lang.Runnable].run()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Throwable"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseTask].setSuccessInternal(java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.PromiseTask"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 154
    functionDepth: 8
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].clearTaskAfterCompletion(boolean,java.lang.Runnable)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseTask:151,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - Src: "io.netty.util.concurrent.PromiseTask:152,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].clearTaskAfterCompletion(boolean,java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseTask].clearTaskAfterCompletion(boolean,java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.PromiseTask"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.PromiseTask:115"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseTask:121"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.PromiseTask].setFailureInternal(java.lang.Throwable)"
    functionSourceFile: "io.netty.util.concurrent.PromiseTask"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 134
    functionDepth: 8
    returnType: "io.netty.util.concurrent.Promise<V>"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].clearTaskAfterCompletion(boolean,java.lang.Runnable)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseTask:131,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.util.concurrent.PromiseTask:132,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].clearTaskAfterCompletion(boolean,java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 193
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].removeScheduled(io.netty.util.concurrent.ScheduledFutureTask)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].scheduledExecutor()"
    functionUses: 44
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.ScheduledFutureTask:189"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:192"
        BranchSideFuncs:
        - "scheduledExecutor()"
        - "removeScheduled(io.netty.util.concurrent.ScheduledFutureTask)"
      - BranchSide: "io.netty.util.concurrent.ScheduledFutureTask:191"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:188,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:190,1"
      Dst: "[io.netty.util.concurrent.ScheduledFutureTask].scheduledExecutor()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:190,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].removeScheduled(io.netty.util.concurrent.ScheduledFutureTask)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    functionSourceFile: "io.netty.util.concurrent.PromiseTask"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].clearTaskAfterCompletion(boolean,java.lang.Runnable)"
    functionUses: 46
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseTask:176,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    - Src: "io.netty.util.concurrent.PromiseTask:176,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].clearTaskAfterCompletion(boolean,java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 382
    functionLinenumberEnd: 390
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].checkNotifyWaiters()"
    - "[io.netty.util.concurrent.DefaultPromise].notifyListeners()"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionUses: 39
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:383"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:389"
        BranchSideFuncs:
        - "checkNotifyWaiters()"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:388"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:384"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:387"
        BranchSideFuncs:
        - "notifyListeners()"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:386"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:383,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.concurrent.DefaultPromise:384,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].checkNotifyWaiters()"
    - Src: "io.netty.util.concurrent.DefaultPromise:385,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].notifyListeners()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].cancelWithoutRemove(boolean)"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:196,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].toStringBuilder()"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 209
    functionDepth: 3
    returnType: "java.lang.StringBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseTask].toStringBuilder()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 1
    ICount: 13
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:201,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].toStringBuilder()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:202,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:202,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:204,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:205,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:208,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseTask].toStringBuilder()"
    functionSourceFile: "io.netty.util.concurrent.PromiseTask"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 187
    functionDepth: 2
    returnType: "java.lang.StringBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].toStringBuilder()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 2
    ICount: 10
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseTask:181,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].toStringBuilder()"
    - Src: "io.netty.util.concurrent.PromiseTask:182,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.util.concurrent.PromiseTask:182,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    - Src: "io.netty.util.concurrent.PromiseTask:184,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.concurrent.PromiseTask:185,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.util.concurrent.PromiseTask:186,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].toStringBuilder()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 421
    functionLinenumberEnd: 445
    functionDepth: 1
    returnType: "java.lang.StringBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.util.concurrent.PromiseTask].hashCode()"
    - "[java.lang.Object].hashCode()"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 2
    ICount: 33
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:428"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:430"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:429"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:430"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:432"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:431"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:432"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:436"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:435"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:436"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:441"
        BranchSideFuncs:
        - "append(char)"
        - "append(java.lang.Object)"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:440"
        BranchSideFuncs:
        - "append(java.lang.String)"
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:422,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.util.concurrent.DefaultPromise:423,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.util.concurrent.DefaultPromise:423,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultPromise:424,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.concurrent.DefaultPromise:425,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "io.netty.util.concurrent.DefaultPromise:425,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "io.netty.util.concurrent.DefaultPromise:434,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue<?>)"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.DefaultPriorityQueue<?>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue<?>,int)"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 217
    functionLinenumberEnd: 220
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.DefaultPriorityQueue<?>"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ScheduledFutureTask].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.ScheduledFutureTask"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.ScheduledFutureTask].compareTo(java.util.concurrent.Delayed)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ScheduledFutureTask:26,1"
      Dst: "[io.netty.util.concurrent.ScheduledFutureTask].compareTo(java.util.concurrent.Delayed)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].<init>(io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1"
    linkageType: ""
    functionLinenumber: 256
    functionLinenumberEnd: 258
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:257,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    functionSourceFile: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1"
    linkageType: ""
    functionLinenumber: 259
    functionLinenumberEnd: 267
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].access$200(io.netty.channel.nio.AbstractNioChannel)"
    - "[io.netty.channel.ConnectTimeoutException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 49
    ICount: 22
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:261"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:266"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "isDone()"
        - "tryFailure(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:265"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:261"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:266"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "isDone()"
        - "tryFailure(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:265"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:262"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:265"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:260,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].access$200(io.netty.channel.nio.AbstractNioChannel)"
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:261,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:261,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:261,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:261,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:261,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:261,1"
      Dst: "[io.netty.channel.ConnectTimeoutException].<init>(java.lang.String)"
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:262,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:264,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - Src: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1:264,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].newServerSocket()"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.net.ServerSocket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ServerSocket].<init>()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:54,1"
      Dst: "[java.net.ServerSocket].<init>()"
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:56,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].<init>()"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].newServerSocket()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].<init>(java.net.ServerSocket)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:67,1"
      Dst: "[io.netty.channel.socket.oio.OioServerSocketChannel].newServerSocket()"
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:67,1"
      Dst: "[io.netty.channel.socket.oio.OioServerSocketChannel].<init>(java.net.ServerSocket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].<init>(java.net.ServerSocket)"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.ServerSocket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.oio.AbstractOioMessageChannel].<init>(io.netty.channel.Channel)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.net.ServerSocket].setSoTimeout(int)"
    - "[java.net.ServerSocket].close()"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].<init>(io.netty.channel.socket.oio.OioServerSocketChannel,java.net.ServerSocket)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioServerSocketChannel:87"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioServerSocketChannel:98"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.oio.OioServerSocketChannel:97"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.oio.OioServerSocketChannel:91"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioServerSocketChannel:89"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.oio.OioServerSocketChannel:88"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.oio.OioServerSocketChannel:87"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioServerSocketChannel:97"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.oio.OioServerSocketChannel:96"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.oio.OioServerSocketChannel:91"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioServerSocketChannel:97"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.oio.OioServerSocketChannel:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:76,1"
      Dst: "[io.netty.channel.oio.AbstractOioMessageChannel].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:77,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:81,1"
      Dst: "[java.net.ServerSocket].setSoTimeout(int)"
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:89,1"
      Dst: "[java.net.ServerSocket].close()"
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:91,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:92,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:84,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:99,1"
      Dst: "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].<init>(io.netty.channel.socket.oio.OioServerSocketChannel,java.net.ServerSocket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].localAddress()"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:104,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].metadata()"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "io.netty.channel.ChannelMetadata"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].config()"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "io.netty.channel.socket.oio.OioServerSocketChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 52
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].isOpen()"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ServerSocket].isClosed()"
    functionUses: 10
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioServerSocketChannel:124"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioServerSocketChannel:123"
        BranchSideFuncs:
        - "isClosed()"
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:124,1"
      Dst: "[java.net.ServerSocket].isClosed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ServerSocket].isBound()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isOpen()"
    functionUses: 36
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioServerSocketChannel:129"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioServerSocketChannel:128"
        BranchSideFuncs:
        - "isOpen()"
        - "isBound()"
    - Branch String: "io.netty.channel.socket.oio.OioServerSocketChannel:129"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioServerSocketChannel:128"
        BranchSideFuncs:
        - "isOpen()"
        - "isBound()"
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:129,1"
      Dst: "[io.netty.channel.socket.oio.OioServerSocketChannel].isOpen()"
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:129,1"
      Dst: "[java.net.ServerSocket].isBound()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionDepth: 2
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils].localSocketAddress(java.net.ServerSocket)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:134,1"
      Dst: "[io.netty.util.internal.SocketUtils].localSocketAddress(java.net.ServerSocket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils].localSocketAddress(java.net.ServerSocket)"
    functionSourceFile: "io.netty.util.internal.SocketUtils"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionDepth: 1
    returnType: "java.net.SocketAddress"
    argCount: 1
    argTypes:
    - "java.net.ServerSocket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils$7].<init>(java.net.ServerSocket)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[io.netty.util.internal.SocketUtils$7].run()"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils:143,1"
      Dst: "[io.netty.util.internal.SocketUtils$7].<init>(java.net.ServerSocket)"
    - Src: "io.netty.util.internal.SocketUtils:143,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$7].<init>(java.net.ServerSocket)"
    functionSourceFile: "io.netty.util.internal.SocketUtils$7"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.ServerSocket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$7:143,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ServerSocket].bind(java.net.SocketAddress,int)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getBacklog()"
    - "[io.netty.channel.socket.ServerSocketChannelConfig].getBacklog()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:139,1"
      Dst: "[io.netty.channel.socket.ServerSocketChannelConfig].getBacklog()"
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:139,1"
      Dst: "[java.net.ServerSocket].bind(java.net.SocketAddress,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].doClose()"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ServerSocket].close()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:144,1"
      Dst: "[java.net.ServerSocket].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].doReadMessages(java.util.List<Object>)"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 170
    functionDepth: 8
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ServerSocket].isClosed()"
    - "[java.net.ServerSocket].accept()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].<init>(io.netty.channel.Channel,java.net.Socket)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.net.Socket].close()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 24
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioServerSocketChannel:149"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioServerSocketChannel:154"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.oio.OioServerSocketChannel:153"
        BranchSideFuncs:
        - "<init>(io.netty.channel.Channel,java.net.Socket)"
        - "add(java.lang.Object)"
        - "accept()"
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:149,1"
      Dst: "[java.net.ServerSocket].isClosed()"
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:154,1"
      Dst: "[java.net.ServerSocket].accept()"
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:156,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].<init>(io.netty.channel.Channel,java.net.Socket)"
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:156,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:159,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:161,1"
      Dst: "[java.net.Socket].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].<init>(io.netty.channel.Channel,java.net.Socket)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 100
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "java.net.Socket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.oio.OioByteStreamChannel].<init>(io.netty.channel.Channel)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].<init>(io.netty.channel.socket.oio.OioSocketChannel,java.net.Socket)"
    - "[java.net.Socket].isConnected()"
    - "[io.netty.channel.oio.OioByteStreamChannel].activate(java.io.InputStream,java.io.OutputStream)"
    - "[java.net.Socket].getInputStream()"
    - "[java.net.Socket].getOutputStream()"
    - "[java.net.Socket].setSoTimeout(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger:io.netty.util.internal.logging.Slf4JLogger:java.net.Socket].close()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.net.Socket].close()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 34
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:83"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:86"
        BranchSideFuncs:
        - "activate(java.io.InputStream,java.io.OutputStream)"
        - "getOutputStream()"
        - "getInputStream()"
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:85"
        BranchSideFuncs:
        - "setSoTimeout(int)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:91"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:99"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "close()"
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:98"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:91"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:98"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "close()"
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:77,1"
      Dst: "[io.netty.channel.oio.OioByteStreamChannel].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:79,1"
      Dst: "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].<init>(io.netty.channel.socket.oio.OioSocketChannel,java.net.Socket)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:83,1"
      Dst: "[java.net.Socket].isConnected()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:84,1"
      Dst: "[java.net.Socket].getInputStream()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:84,1"
      Dst: "[java.net.Socket].getOutputStream()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:84,1"
      Dst: "[io.netty.channel.oio.OioByteStreamChannel].activate(java.io.InputStream,java.io.OutputStream)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:86,1"
      Dst: "[java.net.Socket].setSoTimeout(int)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:93,1"
      Dst: "[java.net.Socket].close()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:95,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:89,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].doWrite(io.netty.channel.ChannelOutboundBuffer)"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:174,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].filterOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:179,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:185,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].remoteAddress0()"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].doDisconnect()"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 196
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:195,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioServerSocketChannel].setReadPending(boolean)"
    functionSourceFile: "io.netty.channel.socket.oio.OioServerSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.oio.AbstractOioChannel].setReadPending(boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioServerSocketChannel:201,1"
      Dst: "[io.netty.channel.oio.AbstractOioChannel].setReadPending(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64$Decoder].process(byte)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64$Decoder"
    linkageType: ""
    functionLinenumber: 332
    functionLinenumberEnd: 350
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.base64.Base64$Decoder].decode4to3(byte[],io.netty.buffer.ByteBuf,int,byte[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 49
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.base64.Base64$Decoder:333"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64$Decoder:349"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.base64.Base64$Decoder:348"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
    - Branch String: "io.netty.handler.codec.base64.Base64$Decoder:335"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64$Decoder:349"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.base64.Base64$Decoder:348"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
    - Branch String: "io.netty.handler.codec.base64.Base64$Decoder:336"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64$Decoder:346"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.base64.Base64$Decoder:345"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.base64.Base64$Decoder:338"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64$Decoder:346"
        BranchSideFuncs:
        - "decode4to3(byte[],io.netty.buffer.ByteBuf,int,byte[])"
      - BranchSide: "io.netty.handler.codec.base64.Base64$Decoder:345"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.base64.Base64$Decoder:343"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64$Decoder:338"
        BranchSideFuncs:
        - "decode4to3(byte[],io.netty.buffer.ByteBuf,int,byte[])"
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:339,1"
      Dst: "[io.netty.handler.codec.base64.Base64$Decoder].decode4to3(byte[],io.netty.buffer.ByteBuf,int,byte[])"
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:349,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:349,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:349,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:349,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:349,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.base64.Base64$Decoder].decode4to3(byte[],io.netty.buffer.ByteBuf,int,byte[])"
    functionSourceFile: "io.netty.handler.codec.base64.Base64$Decoder"
    linkageType: ""
    functionLinenumber: 353
    functionLinenumberEnd: 423
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "byte[]"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setByte(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.SwappedByteBuf].order()"
    - "[io.netty.buffer.EmptyByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setShort(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setMedium(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.ByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ByteBuf].order()"
    - "[io.netty.buffer.ByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ByteBuf].setMedium(int,int)"
    functionUses: 1
    ICount: 159
    EdgeCount: 99
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.base64.Base64$Decoder:358"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64$Decoder:368"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.base64.Base64$Decoder:370"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64$Decoder:394"
        BranchSideFuncs:
        - "order()"
        - "<init>(java.lang.String)"
        - "setShort(int,int)"
      - BranchSide: "io.netty.handler.codec.base64.Base64$Decoder:393"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.handler.codec.base64.Base64$Decoder:375"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64$Decoder:null"
        BranchSideFuncs:
        - "order()"
        - "<init>(java.lang.String)"
        - "setShort(int,int)"
    - Branch String: "io.netty.handler.codec.base64.Base64$Decoder:394"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.base64.Base64$Decoder:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:363,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:365,1"
      Dst: "[io.netty.buffer.ByteBuf].setByte(int,int)"
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:375,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:388,1"
      Dst: "[io.netty.buffer.ByteBuf].setShort(int,int)"
    - Src: "io.netty.handler.codec.base64.Base64$Decoder:421,1"
      Dst: "[io.netty.buffer.ByteBuf].setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder].<init>(io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec,int)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder].<init>(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:88,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 106
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec].access$100(io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec)"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec].access$200(io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec)"
    - "[java.util.concurrent.atomic.AtomicLong].decrementAndGet()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 21
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:105"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:104"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:98"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:105"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:104"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:100"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:97"
        BranchSideFuncs:
        - "access$200(io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec)"
        - "decrementAndGet()"
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:96"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:93,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:94,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:96,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec].access$100(io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:99,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:101,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec].access$200(io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:101,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].decrementAndGet()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec].access$100(io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec].access$200(io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "java.util.concurrent.atomic.AtomicLong"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 120
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec].access$100(io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec)"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec].access$200(io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec)"
    - "[java.util.concurrent.atomic.AtomicLong].get()"
    - "[io.netty.handler.codec.PrematureChannelClosureException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(long)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 3
    ICount: 22
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:119"
        BranchSideFuncs:
        - "access$200(io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec)"
        - "get()"
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:118"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:119"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:109,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:111,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec].access$100(io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:112,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec].access$200(io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:112,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].get()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:114,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:114,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:114,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:114,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:114,1"
      Dst: "[io.netty.handler.codec.PrematureChannelClosureException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheClientCodec$Decoder:114,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.PrematureChannelClosureException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.PrematureChannelClosureException"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.PrematureChannelClosureException:45,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:80,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.lang.String,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:88,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.lang.String,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.lang.String,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.lang.String,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:96,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.lang.String,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.lang.String,java.nio.charset.Charset,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.lang.String,java.nio.charset.Charset,boolean,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:104,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.lang.String,java.nio.charset.Charset,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.lang.String,java.nio.charset.Charset,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.lang.String,java.nio.charset.Charset,boolean,int,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:112,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.lang.String,java.nio.charset.Charset,boolean,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.lang.String,java.nio.charset.Charset,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:120"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:120,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:121,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:123,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.net.URI)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.URI"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.net.URI,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:135,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.net.URI,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.net.URI,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.URI"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.net.URI,java.nio.charset.Charset,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:143,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.net.URI,java.nio.charset.Charset,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.net.URI,java.nio.charset.Charset,int)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.URI"
    - "java.nio.charset.Charset"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.net.URI,java.nio.charset.Charset,int,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:151,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.net.URI,java.nio.charset.Charset,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].<init>(java.net.URI,java.nio.charset.Charset,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.net.URI"
    - "java.nio.charset.Charset"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.net.URI].getRawPath()"
    - "[java.net.URI].getRawQuery()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[java.lang.String].length()"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:160"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:163"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:162"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:165"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:163"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:162"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:158,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:159,1"
      Dst: "[java.net.URI].getRawPath()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:163,1"
      Dst: "[java.net.URI].getRawQuery()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:165,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:165,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:165,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:165,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:166,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:167,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:169,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].toString()"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringDecoder].uri()"
    functionUses: 19
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:174,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].uri()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].uri()"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].path()"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringDecoder].pathEndIdx()"
    - "[io.netty.handler.codec.http.QueryStringDecoder].decodeComponent(java.lang.String,int,int,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:191"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:189,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].pathEndIdx()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:189,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].decodeComponent(java.lang.String,int,int,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].pathEndIdx()"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringDecoder].findPathEndIndex(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:220"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:223"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:221,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].findPathEndIndex(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].findPathEndIndex(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:385"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:391"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:390"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:387"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:388"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:387"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:387"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:384"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:383"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:384,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:386,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].decodeComponent(java.lang.String,int,int,java.nio.charset.Charset,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    - "java.nio.charset.Charset"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].substring(int,int)"
    - "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].decodeHexByte(java.lang.CharSequence,int)"
    - "[java.lang.String].<init>(byte[],int,int,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:338"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:342"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:344"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:345"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:344"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:344"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:341"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:340"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:344"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:341"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:340"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:349"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:354"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:353"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:361"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:380"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:379"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:363"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:368"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:367"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:364"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:364"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:363"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:364"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:364"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:363"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:370"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:373"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:372"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:375"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:375"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:370"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:369"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:343,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:350,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:355,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:358,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:359,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:364,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:371,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:371,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:371,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:371,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:371,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:373,1"
      Dst: "[io.netty.util.internal.StringUtil].decodeHexByte(java.lang.CharSequence,int)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:378,1"
      Dst: "[java.lang.String].<init>(byte[],int,int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 27
    CyclomaticComplexity: 11
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].parameters()"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringDecoder].pathEndIdx()"
    - "[io.netty.handler.codec.http.QueryStringDecoder].decodeParams(java.lang.String,int,java.nio.charset.Charset,int,boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:198"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:201"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:200"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:199,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].pathEndIdx()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:199,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].decodeParams(java.lang.String,int,java.nio.charset.Charset,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].decodeParams(java.lang.String,int,java.nio.charset.Charset,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Map<String,List<String>>"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.nio.charset.Charset"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.util.Collections].emptyMap()"
    - "[java.lang.String].charAt(int)"
    - "[java.util.LinkedHashMap].<init>()"
    - "[io.netty.handler.codec.http.QueryStringDecoder].addParam(java.lang.String,int,int,int,java.util.Map,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:229"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:232"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:231"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:232"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:235"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:234"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:240"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:269"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:268"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:243"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:245"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:244"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:245"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:235"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:234"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:250"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:255"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:254"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:255"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:261"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:260"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:257"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:261"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:260"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:228,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:230,1"
      Dst: "[java.util.Collections].emptyMap()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:232,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:235,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:255,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].addParam(java.lang.String,int,int,int,java.util.Map,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 20
    CyclomaticComplexity: 11
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].rawPath()"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringDecoder].pathEndIdx()"
    - "[java.lang.String].substring(int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:208,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].pathEndIdx()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:208,1"
      Dst: "[java.lang.String].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].rawQuery()"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringDecoder].pathEndIdx()"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:216"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:214"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:215,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].pathEndIdx()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:216,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:216,1"
      Dst: "[java.lang.String].substring(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].addParam(java.lang.String,int,int,int,java.util.Map<String,List<String>>,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    - "int"
    - "java.util.Map<String,List<String>>"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringDecoder].decodeComponent(java.lang.String,int,int,java.nio.charset.Charset,boolean)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:275"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:278"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:277"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:278"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:281"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:280"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:284"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:281,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].decodeComponent(java.lang.String,int,int,java.nio.charset.Charset,boolean)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:283,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:285,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:286,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:288,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].decodeComponent(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringDecoder].decodeComponent(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:304,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].decodeComponent(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.QueryStringDecoder].decodeComponent(java.lang.String,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.QueryStringDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[io.netty.handler.codec.http.QueryStringDecoder].decodeComponent(java.lang.String,int,int,java.nio.charset.Charset,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.QueryStringDecoder:330"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:333"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.QueryStringDecoder:332"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:333,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.QueryStringDecoder:333,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].decodeComponent(java.lang.String,int,int,java.nio.charset.Charset,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$1].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslContext)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1:134,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$1].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 142
    functionDepth: 0
    returnType: "io.netty.util.ReferenceCounted"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$000(io.netty.handler.ssl.ReferenceCountedOpenSslContext)"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].record(java.lang.Object)"
    - "[io.netty.util.ResourceLeakTracker].record(java.lang.Object)"
    functionUses: 4
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1:137"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1:141"
        BranchSideFuncs:
        - "record(java.lang.Object)"
        - "access$000(io.netty.handler.ssl.ReferenceCountedOpenSslContext)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1:137,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$000(io.netty.handler.ssl.ReferenceCountedOpenSslContext)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1:138,1"
      Dst: "[io.netty.util.ResourceLeakTracker].record(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$1].deallocate()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$100(io.netty.handler.ssl.ReferenceCountedOpenSslContext)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$000(io.netty.handler.ssl.ReferenceCountedOpenSslContext)"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].close(java.lang.Object)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.ResourceLeakTracker].close(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1:147"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1:151"
        BranchSideFuncs:
        - "<init>()"
        - "access$000(io.netty.handler.ssl.ReferenceCountedOpenSslContext)"
        - "close(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1:150"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1:150"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1:146,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$100(io.netty.handler.ssl.ReferenceCountedOpenSslContext)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1:147,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$000(io.netty.handler.ssl.ReferenceCountedOpenSslContext)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1:148,1"
      Dst: "[io.netty.util.ResourceLeakTracker].close(java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$1:149,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.Bzip2Rand].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Rand"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Rand:76,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].<init>(int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:40,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].<init>(int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].<init>(int,io.netty.handler.codec.dns.DnsOpCode)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.dns.DnsOpCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].<init>(int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:50,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsResponse].<init>(int,io.netty.handler.codec.dns.DnsOpCode,io.netty.handler.codec.dns.DnsResponseCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].isAuthoritativeAnswer()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].isRecursionAvailable()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].code()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "io.netty.handler.codec.dns.DnsResponseCode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsResponse].toString()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsResponse"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[io.netty.handler.codec.dns.DnsMessageUtil].appendResponse(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsResponse)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:176,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:176,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].appendResponse(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsResponse)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsResponse:176,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsMessageUtil].appendResponse(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsResponse)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsMessageUtil"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 40
    functionDepth: 2
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.handler.codec.dns.DnsResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsMessageUtil].appendResponseHeader(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsResponse)"
    - "[io.netty.handler.codec.dns.DnsMessageUtil].appendAllRecords(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsMessage)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:37,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].appendResponseHeader(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsResponse)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:38,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].appendAllRecords(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsMessage)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsMessageUtil].appendResponseHeader(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsResponse)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsMessageUtil"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 139
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.handler.codec.dns.DnsResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.dns.DnsMessageUtil].appendAddresses(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsMessage)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].id()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].opCode()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].code()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].isRecursionDesired()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].isAuthoritativeAnswer()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].isTruncated()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].isRecursionAvailable()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].z()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    - "[io.netty.handler.codec.dns.DnsMessage].id()"
    - "[io.netty.handler.codec.dns.DnsMessage].opCode()"
    - "[io.netty.handler.codec.dns.DnsResponse].code()"
    - "[io.netty.handler.codec.dns.DnsMessage].isRecursionDesired()"
    - "[io.netty.handler.codec.dns.DnsResponse].isAuthoritativeAnswer()"
    - "[io.netty.handler.codec.dns.DnsResponse].isTruncated()"
    - "[io.netty.handler.codec.dns.DnsResponse].isRecursionAvailable()"
    - "[io.netty.handler.codec.dns.DnsMessage].z()"
    functionUses: 1
    ICount: 56
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:109"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:113"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:112"
        BranchSideFuncs:
        - "isAuthoritativeAnswer()"
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:117"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:116"
        BranchSideFuncs:
        - "isTruncated()"
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:117"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:121"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:120"
        BranchSideFuncs:
        - "isRecursionAvailable()"
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:121"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:125"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:124"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:125"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:133"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:132"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:129"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:128"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "append(int)"
        - "z()"
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:136"
        BranchSideFuncs:
        - "length()"
        - "setCharAt(int,char)"
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:135"
        BranchSideFuncs:
        - "append(char)"
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:97,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:97,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:98,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:100,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].appendAddresses(java.lang.StringBuilder,io.netty.handler.codec.dns.DnsMessage)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:101,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].id()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:101,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:103,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].opCode()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:103,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:105,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponse].code()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:109,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].isRecursionDesired()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:113,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponse].isAuthoritativeAnswer()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:117,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponse].isTruncated()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:121,1"
      Dst: "[io.netty.handler.codec.dns.DnsResponse].isRecursionAvailable()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:125,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessage].z()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:134,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:134,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 8
  - functionName: "[io.netty.util.internal.PlatformDependent0$3].<init>(sun.misc.Unsafe)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$3"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "sun.misc.Unsafe"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$3:178,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$3].run()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$3"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 188
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    functionUses: 4
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$3:182,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.util.internal.PlatformDependent0$3:182,1"
      Dst: "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AcceptFilter].equals(java.lang.Object)"
    functionSourceFile: "io.netty.channel.kqueue.AcceptFilter"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 9
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.AcceptFilter:42"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AcceptFilter:45"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.AcceptFilter:44"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.AcceptFilter:45"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AcceptFilter:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.AcceptFilter:47"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.channel.kqueue.AcceptFilter:49"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AcceptFilter:47"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.channel.kqueue.AcceptFilter:49"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.AcceptFilter:47"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.kqueue.AcceptFilter:49,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.kqueue.AcceptFilter].hashCode()"
    functionSourceFile: "io.netty.channel.kqueue.AcceptFilter"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 5
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AcceptFilter:54,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AcceptFilter].toString()"
    functionSourceFile: "io.netty.channel.kqueue.AcceptFilter"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AcceptFilter:59,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.kqueue.AcceptFilter:59,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.kqueue.AcceptFilter:59,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].setStreamId(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdyRstStreamFrame"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].setStreamId(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame:51,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].setStreamId(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].setLast(boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdyRstStreamFrame"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].setLast(boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame:57,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].setLast(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].status()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdyStreamStatus"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].toString()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 83
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].streamId()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].status()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 17
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame:74,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame:75,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame:75,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame:78,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].streamId()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame:78,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame:81,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].status()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame:81,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame:82,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameEncoder$3"
    linkageType: ""
    functionLinenumber: 384
    functionLinenumberEnd: 387
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 49
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameEncoder$3:385,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.Socks4ProxyHandler].<init>(java.net.SocketAddress)"
    functionSourceFile: "io.netty.handler.proxy.Socks4ProxyHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.proxy.Socks4ProxyHandler].<init>(java.net.SocketAddress,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:42,1"
      Dst: "[io.netty.handler.proxy.Socks4ProxyHandler].<init>(java.net.SocketAddress,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.Socks4ProxyHandler].<init>(java.net.SocketAddress,java.lang.String)"
    functionSourceFile: "io.netty.handler.proxy.Socks4ProxyHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.proxy.ProxyHandler].<init>(java.net.SocketAddress)"
    - "[java.lang.String].isEmpty()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.proxy.Socks4ProxyHandler:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.Socks4ProxyHandler:50"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.proxy.Socks4ProxyHandler:49"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.proxy.Socks4ProxyHandler:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.Socks4ProxyHandler:50"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.proxy.Socks4ProxyHandler:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:46,1"
      Dst: "[io.netty.handler.proxy.ProxyHandler].<init>(java.net.SocketAddress)"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:47,1"
      Dst: "[java.lang.String].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.proxy.Socks4ProxyHandler].protocol()"
    functionSourceFile: "io.netty.handler.proxy.Socks4ProxyHandler"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.Socks4ProxyHandler].authScheme()"
    functionSourceFile: "io.netty.handler.proxy.Socks4ProxyHandler"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.proxy.Socks4ProxyHandler:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.Socks4ProxyHandler:59"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.proxy.Socks4ProxyHandler].username()"
    functionSourceFile: "io.netty.handler.proxy.Socks4ProxyHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.Socks4ProxyHandler].addCodec(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.Socks4ProxyHandler"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 80
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext].pipeline()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].name()"
    - "[io.netty.handler.codec.socksx.v4.Socks4ClientDecoder].<init>()"
    - "[io.netty.channel.DefaultChannelPipeline].addBefore(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DefaultChannelPipeline].context(io.netty.channel.ChannelHandler)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelHandlerContext].name()"
    - "[io.netty.channel.ChannelPipeline].addBefore(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.ChannelPipeline].context(io.netty.channel.ChannelHandler)"
    functionUses: 1
    ICount: 21
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:69,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:70,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].name()"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:72,1"
      Dst: "[io.netty.handler.codec.socksx.v4.Socks4ClientDecoder].<init>()"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:73,1"
      Dst: "[io.netty.channel.ChannelPipeline].addBefore(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:75,1"
      Dst: "[io.netty.channel.ChannelPipeline].context(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:76,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:76,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:76,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.Socks4ClientDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].setSingleDecode(boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:45,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:46,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].setSingleDecode(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.Socks4ProxyHandler].removeEncoder(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.Socks4ProxyHandler"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(java.lang.String)"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].remove(java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:83,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:84,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.Socks4ProxyHandler].removeDecoder(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.Socks4ProxyHandler"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(java.lang.String)"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].remove(java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:89,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:90,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.Socks4ProxyHandler].newInitialMessage(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.Socks4ProxyHandler"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 104
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.proxy.ProxyHandler].destinationAddress()"
    - "[java.net.InetSocketAddress].isUnresolved()"
    - "[java.net.InetSocketAddress].getHostString()"
    - "[java.net.InetSocketAddress].getAddress()"
    - "[java.net.Inet6Address].getHostAddress()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].<init>(io.netty.handler.codec.socksx.v4.Socks4CommandType,java.lang.String,int,java.lang.String)"
    - "[java.net.InetSocketAddress].getPort()"
    - "[java.net.InetAddress].getHostAddress()"
    functionUses: 1
    ICount: 21
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.proxy.Socks4ProxyHandler:97"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.Socks4ProxyHandler:100"
        BranchSideFuncs:
        - "getHostString()"
      - BranchSide: "io.netty.handler.proxy.Socks4ProxyHandler:99"
        BranchSideFuncs:
        - "getHostAddress()"
        - "getAddress()"
    - Branch String: "io.netty.handler.proxy.Socks4ProxyHandler:103"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.Socks4ProxyHandler:101"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.socksx.v4.Socks4CommandType,java.lang.String,int,java.lang.String)"
        - "getPort()"
    Callsites:
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:95,1"
      Dst: "[io.netty.handler.proxy.ProxyHandler].destinationAddress()"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:97,1"
      Dst: "[java.net.InetSocketAddress].isUnresolved()"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:98,1"
      Dst: "[java.net.InetSocketAddress].getHostString()"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:100,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:100,1"
      Dst: "[java.net.InetAddress].getHostAddress()"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:103,1"
      Dst: "[java.net.InetSocketAddress].getPort()"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:103,1"
      Dst: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].<init>(io.netty.handler.codec.socksx.v4.Socks4CommandType,java.lang.String,int,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].<init>(io.netty.handler.codec.socksx.v4.Socks4CommandType,java.lang.String,int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 63
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.socksx.v4.Socks4CommandType"
    - "java.lang.String"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v4.AbstractSocks4Message].<init>()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.net.IDN].toASCII(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 3
    ICount: 29
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:54"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:55"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:54"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:54"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:57"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:56"
        BranchSideFuncs:
        - "toASCII(java.lang.String)"
        - "checkNotNull(java.lang.Object,java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:53,1"
      Dst: "[io.netty.handler.codec.socksx.v4.AbstractSocks4Message].<init>()"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:55,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:55,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:55,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:55,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:55,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:57,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:58,1"
      Dst: "[java.net.IDN].toASCII(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.proxy.Socks4ProxyHandler].handleResponse(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.proxy.Socks4ProxyHandler"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 115
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].status()"
    - "[io.netty.handler.proxy.ProxyConnectException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.proxy.ProxyHandler].exceptionMessage(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandResponse].status()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 17
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.proxy.Socks4ProxyHandler:110"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.Socks4ProxyHandler:114"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.proxy.Socks4ProxyHandler:113"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "exceptionMessage(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:109,1"
      Dst: "[io.netty.handler.codec.socksx.v4.Socks4CommandResponse].status()"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:114,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:114,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:114,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:114,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:114,1"
      Dst: "[io.netty.handler.proxy.ProxyHandler].exceptionMessage(java.lang.String)"
    - Src: "io.netty.handler.proxy.Socks4ProxyHandler:114,1"
      Dst: "[io.netty.handler.proxy.ProxyConnectException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.ProxyConnectException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.proxy.ProxyConnectException"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ConnectException].<init>(java.lang.String)"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.ProxyConnectException:27,1"
      Dst: "[java.net.ConnectException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslServerSessionContext].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslContext,io.netty.handler.ssl.OpenSslKeyMaterialProvider)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslServerSessionContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslContext"
    - "io.netty.handler.ssl.OpenSslKeyMaterialProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslSessionCache].<init>(io.netty.handler.ssl.OpenSslEngineMap)"
    - "[io.netty.handler.ssl.OpenSslSessionContext].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslContext,io.netty.handler.ssl.OpenSslKeyMaterialProvider,long,io.netty.handler.ssl.OpenSslSessionCache)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslServerSessionContext:29,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].<init>(io.netty.handler.ssl.OpenSslEngineMap)"
    - Src: "io.netty.handler.ssl.OpenSslServerSessionContext:29,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionContext].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslContext,io.netty.handler.ssl.OpenSslKeyMaterialProvider,long,io.netty.handler.ssl.OpenSslSessionCache)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslServerSessionContext].setSessionIdContext(byte[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslServerSessionContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.locks.ReadWriteLock].writeLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[io.netty.internal.tcnative.SSLContext].setSessionIdContext(long,byte[])"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslServerSessionContext:42,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].writeLock()"
    - Src: "io.netty.handler.ssl.OpenSslServerSessionContext:43,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.OpenSslServerSessionContext:45,1"
      Dst: "[io.netty.internal.tcnative.SSLContext].setSessionIdContext(long,byte[])"
    - Src: "io.netty.handler.ssl.OpenSslServerSessionContext:47,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ThreadDeathWatcher$1].<init>(java.lang.Thread)"
    functionSourceFile: "io.netty.util.ThreadDeathWatcher$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Thread"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ThreadDeathWatcher$1:110,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ThreadDeathWatcher$1].run()"
    functionSourceFile: "io.netty.util.ThreadDeathWatcher$1"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].setContextClassLoader(java.lang.ClassLoader)"
    - "[jdk.internal.misc.InnocuousThread].setContextClassLoader(java.lang.ClassLoader)"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ThreadDeathWatcher$1:113,1"
      Dst: "[java.lang.Thread].setContextClassLoader(java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoder].<init>(io.netty.handler.codec.serialization.ClassResolver)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.serialization.ClassResolver"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.serialization.ObjectDecoder].<init>(int,io.netty.handler.codec.serialization.ClassResolver)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoder:49,1"
      Dst: "[io.netty.handler.codec.serialization.ObjectDecoder].<init>(int,io.netty.handler.codec.serialization.ClassResolver)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoder].<init>(int,io.netty.handler.codec.serialization.ClassResolver)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.serialization.ClassResolver"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].<init>(int,int,int,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoder:63,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].<init>(int,int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoder"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 80
    functionDepth: 7
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.serialization.CompactObjectInputStream].<init>(java.io.InputStream,io.netty.handler.codec.serialization.ClassResolver)"
    - "[io.netty.buffer.ByteBufInputStream].<init>(io.netty.buffer.ByteBuf,boolean)"
    - "[java.io.ObjectInputStream].readObject()"
    - "[java.io.ObjectInputStream].close()"
    functionUses: 1
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.serialization.ObjectDecoder:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.serialization.ObjectDecoder:74"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.serialization.ObjectDecoder:73"
        BranchSideFuncs:
        - "readObject()"
        - "<init>(java.io.InputStream,io.netty.handler.codec.serialization.ClassResolver)"
        - "<init>(io.netty.buffer.ByteBuf,boolean)"
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoder:69,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.serialization.ObjectDecoder:74,1"
      Dst: "[io.netty.buffer.ByteBufInputStream].<init>(io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.codec.serialization.ObjectDecoder:74,1"
      Dst: "[io.netty.handler.codec.serialization.CompactObjectInputStream].<init>(java.io.InputStream,io.netty.handler.codec.serialization.ClassResolver)"
    - Src: "io.netty.handler.codec.serialization.ObjectDecoder:76,1"
      Dst: "[java.io.ObjectInputStream].readObject()"
    - Src: "io.netty.handler.codec.serialization.ObjectDecoder:78,1"
      Dst: "[java.io.ObjectInputStream].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufInputStream].<init>(io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.buffer.ByteBufInputStream"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufInputStream].<init>(io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 1
    ICount: 6
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufInputStream:92,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.ByteBufInputStream:92,1"
      Dst: "[io.netty.buffer.ByteBufInputStream].<init>(io.netty.buffer.ByteBuf,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufInputStream].<init>(io.netty.buffer.ByteBuf,int,boolean)"
    functionSourceFile: "io.netty.buffer.ByteBufInputStream"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 129
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.CompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.SwappedByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedByteBuf].markReaderIndex()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].markReaderIndex()"
    functionUses: 2
    ICount: 34
    EdgeCount: 46
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufInputStream:109"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufInputStream:115"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufInputStream:114"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufInputStream:110"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufInputStream:113"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufInputStream:112"
        BranchSideFuncs:
        - "checkPositiveOrZero(int,java.lang.String)"
    - Branch String: "io.netty.buffer.ByteBufInputStream:115"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufInputStream:123"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufInputStream:122"
        BranchSideFuncs:
        - "readerIndex()"
        - "markReaderIndex()"
    - Branch String: "io.netty.buffer.ByteBufInputStream:116"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufInputStream:119"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.buffer.ByteBufInputStream:118"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "readableBytes()"
        - "append(int)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufInputStream:107,1"
      Dst: "[java.io.InputStream].<init>()"
    - Src: "io.netty.buffer.ByteBufInputStream:108,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.ByteBufInputStream:111,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.buffer.ByteBufInputStream:113,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.buffer.ByteBufInputStream:115,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.ByteBufInputStream:119,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.ByteBufInputStream:119,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.ByteBufInputStream:119,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.ByteBufInputStream:120,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.ByteBufInputStream:120,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.ByteBufInputStream:125,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.ByteBufInputStream:127,1"
      Dst: "[io.netty.buffer.ByteBuf].markReaderIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.serialization.CompactObjectInputStream].<init>(java.io.InputStream,io.netty.handler.codec.serialization.ClassResolver)"
    functionSourceFile: "io.netty.handler.codec.serialization.CompactObjectInputStream"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "io.netty.handler.codec.serialization.ClassResolver"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectInputStream].<init>(java.io.InputStream)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:30,1"
      Dst: "[java.io.ObjectInputStream].<init>(java.io.InputStream)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].newInstance(int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "io.netty.buffer.PooledDirectByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectPool$RecyclerObjectPool].get()"
    - "[io.netty.buffer.PooledByteBuf].reuse(int)"
    - "[io.netty.util.internal.ObjectPool].get()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:39,1"
      Dst: "[io.netty.util.internal.ObjectPool].get()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:40,1"
      Dst: "[io.netty.buffer.PooledByteBuf].reuse(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:45,1"
      Dst: "[io.netty.buffer.PooledByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].newInternalNioBuffer(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].duplicate()"
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:50,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].isDirect()"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._getByte(int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[java.nio.ByteBuffer].get(int)"
    functionUses: 16
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:60,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:60,1"
      Dst: "[java.nio.ByteBuffer].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._getShort(int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[java.nio.ByteBuffer].getShort(int)"
    functionUses: 7
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:65,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:65,1"
      Dst: "[java.nio.ByteBuffer].getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._getShortLE(int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    functionUses: 6
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:70,1"
      Dst: "[io.netty.buffer.PooledDirectByteBuf]._getShort(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:70,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[java.nio.ByteBuffer].get(int)"
    functionUses: 6
    ICount: 28
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:75,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:76,1"
      Dst: "[java.nio.ByteBuffer].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[java.nio.ByteBuffer].get(int)"
    functionUses: 6
    ICount: 28
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:83,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:84,1"
      Dst: "[java.nio.ByteBuffer].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._getInt(int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[java.nio.ByteBuffer].getInt(int)"
    functionUses: 7
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:91,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:91,1"
      Dst: "[java.nio.ByteBuffer].getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._getIntLE(int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:96,1"
      Dst: "[io.netty.buffer.PooledDirectByteBuf]._getInt(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:96,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._getLong(int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[java.nio.ByteBuffer].getLong(int)"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:101,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:101,1"
      Dst: "[java.nio.ByteBuffer].getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._getLongLE(int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    functionUses: 6
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:106,1"
      Dst: "[io.netty.buffer.PooledDirectByteBuf]._getLong(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:106,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 124
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.PooledHeapByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffers(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - "[java.nio.Buffer].remaining()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 15
    ICount: 29
    EdgeCount: 109
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledDirectByteBuf:112"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:114"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
        - "getBytes(int,byte[],int,int)"
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:113"
        BranchSideFuncs:
        - "nioBufferCount()"
    - Branch String: "io.netty.buffer.PooledDirectByteBuf:114"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:121"
        BranchSideFuncs:
        - "nioBuffers(int,int)"
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:120"
        BranchSideFuncs:
        - "setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - Branch String: "io.netty.buffer.PooledDirectByteBuf:115"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:114"
        BranchSideFuncs:
        - "nioBuffers(int,int)"
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:111,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:111,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:112,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:113,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:113,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:113,1"
      Dst: "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:114,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:115,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:116,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:117,1"
      Dst: "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:121,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - "[io.netty.buffer.PooledByteBuf]._internalNioBuffer(int,int,boolean)"
    - "[java.nio.ByteBuffer].get(byte[],int,int)"
    functionUses: 18
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:128,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:129,1"
      Dst: "[io.netty.buffer.PooledByteBuf]._internalNioBuffer(int,int,boolean)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:129,1"
      Dst: "[java.nio.ByteBuffer].get(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].duplicateInternalNioBuffer(int,int)"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    functionUses: 13
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:143,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:143,1"
      Dst: "[io.netty.buffer.PooledByteBuf].duplicateInternalNioBuffer(int,int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:143,1"
      Dst: "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].readBytes(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 139
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int)"
    - "[io.netty.buffer.PooledByteBuf]._internalNioBuffer(int,int,boolean)"
    - "[java.nio.ByteBuffer].get(byte[],int,int)"
    functionUses: 5
    ICount: 13
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:135,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:136,1"
      Dst: "[io.netty.buffer.PooledByteBuf]._internalNioBuffer(int,int,boolean)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:136,1"
      Dst: "[java.nio.ByteBuffer].get(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].readBytes(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.PooledByteBuf]._internalNioBuffer(int,int,boolean)"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    functionUses: 3
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:149,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:150,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:151,1"
      Dst: "[io.netty.buffer.PooledByteBuf]._internalNioBuffer(int,int,boolean)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:151,1"
      Dst: "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionDepth: 8
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.io.OutputStream,int,boolean)"
    functionUses: 10
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:158,1"
      Dst: "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.io.OutputStream,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.io.OutputStream,int,boolean)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 169
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.io.OutputStream"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.PooledByteBuf].alloc()"
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer()"
    - "[io.netty.buffer.ByteBufUtil].readBytes(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,int,java.io.OutputStream)"
    - "[java.nio.ByteBuffer].duplicate()"
    functionUses: 2
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledDirectByteBuf:164"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:167"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:166"
        BranchSideFuncs:
        - "idx(int)"
        - "readBytes(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,int,java.io.OutputStream)"
        - "internalNioBuffer()"
        - "alloc()"
    - Branch String: "io.netty.buffer.PooledDirectByteBuf:167"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:167"
        BranchSideFuncs:
        - "idx(int)"
        - "readBytes(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,int,java.io.OutputStream)"
        - "internalNioBuffer()"
        - "alloc()"
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:166"
        BranchSideFuncs:
        - "idx(int)"
        - "readBytes(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,int,java.io.OutputStream)"
        - "internalNioBuffer()"
        - "alloc()"
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:163,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:167,1"
      Dst: "[io.netty.buffer.PooledByteBuf].alloc()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:167,1"
      Dst: "[io.netty.buffer.PooledByteBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:167,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:167,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:167,1"
      Dst: "[io.netty.buffer.ByteBufUtil].readBytes(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,int,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].readBytes(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,int,java.io.OutputStream)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1879
    functionLinenumberEnd: 1901
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "java.nio.ByteBuffer"
    - "int"
    - "int"
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FilterOutputStream].write(byte[],int,int)"
    - "[java.io.BufferedOutputStream].write(byte[],int,int)"
    - "[java.io.PrintStream].write(byte[],int,int)"
    - "[java.io.ObjectOutputStream$BlockDataOutputStream].write(byte[],int,int)"
    - "[io.netty.buffer.ByteBufOutputStream].write(byte[],int,int)"
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream$1].write(byte[],int,int)"
    - "[java.io.FileOutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    - "[java.io.ObjectOutputStream].write(byte[],int,int)"
    - "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].write(byte[],int,int)"
    - "[java.io.DataOutputStream].write(byte[],int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.buffer.UnpooledByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.buffer.PooledByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.buffer.ByteBufUtil].getBytes(java.nio.ByteBuffer,byte[],int,int,java.io.OutputStream,int)"
    - "[io.netty.buffer.ByteBufUtil].threadLocalTempArray(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[java.nio.ByteBuffer].hasArray()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.nio.ByteBuffer].arrayOffset()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[io.netty.buffer.ByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 2
    ICount: 31
    EdgeCount: 84
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:1880"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1883"
        BranchSideFuncs:
        - "write(byte[],int,int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1882"
        BranchSideFuncs:
        - "min(int,int)"
        - "isDirectBufferPooled()"
    - Branch String: "io.netty.buffer.ByteBufUtil:1886"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1887"
        BranchSideFuncs:
        - "threadLocalTempArray(int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1886"
        BranchSideFuncs:
        - "threadLocalTempArray(int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1886"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1890"
        BranchSideFuncs:
        - "threadLocalTempArray(int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1889"
        BranchSideFuncs:
        - "heapBuffer(int)"
        - "arrayOffset()"
        - "array()"
        - "getBytes(java.nio.ByteBuffer,byte[],int,int,java.io.OutputStream,int)"
        - "release()"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1880,1"
      Dst: "[java.nio.ByteBuffer].hasArray()"
    - Src: "io.netty.buffer.ByteBufUtil:1881,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "io.netty.buffer.ByteBufUtil:1881,1"
      Dst: "[java.nio.ByteBuffer].arrayOffset()"
    - Src: "io.netty.buffer.ByteBufUtil:1881,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1883,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1884,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.ByteBufUtil:1884,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1886,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].isDirectBufferPooled()"
    - Src: "io.netty.buffer.ByteBufUtil:1887,1"
      Dst: "[io.netty.buffer.ByteBufUtil].threadLocalTempArray(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1887,1"
      Dst: "[io.netty.buffer.ByteBufUtil].getBytes(java.nio.ByteBuffer,byte[],int,int,java.io.OutputStream,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1890,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1892,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.ByteBufUtil:1893,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.buffer.ByteBufUtil:1896,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.ByteBufUtil].getBytes(java.nio.ByteBuffer,byte[],int,int,java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1904
    functionLinenumberEnd: 1911
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.nio.ByteBuffer"
    - "byte[]"
    - "int"
    - "int"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[java.io.FilterOutputStream].write(byte[],int,int)"
    - "[java.io.BufferedOutputStream].write(byte[],int,int)"
    - "[java.io.PrintStream].write(byte[],int,int)"
    - "[java.io.ObjectOutputStream$BlockDataOutputStream].write(byte[],int,int)"
    - "[io.netty.buffer.ByteBufOutputStream].write(byte[],int,int)"
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream$1].write(byte[],int,int)"
    - "[java.io.FileOutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    - "[java.io.ObjectOutputStream].write(byte[],int,int)"
    - "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].write(byte[],int,int)"
    - "[java.io.DataOutputStream].write(byte[],int,int)"
    - "[java.nio.ByteBuffer].get(byte[],int,int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:1909"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1905"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1904"
        BranchSideFuncs:
        - "min(int,int)"
        - "write(byte[],int,int)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1905,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1906,1"
      Dst: "[java.nio.ByteBuffer].get(byte[],int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1907,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].readBytes(java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 176
    functionDepth: 8
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.io.OutputStream,int,boolean)"
    functionUses: 6
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:172,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:173,1"
      Dst: "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.io.OutputStream,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._setByte(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[java.nio.ByteBuffer].put(int,byte)"
    functionUses: 25
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:180,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:180,1"
      Dst: "[java.nio.ByteBuffer].put(int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._setShort(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[java.nio.ByteBuffer].putShort(int,short)"
    functionUses: 7
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:185,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:185,1"
      Dst: "[java.nio.ByteBuffer].putShort(int,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 189
    functionLinenumberEnd: 192
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    functionUses: 5
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:190,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:190,1"
      Dst: "[io.netty.buffer.PooledDirectByteBuf]._setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 200
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[java.nio.ByteBuffer].put(int,byte)"
    functionUses: 6
    ICount: 21
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:195,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:196,1"
      Dst: "[java.nio.ByteBuffer].put(int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 208
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[java.nio.ByteBuffer].put(int,byte)"
    functionUses: 6
    ICount: 21
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:203,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:204,1"
      Dst: "[java.nio.ByteBuffer].put(int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._setInt(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 213
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[java.nio.ByteBuffer].putInt(int,int)"
    functionUses: 11
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:211,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:211,1"
      Dst: "[java.nio.ByteBuffer].putInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 218
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:216,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:216,1"
      Dst: "[io.netty.buffer.PooledDirectByteBuf]._setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._setLong(int,long)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 220
    functionLinenumberEnd: 223
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[java.nio.ByteBuffer].putLong(int,long)"
    functionUses: 8
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:221,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:221,1"
      Dst: "[java.nio.ByteBuffer].putLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf]._setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setLong(int,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:226,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:226,1"
      Dst: "[io.netty.buffer.PooledDirectByteBuf]._setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 244
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.AbstractByteBuf].checkSrcIndex(int,int,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.EmptyByteBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffers(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - "[java.nio.Buffer].remaining()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 20
    ICount: 29
    EdgeCount: 135
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledDirectByteBuf:232"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:234"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
        - "setBytes(int,byte[],int,int)"
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:233"
        BranchSideFuncs:
        - "nioBufferCount()"
    - Branch String: "io.netty.buffer.PooledDirectByteBuf:234"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:241"
        BranchSideFuncs:
        - "nioBuffers(int,int)"
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:240"
        BranchSideFuncs:
        - "getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - Branch String: "io.netty.buffer.PooledDirectByteBuf:235"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:234"
        BranchSideFuncs:
        - "nioBuffers(int,int)"
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:231,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:231,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkSrcIndex(int,int,int,int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:232,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:233,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:233,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:233,1"
      Dst: "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:234,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:235,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:236,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:237,1"
      Dst: "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:241,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 251
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkSrcIndex(int,int,int,int)"
    - "[io.netty.buffer.PooledByteBuf]._internalNioBuffer(int,int,boolean)"
    - "[java.nio.ByteBuffer].put(byte[],int,int)"
    functionUses: 14
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:248,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkSrcIndex(int,int,int,int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:249,1"
      Dst: "[io.netty.buffer.PooledByteBuf]._internalNioBuffer(int,int,boolean)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:249,1"
      Dst: "[java.nio.ByteBuffer].put(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 254
    functionLinenumberEnd: 266
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer()"
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.ByteBuffer].duplicate()"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    functionUses: 9
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledDirectByteBuf:258"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:262"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:261"
        BranchSideFuncs:
        - "idx(int)"
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:255,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:256,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:257,1"
      Dst: "[io.netty.buffer.PooledByteBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:259,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:262,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:263,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:263,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:264,1"
      Dst: "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 269
    functionLinenumberEnd: 280
    functionDepth: 6
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.ByteBufUtil].threadLocalTempArray(int)"
    - "[java.io.BufferedInputStream].read(byte[],int,int)"
    - "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].read(byte[],int,int)"
    - "[java.util.zip.InflaterInputStream].read(byte[],int,int)"
    - "[io.netty.buffer.ByteBufInputStream].read(byte[],int,int)"
    - "[java.io.DataInputStream].read(byte[],int,int)"
    - "[java.io.InputStream$1].read(byte[],int,int)"
    - "[java.io.FilterInputStream].read(byte[],int,int)"
    - "[java.util.jar.JarInputStream].read(byte[],int,int)"
    - "[java.io.InputStream].read(byte[],int,int)"
    - "[java.io.ObjectInputStream$BlockDataInputStream].read(byte[],int,int)"
    - "[java.io.PushbackInputStream].read(byte[],int,int)"
    - "[java.io.FileInputStream].read(byte[],int,int)"
    - "[java.io.ObjectInputStream].read(byte[],int,int)"
    - "[java.util.zip.ZipInputStream].read(byte[],int,int)"
    - "[java.util.jar.Manifest$FastInputStream].read(byte[],int,int)"
    - "[java.io.ObjectInputStream$PeekInputStream].read(byte[],int,int)"
    - "[java.io.ByteArrayInputStream].read(byte[],int,int)"
    - "[java.lang.ProcessImpl$DeferredCloseInputStream].read(byte[],int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer()"
    - "[io.netty.buffer.PooledByteBuf].idx(int)"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.ByteBuffer].put(byte[],int,int)"
    functionUses: 8
    ICount: 14
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledDirectByteBuf:273"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:276"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledDirectByteBuf:275"
        BranchSideFuncs:
        - "idx(int)"
        - "internalNioBuffer()"
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:270,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:271,1"
      Dst: "[io.netty.buffer.ByteBufUtil].threadLocalTempArray(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:272,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:276,1"
      Dst: "[io.netty.buffer.PooledByteBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:277,1"
      Dst: "[io.netty.buffer.PooledByteBuf].idx(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:277,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:278,1"
      Dst: "[java.nio.ByteBuffer].put(byte[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].copy(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 283
    functionLinenumberEnd: 287
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.PooledByteBuf].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].maxCapacity()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 10
    ICount: 9
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:284,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:285,1"
      Dst: "[io.netty.buffer.PooledByteBuf].alloc()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:285,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].maxCapacity()"
    - Src: "io.netty.buffer.PooledDirectByteBuf:285,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int,int)"
    - Src: "io.netty.buffer.PooledDirectByteBuf:286,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 292
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 46
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].array()"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 63
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:296,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 300
    functionLinenumberEnd: 302
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 58
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:301,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].hasMemoryAddress()"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 305
    functionLinenumberEnd: 307
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 310
    functionLinenumberEnd: 312
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 38
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:311,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].newInternalNioBuffer(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf].newInternalNioBuffer(java.nio.ByteBuffer)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:28,1"
      Dst: "[io.netty.buffer.PooledDirectByteBuf].newInternalNioBuffer(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int,io.netty.buffer.PooledDirectByteBuf$1)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    - "int"
    - "io.netty.buffer.PooledDirectByteBuf$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf:28,1"
      Dst: "[io.netty.buffer.PooledDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ClientCookieEncoder].encode(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.ClientCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ClientCookieEncoder:49,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ClientCookieEncoder].encode(io.netty.handler.codec.http.Cookie)"
    functionSourceFile: "io.netty.handler.codec.http.ClientCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.Cookie"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ClientCookieEncoder:60,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ClientCookieEncoder].encode(io.netty.handler.codec.http.Cookie[])"
    functionSourceFile: "io.netty.handler.codec.http.ClientCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.Cookie[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ClientCookieEncoder:71,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ClientCookieEncoder].encode(java.lang.Iterable<?\
      \ extends Cookie>)"
    functionSourceFile: "io.netty.handler.codec.http.ClientCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<? extends Cookie>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(java.lang.Iterable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ClientCookieEncoder:82,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder].encode(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ClientCookieEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.ClientCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ClientCookieEncoder:85,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelHandlerContext].handler()"
    functionSourceFile: "io.netty.channel.DefaultChannelHandlerContext"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.UniqueIpFilter].<init>()"
    functionSourceFile: "io.netty.handler.ipfilter.UniqueIpFilter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ipfilter.AbstractRemoteAddressFilter].<init>()"
    - "[io.netty.util.internal.ConcurrentSet].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.UniqueIpFilter:34,1"
      Dst: "[io.netty.handler.ipfilter.AbstractRemoteAddressFilter].<init>()"
    - Src: "io.netty.handler.ipfilter.UniqueIpFilter:36,1"
      Dst: "[io.netty.util.internal.ConcurrentSet].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.UniqueIpFilter].accept(io.netty.channel.ChannelHandlerContext,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.handler.ipfilter.UniqueIpFilter"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 51
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].getAddress()"
    - "[io.netty.util.internal.ConcurrentSet].add(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].add(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].add(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].add(java.lang.Object)"
    - "[io.netty.handler.ipfilter.UniqueIpFilter$1].<init>(io.netty.handler.ipfilter.UniqueIpFilter,java.net.InetAddress)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannel:io.netty.handler.codec.http2.AbstractHttp2StreamChannel].closeFuture()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].closeFuture()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 14
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.ipfilter.UniqueIpFilter:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.UniqueIpFilter:44"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.UniqueIpFilter:43"
        BranchSideFuncs:
        - "channel()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.handler.ipfilter.UniqueIpFilter,java.net.InetAddress)"
        - "closeFuture()"
    Callsites:
    - Src: "io.netty.handler.ipfilter.UniqueIpFilter:40,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.handler.ipfilter.UniqueIpFilter:41,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.handler.ipfilter.UniqueIpFilter:44,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.ipfilter.UniqueIpFilter:44,1"
      Dst: "[io.netty.channel.Channel].closeFuture()"
    - Src: "io.netty.handler.ipfilter.UniqueIpFilter:44,1"
      Dst: "[io.netty.handler.ipfilter.UniqueIpFilter$1].<init>(io.netty.handler.ipfilter.UniqueIpFilter,java.net.InetAddress)"
    - Src: "io.netty.handler.ipfilter.UniqueIpFilter:44,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.UniqueIpFilter$1].<init>(io.netty.handler.ipfilter.UniqueIpFilter,java.net.InetAddress)"
    functionSourceFile: "io.netty.handler.ipfilter.UniqueIpFilter$1"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ipfilter.UniqueIpFilter"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.UniqueIpFilter$1:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.UniqueIpFilter].accept(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress)"
    functionSourceFile: "io.netty.handler.ipfilter.UniqueIpFilter"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ipfilter.UniqueIpFilter].accept(io.netty.channel.ChannelHandlerContext,java.net.InetSocketAddress)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.UniqueIpFilter:33,1"
      Dst: "[io.netty.handler.ipfilter.UniqueIpFilter].accept(io.netty.channel.ChannelHandlerContext,java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.UniqueIpFilter].access$000(io.netty.handler.ipfilter.UniqueIpFilter)"
    functionSourceFile: "io.netty.handler.ipfilter.UniqueIpFilter"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "io.netty.handler.ipfilter.UniqueIpFilter"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].<init>(boolean,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:91,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].<init>(boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].<init>(boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.collection.IntObjectHashMap].<init>()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,io.netty.handler.codec.http2.DefaultHttp2Connection$1)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection)"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,java.util.List)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,boolean,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:106"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:99"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:98"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:107"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:106"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:99,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:68,1"
      Dst: "[io.netty.util.collection.IntObjectHashMap].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:69,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,io.netty.handler.codec.http2.DefaultHttp2Connection$1)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:70,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:82,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:100,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,java.util.List)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:106,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,boolean,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:110,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:110,1"
      Dst: "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].close(io.netty.util.concurrent.Promise<Void>)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 170
    functionDepth: 5
    returnType: "io.netty.util.concurrent.Future<Void>"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Promise<Void>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isVoid()"
    - "[io.netty.channel.CompleteChannelFuture].isVoid()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].isVoid()"
    - "[io.netty.channel.VoidChannelPromise].isVoid()"
    - "[io.netty.channel.DefaultChannelPromise].isVoid()"
    - "[io.netty.util.concurrent.PromiseNotifier].cascade(io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].isStreamMapEmpty()"
    - "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].trySuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].trySuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].trySuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].trySuccess(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].entries()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].entries()"
    - "[io.netty.util.collection.IntObjectHashMap].entries()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].iterator()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.buffer.CompositeByteBuf].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.channel.pool.AbstractChannelPoolMap].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.channel.DefaultChannelPipeline].iterator()"
    - "[io.netty.channel.group.ChannelGroupException].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$1].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$1].iterator()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$1].iterator()"
    - "[io.netty.handler.codec.EmptyHeaders].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.buffer.PoolChunkList].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].allowModifications()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].incrementPendingIterations()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$EntryImpl].value()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].value()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].close(java.util.Iterator)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].decrementPendingIterations()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].close()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].close()"
    - "[io.netty.channel.ChannelFuture].isVoid()"
    - "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectMap].entries()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.util.collection.IntObjectMap$PrimitiveEntry].value()"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.handler.codec.http2.Http2Stream].close()"
    functionUses: 1
    ICount: 62
    EdgeCount: 341
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:125"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:134"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:133"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:127"
        BranchSideFuncs:
        - "isVoid()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:131"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:130"
        BranchSideFuncs:
        - "cascade(io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:131"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:130"
        BranchSideFuncs:
        - "cascade(io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:141"
        BranchSideFuncs:
        - "trySuccess(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:140"
        BranchSideFuncs:
        - "entries()"
        - "allowModifications()"
        - "iterator()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:160"
        BranchSideFuncs:
        - "incrementPendingIterations()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:159"
        BranchSideFuncs:
        - "hasNext()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:147"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:156"
        BranchSideFuncs:
        - "decrementPendingIterations()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:155"
        BranchSideFuncs:
        - "trySuccess(java.lang.Object)"
        - "entries()"
        - "isStreamMapEmpty()"
        - "allowModifications()"
        - "incrementPendingIterations()"
        - "iterator()"
        - "close(java.util.Iterator)"
        - "decrementPendingIterations()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:154"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:160"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:169"
        BranchSideFuncs:
        - "next()"
        - "id()"
        - "value()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:168"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:162"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:122,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:128,1"
      Dst: "[io.netty.channel.ChannelFuture].isVoid()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:131,1"
      Dst: "[io.netty.util.concurrent.PromiseNotifier].cascade(io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:136,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].isStreamMapEmpty()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:137,1"
      Dst: "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:141,1"
      Dst: "[io.netty.util.collection.IntObjectMap].entries()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:141,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:144,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].allowModifications()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:145,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].incrementPendingIterations()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:147,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:148,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:148,1"
      Dst: "[io.netty.util.collection.IntObjectMap$PrimitiveEntry].value()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:149,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:153,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].close(java.util.Iterator)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:157,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].decrementPendingIterations()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:162,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:165,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 24
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].isStreamMapEmpty()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.IntCollections$EmptyMap].size()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].size()"
    - "[io.netty.util.collection.IntObjectHashMap].size()"
    - "[java.util.Map].size()"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:296"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:295"
        BranchSideFuncs:
        - "size()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:296,1"
      Dst: "[java.util.Map].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].incrementPendingIterations()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams"
    linkageType: ""
    functionLinenumber: 1016
    functionLinenumberEnd: 1019
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].close(java.util.Iterator)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 507
    functionLinenumberEnd: 517
    functionDepth: 4
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 1
    argTypes:
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].createdBy()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].createdBy()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].deactivate(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
    functionUses: 2
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:508"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:512"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:511"
        BranchSideFuncs:
        - "createdBy()"
        - "deactivate(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:514,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].createdBy()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:515,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].deactivate(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].deactivate(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams"
    linkageType: ""
    functionLinenumber: 961
    functionLinenumberEnd: 973
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].allowModifications()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].removeFromActiveStreams(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$2].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
    - "[java.util.concurrent.ConcurrentLinkedQueue].add(java.lang.Object)"
    - "[java.util.AbstractQueue].add(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].add(java.lang.Object)"
    - "[java.util.ArrayDeque].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].add(java.lang.Object)"
    - "[java.util.Queue].add(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:962"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:963"
        BranchSideFuncs:
        - "removeFromActiveStreams(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:962"
        BranchSideFuncs:
        - "removeFromActiveStreams(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:962"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:965"
        BranchSideFuncs:
        - "removeFromActiveStreams(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:964"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
        - "add(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:962,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].allowModifications()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:963,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].removeFromActiveStreams(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:965,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$2].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:965,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].removeFromActiveStreams(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams"
    linkageType: ""
    functionLinenumber: 1003
    functionLinenumberEnd: 1011
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].remove(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.HashSet].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].remove(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].remove(java.lang.Object)"
    - "[java.util.TreeSet].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].remove(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.AbstractCollection].remove(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].remove(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].remove(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].createdBy()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].createdBy()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].notifyClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].removeStream(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
    - "[java.util.Set].remove(java.lang.Object)"
    functionUses: 2
    ICount: 15
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1004"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1008"
        BranchSideFuncs:
        - "removeStream(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1004,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1006,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].createdBy()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1007,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].notifyClosed(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1009,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].removeStream(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].notifyClosed(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 354
    functionLinenumberEnd: 363
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$1].onStreamClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1].onStreamClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor$1].onStreamClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$1].onStreamClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2ConnectionAdapter].onStreamClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$1].onStreamClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].onStreamClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onStreamClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Throwable)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[io.netty.handler.codec.http2.Http2Connection$Listener].onStreamClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:355"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:362"
        BranchSideFuncs:
        - "error(java.lang.String,java.lang.Throwable)"
        - "get(int)"
        - "onStreamClosed(io.netty.handler.codec.http2.Http2Stream)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:361"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:355,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:357,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:357,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Listener].onStreamClosed(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:359,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].removeStream(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 328
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.util.collection.IntObjectHashMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].remove()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].remove()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].remove()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].remove()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].remove()"
    - "[io.netty.channel.nio.NioEventLoop$7].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].remove()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].remove()"
    - "[io.netty.util.internal.ReadOnlyIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].remove()"
    - "[io.netty.channel.group.CombinedIterator].remove()"
    - "[java.util.Iterator].remove()"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1].onStreamRemoved(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$2].onStreamRemoved(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder$1].onStreamRemoved(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onStreamRemoved(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$1].onStreamRemoved(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onStreamRemoved(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2ConnectionAdapter].onStreamRemoved(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].isStreamMapEmpty()"
    - "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].trySuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].trySuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].trySuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].trySuccess(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectMap].remove(int)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[io.netty.handler.codec.http2.Http2Connection$Listener].onStreamRemoved(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    functionUses: 1
    ICount: 37
    EdgeCount: 92
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:307"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:310"
        BranchSideFuncs:
        - "remove(int)"
        - "id()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:309"
        BranchSideFuncs:
        - "remove()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:308"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:308"
        BranchSideFuncs:
        - "error(java.lang.String,java.lang.Throwable)"
        - "onStreamRemoved(io.netty.handler.codec.http2.Http2Stream)"
        - "get(int)"
        - "remove(int)"
        - "remove()"
        - "id()"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:307"
        BranchSideFuncs:
        - "remove(int)"
        - "id()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:314"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:327"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:326"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:315"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:323"
        BranchSideFuncs:
        - "error(java.lang.String,java.lang.Throwable)"
        - "onStreamRemoved(io.netty.handler.codec.http2.Http2Stream)"
        - "get(int)"
        - "remove(int)"
        - "remove()"
        - "id()"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:322"
        BranchSideFuncs:
        - "isStreamMapEmpty()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:323"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:327"
        BranchSideFuncs:
        - "trySuccess(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:326"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:323"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:327"
        BranchSideFuncs:
        - "trySuccess(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:326"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:308,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:308,1"
      Dst: "[io.netty.util.collection.IntObjectMap].remove(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:310,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:315,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:317,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:317,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Listener].onStreamRemoved(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:319,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:323,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].isStreamMapEmpty()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:324,1"
      Dst: "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$2].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$2"
    linkageType: ""
    functionLinenumber: 964
    functionLinenumberEnd: 966
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams"
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$2:965,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].decrementPendingIterations()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams"
    linkageType: ""
    functionLinenumber: 1020
    functionLinenumberEnd: 1036
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].allowModifications()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$2].process()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$1].process()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].access$400()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Throwable)"
    - "[java.util.Queue].poll()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$Event].process()"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    functionUses: 5
    ICount: 18
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1022"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1034"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1025"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1029"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1028"
        BranchSideFuncs:
        - "error(java.lang.String,java.lang.Throwable)"
        - "access$400()"
        - "process()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1022,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].allowModifications()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1024,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1029,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$Event].process()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1031,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].access$400()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:1031,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].addListener(io.netty.handler.codec.http2.Http2Connection$Listener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection$Listener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:174,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].removeListener(io.netty.handler.codec.http2.Http2Connection$Listener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection$Listener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].remove(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:179,1"
      Dst: "[java.util.List].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].isServer()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isServer()"
    functionUses: 18
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:184,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isServer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].connectionStream()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].stream(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.IntObjectHashMap].get(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(int)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(int)"
    - "[io.netty.util.collection.IntObjectMap].get(int)"
    functionUses: 26
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:194,1"
      Dst: "[io.netty.util.collection.IntObjectMap].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].streamMayHaveExisted(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].mayHaveCreatedStream(int)"
    functionUses: 4
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:198"
        BranchSideFuncs:
        - "mayHaveCreatedStream(int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:198"
        BranchSideFuncs:
        - "mayHaveCreatedStream(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:199,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].mayHaveCreatedStream(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].numActiveStreams()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 205
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].size()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:204,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].size()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams"
    linkageType: ""
    functionLinenumber: 944
    functionLinenumberEnd: 946
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroup].size()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].size()"
    - "[java.util.TreeMap$KeySet].size()"
    - "[io.netty.util.internal.ConcurrentSet].size()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].size()"
    - "[java.util.HashSet].size()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].size()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].size()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].size()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].size()"
    - "[java.util.TreeSet].size()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].size()"
    - "[java.util.TreeMap$EntrySet].size()"
    - "[java.util.Set].size()"
    functionUses: 1
    ICount: 4
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:945,1"
      Dst: "[java.util.Set].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionDepth: 3
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2StreamVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:209,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams"
    linkageType: ""
    functionLinenumber: 974
    functionLinenumberEnd: 986
    functionDepth: 2
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2StreamVisitor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].incrementPendingIterations()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$1].visit(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor].visit(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$1].visit(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor$1].visit(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$ListenerWritabilityMonitor].visit(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].decrementPendingIterations()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.handler.codec.http2.Http2StreamVisitor].visit(io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 1
    ICount: 19
    EdgeCount: 141
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:977"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:979"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "visit(io.netty.handler.codec.http2.Http2Stream)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:978"
        BranchSideFuncs:
        - "decrementPendingIterations()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:978"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:981"
        BranchSideFuncs:
        - "decrementPendingIterations()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:980"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:975,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].incrementPendingIterations()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:977,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:977,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:977,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:978,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamVisitor].visit(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:984,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].decrementPendingIterations()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].local()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 213
    functionLinenumberEnd: 215
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Connection$Endpoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 22
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].remote()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 220
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Connection$Endpoint"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].goAwayReceived()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].access$100(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:224"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:223"
        BranchSideFuncs:
        - "access$100(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:224,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].access$100(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].goAwayReceived(int,long,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 245
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].lastStreamKnownByPeer()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].access$200(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint,int)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.handler.codec.http2.Http2ConnectionAdapter].onGoAwayReceived(int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$1].onGoAwayReceived(int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onGoAwayReceived(int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].closeStreamsGreaterThanLastKnownStreamId(int,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[io.netty.handler.codec.http2.Http2Connection$Listener].onGoAwayReceived(int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 39
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:229"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:234"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "error(java.lang.String,java.lang.Throwable)"
        - "onGoAwayReceived(int,long,io.netty.buffer.ByteBuf)"
        - "valueOf(int)"
        - "lastStreamKnownByPeer()"
        - "access$200(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint,int)"
        - "get(int)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:233"
        BranchSideFuncs:
        - "access$200(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint,int)"
        - "size()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:229"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:234"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "error(java.lang.String,java.lang.Throwable)"
        - "onGoAwayReceived(int,long,io.netty.buffer.ByteBuf)"
        - "valueOf(int)"
        - "lastStreamKnownByPeer()"
        - "access$200(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint,int)"
        - "get(int)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:233"
        BranchSideFuncs:
        - "access$200(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint,int)"
        - "size()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:235"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:243"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "error(java.lang.String,java.lang.Throwable)"
        - "onGoAwayReceived(int,long,io.netty.buffer.ByteBuf)"
        - "valueOf(int)"
        - "lastStreamKnownByPeer()"
        - "access$200(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint,int)"
        - "get(int)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:242"
        BranchSideFuncs:
        - "closeStreamsGreaterThanLastKnownStreamId(int,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:229,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].lastStreamKnownByPeer()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:231,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:230,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:234,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].access$200(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:235,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:237,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:237,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Listener].onGoAwayReceived(int,long,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:239,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:243,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].closeStreamsGreaterThanLastKnownStreamId(int,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].closeStreamsGreaterThanLastKnownStreamId(int,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 280
    functionLinenumberEnd: 291
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$1].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,int,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:281,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$1].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,int,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:281,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].forEachActiveStream(io.netty.handler.codec.http2.Http2StreamVisitor)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$1].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,int,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$1"
    linkageType: ""
    functionLinenumber: 280
    functionLinenumberEnd: 282
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection"
    - "int"
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$1:281,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].goAwaySent()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 249
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].access$100(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:248"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:247"
        BranchSideFuncs:
        - "access$100(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:248,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].access$100(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].goAwaySent(int,long,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 252
    functionLinenumberEnd: 277
    functionDepth: 5
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].lastStreamKnownByPeer()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].access$200(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint,int)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onGoAwaySent(int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2ConnectionAdapter].onGoAwaySent(int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].closeStreamsGreaterThanLastKnownStreamId(int,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[io.netty.handler.codec.http2.Http2Connection$Listener].onGoAwaySent(int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 43
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:253"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:265"
        BranchSideFuncs:
        - "access$200(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint,int)"
        - "size()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:256"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:259"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:258"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:259"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:266"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "onGoAwaySent(int,long,io.netty.buffer.ByteBuf)"
        - "error(java.lang.String,java.lang.Throwable)"
        - "valueOf(int)"
        - "lastStreamKnownByPeer()"
        - "access$200(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint,int)"
        - "get(int)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:265"
        BranchSideFuncs:
        - "access$200(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint,int)"
        - "size()"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:267"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:275"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "onGoAwaySent(int,long,io.netty.buffer.ByteBuf)"
        - "error(java.lang.String,java.lang.Throwable)"
        - "valueOf(int)"
        - "lastStreamKnownByPeer()"
        - "access$200(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint,int)"
        - "get(int)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:274"
        BranchSideFuncs:
        - "closeStreamsGreaterThanLastKnownStreamId(int,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:253,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].lastStreamKnownByPeer()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:262,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:260,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:266,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].access$200(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:267,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:269,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:269,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Listener].onGoAwaySent(int,long,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:271,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:275,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].closeStreamsGreaterThanLastKnownStreamId(int,io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].notifyHalfClosed(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 344
    functionLinenumberEnd: 353
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$1].onStreamHalfClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].onStreamHalfClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2ConnectionAdapter].onStreamHalfClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onStreamHalfClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Throwable)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[io.netty.handler.codec.http2.Http2Connection$Listener].onStreamHalfClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 17
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection:345"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:352"
        BranchSideFuncs:
        - "error(java.lang.String,java.lang.Throwable)"
        - "get(int)"
        - "onStreamHalfClosed(io.netty.handler.codec.http2.Http2Stream)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection:351"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:345,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:347,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:347,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Listener].onStreamHalfClosed(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:349,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].newKey()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.http2.Http2Connection$PropertyKey"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry].newKey()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:366,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry].newKey()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry].newKey()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry:1071,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry:1071,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry:1072,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey:1044,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection].verifyKey(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection"
    linkageType: ""
    functionLinenumber: 376
    functionLinenumberEnd: 378
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection$PropertyKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey].verifyConnection(io.netty.handler.codec.http2.Http2Connection)"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:377,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection:377,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey].verifyConnection(io.netty.handler.codec.http2.Http2Connection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey].verifyConnection(io.netty.handler.codec.http2.Http2Connection)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey"
    linkageType: ""
    functionLinenumber: 1048
    functionLinenumberEnd: 1053
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey:1049"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey:1052"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey:1051"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey:1050,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubAckPayload)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader"
    - "io.netty.handler.codec.mqtt.MqttUnsubAckPayload"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttUnsubAckPayload)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage:28,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttUnsubAckPayload)"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage:28,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubAckPayload)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    - "io.netty.handler.codec.mqtt.MqttUnsubAckPayload"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubAckPayload)"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].fallbackVariableHeader(io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage:34,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].fallbackVariableHeader(io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage:34,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubAckPayload)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubAckPayload)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage:38,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubAckPayload)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].fallbackVariableHeader(io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 47
    functionDepth: 2
    returnType: "io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].<init>(int,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].messageId()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage:43"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage:46"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage:45"
        BranchSideFuncs:
        - "messageId()"
        - "<init>(int,io.netty.handler.codec.mqtt.MqttProperties)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage:46,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].messageId()"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage:46,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].<init>(int,io.netty.handler.codec.mqtt.MqttProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].<init>(java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].<init>()"
    - "[java.util.ArrayList].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:36,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:32,1"
      Dst: "[java.util.ArrayList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].getHttpDataType()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData$HttpDataType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].addValue(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:46,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:47,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:48,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:49,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].addValue(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[java.util.List].add(int,java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:53,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:54,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:55,1"
      Dst: "[java.util.List].add(int,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:56,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].setValue(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[java.util.List].set(int,java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.InternalAttribute:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.InternalAttribute:67"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.InternalAttribute:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:60,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:61,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:62,1"
      Dst: "[java.util.List].set(int,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:64,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:65,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].getName()"
    - "[java.lang.String].hashCode()"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:72,1"
      Dst: "[io.netty.handler.codec.http.multipart.InternalAttribute].getName()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:72,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].getName()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 82
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].getName()"
    functionUses: 9
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.InternalAttribute:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.InternalAttribute:80"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.InternalAttribute:79"
        BranchSideFuncs:
        - "getName()"
        - "equalsIgnoreCase(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:81,1"
      Dst: "[io.netty.handler.codec.http.multipart.InternalAttribute].getName()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:81,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].getHttpDataType()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getHttpDataType()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.ClassCastException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].compareTo(io.netty.handler.codec.http.multipart.InternalAttribute)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.InternalAttribute:86"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.InternalAttribute:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.InternalAttribute:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:87,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:87,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:87,1"
      Dst: "[io.netty.handler.codec.http.multipart.InternalAttribute].getHttpDataType()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:87,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:88,1"
      Dst: "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getHttpDataType()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:88,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:88,1"
      Dst: "[java.lang.ClassCastException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:90,1"
      Dst: "[io.netty.handler.codec.http.multipart.InternalAttribute].compareTo(io.netty.handler.codec.http.multipart.InternalAttribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].compareTo(io.netty.handler.codec.http.multipart.InternalAttribute)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.InternalAttribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].getName()"
    - "[java.lang.String].compareToIgnoreCase(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:94,1"
      Dst: "[io.netty.handler.codec.http.multipart.InternalAttribute].getName()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:94,1"
      Dst: "[java.lang.String].compareToIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].toString()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf:java.lang.StringBuilder].toString()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 15
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.InternalAttribute:100"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.InternalAttribute:103"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "toString(java.nio.charset.Charset)"
        - "append(java.lang.String)"
        - "next()"
      - BranchSide: "io.netty.handler.codec.http.multipart.InternalAttribute:102"
        BranchSideFuncs:
        - "toString()"
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:99,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:100,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:100,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:100,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:101,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:101,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:103,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].size()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].toByteBuf()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 5
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].addComponents(java.lang.Iterable)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].addComponents(java.lang.Iterable)"
    - "[io.netty.buffer.CompositeByteBuf].addComponents(java.lang.Iterable)"
    - "[io.netty.buffer.Unpooled].compositeBuffer()"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].size()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:111,1"
      Dst: "[io.netty.buffer.Unpooled].compositeBuffer()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:111,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponents(java.lang.Iterable)"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:111,1"
      Dst: "[io.netty.handler.codec.http.multipart.InternalAttribute].size()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:111,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:111,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].compositeBuffer()"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: 346
    functionLinenumberEnd: 348
    functionDepth: 4
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].compositeBuffer(int)"
    functionUses: 2
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:347,1"
      Dst: "[io.netty.buffer.Unpooled].compositeBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].compositeBuffer(int)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: 353
    functionLinenumberEnd: 355
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:354,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int,int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:78,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1970
    functionLinenumberEnd: 1973
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    functionUses: 52
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1971,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1964
    functionLinenumberEnd: 1967
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    functionUses: 53
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1965,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].deallocate()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].retain()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 130
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 3
    ICount: 10
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.InternalAttribute:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.InternalAttribute:129"
        BranchSideFuncs:
        - "hasNext()"
        - "retain()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.handler.codec.http.multipart.InternalAttribute:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:126,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:126,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:126,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:127,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.buffer.ByteBuf].retain(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.InternalAttribute:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.InternalAttribute:137"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.InternalAttribute:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:134,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:134,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:134,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:135,1"
      Dst: "[io.netty.buffer.ByteBuf].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].touch()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 146
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.SwappedByteBuf].touch()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch()"
    - "[io.netty.buffer.EmptyByteBuf].touch()"
    - "[io.netty.buffer.WrappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    - "[io.netty.buffer.UnreleasableByteBuf].touch()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch()"
    - "[io.netty.buffer.CompositeByteBuf].touch()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.buffer.ByteBuf].touch()"
    functionUses: 3
    ICount: 10
    EdgeCount: 131
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.InternalAttribute:142"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.InternalAttribute:145"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "touch()"
      - BranchSide: "io.netty.handler.codec.http.multipart.InternalAttribute:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:142,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:142,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:142,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:143,1"
      Dst: "[io.netty.buffer.ByteBuf].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf].touch(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 4
    ICount: 11
    EdgeCount: 131
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.InternalAttribute:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.InternalAttribute:153"
        BranchSideFuncs:
        - "touch(java.lang.Object)"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.handler.codec.http.multipart.InternalAttribute:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:150,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:150,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:150,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:151,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.InternalAttribute].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.InternalAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.InternalAttribute:31,1"
      Dst: "[io.netty.handler.codec.http.multipart.InternalAttribute].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.InsecureTrustManagerFactory$1].<init>()"
    functionSourceFile: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.InsecureTrustManagerFactory$1].checkClientTrusted(java.security.cert.X509Certificate[],java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.cert.X509Certificate[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.InsecureTrustManagerFactory].access$000()"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.security.cert.X509Certificate].getSubjectDN()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:50"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:47,1"
      Dst: "[io.netty.handler.ssl.util.InsecureTrustManagerFactory].access$000()"
    - Src: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:47,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:48,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:48,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:48,1"
      Dst: "[java.security.cert.X509Certificate].getSubjectDN()"
    - Src: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:48,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:48,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:48,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.util.InsecureTrustManagerFactory].access$000()"
    functionSourceFile: "io.netty.handler.ssl.util.InsecureTrustManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.InsecureTrustManagerFactory$1].checkServerTrusted(java.security.cert.X509Certificate[],java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.cert.X509Certificate[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.InsecureTrustManagerFactory].access$000()"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.security.cert.X509Certificate].getSubjectDN()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:54"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:57"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:54,1"
      Dst: "[io.netty.handler.ssl.util.InsecureTrustManagerFactory].access$000()"
    - Src: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:54,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:55,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:55,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:55,1"
      Dst: "[java.security.cert.X509Certificate].getSubjectDN()"
    - Src: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:55,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:55,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1:55,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.util.InsecureTrustManagerFactory$1].getAcceptedIssuers()"
    functionSourceFile: "io.netty.handler.ssl.util.InsecureTrustManagerFactory$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.cert.X509Certificate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.AbstractKQueueChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:43,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel,io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.kqueue.AbstractKQueueChannel"
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel,io.netty.channel.RecvByteBufAllocator)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:47,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel,io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 78
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].getRcvAllocTransportProvidesGuess()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.unix.Socket].getIntOpt(int,int)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.unix.GenericUnixChannelOption].level()"
    - "[io.netty.channel.unix.GenericUnixChannelOption].optname()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[io.netty.channel.unix.RawUnixChannelOption].length()"
    - "[io.netty.channel.unix.Socket].getRawOpt(int,int,java.nio.ByteBuffer)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[java.nio.ByteBuffer].flip()"
    functionUses: 10
    ICount: 38
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueChannelConfig:59"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueChannelConfig:63"
        BranchSideFuncs:
        - "getRcvAllocTransportProvidesGuess()"
        - "valueOf(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueChannelConfig:62"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueChannelConfig:63"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueChannelConfig:68"
        BranchSideFuncs:
        - "getIntOpt(int,int)"
        - "valueOf(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueChannelConfig:67"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueChannelConfig:68"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueChannelConfig:76"
        BranchSideFuncs:
        - "allocate(int)"
        - "getRawOpt(int,int,java.nio.ByteBuffer)"
        - "length()"
        - "level()"
        - "optname()"
      - BranchSide: "io.netty.channel.kqueue.KQueueChannelConfig:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:60,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].getRcvAllocTransportProvidesGuess()"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:60,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:66,1"
      Dst: "[io.netty.channel.unix.GenericUnixChannelOption].level()"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:66,1"
      Dst: "[io.netty.channel.unix.GenericUnixChannelOption].optname()"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:65,1"
      Dst: "[io.netty.channel.unix.Socket].getIntOpt(int,int)"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:65,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:70,1"
      Dst: "[io.netty.channel.unix.RawUnixChannelOption].length()"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:70,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:71,1"
      Dst: "[io.netty.channel.unix.Socket].getRawOpt(int,int,java.nio.ByteBuffer)"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:72,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:75,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:77,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].getIntOpt(int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 520
    functionLinenumberEnd: 522
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getIntOpt(int,int,int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:521,1"
      Dst: "[io.netty.channel.unix.Socket].getIntOpt(int,int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].getIntOpt(int,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.RawUnixChannelOption].length()"
    functionSourceFile: "io.netty.channel.unix.RawUnixChannelOption"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].getRawOpt(int,int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 524
    functionLinenumberEnd: 536
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getRawOptAddress(int,int,int,long,int)"
    - "[io.netty.channel.unix.Buffer].memoryAddress(java.nio.ByteBuffer)"
    - "[io.netty.channel.unix.Socket].getRawOptArray(int,int,int,byte[],int,int)"
    - "[java.nio.ByteBuffer].isDirect()"
    - "[java.nio.Buffer].position()"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.ByteBuffer].hasArray()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.nio.ByteBuffer].arrayOffset()"
    - "[java.nio.ByteBuffer].put(byte[])"
    - "[java.nio.Buffer].limit()"
    - "[java.nio.ByteBuffer].position(int)"
    functionUses: 2
    ICount: 33
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:525"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:527"
        BranchSideFuncs:
        - "memoryAddress(java.nio.ByteBuffer)"
        - "getRawOptAddress(int,int,int,long,int)"
      - BranchSide: "io.netty.channel.unix.Socket:526"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Socket:527"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:530"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:529"
        BranchSideFuncs:
        - "getRawOptArray(int,int,int,byte[],int,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:525,1"
      Dst: "[java.nio.ByteBuffer].isDirect()"
    - Src: "io.netty.channel.unix.Socket:526,1"
      Dst: "[io.netty.channel.unix.Buffer].memoryAddress(java.nio.ByteBuffer)"
    - Src: "io.netty.channel.unix.Socket:526,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.channel.unix.Socket:526,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.channel.unix.Socket:526,1"
      Dst: "[io.netty.channel.unix.Socket].getRawOptAddress(int,int,int,long,int)"
    - Src: "io.netty.channel.unix.Socket:527,1"
      Dst: "[java.nio.ByteBuffer].hasArray()"
    - Src: "io.netty.channel.unix.Socket:528,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "io.netty.channel.unix.Socket:528,1"
      Dst: "[java.nio.ByteBuffer].arrayOffset()"
    - Src: "io.netty.channel.unix.Socket:528,1"
      Dst: "[io.netty.channel.unix.Socket].getRawOptArray(int,int,int,byte[],int,int)"
    - Src: "io.netty.channel.unix.Socket:532,1"
      Dst: "[java.nio.ByteBuffer].put(byte[])"
    - Src: "io.netty.channel.unix.Socket:534,1"
      Dst: "[java.nio.Buffer].limit()"
    - Src: "io.netty.channel.unix.Socket:534,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.unix.Socket].getRawOptAddress(int,int,int,long,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "int"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.Socket].getRawOptArray(int,int,int,byte[],int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].autoReadCleared()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].clearReadFilter()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:192,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].clearReadFilter()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].setMaxBytesPerGatheringWrite(long)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 198
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(long,long)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueChannelConfig:196,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueChannelConfig].getMaxBytesPerGatheringWrite()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueChannelConfig"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 201
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolThreadCache$MemoryRegionCache$1].<init>()"
    functionSourceFile: "io.netty.buffer.PoolThreadCache$MemoryRegionCache$1"
    linkageType: ""
    functionLinenumber: 482
    functionLinenumberEnd: 484
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache$MemoryRegionCache$1:483,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolThreadCache$MemoryRegionCache$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache$MemoryRegionCache$1"
    linkageType: ""
    functionLinenumber: 486
    functionLinenumberEnd: 488
    functionDepth: 1
    returnType: "io.netty.buffer.PoolThreadCache$MemoryRegionCache$Entry"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolThreadCache$MemoryRegionCache$Entry].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache$MemoryRegionCache$1:487,1"
      Dst: "[io.netty.buffer.PoolThreadCache$MemoryRegionCache$Entry].<init>(io.netty.util.internal.ObjectPool$Handle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolThreadCache$MemoryRegionCache$Entry].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.buffer.PoolThreadCache$MemoryRegionCache$Entry"
    linkageType: ""
    functionLinenumber: 459
    functionLinenumberEnd: 463
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolThreadCache$MemoryRegionCache$Entry:460,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].<init>(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:54,1"
      Dst: "[io.netty.channel.unix.Socket].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.BsdSocket].setTcpNoPush(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.kqueue.BsdSocket].setTcpNoPush(int,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.BsdSocket:62"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:62"
        BranchSideFuncs:
        - "setTcpNoPush(int,int)"
        - "intValue()"
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:61"
        BranchSideFuncs:
        - "setTcpNoPush(int,int)"
        - "intValue()"
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:62,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.BsdSocket:62,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].setTcpNoPush(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.BsdSocket].setTcpNoPush(int,int)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.BsdSocket].setSndLowAt(int)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.kqueue.BsdSocket].setSndLowAt(int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:66,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.BsdSocket:66,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].setSndLowAt(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.BsdSocket].setSndLowAt(int,int)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.BsdSocket].setTcpFastOpen(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.kqueue.BsdSocket].setTcpFastOpen(int,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.BsdSocket:70"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:70"
        BranchSideFuncs:
        - "intValue()"
        - "setTcpFastOpen(int,int)"
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:69"
        BranchSideFuncs:
        - "intValue()"
        - "setTcpFastOpen(int,int)"
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:70,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.BsdSocket:70,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].setTcpFastOpen(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.BsdSocket].setTcpFastOpen(int,int)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.BsdSocket].isTcpNoPush()"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.BsdSocket].getTcpNoPush(int)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.BsdSocket:74"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:73"
        BranchSideFuncs:
        - "intValue()"
        - "getTcpNoPush(int)"
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:74,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.BsdSocket:74,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].getTcpNoPush(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.BsdSocket].getTcpNoPush(int)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.BsdSocket].getSndLowAt()"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.BsdSocket].getSndLowAt(int)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:78,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.BsdSocket:78,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].getSndLowAt(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.BsdSocket].getSndLowAt(int)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.BsdSocket].isTcpFastOpen()"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.kqueue.BsdSocket].isTcpFastOpen(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.BsdSocket:87"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:87,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.BsdSocket:87,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].isTcpFastOpen(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.BsdSocket].isTcpFastOpen(int)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.BsdSocket].sendFile(io.netty.channel.DefaultFileRegion,long,long,long)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 104
    functionDepth: 3
    returnType: "long"
    argCount: 4
    argTypes:
    - "io.netty.channel.DefaultFileRegion"
    - "long"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultFileRegion].open()"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.kqueue.BsdSocket].sendFile(int,io.netty.channel.DefaultFileRegion,long,long,long)"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.BsdSocket:100"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:102"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:97,1"
      Dst: "[io.netty.channel.DefaultFileRegion].open()"
    - Src: "io.netty.channel.kqueue.BsdSocket:99,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.BsdSocket:99,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].sendFile(int,io.netty.channel.DefaultFileRegion,long,long,long)"
    - Src: "io.netty.channel.kqueue.BsdSocket:103,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultFileRegion].open()"
    functionSourceFile: "io.netty.channel.DefaultFileRegion"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 91
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultFileRegion].isOpen()"
    - "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - "[java.io.RandomAccessFile].<init>(java.io.File,java.lang.String)"
    - "[java.io.RandomAccessFile].getChannel()"
    functionUses: 3
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultFileRegion:86"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultFileRegion:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultFileRegion:86"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultFileRegion:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultFileRegion:86,1"
      Dst: "[io.netty.channel.DefaultFileRegion].isOpen()"
    - Src: "io.netty.channel.DefaultFileRegion:86,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - Src: "io.netty.channel.DefaultFileRegion:88,1"
      Dst: "[java.io.RandomAccessFile].<init>(java.io.File,java.lang.String)"
    - Src: "io.netty.channel.DefaultFileRegion:88,1"
      Dst: "[java.io.RandomAccessFile].getChannel()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.DefaultFileRegion].isOpen()"
    functionSourceFile: "io.netty.channel.DefaultFileRegion"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultFileRegion:79"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultFileRegion:78"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.BsdSocket].sendFile(int,io.netty.channel.DefaultFileRegion,long,long,long)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 5
    argTypes:
    - "int"
    - "io.netty.channel.DefaultFileRegion"
    - "long"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.BsdSocket].connectx(java.net.InetSocketAddress,java.net.InetSocketAddress,io.netty.channel.unix.IovArray,boolean)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 194
    functionDepth: 3
    returnType: "int"
    argCount: 4
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.InetSocketAddress"
    - "io.netty.channel.unix.IovArray"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.net.InetSocketAddress].getAddress()"
    - "[io.netty.channel.unix.Socket].useIpv6(io.netty.channel.unix.Socket,java.net.InetAddress)"
    - "[java.net.Inet4Address].getAddress()"
    - "[java.net.InetAddress].getAddress()"
    - "[java.net.Inet6Address].getAddress()"
    - "[java.net.Inet6Address].getScopeId()"
    - "[io.netty.channel.unix.NativeInetAddress].ipv4MappedIpv6Address(byte[])"
    - "[java.net.InetSocketAddress].getPort()"
    - "[io.netty.channel.unix.IovArray].count()"
    - "[io.netty.channel.unix.IovArray].memoryAddress(int)"
    - "[io.netty.channel.unix.IovArray].size()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.kqueue.BsdSocket].connectx(int,int,boolean,byte[],int,int,boolean,byte[],int,int,int,long,int,int)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 1
    ICount: 74
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.BsdSocket:124"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:123"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:122"
        BranchSideFuncs:
        - "checkNotNull(java.lang.Object,java.lang.String)"
    - Branch String: "io.netty.channel.kqueue.BsdSocket:130"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:136"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:135"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.BsdSocket:138"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:143"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:142"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.BsdSocket:153"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:158"
        BranchSideFuncs:
        - "getScopeId()"
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:157"
        BranchSideFuncs:
        - "ipv4MappedIpv6Address(byte[])"
        - "getAddress()"
    - Branch String: "io.netty.channel.kqueue.BsdSocket:166"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:167"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:166"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.BsdSocket:166"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:171"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:170"
        BranchSideFuncs:
        - "count()"
        - "memoryAddress(int)"
        - "size()"
    - Branch String: "io.netty.channel.kqueue.BsdSocket:174"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:177"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.BsdSocket:184"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:189"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.BsdSocket:190"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:193"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
      - BranchSide: "io.netty.channel.kqueue.BsdSocket:192"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:123,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.kqueue.BsdSocket:136,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.channel.kqueue.BsdSocket:137,1"
      Dst: "[io.netty.channel.unix.Socket].useIpv6(io.netty.channel.unix.Socket,java.net.InetAddress)"
    - Src: "io.netty.channel.kqueue.BsdSocket:139,1"
      Dst: "[java.net.InetAddress].getAddress()"
    - Src: "io.netty.channel.kqueue.BsdSocket:140,1"
      Dst: "[java.net.Inet6Address].getScopeId()"
    - Src: "io.netty.channel.kqueue.BsdSocket:144,1"
      Dst: "[io.netty.channel.unix.NativeInetAddress].ipv4MappedIpv6Address(byte[])"
    - Src: "io.netty.channel.kqueue.BsdSocket:146,1"
      Dst: "[java.net.InetSocketAddress].getPort()"
    - Src: "io.netty.channel.kqueue.BsdSocket:166,1"
      Dst: "[io.netty.channel.unix.IovArray].count()"
    - Src: "io.netty.channel.kqueue.BsdSocket:171,1"
      Dst: "[io.netty.channel.unix.IovArray].memoryAddress(int)"
    - Src: "io.netty.channel.kqueue.BsdSocket:173,1"
      Dst: "[io.netty.channel.unix.IovArray].size()"
    - Src: "io.netty.channel.kqueue.BsdSocket:175,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.kqueue.BsdSocket:175,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.kqueue.BsdSocket:175,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.channel.kqueue.BsdSocket:175,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.kqueue.BsdSocket:175,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "io.netty.channel.kqueue.BsdSocket:180,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.BsdSocket:180,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].connectx(int,int,boolean,byte[],int,int,boolean,byte[],int,int,int,long,int,int)"
    - Src: "io.netty.channel.kqueue.BsdSocket:191,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 23
    CyclomaticComplexity: 7
  - functionName: "[io.netty.channel.unix.IovArray].size()"
    functionSourceFile: "io.netty.channel.unix.IovArray"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.BsdSocket].connectx(int,int,boolean,byte[],int,int,boolean,byte[],int,int,int,long,int,int)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 14
    argTypes:
    - "int"
    - "int"
    - "boolean"
    - "byte[]"
    - "int"
    - "int"
    - "boolean"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.BsdSocket].newSocketStream()"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.kqueue.BsdSocket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].newSocketStream0()"
    - "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:197,1"
      Dst: "[io.netty.channel.unix.Socket].newSocketStream0()"
    - Src: "io.netty.channel.kqueue.BsdSocket:197,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].newSocketStream0()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isIPv6Preferred()"
    - "[io.netty.channel.unix.Socket].newSocketStream0(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:578,1"
      Dst: "[io.netty.channel.unix.Socket].isIPv6Preferred()"
    - Src: "io.netty.channel.unix.Socket:578,1"
      Dst: "[io.netty.channel.unix.Socket].newSocketStream0(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].newSocketStream0(boolean)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].newSocketStreamFd(boolean)"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:587"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:590"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:589"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:586,1"
      Dst: "[io.netty.channel.unix.Socket].newSocketStreamFd(boolean)"
    - Src: "io.netty.channel.unix.Socket:588,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    - Src: "io.netty.channel.unix.Socket:588,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].newSocketStreamFd(boolean)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.Socket].<init>(int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 59
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    - "[io.netty.channel.unix.Socket].isIPv6(int)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:56,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    - Src: "io.netty.channel.unix.Socket:57,1"
      Dst: "[io.netty.channel.unix.Socket].isIPv6(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].isIPv6(int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.BsdSocket].newSocketStream(io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.kqueue.BsdSocket"
    argCount: 1
    argTypes:
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].newSocketStream0(io.netty.channel.socket.InternetProtocolFamily)"
    - "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:201,1"
      Dst: "[io.netty.channel.unix.Socket].newSocketStream0(io.netty.channel.socket.InternetProtocolFamily)"
    - Src: "io.netty.channel.kqueue.BsdSocket:201,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].newSocketStream0(io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].shouldUseIpv6(io.netty.channel.socket.InternetProtocolFamily)"
    - "[io.netty.channel.unix.Socket].newSocketStream0(boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:582,1"
      Dst: "[io.netty.channel.unix.Socket].shouldUseIpv6(io.netty.channel.socket.InternetProtocolFamily)"
    - Src: "io.netty.channel.unix.Socket:582,1"
      Dst: "[io.netty.channel.unix.Socket].newSocketStream0(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].shouldUseIpv6(io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isIPv6Preferred()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:542"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:541"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Socket:542"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:541"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:542,1"
      Dst: "[io.netty.channel.unix.Socket].isIPv6Preferred()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.kqueue.BsdSocket].newSocketDgram()"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.kqueue.BsdSocket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].newSocketDgram0()"
    - "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:205,1"
      Dst: "[io.netty.channel.unix.Socket].newSocketDgram0()"
    - Src: "io.netty.channel.kqueue.BsdSocket:205,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].newSocketDgram0()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isIPv6Preferred()"
    - "[io.netty.channel.unix.Socket].newSocketDgram0(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:594,1"
      Dst: "[io.netty.channel.unix.Socket].isIPv6Preferred()"
    - Src: "io.netty.channel.unix.Socket:594,1"
      Dst: "[io.netty.channel.unix.Socket].newSocketDgram0(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].newSocketDgram0(boolean)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].newSocketDgramFd(boolean)"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:603"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:606"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:605"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:602,1"
      Dst: "[io.netty.channel.unix.Socket].newSocketDgramFd(boolean)"
    - Src: "io.netty.channel.unix.Socket:604,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    - Src: "io.netty.channel.unix.Socket:604,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].newSocketDgramFd(boolean)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.BsdSocket].newSocketDgram(io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.kqueue.BsdSocket"
    argCount: 1
    argTypes:
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].newSocketDgram0(io.netty.channel.socket.InternetProtocolFamily)"
    - "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:209,1"
      Dst: "[io.netty.channel.unix.Socket].newSocketDgram0(io.netty.channel.socket.InternetProtocolFamily)"
    - Src: "io.netty.channel.kqueue.BsdSocket:209,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].newSocketDgram0(io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].shouldUseIpv6(io.netty.channel.socket.InternetProtocolFamily)"
    - "[io.netty.channel.unix.Socket].newSocketDgram0(boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:598,1"
      Dst: "[io.netty.channel.unix.Socket].shouldUseIpv6(io.netty.channel.socket.InternetProtocolFamily)"
    - Src: "io.netty.channel.unix.Socket:598,1"
      Dst: "[io.netty.channel.unix.Socket].newSocketDgram0(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.BsdSocket].newSocketDomain()"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.kqueue.BsdSocket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].newSocketDomain0()"
    - "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:213,1"
      Dst: "[io.netty.channel.unix.Socket].newSocketDomain0()"
    - Src: "io.netty.channel.kqueue.BsdSocket:213,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].newSocketDomain0()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].newSocketDomainFd()"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:611"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:614"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:613"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:610,1"
      Dst: "[io.netty.channel.unix.Socket].newSocketDomainFd()"
    - Src: "io.netty.channel.unix.Socket:612,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    - Src: "io.netty.channel.unix.Socket:612,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].newSocketDomainFd()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.BsdSocket].newSocketDomainDgram()"
    functionSourceFile: "io.netty.channel.kqueue.BsdSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.kqueue.BsdSocket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].newSocketDomainDgram0()"
    - "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.BsdSocket:217,1"
      Dst: "[io.netty.channel.unix.Socket].newSocketDomainDgram0()"
    - Src: "io.netty.channel.kqueue.BsdSocket:217,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].newSocketDomainDgram0()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].newSocketDomainDgramFd()"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:619"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:622"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:621"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:618,1"
      Dst: "[io.netty.channel.unix.Socket].newSocketDomainDgramFd()"
    - Src: "io.netty.channel.unix.Socket:620,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    - Src: "io.netty.channel.unix.Socket:620,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].newSocketDomainDgramFd()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.handler.ssl.SslHandler$8].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$8"
    linkageType: ""
    functionLinenumber: 2130
    functionLinenumberEnd: 2133
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cancel(boolean)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cancel(boolean)"
    - "[io.netty.util.concurrent.CompleteFuture].cancel(boolean)"
    - "[io.netty.channel.VoidChannelPromise].cancel(boolean)"
    - "[io.netty.util.concurrent.Future].cancel(boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$8:2131,1"
      Dst: "[io.netty.util.concurrent.Future].cancel(boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder$State"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder$State:78,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder$State:78,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder$State"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder$State:78,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpHeaderDateFormat$HttpHeaderDateFormatObsolete1].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.HttpHeaderDateFormat$HttpHeaderDateFormatObsolete1"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.util.TimeZone].getTimeZone(java.lang.String)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpHeaderDateFormat$HttpHeaderDateFormatObsolete1:86,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "io.netty.handler.codec.http.HttpHeaderDateFormat$HttpHeaderDateFormatObsolete1:87,1"
      Dst: "[java.util.TimeZone].getTimeZone(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpHeaderDateFormat$HttpHeaderDateFormatObsolete1:87,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$SWARByteSearch].<init>()"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$SWARByteSearch"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$SWARByteSearch:515,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$SWARByteSearch].compilePattern(byte)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$SWARByteSearch"
    linkageType: ""
    functionLinenumber: 517
    functionLinenumberEnd: 519
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$SWARByteSearch].firstAnyPattern(long,long,boolean)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$SWARByteSearch"
    linkageType: ""
    functionLinenumber: 521
    functionLinenumberEnd: 527
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "long"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].numberOfLeadingZeros(long)"
    - "[java.lang.Long].numberOfTrailingZeros(long)"
    functionUses: 1
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil$SWARByteSearch:525"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil$SWARByteSearch:522"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil$SWARByteSearch:521"
        BranchSideFuncs:
        - "numberOfLeadingZeros(long)"
        - "numberOfTrailingZeros(long)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$SWARByteSearch:525,1"
      Dst: "[java.lang.Long].numberOfLeadingZeros(long)"
    - Src: "io.netty.buffer.ByteBufUtil$SWARByteSearch:525,1"
      Dst: "[java.lang.Long].numberOfTrailingZeros(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil$SWARByteSearch].access$200(byte)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$SWARByteSearch"
    linkageType: ""
    functionLinenumber: 514
    functionLinenumberEnd: 516
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil$SWARByteSearch].compilePattern(byte)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$SWARByteSearch:515,1"
      Dst: "[io.netty.buffer.ByteBufUtil$SWARByteSearch].compilePattern(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$SWARByteSearch].access$300(long,long,boolean)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$SWARByteSearch"
    linkageType: ""
    functionLinenumber: 514
    functionLinenumberEnd: 516
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "long"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil$SWARByteSearch].firstAnyPattern(long,long,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$SWARByteSearch:515,1"
      Dst: "[io.netty.buffer.ByteBufUtil$SWARByteSearch].firstAnyPattern(long,long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpHeaderDateFormat$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.HttpHeaderDateFormat$1"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpHeaderDateFormat$1:46,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpHeaderDateFormat$1].initialValue()"
    functionSourceFile: "io.netty.handler.codec.http.HttpHeaderDateFormat$1"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.HttpHeaderDateFormat"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpHeaderDateFormat].<init>(io.netty.handler.codec.http.HttpHeaderDateFormat$1)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpHeaderDateFormat$1:49,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaderDateFormat].<init>(io.netty.handler.codec.http.HttpHeaderDateFormat$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpHeaderDateFormat].<init>(io.netty.handler.codec.http.HttpHeaderDateFormat$1)"
    functionSourceFile: "io.netty.handler.codec.http.HttpHeaderDateFormat"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpHeaderDateFormat$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpHeaderDateFormat].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpHeaderDateFormat:39,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaderDateFormat].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpHeaderDateFormat].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.HttpHeaderDateFormat"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpHeaderDateFormat$HttpHeaderDateFormatObsolete1].<init>()"
    - "[io.netty.handler.codec.http.HttpHeaderDateFormat$HttpHeaderDateFormatObsolete2].<init>()"
    - "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - "[java.util.TimeZone].getTimeZone(java.lang.String)"
    - "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    functionUses: 1
    ICount: 12
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpHeaderDateFormat:62,1"
      Dst: "[java.text.SimpleDateFormat].<init>(java.lang.String,java.util.Locale)"
    - Src: "io.netty.handler.codec.http.HttpHeaderDateFormat:42,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaderDateFormat$HttpHeaderDateFormatObsolete1].<init>()"
    - Src: "io.netty.handler.codec.http.HttpHeaderDateFormat:43,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaderDateFormat$HttpHeaderDateFormatObsolete2].<init>()"
    - Src: "io.netty.handler.codec.http.HttpHeaderDateFormat:63,1"
      Dst: "[java.util.TimeZone].getTimeZone(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpHeaderDateFormat:63,1"
      Dst: "[java.text.DateFormat].setTimeZone(java.util.TimeZone)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator"
    linkageType: ""
    functionLinenumber: 280
    functionLinenumberEnd: 282
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:281,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator"
    linkageType: ""
    functionLinenumber: 288
    functionLinenumberEnd: 290
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    functionUses: 228
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:289"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:288"
        BranchSideFuncs:
        - "access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:289,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator"
    linkageType: ""
    functionLinenumber: 293
    functionLinenumberEnd: 301
    functionDepth: 2
    returnType: "java.util.Map$Entry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[java.util.NoSuchElementException].<init>()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    functionUses: 229
    ICount: 21
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:294"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:297"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:296"
        BranchSideFuncs:
        - "access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:294,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:295,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:297,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].remove()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator"
    linkageType: ""
    functionLinenumber: 304
    functionLinenumberEnd: 306
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:305,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator"
    linkageType: ""
    functionLinenumber: 309
    functionLinenumberEnd: 311
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 67
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator"
    linkageType: ""
    functionLinenumber: 314
    functionLinenumberEnd: 316
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 63
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].setValue(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:320,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].toString()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator"
    linkageType: ""
    functionLinenumber: 324
    functionLinenumberEnd: 326
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[java.lang.CharSequence].toString()"
    functionUses: 20
    ICount: 12
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:325,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:325,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:325,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:325,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:325,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].setValue(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].setValue(java.lang.CharSequence)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:281,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].setValue(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders,io.netty.handler.codec.http.ReadOnlyHttpHeaders$1)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator"
    linkageType: ""
    functionLinenumber: 280
    functionLinenumberEnd: 282
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    - "io.netty.handler.codec.http.ReadOnlyHttpHeaders$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:281,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.ProxyHandler$2].<init>(io.netty.handler.proxy.ProxyHandler)"
    functionSourceFile: "io.netty.handler.proxy.ProxyHandler$2"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.proxy.ProxyHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.ProxyHandler$2:194,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.ProxyHandler$2].run()"
    functionSourceFile: "io.netty.handler.proxy.ProxyHandler$2"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 201
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.proxy.ProxyHandler].access$200(io.netty.handler.proxy.ProxyHandler)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.handler.proxy.ProxyConnectException].<init>(java.lang.String)"
    - "[io.netty.handler.proxy.ProxyHandler].access$100(io.netty.handler.proxy.ProxyHandler,java.lang.Throwable)"
    - "[io.netty.handler.proxy.ProxyHandler].exceptionMessage(java.lang.String)"
    functionUses: 49
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.proxy.ProxyHandler$2:197"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.ProxyHandler$2:200"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
        - "exceptionMessage(java.lang.String)"
        - "access$100(io.netty.handler.proxy.ProxyHandler,java.lang.Throwable)"
      - BranchSide: "io.netty.handler.proxy.ProxyHandler$2:199"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.proxy.ProxyHandler$2:197,1"
      Dst: "[io.netty.handler.proxy.ProxyHandler].access$200(io.netty.handler.proxy.ProxyHandler)"
    - Src: "io.netty.handler.proxy.ProxyHandler$2:197,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - Src: "io.netty.handler.proxy.ProxyHandler$2:198,1"
      Dst: "[io.netty.handler.proxy.ProxyHandler].exceptionMessage(java.lang.String)"
    - Src: "io.netty.handler.proxy.ProxyHandler$2:198,1"
      Dst: "[io.netty.handler.proxy.ProxyConnectException].<init>(java.lang.String)"
    - Src: "io.netty.handler.proxy.ProxyHandler$2:198,1"
      Dst: "[io.netty.handler.proxy.ProxyHandler].access$100(io.netty.handler.proxy.ProxyHandler,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.Recycler$BlockingMessageQueue].<init>(int)"
    functionSourceFile: "io.netty.util.Recycler$BlockingMessageQueue"
    linkageType: ""
    functionLinenumber: 312
    functionLinenumberEnd: 326
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayDeque].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:313,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:324,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$BlockingMessageQueue].offer(java.lang.Object)"
    functionSourceFile: "io.netty.util.Recycler$BlockingMessageQueue"
    linkageType: ""
    functionLinenumber: 328
    functionLinenumberEnd: 333
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].size()"
    - "[java.util.concurrent.LinkedBlockingQueue].size()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].size()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].size()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].size()"
    - "[java.util.LinkedList].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].size()"
    - "[io.netty.util.internal.EmptyPriorityQueue].size()"
    - "[java.util.ArrayDeque].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].size()"
    - "[io.netty.util.internal.DefaultPriorityQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].size()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].size()"
    - "[java.util.concurrent.LinkedBlockingDeque].size()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.DefaultPriorityQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].offer(java.lang.Object)"
    - "[java.util.LinkedList].offer(java.lang.Object)"
    - "[java.util.ArrayDeque].offer(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].offer(java.lang.Object)"
    - "[java.util.Collection].size()"
    - "[java.util.Queue].offer(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "io.netty.util.Recycler$BlockingMessageQueue:329"
      Branch Sides:
      - BranchSide: "io.netty.util.Recycler$BlockingMessageQueue:332"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.Recycler$BlockingMessageQueue:331"
        BranchSideFuncs:
        - "offer(java.lang.Object)"
    Callsites:
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:329,1"
      Dst: "[java.util.Collection].size()"
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:332,1"
      Dst: "[java.util.Queue].offer(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$BlockingMessageQueue].poll()"
    functionSourceFile: "io.netty.util.Recycler$BlockingMessageQueue"
    linkageType: ""
    functionLinenumber: 336
    functionLinenumberEnd: 338
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[java.util.Queue].poll()"
    functionUses: 1
    ICount: 4
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:337,1"
      Dst: "[java.util.Queue].poll()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$BlockingMessageQueue].peek()"
    functionSourceFile: "io.netty.util.Recycler$BlockingMessageQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Queue].peek()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:342,1"
      Dst: "[java.util.Queue].peek()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$BlockingMessageQueue].size()"
    functionSourceFile: "io.netty.util.Recycler$BlockingMessageQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].size()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:347,1"
      Dst: "[java.util.Collection].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$BlockingMessageQueue].clear()"
    functionSourceFile: "io.netty.util.Recycler$BlockingMessageQueue"
    linkageType: ""
    functionLinenumber: 351
    functionLinenumberEnd: 354
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.LinkedBlockingDeque].clear()"
    - "[java.util.LinkedList].clear()"
    - "[java.util.AbstractQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].clear()"
    - "[java.util.ArrayDeque].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].clear()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].clear()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].clear()"
    - "[io.netty.util.internal.EmptyPriorityQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].clear()"
    - "[io.netty.util.internal.DefaultPriorityQueue].clear()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].clear()"
    - "[java.util.concurrent.LinkedBlockingQueue].clear()"
    - "[java.util.Collection].clear()"
    functionUses: 1
    ICount: 4
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:352,1"
      Dst: "[java.util.Collection].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$BlockingMessageQueue].isEmpty()"
    functionSourceFile: "io.netty.util.Recycler$BlockingMessageQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].isEmpty()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:357,1"
      Dst: "[java.util.Collection].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$BlockingMessageQueue].capacity()"
    functionSourceFile: "io.netty.util.Recycler$BlockingMessageQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$BlockingMessageQueue].relaxedOffer(java.lang.Object)"
    functionSourceFile: "io.netty.util.Recycler$BlockingMessageQueue"
    linkageType: ""
    functionLinenumber: 366
    functionLinenumberEnd: 368
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.Recycler$BlockingMessageQueue].offer(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:367,1"
      Dst: "[io.netty.util.Recycler$BlockingMessageQueue].offer(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$BlockingMessageQueue].relaxedPoll()"
    functionSourceFile: "io.netty.util.Recycler$BlockingMessageQueue"
    linkageType: ""
    functionLinenumber: 371
    functionLinenumberEnd: 373
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.Recycler$BlockingMessageQueue].poll()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:372,1"
      Dst: "[io.netty.util.Recycler$BlockingMessageQueue].poll()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$BlockingMessageQueue].relaxedPeek()"
    functionSourceFile: "io.netty.util.Recycler$BlockingMessageQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.Recycler$BlockingMessageQueue].peek()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:377,1"
      Dst: "[io.netty.util.Recycler$BlockingMessageQueue].peek()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$BlockingMessageQueue].drain(io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$Consumer,int)"
    functionSourceFile: "io.netty.util.Recycler$BlockingMessageQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$Consumer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:382,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$BlockingMessageQueue].fill(io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$Supplier,int)"
    functionSourceFile: "io.netty.util.Recycler$BlockingMessageQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$Supplier"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:387,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$BlockingMessageQueue].drain(io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$Consumer)"
    functionSourceFile: "io.netty.util.Recycler$BlockingMessageQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$Consumer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:392,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$BlockingMessageQueue].fill(io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$Supplier)"
    functionSourceFile: "io.netty.util.Recycler$BlockingMessageQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$Supplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:397,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$BlockingMessageQueue].drain(io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$Consumer,io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$WaitStrategy,io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$ExitCondition)"
    functionSourceFile: "io.netty.util.Recycler$BlockingMessageQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$Consumer"
    - "io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$WaitStrategy"
    - "io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$ExitCondition"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:402,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$BlockingMessageQueue].fill(io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$Supplier,io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$WaitStrategy,io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$ExitCondition)"
    functionSourceFile: "io.netty.util.Recycler$BlockingMessageQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$Supplier"
    - "io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$WaitStrategy"
    - "io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue$ExitCondition"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$BlockingMessageQueue:407,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1].<init>()"
    functionSourceFile: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 132
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1].provider()"
    - "[java.util.concurrent.atomic.AtomicLong].<init>(long)"
    - "[java.lang.System].nanoTime()"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:129,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:130,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1].provider()"
    - Src: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:131,1"
      Dst: "[java.lang.System].nanoTime()"
    - Src: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:131,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1].nameServerAddressStream(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 145
    functionDepth: 12
    returnType: "io.netty.resolver.dns.DnsServerAddressStream"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].get()"
    - "[io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder].access$000()"
    - "[java.lang.System].nanoTime()"
    - "[java.util.concurrent.atomic.AtomicLong].compareAndSet(long,long)"
    - "[io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1].provider()"
    - "[io.netty.resolver.dns.UniSequentialDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.MultiDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.DefaultDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.DnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    functionUses: 6
    ICount: 20
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:137"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:143"
        BranchSideFuncs:
        - "nameServerAddressStream(java.lang.String)"
    - Branch String: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:140"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:144"
        BranchSideFuncs:
        - "provider()"
      - BranchSide: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:143"
        BranchSideFuncs:
        - "nameServerAddressStream(java.lang.String)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:135,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].get()"
    - Src: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:137,1"
      Dst: "[java.lang.System].nanoTime()"
    - Src: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:137,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder].access$000()"
    - Src: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:140,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].compareAndSet(long,long)"
    - Src: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:141,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1].provider()"
    - Src: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:144,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder].access$000()"
    functionSourceFile: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1].provider()"
    functionSourceFile: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 152
    functionDepth: 11
    returnType: "io.netty.resolver.dns.DnsServerAddressStreamProvider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].isWindows()"
    - "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].parseSilently()"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:150"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:151"
        BranchSideFuncs:
        - "parseSilently()"
      - BranchSide: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:150"
        BranchSideFuncs:
        - "parseSilently()"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:150,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isWindows()"
    - Src: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1:151,1"
      Dst: "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].parseSilently()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].parseSilently()"
    functionSourceFile: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 81
    functionDepth: 10
    returnType: "io.netty.resolver.dns.DnsServerAddressStreamProvider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].<init>(java.lang.String,java.lang.String)"
    - "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].mayOverrideNameServers()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger:io.netty.util.internal.logging.LocationAwareSlf4JLogger:io.netty.util.internal.logging.Log4JLogger:io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 20
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:74"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:72"
        BranchSideFuncs:
        - "mayOverrideNameServers()"
        - "isDebugEnabled()"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:71"
        BranchSideFuncs:
        - "mayOverrideNameServers()"
        - "<init>(java.lang.String,java.lang.String)"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:77"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:80"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:72,1"
      Dst: "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].<init>(java.lang.String,java.lang.String)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:74,1"
      Dst: "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].mayOverrideNameServers()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:77,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:78,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 136
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].<init>(java.io.File,java.io.File[])"
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].listFiles()"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:133"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:133"
        BranchSideFuncs:
        - "<init>(java.io.File,java.io.File[])"
        - "listFiles()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:132"
        BranchSideFuncs:
        - "<init>(java.io.File,java.io.File[])"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:133"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:133"
        BranchSideFuncs:
        - "<init>(java.io.File,java.io.File[])"
        - "listFiles()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:132"
        BranchSideFuncs:
        - "<init>(java.io.File,java.io.File[])"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:133,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:134,1"
      Dst: "[java.io.File].listFiles()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:133,1"
      Dst: "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].<init>(java.io.File,java.io.File[])"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].<init>(java.io.File,java.io.File[])"
    functionSourceFile: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 118
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].parse(java.io.File[])"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.io.File].getName()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap:io.netty.util.collection.CharCollections$EmptyMap:io.netty.util.collection.IntCollections$EmptyMap:io.netty.util.collection.LongCollections$EmptyMap:io.netty.util.collection.ShortCollections$EmptyMap:java.security.Provider:java.util.AbstractMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.LinkedHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].values()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.IntObjectHashMap].values()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.CharObjectHashMap].values()"
    - "[io.netty.util.collection.LongObjectHashMap].values()"
    - "[io.netty.util.collection.ByteObjectHashMap].values()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].values()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].values()"
    - "[io.netty.util.collection.ShortObjectHashMap].values()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].isEmpty()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].isEmpty()"
    - "[io.netty.channel.group.DefaultChannelGroup].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].isEmpty()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].isEmpty()"
    - "[jaz.Zer].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.io.BufferedReader$1:java.lang.StringBuilder:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.security.Provider:java.util.AbstractList:java.util.AbstractMap:java.util.AbstractSequentialList:java.util.ArrayDeque:java.util.ArrayList:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.IdentityHashMap:java.util.Properties:java.util.TreeMap:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.TreeSet:java.util.Vector:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$ValuesView:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue:java.util.jar.Attributes].toString()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].putAll(java.util.Map)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].putAll(java.util.Map)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].putAll(java.util.Map)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].putAll(java.util.Map)"
    - "[io.netty.util.collection.IntObjectHashMap].putAll(java.util.Map)"
    - "[io.netty.util.collection.ByteObjectHashMap].putAll(java.util.Map)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].putAll(java.util.Map)"
    - "[io.netty.util.collection.ShortObjectHashMap].putAll(java.util.Map)"
    - "[io.netty.util.collection.LongObjectHashMap].putAll(java.util.Map)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].putAll(java.util.Map)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].putAll(java.util.Map)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].putAll(java.util.Map)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].putAll(java.util.Map)"
    - "[io.netty.util.collection.CharObjectHashMap].putAll(java.util.Map)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].putAll(java.util.Map)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].putAll(java.util.Map)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].isEmpty()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map].putAll(java.util.Map)"
    functionUses: 1
    ICount: 48
    EdgeCount: 161
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:99"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:-1"
        BranchSideFuncs:
        - "parse(java.io.File[])"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:99"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:-1"
        BranchSideFuncs:
        - "parse(java.io.File[])"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:100"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:99"
        BranchSideFuncs:
        - "get(java.lang.Object)"
        - "parse(java.io.File[])"
        - "getName()"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:98"
        BranchSideFuncs:
        - "parse(java.io.File[])"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:104"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:111"
        BranchSideFuncs:
        - "isEmpty()"
        - "values()"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:106"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:109"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:108"
        BranchSideFuncs:
        - "next()"
        - "iterator()"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:114"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:117"
        BranchSideFuncs:
        - "putAll(java.util.Map)"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:97,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:98,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:98,1"
      Dst: "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].parse(java.io.File[])"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:103,1"
      Dst: "[java.io.File].getName()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:103,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:105,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:106,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:107,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:107,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:107,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:107,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:107,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:109,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:109,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:115,1"
      Dst: "[java.util.Map].putAll(java.util.Map)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 6
  - functionName: "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].parse(java.io.File[])"
    functionSourceFile: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 252
    functionDepth: 7
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "java.io.File[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>(int)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.io.File].isFile()"
    - "[java.io.FileReader].<init>(java.io.File)"
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.io.File].getName()"
    - "[java.io.BufferedReader].readLine()"
    - "[java.lang.String].trim()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].isEmpty()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].indexOfNonWhiteSpace(java.lang.CharSequence,int)"
    - "[java.lang.String].length()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.StringUtil].indexOfWhiteSpace(java.lang.CharSequence,int)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.String].substring(int,int)"
    - "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - "[java.lang.String].lastIndexOf(int)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[io.netty.util.internal.SocketUtils].socketAddress(java.lang.String,int)"
    - "[java.util.ArrayList].isEmpty()"
    - "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].putIfAbsent(java.util.Map,java.lang.String,java.util.List,boolean)"
    - "[io.netty.util.internal.logging.Log4JLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.io.InputStreamReader].close()"
    - "[java.io.BufferedReader].close()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    - "[io.netty.util.internal.logging.InternalLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 182
    EdgeCount: 95
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:161"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:159"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:158"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:161"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:159"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:158"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:162"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:251"
        BranchSideFuncs:
        - "isFile()"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:250"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:163"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:166"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:165"
        BranchSideFuncs:
        - "getName()"
        - "<init>(java.io.Reader)"
        - "<init>(java.io.File)"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:175"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:240"
        BranchSideFuncs:
        - "trim()"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:239"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:179"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:180"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:179"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:179"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:180"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:179"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:179"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:182"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:181"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:182"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:184"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence)"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:183"
        BranchSideFuncs:
        - "startsWith(java.lang.String)"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:182"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:184"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence)"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:183"
        BranchSideFuncs:
        - "startsWith(java.lang.String)"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:184"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:184"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:183"
        BranchSideFuncs:
        - "startsWith(java.lang.String)"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:186"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:191"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:190"
        BranchSideFuncs:
        - "indexOfWhiteSpace(java.lang.CharSequence,int)"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:192"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:196"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:195"
        BranchSideFuncs:
        - "charAt(int)"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:197"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:198"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:197"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:197"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:201"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:200"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:205"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:214"
        BranchSideFuncs:
        - "lastIndexOf(int)"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:213"
        BranchSideFuncs:
        - "socketAddress(java.lang.String,int)"
        - "add(java.lang.Object)"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:205"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:214"
        BranchSideFuncs:
        - "lastIndexOf(int)"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:213"
        BranchSideFuncs:
        - "socketAddress(java.lang.String,int)"
        - "add(java.lang.Object)"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:207"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:211"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:210"
        BranchSideFuncs:
        - "substring(int,int)"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:184"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:184"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:183"
        BranchSideFuncs:
        - "startsWith(java.lang.String)"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:217"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:221"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:220"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:222"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:225"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:224"
        BranchSideFuncs:
        - "<init>(int)"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:184"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:184"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:183"
        BranchSideFuncs:
        - "startsWith(java.lang.String)"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:228"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:232"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:231"
        BranchSideFuncs:
        - "substring(int)"
        - "parseInt(java.lang.String)"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:184"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:238"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:237"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:240"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:244"
        BranchSideFuncs:
        - "putIfAbsent(java.util.Map,java.lang.String,java.util.List,boolean)"
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:243"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:244"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:247"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:246"
        BranchSideFuncs:
        - "close()"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:244"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:247"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:246"
        BranchSideFuncs:
        - "close()"
    Callsites:
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:159,1"
      Dst: "[java.util.HashMap].<init>(int)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:161,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:163,1"
      Dst: "[java.io.File].isFile()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:166,1"
      Dst: "[java.io.FileReader].<init>(java.io.File)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:169,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:170,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:171,1"
      Dst: "[java.io.File].getName()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:175,1"
      Dst: "[java.io.BufferedReader].readLine()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:176,1"
      Dst: "[java.lang.String].trim()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:179,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:179,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:182,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:185,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:185,1"
      Dst: "[io.netty.util.internal.StringUtil].indexOfNonWhiteSpace(java.lang.CharSequence,int)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:187,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:187,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:187,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:187,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:187,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:191,1"
      Dst: "[io.netty.util.internal.StringUtil].indexOfWhiteSpace(java.lang.CharSequence,int)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:193,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:201,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:205,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:205,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:206,1"
      Dst: "[java.lang.String].lastIndexOf(int)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:211,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:214,1"
      Dst: "[io.netty.util.internal.SocketUtils].socketAddress(java.lang.String,int)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:214,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:222,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:223,1"
      Dst: "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].putIfAbsent(java.util.Map,java.lang.String,java.util.List,boolean)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:234,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:237,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:245,1"
      Dst: "[java.io.InputStreamReader].close()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:247,1"
      Dst: "[java.io.BufferedReader].close()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 57
    CyclomaticComplexity: 22
  - functionName: "[io.netty.util.internal.StringUtil].indexOfNonWhiteSpace(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 581
    functionLinenumberEnd: 588
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[java.lang.Character].isWhitespace(char)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 6
    ICount: 12
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:582"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:-1"
        BranchSideFuncs:
        - "isWhitespace(char)"
        - "charAt(int)"
      - BranchSide: "io.netty.util.internal.StringUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:583"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:582"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:581"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:582,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.internal.StringUtil:583,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.internal.StringUtil:583,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.StringUtil].indexOfWhiteSpace(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 597
    functionLinenumberEnd: 604
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[java.lang.Character].isWhitespace(char)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:598"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:-1"
        BranchSideFuncs:
        - "isWhitespace(char)"
        - "charAt(int)"
      - BranchSide: "io.netty.util.internal.StringUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:599"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:598"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:597"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:598,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.internal.StringUtil:599,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.internal.StringUtil:599,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.SocketUtils].socketAddress(java.lang.String,int)"
    functionSourceFile: "io.netty.util.internal.SocketUtils"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionDepth: 1
    returnType: "java.net.InetSocketAddress"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils$10].<init>(java.lang.String,int)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[io.netty.util.internal.SocketUtils$10].run()"
    functionUses: 6
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils:178,1"
      Dst: "[io.netty.util.internal.SocketUtils$10].<init>(java.lang.String,int)"
    - Src: "io.netty.util.internal.SocketUtils:178,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$10].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.util.internal.SocketUtils$10"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$10:178,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].mayOverrideNameServers()"
    functionSourceFile: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.ShortObjectHashMap].isEmpty()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].isEmpty()"
    - "[java.util.IdentityHashMap].isEmpty()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].isEmpty()"
    - "[java.util.HashMap].isEmpty()"
    - "[java.util.Hashtable].isEmpty()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].isEmpty()"
    - "[java.util.WeakHashMap].isEmpty()"
    - "[java.util.jar.Attributes].isEmpty()"
    - "[io.netty.util.collection.IntObjectHashMap].isEmpty()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.ByteObjectHashMap].isEmpty()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].isEmpty()"
    - "[io.netty.util.collection.LongObjectHashMap].isEmpty()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].isEmpty()"
    - "[java.util.AbstractMap].isEmpty()"
    - "[io.netty.util.collection.CharObjectHashMap].isEmpty()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].isEmpty()"
    - "[java.util.concurrent.ConcurrentHashMap].isEmpty()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].isEmpty()"
    - "[java.util.Properties].isEmpty()"
    - "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].next()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].next()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].next()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].next()"
    - "[io.netty.resolver.dns.RotationalDnsServerAddresses].stream()"
    - "[io.netty.resolver.dns.DnsServerAddresses$2].stream()"
    - "[io.netty.resolver.dns.DnsServerAddresses$1].stream()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses].stream()"
    - "[java.util.Map].isEmpty()"
    - "[io.netty.resolver.dns.DnsServerAddresses].stream()"
    - "[io.netty.resolver.dns.DnsServerAddressStream].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:155"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:154"
        BranchSideFuncs:
        - "isEmpty()"
        - "next()"
        - "stream()"
    - Branch String: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:155"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:154"
        BranchSideFuncs:
        - "isEmpty()"
        - "next()"
        - "stream()"
    Callsites:
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:155,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:155,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddresses].stream()"
    - Src: "io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider:155,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStream].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.bootstrap.AbstractBootstrap$1].<init>(io.netty.bootstrap.AbstractBootstrap,io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise,io.netty.channel.ChannelFuture,io.netty.channel.Channel,java.net.SocketAddress)"
    functionSourceFile: "io.netty.bootstrap.AbstractBootstrap$1"
    linkageType: ""
    functionLinenumber: 285
    functionLinenumberEnd: 287
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.bootstrap.AbstractBootstrap"
    - "io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise"
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.Channel"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.AbstractBootstrap$1:286,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.AbstractBootstrap$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.bootstrap.AbstractBootstrap$1"
    linkageType: ""
    functionLinenumber: 288
    functionLinenumberEnd: 302
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise].registered()"
    - "[io.netty.bootstrap.AbstractBootstrap].access$000(io.netty.channel.ChannelFuture,io.netty.channel.Channel,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.Future].cause()"
    functionUses: 1
    ICount: 15
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.bootstrap.AbstractBootstrap$1:290"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.AbstractBootstrap$1:296"
        BranchSideFuncs:
        - "access$000(io.netty.channel.ChannelFuture,io.netty.channel.Channel,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
        - "registered()"
    Callsites:
    - Src: "io.netty.bootstrap.AbstractBootstrap$1:289,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.bootstrap.AbstractBootstrap$1:293,1"
      Dst: "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.bootstrap.AbstractBootstrap$1:297,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise].registered()"
    - Src: "io.netty.bootstrap.AbstractBootstrap$1:299,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].access$000(io.netty.channel.ChannelFuture,io.netty.channel.Channel,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.bootstrap.AbstractBootstrap$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.bootstrap.AbstractBootstrap$1"
    linkageType: ""
    functionLinenumber: 285
    functionLinenumberEnd: 287
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.AbstractBootstrap$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.AbstractBootstrap$1:286,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$PrivateKeyMethod].<init>(io.netty.handler.ssl.OpenSslEngineMap,io.netty.handler.ssl.OpenSslPrivateKeyMethod)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$PrivateKeyMethod"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.OpenSslEngineMap"
    - "io.netty.handler.ssl.OpenSslPrivateKeyMethod"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$PrivateKeyMethod:1006,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$PrivateKeyMethod].sign(long,int,byte[])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$PrivateKeyMethod"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "long"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$400(io.netty.handler.ssl.OpenSslEngineMap,long)"
    - "[io.netty.handler.ssl.OpenSslPrivateKeyMethod].sign(javax.net.ssl.SSLEngine,int,byte[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$500(byte[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].initHandshakeException(java.lang.Throwable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$PrivateKeyMethod:1013,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$400(io.netty.handler.ssl.OpenSslEngineMap,long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$PrivateKeyMethod:1015,1"
      Dst: "[io.netty.handler.ssl.OpenSslPrivateKeyMethod].sign(javax.net.ssl.SSLEngine,int,byte[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$PrivateKeyMethod:1015,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$500(byte[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$PrivateKeyMethod:1017,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].initHandshakeException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].initHandshakeException(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1916
    functionLinenumberEnd: 1923
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1917"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1920"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1919"
        BranchSideFuncs:
        - "addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1920,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$PrivateKeyMethod].decrypt(long,byte[])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$PrivateKeyMethod"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "long"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$400(io.netty.handler.ssl.OpenSslEngineMap,long)"
    - "[io.netty.handler.ssl.OpenSslPrivateKeyMethod].decrypt(javax.net.ssl.SSLEngine,byte[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$500(byte[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].initHandshakeException(java.lang.Throwable)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$PrivateKeyMethod:1024,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$400(io.netty.handler.ssl.OpenSslEngineMap,long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$PrivateKeyMethod:1026,1"
      Dst: "[io.netty.handler.ssl.OpenSslPrivateKeyMethod].decrypt(javax.net.ssl.SSLEngine,byte[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$PrivateKeyMethod:1026,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$500(byte[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$PrivateKeyMethod:1028,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].initHandshakeException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslContext].defaultProtocols(javax.net.ssl.SSLContext,javax.net.ssl.SSLEngine)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String[]"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLContext"
    - "javax.net.ssl.SSLEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLContext].getDefaultSSLParameters()"
    - "[javax.net.ssl.SSLParameters].getProtocols()"
    - "[java.util.HashSet].<init>(int)"
    - "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - "[java.util.ArrayList].<init>()"
    - "[io.netty.handler.ssl.SslUtils].addIfSupported(java.util.Set,java.util.List,java.lang.String[])"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[javax.net.ssl.SSLEngine].getEnabledProtocols()"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkSslContext:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:137"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:125,1"
      Dst: "[javax.net.ssl.SSLContext].getDefaultSSLParameters()"
    - Src: "io.netty.handler.ssl.JdkSslContext:125,1"
      Dst: "[javax.net.ssl.SSLParameters].getProtocols()"
    - Src: "io.netty.handler.ssl.JdkSslContext:126,1"
      Dst: "[java.util.HashSet].<init>(int)"
    - Src: "io.netty.handler.ssl.JdkSslContext:127,1"
      Dst: "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.JdkSslContext:128,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.ssl.JdkSslContext:129,1"
      Dst: "[io.netty.handler.ssl.SslUtils].addIfSupported(java.util.Set,java.util.List,java.lang.String[])"
    - Src: "io.netty.handler.ssl.JdkSslContext:134,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.handler.ssl.JdkSslContext:135,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.JdkSslContext:137,1"
      Dst: "[javax.net.ssl.SSLEngine].getEnabledProtocols()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslUtils].addIfSupported(java.util.Set,java.util.List,java.lang.String[])"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 231
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Set"
    - "java.util.List"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].contains(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].contains(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[java.util.HashSet].contains(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].contains(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].contains(java.lang.Object)"
    - "[java.util.TreeSet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].contains(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].contains(java.lang.Object)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 3
    ICount: 13
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:230"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:226"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:225"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:226,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslUtils:227,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.JdkSslContext].supportedCiphers(javax.net.ssl.SSLEngine)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set<String>"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].getSupportedCipherSuites()"
    - "[java.util.LinkedHashSet].<init>(int)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[javax.net.ssl.SSLEngine].setEnabledCipherSuites(java.lang.String[])"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkSslContext:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:166"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:165"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslContext:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:142"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:142,1"
      Dst: "[javax.net.ssl.SSLEngine].getSupportedCipherSuites()"
    - Src: "io.netty.handler.ssl.JdkSslContext:143,1"
      Dst: "[java.util.LinkedHashSet].<init>(int)"
    - Src: "io.netty.handler.ssl.JdkSslContext:146,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.handler.ssl.JdkSslContext:156,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslContext:157,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.JdkSslContext:157,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslContext:157,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.ssl.JdkSslContext:157,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "io.netty.handler.ssl.JdkSslContext:157,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.JdkSslContext:159,1"
      Dst: "[javax.net.ssl.SSLEngine].setEnabledCipherSuites(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.JdkSslContext].defaultCiphers(javax.net.ssl.SSLEngine,java.util.Set<String>)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.List<String>"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "java.util.Set<String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[io.netty.handler.ssl.SslUtils].addIfSupported(java.util.Set,java.util.List,java.lang.String[])"
    - "[javax.net.ssl.SSLEngine].getEnabledCipherSuites()"
    - "[io.netty.handler.ssl.SslUtils].useFallbackCiphersIfDefaultIsEmpty(java.util.List,java.lang.String[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:170,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.ssl.JdkSslContext:171,1"
      Dst: "[io.netty.handler.ssl.SslUtils].addIfSupported(java.util.Set,java.util.List,java.lang.String[])"
    - Src: "io.netty.handler.ssl.JdkSslContext:172,1"
      Dst: "[javax.net.ssl.SSLEngine].getEnabledCipherSuites()"
    - Src: "io.netty.handler.ssl.JdkSslContext:172,1"
      Dst: "[io.netty.handler.ssl.SslUtils].useFallbackCiphersIfDefaultIsEmpty(java.util.List,java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslUtils].useFallbackCiphersIfDefaultIsEmpty(java.util.List,java.lang.String[])"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[io.netty.handler.ssl.SslUtils].useFallbackCiphersIfDefaultIsEmpty(java.util.List,java.lang.Iterable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:244,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.SslUtils:244,1"
      Dst: "[io.netty.handler.ssl.SslUtils].useFallbackCiphersIfDefaultIsEmpty(java.util.List,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslContext].isTlsV13Supported(java.lang.String[])"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkSslContext:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:182"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:181"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslContext:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:177"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:178,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,io.netty.handler.ssl.ClientAuth)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "javax.net.ssl.SSLContext"
    - "boolean"
    - "io.netty.handler.ssl.ClientAuth"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:206,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,io.netty.handler.ssl.ClientAuth)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "javax.net.ssl.SSLContext"
    - "boolean"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.ApplicationProtocolConfig"
    - "io.netty.handler.ssl.ClientAuth"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:226,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "javax.net.ssl.SSLContext"
    - "boolean"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.ApplicationProtocolConfig"
    - "io.netty.handler.ssl.ClientAuth"
    - "java.lang.String[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig,boolean)"
    - "[java.lang.Object].clone()"
    - "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkSslContext:249"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:253"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:252"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslContext:253"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:249"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:253,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig,boolean)"
    - Src: "io.netty.handler.ssl.JdkSslContext:255,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "io.netty.handler.ssl.JdkSslContext:249,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "javax.net.ssl.SSLContext"
    - "boolean"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    - "io.netty.handler.ssl.ClientAuth"
    - "java.lang.String[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].<init>(boolean)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[javax.net.ssl.SSLContext].getProvider()"
    - "[java.util.Properties].equals(java.lang.Object)"
    - "[io.netty.handler.ssl.JdkSslContext].isTlsV13Supported(java.lang.String[])"
    - "[javax.net.ssl.SSLContext].createSSLEngine()"
    - "[io.netty.handler.ssl.JdkSslContext].defaultProtocols(javax.net.ssl.SSLContext,javax.net.ssl.SSLEngine)"
    - "[io.netty.handler.ssl.JdkSslContext].supportedCiphers(javax.net.ssl.SSLEngine)"
    - "[io.netty.handler.ssl.JdkSslContext].defaultCiphers(javax.net.ssl.SSLEngine,java.util.Set)"
    - "[java.util.Set].remove(java.lang.Object)"
    - "[java.util.List].remove(java.lang.Object)"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.handler.ssl.CipherSuiteFilter].filterCipherSuites(java.lang.Iterable,java.util.List,java.util.Set)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 74
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkSslContext:269"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:283"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:282"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslContext:270"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:270"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:269"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslContext:271"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:276"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:275"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslContext:285"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:288"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:287"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslContext:292"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:300"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:299"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslContext:294"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:300"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:299"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:262,1"
      Dst: "[io.netty.handler.ssl.SslContext].<init>(boolean)"
    - Src: "io.netty.handler.ssl.JdkSslContext:263,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslContext:269,1"
      Dst: "[javax.net.ssl.SSLContext].getProvider()"
    - Src: "io.netty.handler.ssl.JdkSslContext:269,1"
      Dst: "[java.util.Properties].equals(java.lang.Object)"
    - Src: "io.netty.handler.ssl.JdkSslContext:271,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].isTlsV13Supported(java.lang.String[])"
    - Src: "io.netty.handler.ssl.JdkSslContext:283,1"
      Dst: "[javax.net.ssl.SSLContext].createSSLEngine()"
    - Src: "io.netty.handler.ssl.JdkSslContext:286,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].defaultProtocols(javax.net.ssl.SSLContext,javax.net.ssl.SSLEngine)"
    - Src: "io.netty.handler.ssl.JdkSslContext:290,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].supportedCiphers(javax.net.ssl.SSLEngine)"
    - Src: "io.netty.handler.ssl.JdkSslContext:291,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].defaultCiphers(javax.net.ssl.SSLEngine,java.util.Set)"
    - Src: "io.netty.handler.ssl.JdkSslContext:295,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "io.netty.handler.ssl.JdkSslContext:296,1"
      Dst: "[java.util.List].remove(java.lang.Object)"
    - Src: "io.netty.handler.ssl.JdkSslContext:300,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.handler.ssl.JdkSslContext:304,1"
      Dst: "[io.netty.handler.ssl.CipherSuiteFilter].filterCipherSuites(java.lang.Iterable,java.util.List,java.util.Set)"
    - Src: "io.netty.handler.ssl.JdkSslContext:307,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.JdkSslContext:307,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.ssl.JdkSslContext].context()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: 314
    functionLinenumberEnd: 316
    functionDepth: 0
    returnType: "javax.net.ssl.SSLContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslContext].isClient()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: 319
    functionLinenumberEnd: 321
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslContext].sessionContext()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: 327
    functionLinenumberEnd: 332
    functionDepth: 1
    returnType: "javax.net.ssl.SSLSessionContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].isServer()"
    - "[io.netty.handler.ssl.JdkSslContext].context()"
    - "[javax.net.ssl.SSLContext].getServerSessionContext()"
    - "[javax.net.ssl.SSLContext].getClientSessionContext()"
    functionUses: 2
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkSslContext:328"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:331"
        BranchSideFuncs:
        - "getServerSessionContext()"
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:330"
        BranchSideFuncs:
        - "context()"
        - "getClientSessionContext()"
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:328,1"
      Dst: "[io.netty.handler.ssl.SslContext].isServer()"
    - Src: "io.netty.handler.ssl.JdkSslContext:329,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].context()"
    - Src: "io.netty.handler.ssl.JdkSslContext:329,1"
      Dst: "[javax.net.ssl.SSLContext].getServerSessionContext()"
    - Src: "io.netty.handler.ssl.JdkSslContext:331,1"
      Dst: "[javax.net.ssl.SSLContext].getClientSessionContext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslContext].cipherSuites()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslContext].newEngine(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: 341
    functionLinenumberEnd: 343
    functionDepth: 2
    returnType: "javax.net.ssl.SSLEngine"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslContext].configureAndWrapEngine(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.ssl.JdkSslContext].context()"
    - "[javax.net.ssl.SSLContext].createSSLEngine()"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:342,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].context()"
    - Src: "io.netty.handler.ssl.JdkSslContext:342,1"
      Dst: "[javax.net.ssl.SSLContext].createSSLEngine()"
    - Src: "io.netty.handler.ssl.JdkSslContext:342,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].configureAndWrapEngine(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslContext].configureAndWrapEngine(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: 351
    functionLinenumberEnd: 375
    functionDepth: 1
    returnType: "javax.net.ssl.SSLEngine"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setEnabledCipherSuites(java.lang.String[])"
    - "[io.netty.handler.ssl.JdkSslEngine].setEnabledCipherSuites(java.lang.String[])"
    - "[io.netty.handler.ssl.JdkSslEngine].setEnabledProtocols(java.lang.String[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setEnabledProtocols(java.lang.String[])"
    - "[io.netty.handler.ssl.JdkSslContext].isClient()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setUseClientMode(boolean)"
    - "[io.netty.handler.ssl.JdkSslEngine].setUseClientMode(boolean)"
    - "[io.netty.handler.ssl.SslContext].isServer()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setWantClientAuth(boolean)"
    - "[io.netty.handler.ssl.JdkSslEngine].setWantClientAuth(boolean)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setNeedClientAuth(boolean)"
    - "[io.netty.handler.ssl.JdkSslEngine].setNeedClientAuth(boolean)"
    - "[java.lang.Error].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].wrapperFactory()"
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].wrapperFactory()"
    - "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator].wrapperFactory()"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].wrapperFactory()"
    - "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$FailureWrapper].wrapSslEngine(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    - "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper].wrapSslEngine(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$AllocatorAwareSslEngineWrapperFactory].wrapSslEngine(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator$1].wrapSslEngine(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    - "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator$1].wrapSslEngine(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    - "[javax.net.ssl.SSLEngine].setEnabledCipherSuites(java.lang.String[])"
    - "[javax.net.ssl.SSLEngine].setEnabledProtocols(java.lang.String[])"
    - "[javax.net.ssl.SSLEngine].setUseClientMode(boolean)"
    - "[javax.net.ssl.SSLEngine].setWantClientAuth(boolean)"
    - "[javax.net.ssl.SSLEngine].setNeedClientAuth(boolean)"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator].wrapperFactory()"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$AllocatorAwareSslEngineWrapperFactory].wrapSslEngine(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory].wrapSslEngine(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    functionUses: 1
    ICount: 43
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkSslContext:355"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:369"
        BranchSideFuncs:
        - "ordinal()"
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:368"
        BranchSideFuncs:
        - "wrapperFactory()"
    - Branch String: "io.netty.handler.ssl.JdkSslContext:370"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:373"
        BranchSideFuncs:
        - "isServer()"
        - "wrapSslEngine(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:352,1"
      Dst: "[javax.net.ssl.SSLEngine].setEnabledCipherSuites(java.lang.String[])"
    - Src: "io.netty.handler.ssl.JdkSslContext:353,1"
      Dst: "[javax.net.ssl.SSLEngine].setEnabledProtocols(java.lang.String[])"
    - Src: "io.netty.handler.ssl.JdkSslContext:354,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].isClient()"
    - Src: "io.netty.handler.ssl.JdkSslContext:354,1"
      Dst: "[javax.net.ssl.SSLEngine].setUseClientMode(boolean)"
    - Src: "io.netty.handler.ssl.JdkSslContext:355,1"
      Dst: "[io.netty.handler.ssl.SslContext].isServer()"
    - Src: "io.netty.handler.ssl.JdkSslContext:356,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.ssl.JdkSslContext:358,1"
      Dst: "[javax.net.ssl.SSLEngine].setWantClientAuth(boolean)"
    - Src: "io.netty.handler.ssl.JdkSslContext:361,1"
      Dst: "[javax.net.ssl.SSLEngine].setNeedClientAuth(boolean)"
    - Src: "io.netty.handler.ssl.JdkSslContext:366,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.JdkSslContext:366,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslContext:366,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.JdkSslContext:366,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.JdkSslContext:366,1"
      Dst: "[java.lang.Error].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslContext:369,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator].wrapperFactory()"
    - Src: "io.netty.handler.ssl.JdkSslContext:372,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$AllocatorAwareSslEngineWrapperFactory].wrapSslEngine(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    - Src: "io.netty.handler.ssl.JdkSslContext:374,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory].wrapSslEngine(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.JdkSslContext].newEngine(io.netty.buffer.ByteBufAllocator,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "javax.net.ssl.SSLEngine"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslContext].context()"
    - "[javax.net.ssl.SSLContext].createSSLEngine(java.lang.String,int)"
    - "[io.netty.handler.ssl.JdkSslContext].configureAndWrapEngine(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:347,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].context()"
    - Src: "io.netty.handler.ssl.JdkSslContext:347,1"
      Dst: "[javax.net.ssl.SSLContext].createSSLEngine(java.lang.String,int)"
    - Src: "io.netty.handler.ssl.JdkSslContext:347,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].configureAndWrapEngine(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslContext].applicationProtocolNegotiator()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig,boolean)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.ApplicationProtocolConfig"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ApplicationProtocolConfig].protocol()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.ssl.ApplicationProtocolConfig].selectorFailureBehavior()"
    - "[io.netty.handler.ssl.ApplicationProtocolConfig].supportedProtocols()"
    - "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].<init>(boolean,java.lang.Iterable)"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.handler.ssl.ApplicationProtocolConfig].selectedListenerFailureBehavior()"
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(boolean,java.lang.Iterable)"
    functionUses: 0
    ICount: 111
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkSslContext:390"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:394"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:393"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslContext:398"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:409"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:408"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslContext:420"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:431"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:430"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:394,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolConfig].protocol()"
    - Src: "io.netty.handler.ssl.JdkSslContext:394,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.ssl.JdkSslContext:399,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolConfig].selectorFailureBehavior()"
    - Src: "io.netty.handler.ssl.JdkSslContext:401,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolConfig].supportedProtocols()"
    - Src: "io.netty.handler.ssl.JdkSslContext:401,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].<init>(boolean,java.lang.Iterable)"
    - Src: "io.netty.handler.ssl.JdkSslContext:405,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslContext:406,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.JdkSslContext:406,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslContext:406,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.JdkSslContext:406,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslContext:409,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolConfig].selectedListenerFailureBehavior()"
    - Src: "io.netty.handler.ssl.JdkSslContext:423,1"
      Dst: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].<init>(boolean,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 23
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].<init>(boolean,java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].<init>(boolean,boolean,java.lang.Iterable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator:58,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].<init>(boolean,boolean,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].<init>(boolean,boolean,java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "boolean"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.lang.Iterable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator:78"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator:77"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator:78"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator:78,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.lang.Iterable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator:104,1"
      Dst: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ApplicationProtocolUtil].toList(java.lang.Iterable)"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.util.List)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator:47,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolUtil].toList(java.lang.Iterable)"
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator:47,1"
      Dst: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.util.List)"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator:72,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator:73,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator:76,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslContext].buildKeyManagerFactory(java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "javax.net.ssl.KeyManagerFactory"
    argCount: 5
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.lang.String"
    - "javax.net.ssl.KeyManagerFactory"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Security].getProperty(java.lang.String)"
    - "[io.netty.handler.ssl.JdkSslContext].buildKeyManagerFactory(java.io.File,java.lang.String,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkSslContext:463"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:466"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslContext:465"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:462,1"
      Dst: "[java.security.Security].getProperty(java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslContext:466,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].buildKeyManagerFactory(java.io.File,java.lang.String,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.UnrecoverableKeyException"
      - "java.security.KeyStoreException"
      - "java.security.NoSuchAlgorithmException"
      - "javax.crypto.NoSuchPaddingException"
      - "java.security.spec.InvalidKeySpecException"
      - "java.security.InvalidAlgorithmParameterException"
      - "java.security.cert.CertificateException"
      - "java.security.KeyException"
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.JdkSslContext].buildKeyManagerFactory(java.io.File,java.lang.String,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.KeyManagerFactory"
    argCount: 6
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.io.File"
    - "java.lang.String"
    - "javax.net.ssl.KeyManagerFactory"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.File)"
    - "[io.netty.handler.ssl.SslContext].toPrivateKey(java.io.File,java.lang.String)"
    - "[io.netty.handler.ssl.SslContext].buildKeyManagerFactory(java.security.cert.X509Certificate[],java.lang.String,java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:508,1"
      Dst: "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.File)"
    - Src: "io.netty.handler.ssl.JdkSslContext:509,1"
      Dst: "[io.netty.handler.ssl.SslContext].toPrivateKey(java.io.File,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslContext:508,1"
      Dst: "[io.netty.handler.ssl.SslContext].buildKeyManagerFactory(java.security.cert.X509Certificate[],java.lang.String,java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.KeyStoreException"
      - "java.security.NoSuchAlgorithmException"
      - "javax.crypto.NoSuchPaddingException"
      - "java.security.spec.InvalidKeySpecException"
      - "java.security.InvalidAlgorithmParameterException"
      - "java.io.IOException"
      - "java.security.cert.CertificateException"
      - "java.security.KeyException"
      - "java.security.UnrecoverableKeyException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslContext].buildKeyManagerFactory(java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "javax.net.ssl.KeyManagerFactory"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.lang.String"
    - "javax.net.ssl.KeyManagerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.KeyStore].getDefaultType()"
    - "[io.netty.handler.ssl.JdkSslContext].buildKeyManagerFactory(java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:485,1"
      Dst: "[java.security.KeyStore].getDefaultType()"
    - Src: "io.netty.handler.ssl.JdkSslContext:485,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].buildKeyManagerFactory(java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.UnrecoverableKeyException"
      - "java.security.KeyStoreException"
      - "java.security.NoSuchAlgorithmException"
      - "javax.crypto.NoSuchPaddingException"
      - "java.security.spec.InvalidKeySpecException"
      - "java.security.InvalidAlgorithmParameterException"
      - "java.security.cert.CertificateException"
      - "java.security.KeyException"
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslContext].buildKeyManagerFactory(java.io.File,java.lang.String,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.KeyManagerFactory"
    argCount: 5
    argTypes:
    - "java.io.File"
    - "java.lang.String"
    - "java.io.File"
    - "java.lang.String"
    - "javax.net.ssl.KeyManagerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.File)"
    - "[io.netty.handler.ssl.SslContext].toPrivateKey(java.io.File,java.lang.String)"
    - "[java.security.KeyStore].getDefaultType()"
    - "[io.netty.handler.ssl.SslContext].buildKeyManagerFactory(java.security.cert.X509Certificate[],java.lang.String,java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:533,1"
      Dst: "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.File)"
    - Src: "io.netty.handler.ssl.JdkSslContext:534,1"
      Dst: "[io.netty.handler.ssl.SslContext].toPrivateKey(java.io.File,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslContext:534,1"
      Dst: "[java.security.KeyStore].getDefaultType()"
    - Src: "io.netty.handler.ssl.JdkSslContext:533,1"
      Dst: "[io.netty.handler.ssl.SslContext].buildKeyManagerFactory(java.security.cert.X509Certificate[],java.lang.String,java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.KeyStoreException"
      - "java.security.NoSuchAlgorithmException"
      - "javax.crypto.NoSuchPaddingException"
      - "java.security.spec.InvalidKeySpecException"
      - "java.security.InvalidAlgorithmParameterException"
      - "java.io.IOException"
      - "java.security.cert.CertificateException"
      - "java.security.KeyException"
      - "java.security.UnrecoverableKeyException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslContext].access$100(javax.net.ssl.SSLContext,javax.net.ssl.SSLEngine)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.String[]"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLContext"
    - "javax.net.ssl.SSLEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslContext].defaultProtocols(javax.net.ssl.SSLContext,javax.net.ssl.SSLEngine)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:59,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].defaultProtocols(javax.net.ssl.SSLContext,javax.net.ssl.SSLEngine)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslContext].access$200(javax.net.ssl.SSLEngine)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslContext].supportedCiphers(javax.net.ssl.SSLEngine)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:59,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].supportedCiphers(javax.net.ssl.SSLEngine)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslContext].access$300(javax.net.ssl.SSLEngine,java.util.Set)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslContext].defaultCiphers(javax.net.ssl.SSLEngine,java.util.Set)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslContext:59,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].defaultCiphers(javax.net.ssl.SSLEngine,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.macos.DnsResolver].<init>(java.lang.String,byte[][],int,java.lang.String[],java.lang.String,int,int)"
    functionSourceFile: "io.netty.resolver.dns.macos.DnsResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.lang.String"
    - "byte[][]"
    - "int"
    - "java.lang.String[]"
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.channel.unix.NativeInetAddress].address(byte[],int,int)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.macos.DnsResolver:38"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.macos.DnsResolver:41"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.macos.DnsResolver:40"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.macos.DnsResolver:42"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.macos.DnsResolver:46"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.macos.DnsResolver:36,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.macos.DnsResolver:44,1"
      Dst: "[io.netty.channel.unix.NativeInetAddress].address(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.dns.macos.DnsResolver].domain()"
    functionSourceFile: "io.netty.resolver.dns.macos.DnsResolver"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.macos.DnsResolver].nameservers()"
    functionSourceFile: "io.netty.resolver.dns.macos.DnsResolver"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "java.net.InetSocketAddress[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.macos.DnsResolver].port()"
    functionSourceFile: "io.netty.resolver.dns.macos.DnsResolver"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.macos.DnsResolver].searches()"
    functionSourceFile: "io.netty.resolver.dns.macos.DnsResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.macos.DnsResolver].options()"
    functionSourceFile: "io.netty.resolver.dns.macos.DnsResolver"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.macos.DnsResolver].timeout()"
    functionSourceFile: "io.netty.resolver.dns.macos.DnsResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.macos.DnsResolver].searchOrder()"
    functionSourceFile: "io.netty.resolver.dns.macos.DnsResolver"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelPipelineException].<init>()"
    functionSourceFile: "io.netty.channel.ChannelPipelineException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelException].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelPipelineException:29,1"
      Dst: "[io.netty.channel.ChannelException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelPipelineException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.ChannelPipelineException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelPipelineException:50,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.TypeParameterMatcher$1].<init>()"
    functionSourceFile: "io.netty.util.internal.TypeParameterMatcher$1"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.TypeParameterMatcher].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.TypeParameterMatcher$1:29,1"
      Dst: "[io.netty.util.internal.TypeParameterMatcher].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.TypeParameterMatcher$1].match(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.TypeParameterMatcher$1"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DefaultAttributeMap$DefaultAttribute].<init>(io.netty.util.DefaultAttributeMap,io.netty.util.AttributeKey)"
    functionSourceFile: "io.netty.util.DefaultAttributeMap$DefaultAttribute"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 171
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.DefaultAttributeMap"
    - "io.netty.util.AttributeKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicReference].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DefaultAttributeMap$DefaultAttribute:167,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DefaultAttributeMap$DefaultAttribute].key()"
    functionSourceFile: "io.netty.util.DefaultAttributeMap$DefaultAttribute"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionDepth: 0
    returnType: "io.netty.util.AttributeKey"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DefaultAttributeMap$DefaultAttribute].isRemoved()"
    functionSourceFile: "io.netty.util.DefaultAttributeMap$DefaultAttribute"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.DefaultAttributeMap$DefaultAttribute:178"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap$DefaultAttribute:177"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.DefaultAttributeMap$DefaultAttribute].setIfAbsent(java.lang.Object)"
    functionSourceFile: "io.netty.util.DefaultAttributeMap$DefaultAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.DefaultAttributeMap$DefaultAttribute:183"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap$DefaultAttribute:189"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap$DefaultAttribute:188"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DefaultAttributeMap$DefaultAttribute:185"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap$DefaultAttribute:188"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap$DefaultAttribute:187"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.DefaultAttributeMap$DefaultAttribute:183,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.DefaultAttributeMap$DefaultAttribute:184,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.DefaultAttributeMap$DefaultAttribute].getAndRemove()"
    functionSourceFile: "io.netty.util.DefaultAttributeMap$DefaultAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - "[io.netty.util.DefaultAttributeMap].access$200(io.netty.util.DefaultAttributeMap,io.netty.util.AttributeKey,io.netty.util.DefaultAttributeMap$DefaultAttribute)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.DefaultAttributeMap$DefaultAttribute:195"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap$DefaultAttribute:194"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap$DefaultAttribute:193"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DefaultAttributeMap$DefaultAttribute:195"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap$DefaultAttribute:194"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap$DefaultAttribute:193"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DefaultAttributeMap$DefaultAttribute:197"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap$DefaultAttribute:200"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap$DefaultAttribute:199"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.DefaultAttributeMap$DefaultAttribute:195,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.DefaultAttributeMap$DefaultAttribute:196,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - Src: "io.netty.util.DefaultAttributeMap$DefaultAttribute:198,1"
      Dst: "[io.netty.util.DefaultAttributeMap].access$200(io.netty.util.DefaultAttributeMap,io.netty.util.AttributeKey,io.netty.util.DefaultAttributeMap$DefaultAttribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.DefaultAttributeMap].access$200(io.netty.util.DefaultAttributeMap,io.netty.util.AttributeKey,io.netty.util.DefaultAttributeMap$DefaultAttribute)"
    functionSourceFile: "io.netty.util.DefaultAttributeMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.util.DefaultAttributeMap"
    - "io.netty.util.AttributeKey"
    - "io.netty.util.DefaultAttributeMap$DefaultAttribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DefaultAttributeMap].removeAttributeIfMatch(io.netty.util.AttributeKey,io.netty.util.DefaultAttributeMap$DefaultAttribute)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DefaultAttributeMap:29,1"
      Dst: "[io.netty.util.DefaultAttributeMap].removeAttributeIfMatch(io.netty.util.AttributeKey,io.netty.util.DefaultAttributeMap$DefaultAttribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DefaultAttributeMap].removeAttributeIfMatch(io.netty.util.AttributeKey,io.netty.util.DefaultAttributeMap$DefaultAttribute)"
    functionSourceFile: "io.netty.util.DefaultAttributeMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.AttributeKey"
    - "io.netty.util.DefaultAttributeMap$DefaultAttribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DefaultAttributeMap].searchAttributeByKey(io.netty.util.DefaultAttributeMap$DefaultAttribute[],io.netty.util.AttributeKey)"
    - "[io.netty.util.DefaultAttributeMap$DefaultAttribute].key()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.DefaultAttributeMap:132"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap:135"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap:134"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DefaultAttributeMap:136"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap:137"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DefaultAttributeMap:136"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap:137"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DefaultAttributeMap:137"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap:140"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap:139"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DefaultAttributeMap:142"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap:140"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap:139"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DefaultAttributeMap:147"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap:150"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap:149"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DefaultAttributeMap:150"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap:153"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.DefaultAttributeMap:131,1"
      Dst: "[io.netty.util.DefaultAttributeMap].searchAttributeByKey(io.netty.util.DefaultAttributeMap$DefaultAttribute[],io.netty.util.AttributeKey)"
    - Src: "io.netty.util.DefaultAttributeMap:136,1"
      Dst: "[io.netty.util.DefaultAttributeMap$DefaultAttribute].key()"
    - Src: "io.netty.util.DefaultAttributeMap:136,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.util.DefaultAttributeMap:145,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "io.netty.util.DefaultAttributeMap:150,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.DefaultAttributeMap].searchAttributeByKey(io.netty.util.DefaultAttributeMap$DefaultAttribute[],io.netty.util.AttributeKey)"
    functionSourceFile: "io.netty.util.DefaultAttributeMap"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 62
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.util.DefaultAttributeMap$DefaultAttribute[]"
    - "io.netty.util.AttributeKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DefaultAttributeMap$DefaultAttribute].access$000(io.netty.util.DefaultAttributeMap$DefaultAttribute)"
    - "[io.netty.util.AbstractConstant].id()"
    - "[java.lang.AssertionError].<init>()"
    functionUses: 2
    ICount: 32
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.DefaultAttributeMap:43"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap:61"
        BranchSideFuncs:
        - "access$000(io.netty.util.DefaultAttributeMap$DefaultAttribute)"
      - BranchSide: "io.netty.util.DefaultAttributeMap:60"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DefaultAttributeMap:47"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap:50"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap:49"
        BranchSideFuncs:
        - "<init>()"
        - "id()"
    - Branch String: "io.netty.util.DefaultAttributeMap:52"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap:53"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap:52"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DefaultAttributeMap:52"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap:53"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap:52"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DefaultAttributeMap:53"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap:53"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap:52"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DefaultAttributeMap:54"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap:57"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.DefaultAttributeMap:46,1"
      Dst: "[io.netty.util.DefaultAttributeMap$DefaultAttribute].access$000(io.netty.util.DefaultAttributeMap$DefaultAttribute)"
    - Src: "io.netty.util.DefaultAttributeMap:50,1"
      Dst: "[io.netty.util.AbstractConstant].id()"
    - Src: "io.netty.util.DefaultAttributeMap:52,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.DefaultAttributeMap$DefaultAttribute].access$000(io.netty.util.DefaultAttributeMap$DefaultAttribute)"
    functionSourceFile: "io.netty.util.DefaultAttributeMap$DefaultAttribute"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionDepth: 0
    returnType: "io.netty.util.AttributeKey"
    argCount: 1
    argTypes:
    - "io.netty.util.DefaultAttributeMap$DefaultAttribute"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DefaultAttributeMap$DefaultAttribute].remove()"
    functionSourceFile: "io.netty.util.DefaultAttributeMap$DefaultAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    - "[io.netty.util.DefaultAttributeMap].access$200(io.netty.util.DefaultAttributeMap,io.netty.util.AttributeKey,io.netty.util.DefaultAttributeMap$DefaultAttribute)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.DefaultAttributeMap$DefaultAttribute:206"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap$DefaultAttribute:205"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap$DefaultAttribute:204"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DefaultAttributeMap$DefaultAttribute:206"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap$DefaultAttribute:205"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap$DefaultAttribute:204"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DefaultAttributeMap$DefaultAttribute:208"
      Branch Sides:
      - BranchSide: "io.netty.util.DefaultAttributeMap$DefaultAttribute:211"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DefaultAttributeMap$DefaultAttribute:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.DefaultAttributeMap$DefaultAttribute:206,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.DefaultAttributeMap$DefaultAttribute:207,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    - Src: "io.netty.util.DefaultAttributeMap$DefaultAttribute:209,1"
      Dst: "[io.netty.util.DefaultAttributeMap].access$200(io.netty.util.DefaultAttributeMap,io.netty.util.AttributeKey,io.netty.util.DefaultAttributeMap$DefaultAttribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.DefaultAttributeMap$DefaultAttribute].access$100(io.netty.util.DefaultAttributeMap$DefaultAttribute)"
    functionSourceFile: "io.netty.util.DefaultAttributeMap$DefaultAttribute"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.util.DefaultAttributeMap$DefaultAttribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DefaultAttributeMap$DefaultAttribute].isRemoved()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DefaultAttributeMap$DefaultAttribute:157,1"
      Dst: "[io.netty.util.DefaultAttributeMap$DefaultAttribute].isRemoved()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe].readReady(io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe"
    linkageType: ""
    functionLinenumber: 241
    functionLinenumberEnd: 327
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].shouldBreakReadReady(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].clearReadFilter0()"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReadyBefore()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isConnected()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].localAddress()"
    - "[io.netty.channel.unix.DomainDatagramPacket].<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress,io.netty.channel.unix.DomainSocketAddress)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].remoteAddress()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.channel.unix.Socket].recvFromAddressDomainSocket(long,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.channel.unix.Socket].recvFromDomainSocket(java.nio.ByteBuffer,int,int)"
    - "[io.netty.channel.unix.DomainDatagramSocketAddress].localAddress()"
    - "[io.netty.channel.unix.DomainDatagramSocketAddress].receivedAmount()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReadyFinally(io.netty.channel.ChannelConfig)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.channel.ChannelConfig].getAllocator()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.Buffer].limit()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 3
    ICount: 105
    EdgeCount: 183
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:242"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:243"
        BranchSideFuncs:
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "config()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:242"
        BranchSideFuncs:
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "config()"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:242"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:243"
        BranchSideFuncs:
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "config()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:242"
        BranchSideFuncs:
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "config()"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:244"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:248"
        BranchSideFuncs:
        - "clearReadFilter0()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:247"
        BranchSideFuncs:
        - "reset(io.netty.channel.ChannelConfig)"
        - "pipeline()"
        - "readReadyBefore()"
        - "getAllocator()"
        - "isConnected()"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:263"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:274"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:273"
        BranchSideFuncs:
        - "hasMemoryAddress()"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:265"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:270"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "readReadyFinally(io.netty.channel.ChannelConfig)"
        - "localAddress()"
        - "writerIndex()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "attemptedBytesRead(int)"
        - "writableBytes()"
        - "fireChannelRead(java.lang.Object)"
        - "<init>()"
        - "writerIndex(int)"
        - "readComplete()"
        - "inEventLoop()"
        - "release()"
        - "continueReading(io.netty.util.UncheckedBooleanSupplier)"
        - "clearReadFilter0()"
        - "receivedAmount()"
        - "hasMemoryAddress()"
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "recvFromAddressDomainSocket(long,int,int)"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "config()"
        - "memoryAddress()"
        - "internalNioBuffer(int,int)"
        - "pipeline()"
        - "recvFromDomainSocket(java.nio.ByteBuffer,int,int)"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress,io.netty.channel.unix.DomainSocketAddress)"
        - "readReadyBefore()"
        - "incMessagesRead(int)"
        - "eventLoop()"
        - "getAllocator()"
        - "capacity()"
        - "remoteAddress()"
        - "isConnected()"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:269"
        BranchSideFuncs:
        - "remoteAddress()"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:274"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:280"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "readReadyFinally(io.netty.channel.ChannelConfig)"
        - "localAddress()"
        - "writerIndex()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "attemptedBytesRead(int)"
        - "writableBytes()"
        - "fireChannelRead(java.lang.Object)"
        - "<init>()"
        - "writerIndex(int)"
        - "readComplete()"
        - "inEventLoop()"
        - "release()"
        - "continueReading(io.netty.util.UncheckedBooleanSupplier)"
        - "clearReadFilter0()"
        - "receivedAmount()"
        - "hasMemoryAddress()"
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "recvFromAddressDomainSocket(long,int,int)"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "config()"
        - "memoryAddress()"
        - "internalNioBuffer(int,int)"
        - "pipeline()"
        - "recvFromDomainSocket(java.nio.ByteBuffer,int,int)"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress,io.netty.channel.unix.DomainSocketAddress)"
        - "readReadyBefore()"
        - "incMessagesRead(int)"
        - "eventLoop()"
        - "getAllocator()"
        - "capacity()"
        - "remoteAddress()"
        - "isConnected()"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:279"
        BranchSideFuncs:
        - "writableBytes()"
        - "recvFromDomainSocket(java.nio.ByteBuffer,int,int)"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:285"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:290"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:289"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:291"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:294"
        BranchSideFuncs:
        - "localAddress()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:293"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "writerIndex()"
        - "writerIndex(int)"
        - "receivedAmount()"
        - "<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress,io.netty.channel.unix.DomainSocketAddress)"
        - "lastBytesRead()"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:309"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:259"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "readReadyFinally(io.netty.channel.ChannelConfig)"
        - "localAddress()"
        - "writerIndex()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "attemptedBytesRead(int)"
        - "writableBytes()"
        - "fireChannelRead(java.lang.Object)"
        - "<init>()"
        - "writerIndex(int)"
        - "readComplete()"
        - "inEventLoop()"
        - "release()"
        - "continueReading(io.netty.util.UncheckedBooleanSupplier)"
        - "clearReadFilter0()"
        - "receivedAmount()"
        - "hasMemoryAddress()"
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "recvFromAddressDomainSocket(long,int,int)"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "config()"
        - "memoryAddress()"
        - "internalNioBuffer(int,int)"
        - "pipeline()"
        - "recvFromDomainSocket(java.nio.ByteBuffer,int,int)"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress,io.netty.channel.unix.DomainSocketAddress)"
        - "readReadyBefore()"
        - "incMessagesRead(int)"
        - "eventLoop()"
        - "getAllocator()"
        - "capacity()"
        - "remoteAddress()"
        - "isConnected()"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:258"
        BranchSideFuncs:
        - "attemptedBytesRead(int)"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:311"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:314"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:313"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:320"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:324"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:323"
        BranchSideFuncs:
        - "readReadyFinally(io.netty.channel.ChannelConfig)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:242,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:242,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:242,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:243,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:244,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].shouldBreakReadReady(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:245,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].clearReadFilter0()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:248,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:249,1"
      Dst: "[io.netty.channel.ChannelConfig].getAllocator()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:250,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].reset(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:251,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReadyBefore()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:257,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isConnected()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:259,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:260,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:260,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:264,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:264,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].lastBytesRead(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:265,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:267,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:270,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].localAddress()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:271,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].remoteAddress()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:271,1"
      Dst: "[io.netty.channel.unix.DomainDatagramPacket].<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress,io.netty.channel.unix.DomainSocketAddress)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:274,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:276,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:277,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:277,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:276,1"
      Dst: "[io.netty.channel.unix.Socket].recvFromAddressDomainSocket(long,int,int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:279,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:282,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:282,1"
      Dst: "[java.nio.Buffer].limit()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:282,1"
      Dst: "[io.netty.channel.unix.Socket].recvFromDomainSocket(java.nio.ByteBuffer,int,int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:290,1"
      Dst: "[io.netty.channel.unix.DomainDatagramSocketAddress].localAddress()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:294,1"
      Dst: "[io.netty.channel.unix.DomainDatagramSocketAddress].receivedAmount()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:295,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:300,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:303,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:309,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:317,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:318,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:321,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.channel.kqueue.KQueueDomainDatagramChannel$KQueueDomainDatagramChannelUnsafe:324,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReadyFinally(io.netty.channel.ChannelConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 28
    CyclomaticComplexity: 9
  - functionName: "[io.netty.channel.unix.Socket].recvFromAddressDomainSocket(long,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 269
    functionDepth: 1
    returnType: "io.netty.channel.unix.DomainDatagramSocketAddress"
    argCount: 3
    argTypes:
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].recvFromAddressDomainSocket(int,long,int,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:268,1"
      Dst: "[io.netty.channel.unix.Socket].recvFromAddressDomainSocket(int,long,int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].recvFromAddressDomainSocket(int,long,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainDatagramSocketAddress"
    argCount: 4
    argTypes:
    - "int"
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.Socket].recvFromDomainSocket(java.nio.ByteBuffer,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 264
    functionDepth: 1
    returnType: "io.netty.channel.unix.DomainDatagramSocketAddress"
    argCount: 3
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].recvFromDomainSocket(int,java.nio.ByteBuffer,int,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:263,1"
      Dst: "[io.netty.channel.unix.Socket].recvFromDomainSocket(int,java.nio.ByteBuffer,int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].recvFromDomainSocket(int,java.nio.ByteBuffer,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainDatagramSocketAddress"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.DomainDatagramSocketAddress].localAddress()"
    functionSourceFile: "io.netty.channel.unix.DomainDatagramSocketAddress"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainDatagramSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DomainDatagramSocketAddress].receivedAmount()"
    functionSourceFile: "io.netty.channel.unix.DomainDatagramSocketAddress"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].markClosed()"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 76
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].isClosed(int)"
    - "[io.netty.channel.unix.FileDescriptor].casState(int,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.FileDescriptor:68"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.FileDescriptor:71"
        BranchSideFuncs:
        - "casState(int,int)"
    - Branch String: "io.netty.channel.unix.FileDescriptor:72"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:75"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.FileDescriptor:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.FileDescriptor:68,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].isClosed(int)"
    - Src: "io.netty.channel.unix.FileDescriptor:72,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].casState(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.FileDescriptor].casState(int,int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 206
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.FileDescriptor:205,1"
      Dst: "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].close()"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 89
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].markClosed()"
    - "[io.netty.channel.unix.FileDescriptor].close(int)"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    functionUses: 18
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.FileDescriptor:82"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:88"
        BranchSideFuncs:
        - "close(int)"
      - BranchSide: "io.netty.channel.unix.FileDescriptor:87"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.FileDescriptor:84"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:88"
        BranchSideFuncs:
        - "newIOException(java.lang.String,int)"
      - BranchSide: "io.netty.channel.unix.FileDescriptor:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.FileDescriptor:82,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].markClosed()"
    - Src: "io.netty.channel.unix.FileDescriptor:83,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].close(int)"
    - Src: "io.netty.channel.unix.FileDescriptor:85,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.FileDescriptor].close(int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.FileDescriptor].writev(java.nio.ByteBuffer[],int,int,long)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 119
    functionDepth: 3
    returnType: "long"
    argCount: 4
    argTypes:
    - "java.nio.ByteBuffer[]"
    - "int"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.channel.unix.FileDescriptor].writev(int,java.nio.ByteBuffer[],int,int,long)"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 2
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.FileDescriptor:115"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:118"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.FileDescriptor:117"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.unix.FileDescriptor:114,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.channel.unix.FileDescriptor:114,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].writev(int,java.nio.ByteBuffer[],int,int,long)"
    - Src: "io.netty.channel.unix.FileDescriptor:118,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].writev(int,java.nio.ByteBuffer[],int,int,long)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 5
    argTypes:
    - "int"
    - "java.nio.ByteBuffer[]"
    - "int"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.FileDescriptor].read(java.nio.ByteBuffer,int,int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 138
    functionDepth: 3
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].read(int,java.nio.ByteBuffer,int,int)"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.FileDescriptor:131"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:134"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.FileDescriptor:133"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.FileDescriptor:134"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:137"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.FileDescriptor:136"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.unix.FileDescriptor:130,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].read(int,java.nio.ByteBuffer,int,int)"
    - Src: "io.netty.channel.unix.FileDescriptor:137,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].read(int,java.nio.ByteBuffer,int,int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.FileDescriptor].readAddress(long,int,int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 149
    functionDepth: 3
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].readAddress(int,long,int,int)"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.FileDescriptor:142"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:145"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.FileDescriptor:144"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.FileDescriptor:145"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:148"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.FileDescriptor:147"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.unix.FileDescriptor:141,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].readAddress(int,long,int,int)"
    - Src: "io.netty.channel.unix.FileDescriptor:148,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].readAddress(int,long,int,int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.FileDescriptor].toString()"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.FileDescriptor:153,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.unix.FileDescriptor:153,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.unix.FileDescriptor:153,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.unix.FileDescriptor:153,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.channel.unix.FileDescriptor:153,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].equals(java.lang.Object)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 168
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.FileDescriptor:160"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:163"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.FileDescriptor:162"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.FileDescriptor:163"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:167"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.FileDescriptor:166"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.FileDescriptor:167"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:166"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.FileDescriptor].hashCode()"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].'from'(java.lang.String)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.unix.FileDescriptor"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.unix.FileDescriptor].open(java.lang.String)"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    - "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.FileDescriptor:180"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:183"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.FileDescriptor:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.FileDescriptor:179,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.unix.FileDescriptor:179,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].open(java.lang.String)"
    - Src: "io.netty.channel.unix.FileDescriptor:181,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    - Src: "io.netty.channel.unix.FileDescriptor:183,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].open(java.lang.String)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.FileDescriptor].'from'(java.io.File)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.unix.FileDescriptor"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.io.File].getPath()"
    - "[io.netty.channel.unix.FileDescriptor].'from'(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.FileDescriptor:190,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.unix.FileDescriptor:190,1"
      Dst: "[java.io.File].getPath()"
    - Src: "io.netty.channel.unix.FileDescriptor:190,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].'from'(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].isOutputShutdown(int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 218
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.FileDescriptor:217"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.FileDescriptor:216"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.FileDescriptor].inputShutdown(int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 220
    functionLinenumberEnd: 222
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.FileDescriptor].outputShutdown(int)"
    functionSourceFile: "io.netty.channel.unix.FileDescriptor"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpResponseEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectEncoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:27,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpResponseEncoder].acceptOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseEncoder"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectEncoder].acceptOutboundMessage(java.lang.Object)"
    functionUses: 3
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpResponseEncoder:31"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseEncoder:30"
        BranchSideFuncs:
        - "acceptOutboundMessage(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.HttpResponseEncoder:31"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseEncoder:30"
        BranchSideFuncs:
        - "acceptOutboundMessage(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:31,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectEncoder].acceptOutboundMessage(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpResponseEncoder].encodeInitialLine(io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseEncoder"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 41
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpVersion].encode(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].protocolVersion()"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].encode(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.buffer.ByteBufUtil].writeShortBE(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    functionUses: 1
    ICount: 10
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:36,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:36,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].encode(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:37,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:38,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:38,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].encode(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:39,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeShortBE(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpResponseEncoder].sanitizeHeadersBeforeEncode(io.netty.handler.codec.http.HttpResponse,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseEncoder"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 67
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].codeClass()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpMessage:io.netty.handler.codec.http.HttpResponseStatus].code()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].setInt(java.lang.CharSequence,int)"
    functionUses: 2
    ICount: 30
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpResponseEncoder:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseEncoder:66"
        BranchSideFuncs:
        - "codeClass()"
        - "status()"
      - BranchSide: "io.netty.handler.codec.http.HttpResponseEncoder:65"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpResponseEncoder:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseEncoder:51"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpResponseEncoder:50"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpResponseEncoder:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseEncoder:55"
        BranchSideFuncs:
        - "code()"
    - Branch String: "io.netty.handler.codec.http.HttpResponseEncoder:56"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseEncoder:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:45,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:46,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].codeClass()"
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:47,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:51,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:51,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:63,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].setInt(java.lang.CharSequence,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.HttpResponseEncoder].isContentAlwaysEmpty(io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseEncoder"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 87
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].codeClass()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage:io.netty.handler.codec.http.HttpResponseStatus].code()"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 2
    ICount: 31
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpResponseEncoder:74"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseEncoder:83"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpResponseEncoder:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseEncoder:81"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpResponseEncoder:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseEncoder:84"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpResponseEncoder:83"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpResponseEncoder:85"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseEncoder:84"
        BranchSideFuncs:
        - "code()"
      - BranchSide: "io.netty.handler.codec.http.HttpResponseEncoder:83"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpResponseEncoder:86"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpResponseEncoder:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:72,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:74,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].codeClass()"
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:76,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:80,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:80,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.HttpResponseEncoder].encodeInitialLine(io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseEncoder"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseEncoder].encodeInitialLine(io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpResponse)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:27,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseEncoder].encodeInitialLine(io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpResponse)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpResponseEncoder].isContentAlwaysEmpty(io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseEncoder"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseEncoder].isContentAlwaysEmpty(io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.HttpServerCodec$HttpServerResponseEncoder].isContentAlwaysEmpty(io.netty.handler.codec.http.HttpResponse)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:27,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseEncoder].isContentAlwaysEmpty(io.netty.handler.codec.http.HttpResponse)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpResponseEncoder].sanitizeHeadersBeforeEncode(io.netty.handler.codec.http.HttpMessage,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpResponseEncoder"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseEncoder].sanitizeHeadersBeforeEncode(io.netty.handler.codec.http.HttpResponse,boolean)"
    - "[io.netty.handler.codec.http.HttpServerCodec$HttpServerResponseEncoder].sanitizeHeadersBeforeEncode(io.netty.handler.codec.http.HttpResponse,boolean)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpResponseEncoder:27,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseEncoder].sanitizeHeadersBeforeEncode(io.netty.handler.codec.http.HttpResponse,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlCharacters].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlCharacters"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.xml.XmlContent].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlCharacters:24,1"
      Dst: "[io.netty.handler.codec.xml.XmlContent].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslContext,io.netty.buffer.ByteBufAllocator,java.lang.String,int,boolean,boolean)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 229
    functionLinenumberEnd: 410
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslContext"
    - "io.netty.buffer.ByteBufAllocator"
    - "java.lang.String"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - "[javax.net.ssl.SSLEngine].<init>(java.lang.String,int)"
    - "[io.netty.handler.ssl.OpenSsl].ensureAvailability()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].applicationProtocolNegotiator()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].isClient()"
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$2].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,io.netty.handler.ssl.OpenSslSession)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,io.netty.handler.ssl.OpenSslSessionContext)"
    - "[io.netty.handler.ssl.OpenSslServerContext].sessionContext()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslServerContext].sessionContext()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext].sessionContext()"
    - "[io.netty.handler.ssl.OpenSslClientContext].sessionContext()"
    - "[io.netty.handler.ssl.OpenSslSessionContext].useKeyManager()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].setLocalCertificate(java.security.cert.Certificate[])"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].setLocalCertificate(java.security.cert.Certificate[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].setLocalCertificate(java.security.cert.Certificate[])"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock].lock()"
    - "[java.util.concurrent.locks.ReentrantLock].lock()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock].lock()"
    - "[io.netty.internal.tcnative.SSL].newSSL(long,boolean)"
    - "[java.util.concurrent.locks.ReentrantLock].unlock()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock].unlock()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock].unlock()"
    - "[io.netty.internal.tcnative.SSL].bioNewByteBuffer(long,int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].getBioNonApplicationBufferSize()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setClientAuth(io.netty.handler.ssl.ClientAuth)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setEnabledProtocols0(java.lang.String[],boolean)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getEnabledProtocols()"
    - "[io.netty.handler.ssl.SslUtils].isValidHostNameForSNI(java.lang.String)"
    - "[io.netty.handler.ssl.Java8SslUtils].isValidHostNameForSNI(java.lang.String)"
    - "[io.netty.internal.tcnative.SSL].setTlsExtHostName(long,java.lang.String)"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[io.netty.internal.tcnative.SSL].enableOcsp(long)"
    - "[io.netty.internal.tcnative.SSL].getMode(long)"
    - "[io.netty.internal.tcnative.SSL].setMode(long,int)"
    - "[io.netty.internal.tcnative.SSL].getOptions(long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isProtocolEnabled(int,int,java.lang.String)"
    - "[io.netty.internal.tcnative.SSL].clearOptions(long,int)"
    - "[io.netty.handler.ssl.OpenSsl].isBoringSSL()"
    - "[io.netty.internal.tcnative.SSL].setRenegotiateMode(long,int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].calculateMaxWrapOverhead()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].retain()"
    - "[io.netty.util.ResourceLeakDetector].track(java.lang.Object)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].sessionContext()"
    - "[io.netty.handler.ssl.OpenSslSession].setLocalCertificate(java.security.cert.Certificate[])"
    - "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - "[java.util.concurrent.locks.Lock].lock()"
    - "[java.util.concurrent.locks.Lock].unlock()"
    functionUses: 2
    ICount: 156
    EdgeCount: 63
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:239"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:313"
        BranchSideFuncs:
        - "<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,io.netty.handler.ssl.OpenSslSession)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:312"
        BranchSideFuncs:
        - "<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,io.netty.handler.ssl.OpenSslSessionContext)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:316"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:320"
        BranchSideFuncs:
        - "setLocalCertificate(java.security.cert.Certificate[])"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:319"
        BranchSideFuncs:
        - "isClient()"
        - "readLock()"
        - "lock()"
        - "newSSL(long,boolean)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:324"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:320"
        BranchSideFuncs:
        - "isClient()"
        - "unlock()"
        - "newSSL(long,boolean)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:319"
        BranchSideFuncs:
        - "isClient()"
        - "readLock()"
        - "lock()"
        - "newSSL(long,boolean)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:335"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:328"
        BranchSideFuncs:
        - "setClientAuth(io.netty.handler.ssl.ClientAuth)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:327"
        BranchSideFuncs:
        - "setClientAuth(io.netty.handler.ssl.ClientAuth)"
        - "bioNewByteBuffer(long,int)"
        - "getBioNonApplicationBufferSize()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:337"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:340"
        BranchSideFuncs:
        - "setEnabledProtocols0(java.lang.String[],boolean)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:339"
        BranchSideFuncs:
        - "getEnabledProtocols()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:345"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:359"
        BranchSideFuncs:
        - "isValidHostNameForSNI(java.lang.String)"
        - "enableOcsp(long)"
        - "getOptions(long)"
        - "isClient()"
        - "isBoringSSL()"
        - "readLock()"
        - "setClientAuth(io.netty.handler.ssl.ClientAuth)"
        - "bioNewByteBuffer(long,int)"
        - "getEnabledProtocols()"
        - "clearOptions(long,int)"
        - "singletonList(java.lang.Object)"
        - "getBioNonApplicationBufferSize()"
        - "calculateMaxWrapOverhead()"
        - "isProtocolEnabled(int,int,java.lang.String)"
        - "sessionContext()"
        - "setTlsExtHostName(long,java.lang.String)"
        - "unlock()"
        - "shutdown()"
        - "setEnabledProtocols0(java.lang.String[],boolean)"
        - "setMode(long,int)"
        - "javaVersion()"
        - "setLocalCertificate(java.security.cert.Certificate[])"
        - "throwException(java.lang.Throwable)"
        - "setRenegotiateMode(long,int)"
        - "lock()"
        - "newSSL(long,boolean)"
        - "getMode(long)"
        - "useKeyManager()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:358"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:345"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:359"
        BranchSideFuncs:
        - "isValidHostNameForSNI(java.lang.String)"
        - "enableOcsp(long)"
        - "getOptions(long)"
        - "isClient()"
        - "isBoringSSL()"
        - "readLock()"
        - "setClientAuth(io.netty.handler.ssl.ClientAuth)"
        - "bioNewByteBuffer(long,int)"
        - "getEnabledProtocols()"
        - "clearOptions(long,int)"
        - "singletonList(java.lang.Object)"
        - "getBioNonApplicationBufferSize()"
        - "calculateMaxWrapOverhead()"
        - "isProtocolEnabled(int,int,java.lang.String)"
        - "sessionContext()"
        - "setTlsExtHostName(long,java.lang.String)"
        - "unlock()"
        - "shutdown()"
        - "setEnabledProtocols0(java.lang.String[],boolean)"
        - "setMode(long,int)"
        - "javaVersion()"
        - "setLocalCertificate(java.security.cert.Certificate[])"
        - "throwException(java.lang.Throwable)"
        - "setRenegotiateMode(long,int)"
        - "lock()"
        - "newSSL(long,boolean)"
        - "getMode(long)"
        - "useKeyManager()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:358"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:348"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:354"
        BranchSideFuncs:
        - "isValidHostNameForSNI(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:353"
        BranchSideFuncs:
        - "singletonList(java.lang.Object)"
        - "setTlsExtHostName(long,java.lang.String)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:349"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:359"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:358"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:359"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:363"
        BranchSideFuncs:
        - "enableOcsp(long)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:362"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:363"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:367"
        BranchSideFuncs:
        - "setMode(long,int)"
        - "getMode(long)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:366"
        BranchSideFuncs:
        - "getOptions(long)"
        - "isProtocolEnabled(int,int,java.lang.String)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:367"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:383"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:382"
        BranchSideFuncs:
        - "isBoringSSL()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:368"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:368"
        BranchSideFuncs:
        - "isValidHostNameForSNI(java.lang.String)"
        - "enableOcsp(long)"
        - "getOptions(long)"
        - "isClient()"
        - "isBoringSSL()"
        - "readLock()"
        - "setClientAuth(io.netty.handler.ssl.ClientAuth)"
        - "bioNewByteBuffer(long,int)"
        - "getEnabledProtocols()"
        - "clearOptions(long,int)"
        - "singletonList(java.lang.Object)"
        - "getBioNonApplicationBufferSize()"
        - "calculateMaxWrapOverhead()"
        - "isProtocolEnabled(int,int,java.lang.String)"
        - "sessionContext()"
        - "setTlsExtHostName(long,java.lang.String)"
        - "unlock()"
        - "shutdown()"
        - "setEnabledProtocols0(java.lang.String[],boolean)"
        - "setMode(long,int)"
        - "javaVersion()"
        - "setLocalCertificate(java.security.cert.Certificate[])"
        - "throwException(java.lang.Throwable)"
        - "setRenegotiateMode(long,int)"
        - "lock()"
        - "newSSL(long,boolean)"
        - "getMode(long)"
        - "useKeyManager()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:367"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:371"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:383"
        BranchSideFuncs:
        - "isValidHostNameForSNI(java.lang.String)"
        - "enableOcsp(long)"
        - "getOptions(long)"
        - "isClient()"
        - "isBoringSSL()"
        - "readLock()"
        - "setClientAuth(io.netty.handler.ssl.ClientAuth)"
        - "bioNewByteBuffer(long,int)"
        - "getEnabledProtocols()"
        - "clearOptions(long,int)"
        - "singletonList(java.lang.Object)"
        - "getBioNonApplicationBufferSize()"
        - "calculateMaxWrapOverhead()"
        - "isProtocolEnabled(int,int,java.lang.String)"
        - "sessionContext()"
        - "setTlsExtHostName(long,java.lang.String)"
        - "unlock()"
        - "shutdown()"
        - "setEnabledProtocols0(java.lang.String[],boolean)"
        - "setMode(long,int)"
        - "javaVersion()"
        - "setLocalCertificate(java.security.cert.Certificate[])"
        - "throwException(java.lang.Throwable)"
        - "setRenegotiateMode(long,int)"
        - "lock()"
        - "newSSL(long,boolean)"
        - "getMode(long)"
        - "useKeyManager()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:382"
        BranchSideFuncs:
        - "isBoringSSL()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:383"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:391"
        BranchSideFuncs:
        - "isValidHostNameForSNI(java.lang.String)"
        - "enableOcsp(long)"
        - "getOptions(long)"
        - "isClient()"
        - "isBoringSSL()"
        - "readLock()"
        - "setClientAuth(io.netty.handler.ssl.ClientAuth)"
        - "bioNewByteBuffer(long,int)"
        - "getEnabledProtocols()"
        - "clearOptions(long,int)"
        - "singletonList(java.lang.Object)"
        - "getBioNonApplicationBufferSize()"
        - "calculateMaxWrapOverhead()"
        - "isProtocolEnabled(int,int,java.lang.String)"
        - "sessionContext()"
        - "setTlsExtHostName(long,java.lang.String)"
        - "unlock()"
        - "shutdown()"
        - "setEnabledProtocols0(java.lang.String[],boolean)"
        - "setMode(long,int)"
        - "javaVersion()"
        - "setLocalCertificate(java.security.cert.Certificate[])"
        - "throwException(java.lang.Throwable)"
        - "setRenegotiateMode(long,int)"
        - "lock()"
        - "newSSL(long,boolean)"
        - "getMode(long)"
        - "useKeyManager()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:390"
        BranchSideFuncs:
        - "calculateMaxWrapOverhead()"
        - "shutdown()"
        - "throwException(java.lang.Throwable)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:383"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:391"
        BranchSideFuncs:
        - "isValidHostNameForSNI(java.lang.String)"
        - "enableOcsp(long)"
        - "getOptions(long)"
        - "isClient()"
        - "isBoringSSL()"
        - "readLock()"
        - "setClientAuth(io.netty.handler.ssl.ClientAuth)"
        - "bioNewByteBuffer(long,int)"
        - "getEnabledProtocols()"
        - "clearOptions(long,int)"
        - "singletonList(java.lang.Object)"
        - "getBioNonApplicationBufferSize()"
        - "calculateMaxWrapOverhead()"
        - "isProtocolEnabled(int,int,java.lang.String)"
        - "sessionContext()"
        - "setTlsExtHostName(long,java.lang.String)"
        - "unlock()"
        - "shutdown()"
        - "setEnabledProtocols0(java.lang.String[],boolean)"
        - "setMode(long,int)"
        - "javaVersion()"
        - "setLocalCertificate(java.security.cert.Certificate[])"
        - "throwException(java.lang.Throwable)"
        - "setRenegotiateMode(long,int)"
        - "lock()"
        - "newSSL(long,boolean)"
        - "getMode(long)"
        - "useKeyManager()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:390"
        BranchSideFuncs:
        - "calculateMaxWrapOverhead()"
        - "shutdown()"
        - "throwException(java.lang.Throwable)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:408"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:403"
        BranchSideFuncs:
        - "track(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:402"
        BranchSideFuncs:
        - "track(java.lang.Object)"
        - "retain()"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:230,1"
      Dst: "[javax.net.ssl.SSLEngine].<init>(java.lang.String,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:163,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:231,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].ensureAvailability()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:235,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:236,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].applicationProtocolNegotiator()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:237,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].isClient()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:239,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:240,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].sessionContext()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:240,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,io.netty.handler.ssl.OpenSslSessionContext)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:240,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$2].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,io.netty.handler.ssl.OpenSslSession)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:316,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionContext].useKeyManager()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:317,1"
      Dst: "[io.netty.handler.ssl.OpenSslSession].setLocalCertificate(java.security.cert.Certificate[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:320,1"
      Dst: "[java.util.concurrent.locks.ReadWriteLock].readLock()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:321,1"
      Dst: "[java.util.concurrent.locks.Lock].lock()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:324,1"
      Dst: "[io.netty.internal.tcnative.SSL].newSSL(long,boolean)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:326,1"
      Dst: "[java.util.concurrent.locks.Lock].unlock()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:331,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].getBioNonApplicationBufferSize()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:331,1"
      Dst: "[io.netty.internal.tcnative.SSL].bioNewByteBuffer(long,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:335,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setClientAuth(io.netty.handler.ssl.ClientAuth)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:338,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setEnabledProtocols0(java.lang.String[],boolean)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:340,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getEnabledProtocols()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:345,1"
      Dst: "[io.netty.handler.ssl.SslUtils].isValidHostNameForSNI(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:349,1"
      Dst: "[io.netty.handler.ssl.Java8SslUtils].isValidHostNameForSNI(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:350,1"
      Dst: "[io.netty.internal.tcnative.SSL].setTlsExtHostName(long,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:351,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:360,1"
      Dst: "[io.netty.internal.tcnative.SSL].enableOcsp(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:364,1"
      Dst: "[io.netty.internal.tcnative.SSL].getMode(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:364,1"
      Dst: "[io.netty.internal.tcnative.SSL].setMode(long,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:367,1"
      Dst: "[io.netty.internal.tcnative.SSL].getOptions(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:367,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isProtocolEnabled(int,int,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:379,1"
      Dst: "[io.netty.internal.tcnative.SSL].clearOptions(long,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:383,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].isBoringSSL()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:388,1"
      Dst: "[io.netty.internal.tcnative.SSL].setRenegotiateMode(long,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:391,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].calculateMaxWrapOverhead()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:395,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:397,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:404,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].retain()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:408,1"
      Dst: "[io.netty.util.ResourceLeakDetector].track(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 43
    CyclomaticComplexity: 16
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].masterKey()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 429
    functionLinenumberEnd: 434
    functionDepth: 1
    returnType: "javax.crypto.spec.SecretKeySpec"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[javax.crypto.spec.SecretKeySpec].<init>(byte[],java.lang.String)"
    - "[io.netty.internal.tcnative.SSL].getMasterKey(long)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:430"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:433"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:432"
        BranchSideFuncs:
        - "getMasterKey(long)"
        - "<init>(byte[],java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:430,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:433,1"
      Dst: "[io.netty.internal.tcnative.SSL].getMasterKey(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:433,1"
      Dst: "[javax.crypto.spec.SecretKeySpec].<init>(byte[],java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isSessionReused()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.internal.tcnative.SSL].isSessionReused(long)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:437"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:440"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:439"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:437,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:440,1"
      Dst: "[io.netty.internal.tcnative.SSL].isSessionReused(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setOcspResponse(byte[])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.internal.tcnative.SSL].setOcspResponse(long,byte[])"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:448"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:452"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:451"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:452"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:456"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:455"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:457"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:460"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:459"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:449,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:457,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:458,1"
      Dst: "[io.netty.internal.tcnative.SSL].setOcspResponse(long,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getOcspResponse()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.internal.tcnative.SSL].getOcspResponse(long)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:468"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:472"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:471"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:472"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:476"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:475"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:477"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:480"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:479"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:469,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:477,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:480,1"
      Dst: "[io.netty.internal.tcnative.SSL].getOcspResponse(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].refCnt()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 485
    functionLinenumberEnd: 487
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].refCnt()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:486,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].retain()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 490
    functionLinenumberEnd: 493
    functionDepth: 0
    returnType: "io.netty.util.ReferenceCounted"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].retain()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].retain()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].retain()"
    - "[io.netty.handler.ssl.PemValue].retain()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].retain()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].retain()"
    - "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].retain()"
    - "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].retain()"
    - "[io.netty.channel.DefaultFileRegion].retain()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].retain()"
    - "[io.netty.handler.ssl.OpenSslPrivateKey].retain()"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].retain()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].retain()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].retain()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].retain()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].retain()"
    - "[io.netty.handler.ssl.PemPrivateKey].retain()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$2].retain()"
    - "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].retain()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].retain()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].retain()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].retain()"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].retain()"
    - "[io.netty.util.AbstractReferenceCounted].retain()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].retain()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].retain()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].retain()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].retain()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].retain()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].retain()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$1].retain()"
    functionUses: 1
    ICount: 4
    EdgeCount: 31
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:491,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].retain(int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.ReferenceCounted"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:497,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].touch()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 502
    functionLinenumberEnd: 505
    functionDepth: 0
    returnType: "io.netty.util.ReferenceCounted"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.PemPrivateKey].touch()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].touch()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].touch()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].touch()"
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].touch()"
    - "[io.netty.channel.DefaultFileRegion].touch()"
    - "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].touch()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].touch()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].touch()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].touch()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].touch()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].touch()"
    - "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].touch()"
    - "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].touch()"
    - "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].touch()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].touch()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].touch()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$1].touch()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].touch()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].touch()"
    - "[io.netty.handler.ssl.OpenSslPrivateKey].touch()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].touch()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].touch()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].touch()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].touch()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].touch()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].touch()"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].touch()"
    - "[io.netty.util.AbstractReferenceCounted].touch()"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].touch()"
    - "[io.netty.handler.ssl.PemValue].touch()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$2].touch()"
    functionUses: 1
    ICount: 4
    EdgeCount: 32
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:503,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 508
    functionLinenumberEnd: 511
    functionDepth: 0
    returnType: "io.netty.util.ReferenceCounted"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].touch(java.lang.Object)"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].touch(java.lang.Object)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].touch(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].touch(java.lang.Object)"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$2].touch(java.lang.Object)"
    - "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].touch(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslPrivateKey$OpenSslPrivateKeyMaterial].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].touch(java.lang.Object)"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].touch(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].touch(java.lang.Object)"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].touch(java.lang.Object)"
    - "[io.netty.channel.DefaultFileRegion].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].touch(java.lang.Object)"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].touch(java.lang.Object)"
    - "[io.netty.handler.ssl.PemPrivateKey].touch(java.lang.Object)"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].touch(java.lang.Object)"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].touch(java.lang.Object)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$1].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].touch(java.lang.Object)"
    - "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].touch(java.lang.Object)"
    - "[io.netty.handler.ssl.PemValue].touch(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].touch(java.lang.Object)"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].touch(java.lang.Object)"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$1].touch(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].touch(java.lang.Object)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].touch(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].touch(java.lang.Object)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1].touch(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslPrivateKey].touch(java.lang.Object)"
    - "[io.netty.util.ReferenceCounted].touch(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 34
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:509,1"
      Dst: "[io.netty.util.ReferenceCounted].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].release()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 514
    functionLinenumberEnd: 516
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].release()"
    - "[io.netty.util.AbstractReferenceCounted].release()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].release()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$2].release()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$1].release()"
    functionUses: 2
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:515,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].release(int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 519
    functionLinenumberEnd: 521
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].release(int)"
    - "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].release(int)"
    - "[io.netty.util.AbstractReferenceCounted].release(int)"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$1].release(int)"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$2].release(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:520,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getApplicationProtocol()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getHandshakeApplicationProtocol()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getHandshakeSession()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.SSLSession"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:541,1"
      Dst: "[java.lang.Enum].ordinal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 562
    functionLinenumberEnd: 580
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap].remove(long)"
    - "[io.netty.internal.tcnative.SSL].freeSSL(long)"
    - "[io.netty.internal.tcnative.SSL].clearError()"
    - "[io.netty.handler.ssl.OpenSslEngineMap].remove(long)"
    functionUses: 9
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:563"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:578"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:577"
        BranchSideFuncs:
        - "clearError()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:568"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:571"
        BranchSideFuncs:
        - "remove(long)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:570"
        BranchSideFuncs:
        - "freeSSL(long)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:569,1"
      Dst: "[io.netty.handler.ssl.OpenSslEngineMap].remove(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:571,1"
      Dst: "[io.netty.internal.tcnative.SSL].freeSSL(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:578,1"
      Dst: "[io.netty.internal.tcnative.SSL].clearError()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].writePlaintextData(java.nio.ByteBuffer,int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.Buffer].position()"
    - "[java.nio.Buffer].limit()"
    - "[java.nio.ByteBuffer].isDirect()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].bufferAddress(java.nio.ByteBuffer)"
    - "[io.netty.internal.tcnative.SSL].writeToSSL(long,long,int)"
    - "[java.nio.ByteBuffer].position(int)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.handler.ssl.OpenSsl].memoryAddress(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:591"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:597"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:596"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:593"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:614"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:613"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:605"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:608"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:607"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:587,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:588,1"
      Dst: "[java.nio.Buffer].limit()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:591,1"
      Dst: "[java.nio.ByteBuffer].isDirect()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:592,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].bufferAddress(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:592,1"
      Dst: "[io.netty.internal.tcnative.SSL].writeToSSL(long,long,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:594,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:597,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:599,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:601,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:604,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].memoryAddress(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:611,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].bufferAddress(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2247
    functionLinenumberEnd: 2253
    functionDepth: 3
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.util.internal.PlatformDependent].directBufferAddress(java.nio.ByteBuffer)"
    - "[io.netty.internal.tcnative.Buffer].address(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].isDirect()"
    functionUses: 2
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2248"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2249"
        BranchSideFuncs:
        - "hasUnsafe()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2248"
        BranchSideFuncs:
        - "hasUnsafe()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2248"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2249"
        BranchSideFuncs:
        - "hasUnsafe()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2248"
        BranchSideFuncs:
        - "hasUnsafe()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2249"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2252"
        BranchSideFuncs:
        - "directBufferAddress(java.nio.ByteBuffer)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2251"
        BranchSideFuncs:
        - "address(java.nio.ByteBuffer)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2248,1"
      Dst: "[java.nio.ByteBuffer].isDirect()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2248,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2249,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2250,1"
      Dst: "[io.netty.util.internal.PlatformDependent].directBufferAddress(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2252,1"
      Dst: "[io.netty.internal.tcnative.Buffer].address(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].bioSetFd(int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 617
    functionLinenumberEnd: 622
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.internal.tcnative.SSL].bioSetFd(long,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:618"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:621"
        BranchSideFuncs:
        - "bioSetFd(long,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:620"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:618,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:619,1"
      Dst: "[io.netty.internal.tcnative.SSL].bioSetFd(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].writeEncryptedData(java.nio.ByteBuffer,int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 626
    functionLinenumberEnd: 648
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SSL].bioSetByteBuffer(long,long,int,boolean)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].bufferAddress(java.nio.ByteBuffer)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.handler.ssl.OpenSsl].memoryAddress(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].isDirect()"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - "[java.nio.Buffer].limit()"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].position(int)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 28
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:628"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:631"
        BranchSideFuncs:
        - "bufferAddress(java.nio.ByteBuffer)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:630"
        BranchSideFuncs:
        - "memoryAddress(io.netty.buffer.ByteBuf)"
        - "bioSetByteBuffer(long,long,int,boolean)"
        - "writeBytes(java.nio.ByteBuffer)"
        - "directBuffer(int)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:627,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:628,1"
      Dst: "[java.nio.ByteBuffer].isDirect()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:629,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].bufferAddress(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:629,1"
      Dst: "[io.netty.internal.tcnative.SSL].bioSetByteBuffer(long,long,int,boolean)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:631,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:633,1"
      Dst: "[java.nio.Buffer].limit()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:634,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:635,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:637,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:640,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].memoryAddress(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:643,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:644,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].readPlaintextData(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 654
    functionLinenumberEnd: 678
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].bufferAddress(java.nio.ByteBuffer)"
    - "[io.netty.internal.tcnative.SSL].readFromSSL(long,long,int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].maxEncryptedPacketLength0()"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int)"
    - "[io.netty.handler.ssl.OpenSsl].memoryAddress(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].isDirect()"
    - "[java.nio.Buffer].limit()"
    - "[java.nio.ByteBuffer].position(int)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 39
    EdgeCount: 60
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:656"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:662"
        BranchSideFuncs:
        - "bufferAddress(java.nio.ByteBuffer)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:661"
        BranchSideFuncs:
        - "memoryAddress(io.netty.buffer.ByteBuf)"
        - "min(int,int)"
        - "maxEncryptedPacketLength0()"
        - "readFromSSL(long,long,int)"
        - "directBuffer(int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:658"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:677"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:676"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:667"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:673"
        BranchSideFuncs:
        - "readerIndex()"
        - "getBytes(int,java.nio.ByteBuffer)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:672"
        BranchSideFuncs:
        - "release()"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:655,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:656,1"
      Dst: "[java.nio.ByteBuffer].isDirect()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:657,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].bufferAddress(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:657,1"
      Dst: "[java.nio.Buffer].limit()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:657,1"
      Dst: "[io.netty.internal.tcnative.SSL].readFromSSL(long,long,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:659,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:663,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].maxEncryptedPacketLength0()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:663,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:664,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:666,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].memoryAddress(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:668,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:669,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:669,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:673,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].maxWrapOverhead()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].calculateMaxLengthForWrap(int,int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 707
    functionLinenumberEnd: 709
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(long,long)"
    functionUses: 1
    ICount: 14
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:708,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].sslPending()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 711
    functionLinenumberEnd: 713
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].sslPending0()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:712,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].sslPending0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].sslPending0()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 731
    functionLinenumberEnd: 733
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SSL].sslPending(long)"
    functionUses: 3
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:732"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:731"
        BranchSideFuncs:
        - "sslPending(long)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:732,1"
      Dst: "[io.netty.internal.tcnative.SSL].sslPending(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isBytesAvailableEnoughForWrap(int,int,int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:736"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:735"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].wrap(java.nio.ByteBuffer[],int,int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 4
    argTypes:
    - "java.nio.ByteBuffer[]"
    - "int"
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.nio.Buffer].isReadOnly()"
    - "[java.nio.ReadOnlyBufferException].<init>()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isOutboundDone()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isInboundDone()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[java.nio.ByteBuffer].isDirect()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].bufferAddress(java.nio.ByteBuffer)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.Buffer].remaining()"
    - "[io.netty.internal.tcnative.SSL].bioSetByteBuffer(long,long,int,boolean)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - "[io.netty.handler.ssl.OpenSsl].memoryAddress(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.internal.tcnative.SSL].bioLengthByteBuffer(long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isBytesAvailableEnoughForWrap(int,int,int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getHandshakeStatus()"
    - "[javax.net.ssl.SSLEngineResult].<init>(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - "[io.netty.internal.tcnative.SSL].bioClearByteBuffer(long)"
    - "[java.nio.ByteBuffer].position(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.internal.tcnative.SSL].bioFlushByteBuffer(long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].doSSLShutdown()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handshakeException()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handshake()"
    - "[io.netty.internal.tcnative.SSL].bioLengthNonApplication(long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getHandshakeStatus(int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].mayFinishHandshake(javax.net.ssl.SSLEngineResult$HandshakeStatus)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - "[javax.net.ssl.SSLException].<init>(java.lang.Throwable)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].writePlaintextData(java.nio.ByteBuffer,int)"
    - "[io.netty.internal.tcnative.SSL].getError(long,int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].closeAll()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdownWithError(java.lang.String,int)"
    functionUses: 0
    ICount: 904
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:746"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:747"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:746"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:746"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:752"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:751"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:752"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:756"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:755"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:757"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:762"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:761"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:759"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:759"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:758"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:759"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:759"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:758"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:766"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:770"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:769"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:778"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:791"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:797"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:807"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:808"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:816"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:828"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:843"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:847"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:851"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:851"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:857"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:859"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:864"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:871"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:873"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:875"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:878"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:883"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:883"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:893"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:900"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:900"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:905"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:910"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:919"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:922"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:927"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:937"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:953"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:956"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:956"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:961"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:963"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:971"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:972"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:979"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:984"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:997"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1003"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1003"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1003"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1017"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1021"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:743,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:747,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:747,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:747,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:747,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:747,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:752,1"
      Dst: "[java.nio.Buffer].isReadOnly()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:753,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:757,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isOutboundDone()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:759,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isInboundDone()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:759,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:766,1"
      Dst: "[java.nio.ByteBuffer].isDirect()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:767,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].bufferAddress(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:767,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:767,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:767,1"
      Dst: "[io.netty.internal.tcnative.SSL].bioSetByteBuffer(long,long,int,boolean)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:770,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:771,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].memoryAddress(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:771,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:775,1"
      Dst: "[io.netty.internal.tcnative.SSL].bioLengthByteBuffer(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:784,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isBytesAvailableEnoughForWrap(int,int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getHandshakeStatus()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:785,1"
      Dst: "[javax.net.ssl.SSLEngineResult].<init>(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1016,1"
      Dst: "[io.netty.internal.tcnative.SSL].bioClearByteBuffer(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1018,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1020,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1022,1"
      Dst: "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1023,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:790,1"
      Dst: "[io.netty.internal.tcnative.SSL].bioFlushByteBuffer(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:792,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:797,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].doSSLShutdown()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:829,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:834,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handshakeException()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:837,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handshake()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:853,1"
      Dst: "[io.netty.internal.tcnative.SSL].bioLengthNonApplication(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:853,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getHandshakeStatus(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:851,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].mayFinishHandshake(javax.net.ssl.SSLEngineResult$HandshakeStatus)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:876,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:900,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:913,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:916,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:931,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:931,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].writePlaintextData(java.nio.ByteBuffer,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:960,1"
      Dst: "[io.netty.internal.tcnative.SSL].getError(long,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:964,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].closeAll()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1002,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1010,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdownWithError(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 233
    CyclomaticComplexity: 66
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isOutboundDone()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1594
    functionLinenumberEnd: 1596
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SSL].bioLengthNonApplication(long)"
    functionUses: 4
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1595"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1595"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1594"
        BranchSideFuncs:
        - "bioLengthNonApplication(long)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1595"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1595,1"
      Dst: "[io.netty.internal.tcnative.SSL].bioLengthNonApplication(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isInboundDone()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1539
    functionLinenumberEnd: 1541
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getHandshakeStatus()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2019
    functionLinenumberEnd: 2028
    functionDepth: 2
    returnType: "javax.net.ssl.SSLEngineResult$HandshakeStatus"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].needPendingStatus()"
    - "[io.netty.internal.tcnative.SSL].bioLengthNonApplication(long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].pendingStatus(int)"
    functionUses: 4
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2020"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2027"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2026"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2021"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2024"
        BranchSideFuncs:
        - "bioLengthNonApplication(long)"
        - "pendingStatus(int)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2020,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].needPendingStatus()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2025,1"
      Dst: "[io.netty.internal.tcnative.SSL].bioLengthNonApplication(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2025,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].pendingStatus(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].needPendingStatus()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2042
    functionLinenumberEnd: 2045
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isInboundDone()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isOutboundDone()"
    functionUses: 1
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2043"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:-1"
        BranchSideFuncs:
        - "isInboundDone()"
        - "isOutboundDone()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2043"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:-1"
        BranchSideFuncs:
        - "isInboundDone()"
        - "isOutboundDone()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2043"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2043"
        BranchSideFuncs:
        - "isInboundDone()"
        - "isOutboundDone()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2042"
        BranchSideFuncs:
        - "isDestroyed()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2044"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2042"
        BranchSideFuncs:
        - "isDestroyed()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2044"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2043,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2044,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isInboundDone()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2044,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isOutboundDone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].pendingStatus(int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1882
    functionLinenumberEnd: 1884
    functionDepth: 0
    returnType: "javax.net.ssl.SSLEngineResult$HandshakeStatus"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1883"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1882"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 3
    argTypes:
    - "javax.net.ssl.SSLEngineResult$HandshakeStatus"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].mayFinishHandshake(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1057,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].mayFinishHandshake(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1057,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].mayFinishHandshake(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1996
    functionLinenumberEnd: 1999
    functionDepth: 7
    returnType: "javax.net.ssl.SSLEngineResult$HandshakeStatus"
    argCount: 3
    argTypes:
    - "javax.net.ssl.SSLEngineResult$HandshakeStatus"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getHandshakeStatus()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].mayFinishHandshake(javax.net.ssl.SSLEngineResult$HandshakeStatus)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handshake()"
    functionUses: 1
    ICount: 19
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1997"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1997"
        BranchSideFuncs:
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1996"
        BranchSideFuncs:
        - "mayFinishHandshake(javax.net.ssl.SSLEngineResult$HandshakeStatus)"
        - "getHandshakeStatus()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1997"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1998"
        BranchSideFuncs:
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1997"
        BranchSideFuncs:
        - "handshake()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1997"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1997"
        BranchSideFuncs:
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1996"
        BranchSideFuncs:
        - "mayFinishHandshake(javax.net.ssl.SSLEngineResult$HandshakeStatus)"
        - "getHandshakeStatus()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1997"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1997"
        BranchSideFuncs:
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1996"
        BranchSideFuncs:
        - "mayFinishHandshake(javax.net.ssl.SSLEngineResult$HandshakeStatus)"
        - "getHandshakeStatus()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1997"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1997"
        BranchSideFuncs:
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1996"
        BranchSideFuncs:
        - "mayFinishHandshake(javax.net.ssl.SSLEngineResult$HandshakeStatus)"
        - "getHandshakeStatus()"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1998,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handshake()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1997,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getHandshakeStatus()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1997,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].mayFinishHandshake(javax.net.ssl.SSLEngineResult$HandshakeStatus)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handshake()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1924
    functionLinenumberEnd: 1993
    functionDepth: 5
    returnType: "javax.net.ssl.SSLEngineResult$HandshakeStatus"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].checkEngineClosed()"
    - "[io.netty.internal.tcnative.SSL].doHandshake(long)"
    - "[io.netty.internal.tcnative.SSL].clearError()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handshakeException()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$DefaultOpenSslEngineMap].add(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - "[javax.net.ssl.SSLEngine].getPeerHost()"
    - "[javax.net.ssl.SSLEngine].getPeerPort()"
    - "[io.netty.handler.ssl.OpenSslServerContext].sessionContext()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslServerContext].sessionContext()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext].sessionContext()"
    - "[io.netty.handler.ssl.OpenSslClientContext].sessionContext()"
    - "[io.netty.handler.ssl.OpenSslSessionContext].setSessionFromCache(java.lang.String,int,long)"
    - "[java.lang.System].currentTimeMillis()"
    - "[io.netty.internal.tcnative.SSL].getError(long,int)"
    - "[io.netty.internal.tcnative.SSL].bioLengthNonApplication(long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].pendingStatus(int)"
    - "[io.netty.internal.tcnative.SSL].getLastErrorNumber()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].needWrapAgain(int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdownWithError(java.lang.String,int)"
    - "[io.netty.internal.tcnative.SSL].getCipherForSSL(long)"
    - "[io.netty.internal.tcnative.SSL].getSessionId(long)"
    - "[io.netty.internal.tcnative.SSL].getVersion(long)"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].handshakeFinished(byte[],java.lang.String,java.lang.String,byte[],byte[][],long,long)"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].handshakeFinished(byte[],java.lang.String,java.lang.String,byte[],byte[][],long,long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].handshakeFinished(byte[],java.lang.String,java.lang.String,byte[],byte[][],long,long)"
    - "[io.netty.internal.tcnative.SSL].getPeerCertChain(long)"
    - "[io.netty.internal.tcnative.SSL].getPeerCertificate(long)"
    - "[io.netty.internal.tcnative.SSL].getTime(long)"
    - "[io.netty.handler.ssl.SslContext].sessionTimeout()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].selectApplicationProtocol()"
    - "[io.netty.handler.ssl.OpenSslEngineMap].add(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].sessionContext()"
    - "[io.netty.handler.ssl.OpenSslSession].handshakeFinished(byte[],java.lang.String,java.lang.String,byte[],byte[][],long,long)"
    functionUses: 4
    ICount: 93
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1925"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1928"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1927"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1928"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1932"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1931"
        BranchSideFuncs:
        - "checkEngineClosed()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1934"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1944"
        BranchSideFuncs:
        - "add(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1937"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1940"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1947"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1952"
        BranchSideFuncs:
        - "getPeerHost()"
        - "sessionContext()"
        - "getPeerPort()"
        - "setSessionFromCache(java.lang.String,int,long)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1951"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1952"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1956"
        BranchSideFuncs:
        - "currentTimeMillis()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1955"
        BranchSideFuncs:
        - "doHandshake(long)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1957"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1984"
        BranchSideFuncs:
        - "getError(long,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1983"
        BranchSideFuncs:
        - "bioLengthNonApplication(long)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1959"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1960"
        BranchSideFuncs:
        - "pendingStatus(int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1959"
        BranchSideFuncs:
        - "pendingStatus(int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1959"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1963"
        BranchSideFuncs:
        - "pendingStatus(int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1962"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1963"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1965"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1963"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1965"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1963"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1968"
        BranchSideFuncs:
        - "needWrapAgain(int)"
        - "getLastErrorNumber()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1969"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1975"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1976"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1981"
        BranchSideFuncs:
        - "handshakeException()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1980"
        BranchSideFuncs:
        - "shutdownWithError(java.lang.String,int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1984"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1988"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1987"
        BranchSideFuncs:
        - "sessionTimeout()"
        - "getCipherForSSL(long)"
        - "getSessionId(long)"
        - "getPeerCertChain(long)"
        - "getVersion(long)"
        - "handshakeFinished(byte[],java.lang.String,java.lang.String,byte[],byte[][],long,long)"
        - "getPeerCertificate(long)"
        - "selectApplicationProtocol()"
        - "getTime(long)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1932,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].checkEngineClosed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1937,1"
      Dst: "[io.netty.internal.tcnative.SSL].doHandshake(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1939,1"
      Dst: "[io.netty.internal.tcnative.SSL].clearError()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1941,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handshakeException()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1945,1"
      Dst: "[io.netty.handler.ssl.OpenSslEngineMap].add(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1948,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].sessionContext()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1948,1"
      Dst: "[javax.net.ssl.SSLEngine].getPeerHost()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1948,1"
      Dst: "[javax.net.ssl.SSLEngine].getPeerPort()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1948,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionContext].setSessionFromCache(java.lang.String,int,long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1953,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1958,1"
      Dst: "[io.netty.internal.tcnative.SSL].getError(long,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1960,1"
      Dst: "[io.netty.internal.tcnative.SSL].bioLengthNonApplication(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1960,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].pendingStatus(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1969,1"
      Dst: "[io.netty.internal.tcnative.SSL].getLastErrorNumber()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1969,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].needWrapAgain(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1981,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdownWithError(java.lang.String,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1988,1"
      Dst: "[io.netty.internal.tcnative.SSL].getSessionId(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1988,1"
      Dst: "[io.netty.internal.tcnative.SSL].getCipherForSSL(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1988,1"
      Dst: "[io.netty.internal.tcnative.SSL].getVersion(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1989,1"
      Dst: "[io.netty.internal.tcnative.SSL].getPeerCertificate(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1989,1"
      Dst: "[io.netty.internal.tcnative.SSL].getPeerCertChain(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1990,1"
      Dst: "[io.netty.internal.tcnative.SSL].getTime(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1990,1"
      Dst: "[io.netty.handler.ssl.SslContext].sessionTimeout()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1988,1"
      Dst: "[io.netty.handler.ssl.OpenSslSession].handshakeFinished(byte[],java.lang.String,java.lang.String,byte[],byte[][],long,long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1991,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].selectApplicationProtocol()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 28
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].checkEngineClosed()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1875
    functionLinenumberEnd: 1880
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1876"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1879"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1878"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1876,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1877,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handshakeException()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1894
    functionLinenumberEnd: 1910
    functionDepth: 1
    returnType: "javax.net.ssl.SSLEngineResult$HandshakeStatus"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SSL].bioLengthNonApplication(long)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 2
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1895"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1899"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1901"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1902"
        BranchSideFuncs:
        - "shutdown()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1901"
        BranchSideFuncs:
        - "shutdown()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1901"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1902"
        BranchSideFuncs:
        - "shutdown()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1901"
        BranchSideFuncs:
        - "shutdown()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1904"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1907"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1906"
        BranchSideFuncs:
        - "initCause(java.lang.Throwable)"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1895,1"
      Dst: "[io.netty.internal.tcnative.SSL].bioLengthNonApplication(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1901,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1903,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1907,1"
      Dst: "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1908,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].needWrapAgain(int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1350
    functionLinenumberEnd: 1368
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SSL].bioLengthNonApplication(long)"
    - "[io.netty.internal.tcnative.SSL].getErrorString(long)"
    - "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    - "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    - "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    - "[io.netty.internal.tcnative.SSL].clearError()"
    functionUses: 2
    ICount: 28
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1351"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1366"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1355"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1353"
        BranchSideFuncs:
        - "getErrorString(long)"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1357"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1360"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1359"
        BranchSideFuncs:
        - "addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1351,1"
      Dst: "[io.netty.internal.tcnative.SSL].bioLengthNonApplication(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1354,1"
      Dst: "[io.netty.internal.tcnative.SSL].getErrorString(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1355,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1355,1"
      Dst: "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1360,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1364,1"
      Dst: "[io.netty.internal.tcnative.SSL].clearError()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdownWithError(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1069
    functionLinenumberEnd: 1071
    functionDepth: 2
    returnType: "javax.net.ssl.SSLException"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SSL].getLastErrorNumber()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdownWithError(java.lang.String,int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1070,1"
      Dst: "[io.netty.internal.tcnative.SSL].getLastErrorNumber()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1070,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdownWithError(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdownWithError(java.lang.String,int,int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1073
    functionLinenumberEnd: 1093
    functionDepth: 1
    returnType: "javax.net.ssl.SSLException"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SSL].getErrorString(long)"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    - "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 33
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1075"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1080"
        BranchSideFuncs:
        - "shutdown()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1082"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1086"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1085"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1088"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1092"
        BranchSideFuncs:
        - "initCause(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1091"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1074,1"
      Dst: "[io.netty.internal.tcnative.SSL].getErrorString(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1075,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1077,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1076,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1081,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1083,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1086,1"
      Dst: "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1089,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].selectApplicationProtocol()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2258
    functionLinenumberEnd: 2295
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$2].selectedListenerFailureBehavior()"
    - "[io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator].selectedListenerFailureBehavior()"
    - "[io.netty.handler.ssl.OpenSslNpnApplicationProtocolNegotiator].selectedListenerFailureBehavior()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$2].protocols()"
    - "[io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.OpenSslNpnApplicationProtocolNegotiator].protocols()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.ssl.OpenSslNpnApplicationProtocolNegotiator].protocol()"
    - "[io.netty.handler.ssl.OpenSslDefaultApplicationProtocolNegotiator].protocol()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$2].protocol()"
    - "[io.netty.internal.tcnative.SSL].getAlpnSelected(long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].selectApplicationProtocol(java.util.List,io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior,java.lang.String)"
    - "[io.netty.internal.tcnative.SSL].getNextProtoNegotiated(long)"
    - "[java.lang.Error].<init>()"
    - "[io.netty.handler.ssl.OpenSslApplicationProtocolNegotiator].selectedListenerFailureBehavior()"
    - "[io.netty.handler.ssl.ApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.OpenSslApplicationProtocolNegotiator].protocol()"
    functionUses: 1
    ICount: 38
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2269"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2294"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2293"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2276"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2294"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2293"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2283"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2286"
        BranchSideFuncs:
        - "getNextProtoNegotiated(long)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2285"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2286"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2294"
        BranchSideFuncs:
        - "selectApplicationProtocol(java.util.List,io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior,java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2293"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2259,1"
      Dst: "[io.netty.handler.ssl.OpenSslApplicationProtocolNegotiator].selectedListenerFailureBehavior()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2260,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolNegotiator].protocols()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2262,1"
      Dst: "[io.netty.handler.ssl.OpenSslApplicationProtocolNegotiator].protocol()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2262,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2268,1"
      Dst: "[io.netty.internal.tcnative.SSL].getAlpnSelected(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2270,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].selectApplicationProtocol(java.util.List,io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2275,1"
      Dst: "[io.netty.internal.tcnative.SSL].getNextProtoNegotiated(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2292,1"
      Dst: "[java.lang.Error].<init>()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].selectApplicationProtocol(java.util.List,io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2298
    functionLinenumberEnd: 2311
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.util.List"
    - "io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.util.ArrayList].contains(java.lang.Object)"
    - "[java.util.Vector].contains(java.lang.Object)"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[jaz.Zer].contains(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].contains(java.lang.Object)"
    - "[java.util.LinkedList].contains(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.List].size()"
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.util.List].get(int)"
    functionUses: 3
    ICount: 31
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2299"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2302"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2301"
        BranchSideFuncs:
        - "size()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2303"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2304"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2303"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2303"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2304"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2303"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2304"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2307"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2306"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2307"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2310"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2309"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2302,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2303,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2304,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2308,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2310,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2310,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2310,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2310,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].mayFinishHandshake(javax.net.ssl.SSLEngineResult$HandshakeStatus)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2002
    functionLinenumberEnd: 2015
    functionDepth: 6
    returnType: "javax.net.ssl.SSLEngineResult$HandshakeStatus"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLEngineResult$HandshakeStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handshake()"
    - "[io.netty.internal.tcnative.SSL].bioLengthNonApplication(long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    functionUses: 1
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2003"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2014"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2013"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2004"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2008"
        BranchSideFuncs:
        - "isDestroyed()"
        - "bioLengthNonApplication(long)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2009"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2013"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2009"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2013"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2007,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handshake()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2009,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2009,1"
      Dst: "[io.netty.internal.tcnative.SSL].bioLengthNonApplication(long)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1029
    functionLinenumberEnd: 1031
    functionDepth: 2
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 3
    argTypes:
    - "javax.net.ssl.SSLEngineResult$HandshakeStatus"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1030,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1037
    functionLinenumberEnd: 1053
    functionDepth: 1
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 4
    argTypes:
    - "javax.net.ssl.SSLEngineResult$Status"
    - "javax.net.ssl.SSLEngineResult$HandshakeStatus"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isOutboundDone()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isInboundDone()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - "[javax.net.ssl.SSLEngineResult].<init>(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    functionUses: 4
    ICount: 21
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1038"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1048"
        BranchSideFuncs:
        - "isInboundDone()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1047"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1039"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1045"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1048"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1051"
        BranchSideFuncs:
        - "<init>(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1038,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isOutboundDone()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1039,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isInboundDone()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1044,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1046,1"
      Dst: "[javax.net.ssl.SSLEngineResult].<init>(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].doSSLShutdown()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1566
    functionLinenumberEnd: 1589
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SSL].isInInit(long)"
    - "[io.netty.internal.tcnative.SSL].shutdownSSL(long)"
    - "[io.netty.internal.tcnative.SSL].getError(long,int)"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.internal.tcnative.SSL].getLastErrorNumber()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.internal.tcnative.SSL].getErrorString(long)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - "[io.netty.internal.tcnative.SSL].clearError()"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 27
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1567"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1573"
        BranchSideFuncs:
        - "shutdownSSL(long)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1575"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1588"
        BranchSideFuncs:
        - "getError(long,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1587"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1577"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1578"
        BranchSideFuncs:
        - "isDebugEnabled()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1577"
        BranchSideFuncs:
        - "isDebugEnabled()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1577"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1586"
        BranchSideFuncs:
        - "isDebugEnabled()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1585"
        BranchSideFuncs:
        - "clearError()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1578"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1583"
        BranchSideFuncs:
        - "getLastErrorNumber()"
        - "valueOf(int)"
        - "getErrorString(long)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1582"
        BranchSideFuncs:
        - "shutdown()"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1567,1"
      Dst: "[io.netty.internal.tcnative.SSL].isInInit(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1574,1"
      Dst: "[io.netty.internal.tcnative.SSL].shutdownSSL(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1576,1"
      Dst: "[io.netty.internal.tcnative.SSL].getError(long,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1578,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1579,1"
      Dst: "[io.netty.internal.tcnative.SSL].getLastErrorNumber()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1580,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1580,1"
      Dst: "[io.netty.internal.tcnative.SSL].getErrorString(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1580,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1583,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1586,1"
      Dst: "[io.netty.internal.tcnative.SSL].clearError()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getHandshakeStatus(int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "javax.net.ssl.SSLEngineResult$HandshakeStatus"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].needPendingStatus()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].pendingStatus(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2032"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2039"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2038"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2033"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2036"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2032,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].needPendingStatus()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2037,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].pendingStatus(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].closeAll()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1380
    functionLinenumberEnd: 1385
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].closeOutbound()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].closeInbound()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1382,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].closeOutbound()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1383,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].closeInbound()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].closeOutbound()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1544
    functionLinenumberEnd: 1561
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.internal.tcnative.SSL].getShutdown(long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].doSSLShutdown()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    functionUses: 5
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1545"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1549"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1548"
        BranchSideFuncs:
        - "isDestroyed()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1551"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1558"
        BranchSideFuncs:
        - "getShutdown(long)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1557"
        BranchSideFuncs:
        - "shutdown()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1551"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1558"
        BranchSideFuncs:
        - "getShutdown(long)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1557"
        BranchSideFuncs:
        - "shutdown()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1553"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1556"
        BranchSideFuncs:
        - "doSSLShutdown()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1555"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1551,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1552,1"
      Dst: "[io.netty.internal.tcnative.SSL].getShutdown(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1554,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].doSSLShutdown()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1558,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].closeInbound()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1519
    functionLinenumberEnd: 1537
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isOutboundDone()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1520"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1524"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1523"
        BranchSideFuncs:
        - "isOutboundDone()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1526"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1531"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1532"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1536"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1535"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1532"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1536"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1535"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1526,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isOutboundDone()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1529,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1533,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1062
    functionLinenumberEnd: 1064
    functionDepth: 8
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 4
    argTypes:
    - "javax.net.ssl.SSLEngineResult$Status"
    - "javax.net.ssl.SSLEngineResult$HandshakeStatus"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].mayFinishHandshake(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    functionUses: 8
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1063,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].mayFinishHandshake(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1063,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handleUnwrapException(int,int,javax.net.ssl.SSLException)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1096
    functionLinenumberEnd: 1103
    functionDepth: 6
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "javax.net.ssl.SSLException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SSL].getLastErrorNumber()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].sslReadErrorResult(int,int,int,int)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1098"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1102"
        BranchSideFuncs:
        - "sslReadErrorResult(int,int,int,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1101"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1097,1"
      Dst: "[io.netty.internal.tcnative.SSL].getLastErrorNumber()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1099,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].sslReadErrorResult(int,int,int,int)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].sslReadErrorResult(int,int,int,int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1371
    functionLinenumberEnd: 1378
    functionDepth: 5
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].needWrapAgain(int)"
    - "[javax.net.ssl.SSLEngineResult].<init>(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdownWithError(java.lang.String,int,int)"
    functionUses: 2
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1372"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1376"
        BranchSideFuncs:
        - "shutdownWithError(java.lang.String,int,int)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1372,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].needWrapAgain(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1375,1"
      Dst: "[javax.net.ssl.SSLEngineResult].<init>(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1377,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdownWithError(java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].unwrap(java.nio.ByteBuffer[],int,int,java.nio.ByteBuffer[],int,int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1109
    functionLinenumberEnd: 1344
    functionDepth: 9
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 6
    argTypes:
    - "java.nio.ByteBuffer[]"
    - "int"
    - "int"
    - "java.nio.ByteBuffer[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
    - "[java.nio.ReadOnlyBufferException].<init>()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isInboundDone()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isOutboundDone()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handshake()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].sslPending0()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - "[io.netty.handler.ssl.SslUtils].getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
    - "[io.netty.handler.ssl.NotSslRecordException].<init>(java.lang.String)"
    - "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getApplicationBufferSize()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].getApplicationBufferSize()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getApplicationBufferSize()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].tryExpandApplicationBufferSize(int)"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].tryExpandApplicationBufferSize(int)"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].tryExpandApplicationBufferSize(int)"
    - "[java.lang.Math].min(long,long)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.internal.tcnative.SSL].bioLengthByteBuffer(long)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].writeEncryptedData(java.nio.ByteBuffer,int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handleUnwrapException(int,int,javax.net.ssl.SSLException)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].readPlaintextData(java.nio.ByteBuffer)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - "[io.netty.internal.tcnative.SSL].getError(long,int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].closeAll()"
    - "[io.netty.internal.tcnative.SSL].getLastErrorNumber()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].sslReadErrorResult(int,int,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.internal.tcnative.SSL].bioClearByteBuffer(long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].rejectRemoteInitiatedRenegotiation()"
    - "[io.netty.internal.tcnative.SSL].getShutdown(long)"
    - "[java.nio.Buffer].isReadOnly()"
    - "[java.nio.Buffer].remaining()"
    - "[javax.net.ssl.SSLSession].getApplicationBufferSize()"
    - "[io.netty.handler.ssl.OpenSslSession].tryExpandApplicationBufferSize(int)"
    - "[java.nio.Buffer].hasRemaining()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].position(int)"
    functionUses: 1
    ICount: 378
    EdgeCount: 213
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1111"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1112"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1111"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1116"
        BranchSideFuncs:
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1118"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1119"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1118"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1118"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1123"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1122"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1125"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1133"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1132"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1127"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1113"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1112"
        BranchSideFuncs:
        - "writeEncryptedData(java.nio.ByteBuffer,int)"
        - "getError(long,int)"
        - "isDestroyed()"
        - "newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "min(int,int)"
        - "append(java.lang.String)"
        - "checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
        - "getApplicationBufferSize()"
        - "bioClearByteBuffer(long)"
        - "min(long,long)"
        - "tryExpandApplicationBufferSize(int)"
        - "rejectRemoteInitiatedRenegotiation()"
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "<init>()"
        - "isInboundDone()"
        - "sslPending0()"
        - "handleUnwrapException(int,int,javax.net.ssl.SSLException)"
        - "getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
        - "bioLengthByteBuffer(long)"
        - "release()"
        - "toString()"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "readPlaintextData(java.nio.ByteBuffer)"
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
        - "append(int)"
        - "getShutdown(long)"
        - "getLastErrorNumber()"
        - "isOutboundDone()"
        - "<init>(java.lang.String)"
        - "sslReadErrorResult(int,int,int,int)"
        - "closeAll()"
        - "handshake()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1135"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1140"
        BranchSideFuncs:
        - "writeEncryptedData(java.nio.ByteBuffer,int)"
        - "getError(long,int)"
        - "isDestroyed()"
        - "newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "min(int,int)"
        - "append(java.lang.String)"
        - "checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
        - "getApplicationBufferSize()"
        - "bioClearByteBuffer(long)"
        - "min(long,long)"
        - "tryExpandApplicationBufferSize(int)"
        - "rejectRemoteInitiatedRenegotiation()"
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "<init>()"
        - "isInboundDone()"
        - "sslPending0()"
        - "handleUnwrapException(int,int,javax.net.ssl.SSLException)"
        - "getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
        - "bioLengthByteBuffer(long)"
        - "release()"
        - "toString()"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "readPlaintextData(java.nio.ByteBuffer)"
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
        - "append(int)"
        - "getShutdown(long)"
        - "getLastErrorNumber()"
        - "isOutboundDone()"
        - "<init>(java.lang.String)"
        - "sslReadErrorResult(int,int,int,int)"
        - "closeAll()"
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1139"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1141"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1145"
        BranchSideFuncs:
        - "isDestroyed()"
        - "isOutboundDone()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1144"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1142"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1142"
        BranchSideFuncs:
        - "writeEncryptedData(java.nio.ByteBuffer,int)"
        - "getError(long,int)"
        - "isDestroyed()"
        - "newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "min(int,int)"
        - "append(java.lang.String)"
        - "checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
        - "getApplicationBufferSize()"
        - "bioClearByteBuffer(long)"
        - "min(long,long)"
        - "tryExpandApplicationBufferSize(int)"
        - "rejectRemoteInitiatedRenegotiation()"
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "<init>()"
        - "isInboundDone()"
        - "sslPending0()"
        - "handleUnwrapException(int,int,javax.net.ssl.SSLException)"
        - "getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
        - "bioLengthByteBuffer(long)"
        - "release()"
        - "toString()"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "readPlaintextData(java.nio.ByteBuffer)"
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
        - "append(int)"
        - "getShutdown(long)"
        - "getLastErrorNumber()"
        - "isOutboundDone()"
        - "<init>(java.lang.String)"
        - "sslReadErrorResult(int,int,int,int)"
        - "closeAll()"
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1141"
        BranchSideFuncs:
        - "isDestroyed()"
        - "isOutboundDone()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1142"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1142"
        BranchSideFuncs:
        - "writeEncryptedData(java.nio.ByteBuffer,int)"
        - "getError(long,int)"
        - "isDestroyed()"
        - "newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "min(int,int)"
        - "append(java.lang.String)"
        - "checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
        - "getApplicationBufferSize()"
        - "bioClearByteBuffer(long)"
        - "min(long,long)"
        - "tryExpandApplicationBufferSize(int)"
        - "rejectRemoteInitiatedRenegotiation()"
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "<init>()"
        - "isInboundDone()"
        - "sslPending0()"
        - "handleUnwrapException(int,int,javax.net.ssl.SSLException)"
        - "getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
        - "bioLengthByteBuffer(long)"
        - "release()"
        - "toString()"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "readPlaintextData(java.nio.ByteBuffer)"
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
        - "append(int)"
        - "getShutdown(long)"
        - "getLastErrorNumber()"
        - "isOutboundDone()"
        - "<init>(java.lang.String)"
        - "sslReadErrorResult(int,int,int,int)"
        - "closeAll()"
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1141"
        BranchSideFuncs:
        - "isDestroyed()"
        - "isOutboundDone()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1147"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1168"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1167"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1148"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1153"
        BranchSideFuncs:
        - "writeEncryptedData(java.nio.ByteBuffer,int)"
        - "getError(long,int)"
        - "isDestroyed()"
        - "newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "min(int,int)"
        - "append(java.lang.String)"
        - "checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
        - "getApplicationBufferSize()"
        - "bioClearByteBuffer(long)"
        - "min(long,long)"
        - "tryExpandApplicationBufferSize(int)"
        - "rejectRemoteInitiatedRenegotiation()"
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "<init>()"
        - "isInboundDone()"
        - "sslPending0()"
        - "handleUnwrapException(int,int,javax.net.ssl.SSLException)"
        - "getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
        - "bioLengthByteBuffer(long)"
        - "release()"
        - "toString()"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "readPlaintextData(java.nio.ByteBuffer)"
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
        - "append(int)"
        - "getShutdown(long)"
        - "getLastErrorNumber()"
        - "isOutboundDone()"
        - "<init>(java.lang.String)"
        - "sslReadErrorResult(int,int,int,int)"
        - "closeAll()"
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1152"
        BranchSideFuncs:
        - "handshake()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1155"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1159"
        BranchSideFuncs:
        - "newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1158"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1159"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1163"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1162"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1163"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1168"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1167"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1174"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1168"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1167"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1175"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1179"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1178"
        BranchSideFuncs:
        - "getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1180"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1184"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1183"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1185"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1202"
        BranchSideFuncs:
        - "writeEncryptedData(java.nio.ByteBuffer,int)"
        - "getError(long,int)"
        - "isDestroyed()"
        - "newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "min(int,int)"
        - "append(java.lang.String)"
        - "checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
        - "getApplicationBufferSize()"
        - "bioClearByteBuffer(long)"
        - "min(long,long)"
        - "tryExpandApplicationBufferSize(int)"
        - "rejectRemoteInitiatedRenegotiation()"
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "<init>()"
        - "isInboundDone()"
        - "sslPending0()"
        - "handleUnwrapException(int,int,javax.net.ssl.SSLException)"
        - "getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
        - "bioLengthByteBuffer(long)"
        - "release()"
        - "toString()"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "readPlaintextData(java.nio.ByteBuffer)"
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
        - "append(int)"
        - "getShutdown(long)"
        - "getLastErrorNumber()"
        - "isOutboundDone()"
        - "<init>(java.lang.String)"
        - "sslReadErrorResult(int,int,int,int)"
        - "closeAll()"
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1201"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1188"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1197"
        BranchSideFuncs:
        - "writeEncryptedData(java.nio.ByteBuffer,int)"
        - "getError(long,int)"
        - "isDestroyed()"
        - "newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "min(int,int)"
        - "append(java.lang.String)"
        - "checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
        - "getApplicationBufferSize()"
        - "bioClearByteBuffer(long)"
        - "min(long,long)"
        - "tryExpandApplicationBufferSize(int)"
        - "rejectRemoteInitiatedRenegotiation()"
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "<init>()"
        - "isInboundDone()"
        - "sslPending0()"
        - "handleUnwrapException(int,int,javax.net.ssl.SSLException)"
        - "getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
        - "bioLengthByteBuffer(long)"
        - "release()"
        - "toString()"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "readPlaintextData(java.nio.ByteBuffer)"
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
        - "append(int)"
        - "getShutdown(long)"
        - "getLastErrorNumber()"
        - "isOutboundDone()"
        - "<init>(java.lang.String)"
        - "sslReadErrorResult(int,int,int,int)"
        - "closeAll()"
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1196"
        BranchSideFuncs:
        - "tryExpandApplicationBufferSize(int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1202"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1207"
        BranchSideFuncs:
        - "writeEncryptedData(java.nio.ByteBuffer,int)"
        - "getError(long,int)"
        - "isDestroyed()"
        - "newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "min(int,int)"
        - "append(java.lang.String)"
        - "checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
        - "getApplicationBufferSize()"
        - "bioClearByteBuffer(long)"
        - "min(long,long)"
        - "tryExpandApplicationBufferSize(int)"
        - "rejectRemoteInitiatedRenegotiation()"
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "<init>()"
        - "isInboundDone()"
        - "sslPending0()"
        - "handleUnwrapException(int,int,javax.net.ssl.SSLException)"
        - "getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
        - "bioLengthByteBuffer(long)"
        - "release()"
        - "toString()"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "readPlaintextData(java.nio.ByteBuffer)"
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
        - "append(int)"
        - "getShutdown(long)"
        - "getLastErrorNumber()"
        - "isOutboundDone()"
        - "<init>(java.lang.String)"
        - "sslReadErrorResult(int,int,int,int)"
        - "closeAll()"
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1206"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1174"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1209"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1208"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1174"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1209"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1208"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1209"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1212"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1211"
        BranchSideFuncs:
        - "min(long,long)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1216"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1219"
        BranchSideFuncs:
        - "writeEncryptedData(java.nio.ByteBuffer,int)"
        - "getError(long,int)"
        - "isDestroyed()"
        - "newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "min(int,int)"
        - "append(java.lang.String)"
        - "checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
        - "getApplicationBufferSize()"
        - "bioClearByteBuffer(long)"
        - "min(long,long)"
        - "tryExpandApplicationBufferSize(int)"
        - "rejectRemoteInitiatedRenegotiation()"
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "<init>()"
        - "isInboundDone()"
        - "sslPending0()"
        - "handleUnwrapException(int,int,javax.net.ssl.SSLException)"
        - "getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
        - "bioLengthByteBuffer(long)"
        - "release()"
        - "toString()"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "readPlaintextData(java.nio.ByteBuffer)"
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
        - "append(int)"
        - "getShutdown(long)"
        - "getLastErrorNumber()"
        - "isOutboundDone()"
        - "<init>(java.lang.String)"
        - "sslReadErrorResult(int,int,int,int)"
        - "closeAll()"
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1218"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1216"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1219"
        BranchSideFuncs:
        - "writeEncryptedData(java.nio.ByteBuffer,int)"
        - "getError(long,int)"
        - "isDestroyed()"
        - "newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "min(int,int)"
        - "append(java.lang.String)"
        - "checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
        - "getApplicationBufferSize()"
        - "bioClearByteBuffer(long)"
        - "min(long,long)"
        - "tryExpandApplicationBufferSize(int)"
        - "rejectRemoteInitiatedRenegotiation()"
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "<init>()"
        - "isInboundDone()"
        - "sslPending0()"
        - "handleUnwrapException(int,int,javax.net.ssl.SSLException)"
        - "getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
        - "bioLengthByteBuffer(long)"
        - "release()"
        - "toString()"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "readPlaintextData(java.nio.ByteBuffer)"
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
        - "append(int)"
        - "getShutdown(long)"
        - "getLastErrorNumber()"
        - "isOutboundDone()"
        - "<init>(java.lang.String)"
        - "sslReadErrorResult(int,int,int,int)"
        - "closeAll()"
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1218"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1219"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1222"
        BranchSideFuncs:
        - "writeEncryptedData(java.nio.ByteBuffer,int)"
        - "getError(long,int)"
        - "isDestroyed()"
        - "newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "min(int,int)"
        - "append(java.lang.String)"
        - "checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
        - "getApplicationBufferSize()"
        - "bioClearByteBuffer(long)"
        - "min(long,long)"
        - "tryExpandApplicationBufferSize(int)"
        - "rejectRemoteInitiatedRenegotiation()"
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "<init>()"
        - "isInboundDone()"
        - "sslPending0()"
        - "handleUnwrapException(int,int,javax.net.ssl.SSLException)"
        - "getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
        - "bioLengthByteBuffer(long)"
        - "release()"
        - "toString()"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "readPlaintextData(java.nio.ByteBuffer)"
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
        - "append(int)"
        - "getShutdown(long)"
        - "getLastErrorNumber()"
        - "isOutboundDone()"
        - "<init>(java.lang.String)"
        - "sslReadErrorResult(int,int,int,int)"
        - "closeAll()"
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1221"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1219"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1222"
        BranchSideFuncs:
        - "writeEncryptedData(java.nio.ByteBuffer,int)"
        - "getError(long,int)"
        - "isDestroyed()"
        - "newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "min(int,int)"
        - "append(java.lang.String)"
        - "checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
        - "getApplicationBufferSize()"
        - "bioClearByteBuffer(long)"
        - "min(long,long)"
        - "tryExpandApplicationBufferSize(int)"
        - "rejectRemoteInitiatedRenegotiation()"
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "<init>()"
        - "isInboundDone()"
        - "sslPending0()"
        - "handleUnwrapException(int,int,javax.net.ssl.SSLException)"
        - "getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
        - "bioLengthByteBuffer(long)"
        - "release()"
        - "toString()"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "readPlaintextData(java.nio.ByteBuffer)"
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
        - "append(int)"
        - "getShutdown(long)"
        - "getLastErrorNumber()"
        - "isOutboundDone()"
        - "<init>(java.lang.String)"
        - "sslReadErrorResult(int,int,int,int)"
        - "closeAll()"
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1221"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1231"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1246"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1245"
        BranchSideFuncs:
        - "writeEncryptedData(java.nio.ByteBuffer,int)"
        - "min(int,int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1232"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1240"
        BranchSideFuncs:
        - "writeEncryptedData(java.nio.ByteBuffer,int)"
        - "getError(long,int)"
        - "isDestroyed()"
        - "newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "min(int,int)"
        - "append(java.lang.String)"
        - "checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
        - "getApplicationBufferSize()"
        - "bioClearByteBuffer(long)"
        - "min(long,long)"
        - "tryExpandApplicationBufferSize(int)"
        - "rejectRemoteInitiatedRenegotiation()"
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "<init>()"
        - "isInboundDone()"
        - "sslPending0()"
        - "handleUnwrapException(int,int,javax.net.ssl.SSLException)"
        - "getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
        - "bioLengthByteBuffer(long)"
        - "release()"
        - "toString()"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "readPlaintextData(java.nio.ByteBuffer)"
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
        - "append(int)"
        - "getShutdown(long)"
        - "getLastErrorNumber()"
        - "isOutboundDone()"
        - "<init>(java.lang.String)"
        - "sslReadErrorResult(int,int,int,int)"
        - "closeAll()"
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1239"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1235"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1227"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1226"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1257"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1267"
        BranchSideFuncs:
        - "writeEncryptedData(java.nio.ByteBuffer,int)"
        - "getError(long,int)"
        - "isDestroyed()"
        - "newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "min(int,int)"
        - "append(java.lang.String)"
        - "checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
        - "getApplicationBufferSize()"
        - "bioClearByteBuffer(long)"
        - "min(long,long)"
        - "tryExpandApplicationBufferSize(int)"
        - "rejectRemoteInitiatedRenegotiation()"
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "<init>()"
        - "isInboundDone()"
        - "sslPending0()"
        - "handleUnwrapException(int,int,javax.net.ssl.SSLException)"
        - "getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
        - "bioLengthByteBuffer(long)"
        - "release()"
        - "toString()"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "readPlaintextData(java.nio.ByteBuffer)"
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
        - "append(int)"
        - "getShutdown(long)"
        - "getLastErrorNumber()"
        - "isOutboundDone()"
        - "<init>(java.lang.String)"
        - "sslReadErrorResult(int,int,int,int)"
        - "closeAll()"
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1266"
        BranchSideFuncs:
        - "handleUnwrapException(int,int,javax.net.ssl.SSLException)"
        - "readPlaintextData(java.nio.ByteBuffer)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1259"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1256"
        BranchSideFuncs:
        - "writeEncryptedData(java.nio.ByteBuffer,int)"
        - "getError(long,int)"
        - "isDestroyed()"
        - "newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "min(int,int)"
        - "append(java.lang.String)"
        - "checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
        - "getApplicationBufferSize()"
        - "bioClearByteBuffer(long)"
        - "min(long,long)"
        - "tryExpandApplicationBufferSize(int)"
        - "rejectRemoteInitiatedRenegotiation()"
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "<init>()"
        - "isInboundDone()"
        - "sslPending0()"
        - "handleUnwrapException(int,int,javax.net.ssl.SSLException)"
        - "getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
        - "bioLengthByteBuffer(long)"
        - "release()"
        - "toString()"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "readPlaintextData(java.nio.ByteBuffer)"
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
        - "append(int)"
        - "getShutdown(long)"
        - "getLastErrorNumber()"
        - "isOutboundDone()"
        - "<init>(java.lang.String)"
        - "sslReadErrorResult(int,int,int,int)"
        - "closeAll()"
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1255"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1327"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1333"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1332"
        BranchSideFuncs:
        - "bioClearByteBuffer(long)"
        - "rejectRemoteInitiatedRenegotiation()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1327"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1333"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1332"
        BranchSideFuncs:
        - "bioClearByteBuffer(long)"
        - "rejectRemoteInitiatedRenegotiation()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1281"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1290"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1289"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1284"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1290"
        BranchSideFuncs:
        - "sslPending0()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1289"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1287"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1290"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1289"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1288"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1290"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1289"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1290"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1290"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1289"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1327"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1333"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1332"
        BranchSideFuncs:
        - "bioClearByteBuffer(long)"
        - "rejectRemoteInitiatedRenegotiation()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1293"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1327"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1326"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1293"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1290"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1289"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1327"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1333"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1332"
        BranchSideFuncs:
        - "bioClearByteBuffer(long)"
        - "rejectRemoteInitiatedRenegotiation()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1300"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1290"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1289"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1300"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1290"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1289"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1304"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1290"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1289"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1306"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1290"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1289"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1309"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1290"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1289"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1327"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1333"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1332"
        BranchSideFuncs:
        - "bioClearByteBuffer(long)"
        - "rejectRemoteInitiatedRenegotiation()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1311"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1290"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1289"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1311"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1290"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1289"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1311"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1290"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1289"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1314"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1290"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1289"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1327"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1333"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1332"
        BranchSideFuncs:
        - "bioClearByteBuffer(long)"
        - "rejectRemoteInitiatedRenegotiation()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1327"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1333"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1332"
        BranchSideFuncs:
        - "bioClearByteBuffer(long)"
        - "rejectRemoteInitiatedRenegotiation()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1323"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1327"
        BranchSideFuncs:
        - "getError(long,int)"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "getLastErrorNumber()"
        - "sslReadErrorResult(int,int,int,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1326"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1327"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1333"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1332"
        BranchSideFuncs:
        - "bioClearByteBuffer(long)"
        - "rejectRemoteInitiatedRenegotiation()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1327"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1331"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1330"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1327"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1330"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1329"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1338"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1342"
        BranchSideFuncs:
        - "closeAll()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1341"
        BranchSideFuncs:
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "isInboundDone()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1338"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1342"
        BranchSideFuncs:
        - "closeAll()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1341"
        BranchSideFuncs:
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "isInboundDone()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1342"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1342"
        BranchSideFuncs:
        - "writeEncryptedData(java.nio.ByteBuffer,int)"
        - "getError(long,int)"
        - "isDestroyed()"
        - "newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "min(int,int)"
        - "append(java.lang.String)"
        - "checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
        - "getApplicationBufferSize()"
        - "bioClearByteBuffer(long)"
        - "min(long,long)"
        - "tryExpandApplicationBufferSize(int)"
        - "rejectRemoteInitiatedRenegotiation()"
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "<init>()"
        - "isInboundDone()"
        - "sslPending0()"
        - "handleUnwrapException(int,int,javax.net.ssl.SSLException)"
        - "getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
        - "bioLengthByteBuffer(long)"
        - "release()"
        - "toString()"
        - "newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "readPlaintextData(java.nio.ByteBuffer)"
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
        - "append(int)"
        - "getShutdown(long)"
        - "getLastErrorNumber()"
        - "isOutboundDone()"
        - "<init>(java.lang.String)"
        - "sslReadErrorResult(int,int,int,int)"
        - "closeAll()"
        - "handshake()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1341"
        BranchSideFuncs:
        - "newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
        - "isInboundDone()"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1110,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1113,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1113,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1113,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1113,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1113,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1126,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1127,1"
      Dst: "[java.nio.Buffer].isReadOnly()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1128,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1130,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1141,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isInboundDone()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1142,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isOutboundDone()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1142,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1153,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handshake()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1156,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResult(javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1168,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].sslPending0()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1176,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResultMayFinishHandshake(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1179,1"
      Dst: "[io.netty.handler.ssl.SslUtils].getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1181,1"
      Dst: "[io.netty.handler.ssl.NotSslRecordException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1195,1"
      Dst: "[javax.net.ssl.SSLSession].getApplicationBufferSize()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1195,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1197,1"
      Dst: "[io.netty.handler.ssl.OpenSslSession].tryExpandApplicationBufferSize(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1212,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1216,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1241,1"
      Dst: "[io.netty.internal.tcnative.SSL].bioLengthByteBuffer(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1246,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1248,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].writeEncryptedData(java.nio.ByteBuffer,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1251,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handleUnwrapException(int,int,javax.net.ssl.SSLException)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1333,1"
      Dst: "[io.netty.internal.tcnative.SSL].bioClearByteBuffer(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1334,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].rejectRemoteInitiatedRenegotiation()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1257,1"
      Dst: "[java.nio.Buffer].hasRemaining()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1328,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1267,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].readPlaintextData(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1279,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1279,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1289,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].newResult(javax.net.ssl.SSLEngineResult$Status,javax.net.ssl.SSLEngineResult$HandshakeStatus,int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1299,1"
      Dst: "[io.netty.internal.tcnative.SSL].getError(long,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1307,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].closeAll()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1317,1"
      Dst: "[io.netty.internal.tcnative.SSL].getLastErrorNumber()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1317,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].sslReadErrorResult(int,int,int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1338,1"
      Dst: "[io.netty.internal.tcnative.SSL].getShutdown(long)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 129
    CyclomaticComplexity: 39
  - functionName: "[io.netty.util.internal.ObjectUtil].checkNotNullArrayParam(java.lang.Object,int,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ObjectUtil"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 4
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ObjectUtil:87"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectUtil:91"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.ObjectUtil:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectUtil:88,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.ObjectUtil:88,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:88,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.internal.ObjectUtil:88,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.ObjectUtil:88,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.IllegalArgumentException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslUtils].getEncryptedPacketLength(java.nio.ByteBuffer[],int)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 362
    functionLinenumberEnd: 384
    functionDepth: 4
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslUtils].getEncryptedPacketLength(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.ByteBuffer].duplicate()"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    - "[java.nio.Buffer].hasRemaining()"
    - "[java.nio.ByteBuffer].flip()"
    functionUses: 1
    ICount: 25
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:366"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:371"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslUtils:370"
        BranchSideFuncs:
        - "allocate(int)"
    - Branch String: "io.netty.handler.ssl.SslUtils:375"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:378"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslUtils:377"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:379"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:373"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:366,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.handler.ssl.SslUtils:367,1"
      Dst: "[io.netty.handler.ssl.SslUtils].getEncryptedPacketLength(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.SslUtils:371,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "io.netty.handler.ssl.SslUtils:374,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    - Src: "io.netty.handler.ssl.SslUtils:376,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.handler.ssl.SslUtils:376,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "io.netty.handler.ssl.SslUtils:378,1"
      Dst: "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.SslUtils:379,1"
      Dst: "[java.nio.Buffer].hasRemaining()"
    - Src: "io.netty.handler.ssl.SslUtils:382,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.SslUtils].getEncryptedPacketLength(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 386
    functionLinenumberEnd: 436
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslUtils].unsignedByte(byte)"
    - "[io.netty.handler.ssl.SslUtils].unsignedShortBE(java.nio.ByteBuffer,int)"
    - "[io.netty.handler.ssl.SslUtils].shortBE(java.nio.ByteBuffer,int)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].get(int)"
    - "[java.nio.ByteBuffer].getShort(int)"
    functionUses: 2
    ICount: 70
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:404"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:419"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:407"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:408"
        BranchSideFuncs:
        - "unsignedShortBE(java.nio.ByteBuffer,int)"
    - Branch String: "io.netty.handler.ssl.SslUtils:407"
      Branch Sides: []
    - Branch String: "io.netty.handler.ssl.SslUtils:410"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:419"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:420"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:434"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:422"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:-1"
        BranchSideFuncs:
        - "unsignedByte(byte)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:424"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:425"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:424"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:426"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:426"
        BranchSideFuncs:
        - "shortBE(java.nio.ByteBuffer,int)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:425"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:428"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:435"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslUtils:434"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:388,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.handler.ssl.SslUtils:391,1"
      Dst: "[java.nio.ByteBuffer].get(int)"
    - Src: "io.netty.handler.ssl.SslUtils:391,1"
      Dst: "[io.netty.handler.ssl.SslUtils].unsignedByte(byte)"
    - Src: "io.netty.handler.ssl.SslUtils:407,1"
      Dst: "[java.nio.ByteBuffer].getShort(int)"
    - Src: "io.netty.handler.ssl.SslUtils:409,1"
      Dst: "[io.netty.handler.ssl.SslUtils].unsignedShortBE(java.nio.ByteBuffer,int)"
    - Src: "io.netty.handler.ssl.SslUtils:427,1"
      Dst: "[io.netty.handler.ssl.SslUtils].shortBE(java.nio.ByteBuffer,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 22
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.ssl.SslUtils].unsignedByte(byte)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 347
    functionLinenumberEnd: 349
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslUtils].unsignedShortBE(java.nio.ByteBuffer,int)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 352
    functionLinenumberEnd: 354
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslUtils].shortBE(java.nio.ByteBuffer,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:353,1"
      Dst: "[io.netty.handler.ssl.SslUtils].shortBE(java.nio.ByteBuffer,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslUtils].shortBE(java.nio.ByteBuffer,int)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 357
    functionLinenumberEnd: 360
    functionDepth: 1
    returnType: "short"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    - "[java.nio.ByteBuffer].order()"
    - "[java.nio.ByteBuffer].getShort(int)"
    functionUses: 3
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:358"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:358"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslUtils:357"
        BranchSideFuncs:
        - "swapShort(short)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:358,1"
      Dst: "[java.nio.ByteBuffer].order()"
    - Src: "io.netty.handler.ssl.SslUtils:359,1"
      Dst: "[java.nio.ByteBuffer].getShort(int)"
    - Src: "io.netty.handler.ssl.SslUtils:358,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.NotSslRecordException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.NotSslRecordException"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.NotSslRecordException:37,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].rejectRemoteInitiatedRenegotiation()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1389
    functionLinenumberEnd: 1402
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SSL].getHandshakeCount(long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].getProtocol()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getProtocol()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getProtocol()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    - "[javax.net.ssl.SSLSession].getProtocol()"
    functionUses: 8
    ICount: 26
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1390"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1400"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1390"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1389"
        BranchSideFuncs:
        - "isDestroyed()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1390"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1394"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "getProtocol()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1390"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1400"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1392"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1400"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1395"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1400"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1395"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1400"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1390,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1390,1"
      Dst: "[io.netty.internal.tcnative.SSL].getHandshakeCount(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1395,1"
      Dst: "[javax.net.ssl.SSLSession].getProtocol()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1395,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1398,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1399,1"
      Dst: "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLHandshakeException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].unwrap(java.nio.ByteBuffer[],java.nio.ByteBuffer[])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1403
    functionLinenumberEnd: 1405
    functionDepth: 10
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer[]"
    - "java.nio.ByteBuffer[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].unwrap(java.nio.ByteBuffer[],int,int,java.nio.ByteBuffer[],int,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1404,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].unwrap(java.nio.ByteBuffer[],int,int,java.nio.ByteBuffer[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].singleSrcBuffer(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1407
    functionLinenumberEnd: 1410
    functionDepth: 0
    returnType: "java.nio.ByteBuffer[]"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].resetSingleSrcBuffer()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1412
    functionLinenumberEnd: 1415
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].singleDstBuffer(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1416
    functionLinenumberEnd: 1419
    functionDepth: 0
    returnType: "java.nio.ByteBuffer[]"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].resetSingleDstBuffer()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1421
    functionLinenumberEnd: 1424
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer[],int,int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 4
    argTypes:
    - "java.nio.ByteBuffer"
    - "java.nio.ByteBuffer[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].singleSrcBuffer(java.nio.ByteBuffer)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].unwrap(java.nio.ByteBuffer[],int,int,java.nio.ByteBuffer[],int,int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].resetSingleSrcBuffer()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1429,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].singleSrcBuffer(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1429,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].unwrap(java.nio.ByteBuffer[],int,int,java.nio.ByteBuffer[],int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1431,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].resetSingleSrcBuffer()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].wrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].singleSrcBuffer(java.nio.ByteBuffer)"
    - "[javax.net.ssl.SSLEngine].wrap(java.nio.ByteBuffer[],java.nio.ByteBuffer)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].resetSingleSrcBuffer()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1438,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].singleSrcBuffer(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1438,1"
      Dst: "[javax.net.ssl.SSLEngine].wrap(java.nio.ByteBuffer[],java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1440,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].resetSingleSrcBuffer()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1446
    functionLinenumberEnd: 1452
    functionDepth: 11
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].singleDstBuffer(java.nio.ByteBuffer)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].singleSrcBuffer(java.nio.ByteBuffer)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].unwrap(java.nio.ByteBuffer[],java.nio.ByteBuffer[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].resetSingleSrcBuffer()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].resetSingleDstBuffer()"
    functionUses: 4
    ICount: 13
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1447,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].singleSrcBuffer(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1447,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].singleDstBuffer(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1447,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].unwrap(java.nio.ByteBuffer[],java.nio.ByteBuffer[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1449,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].resetSingleSrcBuffer()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1450,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].resetSingleDstBuffer()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].unwrap(java.nio.ByteBuffer,java.nio.ByteBuffer[])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "javax.net.ssl.SSLEngineResult"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "java.nio.ByteBuffer[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].singleSrcBuffer(java.nio.ByteBuffer)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].unwrap(java.nio.ByteBuffer[],java.nio.ByteBuffer[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].resetSingleSrcBuffer()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1457,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].singleSrcBuffer(java.nio.ByteBuffer)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1457,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].unwrap(java.nio.ByteBuffer[],java.nio.ByteBuffer[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1459,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].resetSingleSrcBuffer()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].runAndResetNeedTask(java.lang.Runnable)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1491
    functionLinenumberEnd: 1502
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[java.util.zip.Inflater$InflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$3].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[java.util.concurrent.CompletableFuture$Completion].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[java.util.zip.Deflater$DeflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[java.util.concurrent.ThreadPoolExecutor$Worker].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[java.util.zip.ZipFile$CleanableResource].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[java.lang.invoke.MethodHandleNatives$CallSiteContext].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor$2].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[java.util.concurrent.ForkJoinWorkerThread].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[java.lang.ref.Finalizer$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$2].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[java.lang.ref.Finalizer$FinalizerThread].run()"
    - "[java.lang.Runnable].run()"
    functionUses: 1
    ICount: 13
    EdgeCount: 184
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1492"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1495"
        BranchSideFuncs:
        - "run()"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1492,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1496,1"
      Dst: "[java.lang.Runnable].run()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getDelegatedTask()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1504
    functionLinenumberEnd: 1516
    functionDepth: 2
    returnType: "java.lang.Runnable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.internal.tcnative.SSL].getTask(long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$AsyncTaskDecorator].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,io.netty.internal.tcnative.AsyncTask)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.Runnable)"
    functionUses: 3
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1505"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1508"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1507"
        BranchSideFuncs:
        - "getTask(long)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1509"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1512"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1511"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1512"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1515"
        BranchSideFuncs:
        - "<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,io.netty.internal.tcnative.AsyncTask)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1514"
        BranchSideFuncs:
        - "<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.Runnable)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1505,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1508,1"
      Dst: "[io.netty.internal.tcnative.SSL].getTask(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1513,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$AsyncTaskDecorator].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,io.netty.internal.tcnative.AsyncTask)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1515,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getSupportedCipherSuites()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1600,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getEnabledCipherSuites()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.internal.tcnative.SSL].getCiphers(long)"
    - "[io.netty.internal.tcnative.SSL].getOptions(long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isProtocolEnabled(int,int,java.lang.String)"
    - "[java.util.LinkedHashSet].<init>(int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].toJavaCipherSuite(java.lang.String)"
    - "[io.netty.handler.ssl.OpenSsl].isTlsv13Supported()"
    - "[io.netty.handler.ssl.SslUtils].isTLSv13Cipher(java.lang.String)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - "[java.util.Set].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 63
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1609"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1620"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1619"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1612"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1616"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1615"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1623"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1626"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1625"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1628"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1636"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1635"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1630"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1629"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1628"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1631"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1630"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1629"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1631"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1634"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1633"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1631"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1634"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1633"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1609,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1610,1"
      Dst: "[io.netty.internal.tcnative.SSL].getCiphers(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1611,1"
      Dst: "[io.netty.internal.tcnative.SSL].getOptions(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1612,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isProtocolEnabled(int,int,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1626,1"
      Dst: "[java.util.LinkedHashSet].<init>(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1629,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].toJavaCipherSuite(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1631,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].isTlsv13Supported()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1631,1"
      Dst: "[io.netty.handler.ssl.SslUtils].isTLSv13Cipher(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1634,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1636,1"
      Dst: "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1638,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 24
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isProtocolEnabled(int,int,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1739
    functionLinenumberEnd: 1741
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].contains(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[java.util.HashSet].contains(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].contains(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].contains(java.lang.Object)"
    - "[java.util.TreeSet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].contains(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].contains(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].contains(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 7
    ICount: 12
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1740"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1739"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1740"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1739"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1740,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.SslUtils].isTLSv13Cipher(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 495
    functionLinenumberEnd: 497
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].contains(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[java.util.HashSet].contains(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].contains(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].contains(java.lang.Object)"
    - "[java.util.TreeSet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].contains(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].contains(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].contains(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 4
    ICount: 4
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:496,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setEnabledCipherSuites(java.lang.String[])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1643
    functionLinenumberEnd: 1696
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[io.netty.handler.ssl.CipherSuiteConverter].convertToCipherStrings(java.lang.Iterable,java.lang.StringBuilder,java.lang.StringBuilder,boolean)"
    - "[io.netty.handler.ssl.OpenSsl].isBoringSSL()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].isEmpty()"
    - "[io.netty.handler.ssl.OpenSsl].isTlsv13Supported()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.internal.tcnative.SSL].setCipherSuites(long,java.lang.String,boolean)"
    - "[io.netty.handler.ssl.OpenSsl].checkTls13Ciphers(io.netty.util.internal.logging.InternalLogger,java.lang.String)"
    - "[java.util.HashSet].<init>(int)"
    - "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - "[java.util.HashSet].remove(java.lang.Object)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setEnabledProtocols0(java.lang.String[],boolean)"
    - "[java.util.AbstractCollection].toArray(java.lang.Object[])"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.util.Set].remove(java.lang.Object)"
    - "[java.util.Set].toArray(java.lang.Object[])"
    functionUses: 2
    ICount: 75
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1653"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1656"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1655"
        BranchSideFuncs:
        - "isDestroyed()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1653"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1656"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1655"
        BranchSideFuncs:
        - "isDestroyed()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1657"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1692"
        BranchSideFuncs:
        - "isEmpty()"
        - "isDestroyed()"
        - "isTlsv13Supported()"
        - "setEnabledProtocols0(java.lang.String[],boolean)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(int)"
        - "addAll(java.util.Collection,java.lang.Object[])"
        - "toArray(java.lang.Object[])"
        - "setCipherSuites(long,java.lang.String,boolean)"
        - "remove(java.lang.Object)"
        - "checkTls13Ciphers(io.netty.util.internal.logging.InternalLogger,java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1691"
        BranchSideFuncs:
        - "toString()"
        - "append(java.lang.String)"
        - "<init>()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1661"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1668"
        BranchSideFuncs:
        - "isEmpty()"
        - "isDestroyed()"
        - "isTlsv13Supported()"
        - "setEnabledProtocols0(java.lang.String[],boolean)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(int)"
        - "addAll(java.util.Collection,java.lang.Object[])"
        - "toArray(java.lang.Object[])"
        - "setCipherSuites(long,java.lang.String,boolean)"
        - "remove(java.lang.Object)"
        - "checkTls13Ciphers(io.netty.util.internal.logging.InternalLogger,java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1667"
        BranchSideFuncs:
        - "<init>(int)"
        - "addAll(java.util.Collection,java.lang.Object[])"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1673"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1682"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1681"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1682"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1687"
        BranchSideFuncs:
        - "remove(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1686"
        BranchSideFuncs:
        - "setEnabledProtocols0(java.lang.String[],boolean)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "toArray(java.lang.Object[])"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1644,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1646,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1649,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1649,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].isBoringSSL()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1649,1"
      Dst: "[io.netty.handler.ssl.CipherSuiteConverter].convertToCipherStrings(java.lang.Iterable,java.lang.StringBuilder,java.lang.StringBuilder,boolean)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1650,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1653,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].isTlsv13Supported()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1653,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1654,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1657,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1660,1"
      Dst: "[io.netty.internal.tcnative.SSL].setCipherSuites(long,java.lang.String,boolean)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1663,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].checkTls13Ciphers(io.netty.util.internal.logging.InternalLogger,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1668,1"
      Dst: "[java.util.HashSet].<init>(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1669,1"
      Dst: "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1674,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1687,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1687,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setEnabledProtocols0(java.lang.String[],boolean)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1689,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1689,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1692,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setEnabledProtocols0(java.lang.String[],boolean)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1758
    functionLinenumberEnd: 1835
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String[]"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].contains(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[java.util.HashSet].contains(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].contains(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].contains(java.lang.Object)"
    - "[java.util.TreeSet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].contains(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].contains(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].contains(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.internal.tcnative.SSL].clearOptions(long,int)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.internal.tcnative.SSL].setOptions(long,int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 3
    ICount: 181
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1762"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1810"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1809"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1763"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1766"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1765"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1766"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1773"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1772"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1767"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1770"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1769"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1770"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1759"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1758"
        BranchSideFuncs:
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1773"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1780"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1779"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1774"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1777"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1776"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1777"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1759"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1758"
        BranchSideFuncs:
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1780"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1787"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1786"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1781"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1784"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1783"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1784"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1759"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1758"
        BranchSideFuncs:
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1787"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1794"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1793"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1788"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1791"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1790"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1791"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1759"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1758"
        BranchSideFuncs:
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1794"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1801"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1800"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1795"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1798"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1797"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1798"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1759"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1758"
        BranchSideFuncs:
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1801"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1759"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1758"
        BranchSideFuncs:
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1802"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1805"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1804"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1805"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1758"
        BranchSideFuncs:
        - "checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1811"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1814"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1813"
        BranchSideFuncs:
        - "isDestroyed()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1814"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1830"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(java.lang.Object)"
        - "<init>(java.lang.String)"
        - "asList(java.lang.Object[])"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1820"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1822"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1823"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1824"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1823"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1823"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1824"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1823"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1824"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1828"
        BranchSideFuncs:
        - "setOptions(long,int)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1759,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1763,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1764,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1764,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1764,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1764,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1766,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1814,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1816,1"
      Dst: "[io.netty.internal.tcnative.SSL].clearOptions(long,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1823,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1829,1"
      Dst: "[io.netty.internal.tcnative.SSL].setOptions(long,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1831,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1831,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1831,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 52
    CyclomaticComplexity: 23
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getSupportedProtocols()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1699,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getEnabledProtocols()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1703
    functionLinenumberEnd: 1735
    functionDepth: 1
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.internal.tcnative.SSL].getOptions(long)"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isProtocolEnabled(int,int,java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 48
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1710"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1713"
        BranchSideFuncs:
        - "getOptions(long)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1712"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1716"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1719"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1718"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1719"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1722"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1721"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1722"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1725"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1724"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1725"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1728"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1727"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1728"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1731"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1730"
        BranchSideFuncs:
        - "isProtocolEnabled(int,int,java.lang.String)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1731"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1734"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1733"
        BranchSideFuncs:
        - "toArray(java.lang.Object[])"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1704,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1706,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1710,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1711,1"
      Dst: "[io.netty.internal.tcnative.SSL].getOptions(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1713,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1716,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isProtocolEnabled(int,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setEnabledProtocols(java.lang.String[])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1753
    functionLinenumberEnd: 1756
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setEnabledProtocols0(java.lang.String[],boolean)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1754,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setEnabledProtocols0(java.lang.String[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getSession()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1837
    functionLinenumberEnd: 1839
    functionDepth: 0
    returnType: "javax.net.ssl.SSLSession"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].beginHandshake()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 1842
    functionLinenumberEnd: 1874
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].checkEngineClosed()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].calculateMaxWrapOverhead()"
    - "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handshake()"
    - "[java.lang.Error].<init>()"
    functionUses: 2
    ICount: 27
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1864"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1867"
        BranchSideFuncs:
        - "calculateMaxWrapOverhead()"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1843,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1845,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].checkEngineClosed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1854,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].calculateMaxWrapOverhead()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1861,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1864,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].handshake()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:1871,1"
      Dst: "[java.lang.Error].<init>()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setUseClientMode(boolean)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2082
    functionLinenumberEnd: 2087
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2083"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2086"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2085"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2084,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getUseClientMode()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2089
    functionLinenumberEnd: 2091
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setNeedClientAuth(boolean)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2094
    functionLinenumberEnd: 2097
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setClientAuth(io.netty.handler.ssl.ClientAuth)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2095"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2095"
        BranchSideFuncs:
        - "setClientAuth(io.netty.handler.ssl.ClientAuth)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2094"
        BranchSideFuncs:
        - "setClientAuth(io.netty.handler.ssl.ClientAuth)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2095,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setClientAuth(io.netty.handler.ssl.ClientAuth)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setClientAuth(io.netty.handler.ssl.ClientAuth)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2124
    functionLinenumberEnd: 2151
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ClientAuth"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.internal.tcnative.SSL].setVerify(long,int,int)"
    - "[java.lang.Error].<init>(java.lang.String)"
    - "[java.lang.Enum].toString()"
    functionUses: 3
    ICount: 36
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2125"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2128"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2127"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2129"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2132"
        BranchSideFuncs:
        - "isDestroyed()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2133"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2148"
        BranchSideFuncs:
        - "ordinal()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2147"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2133,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2134,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2136,1"
      Dst: "[io.netty.internal.tcnative.SSL].setVerify(long,int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2145,1"
      Dst: "[java.lang.Enum].toString()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2145,1"
      Dst: "[java.lang.Error].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getNeedClientAuth()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2100"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2099"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setWantClientAuth(boolean)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2104
    functionLinenumberEnd: 2107
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setClientAuth(io.netty.handler.ssl.ClientAuth)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2105"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2105"
        BranchSideFuncs:
        - "setClientAuth(io.netty.handler.ssl.ClientAuth)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2104"
        BranchSideFuncs:
        - "setClientAuth(io.netty.handler.ssl.ClientAuth)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2105,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setClientAuth(io.netty.handler.ssl.ClientAuth)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getWantClientAuth()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2110"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2109"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setVerify(int,int)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.internal.tcnative.SSL].setVerify(long,int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2119"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2122"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2121"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2119,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2120,1"
      Dst: "[io.netty.internal.tcnative.SSL].setVerify(long,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setEnableSessionCreation(boolean)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2154"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2156"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2155,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getEnableSessionCreation()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getSSLParameters()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2166
    functionLinenumberEnd: 2186
    functionDepth: 2
    returnType: "javax.net.ssl.SSLParameters"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLEngine].getSSLParameters()"
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[javax.net.ssl.SSLParameters].setEndpointIdentificationAlgorithm(java.lang.String)"
    - "[io.netty.handler.ssl.Java7SslParametersUtils].setAlgorithmConstraints(javax.net.ssl.SSLParameters,java.lang.Object)"
    - "[io.netty.handler.ssl.Java8SslUtils].setSniHostNames(javax.net.ssl.SSLParameters,java.util.List)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.handler.ssl.Java8SslUtils].setUseCipherSuitesOrder(javax.net.ssl.SSLParameters,boolean)"
    - "[io.netty.internal.tcnative.SSL].getOptions(long)"
    - "[io.netty.handler.ssl.Java8SslUtils].setSNIMatchers(javax.net.ssl.SSLParameters,java.util.Collection)"
    functionUses: 4
    ICount: 27
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2170"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2185"
        BranchSideFuncs:
        - "setEndpointIdentificationAlgorithm(java.lang.String)"
        - "setAlgorithmConstraints(javax.net.ssl.SSLParameters,java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2184"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2173"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2185"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2184"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2174"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2177"
        BranchSideFuncs:
        - "setSniHostNames(javax.net.ssl.SSLParameters,java.util.List)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2176"
        BranchSideFuncs:
        - "isDestroyed()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2177"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2182"
        BranchSideFuncs:
        - "getOptions(long)"
        - "setUseCipherSuitesOrder(javax.net.ssl.SSLParameters,boolean)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2181"
        BranchSideFuncs:
        - "setSNIMatchers(javax.net.ssl.SSLParameters,java.util.Collection)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2179"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2177"
        BranchSideFuncs:
        - "getOptions(long)"
        - "setUseCipherSuitesOrder(javax.net.ssl.SSLParameters,boolean)"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2167,1"
      Dst: "[javax.net.ssl.SSLEngine].getSSLParameters()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2169,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2171,1"
      Dst: "[javax.net.ssl.SSLParameters].setEndpointIdentificationAlgorithm(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2172,1"
      Dst: "[io.netty.handler.ssl.Java7SslParametersUtils].setAlgorithmConstraints(javax.net.ssl.SSLParameters,java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2175,1"
      Dst: "[io.netty.handler.ssl.Java8SslUtils].setSniHostNames(javax.net.ssl.SSLParameters,java.util.List)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2177,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2179,1"
      Dst: "[io.netty.internal.tcnative.SSL].getOptions(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2178,1"
      Dst: "[io.netty.handler.ssl.Java8SslUtils].setUseCipherSuitesOrder(javax.net.ssl.SSLParameters,boolean)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2182,1"
      Dst: "[io.netty.handler.ssl.Java8SslUtils].setSNIMatchers(javax.net.ssl.SSLParameters,java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.ssl.Java7SslParametersUtils].setAlgorithmConstraints(javax.net.ssl.SSLParameters,java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.Java7SslParametersUtils"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLParameters"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLParameters].setAlgorithmConstraints(java.security.AlgorithmConstraints)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.Java7SslParametersUtils:36,1"
      Dst: "[javax.net.ssl.SSLParameters].setAlgorithmConstraints(java.security.AlgorithmConstraints)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.Java8SslUtils].setUseCipherSuitesOrder(javax.net.ssl.SSLParameters,boolean)"
    functionSourceFile: "io.netty.handler.ssl.Java8SslUtils"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLParameters"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLParameters].setUseCipherSuitesOrder(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.Java8SslUtils:90,1"
      Dst: "[javax.net.ssl.SSLParameters].setUseCipherSuitesOrder(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setSSLParameters(javax.net.ssl.SSLParameters)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2190
    functionLinenumberEnd: 2229
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[javax.net.ssl.SSLParameters].getAlgorithmConstraints()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - "[io.netty.handler.ssl.Java8SslUtils].getSniHostNames(javax.net.ssl.SSLParameters)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.internal.tcnative.SSL].setTlsExtHostName(long,java.lang.String)"
    - "[io.netty.handler.ssl.Java8SslUtils].getUseCipherSuitesOrder(javax.net.ssl.SSLParameters)"
    - "[io.netty.internal.tcnative.SSL].setOptions(long,int)"
    - "[io.netty.internal.tcnative.SSL].clearOptions(long,int)"
    - "[javax.net.ssl.SSLParameters].getSNIMatchers()"
    - "[javax.net.ssl.SSLParameters].getEndpointIdentificationAlgorithm()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isEndPointVerificationEnabled(java.lang.String)"
    - "[io.netty.internal.tcnative.SSL].setVerify(long,int,int)"
    - "[javax.net.ssl.SSLEngine].setSSLParameters(javax.net.ssl.SSLParameters)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 3
    ICount: 49
    EdgeCount: 134
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2192"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2227"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2226"
        BranchSideFuncs:
        - "setSSLParameters(javax.net.ssl.SSLParameters)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2193"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2197"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2196"
        BranchSideFuncs:
        - "isDestroyed()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2198"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2216"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2215"
        BranchSideFuncs:
        - "getEndpointIdentificationAlgorithm()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2199"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2213"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2212"
        BranchSideFuncs:
        - "getSNIMatchers()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2200"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2207"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "getSniHostNames(javax.net.ssl.SSLParameters)"
        - "iterator()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2206"
        BranchSideFuncs:
        - "getUseCipherSuitesOrder(javax.net.ssl.SSLParameters)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2202"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2205"
        BranchSideFuncs:
        - "hasNext()"
        - "setTlsExtHostName(long,java.lang.String)"
        - "next()"
        - "iterator()"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2204"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2207"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2210"
        BranchSideFuncs:
        - "setOptions(long,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2209"
        BranchSideFuncs:
        - "clearOptions(long,int)"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2217"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2223"
        BranchSideFuncs:
        - "getAlgorithmConstraints()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2220"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2224"
        BranchSideFuncs:
        - "setVerify(long,int,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2223"
        BranchSideFuncs:
        - "getAlgorithmConstraints()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2220"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2224"
        BranchSideFuncs:
        - "setVerify(long,int,int)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2223"
        BranchSideFuncs:
        - "getAlgorithmConstraints()"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2191,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2193,1"
      Dst: "[javax.net.ssl.SSLParameters].getAlgorithmConstraints()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2194,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2197,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isDestroyed()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2201,1"
      Dst: "[io.netty.handler.ssl.Java8SslUtils].getSniHostNames(javax.net.ssl.SSLParameters)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2202,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2202,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2202,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2203,1"
      Dst: "[io.netty.internal.tcnative.SSL].setTlsExtHostName(long,java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2207,1"
      Dst: "[io.netty.handler.ssl.Java8SslUtils].getUseCipherSuitesOrder(javax.net.ssl.SSLParameters)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2208,1"
      Dst: "[io.netty.internal.tcnative.SSL].setOptions(long,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2210,1"
      Dst: "[io.netty.internal.tcnative.SSL].clearOptions(long,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2213,1"
      Dst: "[javax.net.ssl.SSLParameters].getSNIMatchers()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2216,1"
      Dst: "[javax.net.ssl.SSLParameters].getEndpointIdentificationAlgorithm()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2220,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isEndPointVerificationEnabled(java.lang.String)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2221,1"
      Dst: "[io.netty.internal.tcnative.SSL].setVerify(long,int,int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2227,1"
      Dst: "[javax.net.ssl.SSLEngine].setSSLParameters(javax.net.ssl.SSLParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 20
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.ssl.Java8SslUtils].getSniHostNames(javax.net.ssl.SSLParameters)"
    functionSourceFile: "io.netty.handler.ssl.Java8SslUtils"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "java.util.List<String>"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLParameters].getServerNames()"
    - "[jaz.Zer].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.util.Collections].emptyList()"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[javax.net.ssl.SNIHostName].getAsciiName()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 35
    EdgeCount: 112
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.Java8SslUtils:38"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.Java8SslUtils:39"
        BranchSideFuncs:
        - "emptyList()"
      - BranchSide: "io.netty.handler.ssl.Java8SslUtils:38"
        BranchSideFuncs:
        - "emptyList()"
    - Branch String: "io.netty.handler.ssl.Java8SslUtils:38"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.Java8SslUtils:41"
        BranchSideFuncs:
        - "emptyList()"
      - BranchSide: "io.netty.handler.ssl.Java8SslUtils:40"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "<init>(int)"
        - "iterator()"
        - "size()"
    - Branch String: "io.netty.handler.ssl.Java8SslUtils:43"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.Java8SslUtils:51"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
      - BranchSide: "io.netty.handler.ssl.Java8SslUtils:50"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.Java8SslUtils:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.Java8SslUtils:47"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "getAsciiName()"
      - BranchSide: "io.netty.handler.ssl.Java8SslUtils:46"
        BranchSideFuncs:
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>()"
        - "getName()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.ssl.Java8SslUtils:37,1"
      Dst: "[javax.net.ssl.SSLParameters].getServerNames()"
    - Src: "io.netty.handler.ssl.Java8SslUtils:38,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.handler.ssl.Java8SslUtils:39,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.ssl.Java8SslUtils:41,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.ssl.Java8SslUtils:41,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.ssl.Java8SslUtils:43,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.ssl.Java8SslUtils:43,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ssl.Java8SslUtils:43,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ssl.Java8SslUtils:45,1"
      Dst: "[javax.net.ssl.SNIHostName].getAsciiName()"
    - Src: "io.netty.handler.ssl.Java8SslUtils:45,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.ssl.Java8SslUtils:47,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.Java8SslUtils:47,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.Java8SslUtils:47,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.handler.ssl.Java8SslUtils:47,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.Java8SslUtils:47,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.Java8SslUtils:47,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.Java8SslUtils].getUseCipherSuitesOrder(javax.net.ssl.SSLParameters)"
    functionSourceFile: "io.netty.handler.ssl.Java8SslUtils"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLParameters].getUseCipherSuitesOrder()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.Java8SslUtils:86,1"
      Dst: "[javax.net.ssl.SSLParameters].getUseCipherSuitesOrder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isEndPointVerificationEnabled(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2230
    functionLinenumberEnd: 2232
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].isEmpty()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2231"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2230"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2231"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2230"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2231,1"
      Dst: "[java.lang.String].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].checkSniHostnameMatch(byte[])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.Java8SslUtils].checkSniHostnameMatch(java.util.Collection,byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:2239,1"
      Dst: "[io.netty.handler.ssl.Java8SslUtils].checkSniHostnameMatch(java.util.Collection,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getNegotiatedApplicationProtocol()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 2243
    functionLinenumberEnd: 2245
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$000(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "io.netty.util.ResourceLeakTracker"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$100(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "io.netty.handler.ssl.ReferenceCountedOpenSslContext"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$300(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$600(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$700(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.Runnable)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].runAndResetNeedTask(java.lang.Runnable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine:94,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].runAndResetNeedTask(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].toString()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 12
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty:169,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty:169,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty:169,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty:169,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty:169,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 9
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Void)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Void)"
    functionUses: 50
    ICount: 3
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPromise:73,1"
      Dst: "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Void)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener<?\
      \ extends Future<? super Void>>)"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener<? extends Future<? super Void>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 131
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPromise:95,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPromise:101,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener0(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.DefaultPromise].notifyListeners()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:195"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:201"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:200"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:196"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:203"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:207"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:206"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:192,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultPromise:199,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].addListener0(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.util.concurrent.DefaultPromise:203,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - Src: "io.netty.util.concurrent.DefaultPromise:204,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].notifyListeners()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.DefaultChannelPromise].removeListener(io.netty.util.concurrent.GenericFutureListener<?\
      \ extends Future<? super Void>>)"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener<? extends Future<? super Void>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPromise:107,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPromise:113,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].removeListener0(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:226"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:232"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:231"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:227"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:223,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultPromise:230,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].removeListener0(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelPromise].sync()"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].sync()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPromise:119,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].sync()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].sync()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].await()"
    - "[io.netty.util.concurrent.DefaultPromise].rethrowIfFailed()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:404,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].await()"
    - Src: "io.netty.util.concurrent.DefaultPromise:405,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].rethrowIfFailed()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].await()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 260
    functionDepth: 4
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[java.lang.Thread].interrupted()"
    - "[java.lang.InterruptedException].<init>(java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].toString()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].checkDeadLock()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].checkDeadLock()"
    - "[io.netty.channel.DefaultChannelPromise].checkDeadLock()"
    - "[io.netty.util.concurrent.DefaultPromise].checkDeadLock()"
    - "[io.netty.handler.ssl.SslHandler$LazyChannelPromise].checkDeadLock()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor$ImmediatePromise].checkDeadLock()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor$ImmediateProgressivePromise].checkDeadLock()"
    - "[io.netty.util.concurrent.DefaultPromise].incWaiters()"
    - "[java.lang.Object].wait()"
    - "[io.netty.util.concurrent.DefaultPromise].decWaiters()"
    functionUses: 6
    ICount: 28
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:239"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:243"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:242"
        BranchSideFuncs:
        - "interrupted()"
    - Branch String: "io.netty.util.concurrent.DefaultPromise:243"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:247"
        BranchSideFuncs:
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:246"
        BranchSideFuncs:
        - "checkDeadLock()"
    - Branch String: "io.netty.util.concurrent.DefaultPromise:250"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:258"
        BranchSideFuncs:
        - "incWaiters()"
        - "decWaiters()"
        - "wait()"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:257"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:239,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - Src: "io.netty.util.concurrent.DefaultPromise:243,1"
      Dst: "[java.lang.Thread].interrupted()"
    - Src: "io.netty.util.concurrent.DefaultPromise:244,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].toString()"
    - Src: "io.netty.util.concurrent.DefaultPromise:244,1"
      Dst: "[java.lang.InterruptedException].<init>(java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultPromise:247,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].checkDeadLock()"
    - Src: "io.netty.util.concurrent.DefaultPromise:251,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].incWaiters()"
    - Src: "io.netty.util.concurrent.DefaultPromise:253,1"
      Dst: "[java.lang.Object].wait()"
    - Src: "io.netty.util.concurrent.DefaultPromise:255,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].decWaiters()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].toString()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 417
    functionLinenumberEnd: 419
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.concurrent.DefaultPromise].toStringBuilder()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].toStringBuilder()"
    - "[io.netty.util.concurrent.PromiseTask].toStringBuilder()"
    functionUses: 21
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:418,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].toStringBuilder()"
    - Src: "io.netty.util.concurrent.DefaultPromise:418,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].checkDeadLock()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 459
    functionLinenumberEnd: 465
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.ScheduledFutureTask].executor()"
    - "[io.netty.handler.proxy.ProxyHandler$LazyChannelPromise].executor()"
    - "[io.netty.channel.DefaultChannelPromise].executor()"
    - "[io.netty.handler.ssl.SslHandler$LazyChannelPromise].executor()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].executor()"
    - "[io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise].executor()"
    - "[io.netty.util.concurrent.DefaultPromise].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.BlockingOperationException].<init>(java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].toString()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    functionUses: 5
    ICount: 10
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:461"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:464"
        BranchSideFuncs:
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:463"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:461"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:464"
        BranchSideFuncs:
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:463"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:460,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].executor()"
    - Src: "io.netty.util.concurrent.DefaultPromise:461,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.util.concurrent.DefaultPromise:462,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].toString()"
    - Src: "io.netty.util.concurrent.DefaultPromise:462,1"
      Dst: "[io.netty.util.concurrent.BlockingOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.BlockingOperationException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.util.concurrent.BlockingOperationException"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.BlockingOperationException:31,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].incWaiters()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 634
    functionLinenumberEnd: 640
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:635"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:638"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:637"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:636,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.concurrent.DefaultPromise:636,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultPromise:636,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.util.concurrent.DefaultPromise:636,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.concurrent.DefaultPromise:636,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].decWaiters()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 641
    functionLinenumberEnd: 644
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].rethrowIfFailed()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 645
    functionLinenumberEnd: 653
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:647"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:651"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:650"
        BranchSideFuncs:
        - "throwException(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:646,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].cause()"
    - Src: "io.netty.util.concurrent.DefaultPromise:651,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].syncUninterruptibly()"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionDepth: 6
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].syncUninterruptibly()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPromise:125,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].syncUninterruptibly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].syncUninterruptibly()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 410
    functionLinenumberEnd: 414
    functionDepth: 5
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroupFuture].awaitUninterruptibly()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].awaitUninterruptibly()"
    - "[io.netty.util.concurrent.DefaultPromise].awaitUninterruptibly()"
    - "[io.netty.channel.DefaultChannelPromise].awaitUninterruptibly()"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].awaitUninterruptibly()"
    - "[io.netty.util.concurrent.DefaultPromise].rethrowIfFailed()"
    functionUses: 4
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:411,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].awaitUninterruptibly()"
    - Src: "io.netty.util.concurrent.DefaultPromise:412,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].rethrowIfFailed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].awaitUninterruptibly()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 263
    functionLinenumberEnd: 290
    functionDepth: 4
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].checkDeadLock()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].checkDeadLock()"
    - "[io.netty.channel.DefaultChannelPromise].checkDeadLock()"
    - "[io.netty.util.concurrent.DefaultPromise].checkDeadLock()"
    - "[io.netty.handler.ssl.SslHandler$LazyChannelPromise].checkDeadLock()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor$ImmediatePromise].checkDeadLock()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor$ImmediateProgressivePromise].checkDeadLock()"
    - "[io.netty.util.concurrent.DefaultPromise].incWaiters()"
    - "[java.lang.Object].wait()"
    - "[io.netty.util.concurrent.DefaultPromise].decWaiters()"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].interrupt()"
    functionUses: 4
    ICount: 30
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:264"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:268"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:267"
        BranchSideFuncs:
        - "checkDeadLock()"
    - Branch String: "io.netty.util.concurrent.DefaultPromise:272"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:283"
        BranchSideFuncs:
        - "incWaiters()"
        - "decWaiters()"
        - "wait()"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:282"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:285"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:289"
        BranchSideFuncs:
        - "currentThread()"
        - "interrupt()"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:288"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:264,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - Src: "io.netty.util.concurrent.DefaultPromise:268,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].checkDeadLock()"
    - Src: "io.netty.util.concurrent.DefaultPromise:273,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].incWaiters()"
    - Src: "io.netty.util.concurrent.DefaultPromise:275,1"
      Dst: "[java.lang.Object].wait()"
    - Src: "io.netty.util.concurrent.DefaultPromise:280,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].decWaiters()"
    - Src: "io.netty.util.concurrent.DefaultPromise:286,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "io.netty.util.concurrent.DefaultPromise:286,1"
      Dst: "[java.lang.Thread].interrupt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].await()"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionDepth: 5
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].await()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPromise:131,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].await()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].awaitUninterruptibly()"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionDepth: 5
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].awaitUninterruptibly()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPromise:137,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].awaitUninterruptibly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].flushCheckpoint()"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].flushCheckpoint(long)"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].promise()"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].checkDeadLock()"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 162
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPromise].channel()"
    - "[io.netty.channel.AbstractChannel].isRegistered()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isRegistered()"
    - "[io.netty.util.concurrent.DefaultPromise].checkDeadLock()"
    - "[io.netty.channel.Channel].isRegistered()"
    functionUses: 2
    ICount: 6
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPromise:158"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPromise:161"
        BranchSideFuncs:
        - "checkDeadLock()"
      - BranchSide: "io.netty.channel.DefaultChannelPromise:160"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPromise:158,1"
      Dst: "[io.netty.channel.DefaultChannelPromise].channel()"
    - Src: "io.netty.channel.DefaultChannelPromise:158,1"
      Dst: "[io.netty.channel.Channel].isRegistered()"
    - Src: "io.netty.channel.DefaultChannelPromise:159,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].checkDeadLock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelPromise].unvoid()"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].isVoid()"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Object)"
    functionSourceFile: "io.netty.channel.DefaultChannelPromise"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 9
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Void)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Void)"
    functionUses: 40
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPromise:30,1"
      Dst: "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Void)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelFlushPromiseNotifier].<init>(boolean)"
    functionSourceFile: "io.netty.channel.ChannelFlushPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayDeque].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:43,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:32,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelFlushPromiseNotifier].<init>()"
    functionSourceFile: "io.netty.channel.ChannelFlushPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelFlushPromiseNotifier].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:52,1"
      Dst: "[io.netty.channel.ChannelFlushPromiseNotifier].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelFlushPromiseNotifier].add(io.netty.channel.ChannelPromise,int)"
    functionSourceFile: "io.netty.channel.ChannelFlushPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFlushPromiseNotifier"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelPromise"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelFlushPromiseNotifier].add(io.netty.channel.ChannelPromise,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:60,1"
      Dst: "[io.netty.channel.ChannelFlushPromiseNotifier].add(io.netty.channel.ChannelPromise,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelFlushPromiseNotifier].add(io.netty.channel.ChannelPromise,long)"
    functionSourceFile: "io.netty.channel.ChannelFlushPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFlushPromiseNotifier"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelPromise"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    - "[io.netty.channel.ChannelFlushPromiseNotifier$FlushCheckpoint].flushCheckpoint(long)"
    - "[java.util.Queue].add(java.lang.Object)"
    - "[io.netty.channel.ChannelFlushPromiseNotifier$DefaultFlushCheckpoint].<init>(long,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelFlushPromiseNotifier:71"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:76"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:75"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:68,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:69,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:73,1"
      Dst: "[io.netty.channel.ChannelFlushPromiseNotifier$FlushCheckpoint].flushCheckpoint(long)"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:74,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:76,1"
      Dst: "[io.netty.channel.ChannelFlushPromiseNotifier$DefaultFlushCheckpoint].<init>(long,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelFlushPromiseNotifier$DefaultFlushCheckpoint].<init>(long,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ChannelFlushPromiseNotifier$DefaultFlushCheckpoint"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier$DefaultFlushCheckpoint:253,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelFlushPromiseNotifier].increaseWriteCounter(long)"
    functionSourceFile: "io.netty.channel.ChannelFlushPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFlushPromiseNotifier"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:84,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelFlushPromiseNotifier].writeCounter()"
    functionSourceFile: "io.netty.channel.ChannelFlushPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelFlushPromiseNotifier].notifyPromises()"
    functionSourceFile: "io.netty.channel.ChannelFlushPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFlushPromiseNotifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelFlushPromiseNotifier].notifyPromises0(java.lang.Throwable)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:104,1"
      Dst: "[io.netty.channel.ChannelFlushPromiseNotifier].notifyPromises0(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelFlushPromiseNotifier].notifyPromises0(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.ChannelFlushPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Queue].peek()"
    - "[io.netty.channel.ChannelFlushPromiseNotifier$FlushCheckpoint].flushCheckpoint()"
    - "[java.util.Collection].size()"
    - "[io.netty.channel.ChannelFlushPromiseNotifier$FlushCheckpoint].flushCheckpoint(long)"
    - "[java.util.Queue].remove()"
    - "[io.netty.channel.ChannelFlushPromiseNotifier$FlushCheckpoint].promise()"
    - "[io.netty.channel.ChannelPromise].trySuccess()"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelFlushPromiseNotifier:192"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:197"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:196"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelFlushPromiseNotifier:200"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:205"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelFlushPromiseNotifier:206"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:214"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:213"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelFlushPromiseNotifier:207"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:232"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:231"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelFlushPromiseNotifier:207"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:232"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:231"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelFlushPromiseNotifier:216"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:223"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:222"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelFlushPromiseNotifier:217"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:220"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:219"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelFlushPromiseNotifier:223"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:226"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:225"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelFlushPromiseNotifier:233"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:240"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelFlushPromiseNotifier:237"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:241"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:240"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:192,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:199,1"
      Dst: "[java.util.Queue].peek()"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:206,1"
      Dst: "[io.netty.channel.ChannelFlushPromiseNotifier$FlushCheckpoint].flushCheckpoint()"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:207,1"
      Dst: "[java.util.Collection].size()"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:209,1"
      Dst: "[io.netty.channel.ChannelFlushPromiseNotifier$FlushCheckpoint].flushCheckpoint(long)"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:214,1"
      Dst: "[java.util.Queue].remove()"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:215,1"
      Dst: "[io.netty.channel.ChannelFlushPromiseNotifier$FlushCheckpoint].promise()"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:218,1"
      Dst: "[io.netty.channel.ChannelPromise].trySuccess()"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:220,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:224,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:226,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:237,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:237,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:237,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 22
    CyclomaticComplexity: 10
  - functionName: "[io.netty.channel.ChannelFlushPromiseNotifier].notifyFlushFutures()"
    functionSourceFile: "io.netty.channel.ChannelFlushPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFlushPromiseNotifier"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelFlushPromiseNotifier].notifyPromises()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:113,1"
      Dst: "[io.netty.channel.ChannelFlushPromiseNotifier].notifyPromises()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelFlushPromiseNotifier].notifyPromises(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.ChannelFlushPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFlushPromiseNotifier"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelFlushPromiseNotifier].notifyPromises()"
    - "[java.util.Queue].poll()"
    - "[io.netty.channel.ChannelFlushPromiseNotifier$FlushCheckpoint].promise()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelFlushPromiseNotifier:131"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:134"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:133"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelFlushPromiseNotifier:134"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:137"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:128,1"
      Dst: "[io.netty.channel.ChannelFlushPromiseNotifier].notifyPromises()"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:130,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:135,1"
      Dst: "[io.netty.channel.ChannelFlushPromiseNotifier$FlushCheckpoint].promise()"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:135,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:137,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.ChannelFlushPromiseNotifier].notifyFlushFutures(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.ChannelFlushPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFlushPromiseNotifier"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelFlushPromiseNotifier].notifyPromises(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:148,1"
      Dst: "[io.netty.channel.ChannelFlushPromiseNotifier].notifyPromises(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelFlushPromiseNotifier].notifyPromises(java.lang.Throwable,java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.ChannelFlushPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFlushPromiseNotifier"
    argCount: 2
    argTypes:
    - "java.lang.Throwable"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelFlushPromiseNotifier].notifyPromises0(java.lang.Throwable)"
    - "[java.util.Queue].poll()"
    - "[io.netty.channel.ChannelFlushPromiseNotifier$FlushCheckpoint].promise()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelFlushPromiseNotifier:171"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:174"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelFlushPromiseNotifier:174"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:177"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelFlushPromiseNotifier:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:168,1"
      Dst: "[io.netty.channel.ChannelFlushPromiseNotifier].notifyPromises0(java.lang.Throwable)"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:170,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:175,1"
      Dst: "[io.netty.channel.ChannelFlushPromiseNotifier$FlushCheckpoint].promise()"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:175,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:177,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.ChannelFlushPromiseNotifier].notifyFlushFutures(java.lang.Throwable,java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.ChannelFlushPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFlushPromiseNotifier"
    argCount: 2
    argTypes:
    - "java.lang.Throwable"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelFlushPromiseNotifier].notifyPromises(java.lang.Throwable,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelFlushPromiseNotifier:188,1"
      Dst: "[io.netty.channel.ChannelFlushPromiseNotifier].notifyPromises(java.lang.Throwable,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$10].<init>(io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$10"
    linkageType: ""
    functionLinenumber: 683
    functionLinenumberEnd: 685
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$10:684,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$10"
    linkageType: ""
    functionLinenumber: 686
    functionLinenumberEnd: 689
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].access$1100(io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 49
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$10:687,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].access$1100(io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].websocketPath()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].subprotocols()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].checkStartsWith()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].handshakeTimeoutMillis()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].forceCloseTimeoutMillis()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].sendCloseFrame()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].dropPongFrames()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].toString()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 19
    ICount: 33
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig:100,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig:100,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig:100,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].toBuilder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig,io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$1)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig:114,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig,io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].newBuilder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].<init>(java.lang.String,java.lang.String,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig,io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$1)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig:118,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$Builder].<init>(java.lang.String,java.lang.String,boolean,long,long,boolean,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,boolean,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig,io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].<init>(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$3"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.epoll.AbstractEpollStreamChannel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$3:573,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$3"
    linkageType: ""
    functionLinenumber: 575
    functionLinenumberEnd: 578
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].shutdownOutput(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    functionUses: 49
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$3:576,1"
      Dst: "[io.netty.channel.AbstractChannel].unsafe()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$3:576,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].shutdownOutput(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor].<init>(io.netty.channel.epoll.NativeDatagramPacketArray)"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.NativeDatagramPacketArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:113,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor].processMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 144
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.channel.unix.SegmentedDatagramPacket].segmentSize()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray].access$400(io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf,int,int,int,java.net.InetSocketAddress)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    functionUses: 1
    ICount: 44
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:120"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:120"
        BranchSideFuncs:
        - "content()"
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:119"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:124"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:132"
        BranchSideFuncs:
        - "segmentSize()"
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:131"
        BranchSideFuncs:
        - "recipient()"
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:128"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:132"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:131"
        BranchSideFuncs:
        - "recipient()"
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:120"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:137"
        BranchSideFuncs:
        - "content()"
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:120"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:137"
        BranchSideFuncs:
        - "content()"
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:139"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:143"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:142"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:141"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:122,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].content()"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:125,1"
      Dst: "[io.netty.channel.unix.SegmentedDatagramPacket].segmentSize()"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:128,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:132,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:132,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:132,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray].access$400(io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf,int,int,int,java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 7
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray].access$400(io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf,int,int,int,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 6
    returnType: "boolean"
    argCount: 6
    argTypes:
    - "io.netty.channel.epoll.NativeDatagramPacketArray"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "int"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.NativeDatagramPacketArray].add0(io.netty.buffer.ByteBuf,int,int,int,java.net.InetSocketAddress)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:38,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray].add0(io.netty.buffer.ByteBuf,int,int,int,java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray].add0(io.netty.buffer.ByteBuf,int,int,int,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 82
    functionDepth: 5
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "int"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.IovArray].count()"
    - "[io.netty.channel.unix.IovArray].add(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket].access$100(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket,long,int,int,java.net.InetSocketAddress)"
    - "[io.netty.channel.unix.IovArray].memoryAddress(int)"
    functionUses: 2
    ICount: 34
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray:64"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray:68"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray:69"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray:71"
        BranchSideFuncs:
        - "add(io.netty.buffer.ByteBuf,int,int)"
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray:73"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray:74"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray:73"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray:76"
        BranchSideFuncs:
        - "access$100(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket,long,int,int,java.net.InetSocketAddress)"
        - "count()"
        - "memoryAddress(int)"
    Callsites:
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:72,1"
      Dst: "[io.netty.channel.unix.IovArray].count()"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:73,1"
      Dst: "[io.netty.channel.unix.IovArray].add(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:78,1"
      Dst: "[io.netty.channel.unix.IovArray].memoryAddress(int)"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:78,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket].access$100(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket,long,int,int,java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket].access$100(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket,long,int,int,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket"
    - "long"
    - "int"
    - "int"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket].init(long,int,int,java.net.InetSocketAddress)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:164,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket].init(long,int,int,java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket].init(long,int,int,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 211
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "int"
    - "int"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].getAddress()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.net.Inet4Address].getAddress()"
    - "[java.net.InetAddress].getAddress()"
    - "[java.net.Inet6Address].getAddress()"
    - "[java.net.Inet6Address].getScopeId()"
    - "[io.netty.channel.unix.NativeInetAddress].copyIpv4MappedIpv6Address(byte[],byte[])"
    - "[java.net.InetSocketAddress].getPort()"
    functionUses: 1
    ICount: 38
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:194"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:199"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:198"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:200"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:204"
        BranchSideFuncs:
        - "arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
        - "getScopeId()"
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:203"
        BranchSideFuncs:
        - "getAddress()"
        - "copyIpv4MappedIpv6Address(byte[],byte[])"
    Callsites:
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:199,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:201,1"
      Dst: "[java.net.InetAddress].getAddress()"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:201,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:202,1"
      Dst: "[java.net.Inet6Address].getScopeId()"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:204,1"
      Dst: "[io.netty.channel.unix.NativeInetAddress].copyIpv4MappedIpv6Address(byte[],byte[])"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:208,1"
      Dst: "[java.net.InetSocketAddress].getPort()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor].<init>(io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.channel.epoll.NativeDatagramPacketArray$1)"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.epoll.NativeDatagramPacketArray"
    - "io.netty.channel.epoll.NativeDatagramPacketArray$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor].<init>(io.netty.channel.epoll.NativeDatagramPacketArray)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor:113,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor].<init>(io.netty.channel.epoll.NativeDatagramPacketArray)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor].access$202(io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor,boolean)"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor].access$302(io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor,int)"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].<init>(java.util.Iterator)"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$StringEntryIterator"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$StringEntryIterator:113,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$StringEntryIterator"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2].hasNext()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 227
    ICount: 4
    EdgeCount: 41
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$StringEntryIterator:119,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$StringEntryIterator"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 1
    returnType: "java.util.Map$Entry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].<init>(java.util.Map$Entry)"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2].next()"
    - "[java.util.Iterator].next()"
    functionUses: 229
    ICount: 7
    EdgeCount: 55
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$StringEntryIterator:124,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.HeadersUtils$StringEntryIterator:124,1"
      Dst: "[io.netty.handler.codec.HeadersUtils$StringEntry].<init>(java.util.Map$Entry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils$StringEntry].<init>(java.util.Map$Entry)"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$StringEntry"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 141
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map$Entry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$StringEntry:138,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].remove()"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$StringEntryIterator"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.CombinedIterator].remove()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].remove()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].remove()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].remove()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].remove()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].remove()"
    - "[io.netty.channel.nio.NioEventLoop$7].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].remove()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].remove()"
    - "[io.netty.util.internal.ReadOnlyIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].remove()"
    - "[java.util.Iterator].remove()"
    functionUses: 21
    ICount: 4
    EdgeCount: 52
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$StringEntryIterator:129,1"
      Dst: "[java.util.Iterator].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder$GzipState].values()"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder$GzipState"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.JdkZlibDecoder$GzipState[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder$GzipState:46,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder$GzipState].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder$GzipState"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.JdkZlibDecoder$GzipState"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder$GzipState:46,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder$GzipState].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder$GzipState"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder$GzipState:46,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender].<init>()"
    functionSourceFile: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:41,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 52
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender].computeRawVarint32Size(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender].writeRawVarint32(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender].computeRawVarint32Size(int)"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 31
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:46,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:47,1"
      Dst: "[io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender].computeRawVarint32Size(int)"
    - Src: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:48,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - Src: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:49,1"
      Dst: "[io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender].writeRawVarint32(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:50,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:50,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender].computeRawVarint32Size(int)"
    functionSourceFile: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:82"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:81"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:82"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:85"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:84"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:85"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:88"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:87"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender].writeRawVarint32(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:64"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:63"
        BranchSideFuncs:
        - "writeByte(int)"
    Callsites:
    - Src: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:61,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender:40,1"
      Dst: "[io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadLocalRandom].setInitialSeedUniquifier(long)"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadLocalRandom].mix64(long)"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 228
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadLocalRandom].setSeed(long)"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:278"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:281"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:280"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadLocalRandom:279,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadLocalRandom].next(int)"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadLocalRandom].nextInt(int,int)"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[java.util.Random].nextInt(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:301"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:304"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadLocalRandom:302,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "io.netty.util.internal.ThreadLocalRandom:304,1"
      Dst: "[java.util.Random].nextInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadLocalRandom].nextLong(long)"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositive(long,java.lang.String)"
    - "[io.netty.util.internal.ThreadLocalRandom].next(int)"
    - "[java.util.Random].nextInt(int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:325"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:334"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:333"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:328"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:326"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:325"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:329"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:332"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadLocalRandom:317,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(long,java.lang.String)"
    - Src: "io.netty.util.internal.ThreadLocalRandom:326,1"
      Dst: "[io.netty.util.internal.ThreadLocalRandom].next(int)"
    - Src: "io.netty.util.internal.ThreadLocalRandom:334,1"
      Dst: "[java.util.Random].nextInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.internal.ThreadLocalRandom].nextLong(long,long)"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[io.netty.util.internal.ThreadLocalRandom].nextLong(long)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:348"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:351"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:350"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadLocalRandom:349,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "io.netty.util.internal.ThreadLocalRandom:351,1"
      Dst: "[io.netty.util.internal.ThreadLocalRandom].nextLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadLocalRandom].nextDouble(double)"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositive(double,java.lang.String)"
    - "[java.util.Random].nextDouble()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadLocalRandom:364,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(double,java.lang.String)"
    - Src: "io.netty.util.internal.ThreadLocalRandom:365,1"
      Dst: "[java.util.Random].nextDouble()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectUtil].checkPositive(double,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ObjectUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ObjectUtil:121"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectUtil:124"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.ObjectUtil:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectUtil:122,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.ObjectUtil:122,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.ObjectUtil:122,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "io.netty.util.internal.ObjectUtil:122,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.ObjectUtil:122,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadLocalRandom].nextDouble(double,double)"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "double"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>()"
    - "[java.util.Random].nextDouble()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ThreadLocalRandom:379"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:382"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.ThreadLocalRandom:381"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadLocalRandom:380,1"
      Dst: "[java.lang.IllegalArgumentException].<init>()"
    - Src: "io.netty.util.internal.ThreadLocalRandom:382,1"
      Dst: "[java.util.Random].nextDouble()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadLocalRandom].access$002(long)"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadLocalRandom].access$100()"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "java.util.concurrent.BlockingQueue"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$ValueIterator"
    linkageType: ""
    functionLinenumber: 1309
    functionLinenumberEnd: 1311
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 228
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1310"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1309"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$ValueIterator"
    linkageType: ""
    functionLinenumber: 1314
    functionLinenumberEnd: 1324
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[java.util.NoSuchElementException].<init>()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].calculateNext(io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    functionUses: 229
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1315"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1318"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1317"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1318"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1321"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1320"
        BranchSideFuncs:
        - "calculateNext(io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1315,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - Src: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1316,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    - Src: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1322,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$ValueIterator].calculateNext(io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.DefaultHeaders$ValueIterator].remove()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$ValueIterator"
    linkageType: ""
    functionLinenumber: 1327
    functionLinenumberEnd: 1334
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    - "[io.netty.handler.codec.DefaultHeaders].remove0(io.netty.handler.codec.DefaultHeaders$HeaderEntry,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    functionUses: 21
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1328"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1331"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1330"
        BranchSideFuncs:
        - "remove0(io.netty.handler.codec.DefaultHeaders$HeaderEntry,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1329,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "io.netty.handler.codec.DefaultHeaders$ValueIterator:1331,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].remove0(io.netty.handler.codec.DefaultHeaders$HeaderEntry,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders].remove0(io.netty.handler.codec.DefaultHeaders$HeaderEntry,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders"
    linkageType: ""
    functionLinenumber: 1078
    functionLinenumberEnd: 1100
    functionDepth: 1
    returnType: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    - "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].index(int)"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].remove()"
    functionUses: 1
    ICount: 43
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders:1081"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1084"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1083"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders:1084"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1094"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders:1088"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1092"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1091"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
    - Branch String: "io.netty.handler.codec.DefaultHeaders:1088"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1092"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1091"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
    - Branch String: "io.netty.handler.codec.DefaultHeaders:1092"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1093"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1092"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders:1092"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1093"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders:1092"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders:1079,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].index(int)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1092,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.DefaultHeaders:1092,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1092,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1092,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.DefaultHeaders:1092,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders:1097,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 6
  - functionName: "[io.netty.util.internal.TypeParameterMatcher$ReflectiveMatcher].<init>(java.lang.Class)"
    functionSourceFile: "io.netty.util.internal.TypeParameterMatcher$ReflectiveMatcher"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.TypeParameterMatcher].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.TypeParameterMatcher$ReflectiveMatcher:154,1"
      Dst: "[io.netty.util.internal.TypeParameterMatcher].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.TypeParameterMatcher$ReflectiveMatcher].match(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.TypeParameterMatcher$ReflectiveMatcher"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isInstance(java.lang.Object)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.TypeParameterMatcher$ReflectiveMatcher:160,1"
      Dst: "[java.lang.Class].isInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode].values()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode:73,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode:73,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode:73,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.TooLongHttpLineException].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.TooLongHttpLineException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.TooLongFrameException].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.TooLongHttpLineException:31,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.TooLongHttpLineException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.TooLongHttpLineException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.TooLongHttpLineException:38,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.TooLongHttpLineException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.TooLongHttpLineException"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.TooLongHttpLineException:45,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.TooLongHttpLineException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.TooLongHttpLineException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.TooLongHttpLineException:52,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayDeque].<init>(int)"
    - "[java.util.LinkedHashSet].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:940,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:936,1"
      Dst: "[java.util.ArrayDeque].<init>(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams:937,1"
      Dst: "[java.util.LinkedHashSet].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - "[com.fasterxml.aalto.AsyncXMLInputFactory].createAsyncForByteArray()"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getInputFeeder()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlDecoder:36,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:41,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLInputFactory].createAsyncForByteArray()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:42,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getInputFeeder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlDecoder"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 115
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(byte[])"
    - "[com.fasterxml.aalto.AsyncByteArrayFeeder].feedInput(byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].<init>(java.lang.String,java.lang.String,boolean,java.lang.String)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlElementStart].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[javax.xml.namespace.QName].getNamespaceURI()"
    - "[io.netty.handler.codec.xml.XmlAttribute].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.xml.XmlElementStart].attributes()"
    - "[io.netty.handler.codec.xml.XmlNamespace].<init>(java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.xml.XmlElement].namespaces()"
    - "[io.netty.handler.codec.xml.XmlElementEnd].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.xml.XmlCharacters].<init>(java.lang.String)"
    - "[io.netty.handler.codec.xml.XmlComment].<init>(java.lang.String)"
    - "[io.netty.handler.codec.xml.XmlSpace].<init>(java.lang.String)"
    - "[io.netty.handler.codec.xml.XmlEntityReference].<init>(java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.xml.XmlDTD].<init>(java.lang.String)"
    - "[io.netty.handler.codec.xml.XmlCdata].<init>(java.lang.String)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[com.fasterxml.aalto.AsyncByteArrayFeeder].needMoreInput()"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].next()"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getEncoding()"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getVersion()"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].isStandalone()"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getCharacterEncodingScheme()"
    - "[java.util.List].add(java.lang.Object)"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getLocalName()"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getName()"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getPrefix()"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getAttributeCount()"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getAttributeType(int)"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getAttributeLocalName(int)"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getAttributePrefix(int)"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getAttributeNamespace(int)"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getAttributeValue(int)"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getNamespaceCount()"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getNamespacePrefix(int)"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getNamespaceURI(int)"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getPIData()"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getPITarget()"
    - "[com.fasterxml.aalto.AsyncXMLStreamReader].getText()"
    functionUses: 1
    ICount: 153
    EdgeCount: 102
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.xml.XmlDecoder:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDecoder:114"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDecoder:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlDecoder:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDecoder:73"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlDecoder:74"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDecoder:78"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlDecoder:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDecoder:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlDecoder:46,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:47,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:49,1"
      Dst: "[com.fasterxml.aalto.AsyncByteArrayFeeder].feedInput(byte[],int,int)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:51,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:55,1"
      Dst: "[com.fasterxml.aalto.AsyncByteArrayFeeder].needMoreInput()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:56,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].next()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:59,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getEncoding()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:59,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getVersion()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:60,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].isStandalone()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:60,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getCharacterEncodingScheme()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:60,1"
      Dst: "[io.netty.handler.codec.xml.XmlDocumentStart].<init>(java.lang.String,java.lang.String,boolean,java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:59,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:66,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getLocalName()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:67,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getName()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:67,1"
      Dst: "[javax.xml.namespace.QName].getNamespaceURI()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:67,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getPrefix()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:67,1"
      Dst: "[io.netty.handler.codec.xml.XmlElementStart].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:68,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getAttributeCount()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:69,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getAttributeType(int)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:70,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getAttributeLocalName(int)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:70,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getAttributePrefix(int)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:71,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getAttributeNamespace(int)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:71,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getAttributeValue(int)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:71,1"
      Dst: "[io.netty.handler.codec.xml.XmlAttribute].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:72,1"
      Dst: "[io.netty.handler.codec.xml.XmlElementStart].attributes()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:74,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getNamespaceCount()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:75,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getNamespacePrefix(int)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:76,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getNamespaceURI(int)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:76,1"
      Dst: "[io.netty.handler.codec.xml.XmlNamespace].<init>(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:77,1"
      Dst: "[io.netty.handler.codec.xml.XmlElement].namespaces()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:83,1"
      Dst: "[io.netty.handler.codec.xml.XmlElementEnd].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:92,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getPIData()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:92,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getPITarget()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:92,1"
      Dst: "[io.netty.handler.codec.xml.XmlProcessingInstruction].<init>(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:95,1"
      Dst: "[com.fasterxml.aalto.AsyncXMLStreamReader].getText()"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:95,1"
      Dst: "[io.netty.handler.codec.xml.XmlCharacters].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:98,1"
      Dst: "[io.netty.handler.codec.xml.XmlComment].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:101,1"
      Dst: "[io.netty.handler.codec.xml.XmlSpace].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:104,1"
      Dst: "[io.netty.handler.codec.xml.XmlEntityReference].<init>(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:107,1"
      Dst: "[io.netty.handler.codec.xml.XmlDTD].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlDecoder:110,1"
      Dst: "[io.netty.handler.codec.xml.XmlCdata].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 26
    CyclomaticComplexity: 15
  - functionName: "[io.netty.handler.codec.xml.XmlElementStart].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlElementStart"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].<init>()"
    - "[io.netty.handler.codec.xml.XmlElement].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlElementStart:29,1"
      Dst: "[io.netty.handler.codec.xml.XmlElement].<init>(java.lang.String,java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlElementStart:26,1"
      Dst: "[java.util.LinkedList].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlAttribute].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlAttribute"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlAttribute:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlElementStart].attributes()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlElementStart"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlNamespace].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlNamespace"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlNamespace:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlElementEnd].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlElementEnd"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.xml.XmlElement].<init>(java.lang.String,java.lang.String,java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlElementEnd:24,1"
      Dst: "[io.netty.handler.codec.xml.XmlElement].<init>(java.lang.String,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlSpace].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlSpace"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.xml.XmlContent].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlSpace:24,1"
      Dst: "[io.netty.handler.codec.xml.XmlContent].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlDTD].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlDTD"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlDTD:25,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlCdata].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlCdata"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.xml.XmlContent].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlCdata:24,1"
      Dst: "[io.netty.handler.codec.xml.XmlContent].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils].<init>()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils:118,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils].supportsAlpn()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkAlpnSslUtils:122"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnSslUtils:121"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils].setApplicationProtocols(javax.net.ssl.SSLEngine,java.util.List<String>)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 158
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "java.util.List<String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getSSLParameters()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getSSLParameters()"
    - "[javax.net.ssl.SSLEngine].getSSLParameters()"
    - "[jaz.Zer].toArray(java.lang.Object[])"
    - "[java.util.AbstractCollection].toArray(java.lang.Object[])"
    - "[java.util.Vector].toArray(java.lang.Object[])"
    - "[java.util.LinkedList].toArray(java.lang.Object[])"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[java.util.concurrent.CopyOnWriteArrayList].toArray(java.lang.Object[])"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].setSSLParameters(javax.net.ssl.SSLParameters)"
    - "[io.netty.handler.ssl.JdkSslEngine].setSSLParameters(javax.net.ssl.SSLParameters)"
    - "[javax.net.ssl.SSLEngine].setSSLParameters(javax.net.ssl.SSLParameters)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 19
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils:146,1"
      Dst: "[javax.net.ssl.SSLEngine].getSSLParameters()"
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils:148,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils:150,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils:154,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils:156,1"
      Dst: "[javax.net.ssl.SSLEngine].setSSLParameters(javax.net.ssl.SSLParameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils].setHandshakeApplicationProtocolSelector(javax.net.ssl.SSLEngine,java.util.function.BiFunction<SSLEngine,List<String>,String>)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 169
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "java.util.function.BiFunction<SSLEngine,List<String>,String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils:162,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils:166,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent].copy()"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].copy()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent:38,1"
      Dst: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent].duplicate()"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].duplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent:43,1"
      Dst: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].retainedDuplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent:48,1"
      Dst: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 4
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent:53,1"
      Dst: "[io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent].retain()"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionDepth: 2
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].retain()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent:58,1"
      Dst: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent].retain(int)"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent:64,1"
      Dst: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent].touch()"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionDepth: 2
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].touch()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent:70,1"
      Dst: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionDepth: 2
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].touch(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.DefaultLastBulkStringRedisContent:76,1"
      Dst: "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketUtil$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketUtil$1"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil$1:34,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketUtil$1].initialValue()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketUtil$1"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "java.security.MessageDigest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.MessageDigest].getInstance(java.lang.String)"
    - "[java.lang.InternalError].<init>(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil$1:41,1"
      Dst: "[java.security.MessageDigest].getInstance(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil$1:44,1"
      Dst: "[java.lang.InternalError].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyVersion].values()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyVersion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdyVersion[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyVersion:18,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyVersion].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyVersion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdyVersion"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyVersion:18,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyVersion].<init>(java.lang.String,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyVersion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyVersion:24,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyVersion].getVersion()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyVersion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyVersion].getMinorVersion()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyVersion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser].<init>(io.netty.util.internal.AppendableCharSequence,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.util.internal.AppendableCharSequence"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].<init>(io.netty.util.internal.AppendableCharSequence,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:346,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].<init>(io.netty.util.internal.AppendableCharSequence,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser].parseHeader(io.netty.handler.codec.stomp.StompHeadersSubframe,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser"
    linkageType: ""
    functionLinenumber: 350
    functionLinenumberEnd: 368
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.stomp.StompHeadersSubframe"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].command()"
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser].shouldUnescape(io.netty.handler.codec.stomp.StompCommand)"
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].parse(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[io.netty.handler.codec.DefaultHeaders].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].headers()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[io.netty.util.internal.StringUtil].isNullOrEmpty(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.stomp.StompHeadersSubframe].command()"
    - "[io.netty.handler.codec.stomp.StompHeadersSubframe].headers()"
    - "[io.netty.handler.codec.Headers].add(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 50
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:353"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:354"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:353"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:353"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:357"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:356"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:353"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:357"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:356"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:357"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:359"
        BranchSideFuncs:
        - "headers()"
        - "add(java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:358"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:359"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:367"
        BranchSideFuncs:
        - "isNullOrEmpty(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:366"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:360"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:363"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:362"
        BranchSideFuncs:
        - "toString()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "append(char)"
        - "<init>()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:351,1"
      Dst: "[io.netty.handler.codec.stomp.StompHeadersSubframe].command()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:351,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser].shouldUnescape(io.netty.handler.codec.stomp.StompCommand)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:352,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].parse(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:353,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].length()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:358,1"
      Dst: "[io.netty.handler.codec.stomp.StompHeadersSubframe].headers()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:358,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].toString()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:358,1"
      Dst: "[io.netty.handler.codec.Headers].add(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:360,1"
      Dst: "[io.netty.util.internal.StringUtil].isNullOrEmpty(java.lang.String)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:361,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:361,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:361,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:361,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:361,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:361,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser].shouldUnescape(io.netty.handler.codec.stomp.StompCommand)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser"
    linkageType: ""
    functionLinenumber: 435
    functionLinenumberEnd: 437
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.stomp.StompCommand"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:436"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:435"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:436"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:435"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser].process(byte)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser"
    linkageType: ""
    functionLinenumber: 371
    functionLinenumberEnd: 389
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].charSequence()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[io.netty.util.internal.AppendableCharSequence].substring(int,int)"
    - "[io.netty.util.internal.AppendableCharSequence].reset()"
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].process(byte)"
    functionUses: 2
    ICount: 20
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:372"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:388"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:387"
        BranchSideFuncs:
        - "process(byte)"
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:373"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:384"
        BranchSideFuncs:
        - "charSequence()"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:383"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:375"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:381"
        BranchSideFuncs:
        - "reset()"
        - "length()"
        - "substring(int,int)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:380"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:374,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].charSequence()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:375,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].length()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:376,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].substring(int,int)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:377,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].reset()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:388,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].process(byte)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser].appendTo(io.netty.util.internal.AppendableCharSequence,char)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser"
    linkageType: ""
    functionLinenumber: 392
    functionLinenumberEnd: 426
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.AppendableCharSequence"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].appendTo(io.netty.util.internal.AppendableCharSequence,char)"
    - "[io.netty.util.internal.AppendableCharSequence].append(char)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 45
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:393"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:398"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:408"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:407"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:399"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:403"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:402"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:408"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:424"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:423"
        BranchSideFuncs:
        - "appendTo(io.netty.util.internal.AppendableCharSequence,char)"
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:409"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:411"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:413"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:416"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:415"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:394,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].appendTo(io.netty.util.internal.AppendableCharSequence,char)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:410,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].append(char)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:417,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:417,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:417,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:417,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:417,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:417,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser].reset()"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser"
    linkageType: ""
    functionLinenumber: 428
    functionLinenumberEnd: 434
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].reset()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser:432,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flow.FlowControlHandler].<init>()"
    functionSourceFile: "io.netty.handler.flow.FlowControlHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flow.FlowControlHandler].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flow.FlowControlHandler:80,1"
      Dst: "[io.netty.handler.flow.FlowControlHandler].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flow.FlowControlHandler].<init>(boolean)"
    functionSourceFile: "io.netty.handler.flow.FlowControlHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelDuplexHandler].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flow.FlowControlHandler:83,1"
      Dst: "[io.netty.channel.ChannelDuplexHandler].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flow.FlowControlHandler].isQueueEmpty()"
    functionSourceFile: "io.netty.handler.flow.FlowControlHandler"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].isEmpty()"
    functionUses: 2
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.flow.FlowControlHandler:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:91"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.flow.FlowControlHandler:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:91"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "io.netty.handler.flow.FlowControlHandler:92,1"
      Dst: "[java.util.ArrayDeque].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.flow.FlowControlHandler].destroy()"
    functionSourceFile: "io.netty.handler.flow.FlowControlHandler"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 116
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].isEmpty()"
    - "[io.netty.util.internal.logging.JdkLogger].trace(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].trace(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].trace(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].trace(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger:java.util.ArrayDeque].poll()"
    - "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - "[io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque].recycle()"
    - "[io.netty.util.internal.logging.InternalLogger].trace(java.lang.String,java.lang.Object)"
    - "[java.util.ArrayDeque].poll()"
    functionUses: 2
    ICount: 20
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.flow.FlowControlHandler:99"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:114"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.flow.FlowControlHandler:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:112"
        BranchSideFuncs:
        - "trace(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:111"
        BranchSideFuncs:
        - "recycle()"
    - Branch String: "io.netty.handler.flow.FlowControlHandler:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:111"
        BranchSideFuncs:
        - "recycle()"
    - Branch String: "io.netty.handler.flow.FlowControlHandler:106"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:112"
        BranchSideFuncs:
        - "safeRelease(java.lang.Object)"
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:111"
        BranchSideFuncs:
        - "recycle()"
    Callsites:
    - Src: "io.netty.handler.flow.FlowControlHandler:101,1"
      Dst: "[java.util.ArrayDeque].isEmpty()"
    - Src: "io.netty.handler.flow.FlowControlHandler:102,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].trace(java.lang.String,java.lang.Object)"
    - Src: "io.netty.handler.flow.FlowControlHandler:106,1"
      Dst: "[java.util.ArrayDeque].poll()"
    - Src: "io.netty.handler.flow.FlowControlHandler:107,1"
      Dst: "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - Src: "io.netty.handler.flow.FlowControlHandler:112,1"
      Dst: "[io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque].recycle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.flow.FlowControlHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.flow.FlowControlHandler"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.bootstrap.FailedChannel:io.netty.channel.Channel:io.netty.channel.embedded.EmbeddedChannel:io.netty.channel.epoll.EpollDatagramChannel:io.netty.channel.epoll.EpollDomainDatagramChannel:io.netty.channel.epoll.EpollDomainSocketChannel:io.netty.channel.epoll.EpollServerDomainSocketChannel:io.netty.channel.epoll.EpollServerSocketChannel:io.netty.channel.epoll.EpollSocketChannel:io.netty.channel.kqueue.KQueueDatagramChannel:io.netty.channel.kqueue.KQueueDomainDatagramChannel:io.netty.channel.kqueue.KQueueDomainSocketChannel:io.netty.channel.kqueue.KQueueServerDomainSocketChannel:io.netty.channel.kqueue.KQueueServerSocketChannel:io.netty.channel.kqueue.KQueueSocketChannel:io.netty.channel.local.LocalChannel:io.netty.channel.local.LocalServerChannel:io.netty.channel.rxtx.RxtxChannel:io.netty.channel.sctp.nio.NioSctpChannel:io.netty.channel.sctp.nio.NioSctpServerChannel:io.netty.channel.sctp.oio.OioSctpChannel:io.netty.channel.sctp.oio.OioSctpServerChannel:io.netty.channel.socket.nio.NioDatagramChannel:io.netty.channel.socket.nio.NioServerSocketChannel:io.netty.channel.socket.nio.NioSocketChannel:io.netty.channel.socket.oio.OioDatagramChannel:io.netty.channel.socket.oio.OioServerSocketChannel:io.netty.channel.socket.oio.OioSocketChannel:io.netty.channel.udt.nio.NioUdtAcceptorChannel:io.netty.channel.udt.nio.NioUdtByteConnectorChannel:io.netty.channel.udt.nio.NioUdtMessageConnectorChannel:io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].config()"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flow.FlowControlHandler:119,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.flow.FlowControlHandler:119,1"
      Dst: "[io.netty.channel.Channel].config()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flow.FlowControlHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.flow.FlowControlHandler"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 130
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerAdapter].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.flow.FlowControlHandler].isQueueEmpty()"
    - "[io.netty.handler.flow.FlowControlHandler].dequeue(io.netty.channel.ChannelHandlerContext,int)"
    - "[java.util.ArrayDeque].size()"
    - "[io.netty.handler.flow.FlowControlHandler].destroy()"
    functionUses: 2
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.flow.FlowControlHandler:125"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:128"
        BranchSideFuncs:
        - "dequeue(io.netty.channel.ChannelHandlerContext,int)"
        - "size()"
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:127"
        BranchSideFuncs:
        - "destroy()"
    Callsites:
    - Src: "io.netty.handler.flow.FlowControlHandler:124,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.flow.FlowControlHandler:125,1"
      Dst: "[io.netty.handler.flow.FlowControlHandler].isQueueEmpty()"
    - Src: "io.netty.handler.flow.FlowControlHandler:126,1"
      Dst: "[java.util.ArrayDeque].size()"
    - Src: "io.netty.handler.flow.FlowControlHandler:126,1"
      Dst: "[io.netty.handler.flow.FlowControlHandler].dequeue(io.netty.channel.ChannelHandlerContext,int)"
    - Src: "io.netty.handler.flow.FlowControlHandler:128,1"
      Dst: "[io.netty.handler.flow.FlowControlHandler].destroy()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.flow.FlowControlHandler].dequeue(io.netty.channel.ChannelHandlerContext,int)"
    functionSourceFile: "io.netty.handler.flow.FlowControlHandler"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 216
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].isAutoRead()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[java.util.ArrayDeque].isEmpty()"
    - "[io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque].recycle()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelConfig].isAutoRead()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    functionUses: 3
    ICount: 28
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.flow.FlowControlHandler:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:206"
        BranchSideFuncs:
        - "poll()"
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:205"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.flow.FlowControlHandler:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:194"
        BranchSideFuncs:
        - "poll()"
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:193"
        BranchSideFuncs:
        - "poll()"
    - Branch String: "io.netty.handler.flow.FlowControlHandler:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:206"
        BranchSideFuncs:
        - "poll()"
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:205"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.flow.FlowControlHandler:195"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:199"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:198"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
    - Branch String: "io.netty.handler.flow.FlowControlHandler:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:215"
        BranchSideFuncs:
        - "recycle()"
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:214"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.flow.FlowControlHandler:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:215"
        BranchSideFuncs:
        - "recycle()"
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:214"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.flow.FlowControlHandler:210"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:215"
        BranchSideFuncs:
        - "fireChannelReadComplete()"
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:214"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.flow.FlowControlHandler:193,1"
      Dst: "[io.netty.channel.ChannelConfig].isAutoRead()"
    - Src: "io.netty.handler.flow.FlowControlHandler:194,1"
      Dst: "[java.util.ArrayDeque].poll()"
    - Src: "io.netty.handler.flow.FlowControlHandler:200,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.handler.flow.FlowControlHandler:206,1"
      Dst: "[java.util.ArrayDeque].isEmpty()"
    - Src: "io.netty.handler.flow.FlowControlHandler:207,1"
      Dst: "[io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque].recycle()"
    - Src: "io.netty.handler.flow.FlowControlHandler:211,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.flow.FlowControlHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.flow.FlowControlHandler"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 136
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flow.FlowControlHandler].destroy()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelInactive()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelInactive()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelInactive()"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flow.FlowControlHandler:133,1"
      Dst: "[io.netty.handler.flow.FlowControlHandler].destroy()"
    - Src: "io.netty.handler.flow.FlowControlHandler:134,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelInactive()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flow.FlowControlHandler].read(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.flow.FlowControlHandler"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 147
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flow.FlowControlHandler].dequeue(io.netty.channel.ChannelHandlerContext,int)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].read()"
    - "[io.netty.channel.AbstractChannelHandlerContext].read()"
    - "[io.netty.channel.ChannelHandlerContext].read()"
    functionUses: 3
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.flow.FlowControlHandler:139"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:144"
        BranchSideFuncs:
        - "read()"
    Callsites:
    - Src: "io.netty.handler.flow.FlowControlHandler:139,1"
      Dst: "[io.netty.handler.flow.FlowControlHandler].dequeue(io.netty.channel.ChannelHandlerContext,int)"
    - Src: "io.netty.handler.flow.FlowControlHandler:145,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].read()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.flow.FlowControlHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.flow.FlowControlHandler"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 164
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque].newInstance()"
    - "[java.util.ArrayDeque].offer(java.lang.Object)"
    - "[io.netty.handler.flow.FlowControlHandler].dequeue(io.netty.channel.ChannelHandlerContext,int)"
    functionUses: 3
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.flow.FlowControlHandler:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:154"
        BranchSideFuncs:
        - "newInstance()"
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:153"
        BranchSideFuncs:
        - "offer(java.lang.Object)"
    - Branch String: "io.netty.handler.flow.FlowControlHandler:159"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:154"
        BranchSideFuncs:
        - "dequeue(io.netty.channel.ChannelHandlerContext,int)"
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:153"
        BranchSideFuncs:
        - "offer(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.flow.FlowControlHandler:151,1"
      Dst: "[io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque].newInstance()"
    - Src: "io.netty.handler.flow.FlowControlHandler:154,1"
      Dst: "[java.util.ArrayDeque].offer(java.lang.Object)"
    - Src: "io.netty.handler.flow.FlowControlHandler:162,1"
      Dst: "[io.netty.handler.flow.FlowControlHandler].dequeue(io.netty.channel.ChannelHandlerContext,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.flow.FlowControlHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.flow.FlowControlHandler"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 175
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flow.FlowControlHandler].isQueueEmpty()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.flow.FlowControlHandler:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:174"
        BranchSideFuncs:
        - "fireChannelReadComplete()"
      - BranchSide: "io.netty.handler.flow.FlowControlHandler:173"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.flow.FlowControlHandler:167,1"
      Dst: "[io.netty.handler.flow.FlowControlHandler].isQueueEmpty()"
    - Src: "io.netty.handler.flow.FlowControlHandler:168,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.pool.SimpleChannelPool$ChannelPoolFullException].<init>()"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool$ChannelPoolFullException"
    linkageType: ""
    functionLinenumber: 430
    functionLinenumberEnd: 433
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool$ChannelPoolFullException:431,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool$ChannelPoolFullException].fillInStackTrace()"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool$ChannelPoolFullException"
    linkageType: ""
    functionLinenumber: 436
    functionLinenumberEnd: 438
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool$ChannelPoolFullException].<init>(io.netty.channel.pool.SimpleChannelPool$1)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool$ChannelPoolFullException"
    linkageType: ""
    functionLinenumber: 427
    functionLinenumberEnd: 429
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.pool.SimpleChannelPool$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool$ChannelPoolFullException].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool$ChannelPoolFullException:428,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool$ChannelPoolFullException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler$ClientHandshakeStateEvent].values()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler$ClientHandshakeStateEvent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler$ClientHandshakeStateEvent[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler$ClientHandshakeStateEvent:61,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler$ClientHandshakeStateEvent].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler$ClientHandshakeStateEvent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler$ClientHandshakeStateEvent"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler$ClientHandshakeStateEvent:61,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler$ClientHandshakeStateEvent].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler$ClientHandshakeStateEvent"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandler$ClientHandshakeStateEvent:61,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:41,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,boolean)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "java.nio.ByteBuffer"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,boolean,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:63,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByteBuffer(java.nio.ByteBuffer,boolean)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 71
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByteBuffer(java.nio.ByteBuffer,boolean)"
    - "[io.netty.util.internal.PlatformDependent].directBufferAddress(java.nio.ByteBuffer)"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:68,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].setByteBuffer(java.nio.ByteBuffer,boolean)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:69,1"
      Dst: "[io.netty.util.internal.PlatformDependent].directBufferAddress(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].hasMemoryAddress()"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    functionUses: 38
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:79,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionDepth: 4
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getByte(int)"
    functionUses: 142
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:85,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:86,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getByte(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 3
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].getByte(long)"
    functionUses: 18
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:91,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:91,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getByte(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 287
    functionLinenumberEnd: 289
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getByte(long)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 2
    returnType: "byte"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getByte(long)"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:39,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].getByte(long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 558
    functionLinenumberEnd: 560
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getByte(long)"
    functionUses: 37
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:559,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getByte(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].getByte(long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 631
    functionLinenumberEnd: 633
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getByte(long)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:632,1"
      Dst: "[sun.misc.Unsafe].getByte(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getShort(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionDepth: 4
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getShort(int)"
    functionUses: 20
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:96,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:97,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getShort(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 3
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].getShort(long)"
    functionUses: 8
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:102,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:102,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getShort(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getShort(long)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 48
    functionDepth: 2
    returnType: "short"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getShort(long)"
    - "[java.lang.Short].reverseBytes(short)"
    - "[io.netty.util.internal.PlatformDependent].getByte(long)"
    functionUses: 3
    ICount: 21
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:43"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:47"
        BranchSideFuncs:
        - "reverseBytes(short)"
        - "getShort(long)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:46"
        BranchSideFuncs:
        - "getByte(long)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:45"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:43"
        BranchSideFuncs:
        - "reverseBytes(short)"
        - "getShort(long)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:44,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getShort(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:45,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:47,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getShortLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 3
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].getShortLE(long)"
    functionUses: 6
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:107,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:107,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getShortLE(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getShortLE(long)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 56
    functionDepth: 2
    returnType: "short"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getShort(long)"
    - "[java.lang.Short].reverseBytes(short)"
    - "[io.netty.util.internal.PlatformDependent].getByte(long)"
    functionUses: 2
    ICount: 21
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:51"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:55"
        BranchSideFuncs:
        - "reverseBytes(short)"
        - "getShort(long)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:54"
        BranchSideFuncs:
        - "getByte(long)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:53"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:51"
        BranchSideFuncs:
        - "reverseBytes(short)"
        - "getShort(long)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:52,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getShort(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:53,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:55,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getUnsignedMedium(int)"
    functionUses: 15
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:112,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:113,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getUnsignedMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].getUnsignedMedium(long)"
    functionUses: 8
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:118,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:118,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getUnsignedMedium(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getUnsignedMedium(long)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 67
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getByte(long)"
    - "[io.netty.util.internal.PlatformDependent].getShort(long)"
    - "[java.lang.Short].reverseBytes(short)"
    functionUses: 3
    ICount: 40
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:59"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:64"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:63"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:60"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:62"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:61"
        BranchSideFuncs:
        - "reverseBytes(short)"
        - "getShort(long)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:60,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:61,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getShort(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:62,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].getUnsignedMediumLE(long)"
    functionUses: 6
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:123,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:123,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getUnsignedMediumLE(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getUnsignedMediumLE(long)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 78
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getByte(long)"
    - "[io.netty.util.internal.PlatformDependent].getShort(long)"
    - "[java.lang.Short].reverseBytes(short)"
    functionUses: 2
    ICount: 40
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:70"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:75"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:74"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:71"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:73"
        BranchSideFuncs:
        - "reverseBytes(short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:72"
        BranchSideFuncs:
        - "getShort(long)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:71,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:72,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getShort(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:72,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getInt(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getInt(int)"
    functionUses: 25
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:128,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:129,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getInt(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].getInt(long)"
    functionUses: 8
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:134,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:134,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getInt(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getInt(long)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 89
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getInt(long)"
    - "[java.lang.Integer].reverseBytes(int)"
    - "[io.netty.util.internal.PlatformDependent].getByte(long)"
    functionUses: 3
    ICount: 34
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:81"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:85"
        BranchSideFuncs:
        - "getInt(long)"
        - "reverseBytes(int)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:84"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:83"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:81"
        BranchSideFuncs:
        - "getInt(long)"
        - "reverseBytes(int)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:82,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getInt(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:83,1"
      Dst: "[java.lang.Integer].reverseBytes(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:85,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getIntLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].getIntLE(long)"
    functionUses: 6
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:139,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:139,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getIntLE(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getIntLE(long)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 100
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getInt(long)"
    - "[java.lang.Integer].reverseBytes(int)"
    - "[io.netty.util.internal.PlatformDependent].getByte(long)"
    functionUses: 2
    ICount: 34
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:92"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:96"
        BranchSideFuncs:
        - "getInt(long)"
        - "reverseBytes(int)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:95"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:94"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:92"
        BranchSideFuncs:
        - "getInt(long)"
        - "reverseBytes(int)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:93,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getInt(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:94,1"
      Dst: "[java.lang.Integer].reverseBytes(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:96,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getLong(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionDepth: 4
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getLong(int)"
    functionUses: 20
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:144,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:145,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getLong(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionDepth: 3
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].getLong(long)"
    functionUses: 9
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:150,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:150,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getLong(long)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 115
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getLong(long)"
    - "[java.lang.Long].reverseBytes(long)"
    - "[io.netty.util.internal.PlatformDependent].getByte(long)"
    functionUses: 3
    ICount: 55
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:103"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:107"
        BranchSideFuncs:
        - "getLong(long)"
        - "reverseBytes(long)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:105"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:103"
        BranchSideFuncs:
        - "getLong(long)"
        - "reverseBytes(long)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:104,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getLong(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:105,1"
      Dst: "[java.lang.Long].reverseBytes(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:107,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getLongLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionDepth: 3
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].getLongLE(long)"
    functionUses: 6
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:155,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:155,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getLongLE(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getLongLE(long)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 130
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getLong(long)"
    - "[java.lang.Long].reverseBytes(long)"
    - "[io.netty.util.internal.PlatformDependent].getByte(long)"
    functionUses: 2
    ICount: 55
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:118"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:122"
        BranchSideFuncs:
        - "getLong(long)"
        - "reverseBytes(long)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:121"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:120"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:118"
        BranchSideFuncs:
        - "getLong(long)"
        - "reverseBytes(long)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:119,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getLong(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:120,1"
      Dst: "[java.lang.Long].reverseBytes(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:122,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getByte(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].getBytes(io.netty.buffer.AbstractByteBuf,long,int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 15
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:160,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:160,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getBytes(io.netty.buffer.AbstractByteBuf,long,int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getBytes(io.netty.buffer.AbstractByteBuf,long,int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 464
    functionLinenumberEnd: 479
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "long"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.util.internal.PlatformDependent].copyMemory(long,long,long)"
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.EmptyByteBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.util.internal.PlatformDependent].copyMemory(long,byte[],int,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 2
    ICount: 37
    EdgeCount: 145
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:467"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:471"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:470"
        BranchSideFuncs:
        - "hasMemoryAddress()"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:471"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:473"
        BranchSideFuncs:
        - "copyMemory(long,long,long)"
        - "memoryAddress()"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:472"
        BranchSideFuncs:
        - "hasArray()"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:473"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:476"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
        - "copyMemory(long,byte[],int,long)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:475"
        BranchSideFuncs:
        - "setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:465,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:466,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:467,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:467,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:468,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:468,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:468,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:468,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:468,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:471,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:472,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:472,1"
      Dst: "[io.netty.util.internal.PlatformDependent].copyMemory(long,long,long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:473,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:474,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:474,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:474,1"
      Dst: "[io.netty.util.internal.PlatformDependent].copyMemory(long,byte[],int,long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:476,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent].copyMemory(long,long,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 742
    functionLinenumberEnd: 745
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].copyMemory(long,long,long)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:743,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].copyMemory(long,long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].copyMemory(long,long,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 725
    functionLinenumberEnd: 732
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].javaVersion()"
    - "[io.netty.util.internal.PlatformDependent0].copyMemoryWithSafePointPolling(long,long,long)"
    - "[sun.misc.Unsafe].copyMemory(long,long,long)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:726"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:729"
        BranchSideFuncs:
        - "copyMemoryWithSafePointPolling(long,long,long)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:728"
        BranchSideFuncs:
        - "copyMemory(long,long,long)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:726,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].javaVersion()"
    - Src: "io.netty.util.internal.PlatformDependent0:727,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].copyMemoryWithSafePointPolling(long,long,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:729,1"
      Dst: "[sun.misc.Unsafe].copyMemory(long,long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent0].copyMemoryWithSafePointPolling(long,long,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 733
    functionLinenumberEnd: 742
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(long,long)"
    - "[sun.misc.Unsafe].copyMemory(long,long,long)"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:734"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:741"
        BranchSideFuncs:
        - "min(long,long)"
        - "copyMemory(long,long,long)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:740"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:735,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:736,1"
      Dst: "[sun.misc.Unsafe].copyMemory(long,long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].copyMemory(long,byte[],int,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 755
    functionLinenumberEnd: 758
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].copyMemory(java.lang.Object,long,java.lang.Object,long,long)"
    functionUses: 8
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:756,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].copyMemory(java.lang.Object,long,java.lang.Object,long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,byte[],int,int,boolean)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionDepth: 4
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].getBytes(io.netty.buffer.AbstractByteBuf,long,int,byte[],int,int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:166,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:166,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getBytes(io.netty.buffer.AbstractByteBuf,long,int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getBytes(io.netty.buffer.AbstractByteBuf,long,int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 480
    functionLinenumberEnd: 490
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "long"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.PlatformDependent].copyMemory(long,byte[],int,long)"
    functionUses: 2
    ICount: 23
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:483"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:486"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:485"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:486"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:489"
        BranchSideFuncs:
        - "copyMemory(long,byte[],int,long)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:488"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:481,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:482,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:483,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:484,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:484,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:484,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:484,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:484,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:487,1"
      Dst: "[io.netty.util.internal.PlatformDependent].copyMemory(long,byte[],int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,java.nio.ByteBuffer,boolean)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 173
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].getBytes(io.netty.buffer.AbstractByteBuf,long,int,java.nio.ByteBuffer)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:171,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:171,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getBytes(io.netty.buffer.AbstractByteBuf,long,int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getBytes(io.netty.buffer.AbstractByteBuf,long,int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 491
    functionLinenumberEnd: 514
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "long"
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[java.nio.ReadOnlyBufferException].<init>()"
    - "[io.netty.util.internal.PlatformDependent].directBufferAddress(java.nio.ByteBuffer)"
    - "[io.netty.util.internal.PlatformDependent].copyMemory(long,long,long)"
    - "[io.netty.util.internal.PlatformDependent].copyMemory(long,byte[],int,long)"
    - "[io.netty.buffer.AbstractByteBuf].nioBuffer()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer()"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.ByteBuffer].isDirect()"
    - "[java.nio.Buffer].isReadOnly()"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.ByteBuffer].hasArray()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.nio.ByteBuffer].arrayOffset()"
    - "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    functionUses: 2
    ICount: 45
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:493"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:497"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:496"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:497"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:497"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:496"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:498"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:502"
        BranchSideFuncs:
        - "copyMemory(long,long,long)"
        - "directBufferAddress(java.nio.ByteBuffer)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:497"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:511"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:510"
        BranchSideFuncs:
        - "nioBuffer()"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:492,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:492,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:497,1"
      Dst: "[java.nio.ByteBuffer].isDirect()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:498,1"
      Dst: "[java.nio.Buffer].isReadOnly()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:500,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:503,1"
      Dst: "[io.netty.util.internal.PlatformDependent].directBufferAddress(java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:504,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:504,1"
      Dst: "[io.netty.util.internal.PlatformDependent].copyMemory(long,long,long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:505,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:497,1"
      Dst: "[java.nio.ByteBuffer].hasArray()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:508,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:508,1"
      Dst: "[java.nio.ByteBuffer].arrayOffset()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:508,1"
      Dst: "[io.netty.util.internal.PlatformDependent].copyMemory(long,byte[],int,long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:511,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].nioBuffer()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:511,1"
      Dst: "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 179
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setByte(int,int)"
    functionUses: 71
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:176,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:177,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setByte(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setByte(long,int)"
    functionUses: 27
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:183,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:183,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setByte(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setByte(long,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:133,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 698
    functionLinenumberEnd: 701
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].putByte(long,byte)"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:699,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].putByte(long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].putByte(long,byte)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 683
    functionLinenumberEnd: 686
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].putByte(long,byte)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:684,1"
      Dst: "[sun.misc.Unsafe].putByte(long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setShort(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 191
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setShort(int,int)"
    functionUses: 18
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:188,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:189,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setShort(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setShort(long,int)"
    functionUses: 8
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:195,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:195,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setShort(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setShort(long,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 145
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].putShort(long,short)"
    - "[java.lang.Short].reverseBytes(short)"
    - "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    functionUses: 2
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:137"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:141"
        BranchSideFuncs:
        - "putShort(long,short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:140"
        BranchSideFuncs:
        - "putByte(long,byte)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:138"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:139"
        BranchSideFuncs:
        - "reverseBytes(short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:138"
        BranchSideFuncs:
        - "reverseBytes(short)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:139,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:138,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putShort(long,short)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:141,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setShortLE(long,int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:200,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:200,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setShortLE(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setShortLE(long,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 155
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].putShort(long,short)"
    - "[java.lang.Short].reverseBytes(short)"
    - "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    functionUses: 2
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:147"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:151"
        BranchSideFuncs:
        - "putShort(long,short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:150"
        BranchSideFuncs:
        - "putByte(long,byte)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:148"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:148"
        BranchSideFuncs:
        - "reverseBytes(short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:147"
        BranchSideFuncs:
        - "putShort(long,short)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:149,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:148,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putShort(long,short)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:151,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 208
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setMedium(int,int)"
    functionUses: 11
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:205,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:206,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 214
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setMedium(long,int)"
    functionUses: 8
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:212,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:212,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setMedium(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setMedium(long,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 166
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    - "[io.netty.util.internal.PlatformDependent].putShort(long,short)"
    - "[java.lang.Short].reverseBytes(short)"
    functionUses: 2
    ICount: 24
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:158"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:162"
        BranchSideFuncs:
        - "putShort(long,short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:161"
        BranchSideFuncs:
        - "putByte(long,byte)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:159"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:160"
        BranchSideFuncs:
        - "reverseBytes(short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:159"
        BranchSideFuncs:
        - "reverseBytes(short)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:157,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:160,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:159,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putShort(long,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 219
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setMediumLE(long,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:217,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:217,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setMediumLE(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setMediumLE(long,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 177
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    - "[io.netty.util.internal.PlatformDependent].putShort(long,short)"
    - "[java.lang.Short].reverseBytes(short)"
    functionUses: 2
    ICount: 26
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:169"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:173"
        BranchSideFuncs:
        - "putShort(long,short)"
        - "reverseBytes(short)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:172"
        BranchSideFuncs:
        - "putByte(long,byte)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:170"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:169"
        BranchSideFuncs:
        - "putShort(long,short)"
        - "reverseBytes(short)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:168,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:170,1"
      Dst: "[java.lang.Short].reverseBytes(short)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:170,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putShort(long,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setInt(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 225
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setInt(int,int)"
    functionUses: 26
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:222,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:223,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setInt(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 231
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setInt(long,int)"
    functionUses: 12
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:229,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:229,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setInt(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setInt(long,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 188
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].putInt(long,int)"
    - "[java.lang.Integer].reverseBytes(int)"
    - "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    functionUses: 2
    ICount: 26
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:179"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:182"
        BranchSideFuncs:
        - "putInt(long,int)"
        - "reverseBytes(int)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:181"
        BranchSideFuncs:
        - "putByte(long,byte)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:180"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:179"
        BranchSideFuncs:
        - "putInt(long,int)"
        - "reverseBytes(int)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:180,1"
      Dst: "[java.lang.Integer].reverseBytes(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:180,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putInt(long,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:182,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 233
    functionLinenumberEnd: 236
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setIntLE(long,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:234,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:234,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setIntLE(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setIntLE(long,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 189
    functionLinenumberEnd: 199
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].putInt(long,int)"
    - "[java.lang.Integer].reverseBytes(int)"
    - "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    functionUses: 2
    ICount: 26
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:190"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:193"
        BranchSideFuncs:
        - "putInt(long,int)"
        - "reverseBytes(int)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:192"
        BranchSideFuncs:
        - "putByte(long,byte)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:191"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:190"
        BranchSideFuncs:
        - "putInt(long,int)"
        - "reverseBytes(int)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:191,1"
      Dst: "[java.lang.Integer].reverseBytes(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:191,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putInt(long,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:193,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setLong(int,long)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 242
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setLong(int,long)"
    functionUses: 14
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:239,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:240,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setLong(int,long)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 245
    functionLinenumberEnd: 248
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setLong(long,long)"
    functionUses: 10
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:246,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:246,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setLong(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setLong(long,long)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 214
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].putLong(long,long)"
    - "[java.lang.Long].reverseBytes(long)"
    - "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    functionUses: 2
    ICount: 50
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:201"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:204"
        BranchSideFuncs:
        - "reverseBytes(long)"
        - "putLong(long,long)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:203"
        BranchSideFuncs:
        - "putByte(long,byte)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:202"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:201"
        BranchSideFuncs:
        - "reverseBytes(long)"
        - "putLong(long,long)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:202,1"
      Dst: "[java.lang.Long].reverseBytes(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:202,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putLong(long,long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:204,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setLongLE(long,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:251,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:251,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setLongLE(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setLongLE(long,long)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].reverseBytes(long)"
    - "[io.netty.util.internal.PlatformDependent].putLong(long,long)"
    - "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:216"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:219"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:218"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:217"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:216"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:217,1"
      Dst: "[java.lang.Long].reverseBytes(long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:217,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putLong(long,long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:219,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 255
    functionLinenumberEnd: 258
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setBytes(io.netty.buffer.AbstractByteBuf,long,int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 20
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:256,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:256,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setBytes(io.netty.buffer.AbstractByteBuf,long,int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setBytes(io.netty.buffer.AbstractByteBuf,long,int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 515
    functionLinenumberEnd: 532
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "long"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.util.internal.PlatformDependent].copyMemory(long,long,long)"
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.EmptyByteBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.util.internal.PlatformDependent].copyMemory(byte[],int,long,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 2
    ICount: 38
    EdgeCount: 146
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:518"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:522"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:521"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:522"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:531"
        BranchSideFuncs:
        - "hasMemoryAddress()"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:530"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:523"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:525"
        BranchSideFuncs:
        - "copyMemory(long,long,long)"
        - "memoryAddress()"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:524"
        BranchSideFuncs:
        - "hasArray()"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:525"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:528"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
        - "copyMemory(byte[],int,long,long)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:527"
        BranchSideFuncs:
        - "getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:516,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:517,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:518,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:518,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:519,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:519,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:519,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:519,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:519,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:523,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:524,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:524,1"
      Dst: "[io.netty.util.internal.PlatformDependent].copyMemory(long,long,long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:525,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:526,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:526,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:526,1"
      Dst: "[io.netty.util.internal.PlatformDependent].copyMemory(byte[],int,long,long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:528,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 264
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setBytes(io.netty.buffer.AbstractByteBuf,long,int,byte[],int,int)"
    functionUses: 13
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:262,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:262,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setBytes(io.netty.buffer.AbstractByteBuf,long,int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setBytes(io.netty.buffer.AbstractByteBuf,long,int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 533
    functionLinenumberEnd: 546
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "long"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.PlatformDependent].copyMemory(byte[],int,long,long)"
    functionUses: 2
    ICount: 23
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:538"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:542"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:541"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:542"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:545"
        BranchSideFuncs:
        - "copyMemory(byte[],int,long,long)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:544"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:534,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:537,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:538,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:539,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:539,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:539,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:539,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:539,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:543,1"
      Dst: "[io.netty.util.internal.PlatformDependent].copyMemory(byte[],int,long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 270
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setBytes(io.netty.buffer.AbstractByteBuf,long,int,java.nio.ByteBuffer)"
    functionUses: 9
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:268,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:268,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setBytes(io.netty.buffer.AbstractByteBuf,long,int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setBytes(io.netty.buffer.AbstractByteBuf,long,int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 547
    functionLinenumberEnd: 575
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "long"
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.util.internal.PlatformDependent].directBufferAddress(java.nio.ByteBuffer)"
    - "[io.netty.util.internal.PlatformDependent].copyMemory(long,long,long)"
    - "[io.netty.util.internal.PlatformDependent].copyMemory(byte[],int,long,long)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setSingleBytes(io.netty.buffer.AbstractByteBuf,long,int,java.nio.ByteBuffer,int)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.ByteBuffer].isDirect()"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.ByteBuffer].hasArray()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.nio.ByteBuffer].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    functionUses: 2
    ICount: 46
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:549"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:553"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:552"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:553"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:553"
        BranchSideFuncs:
        - "copyMemory(long,long,long)"
        - "directBufferAddress(java.nio.ByteBuffer)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:552"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:553"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:565"
        BranchSideFuncs:
        - "copyMemory(long,long,long)"
        - "directBufferAddress(java.nio.ByteBuffer)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:564"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:565"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:569"
        BranchSideFuncs:
        - "setSingleBytes(io.netty.buffer.AbstractByteBuf,long,int,java.nio.ByteBuffer,int)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:568"
        BranchSideFuncs:
        - "<init>()"
        - "nioBufferCount()"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:569"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:570"
        BranchSideFuncs:
        - "internalNioBuffer(int,int)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:569"
        BranchSideFuncs:
        - "internalNioBuffer(int,int)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:569"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:570"
        BranchSideFuncs:
        - "internalNioBuffer(int,int)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:569"
        BranchSideFuncs:
        - "internalNioBuffer(int,int)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:548,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:553,1"
      Dst: "[java.nio.ByteBuffer].isDirect()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:554,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:556,1"
      Dst: "[io.netty.util.internal.PlatformDependent].directBufferAddress(java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:557,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:557,1"
      Dst: "[io.netty.util.internal.PlatformDependent].copyMemory(long,long,long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:558,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:553,1"
      Dst: "[java.nio.ByteBuffer].hasArray()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:562,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:562,1"
      Dst: "[java.nio.ByteBuffer].arrayOffset()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:562,1"
      Dst: "[io.netty.util.internal.PlatformDependent].copyMemory(byte[],int,long,long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:566,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setSingleBytes(io.netty.buffer.AbstractByteBuf,long,int,java.nio.ByteBuffer,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:569,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:569,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:570,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:571,1"
      Dst: "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setSingleBytes(io.netty.buffer.AbstractByteBuf,long,int,java.nio.ByteBuffer,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 577
    functionLinenumberEnd: 589
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "long"
    - "int"
    - "java.nio.ByteBuffer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.Buffer].limit()"
    - "[java.nio.ByteBuffer].get(int)"
    - "[java.nio.ByteBuffer].position(int)"
    functionUses: 1
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:582"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:586"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:578,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:579,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:580,1"
      Dst: "[java.nio.Buffer].limit()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:583,1"
      Dst: "[java.nio.ByteBuffer].get(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:584,1"
      Dst: "[io.netty.util.internal.PlatformDependent].putByte(long,byte)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:587,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,java.io.OutputStream,int,boolean)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 273
    functionLinenumberEnd: 276
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.io.OutputStream"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].getBytes(io.netty.buffer.AbstractByteBuf,long,int,java.io.OutputStream,int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:274,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:274,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getBytes(io.netty.buffer.AbstractByteBuf,long,int,java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getBytes(io.netty.buffer.AbstractByteBuf,long,int,java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 590
    functionLinenumberEnd: 609
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "long"
    - "int"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].alloc()"
    - "[io.netty.buffer.DuplicatedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].alloc()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.FixedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].alloc()"
    - "[io.netty.buffer.PooledByteBuf].alloc()"
    - "[io.netty.buffer.SlicedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].alloc()"
    - "[io.netty.buffer.CompositeByteBuf].alloc()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.buffer.UnpooledByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.buffer.PooledByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.buffer.UnsafeByteBufUtil].getBytes(long,byte[],int,int,java.io.OutputStream,int)"
    - "[io.netty.buffer.ByteBufUtil].threadLocalTempArray(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBuf].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 2
    ICount: 26
    EdgeCount: 97
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:592"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:608"
        BranchSideFuncs:
        - "min(int,int)"
        - "isDirectBufferPooled()"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:607"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:594"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:595"
        BranchSideFuncs:
        - "threadLocalTempArray(int)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:594"
        BranchSideFuncs:
        - "threadLocalTempArray(int)"
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:594"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:598"
        BranchSideFuncs:
        - "threadLocalTempArray(int)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:597"
        BranchSideFuncs:
        - "heapBuffer(int)"
        - "arrayOffset()"
        - "array()"
        - "getBytes(long,byte[],int,int,java.io.OutputStream,int)"
        - "alloc()"
        - "release()"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:591,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:593,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:594,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:594,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].isDirectBufferPooled()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:595,1"
      Dst: "[io.netty.buffer.ByteBufUtil].threadLocalTempArray(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:595,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].getBytes(long,byte[],int,int,java.io.OutputStream,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:598,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:600,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:601,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:604,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].getBytes(long,byte[],int,int,java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 612
    functionLinenumberEnd: 620
    functionDepth: 3
    returnType: "void"
    argCount: 6
    argTypes:
    - "long"
    - "byte[]"
    - "int"
    - "int"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.util.internal.PlatformDependent].copyMemory(long,byte[],int,long)"
    - "[java.io.FilterOutputStream].write(byte[],int,int)"
    - "[java.io.BufferedOutputStream].write(byte[],int,int)"
    - "[java.io.PrintStream].write(byte[],int,int)"
    - "[java.io.ObjectOutputStream$BlockDataOutputStream].write(byte[],int,int)"
    - "[io.netty.buffer.ByteBufOutputStream].write(byte[],int,int)"
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream$1].write(byte[],int,int)"
    - "[java.io.FileOutputStream].write(byte[],int,int)"
    - "[java.io.OutputStream].write(byte[],int,int)"
    - "[java.io.ObjectOutputStream].write(byte[],int,int)"
    - "[io.netty.handler.codec.serialization.ObjectEncoderOutputStream].write(byte[],int,int)"
    - "[java.io.DataOutputStream].write(byte[],int,int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:618"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:613"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:612"
        BranchSideFuncs:
        - "min(int,int)"
        - "copyMemory(long,byte[],int,long)"
        - "write(byte[],int,int)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:613,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:614,1"
      Dst: "[io.netty.util.internal.PlatformDependent].copyMemory(long,byte[],int,long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:615,1"
      Dst: "[java.io.OutputStream].write(byte[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 278
    functionLinenumberEnd: 280
    functionDepth: 4
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setBytes(io.netty.buffer.AbstractByteBuf,long,int,java.io.InputStream,int)"
    functionUses: 8
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:279,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:279,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setBytes(io.netty.buffer.AbstractByteBuf,long,int,java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setBytes(io.netty.buffer.AbstractByteBuf,long,int,java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 448
    functionLinenumberEnd: 462
    functionDepth: 3
    returnType: "int"
    argCount: 5
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "long"
    - "int"
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].alloc()"
    - "[io.netty.buffer.DuplicatedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].alloc()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.FixedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].alloc()"
    - "[io.netty.buffer.PooledByteBuf].alloc()"
    - "[io.netty.buffer.SlicedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].alloc()"
    - "[io.netty.buffer.CompositeByteBuf].alloc()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[java.io.BufferedInputStream].read(byte[],int,int)"
    - "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].read(byte[],int,int)"
    - "[java.util.zip.InflaterInputStream].read(byte[],int,int)"
    - "[io.netty.buffer.ByteBufInputStream].read(byte[],int,int)"
    - "[java.io.DataInputStream].read(byte[],int,int)"
    - "[java.io.InputStream$1].read(byte[],int,int)"
    - "[java.io.FilterInputStream].read(byte[],int,int)"
    - "[java.util.jar.JarInputStream].read(byte[],int,int)"
    - "[java.io.InputStream].read(byte[],int,int)"
    - "[java.io.ObjectInputStream$BlockDataInputStream].read(byte[],int,int)"
    - "[java.io.PushbackInputStream].read(byte[],int,int)"
    - "[java.io.FileInputStream].read(byte[],int,int)"
    - "[java.io.ObjectInputStream].read(byte[],int,int)"
    - "[java.util.zip.ZipInputStream].read(byte[],int,int)"
    - "[java.util.jar.Manifest$FastInputStream].read(byte[],int,int)"
    - "[java.io.ObjectInputStream$PeekInputStream].read(byte[],int,int)"
    - "[java.io.ByteArrayInputStream].read(byte[],int,int)"
    - "[java.lang.ProcessImpl$DeferredCloseInputStream].read(byte[],int,int)"
    - "[io.netty.util.internal.PlatformDependent].copyMemory(byte[],int,long,long)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBuf].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    functionUses: 2
    ICount: 19
    EdgeCount: 98
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:455"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:458"
        BranchSideFuncs:
        - "copyMemory(byte[],int,long,long)"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:457"
        BranchSideFuncs:
        - "release()"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:449,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:450,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:450,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:452,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:453,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:454,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:456,1"
      Dst: "[io.netty.util.internal.PlatformDependent].copyMemory(byte[],int,long,long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:460,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].copy(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 283
    functionLinenumberEnd: 285
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].copy(io.netty.buffer.AbstractByteBuf,long,int,int)"
    functionUses: 10
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:284,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:284,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].copy(io.netty.buffer.AbstractByteBuf,long,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].copy(io.netty.buffer.AbstractByteBuf,long,int,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 434
    functionLinenumberEnd: 446
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].alloc()"
    - "[io.netty.buffer.DuplicatedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].alloc()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.FixedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].alloc()"
    - "[io.netty.buffer.PooledByteBuf].alloc()"
    - "[io.netty.buffer.SlicedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].alloc()"
    - "[io.netty.buffer.CompositeByteBuf].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].maxCapacity()"
    - "[io.netty.buffer.AbstractByteBuf].maxCapacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].maxCapacity()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.util.internal.PlatformDependent].copyMemory(long,long,long)"
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].setIndex(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 77
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:437"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:445"
        BranchSideFuncs:
        - "hasMemoryAddress()"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:444"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:438"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:442"
        BranchSideFuncs:
        - "copyMemory(long,long,long)"
        - "setIndex(int,int)"
        - "memoryAddress()"
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:441"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf,int,int)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:435,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:436,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:436,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].maxCapacity()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:436,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:438,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:439,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:439,1"
      Dst: "[io.netty.util.internal.PlatformDependent].copyMemory(long,long,long)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:440,1"
      Dst: "[io.netty.buffer.ByteBuf].setIndex(int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:442,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].newSwappedByteBuf()"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 292
    functionLinenumberEnd: 298
    functionDepth: 2
    returnType: "io.netty.buffer.SwappedByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].isUnaligned()"
    - "[io.netty.buffer.UnsafeDirectSwappedByteBuf].<init>(io.netty.buffer.AbstractByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].newSwappedByteBuf()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:293"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:296"
        BranchSideFuncs:
        - "newSwappedByteBuf()"
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:293,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isUnaligned()"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:295,1"
      Dst: "[io.netty.buffer.UnsafeDirectSwappedByteBuf].<init>(io.netty.buffer.AbstractByteBuf)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:297,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].newSwappedByteBuf()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setZero(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 301
    functionLinenumberEnd: 305
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setZero(long,int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:302,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:303,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:303,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setZero(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].setZero(long,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 621
    functionLinenumberEnd: 628
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].setMemory(long,long,byte)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:622"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:626"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:625"
        BranchSideFuncs:
        - "setMemory(long,long,byte)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:626,1"
      Dst: "[io.netty.util.internal.PlatformDependent].setMemory(long,long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].setMemory(long,long,byte)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 763
    functionLinenumberEnd: 766
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].setMemory(long,long,byte)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:764,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].setMemory(long,long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].setMemory(long,long,byte)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 764
    functionLinenumberEnd: 767
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "long"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].setMemory(long,long,byte)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:765,1"
      Dst: "[sun.misc.Unsafe].setMemory(long,long,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].writeZero(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 308
    functionLinenumberEnd: 314
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - "[io.netty.buffer.UnsafeByteBufUtil].setZero(long,int)"
    functionUses: 5
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:309,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:311,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].addr(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeDirectByteBuf:311,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].setZero(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator"
    linkageType: ""
    functionLinenumber: 423
    functionLinenumberEnd: 429
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].findNextValue()"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:424,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:426,1"
      Dst: "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:427,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].findNextValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator"
    linkageType: ""
    functionLinenumber: 431
    functionLinenumberEnd: 433
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 228
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:432"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:431"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator"
    linkageType: ""
    functionLinenumber: 436
    functionLinenumberEnd: 443
    functionDepth: 6
    returnType: "java.lang.CharSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[java.util.NoSuchElementException].<init>()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].findNextValue()"
    functionUses: 229
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:437"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:440"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:439"
        BranchSideFuncs:
        - "findNextValue()"
        - "access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:437,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:438,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:440,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:441,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].findNextValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].findNextValue()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator"
    linkageType: ""
    functionLinenumber: 450
    functionLinenumberEnd: 458
    functionDepth: 5
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    functionUses: 2
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:451"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:null"
        BranchSideFuncs:
        - "contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
        - "hashCode(java.lang.CharSequence)"
        - "access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:453"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:451"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:450"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:453"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:451"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:450"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:451,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].access$200(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:453,1"
      Dst: "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:453,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].remove()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator"
    linkageType: ""
    functionLinenumber: 446
    functionLinenumberEnd: 448
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:447,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].<init>()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].<init>(io.netty.channel.Channel)"
    - "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    - "[io.netty.util.internal.PlatformDependent].newSpscQueue()"
    - "[io.netty.channel.local.LocalChannel$1].<init>(io.netty.channel.local.LocalChannel)"
    - "[io.netty.channel.local.LocalChannel$2].<init>(io.netty.channel.local.LocalChannel)"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.ChannelConfig].getAllocator()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].<init>(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.ChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:90,1"
      Dst: "[io.netty.channel.AbstractChannel].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.channel.local.LocalChannel:60,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.channel.local.LocalChannel:62,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newSpscQueue()"
    - Src: "io.netty.channel.local.LocalChannel:63,1"
      Dst: "[io.netty.channel.local.LocalChannel$1].<init>(io.netty.channel.local.LocalChannel)"
    - Src: "io.netty.channel.local.LocalChannel:73,1"
      Dst: "[io.netty.channel.local.LocalChannel$2].<init>(io.netty.channel.local.LocalChannel)"
    - Src: "io.netty.channel.local.LocalChannel:91,1"
      Dst: "[io.netty.channel.local.LocalChannel].config()"
    - Src: "io.netty.channel.local.LocalChannel:91,1"
      Dst: "[io.netty.channel.ChannelConfig].getAllocator()"
    - Src: "io.netty.channel.local.LocalChannel:91,1"
      Dst: "[io.netty.channel.PreferHeapByteBufAllocator].<init>(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.local.LocalChannel:91,1"
      Dst: "[io.netty.channel.ChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].<init>(io.netty.channel.local.LocalServerChannel,io.netty.channel.local.LocalChannel)"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 101
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.local.LocalServerChannel"
    - "io.netty.channel.local.LocalChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    - "[io.netty.util.internal.PlatformDependent].newSpscQueue()"
    - "[io.netty.channel.local.LocalChannel$1].<init>(io.netty.channel.local.LocalChannel)"
    - "[io.netty.channel.local.LocalChannel$2].<init>(io.netty.channel.local.LocalChannel)"
    - "[io.netty.channel.AbstractChannel].<init>(io.netty.channel.Channel)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].<init>(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.local.LocalServerChannel].localAddress()"
    - "[io.netty.channel.local.LocalChannel].localAddress()"
    - "[io.netty.channel.ChannelConfig].getAllocator()"
    - "[io.netty.channel.ChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 1
    ICount: 27
    EdgeCount: 36
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:95,1"
      Dst: "[io.netty.channel.AbstractChannel].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.channel.local.LocalChannel:60,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.channel.local.LocalChannel:62,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newSpscQueue()"
    - Src: "io.netty.channel.local.LocalChannel:63,1"
      Dst: "[io.netty.channel.local.LocalChannel$1].<init>(io.netty.channel.local.LocalChannel)"
    - Src: "io.netty.channel.local.LocalChannel:73,1"
      Dst: "[io.netty.channel.local.LocalChannel$2].<init>(io.netty.channel.local.LocalChannel)"
    - Src: "io.netty.channel.local.LocalChannel:96,1"
      Dst: "[io.netty.channel.local.LocalChannel].config()"
    - Src: "io.netty.channel.local.LocalChannel:96,1"
      Dst: "[io.netty.channel.ChannelConfig].getAllocator()"
    - Src: "io.netty.channel.local.LocalChannel:96,1"
      Dst: "[io.netty.channel.PreferHeapByteBufAllocator].<init>(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.local.LocalChannel:96,1"
      Dst: "[io.netty.channel.ChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.local.LocalChannel:98,1"
      Dst: "[io.netty.channel.local.LocalServerChannel].localAddress()"
    - Src: "io.netty.channel.local.LocalChannel:99,1"
      Dst: "[io.netty.channel.local.LocalChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].metadata()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "io.netty.channel.ChannelMetadata"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].parent()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "io.netty.channel.local.LocalServerChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].parent()"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:114,1"
      Dst: "[io.netty.channel.AbstractChannel].parent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].localAddress()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 0
    returnType: "io.netty.channel.local.LocalAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:119,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "io.netty.channel.local.LocalAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:124,1"
      Dst: "[io.netty.channel.AbstractChannel].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].isOpen()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalChannel:129"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:128"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.local.LocalChannel].isActive()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 33
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalChannel:134"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:133"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.local.LocalChannel].newUnsafe()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionDepth: 2
    returnType: "io.netty.channel.AbstractChannel$AbstractUnsafe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalChannel$LocalUnsafe].<init>(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel$1)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:139,1"
      Dst: "[io.netty.channel.local.LocalChannel$LocalUnsafe].<init>(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel$LocalUnsafe].<init>(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel$1)"
    functionSourceFile: "io.netty.channel.local.LocalChannel$LocalUnsafe"
    linkageType: ""
    functionLinenumber: 448
    functionLinenumberEnd: 450
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    - "io.netty.channel.local.LocalChannel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalChannel$LocalUnsafe].<init>(io.netty.channel.local.LocalChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel$LocalUnsafe:449,1"
      Dst: "[io.netty.channel.local.LocalChannel$LocalUnsafe].<init>(io.netty.channel.local.LocalChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel$LocalUnsafe].<init>(io.netty.channel.local.LocalChannel)"
    functionSourceFile: "io.netty.channel.local.LocalChannel$LocalUnsafe"
    linkageType: ""
    functionLinenumber: 448
    functionLinenumberEnd: 450
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].<init>(io.netty.channel.AbstractChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel$LocalUnsafe:449,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].<init>(io.netty.channel.AbstractChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].isCompatible(io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].remoteAddress0()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].doRegister()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 192
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalChannel].parent()"
    - "[io.netty.channel.local.LocalServerChannel].localAddress()"
    - "[io.netty.channel.local.LocalChannel$3].<init>(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel)"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].addShutdownHook(java.lang.Runnable)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 1
    ICount: 26
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalChannel:164"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:189"
        BranchSideFuncs:
        - "eventLoop()"
        - "addShutdownHook(java.lang.Runnable)"
    - Branch String: "io.netty.channel.local.LocalChannel:164"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:189"
        BranchSideFuncs:
        - "eventLoop()"
        - "addShutdownHook(java.lang.Runnable)"
    - Branch String: "io.netty.channel.local.LocalChannel:170"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:167"
        BranchSideFuncs:
        - "parent()"
        - "run()"
        - "localAddress()"
        - "<init>(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel)"
        - "execute(java.lang.Runnable)"
      - BranchSide: "io.netty.channel.local.LocalChannel:166"
        BranchSideFuncs:
        - "parent()"
        - "localAddress()"
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:164,1"
      Dst: "[io.netty.channel.local.LocalChannel].parent()"
    - Src: "io.netty.channel.local.LocalChannel:170,1"
      Dst: "[io.netty.channel.local.LocalServerChannel].localAddress()"
    - Src: "io.netty.channel.local.LocalChannel:177,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.local.LocalChannel:177,1"
      Dst: "[io.netty.channel.local.LocalChannel$3].<init>(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel)"
    - Src: "io.netty.channel.local.LocalChannel:177,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.channel.local.LocalChannel:190,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].addShutdownHook(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.local.LocalServerChannel].localAddress()"
    functionSourceFile: "io.netty.channel.local.LocalServerChannel"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "io.netty.channel.local.LocalAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalServerChannel:64,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel$3].<init>(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel)"
    functionSourceFile: "io.netty.channel.local.LocalChannel$3"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    - "io.netty.channel.local.LocalChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel$3:177,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 200
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalChannelRegistry].register(io.netty.channel.Channel,io.netty.channel.local.LocalAddress,java.net.SocketAddress)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:196,1"
      Dst: "[io.netty.channel.local.LocalChannelRegistry].register(io.netty.channel.Channel,io.netty.channel.local.LocalAddress,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].doDisconnect()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalChannel].doClose()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:203,1"
      Dst: "[io.netty.channel.local.LocalChannel].doClose()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].doClose()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 275
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalChannel].parent()"
    - "[io.netty.channel.local.LocalChannelRegistry].unregister(io.netty.channel.local.LocalAddress)"
    - "[io.netty.channel.local.LocalChannel].finishPeerRead(io.netty.channel.local.LocalChannel)"
    - "[java.nio.channels.ClosedChannelException].<init>()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel$4].<init>(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel,boolean)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.local.LocalChannel].releaseInboundBuffers()"
    - "[io.netty.channel.AbstractChannel].close()"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    functionUses: 4
    ICount: 57
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalChannel:211"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:236"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel:213"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:222"
        BranchSideFuncs:
        - "parent()"
      - BranchSide: "io.netty.channel.local.LocalChannel:221"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel:214"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:217"
        BranchSideFuncs:
        - "unregister(io.netty.channel.local.LocalAddress)"
      - BranchSide: "io.netty.channel.local.LocalChannel:216"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel:225"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:229"
        BranchSideFuncs:
        - "finishPeerRead(io.netty.channel.local.LocalChannel)"
      - BranchSide: "io.netty.channel.local.LocalChannel:228"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel:225"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:229"
        BranchSideFuncs:
        - "finishPeerRead(io.netty.channel.local.LocalChannel)"
      - BranchSide: "io.netty.channel.local.LocalChannel:228"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel:230"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:237"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Object[])"
        - "run()"
        - "isActive()"
        - "<init>()"
        - "<init>(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel,boolean)"
        - "eventLoop()"
        - "throwException(java.lang.Throwable)"
        - "finishPeerRead(io.netty.channel.local.LocalChannel)"
        - "execute(java.lang.Runnable)"
        - "tryFailure(java.lang.Throwable)"
        - "inEventLoop()"
        - "close()"
      - BranchSide: "io.netty.channel.local.LocalChannel:236"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel:237"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:266"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Object[])"
        - "run()"
        - "isActive()"
        - "<init>(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel,boolean)"
        - "eventLoop()"
        - "throwException(java.lang.Throwable)"
        - "execute(java.lang.Runnable)"
        - "inEventLoop()"
        - "close()"
      - BranchSide: "io.netty.channel.local.LocalChannel:265"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel:254"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:238"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Object[])"
        - "run()"
        - "isActive()"
        - "<init>(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel,boolean)"
        - "eventLoop()"
        - "throwException(java.lang.Throwable)"
        - "execute(java.lang.Runnable)"
        - "inEventLoop()"
        - "close()"
      - BranchSide: "io.netty.channel.local.LocalChannel:237"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Object[])"
        - "run()"
        - "isActive()"
        - "<init>(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel,boolean)"
        - "eventLoop()"
        - "throwException(java.lang.Throwable)"
        - "execute(java.lang.Runnable)"
        - "inEventLoop()"
        - "close()"
    - Branch String: "io.netty.channel.local.LocalChannel:266"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:273"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel:266"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:273"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel:266"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:272"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel:266"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:272"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:214,1"
      Dst: "[io.netty.channel.local.LocalChannel].parent()"
    - Src: "io.netty.channel.local.LocalChannel:215,1"
      Dst: "[io.netty.channel.local.LocalChannelRegistry].unregister(io.netty.channel.local.LocalAddress)"
    - Src: "io.netty.channel.local.LocalChannel:226,1"
      Dst: "[io.netty.channel.local.LocalChannel].finishPeerRead(io.netty.channel.local.LocalChannel)"
    - Src: "io.netty.channel.local.LocalChannel:232,1"
      Dst: "[java.nio.channels.ClosedChannelException].<init>()"
    - Src: "io.netty.channel.local.LocalChannel:232,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.local.LocalChannel:242,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.local.LocalChannel:243,1"
      Dst: "[io.netty.channel.local.LocalChannel].isActive()"
    - Src: "io.netty.channel.local.LocalChannel:245,1"
      Dst: "[io.netty.channel.local.LocalChannel$4].<init>(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel,boolean)"
    - Src: "io.netty.channel.local.LocalChannel:245,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.channel.local.LocalChannel:252,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.channel.local.LocalChannel:254,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.local.LocalChannel:255,1"
      Dst: "[io.netty.channel.local.LocalChannel].releaseInboundBuffers()"
    - Src: "io.netty.channel.local.LocalChannel:259,1"
      Dst: "[io.netty.channel.AbstractChannel].close()"
    - Src: "io.netty.channel.local.LocalChannel:261,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 24
    CyclomaticComplexity: 12
  - functionName: "[io.netty.channel.local.LocalChannel].finishPeerRead(io.netty.channel.local.LocalChannel)"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 389
    functionLinenumberEnd: 396
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.channel.local.LocalChannel].finishPeerRead0(io.netty.channel.local.LocalChannel)"
    - "[io.netty.channel.local.LocalChannel].runFinishPeerReadTask(io.netty.channel.local.LocalChannel)"
    functionUses: 2
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalChannel:390"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:393"
        BranchSideFuncs:
        - "finishPeerRead0(io.netty.channel.local.LocalChannel)"
      - BranchSide: "io.netty.channel.local.LocalChannel:392"
        BranchSideFuncs:
        - "runFinishPeerReadTask(io.netty.channel.local.LocalChannel)"
    - Branch String: "io.netty.channel.local.LocalChannel:390"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:393"
        BranchSideFuncs:
        - "finishPeerRead0(io.netty.channel.local.LocalChannel)"
      - BranchSide: "io.netty.channel.local.LocalChannel:392"
        BranchSideFuncs:
        - "runFinishPeerReadTask(io.netty.channel.local.LocalChannel)"
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:390,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.local.LocalChannel:391,1"
      Dst: "[io.netty.channel.local.LocalChannel].finishPeerRead0(io.netty.channel.local.LocalChannel)"
    - Src: "io.netty.channel.local.LocalChannel:393,1"
      Dst: "[io.netty.channel.local.LocalChannel].runFinishPeerReadTask(io.netty.channel.local.LocalChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.local.LocalChannel$4].<init>(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel,boolean)"
    functionSourceFile: "io.netty.channel.local.LocalChannel$4"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 246
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    - "io.netty.channel.local.LocalChannel"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel$4:245,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].releaseInboundBuffers()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 420
    functionLinenumberEnd: 429
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[java.util.Queue].poll()"
    functionUses: 4
    ICount: 18
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalChannel:421"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:422"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.local.LocalChannel:421"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel:421"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:422"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.local.LocalChannel:421"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel:421"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:422"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.local.LocalChannel:421"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel:425"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:428"
        BranchSideFuncs:
        - "release(java.lang.Object)"
      - BranchSide: "io.netty.channel.local.LocalChannel:427"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:421,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.local.LocalChannel:421,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.local.LocalChannel:421,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.local.LocalChannel:425,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.channel.local.LocalChannel:426,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.local.LocalChannel].tryClose(boolean)"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 283
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].voidPromise()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].voidPromise()"
    - "[io.netty.channel.local.LocalChannel].releaseInboundBuffers()"
    - "[io.netty.channel.Channel$Unsafe].voidPromise()"
    - "[io.netty.channel.Channel$Unsafe].close(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 10
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalChannel:277"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:280"
        BranchSideFuncs:
        - "close(io.netty.channel.ChannelPromise)"
        - "voidPromise()"
        - "unsafe()"
      - BranchSide: "io.netty.channel.local.LocalChannel:279"
        BranchSideFuncs:
        - "releaseInboundBuffers()"
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:278,1"
      Dst: "[io.netty.channel.AbstractChannel].unsafe()"
    - Src: "io.netty.channel.local.LocalChannel:278,1"
      Dst: "[io.netty.channel.Channel$Unsafe].voidPromise()"
    - Src: "io.netty.channel.local.LocalChannel:278,1"
      Dst: "[io.netty.channel.Channel$Unsafe].close(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.local.LocalChannel:280,1"
      Dst: "[io.netty.channel.local.LocalChannel].releaseInboundBuffers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.local.LocalChannel].doDeregister()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 289
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].removeShutdownHook(java.lang.Runnable)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:287,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.local.LocalChannel:287,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].removeShutdownHook(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].doBeginRead()"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 337
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].isEmpty()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].isEmpty()"
    - "[java.util.ArrayDeque].isEmpty()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].isEmpty()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].isEmpty()"
    - "[io.netty.util.internal.DefaultPriorityQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].isEmpty()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].isEmpty()"
    - "[io.netty.util.internal.EmptyPriorityQueue].isEmpty()"
    - "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - "[io.netty.util.internal.InternalThreadLocalMap].localChannelReaderStackDepth()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.util.internal.InternalThreadLocalMap].setLocalChannelReaderStackDepth(int)"
    - "[io.netty.channel.local.LocalChannel].readInbound()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[java.util.zip.Inflater$InflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$3].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[java.util.concurrent.CompletableFuture$Completion].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[java.util.zip.Deflater$DeflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[java.util.concurrent.ThreadPoolExecutor$Worker].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[java.util.zip.ZipFile$CleanableResource].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[java.lang.invoke.MethodHandleNatives$CallSiteContext].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor$2].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[java.util.concurrent.ForkJoinWorkerThread].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[java.lang.ref.Finalizer$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$2].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[java.lang.ref.Finalizer$FinalizerThread].run()"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.channel.AbstractChannel].close()"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 43
    EdgeCount: 225
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalChannel:307"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:311"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.local.LocalChannel:310"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.channel.local.LocalChannel:312"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:317"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.local.LocalChannel:316"
        BranchSideFuncs:
        - "get()"
        - "valueOf(int)"
        - "localChannelReaderStackDepth()"
    - Branch String: "io.netty.channel.local.LocalChannel:319"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:328"
        BranchSideFuncs:
        - "intValue()"
        - "readInbound()"
        - "setLocalChannelReaderStackDepth(int)"
      - BranchSide: "io.netty.channel.local.LocalChannel:327"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Object[])"
        - "run()"
        - "eventLoop()"
        - "throwException(java.lang.Throwable)"
        - "execute(java.lang.Runnable)"
        - "close()"
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:312,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "io.netty.channel.local.LocalChannel:317,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - Src: "io.netty.channel.local.LocalChannel:318,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].localChannelReaderStackDepth()"
    - Src: "io.netty.channel.local.LocalChannel:318,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.local.LocalChannel:319,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.local.LocalChannel:320,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].setLocalChannelReaderStackDepth(int)"
    - Src: "io.netty.channel.local.LocalChannel:322,1"
      Dst: "[io.netty.channel.local.LocalChannel].readInbound()"
    - Src: "io.netty.channel.local.LocalChannel:328,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.local.LocalChannel:328,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.channel.local.LocalChannel:330,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.channel.local.LocalChannel:331,1"
      Dst: "[io.netty.channel.AbstractChannel].close()"
    - Src: "io.netty.channel.local.LocalChannel:333,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].localChannelReaderStackDepth()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 317
    functionLinenumberEnd: 319
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].setLocalChannelReaderStackDepth(int)"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 321
    functionLinenumberEnd: 324
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].doWrite(io.netty.channel.ChannelOutboundBuffer)"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 339
    functionLinenumberEnd: 387
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[java.nio.channels.NotYetConnectedException].<init>()"
    - "[java.nio.channels.ClosedChannelException].<init>()"
    - "[io.netty.channel.ChannelOutboundBuffer].current()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].add(java.lang.Object)"
    - "[java.util.AbstractQueue].add(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].add(java.lang.Object)"
    - "[java.util.ArrayDeque].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].add(java.lang.Object)"
    - "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundBuffer].remove()"
    - "[io.netty.channel.ChannelOutboundBuffer].remove(java.lang.Throwable)"
    - "[io.netty.channel.local.LocalChannel].finishPeerRead(io.netty.channel.local.LocalChannel)"
    - "[java.util.Queue].add(java.lang.Object)"
    functionUses: 1
    ICount: 43
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalChannel:357"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:363"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.local.LocalChannel:362"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel:363"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:367"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "retain(java.lang.Object)"
        - "remove()"
      - BranchSide: "io.netty.channel.local.LocalChannel:366"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel:367"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel:370"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.channel.local.LocalChannel:369"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:340,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.channel.local.LocalChannel:343,1"
      Dst: "[java.nio.channels.NotYetConnectedException].<init>()"
    - Src: "io.netty.channel.local.LocalChannel:345,1"
      Dst: "[java.nio.channels.ClosedChannelException].<init>()"
    - Src: "io.netty.channel.local.LocalChannel:356,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].current()"
    - Src: "io.netty.channel.local.LocalChannel:364,1"
      Dst: "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    - Src: "io.netty.channel.local.LocalChannel:364,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    - Src: "io.netty.channel.local.LocalChannel:365,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].remove()"
    - Src: "io.netty.channel.local.LocalChannel:370,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].remove(java.lang.Throwable)"
    - Src: "io.netty.channel.local.LocalChannel:385,1"
      Dst: "[io.netty.channel.local.LocalChannel].finishPeerRead(io.netty.channel.local.LocalChannel)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.local.LocalChannel].access$200(io.netty.channel.local.LocalChannel)"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].access$300(io.netty.channel.local.LocalChannel,boolean)"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalChannel].tryClose(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel:50,1"
      Dst: "[io.netty.channel.local.LocalChannel].tryClose(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].access$500(io.netty.channel.local.LocalChannel)"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "io.netty.channel.local.LocalChannel$State"
    argCount: 1
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].access$202(io.netty.channel.local.LocalChannel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 2
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel].access$602(io.netty.channel.local.LocalChannel,io.netty.channel.local.LocalChannel)"
    functionSourceFile: "io.netty.channel.local.LocalChannel"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "io.netty.channel.local.LocalChannel"
    argCount: 2
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    - "io.netty.channel.local.LocalChannel"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocalThread].<init>()"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocalThread"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:35,1"
      Dst: "[java.lang.Thread].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocalThread].<init>(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocalThread"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].wrap(java.lang.Runnable)"
    - "[java.lang.Thread].<init>(java.lang.Runnable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:40,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocalRunnable].wrap(java.lang.Runnable)"
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:40,1"
      Dst: "[java.lang.Thread].<init>(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocalThread].<init>(java.lang.ThreadGroup,java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocalThread"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.ThreadGroup"
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].wrap(java.lang.Runnable)"
    - "[java.lang.Thread].<init>(java.lang.ThreadGroup,java.lang.Runnable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:45,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocalRunnable].wrap(java.lang.Runnable)"
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:45,1"
      Dst: "[java.lang.Thread].<init>(java.lang.ThreadGroup,java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocalThread].<init>(java.lang.String)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocalThread"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:50,1"
      Dst: "[java.lang.Thread].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocalThread].<init>(java.lang.ThreadGroup,java.lang.String)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocalThread"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.ThreadGroup"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].<init>(java.lang.ThreadGroup,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:55,1"
      Dst: "[java.lang.Thread].<init>(java.lang.ThreadGroup,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocalThread].<init>(java.lang.Runnable,java.lang.String)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocalThread"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Runnable"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].wrap(java.lang.Runnable)"
    - "[java.lang.Thread].<init>(java.lang.Runnable,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:60,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocalRunnable].wrap(java.lang.Runnable)"
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:60,1"
      Dst: "[java.lang.Thread].<init>(java.lang.Runnable,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocalThread].<init>(java.lang.ThreadGroup,java.lang.Runnable,java.lang.String,long)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocalThread"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.ThreadGroup"
    - "java.lang.Runnable"
    - "java.lang.String"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].wrap(java.lang.Runnable)"
    - "[java.lang.Thread].<init>(java.lang.ThreadGroup,java.lang.Runnable,java.lang.String,long)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:70,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocalRunnable].wrap(java.lang.Runnable)"
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:70,1"
      Dst: "[java.lang.Thread].<init>(java.lang.ThreadGroup,java.lang.Runnable,java.lang.String,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocalThread].willCleanupFastThreadLocals()"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocalThread"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.FastThreadLocalThread].willCleanupFastThreadLocals(java.lang.Thread)"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocalThread"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Thread"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocalThread].willCleanupFastThreadLocals()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.FastThreadLocalThread:111"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocalThread:111"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.FastThreadLocalThread:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.FastThreadLocalThread:112"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.FastThreadLocalThread:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.FastThreadLocalThread:112,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocalThread].willCleanupFastThreadLocals()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.concurrent.FastThreadLocalThread].permitBlockingCalls()"
    functionSourceFile: "io.netty.util.concurrent.FastThreadLocalThread"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$AnnotatedConnectException].<init>(java.net.ConnectException,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.AbstractChannel$AnnotatedConnectException"
    linkageType: ""
    functionLinenumber: 1172
    functionLinenumberEnd: 1176
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.ConnectException"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ConnectException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 1
    ICount: 13
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$AnnotatedConnectException:1173,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.AbstractChannel$AnnotatedConnectException:1173,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.channel.AbstractChannel$AnnotatedConnectException:1173,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.AbstractChannel$AnnotatedConnectException:1173,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.channel.AbstractChannel$AnnotatedConnectException:1173,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.AbstractChannel$AnnotatedConnectException:1173,1"
      Dst: "[java.net.ConnectException].<init>(java.lang.String)"
    - Src: "io.netty.channel.AbstractChannel$AnnotatedConnectException:1174,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$AnnotatedConnectException].fillInStackTrace()"
    functionSourceFile: "io.netty.channel.AbstractChannel$AnnotatedConnectException"
    linkageType: ""
    functionLinenumber: 1179
    functionLinenumberEnd: 1181
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder$State"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "io.netty.handler.codec.stomp.StompSubframeDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$State:59,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.stomp.StompSubframeDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$State:59,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder$State"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder$State:60,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ByteProcessor$3].<init>()"
    functionSourceFile: "io.netty.util.ByteProcessor$3"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ByteProcessor$3:126,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ByteProcessor$3].process(byte)"
    functionSourceFile: "io.netty.util.ByteProcessor$3"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.ByteProcessor$3:129"
      Branch Sides:
      - BranchSide: "io.netty.util.ByteProcessor$3:128"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.ByteProcessor$3:129"
      Branch Sides:
      - BranchSide: "io.netty.util.ByteProcessor$3:128"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.BooleanSupplier$2].<init>()"
    functionSourceFile: "io.netty.util.BooleanSupplier$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.BooleanSupplier$2:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.BooleanSupplier$2].get()"
    functionSourceFile: "io.netty.util.BooleanSupplier$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool$AcquireListener].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$AcquireListener"
    linkageType: ""
    functionLinenumber: 411
    functionLinenumberEnd: 438
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.pool.FixedChannelPool].access$400(io.netty.channel.pool.FixedChannelPool)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.channel.pool.FixedChannelPool].access$500(io.netty.channel.pool.FixedChannelPool)"
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.util.concurrent.FailedFuture].isSuccess()"
    - "[io.netty.util.concurrent.SucceededFuture].isSuccess()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.channel.AbstractChannel].close()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].close()"
    - "[io.netty.channel.embedded.EmbeddedChannel].close()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].getNow()"
    - "[io.netty.channel.VoidChannelPromise].getNow()"
    - "[io.netty.util.concurrent.SucceededFuture].getNow()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].getNow()"
    - "[io.netty.util.concurrent.FailedFuture].getNow()"
    - "[io.netty.channel.CompleteChannelFuture].getNow()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setSuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.pool.FixedChannelPool].access$600(io.netty.channel.pool.FixedChannelPool)"
    - "[io.netty.channel.pool.FixedChannelPool].access$1000(io.netty.channel.pool.FixedChannelPool)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.util.concurrent.FailedFuture].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.util.concurrent.SucceededFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].getNow()"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 45
    EdgeCount: 89
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.FixedChannelPool$AcquireListener:412"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$AcquireListener:414"
        BranchSideFuncs:
        - "access$1000(io.netty.channel.pool.FixedChannelPool)"
        - "access$400(io.netty.channel.pool.FixedChannelPool)"
        - "setSuccess(java.lang.Object)"
        - "access$500(io.netty.channel.pool.FixedChannelPool)"
        - "access$600(io.netty.channel.pool.FixedChannelPool)"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "isSuccess()"
        - "<init>(java.lang.String)"
        - "tryFailure(java.lang.Throwable)"
        - "getNow()"
        - "inEventLoop()"
        - "close()"
        - "cause()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$AcquireListener:413"
        BranchSideFuncs:
        - "access$500(io.netty.channel.pool.FixedChannelPool)"
    - Branch String: "io.netty.channel.pool.FixedChannelPool$AcquireListener:412"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$AcquireListener:414"
        BranchSideFuncs:
        - "access$1000(io.netty.channel.pool.FixedChannelPool)"
        - "access$400(io.netty.channel.pool.FixedChannelPool)"
        - "setSuccess(java.lang.Object)"
        - "access$500(io.netty.channel.pool.FixedChannelPool)"
        - "access$600(io.netty.channel.pool.FixedChannelPool)"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "isSuccess()"
        - "<init>(java.lang.String)"
        - "tryFailure(java.lang.Throwable)"
        - "getNow()"
        - "inEventLoop()"
        - "close()"
        - "cause()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$AcquireListener:413"
        BranchSideFuncs:
        - "access$500(io.netty.channel.pool.FixedChannelPool)"
    - Branch String: "io.netty.channel.pool.FixedChannelPool$AcquireListener:414"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$AcquireListener:423"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$AcquireListener:422"
        BranchSideFuncs:
        - "isSuccess()"
    - Branch String: "io.netty.channel.pool.FixedChannelPool$AcquireListener:415"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$AcquireListener:419"
        BranchSideFuncs:
        - "access$1000(io.netty.channel.pool.FixedChannelPool)"
        - "access$400(io.netty.channel.pool.FixedChannelPool)"
        - "setSuccess(java.lang.Object)"
        - "access$500(io.netty.channel.pool.FixedChannelPool)"
        - "access$600(io.netty.channel.pool.FixedChannelPool)"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "isSuccess()"
        - "<init>(java.lang.String)"
        - "tryFailure(java.lang.Throwable)"
        - "getNow()"
        - "inEventLoop()"
        - "close()"
        - "cause()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$AcquireListener:418"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.pool.FixedChannelPool$AcquireListener:423"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$AcquireListener:426"
        BranchSideFuncs:
        - "setSuccess(java.lang.Object)"
        - "getNow()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$AcquireListener:425"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool$AcquireListener:426"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$AcquireListener:429"
        BranchSideFuncs:
        - "access$600(io.netty.channel.pool.FixedChannelPool)"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$AcquireListener:428"
        BranchSideFuncs:
        - "access$1000(io.netty.channel.pool.FixedChannelPool)"
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireListener:412,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].access$400(io.netty.channel.pool.FixedChannelPool)"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireListener:412,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireListener:412,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireListener:414,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].access$500(io.netty.channel.pool.FixedChannelPool)"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireListener:415,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireListener:417,1"
      Dst: "[io.netty.util.concurrent.Future].getNow()"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireListener:417,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireListener:419,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireListener:419,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireListener:424,1"
      Dst: "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireListener:427,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].access$600(io.netty.channel.pool.FixedChannelPool)"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireListener:429,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].access$1000(io.netty.channel.pool.FixedChannelPool)"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireListener:432,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.channel.pool.FixedChannelPool$AcquireListener:435,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:53,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.stomp.StompSubframe,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeEncoder"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 114
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.stomp.StompSubframe"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeEncoder].encodeFullFrame(io.netty.handler.codec.stomp.StompFrame,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.stomp.StompSubframeEncoder].convertFullFrame(io.netty.handler.codec.stomp.StompFrame,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.stomp.StompSubframeEncoder].headersSubFrameSize(io.netty.handler.codec.stomp.StompHeadersSubframe)"
    - "[io.netty.handler.codec.stomp.StompSubframeEncoder].encodeHeaders(io.netty.handler.codec.stomp.StompHeadersSubframe,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.stomp.StompSubframeEncoder].convertHeadersSubFrame(io.netty.handler.codec.stomp.StompHeadersSubframe,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.stomp.StompSubframeEncoder].encodeContent(io.netty.handler.codec.stomp.StompContentSubframe,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.stomp.StompSubframeEncoder].convertContentSubFrame(io.netty.handler.codec.stomp.StompContentSubframe,io.netty.buffer.ByteBuf)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    functionUses: 1
    ICount: 28
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:96"
        BranchSideFuncs:
        - "convertFullFrame(io.netty.handler.codec.stomp.StompFrame,io.netty.buffer.ByteBuf)"
        - "encodeFullFrame(io.netty.handler.codec.stomp.StompFrame,io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:95"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:96"
        BranchSideFuncs:
        - "convertFullFrame(io.netty.handler.codec.stomp.StompFrame,io.netty.buffer.ByteBuf)"
        - "encodeFullFrame(io.netty.handler.codec.stomp.StompFrame,io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:95"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:113"
        BranchSideFuncs:
        - "convertFullFrame(io.netty.handler.codec.stomp.StompFrame,io.netty.buffer.ByteBuf)"
        - "encodeFullFrame(io.netty.handler.codec.stomp.StompFrame,io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:98,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeEncoder].encodeFullFrame(io.netty.handler.codec.stomp.StompFrame,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:100,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeEncoder].convertFullFrame(io.netty.handler.codec.stomp.StompFrame,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:100,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:103,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:103,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeEncoder].headersSubFrameSize(io.netty.handler.codec.stomp.StompHeadersSubframe)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:103,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:104,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeEncoder].encodeHeaders(io.netty.handler.codec.stomp.StompHeadersSubframe,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:106,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeEncoder].convertHeadersSubFrame(io.netty.handler.codec.stomp.StompHeadersSubframe,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:109,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeEncoder].encodeContent(io.netty.handler.codec.stomp.StompContentSubframe,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:111,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeEncoder].convertContentSubFrame(io.netty.handler.codec.stomp.StompContentSubframe,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeEncoder].encodeFullFrame(io.netty.handler.codec.stomp.StompFrame,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeEncoder"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 168
    functionDepth: 8
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.stomp.StompFrame"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.stomp.StompSubframeEncoder].headersSubFrameSize(io.netty.handler.codec.stomp.StompHeadersSubframe)"
    - "[io.netty.handler.codec.stomp.StompSubframeEncoder].encodeHeaders(io.netty.handler.codec.stomp.StompHeadersSubframe,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:167"
        BranchSideFuncs:
        - "content()"
        - "writeBytes(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:166"
        BranchSideFuncs:
        - "writeByte(int)"
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:159,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:159,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:160,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:160,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeEncoder].headersSubFrameSize(io.netty.handler.codec.stomp.StompHeadersSubframe)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:160,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:161,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeEncoder].encodeHeaders(io.netty.handler.codec.stomp.StompHeadersSubframe,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:164,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:167,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeEncoder].headersSubFrameSize(io.netty.handler.codec.stomp.StompHeadersSubframe)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeEncoder"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 156
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.stomp.StompHeadersSubframe"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].headers()"
    - "[io.netty.handler.codec.DefaultHeaders].size()"
    - "[java.lang.Math].max(int,int)"
    - "[io.netty.handler.codec.stomp.StompHeadersSubframe].headers()"
    - "[io.netty.handler.codec.Headers].size()"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:151"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:155"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:154"
        BranchSideFuncs:
        - "max(int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:150,1"
      Dst: "[io.netty.handler.codec.stomp.StompHeadersSubframe].headers()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:150,1"
      Dst: "[io.netty.handler.codec.Headers].size()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:155,1"
      Dst: "[java.lang.Math].max(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeEncoder].encodeHeaders(io.netty.handler.codec.stomp.StompHeadersSubframe,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeEncoder"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 198
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.stomp.StompHeadersSubframe"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].command()"
    - "[java.lang.Enum].toString()"
    - "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.stomp.StompSubframeEncoder].shouldEscape(io.netty.handler.codec.stomp.StompCommand)"
    - "[io.netty.util.concurrent.FastThreadLocal].get()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].headers()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    - "[java.util.AbstractMap$SimpleEntry].getKey()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.stomp.StompSubframeEncoder].escape(java.lang.CharSequence)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[io.netty.handler.codec.stomp.StompHeadersSubframe].command()"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.stomp.StompHeadersSubframe].headers()"
    - "[io.netty.handler.codec.Headers].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    functionUses: 2
    ICount: 40
    EdgeCount: 215
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:196"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "headers()"
        - "iterator()"
        - "getKey()"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:195"
        BranchSideFuncs:
        - "writeByte(int)"
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:179"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:188"
        BranchSideFuncs:
        - "get(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:187"
        BranchSideFuncs:
        - "escape(java.lang.CharSequence)"
        - "getValue()"
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:185"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:184"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:191"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:188"
        BranchSideFuncs:
        - "writeUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:187"
        BranchSideFuncs:
        - "escape(java.lang.CharSequence)"
        - "getValue()"
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:171,1"
      Dst: "[io.netty.handler.codec.stomp.StompHeadersSubframe].command()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:172,1"
      Dst: "[java.lang.Enum].toString()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:172,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:173,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:175,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeEncoder].shouldEscape(io.netty.handler.codec.stomp.StompCommand)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:176,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].get()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:177,1"
      Dst: "[io.netty.handler.codec.stomp.StompHeadersSubframe].headers()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:177,1"
      Dst: "[io.netty.handler.codec.Headers].iterator()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:177,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:177,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:178,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:180,1"
      Dst: "[java.util.LinkedHashMap].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:182,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeEncoder].escape(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:183,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:191,1"
      Dst: "[java.util.Map$Entry].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeEncoder].shouldEscape(io.netty.handler.codec.stomp.StompCommand)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeEncoder"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.stomp.StompCommand"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:211"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:210"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:211"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:210"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeEncoder].escape(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeEncoder"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 236
    functionDepth: 3
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.handler.codec.stomp.StompSubframeEncoder].escapeBuilder(io.netty.util.internal.AppendableCharSequence,java.lang.CharSequence,int)"
    - "[io.netty.util.internal.AppendableCharSequence].append(java.lang.CharSequence)"
    - "[io.netty.util.internal.AppendableCharSequence].append(char)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 2
    ICount: 40
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:216"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:235"
        BranchSideFuncs:
        - "charAt(int)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:234"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:218"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:221"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:224"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:227"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:230"
        BranchSideFuncs:
        - "escapeBuilder(io.netty.util.internal.AppendableCharSequence,java.lang.CharSequence,int)"
        - "append(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:230"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:215"
        BranchSideFuncs:
        - "append(char)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:214"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:235"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:234"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:216,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:217,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:219,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeEncoder].escapeBuilder(io.netty.util.internal.AppendableCharSequence,java.lang.CharSequence,int)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:220,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].append(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:231,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeEncoder].escapeBuilder(io.netty.util.internal.AppendableCharSequence,java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeEncoder"
    linkageType: ""
    functionLinenumber: 239
    functionLinenumberEnd: 246
    functionDepth: 2
    returnType: "io.netty.util.internal.AppendableCharSequence"
    argCount: 3
    argTypes:
    - "io.netty.util.internal.AppendableCharSequence"
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].<init>(int)"
    - "[io.netty.util.internal.AppendableCharSequence].append(java.lang.CharSequence,int,int)"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[java.lang.CharSequence].length()"
    functionUses: 4
    ICount: 11
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:240"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:245"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:244"
        BranchSideFuncs:
        - "<init>(int)"
        - "append(java.lang.CharSequence,int,int)"
        - "length()"
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:245,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:245,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].<init>(int)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:245,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].append(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeEncoder].convertFullFrame(io.netty.handler.codec.stomp.StompFrame,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeEncoder"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.stomp.StompFrame"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeEncoder].convertHeadersSubFrame(io.netty.handler.codec.stomp.StompHeadersSubframe,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeEncoder"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.stomp.StompHeadersSubframe"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeEncoder].encodeContent(io.netty.handler.codec.stomp.StompContentSubframe,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeEncoder"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 208
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.stomp.StompContentSubframe"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].content()"
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 1
    ICount: 16
    EdgeCount: 49
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeEncoder:200"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:207"
        BranchSideFuncs:
        - "writeByte(int)"
        - "alloc()"
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "buffer(int)"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeEncoder:206"
        BranchSideFuncs:
        - "content()"
        - "retain()"
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:201,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:201,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:201,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:201,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:202,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:203,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:207,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeEncoder].convertContentSubFrame(io.netty.handler.codec.stomp.StompContentSubframe,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeEncoder"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.stomp.StompContentSubframe"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeEncoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.stomp.StompSubframe,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder:53,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.stomp.StompSubframe,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:46,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 86
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.ReplayingDecoder].state()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.socksx.SocksVersion].byteValue()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].valueOf(byte)"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].<init>(io.netty.handler.codec.socksx.v5.Socks5AuthMethod[])"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder].fail(java.util.List,java.lang.Exception)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 1
    ICount: 58
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:60"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "byteValue()"
        - "append(char)"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:59"
        BranchSideFuncs:
        - "readUnsignedByte()"
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:66"
        BranchSideFuncs:
        - "checkpoint(java.lang.Object)"
        - "<init>(io.netty.handler.codec.socksx.v5.Socks5AuthMethod[])"
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:84"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "readRetainedSlice(int)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:52,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].state()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:52,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:54,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:55,1"
      Dst: "[io.netty.handler.codec.socksx.SocksVersion].byteValue()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:56,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:56,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:56,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:57,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:57,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:57,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:60,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:64,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].valueOf(byte)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:67,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].<init>(io.netty.handler.codec.socksx.v5.Socks5AuthMethod[])"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:67,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:68,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:71,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:73,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:78,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:83,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder].fail(java.util.List,java.lang.Exception)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].<init>(io.netty.handler.codec.socksx.v5.Socks5AuthMethod[])"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 48
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.socksx.v5.Socks5AuthMethod[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.AbstractSocks5Message].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.util.Collection,java.lang.String)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 21
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest:39"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest:46"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest:45"
        BranchSideFuncs:
        - "unmodifiableList(java.util.List)"
        - "checkNonEmpty(java.util.Collection,java.lang.String)"
    - Branch String: "io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest:40"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest:35,1"
      Dst: "[io.netty.handler.codec.socksx.v5.AbstractSocks5Message].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest:36,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest:38,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest:43,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest:46,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.util.Collection,java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest:46,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder].fail(java.util.List<Object>,java.lang.Exception)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 98
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List<Object>"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].<init>(io.netty.handler.codec.socksx.v5.Socks5AuthMethod[])"
    - "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    - "[io.netty.handler.codec.socksx.AbstractSocksMessage].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 19
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:88"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:92"
        BranchSideFuncs:
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:91"
        BranchSideFuncs:
        - "failure(java.lang.Throwable)"
        - "setDecoderResult(io.netty.handler.codec.DecoderResult)"
        - "add(java.lang.Object)"
        - "checkpoint(java.lang.Object)"
        - "<init>(io.netty.handler.codec.socksx.v5.Socks5AuthMethod[])"
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:89,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:92,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:94,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].<init>(io.netty.handler.codec.socksx.v5.Socks5AuthMethod[])"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:95,1"
      Dst: "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:95,1"
      Dst: "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialRequestDecoder:96,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.DatagramPacket].copy()"
    functionSourceFile: "io.netty.channel.socket.DatagramPacket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.socket.DatagramPacket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.channel.socket.DatagramPacket].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DatagramPacket:47,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].content()"
    - Src: "io.netty.channel.socket.DatagramPacket:47,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.channel.socket.DatagramPacket:47,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DatagramPacket].retainedDuplicate()"
    functionSourceFile: "io.netty.channel.socket.DatagramPacket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.socket.DatagramPacket"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.channel.socket.DatagramPacket].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DatagramPacket:57,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].content()"
    - Src: "io.netty.channel.socket.DatagramPacket:57,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.channel.socket.DatagramPacket:57,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpHeaderValues].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.HttpHeaderValues"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpHeaderValues:248,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].<init>(io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>(long)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:143,1"
      Dst: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>(long)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:143,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.multipart.HttpDataFactory"
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:159,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.multipart.HttpDataFactory"
    - "io.netty.handler.codec.http.HttpRequest"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.TreeMap].<init>(java.util.Comparator)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder].getMultipartDataBoundary(java.lang.String)"
    - "[java.nio.charset.Charset].forName(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].offer(io.netty.handler.codec.http.HttpContent)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].parseBody()"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].destroy()"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:183"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:187"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:186"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:198"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:197"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:190"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:200"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:199"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:190"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:200"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:199"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:203"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:208"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:207"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:176,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:79,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:84,1"
      Dst: "[java.util.TreeMap].<init>(java.util.Comparator)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:177,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:182,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:182,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:184,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:184,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:184,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:184,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:184,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:187,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder].getMultipartDataBoundary(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:192,1"
      Dst: "[java.nio.charset.Charset].forName(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:194,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:206,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].offer(io.netty.handler.codec.http.HttpContent)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:208,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].parseBody()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:211,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].destroy()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:212,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:217"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:221"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:218,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:218,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:218,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:218,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:218,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].isMultipart()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:230,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].setDiscardThreshold(int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:241,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].getDiscardThreshold()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].getBodyHttpDatas()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:266"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:269"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:268"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:264,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:267,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].getBodyHttpDatas(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:290"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:289"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:285,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:288,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:290,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].getBodyHttpData(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:309"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:312"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:311"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:313"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:316"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:315"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:307,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:310,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:312,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:314,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].offer(io.netty.handler.codec.http.HttpContent)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 12
    returnType: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpContent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].alloc()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].parseBody()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    - "[io.netty.buffer.ByteBuf].discardReadBytes()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:332"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:336"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:335"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:337"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:344"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:348"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:361"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:360"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:348"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:361"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:360"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:349"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:354"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:330,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:336,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:343,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:343,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:343,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:343,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:347,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].parseBody()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:348,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:349,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:351,1"
      Dst: "[io.netty.buffer.ByteBuf].discardReadBytes()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:357,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].parseBody()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].parseBodyMultipart()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:426"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:427"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:426"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:426"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:432"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:431"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:427"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:430"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:429"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:432,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].parseBodyMultipart()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].parseBodyMultipart()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].decodeMultipart(io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].addHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:459"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:460"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:459"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:462"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:464"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:471"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:470"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:466"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:471"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:470"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:466"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:469"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:468"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:459,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:463,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].decodeMultipart(io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:465,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].addHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].decodeMultipart(io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].findMultipartDelimiter(java.lang.String,io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus,io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].findMultipartDisposition()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.Attribute].getValue()"
    - "[java.nio.charset.Charset].forName(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.Throwable)"
    - "[java.lang.Long].parseLong(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].cleanString(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String,long)"
    - "[io.netty.handler.codec.http.multipart.HttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpData].setCharset(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].loadDataMultipartOptimized(io.netty.buffer.ByteBuf,java.lang.String,io.netty.handler.codec.http.multipart.HttpData)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].getFileUpload(java.lang.String)"
    functionUses: 0
    ICount: 121
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:517"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:525"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:527"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:558"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:532"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:529"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:528"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:540"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:554"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:559"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:558"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:559"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:562"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:490,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:492,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:498,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].findMultipartDelimiter(java.lang.String,io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus,io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:511,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].findMultipartDisposition()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:516,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:519,1"
      Dst: "[io.netty.handler.codec.http.multipart.Attribute].getValue()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:519,1"
      Dst: "[java.nio.charset.Charset].forName(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:521,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:532,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:542,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].cleanString(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:541,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String,long)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:544,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:555,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].setCharset(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:559,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].loadDataMultipartOptimized(io.netty.buffer.ByteBuf,java.lang.String,io.netty.handler.codec.http.multipart.HttpData)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:572,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].getFileUpload(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 35
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException:330,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].findMultipartDelimiter(java.lang.String,io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus,io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus"
    - "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].skipControlCharacters(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].skipOneLine()"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].readDelimiterOptimized(io.netty.buffer.ByteBuf,java.lang.String,java.nio.charset.Charset)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].decodeMultipart(io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:661"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:665"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:664"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:665"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:675"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:668"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:673"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:646,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:648,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].skipControlCharacters(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:650,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:653,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].skipOneLine()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:656,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].readDelimiterOptimized(io.netty.buffer.ByteBuf,java.lang.String,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:661,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:663,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].decodeMultipart(io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:665,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:665,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:665,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:677,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].skipControlCharacters(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].skipControlCharactersStandard(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize].<init>(io.netty.buffer.ByteBuf)"
    - "[java.lang.Character].isISOControl(char)"
    - "[java.lang.Character].isWhitespace(char)"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize].setReadPosition(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:602"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:609"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:611"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:618"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:617"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:613"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:617"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:616"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:613"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:617"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:616"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:602,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:604,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].skipControlCharactersStandard(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:606,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:610,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:613,1"
      Dst: "[java.lang.Character].isISOControl(char)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:613,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:614,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize].setReadPosition(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:618,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].skipControlCharactersStandard(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[java.lang.Character].isISOControl(char)"
    - "[java.lang.Character].isWhitespace(char)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:624"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:628"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:627"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:624"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:628"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:627"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:623,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:624,1"
      Dst: "[java.lang.Character].isISOControl(char)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:624,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:625,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:625,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize:98"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize:94,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize:95,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize:96,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize:99,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize:100,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize:101,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize:102,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize].setReadPosition(int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize].getReadPosition(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize:112,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize].getReadPosition(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize:113,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize].getReadPosition(int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].skipOneLine()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1280"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1283"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1282"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1284"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1285"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1289"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1288"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1290"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1293"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1292"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1296"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1299"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1298"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1280,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1283,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1286,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1286,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].readDelimiterOptimized(io.netty.buffer.ByteBuf,java.lang.String,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "java.lang.String"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findDelimiter(io.netty.buffer.ByteBuf,int,byte[],boolean)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>()"
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 77
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1077"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1081"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1085"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1142"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1141"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1088"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1090"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1095"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1094"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1098"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1100"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1142"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1141"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1142"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1141"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1107"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1133"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1132"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1109"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1116"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1115"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1119"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1125"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1124"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1072,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1073,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1076,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findDelimiter(io.netty.buffer.ByteBuf,int,byte[],boolean)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1079,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1080,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1082,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1085,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1086,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1091,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1101,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1141,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 23
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].findMultipartDisposition()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[java.util.TreeMap].<init>(java.util.Comparator)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].skipOneLine()"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].skipControlCharacters(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].readLineOptimized(io.netty.buffer.ByteBuf,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].splitMultipartHeader(java.lang.String)"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - "[java.lang.String].split(java.lang.String,int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].getContentDispositionAttribute(java.lang.String[])"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.AsciiString].toString()"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].cleanString(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String,java.lang.String)"
    - "[io.netty.util.internal.StringUtil].substringAfter(java.lang.String,char)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].decodeMultipart(io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[io.netty.util.internal.StringUtil].substringBefore(java.lang.String,char)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 242
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:688"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:692"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:691"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:692"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:803"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:802"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:702"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:701"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:700"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:704"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:707"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:706"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:707"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:708"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:707"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:708"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:708"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:707"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:710"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:725"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:724"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:712"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:725"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:724"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:702"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:701"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:700"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:702"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:701"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:700"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:702"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:801"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:800"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:751"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:761"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:760"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:752"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:758"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:757"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:761"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:801"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:800"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:763"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:762"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:761"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:763"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:790"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:789"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:804"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:817"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:816"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:805"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:811"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:817"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:823"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:687,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:689,1"
      Dst: "[java.util.TreeMap].<init>(java.util.Comparator)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:692,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].skipOneLine()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:695,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].skipControlCharacters(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:696,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].readLineOptimized(io.netty.buffer.ByteBuf,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:698,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:701,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].splitMultipartHeader(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:702,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:713,1"
      Dst: "[java.lang.String].split(java.lang.String,int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:716,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].getContentDispositionAttribute(java.lang.String[])"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:718,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:722,1"
      Dst: "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:722,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:728,1"
      Dst: "[io.netty.util.AsciiString].toString()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:729,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].cleanString(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:728,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:753,1"
      Dst: "[io.netty.util.internal.StringUtil].substringAfter(java.lang.String,char)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:754,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:754,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:754,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:756,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].decodeMultipart(io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:758,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:763,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:763,1"
      Dst: "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:763,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:775,1"
      Dst: "[io.netty.util.internal.StringUtil].substringBefore(java.lang.String,char)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:803,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 61
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].readLineOptimized(io.netty.buffer.ByteBuf,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findLineBreak(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>()"
    - "[io.netty.buffer.ByteBuf].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1029"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1051"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1050"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1031"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1035"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1034"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1039"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1043"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1042"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1026,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1029,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1030,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findLineBreak(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1032,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1035,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1035,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1036,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1038,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1043,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1045,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1049,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1050,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].splitMultipartHeader(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findNonWhitespace(java.lang.String,int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].isWhitespace(char)"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findEndOfString(java.lang.String)"
    - "[java.lang.String].substring(int,int)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.lang.String].indexOf(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].splitMultipartHeaderValues(java.lang.String)"
    - "[java.lang.String].split(java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    functionUses: 0
    ICount: 58
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1317"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1323"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1322"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1319"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1323"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1322"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1319"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1310"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1309"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1323"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1329"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1328"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1324"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1323"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1322"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1332"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1328"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1334"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1337"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1336"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1339"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1341"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1343"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1345"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1310,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1316,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findNonWhitespace(java.lang.String,int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1317,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1318,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1319,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1330,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findEndOfString(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1331,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1331,1"
      Dst: "[java.util.ArrayList].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1334,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1335,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].splitMultipartHeaderValues(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1337,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1340,1"
      Dst: "[java.lang.String].trim()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1342,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1344,1"
      Dst: "[java.util.ArrayList].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 24
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].splitMultipartHeaderValues(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - "[io.netty.util.internal.InternalThreadLocalMap].arrayList(int)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.lang.String].substring(int)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1358"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1379"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1378"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1360"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1361"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1364"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1366"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1354"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1353"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1371"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1373"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1354"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1353"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1354,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1354,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].arrayList(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1358,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1359,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1374,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1374,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1379,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1380,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].getContentDispositionAttribute(java.lang.String[])"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].cleanString(java.lang.String)"
    - "[io.netty.util.AsciiString].contentEquals(java.lang.CharSequence)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.lang.String].split(java.lang.String,int)"
    - "[java.nio.charset.Charset].forName(java.lang.String)"
    - "[io.netty.handler.codec.http.QueryStringDecoder].decodeComponent(java.lang.String,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.http.multipart.HttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:836"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:831"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:839"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:844"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:843"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:840"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:844"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:843"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:841"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:844"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:843"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:836"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:855"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:832,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].cleanString(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:836,1"
      Dst: "[io.netty.util.AsciiString].contentEquals(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:838,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:840,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:842,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:836,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:846,1"
      Dst: "[io.netty.util.AsciiString].toString()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:847,1"
      Dst: "[java.lang.String].split(java.lang.String,int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:848,1"
      Dst: "[java.nio.charset.Charset].forName(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:848,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].decodeComponent(java.lang.String,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:850,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:858,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].cleanString(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].trim()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1253"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1271"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1270"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1251,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1252,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1254,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1261,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1271,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1271,1"
      Dst: "[java.lang.String].trim()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException:334,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].substringAfter(java.lang.String,char)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:99"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:98,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "io.netty.util.internal.StringUtil:100,1"
      Dst: "[java.lang.String].substring(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].substringBefore(java.lang.String,char)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:112"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:115"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:111,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "io.netty.util.internal.StringUtil:113,1"
      Dst: "[java.lang.String].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].loadDataMultipartOptimized(io.netty.buffer.ByteBuf,java.lang.String,io.netty.handler.codec.http.multipart.HttpData)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "java.lang.String"
    - "io.netty.handler.codec.http.multipart.HttpData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.handler.codec.http.multipart.HttpData].getCharset()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findDelimiter(io.netty.buffer.ByteBuf,int,byte[],boolean)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findLastLineBreak(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.http.multipart.HttpData].definedLength()"
    - "[io.netty.handler.codec.http.multipart.HttpData].length()"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.codec.http.multipart.HttpData].addContent(io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.Throwable)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].copy(int,int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].rewriteCurrentBuffer(io.netty.buffer.ByteBuf,int)"
    functionUses: 0
    ICount: 67
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1179"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1182"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1181"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1185"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1235"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1234"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1192"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1196"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1195"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1206"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1205"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1200"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1206"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1205"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1201"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1206"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1205"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1206"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1219"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1218"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1220"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1225"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1224"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1179,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1182,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1183,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].getCharset()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1183,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1184,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findDelimiter(io.netty.buffer.ByteBuf,int,byte[],boolean)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1190,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1196,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil].findLastLineBreak(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1200,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].definedLength()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1200,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].length()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1201,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1208,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1210,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].addContent(io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1212,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1214,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1215,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1225,1"
      Dst: "[io.netty.buffer.ByteBuf].copy(int,int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1231,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].rewriteCurrentBuffer(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].rewriteCurrentBuffer(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1157"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1160"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1159"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1162"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1167"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1166"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1160,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1161,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1163,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1164,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1167,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].getFileUpload(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.Attribute].getValue()"
    - "[java.lang.String].toLowerCase()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].value()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String)"
    - "[java.nio.charset.Charset].forName(java.lang.String)"
    - "[java.lang.Long].parseLong(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].cleanString(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpDataFactory].createFileUpload(io.netty.handler.codec.http.HttpRequest,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long)"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].loadDataMultipartOptimized(io.netty.buffer.ByteBuf,java.lang.String,io.netty.handler.codec.http.multipart.HttpData)"
    - "[io.netty.handler.codec.http.multipart.HttpData].isCompleted()"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].cleanMixedAttributes()"
    functionUses: 0
    ICount: 138
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:876"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:894"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:883"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:885"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:884"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:885"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:888"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:887"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:888"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:891"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:896"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:905"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:904"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:905"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:938"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:937"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:912"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:906"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:905"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:920"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:923"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:922"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:938"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:941"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:942"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:957"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:944"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:948"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:947"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:872,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:879,1"
      Dst: "[io.netty.handler.codec.http.multipart.Attribute].getValue()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:879,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:881,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:883,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].value()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:883,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:892,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:892,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:892,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:892,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:898,1"
      Dst: "[java.nio.charset.Charset].forName(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:912,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:926,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].cleanString(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:925,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpDataFactory].createFileUpload(io.netty.handler.codec.http.HttpRequest,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:938,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].loadDataMultipartOptimized(io.netty.buffer.ByteBuf,java.lang.String,io.netty.handler.codec.http.multipart.HttpData)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:942,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].isCompleted()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:949,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].cleanMixedAttributes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 36
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].value()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].cleanMixedAttributes()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1010,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].addHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:439"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:442"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:441"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:443"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:442,1"
      Dst: "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:442,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:444,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:445,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:447,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].hasNext()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    - "[java.util.List].size()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$EndOfDataDecoderException].<init>()"
    - "[java.util.List].isEmpty()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:378"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:383"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:380"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:384"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:383"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:384"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:383"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:384"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:383"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:376,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:380,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:381,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$EndOfDataDecoderException].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:384,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$EndOfDataDecoderException].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$EndOfDataDecoderException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$EndOfDataDecoderException:316,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].next()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].hasNext()"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:403"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:406"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:405"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:401,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:403,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].hasNext()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:404,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].currentPartialHttpData()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:411"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:414"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:413"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].destroy()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].cleanFiles()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:970"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:977"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:976"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:972"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:975"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:974"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:979"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:983"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:982"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:979"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:983"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:982"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:968,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].cleanFiles()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:970,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:970,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:970,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:972,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:973,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].cleanFiles()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    - "[io.netty.handler.codec.http.multipart.HttpDataFactory].cleanRequestHttpData(io.netty.handler.codec.http.HttpRequest)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:990,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:992,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpDataFactory].cleanRequestHttpData(io.netty.handler.codec.http.HttpRequest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].removeHttpDataFromClean(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    - "[io.netty.handler.codec.http.multipart.HttpDataFactory].removeHttpDataFromClean(io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1000,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].checkDestroyed()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1002,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpDataFactory].removeHttpDataFromClean(io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder].getCurrentAllocatedCapacity()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].capacity()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostMultipartRequestDecoder:1391,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$10].<init>(java.lang.Class)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$10"
    linkageType: ""
    functionLinenumber: 905
    functionLinenumberEnd: 907
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$10:906,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$10].run()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$10"
    linkageType: ""
    functionLinenumber: 908
    functionLinenumberEnd: 910
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getClassLoader()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$10:909,1"
      Dst: "[java.lang.Class].getClassLoader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlElementEnd].toString()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlElementEnd"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.xml.XmlElement].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlElementEnd:29,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.xml.XmlElementEnd:29,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlElementEnd:30,1"
      Dst: "[io.netty.handler.codec.xml.XmlElement].toString()"
    - Src: "io.netty.handler.codec.xml.XmlElementEnd:30,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine].<init>(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
    functionSourceFile: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 145
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ConscryptAlpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator,java.util.List,io.netty.handler.ssl.ConscryptAlpnSslEngine$1)"
    - "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine$1].<init>(io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine)"
    - "[org.conscrypt.Conscrypt].setHandshakeListener(javax.net.ssl.SSLEngine,org.conscrypt.HandshakeListener)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$1].newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$2].newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    - "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    - "[io.netty.handler.ssl.ApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory].newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    functionUses: 1
    ICount: 18
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:130,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolNegotiator].protocols()"
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:130,1"
      Dst: "[io.netty.handler.ssl.ConscryptAlpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator,java.util.List,io.netty.handler.ssl.ConscryptAlpnSslEngine$1)"
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:133,1"
      Dst: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine$1].<init>(io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine)"
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:133,1"
      Dst: "[org.conscrypt.Conscrypt].setHandshakeListener(javax.net.ssl.SSLEngine,org.conscrypt.HandshakeListener)"
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:140,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator].protocolSelectorFactory()"
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:142,1"
      Dst: "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:141,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory].newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:140,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine].selectProtocol()"
    functionSourceFile: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - "[org.conscrypt.Conscrypt].getApplicationProtocol(javax.net.ssl.SSLEngine)"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[java.util.Collections].emptyList()"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector].select(java.util.List)"
    - "[io.netty.handler.ssl.SslUtils].toSSLHandshakeException(java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:150"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:148,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:148,1"
      Dst: "[org.conscrypt.Conscrypt].getApplicationProtocol(javax.net.ssl.SSLEngine)"
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:149,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:150,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:149,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector].select(java.util.List)"
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:152,1"
      Dst: "[io.netty.handler.ssl.SslUtils].toSSLHandshakeException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine].access$200(io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine)"
    functionSourceFile: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine].selectProtocol()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine:125,1"
      Dst: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine].selectProtocol()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.Socks4ClientDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 82
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.ReplayingDecoder].state()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].valueOf(byte)"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShort()"
    - "[io.netty.util.NetUtil].intToIpAddress(int)"
    - "[io.netty.buffer.SwappedByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readInt()"
    - "[io.netty.buffer.EmptyByteBuf].readInt()"
    - "[io.netty.buffer.AbstractByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readInt()"
    - "[io.netty.buffer.WrappedByteBuf].readInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readInt()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].<init>(io.netty.handler.codec.socksx.v4.Socks4CommandStatus,java.lang.String,int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.socksx.v4.Socks4ClientDecoder].fail(java.util.List,java.lang.Exception)"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.ByteBuf].readInt()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 1
    ICount: 43
    EdgeCount: 73
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:59"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:58"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.socksx.v4.Socks4CommandStatus,java.lang.String,int)"
        - "intToIpAddress(int)"
        - "checkpoint(java.lang.Object)"
        - "readUnsignedShort()"
        - "readByte()"
        - "readInt()"
        - "valueOf(byte)"
    - Branch String: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:80"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "readRetainedSlice(int)"
      - BranchSide: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:52,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].state()"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:52,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:54,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:56,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:56,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:56,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:56,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:56,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:59,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:59,1"
      Dst: "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].valueOf(byte)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:60,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:61,1"
      Dst: "[io.netty.buffer.ByteBuf].readInt()"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:61,1"
      Dst: "[io.netty.util.NetUtil].intToIpAddress(int)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:63,1"
      Dst: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].<init>(io.netty.handler.codec.socksx.v4.Socks4CommandStatus,java.lang.String,int)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:63,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:64,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:67,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:69,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:74,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:79,1"
      Dst: "[io.netty.handler.codec.socksx.v4.Socks4ClientDecoder].fail(java.util.List,java.lang.Exception)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.Socks4CommandStatus"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 43
    functionDepth: 3
    returnType: "io.netty.handler.codec.socksx.v4.Socks4CommandStatus"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].<init>(int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.Socks4CommandStatus:42,1"
      Dst: "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.Socks4CommandStatus"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.Socks4CommandStatus:50,1"
      Dst: "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.Socks4CommandStatus"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 5
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.Socks4CommandStatus:53,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4CommandStatus:54,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].<init>(io.netty.handler.codec.socksx.v4.Socks4CommandStatus,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 63
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.socksx.v4.Socks4CommandStatus"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v4.AbstractSocks4Message].<init>()"
    - "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.AbstractStringBuilder:java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 2
    ICount: 35
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:49"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:55"
        BranchSideFuncs:
        - "isValidIpV4Address(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:54"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:55"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:54"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:56"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:55"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:59"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:58"
        BranchSideFuncs:
        - "checkNotNull(java.lang.Object,java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:48,1"
      Dst: "[io.netty.handler.codec.socksx.v4.AbstractSocks4Message].<init>()"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:50,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:51,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:51,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:51,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:51,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:56,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:59,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.socksx.v4.Socks4ClientDecoder].fail(java.util.List<Object>,java.lang.Exception)"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 94
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List<Object>"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].<init>(io.netty.handler.codec.socksx.v4.Socks4CommandStatus)"
    - "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    - "[io.netty.handler.codec.socksx.AbstractSocksMessage].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:88"
        BranchSideFuncs:
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:87"
        BranchSideFuncs:
        - "failure(java.lang.Throwable)"
        - "setDecoderResult(io.netty.handler.codec.DecoderResult)"
        - "add(java.lang.Object)"
        - "<init>(io.netty.handler.codec.socksx.v4.Socks4CommandStatus)"
        - "checkpoint(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:85,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:88,1"
      Dst: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].<init>(io.netty.handler.codec.socksx.v4.Socks4CommandStatus)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:89,1"
      Dst: "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:89,1"
      Dst: "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:90,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder:92,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].<init>(io.netty.handler.codec.socksx.v4.Socks4CommandStatus)"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.socksx.v4.Socks4CommandStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].<init>(io.netty.handler.codec.socksx.v4.Socks4CommandStatus,java.lang.String,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:38,1"
      Dst: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].<init>(io.netty.handler.codec.socksx.v4.Socks4CommandStatus,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ChannelBufferByteInput].close()"
    functionSourceFile: "io.netty.handler.codec.marshalling.ChannelBufferByteInput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ChannelBufferByteInput].available()"
    functionSourceFile: "io.netty.handler.codec.marshalling.ChannelBufferByteInput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:41,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ChannelBufferByteInput].read()"
    functionSourceFile: "io.netty.handler.codec.marshalling.ChannelBufferByteInput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:46,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:47,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ChannelBufferByteInput].read(byte[])"
    functionSourceFile: "io.netty.handler.codec.marshalling.ChannelBufferByteInput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.marshalling.ChannelBufferByteInput].read(byte[],int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:54,1"
      Dst: "[io.netty.handler.codec.marshalling.ChannelBufferByteInput].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ChannelBufferByteInput].read(byte[],int,int)"
    functionSourceFile: "io.netty.handler.codec.marshalling.ChannelBufferByteInput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.marshalling.ChannelBufferByteInput].available()"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.ByteBuf].readBytes(byte[],int,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:64"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:59,1"
      Dst: "[io.netty.handler.codec.marshalling.ChannelBufferByteInput].available()"
    - Src: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:64,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:65,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ChannelBufferByteInput].skip(long)"
    functionSourceFile: "io.netty.handler.codec.marshalling.ChannelBufferByteInput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:75"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:71,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:75,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.marshalling.ChannelBufferByteInput:75,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$2].<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$2"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.AbstractHttp2StreamChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$2:123,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$2"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$000(io.netty.channel.ChannelFuture,io.netty.channel.Channel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$2:126,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$000(io.netty.channel.ChannelFuture,io.netty.channel.Channel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$2"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$2:123,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$2].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,io.netty.channel.Channel,io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,io.netty.channel.ChannelOutboundInvoker,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker"
    - "io.netty.channel.Channel"
    - "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker"
    - "io.netty.channel.ChannelOutboundInvoker"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:635,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5"
    linkageType: ""
    functionLinenumber: 641
    functionLinenumberEnd: 662
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    - "[io.netty.channel.local.LocalServerChannel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    - "[io.netty.bootstrap.FailedChannel].isActive()"
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].access$000()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5)"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$2].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5,java.util.concurrent.Future)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].closeFuture()"
    - "[io.netty.channel.AbstractChannel].closeFuture()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.channel.Channel].isActive()"
    - "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.channel.Channel].closeFuture()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 24
    EdgeCount: 49
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:642"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:661"
        BranchSideFuncs:
        - "access$000()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:660"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:642"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:661"
        BranchSideFuncs:
        - "access$000()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:660"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:643"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:661"
        BranchSideFuncs:
        - "schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "eventLoop()"
        - "<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5)"
        - "<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5,java.util.concurrent.Future)"
        - "closeFuture()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:660"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:642,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:642,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:643,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].access$000()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:643,1"
      Dst: "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:644,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:644,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:644,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:654,1"
      Dst: "[io.netty.channel.Channel].closeFuture()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:654,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$2].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5,java.util.concurrent.Future)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:654,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1"
    linkageType: ""
    functionLinenumber: 643
    functionLinenumberEnd: 645
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1:644,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5"
    linkageType: ""
    functionLinenumber: 634
    functionLinenumberEnd: 636
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5:635,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 227
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.bootstrap.ServerBootstrap].access$100()"
    - "[io.netty.bootstrap.AbstractBootstrap].setChannelOptions(io.netty.channel.Channel,java.util.Map$Entry[],io.netty.util.internal.logging.InternalLogger)"
    - "[io.netty.bootstrap.AbstractBootstrap].setAttributes(io.netty.channel.Channel,java.util.Map$Entry[])"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$2].<init>(io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor,io.netty.channel.Channel)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].register(io.netty.channel.Channel)"
    - "[io.netty.channel.MultithreadEventLoopGroup].register(io.netty.channel.Channel)"
    - "[io.netty.channel.SingleThreadEventLoop].register(io.netty.channel.Channel)"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].register(io.netty.channel.Channel)"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor].forceClose(io.netty.channel.Channel,java.lang.Throwable)"
    - "[io.netty.channel.Channel].pipeline()"
    - "[io.netty.channel.ChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - "[io.netty.channel.EventLoopGroup].register(io.netty.channel.Channel)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 23
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:209,1"
      Dst: "[io.netty.channel.Channel].pipeline()"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:209,1"
      Dst: "[io.netty.channel.ChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:211,1"
      Dst: "[io.netty.bootstrap.ServerBootstrap].access$100()"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:211,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].setChannelOptions(io.netty.channel.Channel,java.util.Map$Entry[],io.netty.util.internal.logging.InternalLogger)"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:212,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].setAttributes(io.netty.channel.Channel,java.util.Map$Entry[])"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:215,1"
      Dst: "[io.netty.channel.EventLoopGroup].register(io.netty.channel.Channel)"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:215,1"
      Dst: "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$2].<init>(io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor,io.netty.channel.Channel)"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:215,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:224,1"
      Dst: "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor].forceClose(io.netty.channel.Channel,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrap].access$100()"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$2].<init>(io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor,io.netty.channel.Channel)"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$2"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 216
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor"
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$2:215,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor].forceClose(io.netty.channel.Channel,java.lang.Throwable)"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 232
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].closeForcibly()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].closeForcibly()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].closeForcibly()"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.embedded.EmbeddedChannel].unsafe()"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - "[io.netty.bootstrap.ServerBootstrap].access$100()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.Channel].unsafe()"
    - "[io.netty.channel.Channel$Unsafe].closeForcibly()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 7
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:229,1"
      Dst: "[io.netty.channel.Channel].unsafe()"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:229,1"
      Dst: "[io.netty.channel.Channel$Unsafe].closeForcibly()"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:230,1"
      Dst: "[io.netty.bootstrap.ServerBootstrap].access$100()"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:230,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor"
    linkageType: ""
    functionLinenumber: 234
    functionLinenumberEnd: 246
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.embedded.EmbeddedChannel].config()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].config()"
    - "[io.netty.bootstrap.FailedChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.local.LocalServerChannel].config()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].config()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].config()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].isAutoRead()"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.nio.NioDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelConfig].isAutoRead()"
    - "[io.netty.channel.ChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 2
    ICount: 15
    EdgeCount: 72
    BranchProfiles:
    - Branch String: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:236"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:243"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:235,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:235,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:236,1"
      Dst: "[io.netty.channel.ChannelConfig].isAutoRead()"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:239,1"
      Dst: "[io.netty.channel.ChannelConfig].setAutoRead(boolean)"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:240,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:240,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:244,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor].access$200(io.netty.channel.Channel,java.lang.Throwable)"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor].forceClose(io.netty.channel.Channel,java.lang.Throwable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor:175,1"
      Dst: "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor].forceClose(io.netty.channel.Channel,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ServerCookieDecoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ServerCookieDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.CookieDecoder].<init>(boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:59,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieDecoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ServerCookieDecoder].decodeAll(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ServerCookieDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List<Cookie>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[io.netty.handler.codec.http.cookie.ServerCookieDecoder].decode(java.util.Collection,java.lang.String)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:69,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:70,1"
      Dst: "[io.netty.handler.codec.http.cookie.ServerCookieDecoder].decode(java.util.Collection,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:71,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ServerCookieDecoder].decode(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ServerCookieDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set<Cookie>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeSet].<init>()"
    - "[io.netty.handler.codec.http.cookie.ServerCookieDecoder].decode(java.util.Collection,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:80,1"
      Dst: "[java.util.TreeSet].<init>()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:81,1"
      Dst: "[io.netty.handler.codec.http.cookie.ServerCookieDecoder].decode(java.util.Collection,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ServerCookieDecoder].decode(java.util.Collection<?\
      \ super Cookie>,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ServerCookieDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Collection<? super Cookie>"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.String].indexOf(int,int)"
    - "[java.lang.String].regionMatches(int,java.lang.String,int,int)"
    - "[io.netty.handler.codec.http.cookie.CookieDecoder].initCookie(java.lang.String,int,int,int,int)"
    - "[java.util.Collection].add(java.lang.Object)"
    functionUses: 0
    ICount: 93
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:91"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:95"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:94"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:98"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:107"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:111"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:119"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:128"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:149"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:143"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:147"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:144"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:143"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:153"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:158"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:161"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:169"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:168"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:161"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:108"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:107"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:162"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:108"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:107"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:168"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:170"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:173"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:89,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:89,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:98,1"
      Dst: "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:100,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:111,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:146,1"
      Dst: "[java.lang.String].indexOf(int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:161,1"
      Dst: "[java.lang.String].regionMatches(int,java.lang.String,int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:169,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieDecoder].initCookie(java.lang.String,int,int,int,int)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieDecoder:171,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 37
    CyclomaticComplexity: 21
  - functionName: "[io.netty.handler.codec.http.DefaultHttpContent].copy()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.HttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:43,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:43,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpContent].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.HttpContent"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpContent].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:58,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpContent].duplicate()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.HttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:48,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:48,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpContent].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.HttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:53,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:53,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpContent].refCnt()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpContent"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.buffer.EmptyByteBuf].refCnt()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 4
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:63,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpContent].release()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpContent"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.util.ReferenceCounted].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 13
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:92,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpContent].release(int)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpContent"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release(int)"
    - "[io.netty.buffer.WrappedByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release(int)"
    - "[io.netty.buffer.SwappedByteBuf].release(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release(int)"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf].release(int)"
    - "[io.netty.util.ReferenceCounted].release(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpContent:97,1"
      Dst: "[io.netty.util.ReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.ChannelGroupException].iterator()"
    functionSourceFile: "io.netty.channel.group.ChannelGroupException"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayDeque:java.util.ArrayList:java.util.HashSet:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.TreeSet:java.util.Vector:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$ValuesView:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[java.util.Collection].iterator()"
    functionUses: 24
    ICount: 4
    EdgeCount: 37
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.ChannelGroupException:47,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].<init>(io.netty.handler.codec.http2.Http2Headers)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Headers"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].<init>(io.netty.handler.codec.http2.Http2Headers,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame:33,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].<init>(io.netty.handler.codec.http2.Http2Headers,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].<init>(io.netty.handler.codec.http2.Http2Headers,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].<init>(io.netty.handler.codec.http2.Http2Headers,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame:37,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].<init>(io.netty.handler.codec.http2.Http2Headers,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].pushStream()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].http2Headers()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Headers"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].padding()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].promisedStreamId()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameStream].id()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame:70,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameStream].id()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2PushPromiseFrame"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameStream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].stream()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].name()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].toString()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 20
    ICount: 18
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame:94,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame:94,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame:94,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame:94,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame:94,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame:94,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor].<init>(io.netty.handler.codec.http2.HpackHuffmanEncoder)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.HpackHuffmanEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor:141,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor].process(byte)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 160
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackHuffmanEncoder].access$200(io.netty.handler.codec.http2.HpackHuffmanEncoder)"
    - "[io.netty.handler.codec.http2.HpackHuffmanEncoder].access$300(io.netty.handler.codec.http2.HpackHuffmanEncoder)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    functionUses: 2
    ICount: 36
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor:155"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor:159"
        BranchSideFuncs:
        - "writeByte(int)"
      - BranchSide: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor:158"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor:149,1"
      Dst: "[io.netty.handler.codec.http2.HpackHuffmanEncoder].access$200(io.netty.handler.codec.http2.HpackHuffmanEncoder)"
    - Src: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor:152,1"
      Dst: "[io.netty.handler.codec.http2.HpackHuffmanEncoder].access$300(io.netty.handler.codec.http2.HpackHuffmanEncoder)"
    - Src: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor:157,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.HpackHuffmanEncoder].access$200(io.netty.handler.codec.http2.HpackHuffmanEncoder)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHuffmanEncoder"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.HpackHuffmanEncoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackHuffmanEncoder].access$300(io.netty.handler.codec.http2.HpackHuffmanEncoder)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHuffmanEncoder"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "int[]"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.HpackHuffmanEncoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor].end()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 175
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    functionUses: 3
    ICount: 28
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor:164"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor:170"
        BranchSideFuncs:
        - "writeByte(int)"
      - BranchSide: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor:167,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor].<init>(io.netty.handler.codec.http2.HpackHuffmanEncoder,io.netty.handler.codec.http2.HpackHuffmanEncoder$1)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.HpackHuffmanEncoder"
    - "io.netty.handler.codec.http2.HpackHuffmanEncoder$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor].<init>(io.netty.handler.codec.http2.HpackHuffmanEncoder)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor:141,1"
      Dst: "[io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodeProcessor].<init>(io.netty.handler.codec.http2.HpackHuffmanEncoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PendingWrite].newInstance(java.lang.Object,io.netty.util.concurrent.Promise<Void>)"
    functionSourceFile: "io.netty.util.internal.PendingWrite"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.internal.PendingWrite"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.util.concurrent.Promise<Void>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectPool].get()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PendingWrite:38,1"
      Dst: "[io.netty.util.internal.ObjectPool].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PendingWrite].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.util.internal.PendingWrite"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PendingWrite:48,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PendingWrite].recycle()"
    functionSourceFile: "io.netty.util.internal.PendingWrite"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectPool$Handle].recycle(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PendingWrite:58,1"
      Dst: "[io.netty.util.internal.ObjectPool$Handle].recycle(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PendingWrite].failAndRecycle(java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.PendingWrite"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.internal.PendingWrite].recycle()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PendingWrite:67"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PendingWrite:70"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PendingWrite:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PendingWrite:66,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.util.internal.PendingWrite:68,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.util.internal.PendingWrite:70,1"
      Dst: "[io.netty.util.internal.PendingWrite].recycle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PendingWrite].successAndRecycle()"
    functionSourceFile: "io.netty.util.internal.PendingWrite"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - "[io.netty.util.internal.PendingWrite].recycle()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PendingWrite:77"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PendingWrite:80"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PendingWrite:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PendingWrite:78,1"
      Dst: "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - Src: "io.netty.util.internal.PendingWrite:80,1"
      Dst: "[io.netty.util.internal.PendingWrite].recycle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PendingWrite].msg()"
    functionSourceFile: "io.netty.util.internal.PendingWrite"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PendingWrite].promise()"
    functionSourceFile: "io.netty.util.internal.PendingWrite"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PendingWrite].recycleAndGet()"
    functionSourceFile: "io.netty.util.internal.PendingWrite"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PendingWrite].recycle()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PendingWrite:96,1"
      Dst: "[io.netty.util.internal.PendingWrite].recycle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PendingWrite].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.util.internal.PendingWrite$1)"
    functionSourceFile: "io.netty.util.internal.PendingWrite"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    - "io.netty.util.internal.PendingWrite$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PendingWrite].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PendingWrite:26,1"
      Dst: "[io.netty.util.internal.PendingWrite].<init>(io.netty.util.internal.ObjectPool$Handle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel$State].values()"
    functionSourceFile: "io.netty.channel.local.LocalChannel$State"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "io.netty.channel.local.LocalChannel$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel$State:58,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.channel.local.LocalChannel$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.local.LocalChannel$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel$State:58,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.channel.local.LocalChannel$State"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel$State:58,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionDecoder"
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:87,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionDecoder"
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    - "io.netty.handler.codec.http2.Http2Settings"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:92,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionDecoder"
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    - "io.netty.handler.codec.http2.Http2Settings"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2ConnectionEncoder].connection()"
    - "[io.netty.handler.codec.http2.Http2ConnectionDecoder].connection()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:103"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:106"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:97,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:98,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:103,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionEncoder].connection()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:103,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionDecoder].connection()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:104,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].gracefulShutdownTimeoutMillis()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].gracefulShutdownTimeoutMillis(long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:128"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:125,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:125,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:125,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:125,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:125,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].decoder()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2ConnectionDecoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 402
    functionLinenumberEnd: 409
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    - "[io.netty.handler.codec.http2.Http2ControlFrameLimitEncoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].channelHandlerContext(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].flowController()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].flowController()"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$ConsumedBytesConverter].channelHandlerContext(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].channelHandlerContext(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].flowController()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].flowController()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionEncoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    - "[io.netty.handler.codec.http2.Http2ConnectionDecoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    - "[io.netty.handler.codec.http2.Http2ConnectionEncoder].flowController()"
    - "[io.netty.handler.codec.http2.Http2FlowController].channelHandlerContext(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionDecoder].flowController()"
    functionUses: 6
    ICount: 16
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:403,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionEncoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:404,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionDecoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:405,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionEncoder].flowController()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:405,1"
      Dst: "[io.netty.handler.codec.http2.Http2FlowController].channelHandlerContext(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:406,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionDecoder].flowController()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:407,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder"
    linkageType: ""
    functionLinenumber: 231
    functionLinenumberEnd: 238
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.handler.codec.http2.Http2ConnectionHandler$1)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$100(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$200(io.netty.handler.codec.http2.Http2Connection)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].connection()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder].sendPreface(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionEncoder].connection()"
    functionUses: 2
    ICount: 11
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:232,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.handler.codec.http2.Http2ConnectionHandler$1)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:233,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$100(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:233,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionEncoder].connection()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:233,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$200(io.netty.handler.codec.http2.Http2Connection)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:236,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder].sendPreface(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$100(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$200(io.netty.handler.codec.http2.Http2Connection)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].clientPrefaceString(io.netty.handler.codec.http2.Http2Connection)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:66,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].clientPrefaceString(io.netty.handler.codec.http2.Http2Connection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].clientPrefaceString(io.netty.handler.codec.http2.Http2Connection)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 925
    functionLinenumberEnd: 927
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil].connectionPrefaceBuf()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].isServer()"
    - "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:926"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:925"
        BranchSideFuncs:
        - "isServer()"
        - "connectionPrefaceBuf()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:926,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:926,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].connectionPrefaceBuf()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder].sendPreface(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder"
    linkageType: ""
    functionLinenumber: 363
    functionLinenumberEnd: 387
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    - "[io.netty.channel.local.LocalServerChannel].isActive()"
    - "[io.netty.channel.Channel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    - "[io.netty.bootstrap.FailedChannel].isActive()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].isServer()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil].connectionPrefaceBuf()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$100(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$700(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 37
    EdgeCount: 55
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:364"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:365"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:364"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:364"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:368"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:367"
        BranchSideFuncs:
        - "isServer()"
        - "connection()"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:370"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:-1"
        BranchSideFuncs:
        - "isServer()"
        - "connection()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:371"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:376"
        BranchSideFuncs:
        - "access$100(io.netty.handler.codec.http2.Http2ConnectionHandler)"
        - "newPromise()"
        - "access$700(io.netty.handler.codec.http2.Http2ConnectionHandler)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:380"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:385"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:364,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:364,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:370,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:370,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:373,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].connectionPrefaceBuf()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:373,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:373,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:377,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$100(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:377,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$700(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:377,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:377,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder:384,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$700(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Settings"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 419
    functionLinenumberEnd: 426
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder].channelActive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelActive(io.netty.channel.ChannelHandlerContext)"
    functionUses: 2
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:420"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:423"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:422"
        BranchSideFuncs:
        - "channelActive(io.netty.channel.ChannelHandlerContext)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:421,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:423,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder].channelActive(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:424,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].channelActive(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 429
    functionLinenumberEnd: 436
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:431"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:435"
        BranchSideFuncs:
        - "channelInactive(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:434"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:430,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:432,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 452
    functionLinenumberEnd: 455
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$FrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:453,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 457
    functionLinenumberEnd: 460
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:458,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 463
    functionLinenumberEnd: 466
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:464,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 468
    functionLinenumberEnd: 471
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:469,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 473
    functionLinenumberEnd: 494
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].unvoid()"
    - "[io.netty.channel.DefaultChannelPromise].unvoid()"
    - "[io.netty.channel.VoidChannelPromise].unvoid()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].unvoid()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    - "[io.netty.channel.local.LocalServerChannel].isActive()"
    - "[io.netty.channel.Channel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    - "[io.netty.bootstrap.FailedChannel].isActive()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].prefaceSent()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].goAway(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Exception,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].goAwaySent()"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].doGracefulShutdown(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPromise].unvoid()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.handler.codec.http2.Http2Connection].goAwaySent()"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 2
    ICount: 26
    EdgeCount: 51
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:474"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:478"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:477"
        BranchSideFuncs:
        - "prefaceSent()"
        - "isActive()"
        - "channel()"
        - "unvoid()"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:480"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:481"
        BranchSideFuncs:
        - "close(io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:480"
        BranchSideFuncs:
        - "close(io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:480"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:490"
        BranchSideFuncs:
        - "close(io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:489"
        BranchSideFuncs:
        - "newPromise()"
        - "write(java.lang.Object)"
        - "goAway(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Exception,io.netty.channel.ChannelPromise)"
        - "goAwaySent()"
        - "connection()"
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:490"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:490"
        BranchSideFuncs:
        - "doGracefulShutdown(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
        - "flush()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:489"
        BranchSideFuncs:
        - "newPromise()"
        - "write(java.lang.Object)"
        - "goAway(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Exception,io.netty.channel.ChannelPromise)"
        - "goAwaySent()"
        - "connection()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:475,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:478,1"
      Dst: "[io.netty.channel.ChannelPromise].unvoid()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:480,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:480,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:480,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].prefaceSent()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:490,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:490,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].goAwaySent()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:490,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:490,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:490,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].goAway(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Exception,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:491,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:492,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].doGracefulShutdown(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 533
    functionLinenumberEnd: 536
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].deregister(io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:534,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].deregister(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].read(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 538
    functionLinenumberEnd: 541
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].read()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].read()"
    - "[io.netty.channel.ChannelHandlerContext].read()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:539,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].read()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 543
    functionLinenumberEnd: 546
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:544,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 552
    functionLinenumberEnd: 558
    functionDepth: 16
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].channelReadComplete0(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].flush(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:553,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].channelReadComplete0(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:555,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].flush(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 577
    functionLinenumberEnd: 585
    functionDepth: 15
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil].getEmbeddedHttp2Exception(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionUses: 3
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:578"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:581"
        BranchSideFuncs:
        - "exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:578,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].getEmbeddedHttp2Exception(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:580,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:582,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelInboundHandlerAdapter].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.ChannelInboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 7
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelInboundHandlerAdapter:143,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].closeStreamLocal(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 594
    functionLinenumberEnd: 605
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].state()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].closeLocalSide()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].closeLocalSide()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].closeStream(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    - "[io.netty.handler.codec.http2.Http2Stream].state()"
    - "[io.netty.handler.codec.http2.Http2Stream].closeLocalSide()"
    functionUses: 2
    ICount: 12
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:595,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].state()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:595,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:598,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].closeLocalSide()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:601,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].closeStream(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].closeStreamRemote(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 614
    functionLinenumberEnd: 625
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].state()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].closeRemoteSide()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].closeRemoteSide()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].closeStream(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    - "[io.netty.handler.codec.http2.Http2Stream].state()"
    - "[io.netty.handler.codec.http2.Http2Stream].closeRemoteSide()"
    functionUses: 2
    ICount: 12
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:615,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].state()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:615,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:618,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].closeRemoteSide()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:621,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].closeStream(io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].resetStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 786
    functionLinenumberEnd: 793
    functionDepth: 13
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].resetUnknownStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].unvoid()"
    - "[io.netty.channel.DefaultChannelPromise].unvoid()"
    - "[io.netty.channel.VoidChannelPromise].unvoid()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].unvoid()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].resetStream(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - "[io.netty.channel.ChannelPromise].unvoid()"
    functionUses: 1
    ICount: 13
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ConnectionHandler:788"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:792"
        BranchSideFuncs:
        - "resetUnknownStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
        - "unvoid()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ConnectionHandler:791"
        BranchSideFuncs:
        - "resetStream(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,long,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:787,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:787,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:789,1"
      Dst: "[io.netty.channel.ChannelPromise].unvoid()"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:789,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].resetUnknownStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:792,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].resetStream(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,long,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$302(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    - "io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$300(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2ConnectionHandler$BaseDecoder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$500(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$600()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$900(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].checkCloseConnection(io.netty.channel.ChannelFuture)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:66,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].checkCloseConnection(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$1100(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 12
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].processRstStreamWriteResult(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:66,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].processRstStreamWriteResult(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$1200(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].processGoAwayWriteResult(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelFuture)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler:66,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].processGoAwayWriteResult(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.FixedRecvByteBufAllocator].<init>(int)"
    functionSourceFile: "io.netty.channel.FixedRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.FixedRecvByteBufAllocator:45,1"
      Dst: "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator].<init>()"
    - Src: "io.netty.channel.FixedRecvByteBufAllocator:46,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.FixedRecvByteBufAllocator].newHandle()"
    functionSourceFile: "io.netty.channel.FixedRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 1
    returnType: "io.netty.channel.RecvByteBufAllocator$Handle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.FixedRecvByteBufAllocator$HandleImpl].<init>(io.netty.channel.FixedRecvByteBufAllocator,int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.FixedRecvByteBufAllocator:53,1"
      Dst: "[io.netty.channel.FixedRecvByteBufAllocator$HandleImpl].<init>(io.netty.channel.FixedRecvByteBufAllocator,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.FixedRecvByteBufAllocator$HandleImpl].<init>(io.netty.channel.FixedRecvByteBufAllocator,int)"
    functionSourceFile: "io.netty.channel.FixedRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.FixedRecvByteBufAllocator"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].<init>(io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.FixedRecvByteBufAllocator$HandleImpl:31,1"
      Dst: "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].<init>(io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.FixedRecvByteBufAllocator].respectMaybeMoreData(boolean)"
    functionSourceFile: "io.netty.channel.FixedRecvByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.FixedRecvByteBufAllocator"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator].respectMaybeMoreData(boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.FixedRecvByteBufAllocator:58,1"
      Dst: "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator].respectMaybeMoreData(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$6].<init>(io.netty.handler.ssl.SslHandler,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$6"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$6:2039,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$6].run()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$6"
    linkageType: ""
    functionLinenumber: 2041
    functionLinenumberEnd: 2044
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].access$2200(io.netty.handler.ssl.SslHandler,io.netty.util.concurrent.Promise)"
    functionUses: 49
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$6:2042,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$2200(io.netty.handler.ssl.SslHandler,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$2200(io.netty.handler.ssl.SslHandler,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].renegotiateOnEventLoop(io.netty.util.concurrent.Promise)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].renegotiateOnEventLoop(io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,io.netty.channel.ChannelPromise,io.netty.channel.Channel)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker"
    - "io.netty.channel.ChannelPromise"
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:451,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4"
    linkageType: ""
    functionLinenumber: 456
    functionLinenumberEnd: 467
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].handleHandshakeResponse(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpObject)"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionUses: 2
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:457"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:463"
        BranchSideFuncs:
        - "channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:459,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].handleHandshakeResponse(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpObject)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:461,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:464,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].handleHandshakeResponse(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpObject)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4"
    linkageType: ""
    functionLinenumber: 493
    functionLinenumberEnd: 523
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.HttpObject"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].tryFinishHandshake(io.netty.handler.codec.http.FullHttpResponse)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].release()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].release()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].decoderResult()"
    - "[io.netty.handler.codec.http.DefaultHttpObject].decoderResult()"
    - "[io.netty.handler.codec.DecoderResult].isFailure()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[io.netty.handler.codec.http.DefaultHttpObject].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.DecoderResultProvider].decoderResult()"
    - "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    functionUses: 1
    ICount: 48
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:494"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:500"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:499"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:500"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:513"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:512"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:501"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:502"
        BranchSideFuncs:
        - "pipeline()"
        - "remove(io.netty.channel.ChannelHandler)"
        - "tryFinishHandshake(io.netty.handler.codec.http.FullHttpResponse)"
        - "release()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:501"
        BranchSideFuncs:
        - "pipeline()"
        - "remove(io.netty.channel.ChannelHandler)"
        - "tryFinishHandshake(io.netty.handler.codec.http.FullHttpResponse)"
        - "release()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:501"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:502"
        BranchSideFuncs:
        - "pipeline()"
        - "remove(io.netty.channel.ChannelHandler)"
        - "tryFinishHandshake(io.netty.handler.codec.http.FullHttpResponse)"
        - "release()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:501"
        BranchSideFuncs:
        - "pipeline()"
        - "remove(io.netty.channel.ChannelHandler)"
        - "tryFinishHandshake(io.netty.handler.codec.http.FullHttpResponse)"
        - "release()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:513"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:522"
        BranchSideFuncs:
        - "protocolVersion()"
        - "isFailure()"
        - "status()"
        - "<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpHeaders)"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:521"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:518"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:522"
        BranchSideFuncs:
        - "setDecoderResult(io.netty.handler.codec.DecoderResult)"
        - "decoderResult()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:521"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:495,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:495,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:496,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].tryFinishHandshake(io.netty.handler.codec.http.FullHttpResponse)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:501,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:508,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:515,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:516,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:516,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:516,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:518,1"
      Dst: "[io.netty.handler.codec.DecoderResultProvider].decoderResult()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:518,1"
      Dst: "[io.netty.handler.codec.DecoderResult].isFailure()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:519,1"
      Dst: "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].tryFinishHandshake(io.netty.handler.codec.http.FullHttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4"
    linkageType: ""
    functionLinenumber: 525
    functionLinenumberEnd: 532
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.FullHttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].finishHandshake(io.netty.channel.Channel,io.netty.handler.codec.http.FullHttpResponse)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 2
    ICount: 12
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:526,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].finishHandshake(io.netty.channel.Channel,io.netty.handler.codec.http.FullHttpResponse)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:527,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:529,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 74
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpResponseStatus"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 3
    ICount: 14
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:70,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:71,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4"
    linkageType: ""
    functionLinenumber: 470
    functionLinenumberEnd: 474
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 2
    ICount: 8
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:471,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:471,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:472,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4"
    linkageType: ""
    functionLinenumber: 478
    functionLinenumberEnd: 487
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[java.nio.channels.ClosedChannelException].<init>()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelInactive()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelInactive()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].releaseFullHttpResponse()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelInactive()"
    functionUses: 2
    ICount: 16
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:479"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:482"
        BranchSideFuncs:
        - "<init>()"
        - "tryFailure(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:481"
        BranchSideFuncs:
        - "releaseFullHttpResponse()"
        - "fireChannelInactive()"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:479,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:480,1"
      Dst: "[java.nio.channels.ClosedChannelException].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:480,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:482,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelInactive()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:484,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].releaseFullHttpResponse()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].releaseFullHttpResponse()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4"
    linkageType: ""
    functionLinenumber: 533
    functionLinenumberEnd: 539
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].release()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 3
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:534"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:538"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:537"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:535,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4"
    linkageType: ""
    functionLinenumber: 489
    functionLinenumberEnd: 492
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].releaseFullHttpResponse()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4:490,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$4].releaseFullHttpResponse()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup$1"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2].hasNext()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 227
    ICount: 4
    EdgeCount: 41
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$1:121,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup$1"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionDepth: 5
    returnType: "io.netty.util.concurrent.EventExecutor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].access$000(io.netty.util.concurrent.NonStickyEventExecutorGroup,io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2].next()"
    - "[java.util.Iterator].next()"
    functionUses: 229
    ICount: 7
    EdgeCount: 55
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$1:126,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$1:126,1"
      Dst: "[io.netty.util.concurrent.NonStickyEventExecutorGroup].access$000(io.netty.util.concurrent.NonStickyEventExecutorGroup,io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].remove()"
    functionSourceFile: "io.netty.util.concurrent.NonStickyEventExecutorGroup$1"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.CombinedIterator].remove()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].remove()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].remove()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].remove()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].remove()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].remove()"
    - "[io.netty.channel.nio.NioEventLoop$7].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].remove()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].remove()"
    - "[io.netty.util.internal.ReadOnlyIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].remove()"
    - "[java.util.Iterator].remove()"
    functionUses: 21
    ICount: 4
    EdgeCount: 52
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.NonStickyEventExecutorGroup$1:131,1"
      Dst: "[java.util.Iterator].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzfDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.compression.LzfDecoder$State"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.LzfDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzfDecoder$State:44,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzfDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.compression.LzfDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.LzfDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzfDecoder$State:44,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzfDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.compression.LzfDecoder$State"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzfDecoder$State:44,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.FastLzFrameDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.compression.FastLzFrameDecoder$State"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.FastLzFrameDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder$State:40,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.FastLzFrameDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.compression.FastLzFrameDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.FastLzFrameDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder$State:40,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.FastLzFrameDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.compression.FastLzFrameDecoder$State"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.FastLzFrameDecoder$State:40,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionContext$1].<init>(io.netty.handler.ssl.OpenSslSessionContext)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionContext$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslSessionContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.ssl.OpenSslSessionContext].access$000(io.netty.handler.ssl.OpenSslSessionContext)"
    - "[io.netty.handler.ssl.OpenSslSessionCache].getIds()"
    - "[java.util.List].iterator()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionContext$1:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslSessionContext$1:103,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionContext].access$000(io.netty.handler.ssl.OpenSslSessionContext)"
    - Src: "io.netty.handler.ssl.OpenSslSessionContext$1:103,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].getIds()"
    - Src: "io.netty.handler.ssl.OpenSslSessionContext$1:103,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionContext$1].hasMoreElements()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionContext$1"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2].hasNext()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 14
    ICount: 4
    EdgeCount: 41
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionContext$1:106,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionContext$1].nextElement()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionContext$1"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslSessionId].cloneBytes()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2].next()"
    - "[java.util.Iterator].next()"
    functionUses: 13
    ICount: 6
    EdgeCount: 55
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionContext$1:111,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ssl.OpenSslSessionContext$1:111,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionId].cloneBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAddressType].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAddressType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksAddressType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAddressType:19,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAddressType].<init>(java.lang.String,int,byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAddressType"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAddressType:27,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAddressType].fromByte(byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAddressType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.socks.SocksAddressType"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksAddressType].valueOf(byte)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAddressType:36,1"
      Dst: "[io.netty.handler.codec.socks.SocksAddressType].valueOf(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAddressType].byteValue()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAddressType"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].handler()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1317
    functionLinenumberEnd: 1319
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1323
    functionLinenumberEnd: 1325
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1328
    functionLinenumberEnd: 1330
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1333
    functionLinenumberEnd: 1336
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.Channel$Unsafe].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1334,1"
      Dst: "[io.netty.channel.Channel$Unsafe].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1341
    functionLinenumberEnd: 1344
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.oio.AbstractOioChannel$DefaultOioUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.bootstrap.FailedChannel$FailedChannelUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.local.LocalChannel$LocalUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractServerChannel$DefaultServerUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.Channel$Unsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 8
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1342,1"
      Dst: "[io.netty.channel.Channel$Unsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1346
    functionLinenumberEnd: 1349
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.Channel$Unsafe].disconnect(io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1347,1"
      Dst: "[io.netty.channel.Channel$Unsafe].disconnect(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1351
    functionLinenumberEnd: 1354
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.Channel$Unsafe].close(io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1352,1"
      Dst: "[io.netty.channel.Channel$Unsafe].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1356
    functionLinenumberEnd: 1359
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.Channel$Unsafe].deregister(io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1357,1"
      Dst: "[io.netty.channel.Channel$Unsafe].deregister(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].read(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1361
    functionLinenumberEnd: 1364
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].beginRead()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].beginRead()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].beginRead()"
    - "[io.netty.channel.Channel$Unsafe].beginRead()"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1362,1"
      Dst: "[io.netty.channel.Channel$Unsafe].beginRead()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1366
    functionLinenumberEnd: 1369
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.Channel$Unsafe].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1367,1"
      Dst: "[io.netty.channel.Channel$Unsafe].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].flush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1371
    functionLinenumberEnd: 1374
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].flush()"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].flush()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].flush()"
    - "[io.netty.channel.Channel$Unsafe].flush()"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1372,1"
      Dst: "[io.netty.channel.Channel$Unsafe].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1376
    functionLinenumberEnd: 1379
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1377,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1381
    functionLinenumberEnd: 1385
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].invokeHandlerAddedIfNeeded()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRegistered()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRegistered()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRegistered()"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1382,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].invokeHandlerAddedIfNeeded()"
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1383,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRegistered()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].channelUnregistered(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1387
    functionLinenumberEnd: 1395
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelUnregistered()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelUnregistered()"
    - "[io.netty.channel.DefaultChannelPipeline].access$600(io.netty.channel.DefaultChannelPipeline)"
    - "[io.netty.channel.embedded.EmbeddedChannel].isOpen()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isOpen()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isOpen()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isOpen()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isOpen()"
    - "[io.netty.channel.local.LocalChannel].isOpen()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isOpen()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isOpen()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isOpen()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isOpen()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isOpen()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isOpen()"
    - "[io.netty.channel.rxtx.RxtxChannel].isOpen()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isOpen()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isOpen()"
    - "[io.netty.channel.nio.AbstractNioChannel].isOpen()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isOpen()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isOpen()"
    - "[io.netty.channel.local.LocalServerChannel].isOpen()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isOpen()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isOpen()"
    - "[io.netty.bootstrap.FailedChannel].isOpen()"
    - "[io.netty.channel.DefaultChannelPipeline].access$700(io.netty.channel.DefaultChannelPipeline)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelUnregistered()"
    - "[io.netty.channel.Channel].isOpen()"
    functionUses: 3
    ICount: 10
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline$HeadContext:1391"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline$HeadContext:1394"
        BranchSideFuncs:
        - "access$700(io.netty.channel.DefaultChannelPipeline)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline$HeadContext:1393"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1388,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelUnregistered()"
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1391,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].access$600(io.netty.channel.DefaultChannelPipeline)"
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1391,1"
      Dst: "[io.netty.channel.Channel].isOpen()"
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1392,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].access$700(io.netty.channel.DefaultChannelPipeline)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].channelActive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1397
    functionLinenumberEnd: 1402
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelActive()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelActive()"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].readIfIsAutoRead()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelActive()"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1398,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelActive()"
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1400,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline$HeadContext].readIfIsAutoRead()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].readIfIsAutoRead()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1420
    functionLinenumberEnd: 1425
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].access$600(io.netty.channel.DefaultChannelPipeline)"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.embedded.EmbeddedChannel].config()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].config()"
    - "[io.netty.bootstrap.FailedChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.local.LocalServerChannel].config()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].config()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].config()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].isAutoRead()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].read()"
    - "[io.netty.channel.AbstractChannel].read()"
    - "[io.netty.channel.ChannelConfig].isAutoRead()"
    - "[io.netty.channel.Channel].read()"
    functionUses: 2
    ICount: 10
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelPipeline$HeadContext:1421"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelPipeline$HeadContext:1424"
        BranchSideFuncs:
        - "read()"
        - "access$600(io.netty.channel.DefaultChannelPipeline)"
      - BranchSide: "io.netty.channel.DefaultChannelPipeline$HeadContext:1423"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1421,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].access$600(io.netty.channel.DefaultChannelPipeline)"
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1421,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1421,1"
      Dst: "[io.netty.channel.ChannelConfig].isAutoRead()"
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1422,1"
      Dst: "[io.netty.channel.Channel].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1404
    functionLinenumberEnd: 1407
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelInactive()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelInactive()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelInactive()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1405,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelInactive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1409
    functionLinenumberEnd: 1412
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1410,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1414
    functionLinenumberEnd: 1419
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].readIfIsAutoRead()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1415,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1417,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline$HeadContext].readIfIsAutoRead()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1427
    functionLinenumberEnd: 1430
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    functionUses: 3
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1428,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$HeadContext].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$HeadContext"
    linkageType: ""
    functionLinenumber: 1432
    functionLinenumberEnd: 1435
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelWritabilityChanged()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelWritabilityChanged()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelWritabilityChanged()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$HeadContext:1433,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelWritabilityChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers$1"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$1:36,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers$1].process(byte)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers$1"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].isUpperCase(byte)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers$1:39"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$1:38"
        BranchSideFuncs:
        - "isUpperCase(byte)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$1:39,1"
      Dst: "[io.netty.util.AsciiString].isUpperCase(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector].<init>(io.netty.handler.ssl.JdkSslEngine,java.util.Set)"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 137
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.JdkSslEngine"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector:133,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector].unsupported()"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].setNegotiatedApplicationProtocol(java.lang.String)"
    - "[io.netty.handler.ssl.JdkSslEngine].setNegotiatedApplicationProtocol(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector:140,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].setNegotiatedApplicationProtocol(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector].select(java.util.List)"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 152
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.util.ArrayList].contains(java.lang.Object)"
    - "[java.util.Vector].contains(java.lang.Object)"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[jaz.Zer].contains(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].contains(java.lang.Object)"
    - "[java.util.LinkedList].contains(java.lang.Object)"
    - "[io.netty.handler.ssl.JdkSslEngine].setNegotiatedApplicationProtocol(java.lang.String)"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].setNegotiatedApplicationProtocol(java.lang.String)"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector].noSelectMatchFound()"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$FailProtocolSelector].noSelectMatchFound()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].contains(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 142
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector:145"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector:151"
        BranchSideFuncs:
        - "hasNext()"
        - "contains(java.lang.Object)"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector:150"
        BranchSideFuncs:
        - "noSelectMatchFound()"
    - Branch String: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector:146"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector:150"
        BranchSideFuncs:
        - "setNegotiatedApplicationProtocol(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector:145,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector:145,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector:145,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector:146,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector:147,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].setNegotiatedApplicationProtocol(java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector:151,1"
      Dst: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector].noSelectMatchFound()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector].noSelectMatchFound()"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].setNegotiatedApplicationProtocol(java.lang.String)"
    - "[io.netty.handler.ssl.JdkSslEngine].setNegotiatedApplicationProtocol(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector:155,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].setNegotiatedApplicationProtocol(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.protobuf.ProtobufDecoder].<init>(com.google.protobuf.MessageLite)"
    functionSourceFile: "io.netty.handler.codec.protobuf.ProtobufDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.google.protobuf.MessageLite"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.protobuf.ProtobufDecoder].<init>(com.google.protobuf.MessageLite,com.google.protobuf.ExtensionRegistry)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:91,1"
      Dst: "[io.netty.handler.codec.protobuf.ProtobufDecoder].<init>(com.google.protobuf.MessageLite,com.google.protobuf.ExtensionRegistry)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.protobuf.ProtobufDecoder].<init>(com.google.protobuf.MessageLite,com.google.protobuf.ExtensionRegistry)"
    functionSourceFile: "io.netty.handler.codec.protobuf.ProtobufDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.protobuf.MessageLite"
    - "com.google.protobuf.ExtensionRegistry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.protobuf.ProtobufDecoder].<init>(com.google.protobuf.MessageLite,com.google.protobuf.ExtensionRegistryLite)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:95,1"
      Dst: "[io.netty.handler.codec.protobuf.ProtobufDecoder].<init>(com.google.protobuf.MessageLite,com.google.protobuf.ExtensionRegistryLite)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.protobuf.ProtobufDecoder].<init>(com.google.protobuf.MessageLite,com.google.protobuf.ExtensionRegistryLite)"
    functionSourceFile: "io.netty.handler.codec.protobuf.ProtobufDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.google.protobuf.MessageLite"
    - "com.google.protobuf.ExtensionRegistryLite"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[com.google.protobuf.MessageLite].getDefaultInstanceForType()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:98,1"
      Dst: "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:99,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:99,1"
      Dst: "[com.google.protobuf.MessageLite].getDefaultInstanceForType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.protobuf.ProtobufDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.protobuf.ProtobufDecoder"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 133
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.PooledDirectByteBuf:io.netty.buffer.PooledHeapByteBuf:io.netty.buffer.PooledUnsafeDirectByteBuf:io.netty.buffer.ReadOnlyByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf:io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBufUtil].getBytes(io.netty.buffer.ByteBuf,int,int,boolean)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[com.google.protobuf.MessageLite].getParserForType()"
    - "[com.google.protobuf.Parser].parseFrom(byte[],int,int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[com.google.protobuf.MessageLite].newBuilderForType()"
    - "[com.google.protobuf.MessageLite$Builder].mergeFrom(byte[],int,int)"
    - "[com.google.protobuf.MessageLite$Builder].build()"
    - "[com.google.protobuf.Parser].parseFrom(byte[],int,int,com.google.protobuf.ExtensionRegistryLite)"
    - "[com.google.protobuf.MessageLite$Builder].mergeFrom(byte[],int,int,com.google.protobuf.ExtensionRegistryLite)"
    functionUses: 1
    ICount: 45
    EdgeCount: 76
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.protobuf.ProtobufDecoder:109"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufDecoder:113"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufDecoder:112"
        BranchSideFuncs:
        - "readerIndex()"
        - "getBytes(io.netty.buffer.ByteBuf,int,int,boolean)"
    - Branch String: "io.netty.handler.codec.protobuf.ProtobufDecoder:117"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufDecoder:124"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufDecoder:123"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.protobuf.ProtobufDecoder:118"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufDecoder:121"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufDecoder:120"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.protobuf.ProtobufDecoder:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufDecoder:128"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.protobuf.ProtobufDecoder:127"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:108,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:109,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:110,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:111,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:111,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:113,1"
      Dst: "[io.netty.buffer.ByteBufUtil].getBytes(io.netty.buffer.ByteBuf,int,int,boolean)"
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:119,1"
      Dst: "[com.google.protobuf.MessageLite].getParserForType()"
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:119,1"
      Dst: "[com.google.protobuf.Parser].parseFrom(byte[],int,int)"
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:119,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:121,1"
      Dst: "[com.google.protobuf.MessageLite].newBuilderForType()"
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:121,1"
      Dst: "[com.google.protobuf.MessageLite$Builder].mergeFrom(byte[],int,int)"
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:121,1"
      Dst: "[com.google.protobuf.MessageLite$Builder].build()"
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:125,1"
      Dst: "[com.google.protobuf.Parser].parseFrom(byte[],int,int,com.google.protobuf.ExtensionRegistryLite)"
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:128,1"
      Dst: "[com.google.protobuf.MessageLite$Builder].mergeFrom(byte[],int,int,com.google.protobuf.ExtensionRegistryLite)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.protobuf.ProtobufDecoder].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.protobuf.ProtobufDecoder"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.protobuf.ProtobufDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.protobuf.ProtobufDecoder:66,1"
      Dst: "[io.netty.handler.codec.protobuf.ProtobufDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$State].values()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.embedded.EmbeddedChannel$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$State:57,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.embedded.EmbeddedChannel$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$State:57,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$State"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$State:57,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$AbstractUnsafe$4].<init>(io.netty.channel.AbstractChannel$AbstractUnsafe,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.AbstractChannel$AbstractUnsafe$4"
    linkageType: ""
    functionLinenumber: 688
    functionLinenumberEnd: 690
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.AbstractChannel$AbstractUnsafe"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$4:689,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$AbstractUnsafe$4].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.AbstractChannel$AbstractUnsafe$4"
    linkageType: ""
    functionLinenumber: 691
    functionLinenumberEnd: 694
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    functionUses: 1
    ICount: 5
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$4:692,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$AbstractUnsafe$4].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.AbstractChannel$AbstractUnsafe$4"
    linkageType: ""
    functionLinenumber: 688
    functionLinenumberEnd: 690
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$4].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$4:689,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe$4].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].getName()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].name()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultCookie:49,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].name()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].name()"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].getValue()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].value()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultCookie:55,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].value()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].value()"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].getDomain()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].domain()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultCookie:61,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].domain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].domain()"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].getPath()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].path()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultCookie:67,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].path()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].path()"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].getComment()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultCookie].comment()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultCookie:73,1"
      Dst: "[io.netty.handler.codec.http.DefaultCookie].comment()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].comment()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].setComment(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].validateValue(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultCookie:85,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].validateValue(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].validateValue(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.CookieUtil].validateAttributeValue(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:228,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].validateAttributeValue(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].getCommentUrl()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultCookie].commentUrl()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultCookie:91,1"
      Dst: "[io.netty.handler.codec.http.DefaultCookie].commentUrl()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].commentUrl()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].setCommentUrl(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].validateValue(java.lang.String,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultCookie:103,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].validateValue(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].isDiscard()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].setDiscard(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].getPorts()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultCookie].ports()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultCookie:121,1"
      Dst: "[io.netty.handler.codec.http.DefaultCookie].ports()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].ports()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].unmodifiableSet(java.util.Set)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultCookie:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultCookie:130"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.DefaultCookie:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultCookie:128,1"
      Dst: "[java.util.Collections].unmodifiableSet(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].setPorts(int[])"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Object].clone()"
    - "[java.util.Collections].emptySet()"
    - "[java.util.TreeSet].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultCookie:139"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultCookie:142"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.DefaultCookie:141"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultCookie:143"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultCookie:149"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.DefaultCookie:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultCookie:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultCookie:145"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.DefaultCookie:144"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultCookie:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultCookie:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultCookie:136,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.DefaultCookie:138,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "io.netty.handler.codec.http.DefaultCookie:140,1"
      Dst: "[java.util.Collections].emptySet()"
    - Src: "io.netty.handler.codec.http.DefaultCookie:142,1"
      Dst: "[java.util.TreeSet].<init>()"
    - Src: "io.netty.handler.codec.http.DefaultCookie:145,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.DefaultCookie:145,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.DefaultCookie:145,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.DefaultCookie:145,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.DefaultCookie:145,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.DefaultCookie:147,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http.DefaultCookie:147,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].setPorts(java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeSet].<init>()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Integer].intValue()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].isEmpty()"
    - "[java.util.Collections].emptySet()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultCookie:158"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultCookie:164"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.DefaultCookie:163"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultCookie:159"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultCookie:160"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.DefaultCookie:159"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultCookie:159"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultCookie:162"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.DefaultCookie:161"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultCookie:164"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultCookie:167"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.DefaultCookie:166"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultCookie:157,1"
      Dst: "[java.util.TreeSet].<init>()"
    - Src: "io.netty.handler.codec.http.DefaultCookie:158,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.codec.http.DefaultCookie:158,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.DefaultCookie:158,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.DefaultCookie:158,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.handler.codec.http.DefaultCookie:160,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.DefaultCookie:160,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.DefaultCookie:160,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.DefaultCookie:160,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.DefaultCookie:160,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.DefaultCookie:162,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http.DefaultCookie:162,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.DefaultCookie:164,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "io.netty.handler.codec.http.DefaultCookie:165,1"
      Dst: "[java.util.Collections].emptySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].getMaxAge()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].maxAge()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultCookie:175,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].maxAge()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].maxAge()"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].getVersion()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultCookie].version()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultCookie:181,1"
      Dst: "[io.netty.handler.codec.http.DefaultCookie].version()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].version()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultCookie].setVersion(int)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].<init>(int,float)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap].<init>(int,float)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:60,1"
      Dst: "[io.netty.util.collection.CharObjectHashMap].<init>(int,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].keyToString(char)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 264
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap].keyToString(char)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:263,1"
      Dst: "[io.netty.util.collection.CharObjectHashMap].keyToString(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].defaultSettings()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http2.Http2Settings"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Settings].<init>()"
    - "[io.netty.handler.codec.http2.Http2Settings].maxHeaderListSize(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:268,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2Settings:268,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].maxHeaderListSize(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Settings"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "char"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Long)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Settings:45,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].put(char,java.lang.Long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandResponseDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandResponseDecoder$State"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.v5.Socks5CommandResponseDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandResponseDecoder$State:39,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandResponseDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandResponseDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.v5.Socks5CommandResponseDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandResponseDecoder$State:39,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5CommandResponseDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5CommandResponseDecoder$State"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5CommandResponseDecoder$State:40,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer$Entry].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer$Entry"
    linkageType: ""
    functionLinenumber: 819
    functionLinenumberEnd: 823
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer$Entry:820,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer$Entry].newInstance(java.lang.Object,int,long,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer$Entry"
    linkageType: ""
    functionLinenumber: 824
    functionLinenumberEnd: 831
    functionDepth: 0
    returnType: "io.netty.channel.ChannelOutboundBuffer$Entry"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "int"
    - "long"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectPool$RecyclerObjectPool].get()"
    - "[io.netty.util.internal.ObjectPool].get()"
    functionUses: 1
    ICount: 14
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer$Entry:825,1"
      Dst: "[io.netty.util.internal.ObjectPool].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer$Entry].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.channel.ChannelOutboundBuffer$1)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer$Entry"
    linkageType: ""
    functionLinenumber: 799
    functionLinenumberEnd: 801
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    - "io.netty.channel.ChannelOutboundBuffer$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer$Entry].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer$Entry:800,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer$Entry].<init>(io.netty.util.internal.ObjectPool$Handle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadExecutorMap].<init>()"
    functionSourceFile: "io.netty.util.internal.ThreadExecutorMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadExecutorMap:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadExecutorMap].currentExecutor()"
    functionSourceFile: "io.netty.util.internal.ThreadExecutorMap"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 5
    returnType: "io.netty.util.concurrent.EventExecutor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].get()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadExecutorMap:37,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadExecutorMap].apply(java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.util.internal.ThreadExecutorMap"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "java.util.concurrent.Executor"
    argCount: 2
    argTypes:
    - "java.util.concurrent.Executor"
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ThreadExecutorMap$1].<init>(java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutor)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadExecutorMap:52,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.ThreadExecutorMap:54,1"
      Dst: "[io.netty.util.internal.ThreadExecutorMap$1].<init>(java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadExecutorMap$1].<init>(java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.util.internal.ThreadExecutorMap$1"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.concurrent.Executor"
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadExecutorMap$1:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadExecutorMap].apply(java.util.concurrent.ThreadFactory,io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.util.internal.ThreadExecutorMap"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionDepth: 1
    returnType: "java.util.concurrent.ThreadFactory"
    argCount: 2
    argTypes:
    - "java.util.concurrent.ThreadFactory"
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ThreadExecutorMap$3].<init>(java.util.concurrent.ThreadFactory,io.netty.util.concurrent.EventExecutor)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadExecutorMap:87,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.ThreadExecutorMap:89,1"
      Dst: "[io.netty.util.internal.ThreadExecutorMap$3].<init>(java.util.concurrent.ThreadFactory,io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec$Decoder].<init>(io.netty.handler.codec.http.HttpClientCodec,int,int,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec$Decoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http.HttpClientCodec"
    - "int"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseDecoder].<init>(int,int,int,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:217,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseDecoder].<init>(int,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec$Decoder].<init>(io.netty.handler.codec.http.HttpClientCodec,int,int,int,boolean,int,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec$Decoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "io.netty.handler.codec.http.HttpClientCodec"
    - "int"
    - "int"
    - "int"
    - "boolean"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseDecoder].<init>(int,int,int,boolean,int,boolean,boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:222,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseDecoder].<init>(int,int,int,boolean,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec$Decoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec$Decoder"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 248
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpClientCodec].access$300(io.netty.handler.codec.http.HttpClientCodec)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.http.HttpObjectDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    - "[io.netty.handler.codec.http.HttpClientCodec].access$200(io.netty.handler.codec.http.HttpClientCodec)"
    - "[io.netty.handler.codec.http.HttpClientCodec$Decoder].decrement(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.buffer.ByteBuf].readBytes(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 26
    EdgeCount: 46
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Decoder:229"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:238"
        BranchSideFuncs:
        - "actualReadableBytes()"
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:237"
        BranchSideFuncs:
        - "decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
        - "access$200(io.netty.handler.codec.http.HttpClientCodec)"
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Decoder:231"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:235"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "readBytes(int)"
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Decoder:240"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:247"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:246"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Decoder:242"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:246"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:229,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].access$300(io.netty.handler.codec.http.HttpClientCodec)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:230,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:236,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(int)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:236,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:238,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:239,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:240,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].access$200(io.netty.handler.codec.http.HttpClientCodec)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:243,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:243,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec$Decoder].decrement(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec$Decoder].decrement(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec$Decoder"
    linkageType: ""
    functionLinenumber: 249
    functionLinenumberEnd: 259
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpClientCodec].access$400(io.netty.handler.codec.http.HttpClientCodec)"
    - "[java.util.concurrent.atomic.AtomicLong].decrementAndGet()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Decoder:250"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:255"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:254"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Decoder:255"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:258"
        BranchSideFuncs:
        - "access$400(io.netty.handler.codec.http.HttpClientCodec)"
        - "decrementAndGet()"
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:257"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:256,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].access$400(io.netty.handler.codec.http.HttpClientCodec)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:256,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].decrementAndGet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec$Decoder].isContentAlwaysEmpty(io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec$Decoder"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 324
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpClientCodec].access$100(io.netty.handler.codec.http.HttpClientCodec)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].codeClass()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    - "[io.netty.handler.codec.http.HttpObjectDecoder].isContentAlwaysEmpty(io.netty.handler.codec.http.HttpMessage)"
    - "[java.lang.String].charAt(int)"
    - "[io.netty.handler.codec.http.HttpMethod].name()"
    - "[io.netty.handler.codec.http.HttpMethod].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpClientCodec].access$500(io.netty.handler.codec.http.HttpClientCodec)"
    - "[io.netty.handler.codec.http.HttpClientCodec].access$302(io.netty.handler.codec.http.HttpClientCodec,boolean)"
    - "[java.util.LinkedList].clear()"
    - "[java.util.AbstractQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].clear()"
    - "[java.util.ArrayDeque].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].clear()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].clear()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].clear()"
    - "[io.netty.util.internal.EmptyPriorityQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].clear()"
    - "[io.netty.util.internal.DefaultPriorityQueue].clear()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].clear()"
    - "[java.util.concurrent.LinkedBlockingQueue].clear()"
    - "[java.util.concurrent.LinkedBlockingDeque].clear()"
    - "[java.util.Queue].poll()"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    - "[java.util.Collection].clear()"
    functionUses: 1
    ICount: 38
    EdgeCount: 49
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Decoder:272"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:279"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Decoder:280"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:323"
        BranchSideFuncs:
        - "name()"
        - "charAt(int)"
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:322"
        BranchSideFuncs:
        - "isContentAlwaysEmpty(io.netty.handler.codec.http.HttpMessage)"
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Decoder:288"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:323"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:322"
        BranchSideFuncs:
        - "isContentAlwaysEmpty(io.netty.handler.codec.http.HttpMessage)"
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Decoder:307"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:323"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:322"
        BranchSideFuncs:
        - "isContentAlwaysEmpty(io.netty.handler.codec.http.HttpMessage)"
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Decoder:308"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:322"
        BranchSideFuncs:
        - "isContentAlwaysEmpty(io.netty.handler.codec.http.HttpMessage)"
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Decoder:311"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:315"
        BranchSideFuncs:
        - "access$100(io.netty.handler.codec.http.HttpClientCodec)"
        - "access$302(io.netty.handler.codec.http.HttpClientCodec,boolean)"
        - "clear()"
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:314"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:267,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].access$100(io.netty.handler.codec.http.HttpClientCodec)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:267,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:269,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:270,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].codeClass()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:271,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:275,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectDecoder].isContentAlwaysEmpty(io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:281,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].name()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:281,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:288,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:311,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].access$500(io.netty.handler.codec.http.HttpClientCodec)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:312,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].access$302(io.netty.handler.codec.http.HttpClientCodec,boolean)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:313,1"
      Dst: "[java.util.Collection].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec$Decoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec$Decoder"
    linkageType: ""
    functionLinenumber: 328
    functionLinenumberEnd: 340
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.HttpClientCodec].access$200(io.netty.handler.codec.http.HttpClientCodec)"
    - "[io.netty.handler.codec.http.HttpClientCodec].access$400(io.netty.handler.codec.http.HttpClientCodec)"
    - "[java.util.concurrent.atomic.AtomicLong].get()"
    - "[io.netty.handler.codec.PrematureChannelClosureException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 3
    ICount: 22
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Decoder:331"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:339"
        BranchSideFuncs:
        - "access$400(io.netty.handler.codec.http.HttpClientCodec)"
        - "get()"
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:338"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Decoder:333"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:339"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "toString()"
        - "append(long)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Decoder:338"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:329,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:331,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].access$200(io.netty.handler.codec.http.HttpClientCodec)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:332,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].access$400(io.netty.handler.codec.http.HttpClientCodec)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:332,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].get()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:334,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:334,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:334,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:334,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:334,1"
      Dst: "[io.netty.handler.codec.PrematureChannelClosureException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Decoder:334,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.ByteBufUtil$1].<init>()"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$1"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$1:60,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$1].initialValue()"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$1"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 2
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$1:63,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec$1"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].access$000(io.netty.handler.codec.spdy.SpdyFrameCodec)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].end()"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].end()"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec:io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].access$100(io.netty.handler.codec.spdy.SpdyFrameCodec)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder].end()"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockDecoder].end()"
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec].access$100(io.netty.handler.codec.spdy.SpdyFrameCodec)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockEncoder].end()"
    functionUses: 1
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec$1:115,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameCodec].access$000(io.netty.handler.codec.spdy.SpdyFrameCodec)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec$1:115,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockDecoder].end()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec$1:116,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameCodec].access$100(io.netty.handler.codec.spdy.SpdyFrameCodec)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec$1:116,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockEncoder].end()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameCodec$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameCodec$1"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyFrameCodec$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameCodec$1:112,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyFrameCodec$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Signal$1].<init>()"
    functionSourceFile: "io.netty.util.Signal$1"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ConstantPool].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Signal$1:27,1"
      Dst: "[io.netty.util.ConstantPool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Signal$1].newConstant(int,java.lang.String)"
    functionSourceFile: "io.netty.util.Signal$1"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 3
    returnType: "io.netty.util.Signal"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.Signal].<init>(int,java.lang.String,io.netty.util.Signal$1)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Signal$1:30,1"
      Dst: "[io.netty.util.Signal].<init>(int,java.lang.String,io.netty.util.Signal$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Signal].<init>(int,java.lang.String,io.netty.util.Signal$1)"
    functionSourceFile: "io.netty.util.Signal"
    linkageType: ""
    functionLinenumber: 22
    functionLinenumberEnd: 24
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.String"
    - "io.netty.util.Signal$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.Signal].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Signal:23,1"
      Dst: "[io.netty.util.Signal].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Signal].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.util.Signal"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Error].<init>()"
    - "[io.netty.util.Signal$SignalConstant].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Signal:53,1"
      Dst: "[java.lang.Error].<init>()"
    - Src: "io.netty.util.Signal:54,1"
      Dst: "[io.netty.util.Signal$SignalConstant].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$10$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$10$2"
    linkageType: ""
    functionLinenumber: 2226
    functionLinenumberEnd: 2232
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cancel(boolean)"
    - "[io.netty.util.concurrent.CompleteFuture].cancel(boolean)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cancel(boolean)"
    - "[io.netty.channel.VoidChannelPromise].cancel(boolean)"
    - "[io.netty.handler.ssl.SslHandler].access$2500(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.util.concurrent.Future].cancel(boolean)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 16
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler$10$2:2227"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$10$2:2230"
        BranchSideFuncs:
        - "cancel(boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler$10$2:2229"
        BranchSideFuncs:
        - "access$2500(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
        - "newPromise()"
        - "close(io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$10$2:2228,1"
      Dst: "[io.netty.util.concurrent.Future].cancel(boolean)"
    - Src: "io.netty.handler.ssl.SslHandler$10$2:2230,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.ssl.SslHandler$10$2:2230,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler$10$2:2230,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$2500(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyFrameEncoder].<init>(io.netty.handler.codec.spdy.SpdyVersion)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyFrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.spdy.SpdyVersion].getVersion()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:37,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:38,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyFrameEncoder:38,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyVersion].getVersion()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$7"
    linkageType: ""
    functionLinenumber: 1136
    functionLinenumberEnd: 1140
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].access$500(io.netty.resolver.dns.DnsNameResolver,java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
    functionUses: 50
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$7:1137,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].access$500(io.netty.resolver.dns.DnsNameResolver,java.lang.String,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise,io.netty.util.concurrent.Promise,io.netty.resolver.dns.DnsCache,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtMessageAcceptorChannel].<init>()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtMessageAcceptorChannel"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].<init>(com.barchart.udt.TypeUDT)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtMessageAcceptorChannel:31,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].<init>(com.barchart.udt.TypeUDT)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtMessageAcceptorChannel].newConnectorChannel(com.barchart.udt.nio.SocketChannelUDT)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtMessageAcceptorChannel"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 7
    returnType: "io.netty.channel.udt.UdtChannel"
    argCount: 1
    argTypes:
    - "com.barchart.udt.nio.SocketChannelUDT"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].<init>(io.netty.channel.Channel,com.barchart.udt.nio.SocketChannelUDT)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtMessageAcceptorChannel:36,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].<init>(io.netty.channel.Channel,com.barchart.udt.nio.SocketChannelUDT)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].<init>(io.netty.channel.Channel,com.barchart.udt.nio.SocketChannelUDT)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 87
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "com.barchart.udt.nio.SocketChannelUDT"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioMessageChannel].<init>(io.netty.channel.Channel,java.nio.channels.SelectableChannel,int)"
    - "[com.barchart.udt.nio.SocketChannelUDT].configureBlocking(boolean)"
    - "[com.barchart.udt.StatusUDT].ordinal()"
    - "[com.barchart.udt.nio.SocketChannelUDT].socketUDT()"
    - "[com.barchart.udt.SocketUDT].status()"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].<init>(io.netty.channel.udt.UdtChannel,com.barchart.udt.nio.ChannelUDT,boolean)"
    - "[com.barchart.udt.nio.SocketChannelUDT:io.netty.util.internal.logging.CommonsLogger:io.netty.util.internal.logging.Slf4JLogger].close()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    - "[com.barchart.udt.nio.SocketChannelUDT].close()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 32
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel:66,1"
      Dst: "[io.netty.channel.nio.AbstractNioMessageChannel].<init>(io.netty.channel.Channel,java.nio.channels.SelectableChannel,int)"
    - Src: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel:68,1"
      Dst: "[com.barchart.udt.nio.SocketChannelUDT].configureBlocking(boolean)"
    - Src: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel:69,1"
      Dst: "[com.barchart.udt.nio.SocketChannelUDT].socketUDT()"
    - Src: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel:69,1"
      Dst: "[com.barchart.udt.SocketUDT].status()"
    - Src: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel:69,1"
      Dst: "[com.barchart.udt.StatusUDT].ordinal()"
    - Src: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel:72,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].<init>(io.netty.channel.udt.UdtChannel,com.barchart.udt.nio.ChannelUDT,boolean)"
    - Src: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel:80,1"
      Dst: "[com.barchart.udt.nio.SocketChannelUDT].close()"
    - Src: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel:82,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel:84,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.FailedChannel].<init>()"
    functionSourceFile: "io.netty.bootstrap.FailedChannel"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    - "[io.netty.channel.AbstractChannel].<init>(io.netty.channel.Channel)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.FailedChannel:33,1"
      Dst: "[io.netty.channel.AbstractChannel].<init>(io.netty.channel.Channel)"
    - Src: "io.netty.bootstrap.FailedChannel:30,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.FailedChannel].newUnsafe()"
    functionSourceFile: "io.netty.bootstrap.FailedChannel"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 2
    returnType: "io.netty.channel.AbstractChannel$AbstractUnsafe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.FailedChannel$FailedChannelUnsafe].<init>(io.netty.bootstrap.FailedChannel,io.netty.bootstrap.FailedChannel$1)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.FailedChannel:38,1"
      Dst: "[io.netty.bootstrap.FailedChannel$FailedChannelUnsafe].<init>(io.netty.bootstrap.FailedChannel,io.netty.bootstrap.FailedChannel$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.FailedChannel].isCompatible(io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.bootstrap.FailedChannel"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.FailedChannel].localAddress0()"
    functionSourceFile: "io.netty.bootstrap.FailedChannel"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.FailedChannel].remoteAddress0()"
    functionSourceFile: "io.netty.bootstrap.FailedChannel"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.FailedChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.bootstrap.FailedChannel"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.FailedChannel:58,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.FailedChannel].doDisconnect()"
    functionSourceFile: "io.netty.bootstrap.FailedChannel"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.FailedChannel:63,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.FailedChannel].doClose()"
    functionSourceFile: "io.netty.bootstrap.FailedChannel"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.FailedChannel:68,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.FailedChannel].doBeginRead()"
    functionSourceFile: "io.netty.bootstrap.FailedChannel"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.FailedChannel:73,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.FailedChannel].doWrite(io.netty.channel.ChannelOutboundBuffer)"
    functionSourceFile: "io.netty.bootstrap.FailedChannel"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.FailedChannel:78,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.FailedChannel].config()"
    functionSourceFile: "io.netty.bootstrap.FailedChannel"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "io.netty.channel.ChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 51
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.FailedChannel].isOpen()"
    functionSourceFile: "io.netty.bootstrap.FailedChannel"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.FailedChannel].isActive()"
    functionSourceFile: "io.netty.bootstrap.FailedChannel"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 32
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.FailedChannel].metadata()"
    functionSourceFile: "io.netty.bootstrap.FailedChannel"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "io.netty.channel.ChannelMetadata"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider$1:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider$1].encoderFilter()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider$1"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider$1].decoderFilter()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider$1"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper].<init>(long,long)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper:166,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper].wrapIfNeeded(javax.net.ssl.X509TrustManager)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "javax.net.ssl.X509TrustManager"
    argCount: 1
    argTypes:
    - "javax.net.ssl.X509TrustManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper].access$000()"
    - "[javax.net.ssl.SSLContext].init(javax.net.ssl.KeyManager[],javax.net.ssl.TrustManager[],java.security.SecureRandom)"
    - "[io.netty.util.internal.PlatformDependent].getObject(java.lang.Object,long)"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper:174"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper:198"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper:179"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper:197"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper:196"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper:197"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper:196"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper:176,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper].access$000()"
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper:177,1"
      Dst: "[javax.net.ssl.SSLContext].init(javax.net.ssl.KeyManager[],javax.net.ssl.TrustManager[],java.security.SecureRandom)"
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper:178,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getObject(java.lang.Object,long)"
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper:188,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent].getObject(java.lang.Object,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 538
    functionLinenumberEnd: 540
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getObject(java.lang.Object,long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:539,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getObject(java.lang.Object,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SimpleKeyManagerFactory$1].<init>(java.lang.String,double,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "double"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Provider].<init>(java.lang.String,double,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SimpleKeyManagerFactory$1:40,1"
      Dst: "[java.security.Provider].<init>(java.lang.String,double,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.ProxyHandler$LazyChannelPromise].<init>(io.netty.handler.proxy.ProxyHandler)"
    functionSourceFile: "io.netty.handler.proxy.ProxyHandler$LazyChannelPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.proxy.ProxyHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.ProxyHandler$LazyChannelPromise:447,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.ProxyHandler$LazyChannelPromise].executor()"
    functionSourceFile: "io.netty.handler.proxy.ProxyHandler$LazyChannelPromise"
    linkageType: ""
    functionLinenumber: 449
    functionLinenumberEnd: 454
    functionDepth: 0
    returnType: "io.netty.util.concurrent.EventExecutor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.proxy.ProxyHandler].access$300(io.netty.handler.proxy.ProxyHandler)"
    - "[java.lang.IllegalStateException].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    functionUses: 3
    ICount: 11
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.proxy.ProxyHandler$LazyChannelPromise:450"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.ProxyHandler$LazyChannelPromise:453"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.proxy.ProxyHandler$LazyChannelPromise:452"
        BranchSideFuncs:
        - "access$300(io.netty.handler.proxy.ProxyHandler)"
        - "executor()"
    Callsites:
    - Src: "io.netty.handler.proxy.ProxyHandler$LazyChannelPromise:450,1"
      Dst: "[io.netty.handler.proxy.ProxyHandler].access$300(io.netty.handler.proxy.ProxyHandler)"
    - Src: "io.netty.handler.proxy.ProxyHandler$LazyChannelPromise:451,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "io.netty.handler.proxy.ProxyHandler$LazyChannelPromise:453,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.ProxyHandler$LazyChannelPromise].<init>(io.netty.handler.proxy.ProxyHandler,io.netty.handler.proxy.ProxyHandler$1)"
    functionSourceFile: "io.netty.handler.proxy.ProxyHandler$LazyChannelPromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.proxy.ProxyHandler"
    - "io.netty.handler.proxy.ProxyHandler$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.proxy.ProxyHandler$LazyChannelPromise].<init>(io.netty.handler.proxy.ProxyHandler)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.ProxyHandler$LazyChannelPromise:447,1"
      Dst: "[io.netty.handler.proxy.ProxyHandler$LazyChannelPromise].<init>(io.netty.handler.proxy.ProxyHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisArrayAggregator].<init>()"
    functionSourceFile: "io.netty.handler.codec.redis.RedisArrayAggregator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    - "[java.util.ArrayDeque].<init>(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:34,1"
      Dst: "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:36,1"
      Dst: "[java.util.ArrayDeque].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisArrayAggregator].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.redis.RedisMessage,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisArrayAggregator"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 65
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.redis.RedisMessage"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.RedisArrayAggregator].decodeRedisArrayHeader(io.netty.handler.codec.redis.ArrayHeaderRedisMessage)"
    - "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.LinkedList].peek()"
    - "[io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState].access$000(io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState].access$100(io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].<init>(java.util.List)"
    - "[java.util.LinkedList].pop()"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Deque].peek()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].size()"
    - "[java.util.Deque].pop()"
    functionUses: 1
    ICount: 35
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.RedisArrayAggregator:40"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisArrayAggregator:46"
        BranchSideFuncs:
        - "decodeRedisArrayHeader(io.netty.handler.codec.redis.ArrayHeaderRedisMessage)"
      - BranchSide: "io.netty.handler.codec.redis.RedisArrayAggregator:45"
        BranchSideFuncs:
        - "retain(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.redis.RedisArrayAggregator:42"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisArrayAggregator:49"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.redis.RedisArrayAggregator:48"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.codec.redis.RedisArrayAggregator:49"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisArrayAggregator:63"
        BranchSideFuncs:
        - "peek()"
        - "access$100(io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.redis.RedisArrayAggregator:62"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.redis.RedisArrayAggregator:54"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisArrayAggregator:59"
        BranchSideFuncs:
        - "access$000(io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState)"
        - "pop()"
        - "<init>(java.util.List)"
      - BranchSide: "io.netty.handler.codec.redis.RedisArrayAggregator:58"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:41,1"
      Dst: "[io.netty.handler.codec.redis.RedisArrayAggregator].decodeRedisArrayHeader(io.netty.handler.codec.redis.ArrayHeaderRedisMessage)"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:46,1"
      Dst: "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:49,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:50,1"
      Dst: "[java.util.Deque].peek()"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:51,1"
      Dst: "[io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState].access$000(io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState)"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:51,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:54,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:54,1"
      Dst: "[io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState].access$100(io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState)"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:55,1"
      Dst: "[io.netty.handler.codec.redis.ArrayRedisMessage].<init>(java.util.List)"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:56,1"
      Dst: "[java.util.Deque].pop()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.redis.RedisArrayAggregator].decodeRedisArrayHeader(io.netty.handler.codec.redis.ArrayHeaderRedisMessage)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisArrayAggregator"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 82
    functionDepth: 1
    returnType: "io.netty.handler.codec.redis.RedisMessage"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.redis.ArrayHeaderRedisMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].isNull()"
    - "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].length()"
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState].<init>(int)"
    - "[java.util.concurrent.LinkedBlockingDeque].push(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Deque].push(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 38
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.RedisArrayAggregator:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisArrayAggregator:69"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.redis.RedisArrayAggregator:68"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.redis.RedisArrayAggregator:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisArrayAggregator:71"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.redis.RedisArrayAggregator:70"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.redis.RedisArrayAggregator:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisArrayAggregator:80"
        BranchSideFuncs:
        - "<init>()"
        - "toString()"
        - "append(long)"
        - "<init>(java.lang.String)"
        - "length()"
    - Branch String: "io.netty.handler.codec.redis.RedisArrayAggregator:73"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisArrayAggregator:78"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.redis.RedisArrayAggregator:77"
        BranchSideFuncs:
        - "<init>(int)"
        - "push(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:67,1"
      Dst: "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].isNull()"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:69,1"
      Dst: "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].length()"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:74,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:78,1"
      Dst: "[io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState].<init>(int)"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:78,1"
      Dst: "[java.util.Deque].push(java.lang.Object)"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:81,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:81,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:81,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:81,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState:88,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState:90,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState].access$000(io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState].access$100(io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.redis.RedisArrayAggregator$AggregateState"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisArrayAggregator].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisArrayAggregator"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.RedisArrayAggregator].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.redis.RedisMessage,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisArrayAggregator:33,1"
      Dst: "[io.netty.handler.codec.redis.RedisArrayAggregator].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.redis.RedisMessage,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 45
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean,java.util.function.BiConsumer,java.util.function.BiConsumer)"
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine$2].<init>()"
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine$1].<init>()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine:31,1"
      Dst: "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine$1].<init>()"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine:31,1"
      Dst: "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine$2].<init>()"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine:31,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean,java.util.function.BiConsumer,java.util.function.BiConsumer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine].getApplicationProtocol()"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].getApplicationProtocol(javax.net.ssl.SSLEngine)"
    - "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine:47,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine:47,1"
      Dst: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].getApplicationProtocol(javax.net.ssl.SSLEngine)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine].getHandshakeApplicationProtocol()"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].getHandshakeApplicationProtocol(javax.net.ssl.SSLEngine)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine:51,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine:51,1"
      Dst: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].getHandshakeApplicationProtocol(javax.net.ssl.SSLEngine)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine].setHandshakeApplicationProtocolSelector(java.util.function.BiFunction<SSLEngine,List<String>,String>)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.function.BiFunction<SSLEngine,List<String>,String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].setHandshakeApplicationProtocolSelector(javax.net.ssl.SSLEngine,java.util.function.BiFunction)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine:55,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine:55,1"
      Dst: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].setHandshakeApplicationProtocolSelector(javax.net.ssl.SSLEngine,java.util.function.BiFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine].getHandshakeApplicationProtocolSelector()"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.function.BiFunction"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].getHandshakeApplicationProtocolSelector(javax.net.ssl.SSLEngine)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine:59,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine:59,1"
      Dst: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].getHandshakeApplicationProtocolSelector(javax.net.ssl.SSLEngine)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SystemPropertyUtil$1].run()"
    functionSourceFile: "io.netty.util.internal.SystemPropertyUtil$1"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getProperty(java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SystemPropertyUtil$1:71,1"
      Dst: "[java.lang.System].getProperty(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].<init>()"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:75,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoopGroup].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].<init>(int)"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.lang.Object[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:88,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.lang.Object[])"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.util.concurrent.ThreadFactory"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.ThreadPerTaskExecutor].<init>(java.util.concurrent.ThreadFactory)"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].<init>(int,java.util.concurrent.Executor,java.lang.Object[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:104"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:104"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:104,1"
      Dst: "[io.netty.util.concurrent.ThreadPerTaskExecutor].<init>(java.util.concurrent.ThreadFactory)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:104,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoopGroup].<init>(int,java.util.concurrent.Executor,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].<init>(int,java.util.concurrent.Executor,java.lang.Object[])"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.util.concurrent.Executor"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.AbstractEventExecutorGroup].<init>()"
    - "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - "[java.util.Collections].newSetFromMap(java.util.Map)"
    - "[java.util.concurrent.ConcurrentLinkedQueue].<init>()"
    - "[io.netty.util.concurrent.DefaultPromise].<init>(io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup$1].<init>(io.netty.channel.ThreadPerChannelEventLoopGroup)"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class)"
    - "[io.netty.util.concurrent.ThreadPerTaskExecutor].<init>(java.util.concurrent.ThreadFactory)"
    - "[java.lang.Object].clone()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.ChannelException].newStatic(java.lang.String,java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:121"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:125"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:124"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:125"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:128"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:119,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutorGroup].<init>()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:55,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:55,1"
      Dst: "[java.util.Collections].newSetFromMap(java.util.Map)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:56,1"
      Dst: "[java.util.concurrent.ConcurrentLinkedQueue].<init>()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:60,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].<init>(io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:61,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoopGroup$1].<init>(io.netty.channel.ThreadPerChannelEventLoopGroup)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:120,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:122,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:122,1"
      Dst: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:122,1"
      Dst: "[io.netty.util.concurrent.ThreadPerTaskExecutor].<init>(java.util.concurrent.ThreadFactory)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:128,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:134,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:134,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:134,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:134,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:134,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:135,1"
      Dst: "[io.netty.channel.ChannelException].newStatic(java.lang.String,java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].newChild(java.lang.Object[])"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionDepth: 1
    returnType: "io.netty.channel.EventLoop"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ThreadPerChannelEventLoop].<init>(io.netty.channel.ThreadPerChannelEventLoopGroup)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:143,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoop].<init>(io.netty.channel.ThreadPerChannelEventLoopGroup)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoop].<init>(io.netty.channel.ThreadPerChannelEventLoopGroup)"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoop"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ThreadPerChannelEventLoopGroup"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.SingleThreadEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor,boolean)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoop:31,1"
      Dst: "[io.netty.channel.SingleThreadEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].iterator()"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 2
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ReadOnlyIterator].<init>(java.util.Iterator)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[java.util.Set].iterator()"
    functionUses: 25
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:148,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:148,1"
      Dst: "[io.netty.util.internal.ReadOnlyIterator].<init>(java.util.Iterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ReadOnlyIterator].<init>(java.util.Iterator)"
    functionSourceFile: "io.netty.util.internal.ReadOnlyIterator"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 27
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ReadOnlyIterator:24,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.internal.ReadOnlyIterator:25,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].next()"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "io.netty.channel.EventLoop"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:153,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].shutdownGracefully(long,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future<?>"
    argCount: 3
    argTypes:
    - "long"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.util.concurrent.EventExecutorGroup].shutdownGracefully(long,long,java.util.concurrent.TimeUnit)"
    - "[java.util.Collection].iterator()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].isTerminated()"
    - "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].terminationFuture()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:160"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:163"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:162"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:163"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:168"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:167"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:168"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:172"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:171"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:160,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:160,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:160,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:161,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].shutdownGracefully(long,long,java.util.concurrent.TimeUnit)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:163,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:168,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoopGroup].isTerminated()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:169,1"
      Dst: "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:172,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoopGroup].terminationFuture()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].isTerminated()"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: 229
    functionLinenumberEnd: 241
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].isTerminated()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].isTerminated()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.concurrent.ExecutorService].isTerminated()"
    - "[java.util.Collection].iterator()"
    functionUses: 1
    ICount: 22
    EdgeCount: 268
    BranchProfiles:
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:230"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:235"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:234"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:231"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:234"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:233"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:235"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:240"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "isTerminated()"
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:239"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:236"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:239"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:238"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:230,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:230,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:230,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:231,1"
      Dst: "[java.util.concurrent.ExecutorService].isTerminated()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:235,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].terminationFuture()"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].shutdown()"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.util.concurrent.EventExecutorGroup].shutdown()"
    - "[java.util.Collection].iterator()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].isTerminated()"
    - "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:185"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:188"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:187"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:188"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:193"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:192"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:193"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:196"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:195"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:185,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:185,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:185,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:186,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].shutdown()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:188,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:193,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoopGroup].isTerminated()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:194,1"
      Dst: "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].isShuttingDown()"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.util.concurrent.EventExecutorGroup].isShuttingDown()"
    - "[java.util.Collection].iterator()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:200"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:205"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:204"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:201"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:205"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:210"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:209"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:206"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:209"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:208"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:200,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:200,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:200,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:201,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].isShuttingDown()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:205,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].isShutdown()"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.concurrent.ExecutorService].isShutdown()"
    - "[java.util.Collection].iterator()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:215"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:220"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:219"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:216"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:219"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:218"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:220"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:225"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:224"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:221"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:224"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:223"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:215,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:215,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:215,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:216,1"
      Dst: "[java.util.concurrent.ExecutorService].isShutdown()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:220,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].awaitTermination(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].nanoTime()"
    - "[java.util.concurrent.TimeUnit].toNanos(long)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].isTerminated()"
    - "[java.util.concurrent.ExecutorService].awaitTermination(long,java.util.concurrent.TimeUnit)"
    - "[java.util.Collection].iterator()"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:247"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:257"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:250"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:253"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:252"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:253"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:256"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:255"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:258"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:268"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:261"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:264"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:263"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:264"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:267"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:266"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:246,1"
      Dst: "[java.lang.System].nanoTime()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:246,1"
      Dst: "[java.util.concurrent.TimeUnit].toNanos(long)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:247,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:247,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:247,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:251,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoopGroup].isTerminated()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:253,1"
      Dst: "[java.util.concurrent.ExecutorService].awaitTermination(long,java.util.concurrent.TimeUnit)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:258,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].register(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: 273
    functionLinenumberEnd: 280
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].nextChild()"
    - "[io.netty.channel.DefaultChannelPromise].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.channel.ThreadPerChannelEventLoop].register(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.SingleThreadEventLoop].register(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].register(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.FailedChannelFuture].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor,java.lang.Throwable)"
    - "[io.netty.channel.EventLoopGroup].register(io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 13
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:274,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:276,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoopGroup].nextChild()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:277,1"
      Dst: "[io.netty.channel.DefaultChannelPromise].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:277,1"
      Dst: "[io.netty.channel.EventLoopGroup].register(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:279,1"
      Dst: "[io.netty.channel.FailedChannelFuture].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].nextChild()"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: 305
    functionLinenumberEnd: 320
    functionDepth: 2
    returnType: "io.netty.channel.EventLoop"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.RejectedExecutionException].<init>(java.lang.String)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.channel.group.DefaultChannelGroup].size()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].size()"
    - "[io.netty.util.internal.ConcurrentSet].size()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].size()"
    - "[java.util.HashSet].size()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].size()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].size()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].size()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].size()"
    - "[java.util.TreeSet].size()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].size()"
    - "[java.util.TreeMap$EntrySet].size()"
    - "[java.util.TreeMap$KeySet].size()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].newChild(java.lang.Object[])"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.CompleteFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].terminationFuture()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].terminationFuture()"
    - "[io.netty.util.internal.ConcurrentSet].add(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].add(java.lang.Object)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].add(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].add(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].add(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.util.TreeSet].add(java.lang.Object)"
    - "[java.util.Queue].poll()"
    - "[java.util.Set].size()"
    - "[io.netty.util.concurrent.EventExecutorGroup].terminationFuture()"
    - "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 1
    ICount: 27
    EdgeCount: 63
    BranchProfiles:
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:306"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:310"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:309"
        BranchSideFuncs:
        - "poll()"
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:311"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:318"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:317"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:312"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:315"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:314"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "newChild(java.lang.Object[])"
        - "terminationFuture()"
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup:312"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:315"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup:314"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "newChild(java.lang.Object[])"
        - "terminationFuture()"
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:307,1"
      Dst: "[java.util.concurrent.RejectedExecutionException].<init>(java.lang.String)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:310,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:312,1"
      Dst: "[java.util.Set].size()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:315,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoopGroup].newChild(java.lang.Object[])"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:316,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].terminationFuture()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:316,1"
      Dst: "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:318,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].register(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].nextChild()"
    - "[io.netty.channel.EventLoopGroup].register(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:286,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoopGroup].nextChild()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:286,1"
      Dst: "[io.netty.channel.EventLoopGroup].register(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:288,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].register(io.netty.channel.Channel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].nextChild()"
    - "[io.netty.channel.EventLoopGroup].register(io.netty.channel.Channel,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:296,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:298,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoopGroup].nextChild()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:298,1"
      Dst: "[io.netty.channel.EventLoopGroup].register(io.netty.channel.Channel,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup:300,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup].access$000(io.netty.channel.ThreadPerChannelEventLoopGroup)"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 1
    argTypes:
    - "io.netty.channel.ThreadPerChannelEventLoopGroup"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$2].<init>()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$2:73,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$2].checkClientTrusted(java.security.cert.X509Certificate[],java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.cert.X509Certificate[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.CertificateException].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$2:77,1"
      Dst: "[java.security.cert.CertificateException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$2].checkServerTrusted(java.security.cert.X509Certificate[],java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.cert.X509Certificate[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.cert.CertificateException].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$2:83,1"
      Dst: "[java.security.cert.CertificateException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$2].getAcceptedIssuers()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.cert.X509Certificate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufOutputStream].writtenBytes()"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufOutputStream:58,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufOutputStream].write(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    functionUses: 7
    ICount: 9
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufOutputStream:63"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufOutputStream:67"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufOutputStream:66"
        BranchSideFuncs:
        - "writeBytes(byte[],int,int)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufOutputStream:67,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufOutputStream].write(int)"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufOutputStream:77,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufOutputStream].writeBoolean(boolean)"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writeBoolean(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufOutputStream:82,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBoolean(boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufOutputStream].writeByte(int)"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufOutputStream:87,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufOutputStream].writeBytes(java.lang.String)"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufOutputStream:92,1"
      Dst: "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufOutputStream].writeChar(int)"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writeChar(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufOutputStream:97,1"
      Dst: "[io.netty.buffer.ByteBuf].writeChar(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufOutputStream].writeChars(java.lang.String)"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[io.netty.buffer.ByteBuf].writeChar(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufOutputStream:103"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufOutputStream:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufOutputStream:102,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.buffer.ByteBufOutputStream:104,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.buffer.ByteBufOutputStream:104,1"
      Dst: "[io.netty.buffer.ByteBuf].writeChar(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufOutputStream].writeDouble(double)"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writeDouble(double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufOutputStream:110,1"
      Dst: "[io.netty.buffer.ByteBuf].writeDouble(double)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufOutputStream].writeFloat(float)"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writeFloat(float)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufOutputStream:115,1"
      Dst: "[io.netty.buffer.ByteBuf].writeFloat(float)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufOutputStream].writeInt(int)"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufOutputStream:120,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufOutputStream].writeLong(long)"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].writeLong(long)"
    - "[io.netty.buffer.SwappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.CompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeLong(long)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeLong(long)"
    - "[io.netty.buffer.AbstractByteBuf].writeLong(long)"
    - "[io.netty.buffer.WrappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.ByteBuf].writeLong(long)"
    functionUses: 1
    ICount: 5
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufOutputStream:125,1"
      Dst: "[io.netty.buffer.ByteBuf].writeLong(long)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufOutputStream].writeShort(int)"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufOutputStream:130,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufOutputStream].writeUTF(java.lang.String)"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.io.DataOutputStream].<init>(java.io.OutputStream)"
    - "[java.io.DataOutputStream].writeUTF(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufOutputStream:136"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufOutputStream:143"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufOutputStream:142"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufOutputStream:137"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufOutputStream:141"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufOutputStream:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufOutputStream:138,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.ByteBufOutputStream:141,1"
      Dst: "[java.io.DataOutputStream].<init>(java.io.OutputStream)"
    - Src: "io.netty.buffer.ByteBufOutputStream:143,1"
      Dst: "[java.io.DataOutputStream].writeUTF(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufOutputStream].buffer()"
    functionSourceFile: "io.netty.buffer.ByteBufOutputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameCodec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener:496,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].onStreamAdded(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener"
    linkageType: ""
    functionLinenumber: 498
    functionLinenumberEnd: 505
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec].access$600(io.netty.handler.codec.http2.Http2FrameCodec)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.util.collection.IntObjectHashMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].remove(int)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].setStreamAndProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.util.collection.IntObjectMap].remove(int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener:501"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener:504"
        BranchSideFuncs:
        - "setStreamAndProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,io.netty.handler.codec.http2.Http2Stream)"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener:503"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener:499,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].access$600(io.netty.handler.codec.http2.Http2FrameCodec)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener:499,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener:499,1"
      Dst: "[io.netty.util.collection.IntObjectMap].remove(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener:502,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].setStreamAndProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,io.netty.handler.codec.http2.Http2Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec].access$600(io.netty.handler.codec.http2.Http2FrameCodec)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "io.netty.util.collection.IntObjectMap"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameCodec"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].onStreamActive(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener"
    linkageType: ""
    functionLinenumber: 507
    functionLinenumberEnd: 510
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec].access$700(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener:508,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].access$700(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.handler.codec.http2.Http2Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec].access$700(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameCodec"
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onStreamActive0(io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:148,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].onStreamActive0(io.netty.handler.codec.http2.Http2Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec].onStreamActive0(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec"
    linkageType: ""
    functionLinenumber: 486
    functionLinenumberEnd: 495
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isValidStreamId(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].newStream()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].setStreamAndProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2StreamStateChanged(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2StreamStateChanged(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream)"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.handler.codec.http2.Http2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].isValidStreamId(int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameCodec:487"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec:492"
        BranchSideFuncs:
        - "local()"
        - "isValidStreamId(int)"
        - "id()"
        - "connection()"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec:491"
        BranchSideFuncs:
        - "newStream()"
        - "setStreamAndProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,io.netty.handler.codec.http2.Http2Stream)"
        - "onHttp2StreamStateChanged(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream)"
    - Branch String: "io.netty.handler.codec.http2.Http2FrameCodec:488"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec:492"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec:491"
        BranchSideFuncs:
        - "newStream()"
        - "setStreamAndProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,io.netty.handler.codec.http2.Http2Stream)"
        - "onHttp2StreamStateChanged(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:487,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:488,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:488,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].local()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:488,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].isValidStreamId(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:492,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].newStream()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:492,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].setStreamAndProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:493,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2StreamStateChanged(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2StreamStateChanged(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec"
    linkageType: ""
    functionLinenumber: 702
    functionLinenumberEnd: 705
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:703,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].onStreamClosed(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener"
    linkageType: ""
    functionLinenumber: 512
    functionLinenumberEnd: 515
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].onHttp2StreamStateChanged0(io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener:513,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].onHttp2StreamStateChanged0(io.netty.handler.codec.http2.Http2Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].onHttp2StreamStateChanged0(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener"
    linkageType: ""
    functionLinenumber: 521
    functionLinenumberEnd: 527
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttp2StreamStateChanged(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2StreamStateChanged(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream)"
    - "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionUses: 2
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener:523"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener:526"
        BranchSideFuncs:
        - "onHttp2StreamStateChanged(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream)"
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener:525"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener:522,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener:524,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2StreamStateChanged(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].onStreamHalfClosed(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener"
    linkageType: ""
    functionLinenumber: 517
    functionLinenumberEnd: 520
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].onHttp2StreamStateChanged0(io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener:518,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].onHttp2StreamStateChanged0(io.netty.handler.codec.http2.Http2Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.handler.codec.http2.Http2FrameCodec$1)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameCodec"
    - "io.netty.handler.codec.http2.Http2FrameCodec$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener:496,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.UnsupportedMessageTypeException].<init>()"
    functionSourceFile: "io.netty.handler.codec.UnsupportedMessageTypeException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.UnsupportedMessageTypeException:31,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.UnsupportedMessageTypeException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.UnsupportedMessageTypeException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.UnsupportedMessageTypeException:34,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.UnsupportedMessageTypeException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.UnsupportedMessageTypeException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.UnsupportedMessageTypeException:42,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler].<init>(io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandshaker[])"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandshaker[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.lang.Object[],java.lang.String)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:54,1"
      Dst: "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:55,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.lang.Object[],java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:55,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 76
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].isWebsocketUpgrade(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpHeaders].getAsString(java.lang.CharSequence)"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.DefaultHttpMessage:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker].newRequestData()"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker].newRequestData()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].computeMergeExtensionsHeaderValue(java.lang.String,java.util.List)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.channel.ChannelDuplexHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandshaker].newRequestData()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 3
    ICount: 33
    EdgeCount: 117
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:74"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "getAsString(java.lang.CharSequence)"
        - "<init>(int)"
        - "iterator()"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:73"
        BranchSideFuncs:
        - "write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:74"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "getAsString(java.lang.CharSequence)"
        - "<init>(int)"
        - "iterator()"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:73"
        BranchSideFuncs:
        - "write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:65"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:69"
        BranchSideFuncs:
        - "hasNext()"
        - "add(java.lang.Object)"
        - "newRequestData()"
        - "next()"
        - "iterator()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:68"
        BranchSideFuncs:
        - "computeMergeExtensionsHeaderValue(java.lang.String,java.util.List)"
        - "set(java.lang.CharSequence,java.lang.Object)"
        - "headers()"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:60,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:60,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].isWebsocketUpgrade(io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:62,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].getAsString(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:64,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:64,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:65,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:65,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:65,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:66,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandshaker].newRequestData()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:66,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:69,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].computeMergeExtensionsHeaderValue(java.lang.String,java.util.List)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:71,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:74,1"
      Dst: "[io.netty.channel.ChannelDuplexHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].isWebsocketUpgrade(io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.HttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    functionUses: 4
    ICount: 16
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:42"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:-1"
        BranchSideFuncs:
        - "containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:43"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:-1"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:42,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:43,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:44,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 127
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].isWebsocketUpgrade(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpHeaders].getAsString(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].extractExtensions(java.lang.String)"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].hasNext()"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker].handshakeExtension(io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData)"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker].handshakeExtension(io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData)"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension].rsv()"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension:io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker$PermessageDeflateExtension].rsv()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension].newExtensionDecoder()"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker$PermessageDeflateExtension].newExtensionDecoder()"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker$PermessageDeflateExtension].newExtensionEncoder()"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension].newExtensionEncoder()"
    - "[io.netty.channel.DefaultChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].name()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext:java.lang.Object].getClass()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(java.lang.String)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandshaker].handshakeExtension(io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtension].rsv()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtension].newExtensionDecoder()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtension].newExtensionEncoder()"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelHandlerContext].name()"
    - "[io.netty.channel.ChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.ChannelPipeline].remove(java.lang.String)"
    functionUses: 3
    ICount: 74
    EdgeCount: 325
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:80"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:125"
        BranchSideFuncs:
        - "isWebsocketUpgrade(io.netty.handler.codec.http.HttpHeaders)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:124"
        BranchSideFuncs:
        - "channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:83"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:125"
        BranchSideFuncs:
        - "getAsString(java.lang.CharSequence)"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:124"
        BranchSideFuncs:
        - "channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:86"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:120"
        BranchSideFuncs:
        - "remove(java.lang.String)"
        - "pipeline()"
        - "name()"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:93"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:113"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:112"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:98"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:103"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:98"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:103"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:108"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "rsv()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:107"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:108"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "rsv()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:107"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:121"
        BranchSideFuncs:
        - "newExtensionDecoder()"
        - "hasNext()"
        - "next()"
        - "addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
        - "getName()"
        - "newExtensionEncoder()"
        - "getClass()"
        - "iterator()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:120"
        BranchSideFuncs:
        - "remove(java.lang.String)"
        - "pipeline()"
        - "name()"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:83,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:83,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].isWebsocketUpgrade(io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:84,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].getAsString(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:88,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].extractExtensions(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:90,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:90,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:93,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:93,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:93,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:101,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandshaker].handshakeExtension(io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:104,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtension].rsv()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:106,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:108,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:108,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:108,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:108,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:108,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:114,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtension].newExtensionDecoder()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:115,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtension].newExtensionEncoder()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:116,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:116,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].name()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:116,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:116,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:116,1"
      Dst: "[io.netty.channel.ChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:121,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtensionHandler:125,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].extractExtensions(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 72
    functionDepth: 2
    returnType: "java.util.List<WebSocketExtensionData>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].split(java.lang.String)"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.lang.String].trim()"
    - "[java.util.HashMap].<init>(int)"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].group(int)"
    - "[java.util.regex.Matcher].matches()"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Collections].emptyMap()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].<init>(java.lang.String,java.util.Map)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Collections].emptyList()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 3
    ICount: 48
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:49"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:71"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:70"
        BranchSideFuncs:
        - "emptyList()"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:69"
        BranchSideFuncs:
        - "split(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:68"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:65"
        BranchSideFuncs:
        - "<init>(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:64"
        BranchSideFuncs:
        - "emptyMap()"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:57"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:56"
        BranchSideFuncs:
        - "matches()"
        - "matcher(java.lang.CharSequence)"
        - "trim()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:55"
        BranchSideFuncs:
        - "<init>(int)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:56"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "group(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:55"
        BranchSideFuncs:
        - "<init>(int)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:56"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "group(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:55"
        BranchSideFuncs:
        - "<init>(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:48,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:50,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:53,1"
      Dst: "[java.lang.String].trim()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:56,1"
      Dst: "[java.util.HashMap].<init>(int)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:59,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:60,1"
      Dst: "[java.util.regex.Matcher].matches()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:60,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:61,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:65,1"
      Dst: "[java.util.Collections].emptyMap()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:67,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].<init>(java.lang.String,java.util.Map)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:67,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil:71,1"
      Dst: "[java.util.Collections].emptyList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1"
    linkageType: ""
    functionLinenumber: 646
    functionLinenumberEnd: 652
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    - "[io.netty.channel.local.LocalServerChannel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    - "[io.netty.bootstrap.FailedChannel].isActive()"
    - "[io.netty.channel.AbstractChannelHandlerContext].close()"
    - "[io.netty.channel.DefaultChannelPipeline].close()"
    - "[io.netty.channel.AbstractChannel].close()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close()"
    - "[io.netty.channel.embedded.EmbeddedChannel].close()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].access$102(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,boolean)"
    - "[io.netty.channel.Channel].isActive()"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 49
    ICount: 12
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1:647"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1:651"
        BranchSideFuncs:
        - "access$102(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,boolean)"
        - "close()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1:650"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1:647,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1:648,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1:649,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].access$102(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener].<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener"
    linkageType: ""
    functionLinenumber: 843
    functionLinenumberEnd: 848
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener:844,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener"
    linkageType: ""
    functionLinenumber: 850
    functionLinenumberEnd: 853
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener:851,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener"
    linkageType: ""
    functionLinenumber: 839
    functionLinenumberEnd: 841
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener:840,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AddressType].byteValue()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AddressType"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AddressType].hashCode()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AddressType"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AddressType].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AddressType"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5AddressType:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AddressType:71"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AddressType:70"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5AddressType:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AddressType:70"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AddressType].compareTo(io.netty.handler.codec.socksx.v5.Socks5AddressType)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AddressType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.socksx.v5.Socks5AddressType"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AddressType].toString()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AddressType"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 19
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5AddressType:82"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AddressType:85"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "toString()"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AddressType:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressType:83,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressType:83,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressType:83,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressType:83,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressType:83,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AddressType].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AddressType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].compareTo(io.netty.handler.codec.socksx.v5.Socks5AddressType)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressType:24,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5AddressType].compareTo(io.netty.handler.codec.socksx.v5.Socks5AddressType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ServerCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.CookieEncoder].<init>(boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:70,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieEncoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].encode(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ServerCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].<init>(java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:81,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].<init>(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:81,1"
      Dst: "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ServerCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "java.lang.List<String>"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.cookie.Cookie"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.Cookie].name()"
    - "[io.netty.handler.codec.http.cookie.Cookie].value()"
    - "[io.netty.handler.codec.http.cookie.CookieEncoder].validateCookie(java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.CookieUtil].stringBuilder()"
    - "[io.netty.handler.codec.http.cookie.Cookie].wrap()"
    - "[io.netty.handler.codec.http.cookie.CookieUtil].addQuoted(java.lang.StringBuilder,java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.CookieUtil].add(java.lang.StringBuilder,java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.Cookie].maxAge()"
    - "[io.netty.handler.codec.http.cookie.CookieUtil].add(java.lang.StringBuilder,java.lang.String,long)"
    - "[java.lang.System].currentTimeMillis()"
    - "[java.util.Date].<init>(long)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.DateFormatter].append(java.util.Date,java.lang.StringBuilder)"
    - "[io.netty.handler.codec.http.cookie.Cookie].path()"
    - "[io.netty.handler.codec.http.cookie.Cookie].domain()"
    - "[io.netty.handler.codec.http.cookie.Cookie].isSecure()"
    - "[io.netty.handler.codec.http.cookie.CookieUtil].add(java.lang.StringBuilder,java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.Cookie].isHttpOnly()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].sameSite()"
    - "[java.lang.Enum].name()"
    - "[io.netty.handler.codec.http.cookie.CookieUtil].stripTrailingSeparator(java.lang.StringBuilder)"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:90"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:98"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:101"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:100"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:114"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:114"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:118"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:117"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:118"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:121"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:120"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:121"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:124"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:123"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:127"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:126"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:134"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:133"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:129"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:134"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:133"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:91,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:91,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].name()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:92,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].value()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:94,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieEncoder].validateCookie(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:96,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].stringBuilder()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:98,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].wrap()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:99,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].addQuoted(java.lang.StringBuilder,java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:101,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].add(java.lang.StringBuilder,java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:104,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].maxAge()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:105,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].add(java.lang.StringBuilder,java.lang.String,long)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:106,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:106,1"
      Dst: "[java.util.Date].<init>(long)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:107,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:108,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:109,1"
      Dst: "[io.netty.handler.codec.DateFormatter].append(java.util.Date,java.lang.StringBuilder)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:114,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].path()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:118,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].domain()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:121,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].isSecure()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:122,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].add(java.lang.StringBuilder,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:124,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].isHttpOnly()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:129,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].sameSite()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:130,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:134,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].stripTrailingSeparator(java.lang.StringBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 20
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.codec.http.cookie.CookieUtil].add(java.lang.StringBuilder,java.lang.String,long)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.CookieUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(long)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:99,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:100,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:101,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DateFormatter].append(java.util.Date,java.lang.StringBuilder)"
    functionSourceFile: "io.netty.handler.codec.DateFormatter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "java.util.Date"
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DateFormatter].formatter()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.DateFormatter].append0(java.util.Date,java.lang.StringBuilder)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DateFormatter:126,1"
      Dst: "[io.netty.handler.codec.DateFormatter].formatter()"
    - Src: "io.netty.handler.codec.DateFormatter:126,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.DateFormatter:126,1"
      Dst: "[io.netty.handler.codec.DateFormatter].append0(java.util.Date,java.lang.StringBuilder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.CookieUtil].add(java.lang.StringBuilder,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.CookieUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:115,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.CookieUtil:116,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].sameSite()"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cookie.CookieHeaderNames$SameSite"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].dedup(java.util.List<String>,java.util.Map<String,Integer>)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ServerCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List<String>"
    argCount: 2
    argTypes:
    - "java.util.List<String>"
    - "java.util.Map<String,Integer>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].size()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.Integer].intValue()"
    - "[java.util.Map].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.List].get(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:145"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:148"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:147"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:154"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:153"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:148"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:144,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:145,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:145,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:145,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:145,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:145,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:148,1"
      Dst: "[java.util.Map].size()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:148,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:151,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:151,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie[])"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ServerCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.cookie.Cookie[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Collections].emptyList()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.HashMap].<init>()"
    - "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.cookie.Cookie].name()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].dedup(java.util.List,java.util.Map)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:164"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:168"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:167"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:168"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:167"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:168"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:167"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:178"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:177"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:174"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:169"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:168"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:174"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:177"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:164,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:165,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:168,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:169,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:173,1"
      Dst: "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:173,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:175,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].name()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:175,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:175,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:178,1"
      Dst: "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].dedup(java.util.List,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].encode(java.util.Collection<?\
      \ extends Cookie>)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ServerCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "java.util.List<String>"
    argCount: 1
    argTypes:
    - "java.util.Collection<? extends Cookie>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Collections].emptyList()"
    - "[java.util.Collection].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.HashMap].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.cookie.Cookie].name()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].dedup(java.util.List,java.util.Map)"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:192"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:191"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:192"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:191"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:192"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:191"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:202"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:201"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:198"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:201"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:200"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:198"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:202"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:188,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:188,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:189,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:192,1"
      Dst: "[java.util.Collection].size()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:192,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:193,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:196,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:196,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:196,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:197,1"
      Dst: "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:197,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:199,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].name()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:199,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:199,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:202,1"
      Dst: "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].dedup(java.util.List,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].encode(java.lang.Iterable<?\
      \ extends Cookie>)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ServerCookieEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "java.util.List<String>"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<? extends Cookie>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Collections].emptyList()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Iterator].next()"
    - "[java.util.HashMap].<init>()"
    - "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.cookie.Cookie].name()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].dedup(java.util.List,java.util.Map)"
    functionUses: 0
    ICount: 61
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:213"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:217"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:216"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:219"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:217"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:216"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:219"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:217"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:216"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:222"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:219"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:218"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:222"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:219"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:218"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:223"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:230"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:226"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:229"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:228"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:227"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:226"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:230"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:229"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:212,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:212,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:213,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:214,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:217,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:218,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:219,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:221,1"
      Dst: "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].encode(io.netty.handler.codec.http.cookie.Cookie)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:221,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:222,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].name()"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:222,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:222,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cookie.ServerCookieEncoder:230,1"
      Dst: "[io.netty.handler.codec.http.cookie.ServerCookieEncoder].dedup(java.util.List,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 22
    CyclomaticComplexity: 9
  - functionName: "[io.netty.resolver.dns.TcpDnsQueryContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.channel.Channel,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.resolver.dns.TcpDnsQueryContext"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    - "io.netty.channel.Channel"
    - "java.net.InetSocketAddress"
    - "io.netty.handler.codec.dns.DnsQuestion"
    - "io.netty.handler.codec.dns.DnsRecord[]"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsQueryContext].<init>(io.netty.resolver.dns.DnsNameResolver,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.TcpDnsQueryContext:35,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].<init>(io.netty.resolver.dns.DnsNameResolver,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.TcpDnsQueryContext].newQuery(int)"
    functionSourceFile: "io.netty.resolver.dns.TcpDnsQueryContext"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].<init>(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.TcpDnsQueryContext:41,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsQuery].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.TcpDnsQueryContext].channel()"
    functionSourceFile: "io.netty.resolver.dns.TcpDnsQueryContext"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "io.netty.channel.Channel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.TcpDnsQueryContext].protocol()"
    functionSourceFile: "io.netty.resolver.dns.TcpDnsQueryContext"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.CleanerJava9].<init>()"
    functionSourceFile: "io.netty.util.internal.CleanerJava9"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.CleanerJava9:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.CleanerJava9].isSupported()"
    functionSourceFile: "io.netty.util.internal.CleanerJava9"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.CleanerJava9:79"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.CleanerJava9:78"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.CleanerJava9].freeDirectBuffer(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.util.internal.CleanerJava9"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 96
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getSecurityManager()"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[io.netty.util.internal.PlatformDependent0].throwException(java.lang.Throwable)"
    - "[io.netty.util.internal.CleanerJava9].freeDirectBufferPrivileged(java.nio.ByteBuffer)"
    functionUses: 1
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.CleanerJava9:86"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.CleanerJava9:92"
        BranchSideFuncs:
        - "freeDirectBufferPrivileged(java.nio.ByteBuffer)"
    Callsites:
    - Src: "io.netty.util.internal.CleanerJava9:86,1"
      Dst: "[java.lang.System].getSecurityManager()"
    - Src: "io.netty.util.internal.CleanerJava9:88,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.util.internal.CleanerJava9:90,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].throwException(java.lang.Throwable)"
    - Src: "io.netty.util.internal.CleanerJava9:93,1"
      Dst: "[io.netty.util.internal.CleanerJava9].freeDirectBufferPrivileged(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.CleanerJava9].freeDirectBufferPrivileged(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.util.internal.CleanerJava9"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 115
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.CleanerJava9$2].<init>(java.nio.ByteBuffer)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[io.netty.util.internal.CleanerJava9$2].run()"
    - "[io.netty.util.internal.PlatformDependent0].throwException(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.CleanerJava9:111"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.CleanerJava9:114"
        BranchSideFuncs:
        - "throwException(java.lang.Throwable)"
      - BranchSide: "io.netty.util.internal.CleanerJava9:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.CleanerJava9:98,1"
      Dst: "[io.netty.util.internal.CleanerJava9$2].<init>(java.nio.ByteBuffer)"
    - Src: "io.netty.util.internal.CleanerJava9:98,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "io.netty.util.internal.CleanerJava9:112,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.CleanerJava9$2].<init>(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.util.internal.CleanerJava9$2"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.CleanerJava9$2:98,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.CleanerJava9].access$000()"
    functionSourceFile: "io.netty.util.internal.CleanerJava9"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "java.lang.reflect.Method"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].<init>(io.netty.handler.codec.http.HttpRequest,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>(long)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest,boolean,java.nio.charset.Charset,io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:170,1"
      Dst: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>(long)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:170,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest,boolean,java.nio.charset.Charset,io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.multipart.HttpDataFactory"
    - "io.netty.handler.codec.http.HttpRequest"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest,boolean,java.nio.charset.Charset,io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:189,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest,boolean,java.nio.charset.Charset,io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest,boolean,java.nio.charset.Charset,io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http.multipart.HttpDataFactory"
    - "io.netty.handler.codec.http.HttpRequest"
    - "boolean"
    - "java.nio.charset.Charset"
    - "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.HttpRequest].method()"
    - "[io.netty.handler.codec.http.HttpMethod].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].initDataMultipart()"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:216"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:220"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:219"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:227"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:230"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:229"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:212,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:213,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:216,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].method()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:216,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:217,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:220,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:228,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].initDataMultipart()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].cleanFiles()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpDataFactory].cleanRequestHttpData(io.netty.handler.codec.http.HttpRequest)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:236,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpDataFactory].cleanRequestHttpData(io.netty.handler.codec.http.HttpRequest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].isMultipart()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].initDataMultipart()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].getNewMultipartDelimiter()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:277,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].getNewMultipartDelimiter()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].getNewMultipartDelimiter()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - "[java.util.Random].nextLong()"
    - "[java.lang.Long].toHexString(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:293,1"
      Dst: "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:293,1"
      Dst: "[java.util.Random].nextLong()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:293,1"
      Dst: "[java.lang.Long].toHexString(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].initMixedMultipart()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].getNewMultipartDelimiter()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:284,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].getNewMultipartDelimiter()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].getBodyListAttributes()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].setBodyHttpDatas(java.util.List<InterfaceHttpData>)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List<InterfaceHttpData>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.List].clear()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].addBodyHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:320"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:323"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:322"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:314,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:316,1"
      Dst: "[java.util.List].clear()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:320,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:320,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:320,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:321,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].addBodyHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].addBodyHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].encodeAttribute(java.lang.String,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.Attribute].getValue()"
    - "[io.netty.handler.codec.http.multipart.HttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String,java.lang.String)"
    - "[java.lang.String].length()"
    - "[io.netty.handler.codec.http.multipart.HttpData].length()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.http.multipart.FileUpload].getFilename()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].<init>(java.nio.charset.Charset)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].addValue(java.lang.String)"
    - "[java.util.List].isEmpty()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(long)"
    - "[io.netty.handler.codec.http.multipart.HttpData].getCharset()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.nio.charset.Charset].name()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].size()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].initMixedMultipart()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - "[java.lang.String].isEmpty()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].setValue(java.lang.String,int)"
    - "[io.netty.handler.codec.http.multipart.FileUpload].getContentType()"
    - "[io.netty.handler.codec.http.multipart.FileUpload].getContentTransferEncoding()"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].value()"
    functionUses: 0
    ICount: 457
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:447"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:450"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:449"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:451"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:508"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:507"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:452"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:452"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:451"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:452"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:474"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:473"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:508"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:508"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:507"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:509"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:517"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:516"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:518"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:521"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:531"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:538"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:508"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:719"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:718"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:546"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:550"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:551"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:575"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:574"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:552"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:561"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:552"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:561"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:575"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:662"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:661"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:575"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:662"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:661"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:576"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:661"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:636"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:644"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:643"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:668"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:683"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:673"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:678"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:686"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:692"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:706"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:710"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:709"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:707"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:710"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:709"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:710"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:713"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:712"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:448,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:450,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:450,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:456,1"
      Dst: "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:456,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].encodeAttribute(java.lang.String,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:457,1"
      Dst: "[io.netty.handler.codec.http.multipart.Attribute].getValue()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:458,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:460,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:460,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].length()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:462,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:469,1"
      Dst: "[io.netty.handler.codec.http.multipart.FileUpload].getFilename()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:510,1"
      Dst: "[io.netty.handler.codec.http.multipart.InternalAttribute].<init>(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:511,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:511,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:511,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:511,1"
      Dst: "[io.netty.handler.codec.http.multipart.InternalAttribute].addValue(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:518,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:525,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:529,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:530,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].getCharset()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:533,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:536,1"
      Dst: "[java.nio.charset.Charset].name()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:542,1"
      Dst: "[io.netty.handler.codec.http.multipart.InternalAttribute].size()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:552,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:597,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].initMixedMultipart()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:599,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:598,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:604,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:610,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:636,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:646,1"
      Dst: "[io.netty.handler.codec.http.multipart.InternalAttribute].setValue(java.lang.String,int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:704,1"
      Dst: "[io.netty.handler.codec.http.multipart.FileUpload].getContentType()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:705,1"
      Dst: "[io.netty.handler.codec.http.multipart.FileUpload].getContentTransferEncoding()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:707,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].value()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 48
    CyclomaticComplexity: 21
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].encodeAttribute(java.lang.String,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].name()"
    - "[java.net.URLEncoder].encode(java.lang.String,java.lang.String)"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].replaceAll(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:837"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:841"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:840"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:842"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:848"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:847"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:843"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:848"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:847"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:841,1"
      Dst: "[java.nio.charset.Charset].name()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:841,1"
      Dst: "[java.net.URLEncoder].encode(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:844,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:845,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:845,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:845,1"
      Dst: "[java.util.regex.Matcher].replaceAll(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:850,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].addBodyAttribute(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].addBodyHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:338"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:338"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:337"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:339,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:339,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:340,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].addBodyHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].addBodyFileUpload(java.lang.String,java.io.File,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 12
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.io.File"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getName()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].addBodyFileUpload(java.lang.String,java.lang.String,java.io.File,java.lang.String,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:361,1"
      Dst: "[java.io.File].getName()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:361,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].addBodyFileUpload(java.lang.String,java.lang.String,java.io.File,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].addBodyFileUpload(java.lang.String,java.lang.String,java.io.File,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.io.File"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].value()"
    - "[java.io.File].length()"
    - "[io.netty.handler.codec.http.multipart.HttpDataFactory].createFileUpload(io.netty.handler.codec.http.HttpRequest,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long)"
    - "[io.netty.handler.codec.http.multipart.HttpData].setContent(java.io.File)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].addBodyHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:387"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:390"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:389"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:392"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:399"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:398"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:393"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:396"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:395"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:399"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:403"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:402"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:385,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:400,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].value()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:403,1"
      Dst: "[java.io.File].length()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:402,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpDataFactory].createFileUpload(io.netty.handler.codec.http.HttpRequest,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:405,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].setContent(java.io.File)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:407,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:409,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].addBodyHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].addBodyFileUploads(java.lang.String,java.io.File[],java.lang.String[],boolean[])"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 13
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.io.File[]"
    - "java.lang.String[]"
    - "boolean[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].addBodyFileUpload(java.lang.String,java.io.File,java.lang.String,boolean)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:430"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:433"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:432"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:430"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:433"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:432"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:433"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:435"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:431,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:434,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].addBodyFileUpload(java.lang.String,java.io.File,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].finalizeRequest()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "io.netty.handler.codec.http.HttpRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].<init>(java.nio.charset.Charset)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].addValue(java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].size()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].getAll(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.String].toLowerCase()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.util.List].listIterator()"
    - "[java.lang.String].valueOf(long)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpUtil].setTransferEncodingChunked(io.netty.handler.codec.http.HttpMessage,boolean)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].<init>(io.netty.handler.codec.http.HttpRequest)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].nextChunk()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].clear()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].<init>(io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.HttpContent,io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$1)"
    functionUses: 0
    ICount: 143
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:738"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:753"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:752"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:739"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:751"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:750"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:741"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:744"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:743"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:759"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:772"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:771"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:761"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:772"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:771"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:764"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:770"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:769"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:765"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:767"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:772"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:778"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:777"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:782"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:785"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:784"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:788"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:789"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:788"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:788"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:806"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:805"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:790"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:800"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:799"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:792"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:800"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:799"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:793"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:795"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:807"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:816"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:815"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:810"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:814"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:813"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:740,1"
      Dst: "[io.netty.handler.codec.http.multipart.InternalAttribute].<init>(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:742,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:742,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:742,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:742,1"
      Dst: "[io.netty.handler.codec.http.multipart.InternalAttribute].addValue(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:745,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:749,1"
      Dst: "[io.netty.handler.codec.http.multipart.InternalAttribute].size()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:753,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:756,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:757,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].getAll(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:760,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:761,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:761,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:761,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:763,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:764,1"
      Dst: "[io.netty.util.AsciiString].toString()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:764,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:768,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:773,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:773,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:785,1"
      Dst: "[java.util.List].listIterator()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:787,1"
      Dst: "[java.lang.String].valueOf(long)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:787,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:793,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:800,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].setTransferEncodingChunked(io.netty.handler.codec.http.HttpMessage,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:803,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].<init>(io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:806,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].nextChunk()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:809,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:811,1"
      Dst: "[io.netty.buffer.ByteBuf].clear()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:811,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:812,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:816,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].<init>(io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.HttpContent,io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$1)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 35
    CyclomaticComplexity: 14
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].nextChunk()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: 1061
    functionLinenumberEnd: 1109
    functionDepth: 8
    returnType: "io.netty.handler.codec.http.HttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].calculateRemainingSize()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].fillByteBuf()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].encodeNextChunkMultipart(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].encodeNextChunkUrlEncoded(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].lastChunk()"
    - "[java.util.ListIterator].hasNext()"
    - "[java.util.ListIterator].next()"
    functionUses: 1
    ICount: 47
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1062"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1067"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1066"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1068"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1073"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1074"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1087"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1077"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1080"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1079"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1082"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1085"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1088"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1091"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1090"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1091"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1108"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1107"
        BranchSideFuncs:
        - "lastChunk()"
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1091"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1108"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1107"
        BranchSideFuncs:
        - "lastChunk()"
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1094"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1097"
        BranchSideFuncs:
        - "encodeNextChunkMultipart(int)"
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1096"
        BranchSideFuncs:
        - "encodeNextChunkUrlEncoded(int)"
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1099"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1104"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1067,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].calculateRemainingSize()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1070,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].fillByteBuf()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1071,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1078,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].encodeNextChunkMultipart(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1080,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].encodeNextChunkUrlEncoded(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1088,1"
      Dst: "[java.util.ListIterator].hasNext()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1089,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].lastChunk()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1092,1"
      Dst: "[java.util.ListIterator].next()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 22
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].calculateRemainingSize()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: 1111
    functionLinenumberEnd: 1117
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 3
    ICount: 8
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1116"
        BranchSideFuncs:
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1115"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1114,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].fillByteBuf()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: 871
    functionLinenumberEnd: 880
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    functionUses: 5
    ICount: 10
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:873"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:877"
        BranchSideFuncs:
        - "readRetainedSlice(int)"
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:876"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:872,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:874,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].encodeNextChunkMultipart(int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: 893
    functionLinenumberEnd: 924
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.HttpContent"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].toByteBuf()"
    - "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].getChunk(int)"
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].getChunk(int)"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].getChunk(int)"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].getChunk(int)"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getChunk(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.Throwable)"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(io.netty.buffer.ByteBuf[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].fillByteBuf()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.multipart.HttpData].getChunk(int)"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 2
    ICount: 45
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:894"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:898"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:897"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:898"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:903"
        BranchSideFuncs:
        - "toByteBuf()"
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:902"
        BranchSideFuncs:
        - "getChunk(int)"
        - "<init>(java.lang.Throwable)"
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:907"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:912"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:913"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:916"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:915"
        BranchSideFuncs:
        - "wrappedBuffer(io.netty.buffer.ByteBuf[])"
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:918"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:922"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:921"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf)"
        - "fillByteBuf()"
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:899,1"
      Dst: "[io.netty.handler.codec.http.multipart.InternalAttribute].toByteBuf()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:903,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].getChunk(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:905,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:907,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:916,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(io.netty.buffer.ByteBuf[])"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:918,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:922,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].fillByteBuf()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:923,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].encodeNextChunkUrlEncoded(int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: 936
    functionLinenumberEnd: 1020
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.HttpContent"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].getName()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].getName()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getName()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].getName()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(io.netty.buffer.ByteBuf[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].fillByteBuf()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].getChunk(int)"
    - "[io.netty.handler.codec.http.multipart.AbstractDiskHttpData].getChunk(int)"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].getChunk(int)"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].getChunk(int)"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getChunk(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.Throwable)"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http.multipart.HttpData].getChunk(int)"
    - "[java.util.ListIterator].hasNext()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    functionUses: 2
    ICount: 129
    EdgeCount: 78
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:937"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:940"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:939"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:944"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:963"
        BranchSideFuncs:
        - "getName()"
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:962"
        BranchSideFuncs:
        - "getChunk(int)"
        - "<init>(java.lang.Throwable)"
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:948"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:951"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:950"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:955"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:963"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:962"
        BranchSideFuncs:
        - "getChunk(int)"
        - "<init>(java.lang.Throwable)"
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:970"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:976"
        BranchSideFuncs:
        - "wrappedBuffer(byte[])"
        - "getBytes(java.nio.charset.Charset)"
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:975"
        BranchSideFuncs:
        - "capacity()"
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:972"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:970"
        BranchSideFuncs:
        - "wrappedBuffer(byte[])"
        - "getBytes(java.nio.charset.Charset)"
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:976"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:997"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:996"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:978"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:985"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:984"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:979"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:982"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:981"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:985"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:989"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:988"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:989"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:993"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:992"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:997"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1004"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1003"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:998"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1001"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1000"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1004"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1007"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1006"
        BranchSideFuncs:
        - "wrappedBuffer(io.netty.buffer.ByteBuf[])"
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1012"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1018"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1017"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf)"
        - "fillByteBuf()"
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:945,1"
      Dst: "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:946,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:946,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:949,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(io.netty.buffer.ByteBuf[])"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:954,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:956,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].fillByteBuf()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:957,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:963,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].getChunk(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:965,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:972,1"
      Dst: "[java.util.ListIterator].hasNext()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:976,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$ErrorDataEncoderException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 35
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].lastChunk()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: 1119
    functionLinenumberEnd: 1130
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.HttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpContent].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1121"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1127"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1126"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1129,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].<init>(io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.HttpContent,io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$1)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    - "io.netty.handler.codec.http.HttpContent"
    - "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].<init>(io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.HttpContent)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest:1245,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].<init>(io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.HttpContent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].<init>(io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.HttpContent)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    - "io.netty.handler.codec.http.HttpContent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].<init>(io.netty.handler.codec.http.HttpRequest)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest:1249,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].<init>(io.netty.handler.codec.http.HttpRequest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].isChunked()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].close()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: 1025
    functionLinenumberEnd: 1027
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].readChunk(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "io.netty.handler.codec.http.HttpContent"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].readChunk(io.netty.buffer.ByteBufAllocator)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1031,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1031,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].readChunk(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].readChunk(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: 1043
    functionLinenumberEnd: 1050
    functionDepth: 9
    returnType: "io.netty.handler.codec.http.HttpContent"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].nextChunk()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].content()"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].content()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 4
    ICount: 13
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1044"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1047"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1046"
        BranchSideFuncs:
        - "content()"
        - "nextChunk()"
        - "readableBytes()"
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1047,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].nextChunk()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1048,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1048,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].isEndOfInput()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: 1133
    functionLinenumberEnd: 1135
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].length()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: 1138
    functionLinenumberEnd: 1140
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1139"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:1138"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].progress()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestEncoder"
    linkageType: ""
    functionLinenumber: 1143
    functionLinenumberEnd: 1145
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.sctp.SctpInboundByteStreamHandler].<init>(int,int)"
    functionSourceFile: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:39,1"
      Dst: "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.sctp.SctpInboundByteStreamHandler].acceptInboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageDecoder].acceptInboundMessage(java.lang.Object)"
    - "[io.netty.handler.codec.sctp.SctpInboundByteStreamHandler].acceptInboundMessage(io.netty.channel.sctp.SctpMessage)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:49"
        BranchSideFuncs:
        - "acceptInboundMessage(io.netty.channel.sctp.SctpMessage)"
      - BranchSide: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:46,1"
      Dst: "[io.netty.handler.codec.MessageToMessageDecoder].acceptInboundMessage(java.lang.Object)"
    - Src: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:47,1"
      Dst: "[io.netty.handler.codec.sctp.SctpInboundByteStreamHandler].acceptInboundMessage(io.netty.channel.sctp.SctpMessage)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.sctp.SctpInboundByteStreamHandler].acceptInboundMessage(io.netty.channel.sctp.SctpMessage)"
    functionSourceFile: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.channel.sctp.SctpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.SctpMessage].protocolIdentifier()"
    - "[io.netty.channel.sctp.SctpMessage].streamIdentifier()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:52"
        BranchSideFuncs:
        - "protocolIdentifier()"
        - "streamIdentifier()"
    - Branch String: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:52"
        BranchSideFuncs:
        - "protocolIdentifier()"
        - "streamIdentifier()"
    Callsites:
    - Src: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:53,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].protocolIdentifier()"
    - Src: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:53,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].streamIdentifier()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.sctp.SctpInboundByteStreamHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.channel.sctp.SctpMessage,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.sctp.SctpMessage"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.SctpMessage].isComplete()"
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Class].getSimpleName()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.ByteBuf].retain()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:58"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:62"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:61"
        BranchSideFuncs:
        - "content()"
        - "add(java.lang.Object)"
        - "retain()"
    Callsites:
    - Src: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:58,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].isComplete()"
    - Src: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:60,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:59,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:59,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:62,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:62,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    - Src: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:62,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.sctp.SctpInboundByteStreamHandler].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.sctp.SctpInboundByteStreamHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.channel.sctp.SctpMessage,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.sctp.SctpInboundByteStreamHandler:31,1"
      Dst: "[io.netty.handler.codec.sctp.SctpInboundByteStreamHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.channel.sctp.SctpMessage,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.MathUtil].<init>()"
    functionSourceFile: "io.netty.util.internal.MathUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.MathUtil:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.MathUtil].compare(int,int)"
    functionSourceFile: "io.netty.util.internal.MathUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.MathUtil:78"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MathUtil:77"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.MathUtil:78"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.MathUtil:77"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent$Mpsc].<init>()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent$Mpsc"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent$Mpsc:988,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent$Mpsc].newMpscQueue(int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent$Mpsc"
    linkageType: ""
    functionLinenumber: 1018
    functionLinenumberEnd: 1021
    functionDepth: 1
    returnType: "java.util.Queue"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.util.internal.PlatformDependent$Mpsc].newChunkedMpscQueue(int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent$Mpsc:1019,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.util.internal.PlatformDependent$Mpsc:1019,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "io.netty.util.internal.PlatformDependent$Mpsc:1020,1"
      Dst: "[io.netty.util.internal.PlatformDependent$Mpsc].newChunkedMpscQueue(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent$Mpsc].newChunkedMpscQueue(int,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent$Mpsc"
    linkageType: ""
    functionLinenumber: 1023
    functionLinenumberEnd: 1025
    functionDepth: 0
    returnType: "java.util.Queue"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].<init>(int,int)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].<init>(int,int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent$Mpsc:1024"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent$Mpsc:1023"
        BranchSideFuncs:
        - "<init>(int,int)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent$Mpsc:1024,1"
      Dst: "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].<init>(int,int)"
    - Src: "io.netty.util.internal.PlatformDependent$Mpsc:1024,1"
      Dst: "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.stomp.LastStompContentSubframe$1"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.LastStompContentSubframe$1:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].content()"
    functionSourceFile: "io.netty.handler.codec.stomp.LastStompContentSubframe$1"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].copy()"
    functionSourceFile: "io.netty.handler.codec.stomp.LastStompContentSubframe$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.stomp.LastStompContentSubframe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].duplicate()"
    functionSourceFile: "io.netty.handler.codec.stomp.LastStompContentSubframe$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.stomp.LastStompContentSubframe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.stomp.LastStompContentSubframe$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.stomp.LastStompContentSubframe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.LastStompContentSubframe$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.stomp.LastStompContentSubframe"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.LastStompContentSubframe$1:54,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].retain()"
    functionSourceFile: "io.netty.handler.codec.stomp.LastStompContentSubframe$1"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "io.netty.handler.codec.stomp.LastStompContentSubframe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].retain(int)"
    functionSourceFile: "io.netty.handler.codec.stomp.LastStompContentSubframe$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.stomp.LastStompContentSubframe"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].touch()"
    functionSourceFile: "io.netty.handler.codec.stomp.LastStompContentSubframe$1"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "io.netty.handler.codec.stomp.LastStompContentSubframe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.stomp.LastStompContentSubframe$1"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "io.netty.handler.codec.stomp.LastStompContentSubframe"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].refCnt()"
    functionSourceFile: "io.netty.handler.codec.stomp.LastStompContentSubframe$1"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].release()"
    functionSourceFile: "io.netty.handler.codec.stomp.LastStompContentSubframe$1"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].release(int)"
    functionSourceFile: "io.netty.handler.codec.stomp.LastStompContentSubframe$1"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].decoderResult()"
    functionSourceFile: "io.netty.handler.codec.stomp.LastStompContentSubframe$1"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "io.netty.handler.codec.DecoderResult"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    functionSourceFile: "io.netty.handler.codec.stomp.LastStompContentSubframe$1"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.DecoderResult"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.LastStompContentSubframe$1:99,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectCleaner$1].<init>()"
    functionSourceFile: "io.netty.util.internal.ObjectCleaner$1"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectCleaner$1:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectCleaner$1].run()"
    functionSourceFile: "io.netty.util.internal.ObjectCleaner$1"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 85
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectCleaner].access$000()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].isEmpty()"
    - "[io.netty.channel.group.DefaultChannelGroup].isEmpty()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].isEmpty()"
    - "[io.netty.util.internal.ObjectCleaner].access$100()"
    - "[io.netty.util.internal.ObjectCleaner].access$200()"
    - "[java.lang.ref.ReferenceQueue].remove(long)"
    - "[io.netty.util.internal.ObjectCleaner$AutomaticCleanerReference].cleanup()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].remove(java.lang.Object)"
    - "[io.netty.util.internal.ObjectCleaner].access$300()"
    - "[java.util.concurrent.atomic.AtomicBoolean].set(boolean)"
    - "[java.util.concurrent.atomic.AtomicBoolean].compareAndSet(boolean,boolean)"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].interrupt()"
    - "[java.util.Set].isEmpty()"
    - "[java.util.Set].remove(java.lang.Object)"
    functionUses: 49
    ICount: 34
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ObjectCleaner$1:51"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectCleaner$1:69"
        BranchSideFuncs:
        - "isEmpty()"
        - "access$000()"
        - "set(boolean)"
        - "compareAndSet(boolean,boolean)"
        - "access$300()"
    - Branch String: "io.netty.util.internal.ObjectCleaner$1:60"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectCleaner$1:68"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.ObjectCleaner$1:74"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectCleaner$1:79"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.ObjectCleaner$1:74"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectCleaner$1:50"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.ObjectCleaner$1:80"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectCleaner$1:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectCleaner$1:51,1"
      Dst: "[io.netty.util.internal.ObjectCleaner].access$000()"
    - Src: "io.netty.util.internal.ObjectCleaner$1:51,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "io.netty.util.internal.ObjectCleaner$1:54,1"
      Dst: "[io.netty.util.internal.ObjectCleaner].access$200()"
    - Src: "io.netty.util.internal.ObjectCleaner$1:54,1"
      Dst: "[io.netty.util.internal.ObjectCleaner].access$100()"
    - Src: "io.netty.util.internal.ObjectCleaner$1:54,1"
      Dst: "[java.lang.ref.ReferenceQueue].remove(long)"
    - Src: "io.netty.util.internal.ObjectCleaner$1:62,1"
      Dst: "[io.netty.util.internal.ObjectCleaner$AutomaticCleanerReference].cleanup()"
    - Src: "io.netty.util.internal.ObjectCleaner$1:67,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "io.netty.util.internal.ObjectCleaner$1:70,1"
      Dst: "[io.netty.util.internal.ObjectCleaner].access$300()"
    - Src: "io.netty.util.internal.ObjectCleaner$1:70,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].set(boolean)"
    - Src: "io.netty.util.internal.ObjectCleaner$1:74,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].compareAndSet(boolean,boolean)"
    - Src: "io.netty.util.internal.ObjectCleaner$1:82,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "io.netty.util.internal.ObjectCleaner$1:82,1"
      Dst: "[java.lang.Thread].interrupt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 6
  - functionName: "[io.netty.util.internal.ObjectCleaner].access$000()"
    functionSourceFile: "io.netty.util.internal.ObjectCleaner"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectCleaner].access$200()"
    functionSourceFile: "io.netty.util.internal.ObjectCleaner"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "java.lang.ref.ReferenceQueue"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectCleaner].access$100()"
    functionSourceFile: "io.netty.util.internal.ObjectCleaner"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectCleaner$AutomaticCleanerReference].cleanup()"
    functionSourceFile: "io.netty.util.internal.ObjectCleaner$AutomaticCleanerReference"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[java.util.zip.Inflater$InflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$3].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[java.util.concurrent.CompletableFuture$Completion].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[java.util.zip.Deflater$DeflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[java.util.concurrent.ThreadPoolExecutor$Worker].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[java.util.zip.ZipFile$CleanableResource].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[java.lang.invoke.MethodHandleNatives$CallSiteContext].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor$2].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[java.util.concurrent.ForkJoinWorkerThread].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[java.lang.ref.Finalizer$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$2].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[java.lang.ref.Finalizer$FinalizerThread].run()"
    - "[java.lang.Runnable].run()"
    functionUses: 1
    ICount: 4
    EdgeCount: 183
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ObjectCleaner$AutomaticCleanerReference:143,1"
      Dst: "[java.lang.Runnable].run()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectCleaner].access$300()"
    functionSourceFile: "io.netty.util.internal.ObjectCleaner"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "java.util.concurrent.atomic.AtomicBoolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthScheme].values()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthScheme"
    linkageType: ""
    functionLinenumber: 18
    functionLinenumberEnd: 20
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksAuthScheme[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthScheme:19,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthScheme].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthScheme"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksAuthScheme"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthScheme:19,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthScheme].<init>(java.lang.String,int,byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthScheme"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthScheme:27,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthScheme].fromByte(byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthScheme"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.socks.SocksAuthScheme"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksAuthScheme].valueOf(byte)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthScheme:36,1"
      Dst: "[io.netty.handler.codec.socks.SocksAuthScheme].valueOf(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthScheme].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthScheme"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 46
    functionDepth: 1
    returnType: "io.netty.handler.codec.socks.SocksAuthScheme"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksAuthScheme].values()"
    functionUses: 2
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksAuthScheme:40"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthScheme:45"
        BranchSideFuncs:
        - "values()"
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthScheme:44"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socks.SocksAuthScheme:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthScheme:40"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthScheme:39"
        BranchSideFuncs:
        - "values()"
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthScheme:40,1"
      Dst: "[io.netty.handler.codec.socks.SocksAuthScheme].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socks.SocksAuthScheme].byteValue()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthScheme"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$12].<init>()"
    functionSourceFile: "io.netty.util.internal.SocketUtils$12"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$12:205,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$12].run()"
    functionSourceFile: "io.netty.util.internal.SocketUtils$12"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 215
    functionDepth: 2
    returnType: "java.net.InetAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[java.net.InetAddress].getLoopbackAddress()"
    - "[java.net.InetAddress].getByName(java.lang.String)"
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    functionUses: 3
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.SocketUtils$12:208"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.SocketUtils$12:212"
        BranchSideFuncs:
        - "getLoopbackAddress()"
      - BranchSide: "io.netty.util.internal.SocketUtils$12:211"
        BranchSideFuncs:
        - "getByName(java.lang.String)"
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$12:208,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.util.internal.SocketUtils$12:209,1"
      Dst: "[java.net.InetAddress].getLoopbackAddress()"
    - Src: "io.netty.util.internal.SocketUtils$12:212,1"
      Dst: "[java.net.InetAddress].getByName(java.lang.String)"
    - Src: "io.netty.util.internal.SocketUtils$12:214,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Zstd].isAvailable()"
    functionSourceFile: "io.netty.handler.codec.compression.Zstd"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Zstd:52"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Zstd:51"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Zstd].ensureAvailability()"
    functionSourceFile: "io.netty.handler.codec.compression.Zstd"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Zstd:61"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Zstd:64"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Zstd:63"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Throwable"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Zstd].cause()"
    functionSourceFile: "io.netty.handler.codec.compression.Zstd"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Zstd].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.Zstd"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Zstd:73,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].sysctlGetInt(java.lang.String)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 244
    functionDepth: 0
    returnType: "java.lang.Integer"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ProcessBuilder].<init>(java.lang.String[])"
    - "[java.lang.ProcessBuilder].start()"
    - "[java.lang.ProcessImpl].getInputStream()"
    - "[java.io.InputStreamReader].<init>(java.io.InputStream)"
    - "[java.io.BufferedReader].<init>(java.io.Reader)"
    - "[java.io.BufferedReader].readLine()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].isDigit(char)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.Integer].valueOf(java.lang.String)"
    - "[java.io.BufferedReader].close()"
    - "[java.lang.ProcessImpl].destroy()"
    - "[java.lang.Process].getInputStream()"
    - "[java.lang.Process].destroy()"
    functionUses: 1
    ICount: 41
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:227"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:230"
        BranchSideFuncs:
        - "length()"
      - BranchSide: "io.netty.util.NetUtil:229"
        BranchSideFuncs:
        - "valueOf(java.lang.String)"
        - "substring(int)"
        - "destroy()"
        - "close()"
    - Branch String: "io.netty.util.NetUtil:227"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:230"
        BranchSideFuncs:
        - "length()"
      - BranchSide: "io.netty.util.NetUtil:229"
        BranchSideFuncs:
        - "valueOf(java.lang.String)"
        - "substring(int)"
        - "destroy()"
        - "close()"
    - Branch String: "io.netty.util.NetUtil:228"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:230"
        BranchSideFuncs:
        - "isDigit(char)"
        - "charAt(int)"
      - BranchSide: "io.netty.util.NetUtil:229"
        BranchSideFuncs:
        - "valueOf(java.lang.String)"
        - "substring(int)"
        - "destroy()"
        - "close()"
    - Branch String: "io.netty.util.NetUtil:229"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:null"
        BranchSideFuncs:
        - "valueOf(java.lang.String)"
        - "substring(int)"
    Callsites:
    - Src: "io.netty.util.NetUtil:219,1"
      Dst: "[java.lang.ProcessBuilder].<init>(java.lang.String[])"
    - Src: "io.netty.util.NetUtil:219,1"
      Dst: "[java.lang.ProcessBuilder].start()"
    - Src: "io.netty.util.NetUtil:222,1"
      Dst: "[java.lang.Process].getInputStream()"
    - Src: "io.netty.util.NetUtil:223,1"
      Dst: "[java.io.InputStreamReader].<init>(java.io.InputStream)"
    - Src: "io.netty.util.NetUtil:224,1"
      Dst: "[java.io.BufferedReader].<init>(java.io.Reader)"
    - Src: "io.netty.util.NetUtil:226,1"
      Dst: "[java.io.BufferedReader].readLine()"
    - Src: "io.netty.util.NetUtil:227,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "io.netty.util.NetUtil:228,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.util.NetUtil:229,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.util.NetUtil:229,1"
      Dst: "[java.lang.Character].isDigit(char)"
    - Src: "io.netty.util.NetUtil:230,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "io.netty.util.NetUtil:230,1"
      Dst: "[java.lang.Integer].valueOf(java.lang.String)"
    - Src: "io.netty.util.NetUtil:236,1"
      Dst: "[java.io.BufferedReader].close()"
    - Src: "io.netty.util.NetUtil:242,1"
      Dst: "[java.lang.Process].destroy()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.NetUtil].isIpV4StackPreferred()"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 253
    functionLinenumberEnd: 255
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].isIpV6AddressesPreferred()"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 264
    functionLinenumberEnd: 266
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].bytesToIpAddress(byte[])"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 407
    functionLinenumberEnd: 409
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.NetUtil].bytesToIpAddress(byte[],int,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtil:408,1"
      Dst: "[io.netty.util.NetUtil].bytesToIpAddress(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].bytesToIpAddress(byte[],int,int)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 417
    functionLinenumberEnd: 433
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.NetUtil].toAddressString(byte[],int,boolean)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 2
    ICount: 45
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtil:420,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.util.NetUtil:421,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.NetUtil:422,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.NetUtil:427,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.NetUtil:430,1"
      Dst: "[io.netty.util.NetUtil].toAddressString(byte[],int,boolean)"
    - Src: "io.netty.util.NetUtil:432,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.NetUtil:432,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.NetUtil:432,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.CharSequence,int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtil:608,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.NetUtil:608,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].getByName(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "java.net.Inet6Address"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.NetUtil].getByName(java.lang.CharSequence,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtil:668,1"
      Dst: "[io.netty.util.NetUtil].getByName(java.lang.CharSequence,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].getByName(java.lang.CharSequence,boolean)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.net.Inet6Address"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.NetUtil].getIPv6ByName(java.lang.CharSequence,boolean)"
    - "[java.net.Inet6Address].getByAddress(java.lang.String,byte[],int)"
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:687"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.NetUtil:686,1"
      Dst: "[io.netty.util.NetUtil].getIPv6ByName(java.lang.CharSequence,boolean)"
    - Src: "io.netty.util.NetUtil:691,1"
      Dst: "[java.net.Inet6Address].getByAddress(java.lang.String,byte[],int)"
    - Src: "io.netty.util.NetUtil:693,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].toSocketAddressString(java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].getPort()"
    - "[java.lang.String].valueOf(int)"
    - "[java.net.InetSocketAddress].isUnresolved()"
    - "[io.netty.util.NetUtil].getHostname(java.net.InetSocketAddress)"
    - "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - "[io.netty.util.NetUtil].newSocketAddressStringBuilder(java.lang.String,java.lang.String,boolean)"
    - "[java.net.InetSocketAddress].getAddress()"
    - "[io.netty.util.NetUtil].toAddressString(java.net.InetAddress)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:889"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:893"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:892"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.NetUtil:891"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:890"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:889"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.NetUtil:886,1"
      Dst: "[java.net.InetSocketAddress].getPort()"
    - Src: "io.netty.util.NetUtil:886,1"
      Dst: "[java.lang.String].valueOf(int)"
    - Src: "io.netty.util.NetUtil:889,1"
      Dst: "[java.net.InetSocketAddress].isUnresolved()"
    - Src: "io.netty.util.NetUtil:890,1"
      Dst: "[io.netty.util.NetUtil].getHostname(java.net.InetSocketAddress)"
    - Src: "io.netty.util.NetUtil:891,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - Src: "io.netty.util.NetUtil:891,1"
      Dst: "[io.netty.util.NetUtil].newSocketAddressStringBuilder(java.lang.String,java.lang.String,boolean)"
    - Src: "io.netty.util.NetUtil:893,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.util.NetUtil:894,1"
      Dst: "[io.netty.util.NetUtil].toAddressString(java.net.InetAddress)"
    - Src: "io.netty.util.NetUtil:897,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.NetUtil:897,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.NetUtil:897,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.NetUtil].newSocketAddressStringBuilder(java.lang.String,java.lang.String,boolean)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 909
    functionLinenumberEnd: 921
    functionDepth: 0
    returnType: "java.lang.StringBuilder"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 1
    ICount: 31
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:911"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:915"
        BranchSideFuncs:
        - "<init>(int)"
        - "length()"
        - "charAt(int)"
    - Branch String: "io.netty.util.NetUtil:917"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:920"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:919"
        BranchSideFuncs:
        - "append(char)"
        - "append(java.lang.String)"
    - Branch String: "io.netty.util.NetUtil:917"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:920"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:919"
        BranchSideFuncs:
        - "append(char)"
        - "append(java.lang.String)"
    - Branch String: "io.netty.util.NetUtil:917"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:920"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.NetUtil:919"
        BranchSideFuncs:
        - "append(char)"
        - "append(java.lang.String)"
    Callsites:
    - Src: "io.netty.util.NetUtil:910,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.util.NetUtil:913,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.util.NetUtil:913,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.NetUtil:917,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.util.NetUtil:920,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.NetUtil].toSocketAddressString(java.lang.String,int)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 903
    functionLinenumberEnd: 907
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].valueOf(int)"
    - "[io.netty.util.NetUtil].newSocketAddressStringBuilder(java.lang.String,java.lang.String,boolean)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 13
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.util.NetUtil:906"
      Branch Sides:
      - BranchSide: "io.netty.util.NetUtil:903"
        BranchSideFuncs:
        - "append(char)"
        - "isValidIpV6Address(java.lang.String)"
        - "append(java.lang.String)"
        - "toString()"
        - "valueOf(int)"
        - "newSocketAddressStringBuilder(java.lang.String,java.lang.String,boolean)"
    Callsites:
    - Src: "io.netty.util.NetUtil:904,1"
      Dst: "[java.lang.String].valueOf(int)"
    - Src: "io.netty.util.NetUtil:906,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - Src: "io.netty.util.NetUtil:905,1"
      Dst: "[io.netty.util.NetUtil].newSocketAddressStringBuilder(java.lang.String,java.lang.String,boolean)"
    - Src: "io.netty.util.NetUtil:906,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.NetUtil:906,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.NetUtil:906,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.NetUtil].<init>()"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtil:1089,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].access$100()"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtil].access$200(java.lang.String)"
    functionSourceFile: "io.netty.util.NetUtil"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 1
    returnType: "java.lang.Integer"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.NetUtil].sysctlGetInt(java.lang.String)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtil:50,1"
      Dst: "[io.netty.util.NetUtil].sysctlGetInt(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].order()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "java.nio.ByteOrder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 63
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteOrder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 34
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.SwappedByteBuf:59"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SwappedByteBuf:62"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.SwappedByteBuf:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:59,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].unwrap()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].alloc()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBufAllocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].alloc()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].alloc()"
    - "[io.netty.buffer.DuplicatedByteBuf].alloc()"
    - "[io.netty.buffer.SwappedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].alloc()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.WrappedByteBuf].alloc()"
    - "[io.netty.buffer.SlicedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].alloc()"
    - "[io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.buffer.ByteBuf].alloc()"
    functionUses: 18
    ICount: 4
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:72,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].capacity()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.SlicedByteBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    functionUses: 53
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:77,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].capacity(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].capacity(int)"
    - "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].capacity(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.PooledByteBuf].capacity(int)"
    - "[io.netty.buffer.SwappedByteBuf].capacity(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].capacity(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity(int)"
    - "[io.netty.buffer.SlicedByteBuf].capacity(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].capacity(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.EmptyByteBuf].capacity(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity(int)"
    - "[io.netty.buffer.CompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.ByteBuf].capacity(int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:82,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].maxCapacity()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].maxCapacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].maxCapacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].maxCapacity()"
    - "[io.netty.buffer.SwappedByteBuf].maxCapacity()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf].maxCapacity()"
    - "[io.netty.buffer.ByteBuf].maxCapacity()"
    functionUses: 6
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:88,1"
      Dst: "[io.netty.buffer.ByteBuf].maxCapacity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].isReadOnly()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].isReadOnly()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].isReadOnly()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isReadOnly()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].isReadOnly()"
    - "[io.netty.buffer.SwappedByteBuf].isReadOnly()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadOnly()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.ReadOnlyByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.handler.codec.ReplayingDecoderByteBuf].isReadOnly()"
    - "[io.netty.buffer.ByteBuf].isReadOnly()"
    functionUses: 6
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:93,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadOnly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].asReadOnly()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].unmodifiableBuffer(io.netty.buffer.ByteBuf)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:98,1"
      Dst: "[io.netty.buffer.Unpooled].unmodifiableBuffer(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].unmodifiableBuffer(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: 694
    functionLinenumberEnd: 701
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.SwappedByteBuf].order()"
    - "[io.netty.buffer.EmptyByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.ByteBuf].order()"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 5
    ICount: 14
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:696"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:700"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:699"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf)"
        - "order(java.nio.ByteOrder)"
    Callsites:
    - Src: "io.netty.buffer.Unpooled:695,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    - Src: "io.netty.buffer.Unpooled:697,1"
      Dst: "[io.netty.buffer.ReadOnlyByteBuf].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.Unpooled:700,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.buffer.Unpooled:700,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ReadOnlyByteBuf].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.ReadOnlyByteBuf"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].<init>(int)"
    - "[io.netty.buffer.WrappedByteBuf].maxCapacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].maxCapacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].maxCapacity()"
    - "[io.netty.buffer.SwappedByteBuf].maxCapacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].maxCapacity()"
    - "[io.netty.buffer.SlicedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.AbstractPooledDerivedByteBuf:io.netty.buffer.AbstractUnpooledSlicedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.DuplicatedByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.ReadOnlyByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.SwappedByteBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf:io.netty.buffer.WrappedByteBuf:io.netty.buffer.WrappedCompositeByteBuf].unwrap()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].maxCapacity()"
    - "[io.netty.buffer.ByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    functionUses: 3
    ICount: 16
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.buffer.ReadOnlyByteBuf:45"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ReadOnlyByteBuf:46"
        BranchSideFuncs:
        - "unwrap()"
      - BranchSide: "io.netty.buffer.ReadOnlyByteBuf:45"
        BranchSideFuncs:
        - "unwrap()"
    - Branch String: "io.netty.buffer.ReadOnlyByteBuf:45"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ReadOnlyByteBuf:48"
        BranchSideFuncs:
        - "unwrap()"
      - BranchSide: "io.netty.buffer.ReadOnlyByteBuf:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ReadOnlyByteBuf:43,1"
      Dst: "[io.netty.buffer.ByteBuf].maxCapacity()"
    - Src: "io.netty.buffer.ReadOnlyByteBuf:43,1"
      Dst: "[io.netty.buffer.AbstractDerivedByteBuf].<init>(int)"
    - Src: "io.netty.buffer.ReadOnlyByteBuf:46,1"
      Dst: "[io.netty.buffer.ByteBuf].unwrap()"
    - Src: "io.netty.buffer.ReadOnlyByteBuf:50,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.ReadOnlyByteBuf:50,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.buffer.ReadOnlyByteBuf:50,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.SwappedByteBuf].isDirect()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isDirect()"
    - "[io.netty.buffer.DuplicatedByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].isDirect()"
    - "[io.netty.buffer.CompositeByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBuf].isDirect()"
    - "[io.netty.buffer.SlicedByteBuf].isDirect()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedByteBuf].isDirect()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledDirectByteBuf:io.netty.buffer.PooledHeapByteBuf:io.netty.buffer.PooledUnsafeDirectByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.ByteBuf].isDirect()"
    functionUses: 15
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:103,1"
      Dst: "[io.netty.buffer.ByteBuf].isDirect()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    functionUses: 244
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:108,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 50
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:113,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    functionUses: 127
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:119,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    functionUses: 50
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:124,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setIndex(int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setIndex(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.ByteBuf].setIndex(int,int)"
    functionUses: 14
    ICount: 6
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:130,1"
      Dst: "[io.netty.buffer.ByteBuf].setIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 427
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:136,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    functionUses: 49
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:141,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].maxWritableBytes()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].maxWritableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].maxWritableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].maxWritableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].maxWritableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].maxWritableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].maxWritableBytes()"
    - "[io.netty.buffer.ByteBuf].maxWritableBytes()"
    functionUses: 4
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:146,1"
      Dst: "[io.netty.buffer.ByteBuf].maxWritableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].maxFastWritableBytes()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].maxFastWritableBytes()"
    - "[io.netty.buffer.PooledByteBuf].maxFastWritableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].maxFastWritableBytes()"
    - "[io.netty.buffer.ByteBuf].maxFastWritableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].maxFastWritableBytes()"
    functionUses: 3
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:151,1"
      Dst: "[io.netty.buffer.ByteBuf].maxFastWritableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].isReadable()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    functionUses: 106
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:156,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].isReadable(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable(int)"
    - "[io.netty.buffer.WrappedByteBuf].isReadable(int)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable(int)"
    - "[io.netty.buffer.AbstractByteBuf].isReadable(int)"
    - "[io.netty.buffer.EmptyByteBuf].isReadable(int)"
    - "[io.netty.buffer.ByteBuf].isReadable(int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:161,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].isWritable()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].isWritable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isWritable()"
    - "[io.netty.buffer.ReadOnlyByteBuf].isWritable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isWritable()"
    - "[io.netty.buffer.WrappedByteBuf].isWritable()"
    - "[io.netty.buffer.SwappedByteBuf].isWritable()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isWritable()"
    - "[io.netty.buffer.AbstractByteBuf].isWritable()"
    - "[io.netty.buffer.EmptyByteBuf].isWritable()"
    - "[io.netty.buffer.ByteBuf].isWritable()"
    functionUses: 7
    ICount: 4
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:166,1"
      Dst: "[io.netty.buffer.ByteBuf].isWritable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].isWritable(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].isWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isWritable(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].isWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].isWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].isWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].isWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].isWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].isWritable(int)"
    - "[io.netty.buffer.ByteBuf].isWritable(int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:171,1"
      Dst: "[io.netty.buffer.ByteBuf].isWritable(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].clear()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].clear()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].clear()"
    - "[io.netty.buffer.WrappedByteBuf].clear()"
    - "[io.netty.buffer.SwappedByteBuf].clear()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].clear()"
    - "[io.netty.buffer.EmptyByteBuf].clear()"
    - "[io.netty.buffer.AbstractByteBuf].clear()"
    - "[io.netty.buffer.ByteBuf].clear()"
    functionUses: 9
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:176,1"
      Dst: "[io.netty.buffer.ByteBuf].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].markReaderIndex()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 184
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.CompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.SwappedByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedByteBuf].markReaderIndex()"
    - "[io.netty.buffer.EmptyByteBuf].markReaderIndex()"
    - "[io.netty.buffer.AbstractByteBuf].markReaderIndex()"
    - "[io.netty.buffer.ByteBuf].markReaderIndex()"
    functionUses: 11
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:182,1"
      Dst: "[io.netty.buffer.ByteBuf].markReaderIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].resetReaderIndex()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].resetReaderIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.AbstractByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.SwappedByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.CompositeByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.EmptyByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.ByteBuf].resetReaderIndex()"
    functionUses: 15
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:188,1"
      Dst: "[io.netty.buffer.ByteBuf].resetReaderIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].markWriterIndex()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].markWriterIndex()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:194,1"
      Dst: "[io.netty.buffer.ByteBuf].markWriterIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].resetWriterIndex()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].resetWriterIndex()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:200,1"
      Dst: "[io.netty.buffer.ByteBuf].resetWriterIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].discardReadBytes()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].discardReadBytes()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].discardReadBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].discardReadBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].discardReadBytes()"
    - "[io.netty.buffer.CompositeByteBuf].discardReadBytes()"
    - "[io.netty.buffer.ReadOnlyByteBuf].discardReadBytes()"
    - "[io.netty.buffer.AbstractByteBuf].discardReadBytes()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].discardReadBytes()"
    - "[io.netty.buffer.SwappedByteBuf].discardReadBytes()"
    - "[io.netty.buffer.WrappedByteBuf].discardReadBytes()"
    - "[io.netty.buffer.EmptyByteBuf].discardReadBytes()"
    - "[io.netty.buffer.ByteBuf].discardReadBytes()"
    functionUses: 4
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:206,1"
      Dst: "[io.netty.buffer.ByteBuf].discardReadBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].discardSomeReadBytes()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 214
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.SwappedByteBuf].discardSomeReadBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.CompositeByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.WrappedByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.EmptyByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.ByteBuf].discardSomeReadBytes()"
    functionUses: 3
    ICount: 4
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:212,1"
      Dst: "[io.netty.buffer.ByteBuf].discardSomeReadBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 217
    functionLinenumberEnd: 220
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    functionUses: 21
    ICount: 5
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:218,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].ensureWritable(int,boolean)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int,boolean)"
    functionUses: 4
    ICount: 6
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:224,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getBoolean(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].getBoolean(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:229,1"
      Dst: "[io.netty.buffer.ByteBuf].getBoolean(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 233
    functionLinenumberEnd: 235
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 133
    ICount: 5
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:234,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getUnsignedByte(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 240
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    functionUses: 37
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:239,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getShort(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 243
    functionLinenumberEnd: 245
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].getShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShort(int)"
    - "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    - "[io.netty.buffer.ByteBuf].getShort(int)"
    functionUses: 18
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:244,1"
      Dst: "[io.netty.buffer.ByteBuf].getShort(int)"
    - Src: "io.netty.buffer.SwappedByteBuf:244,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getShortLE(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 248
    functionLinenumberEnd: 250
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShortLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShortLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ByteBuf].getShortLE(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:249,1"
      Dst: "[io.netty.buffer.ByteBuf].getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getUnsignedShort(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 253
    functionLinenumberEnd: 255
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].getShort(int)"
    functionUses: 11
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:254,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getUnsignedShortLE(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].getShortLE(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:259,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getMedium(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 263
    functionLinenumberEnd: 265
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].getMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].getMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].getMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].getMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].getMedium(int)"
    - "[io.netty.buffer.ByteBufUtil].swapMedium(int)"
    - "[io.netty.buffer.ByteBuf].getMedium(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:264,1"
      Dst: "[io.netty.buffer.ByteBuf].getMedium(int)"
    - Src: "io.netty.buffer.SwappedByteBuf:264,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getMediumLE(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 268
    functionLinenumberEnd: 270
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getMediumLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.ByteBuf].getMediumLE(int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:269,1"
      Dst: "[io.netty.buffer.ByteBuf].getMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 273
    functionLinenumberEnd: 275
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].getMedium(int)"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:274,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].getMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 278
    functionLinenumberEnd: 280
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].getMediumLE(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:279,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].getMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 283
    functionLinenumberEnd: 285
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.SlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    - "[io.netty.buffer.ByteBuf].getInt(int)"
    functionUses: 23
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:284,1"
      Dst: "[io.netty.buffer.ByteBuf].getInt(int)"
    - Src: "io.netty.buffer.SwappedByteBuf:284,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getIntLE(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 288
    functionLinenumberEnd: 290
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getIntLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getIntLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getIntLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getIntLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ByteBuf].getIntLE(int)"
    functionUses: 12
    ICount: 5
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:289,1"
      Dst: "[io.netty.buffer.ByteBuf].getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getUnsignedInt(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 293
    functionLinenumberEnd: 295
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getInt(int)"
    functionUses: 7
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:294,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getUnsignedIntLE(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 298
    functionLinenumberEnd: 300
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].getIntLE(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:299,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getLong(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 303
    functionLinenumberEnd: 305
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLong(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLong(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLong(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    - "[io.netty.buffer.ByteBuf].getLong(int)"
    functionUses: 18
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:304,1"
      Dst: "[io.netty.buffer.ByteBuf].getLong(int)"
    - Src: "io.netty.buffer.SwappedByteBuf:304,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getLongLE(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 308
    functionLinenumberEnd: 310
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLongLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLongLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ByteBuf].getLongLE(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:309,1"
      Dst: "[io.netty.buffer.ByteBuf].getLongLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getChar(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "char"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].getShort(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:314,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getFloat(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "float"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    - "[java.lang.Float].intBitsToFloat(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:319,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    - Src: "io.netty.buffer.SwappedByteBuf:319,1"
      Dst: "[java.lang.Float].intBitsToFloat(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getDouble(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].getLong(int)"
    - "[java.lang.Double].longBitsToDouble(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:324,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].getLong(int)"
    - Src: "io.netty.buffer.SwappedByteBuf:324,1"
      Dst: "[java.lang.Double].longBitsToDouble(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:329,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:335,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 340
    functionLinenumberEnd: 343
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 12
    ICount: 8
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:341,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[])"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 346
    functionLinenumberEnd: 349
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AbstractByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    functionUses: 11
    ICount: 6
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:347,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 352
    functionLinenumberEnd: 355
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    functionUses: 13
    ICount: 8
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:353,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 358
    functionLinenumberEnd: 361
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionUses: 9
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:359,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 364
    functionLinenumberEnd: 367
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionUses: 7
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:365,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 370
    functionLinenumberEnd: 372
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionUses: 5
    ICount: 7
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:371,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:376,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].getCharSequence(int,int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].getCharSequence(int,int,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:381,1"
      Dst: "[io.netty.buffer.ByteBuf].getCharSequence(int,int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setBoolean(int,boolean)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].setBoolean(int,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:386,1"
      Dst: "[io.netty.buffer.ByteBuf].setBoolean(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setByte(int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 391
    functionLinenumberEnd: 394
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setByte(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ByteBuf].setByte(int,int)"
    functionUses: 63
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:392,1"
      Dst: "[io.netty.buffer.ByteBuf].setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setShort(int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 397
    functionLinenumberEnd: 400
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setShort(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    - "[io.netty.buffer.ByteBuf].setShort(int,int)"
    functionUses: 16
    ICount: 9
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:398,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    - Src: "io.netty.buffer.SwappedByteBuf:398,1"
      Dst: "[io.netty.buffer.ByteBuf].setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 403
    functionLinenumberEnd: 406
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].setShortLE(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShortLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.ByteBuf].setShortLE(int,int)"
    functionUses: 7
    ICount: 8
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:404,1"
      Dst: "[io.netty.buffer.ByteBuf].setShortLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 409
    functionLinenumberEnd: 412
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setMedium(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.ByteBufUtil].swapMedium(int)"
    - "[io.netty.buffer.ByteBuf].setMedium(int,int)"
    functionUses: 9
    ICount: 7
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:410,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapMedium(int)"
    - Src: "io.netty.buffer.SwappedByteBuf:410,1"
      Dst: "[io.netty.buffer.ByteBuf].setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 415
    functionLinenumberEnd: 418
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ByteBuf].setMediumLE(int,int)"
    functionUses: 8
    ICount: 6
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:416,1"
      Dst: "[io.netty.buffer.ByteBuf].setMediumLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setInt(int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 421
    functionLinenumberEnd: 424
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setInt(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    - "[io.netty.buffer.ByteBuf].setInt(int,int)"
    functionUses: 24
    ICount: 7
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:422,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    - Src: "io.netty.buffer.SwappedByteBuf:422,1"
      Dst: "[io.netty.buffer.ByteBuf].setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 427
    functionLinenumberEnd: 430
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setIntLE(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ByteBuf].setIntLE(int,int)"
    functionUses: 10
    ICount: 6
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:428,1"
      Dst: "[io.netty.buffer.ByteBuf].setIntLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setLong(int,long)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 433
    functionLinenumberEnd: 436
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setLong(int,long)"
    - "[io.netty.buffer.DuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf].setLong(int,long)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.EmptyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    - "[io.netty.buffer.ByteBuf].setLong(int,long)"
    functionUses: 12
    ICount: 7
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:434,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    - Src: "io.netty.buffer.SwappedByteBuf:434,1"
      Dst: "[io.netty.buffer.ByteBuf].setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].setLongLE(int,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:440,1"
      Dst: "[io.netty.buffer.ByteBuf].setLongLE(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setChar(int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].setShort(int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:446,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setFloat(int,float)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Float].floatToRawIntBits(float)"
    - "[io.netty.buffer.SwappedByteBuf].setInt(int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:452,1"
      Dst: "[java.lang.Float].floatToRawIntBits(float)"
    - Src: "io.netty.buffer.SwappedByteBuf:452,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setDouble(int,double)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].doubleToRawLongBits(double)"
    - "[io.netty.buffer.SwappedByteBuf].setLong(int,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:458,1"
      Dst: "[java.lang.Double].doubleToRawLongBits(double)"
    - Src: "io.netty.buffer.SwappedByteBuf:458,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:464,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:470,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 475
    functionLinenumberEnd: 478
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 15
    ICount: 8
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:476,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setBytes(int,byte[])"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].setBytes(int,byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:482,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 487
    functionLinenumberEnd: 490
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,byte[],int,int)"
    functionUses: 8
    ICount: 8
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:488,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 493
    functionLinenumberEnd: 496
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionUses: 5
    ICount: 6
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:494,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 499
    functionLinenumberEnd: 501
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.io.InputStream,int)"
    functionUses: 5
    ICount: 7
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:500,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 504
    functionLinenumberEnd: 506
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionUses: 5
    ICount: 7
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:505,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 509
    functionLinenumberEnd: 511
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionUses: 5
    ICount: 8
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:510,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setZero(int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 514
    functionLinenumberEnd: 517
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf].setZero(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setZero(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setZero(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setZero(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setZero(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setZero(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setZero(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setZero(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setZero(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setZero(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setZero(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setZero(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setZero(int,int)"
    - "[io.netty.buffer.ByteBuf].setZero(int,int)"
    functionUses: 3
    ICount: 6
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:515,1"
      Dst: "[io.netty.buffer.ByteBuf].setZero(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 520
    functionLinenumberEnd: 522
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    functionUses: 3
    ICount: 7
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:521,1"
      Dst: "[io.netty.buffer.ByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readBoolean()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readBoolean()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:526,1"
      Dst: "[io.netty.buffer.ByteBuf].readBoolean()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readByte()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 530
    functionLinenumberEnd: 532
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    functionUses: 83
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:531,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 535
    functionLinenumberEnd: 537
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    functionUses: 39
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:536,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readShort()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 540
    functionLinenumberEnd: 542
    functionDepth: 1
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readShort()"
    - "[io.netty.buffer.EmptyByteBuf].readShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readShort()"
    - "[io.netty.buffer.SwappedByteBuf].readShort()"
    - "[io.netty.buffer.WrappedByteBuf].readShort()"
    - "[io.netty.buffer.AbstractByteBuf].readShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readShort()"
    - "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    - "[io.netty.buffer.ByteBuf].readShort()"
    functionUses: 9
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:541,1"
      Dst: "[io.netty.buffer.ByteBuf].readShort()"
    - Src: "io.netty.buffer.SwappedByteBuf:541,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readShortLE()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 545
    functionLinenumberEnd: 547
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readShortLE()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readShortLE()"
    - "[io.netty.buffer.WrappedByteBuf].readShortLE()"
    - "[io.netty.buffer.SwappedByteBuf].readShortLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readShortLE()"
    - "[io.netty.buffer.EmptyByteBuf].readShortLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readShortLE()"
    - "[io.netty.buffer.AbstractByteBuf].readShortLE()"
    - "[io.netty.buffer.ByteBuf].readShortLE()"
    functionUses: 4
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:546,1"
      Dst: "[io.netty.buffer.ByteBuf].readShortLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readUnsignedShort()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 550
    functionLinenumberEnd: 552
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readShort()"
    functionUses: 42
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:551,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].readShort()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readUnsignedShortLE()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 555
    functionLinenumberEnd: 557
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readShortLE()"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:556,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].readShortLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readMedium()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 560
    functionLinenumberEnd: 562
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].readMedium()"
    - "[io.netty.buffer.SwappedByteBuf].readMedium()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readMedium()"
    - "[io.netty.buffer.AbstractByteBuf].readMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readMedium()"
    - "[io.netty.buffer.EmptyByteBuf].readMedium()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readMedium()"
    - "[io.netty.buffer.ByteBufUtil].swapMedium(int)"
    - "[io.netty.buffer.ByteBuf].readMedium()"
    functionUses: 4
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:561,1"
      Dst: "[io.netty.buffer.ByteBuf].readMedium()"
    - Src: "io.netty.buffer.SwappedByteBuf:561,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readMediumLE()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 565
    functionLinenumberEnd: 567
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readMediumLE()"
    - "[io.netty.buffer.AbstractByteBuf].readMediumLE()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readMediumLE()"
    - "[io.netty.buffer.WrappedByteBuf].readMediumLE()"
    - "[io.netty.buffer.EmptyByteBuf].readMediumLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readMediumLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readMediumLE()"
    - "[io.netty.buffer.SwappedByteBuf].readMediumLE()"
    - "[io.netty.buffer.ByteBuf].readMediumLE()"
    functionUses: 4
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:566,1"
      Dst: "[io.netty.buffer.ByteBuf].readMediumLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readUnsignedMedium()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 570
    functionLinenumberEnd: 572
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readMedium()"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:571,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].readMedium()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readUnsignedMediumLE()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 575
    functionLinenumberEnd: 577
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readMediumLE()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:576,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].readMediumLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readInt()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 580
    functionLinenumberEnd: 582
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readInt()"
    - "[io.netty.buffer.EmptyByteBuf].readInt()"
    - "[io.netty.buffer.AbstractByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readInt()"
    - "[io.netty.buffer.WrappedByteBuf].readInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readInt()"
    - "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    - "[io.netty.buffer.ByteBuf].readInt()"
    functionUses: 20
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:581,1"
      Dst: "[io.netty.buffer.ByteBuf].readInt()"
    - Src: "io.netty.buffer.SwappedByteBuf:581,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readIntLE()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 585
    functionLinenumberEnd: 587
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readIntLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readIntLE()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readIntLE()"
    - "[io.netty.buffer.AbstractByteBuf].readIntLE()"
    - "[io.netty.buffer.EmptyByteBuf].readIntLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readIntLE()"
    - "[io.netty.buffer.WrappedByteBuf].readIntLE()"
    - "[io.netty.buffer.SwappedByteBuf].readIntLE()"
    - "[io.netty.buffer.ByteBuf].readIntLE()"
    functionUses: 7
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:586,1"
      Dst: "[io.netty.buffer.ByteBuf].readIntLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readUnsignedInt()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 590
    functionLinenumberEnd: 592
    functionDepth: 2
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readInt()"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:591,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].readInt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readUnsignedIntLE()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readIntLE()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:596,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].readIntLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readLong()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 600
    functionLinenumberEnd: 602
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readLong()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readLong()"
    - "[io.netty.buffer.WrappedByteBuf].readLong()"
    - "[io.netty.buffer.SwappedByteBuf].readLong()"
    - "[io.netty.buffer.EmptyByteBuf].readLong()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readLong()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readLong()"
    - "[io.netty.buffer.AbstractByteBuf].readLong()"
    - "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    - "[io.netty.buffer.ByteBuf].readLong()"
    functionUses: 9
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:601,1"
      Dst: "[io.netty.buffer.ByteBuf].readLong()"
    - Src: "io.netty.buffer.SwappedByteBuf:601,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readLongLE()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readLongLE()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:606,1"
      Dst: "[io.netty.buffer.ByteBuf].readLongLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readChar()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "char"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readShort()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:611,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].readShort()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readFloat()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readInt()"
    - "[java.lang.Float].intBitsToFloat(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:616,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].readInt()"
    - Src: "io.netty.buffer.SwappedByteBuf:616,1"
      Dst: "[java.lang.Float].intBitsToFloat(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readDouble()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readLong()"
    - "[java.lang.Double].longBitsToDouble(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:621,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].readLong()"
    - Src: "io.netty.buffer.SwappedByteBuf:621,1"
      Dst: "[java.lang.Double].longBitsToDouble(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readBytes(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 625
    functionLinenumberEnd: 627
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(int)"
    - "[io.netty.buffer.ByteBuf].readBytes(int)"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 5
    ICount: 7
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:626,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(int)"
    - Src: "io.netty.buffer.SwappedByteBuf:626,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].order()"
    - Src: "io.netty.buffer.SwappedByteBuf:626,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readSlice(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 630
    functionLinenumberEnd: 632
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].readSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readSlice(int)"
    - "[io.netty.buffer.ByteBuf].readSlice(int)"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 21
    ICount: 7
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:631,1"
      Dst: "[io.netty.buffer.ByteBuf].readSlice(int)"
    - Src: "io.netty.buffer.SwappedByteBuf:631,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 635
    functionLinenumberEnd: 637
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 40
    ICount: 7
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:636,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.buffer.SwappedByteBuf:636,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 640
    functionLinenumberEnd: 643
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    functionUses: 4
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:641,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 646
    functionLinenumberEnd: 649
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    functionUses: 14
    ICount: 6
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:647,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:653,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readBytes(byte[])"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 658
    functionLinenumberEnd: 661
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    functionUses: 12
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:659,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readBytes(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 664
    functionLinenumberEnd: 667
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].readBytes(byte[],int,int)"
    functionUses: 4
    ICount: 7
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:665,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readBytes(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 670
    functionLinenumberEnd: 673
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.ByteBuf].readBytes(java.nio.ByteBuffer)"
    functionUses: 3
    ICount: 5
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:671,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readBytes(java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 676
    functionLinenumberEnd: 679
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.ByteBuf].readBytes(java.io.OutputStream,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:677,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 682
    functionLinenumberEnd: 684
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.ByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    functionUses: 4
    ICount: 6
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:683,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readBytes(java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readBytes(java.nio.channels.FileChannel,long,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:688,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].readCharSequence(int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readCharSequence(int,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:693,1"
      Dst: "[io.netty.buffer.ByteBuf].readCharSequence(int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 697
    functionLinenumberEnd: 700
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 120
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:698,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeBoolean(boolean)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writeBoolean(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:704,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBoolean(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 709
    functionLinenumberEnd: 712
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    functionUses: 200
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:710,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 715
    functionLinenumberEnd: 718
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    functionUses: 96
    ICount: 8
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:716,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    - Src: "io.netty.buffer.SwappedByteBuf:716,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeShortLE(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writeShortLE(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:722,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeMedium(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 727
    functionLinenumberEnd: 730
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].swapMedium(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeMedium(int)"
    - "[io.netty.buffer.ByteBuf].writeMedium(int)"
    functionUses: 11
    ICount: 6
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:728,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapMedium(int)"
    - Src: "io.netty.buffer.SwappedByteBuf:728,1"
      Dst: "[io.netty.buffer.ByteBuf].writeMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeMediumLE(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 733
    functionLinenumberEnd: 736
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeMediumLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.ByteBuf].writeMediumLE(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:734,1"
      Dst: "[io.netty.buffer.ByteBuf].writeMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 739
    functionLinenumberEnd: 742
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    functionUses: 54
    ICount: 6
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:740,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    - Src: "io.netty.buffer.SwappedByteBuf:740,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeIntLE(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 745
    functionLinenumberEnd: 748
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].writeIntLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.ByteBuf].writeIntLE(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:746,1"
      Dst: "[io.netty.buffer.ByteBuf].writeIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeLong(long)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 751
    functionLinenumberEnd: 754
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    - "[io.netty.buffer.SwappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.CompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeLong(long)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeLong(long)"
    - "[io.netty.buffer.AbstractByteBuf].writeLong(long)"
    - "[io.netty.buffer.WrappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.EmptyByteBuf].writeLong(long)"
    - "[io.netty.buffer.ByteBuf].writeLong(long)"
    functionUses: 12
    ICount: 6
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:752,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    - Src: "io.netty.buffer.SwappedByteBuf:752,1"
      Dst: "[io.netty.buffer.ByteBuf].writeLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeLongLE(long)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writeLongLE(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:758,1"
      Dst: "[io.netty.buffer.ByteBuf].writeLongLE(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeChar(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 763
    functionLinenumberEnd: 766
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:764,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeFloat(float)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Float].floatToRawIntBits(float)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:770,1"
      Dst: "[java.lang.Float].floatToRawIntBits(float)"
    - Src: "io.netty.buffer.SwappedByteBuf:770,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeDouble(double)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].doubleToRawLongBits(double)"
    - "[io.netty.buffer.SwappedByteBuf].writeLong(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:776,1"
      Dst: "[java.lang.Double].doubleToRawLongBits(double)"
    - Src: "io.netty.buffer.SwappedByteBuf:776,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].writeLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 781
    functionLinenumberEnd: 784
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionUses: 42
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:782,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 787
    functionLinenumberEnd: 790
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    functionUses: 10
    ICount: 6
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:788,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 793
    functionLinenumberEnd: 796
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 29
    ICount: 7
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:794,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 799
    functionLinenumberEnd: 802
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    functionUses: 42
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:800,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 805
    functionLinenumberEnd: 808
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    functionUses: 13
    ICount: 7
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:806,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeBytes(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 811
    functionLinenumberEnd: 814
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.ByteBuf].writeBytes(java.nio.ByteBuffer)"
    functionUses: 7
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:812,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeBytes(java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 817
    functionLinenumberEnd: 819
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(java.io.InputStream,int)"
    functionUses: 4
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:818,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 822
    functionLinenumberEnd: 824
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:823,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 827
    functionLinenumberEnd: 829
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:828,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeZero(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 832
    functionLinenumberEnd: 835
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeZero(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeZero(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf].writeZero(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeZero(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeZero(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeZero(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeZero(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].writeZero(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].writeZero(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeZero(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeZero(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeZero(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].writeZero(int)"
    - "[io.netty.buffer.ByteBuf].writeZero(int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:833,1"
      Dst: "[io.netty.buffer.ByteBuf].writeZero(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 838
    functionLinenumberEnd: 840
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    functionUses: 24
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:839,1"
      Dst: "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].indexOf(int,int,byte)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 843
    functionLinenumberEnd: 845
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.AbstractByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.SwappedByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.WrappedByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.EmptyByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.ByteBuf].indexOf(int,int,byte)"
    functionUses: 7
    ICount: 7
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:844,1"
      Dst: "[io.netty.buffer.ByteBuf].indexOf(int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].bytesBefore(byte)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].bytesBefore(byte)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:849,1"
      Dst: "[io.netty.buffer.ByteBuf].bytesBefore(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].bytesBefore(int,byte)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 853
    functionLinenumberEnd: 855
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].bytesBefore(int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].bytesBefore(int,byte)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].bytesBefore(int,byte)"
    - "[io.netty.buffer.AbstractByteBuf].bytesBefore(int,byte)"
    - "[io.netty.buffer.SwappedByteBuf].bytesBefore(int,byte)"
    - "[io.netty.buffer.WrappedByteBuf].bytesBefore(int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].bytesBefore(int,byte)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].bytesBefore(int,byte)"
    - "[io.netty.buffer.ByteBuf].bytesBefore(int,byte)"
    functionUses: 3
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:854,1"
      Dst: "[io.netty.buffer.ByteBuf].bytesBefore(int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].bytesBefore(int,int,byte)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 858
    functionLinenumberEnd: 860
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.EmptyByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.WrappedByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.SwappedByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.ByteBuf].bytesBefore(int,int,byte)"
    functionUses: 4
    ICount: 7
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:859,1"
      Dst: "[io.netty.buffer.ByteBuf].bytesBefore(int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 863
    functionLinenumberEnd: 865
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    functionUses: 8
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:864,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 868
    functionLinenumberEnd: 870
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.DuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ReadOnlyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionUses: 17
    ICount: 7
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:869,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].forEachByteDesc(io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].forEachByteDesc(io.netty.util.ByteProcessor)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:874,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByteDesc(io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:879,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].copy()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:884,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.buffer.SwappedByteBuf:884,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].copy(int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 888
    functionLinenumberEnd: 890
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].copy(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].copy(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].copy(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].copy(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].copy(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].copy(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].copy(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.ByteBuf].copy(int,int)"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 8
    ICount: 8
    EdgeCount: 34
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:889,1"
      Dst: "[io.netty.buffer.ByteBuf].copy(int,int)"
    - Src: "io.netty.buffer.SwappedByteBuf:889,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].slice()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 893
    functionLinenumberEnd: 895
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice()"
    - "[io.netty.buffer.SwappedByteBuf].slice()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice()"
    - "[io.netty.buffer.AbstractByteBuf].slice()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice()"
    - "[io.netty.buffer.WrappedByteBuf].slice()"
    - "[io.netty.buffer.UnreleasableByteBuf].slice()"
    - "[io.netty.buffer.EmptyByteBuf].slice()"
    - "[io.netty.buffer.ByteBuf].slice()"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 8
    ICount: 6
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:894,1"
      Dst: "[io.netty.buffer.ByteBuf].slice()"
    - Src: "io.netty.buffer.SwappedByteBuf:894,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].retainedSlice()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 898
    functionLinenumberEnd: 900
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedSlice()"
    - "[io.netty.buffer.SwappedByteBuf].retainedSlice()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedSlice()"
    - "[io.netty.buffer.AbstractByteBuf].retainedSlice()"
    - "[io.netty.buffer.UnreleasableByteBuf].retainedSlice()"
    - "[io.netty.buffer.PooledByteBuf].retainedSlice()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedSlice()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].retainedSlice()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retainedSlice()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedSlice()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedSlice()"
    - "[io.netty.buffer.WrappedByteBuf].retainedSlice()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedSlice()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedSlice()"
    - "[io.netty.buffer.EmptyByteBuf].retainedSlice()"
    - "[io.netty.buffer.ByteBuf].retainedSlice()"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 5
    ICount: 6
    EdgeCount: 26
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:899,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedSlice()"
    - Src: "io.netty.buffer.SwappedByteBuf:899,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].slice(int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 903
    functionLinenumberEnd: 905
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].slice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].slice(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].slice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].slice(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.ByteBuf].slice(int,int)"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 19
    ICount: 8
    EdgeCount: 30
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:904,1"
      Dst: "[io.netty.buffer.ByteBuf].slice(int,int)"
    - Src: "io.netty.buffer.SwappedByteBuf:904,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].retainedSlice(int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 908
    functionLinenumberEnd: 910
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedSlice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 9
    ICount: 8
    EdgeCount: 27
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:909,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    - Src: "io.netty.buffer.SwappedByteBuf:909,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].duplicate()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 913
    functionLinenumberEnd: 915
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].duplicate()"
    - "[io.netty.buffer.UnreleasableByteBuf].duplicate()"
    - "[io.netty.buffer.ReadOnlyByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].duplicate()"
    - "[io.netty.buffer.PooledSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].duplicate()"
    - "[io.netty.buffer.SlicedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractByteBuf].duplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].duplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.EmptyByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 22
    ICount: 6
    EdgeCount: 29
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:914,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.buffer.SwappedByteBuf:914,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].retainedDuplicate()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 918
    functionLinenumberEnd: 920
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SwappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.UnreleasableByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.SwappedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledSlicedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.WrappedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.UnreleasableByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.EmptyByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 8
    ICount: 6
    EdgeCount: 27
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:919,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.buffer.SwappedByteBuf:919,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 923
    functionLinenumberEnd: 925
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    functionUses: 42
    ICount: 4
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:924,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].nioBuffer()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 928
    functionLinenumberEnd: 930
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer()"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer()"
    - "[io.netty.buffer.AbstractByteBuf].nioBuffer()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer()"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer()"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer()"
    - "[io.netty.buffer.ByteBuf].nioBuffer()"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    functionUses: 9
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:929,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer()"
    - Src: "io.netty.buffer.SwappedByteBuf:929,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].nioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 933
    functionLinenumberEnd: 935
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].nioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    functionUses: 17
    ICount: 8
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:934,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - Src: "io.netty.buffer.SwappedByteBuf:934,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 938
    functionLinenumberEnd: 940
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer(int,int)"
    functionUses: 35
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:939,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].nioBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].nioBuffers()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 943
    functionLinenumberEnd: 949
    functionDepth: 0
    returnType: "java.nio.ByteBuffer[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].nioBuffers()"
    - "[io.netty.buffer.AbstractByteBuf].nioBuffers()"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffers()"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffers()"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers()"
    - "[io.netty.buffer.ByteBuf].nioBuffers()"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    functionUses: 7
    ICount: 13
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.buffer.SwappedByteBuf:945"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SwappedByteBuf:947"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:944,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers()"
    - Src: "io.netty.buffer.SwappedByteBuf:946,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.SwappedByteBuf].nioBuffers(int,int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 952
    functionLinenumberEnd: 958
    functionDepth: 0
    returnType: "java.nio.ByteBuffer[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffers(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    functionUses: 16
    ICount: 15
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.buffer.SwappedByteBuf:954"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SwappedByteBuf:956"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:953,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - Src: "io.netty.buffer.SwappedByteBuf:955,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.SwappedByteBuf].hasArray()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 961
    functionLinenumberEnd: 963
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.EmptyByteBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    functionUses: 41
    ICount: 4
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:962,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].array()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 966
    functionLinenumberEnd: 968
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.ByteBuf].array()"
    functionUses: 52
    ICount: 4
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:967,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 971
    functionLinenumberEnd: 973
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    functionUses: 52
    ICount: 4
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:972,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 976
    functionLinenumberEnd: 978
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    functionUses: 36
    ICount: 4
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:977,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].isContiguous()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 981
    functionLinenumberEnd: 983
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isContiguous()"
    - "[io.netty.buffer.ByteBuf].isContiguous()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].isContiguous()"
    - "[io.netty.buffer.SwappedByteBuf].isContiguous()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].isContiguous()"
    - "[io.netty.buffer.EmptyByteBuf].isContiguous()"
    - "[io.netty.buffer.WrappedByteBuf].isContiguous()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isContiguous()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].isContiguous()"
    - "[io.netty.buffer.PooledByteBuf].isContiguous()"
    functionUses: 4
    ICount: 4
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:982,1"
      Dst: "[io.netty.buffer.ByteBuf].isContiguous()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 986
    functionLinenumberEnd: 988
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    functionUses: 33
    ICount: 4
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:987,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].toString(java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 991
    functionLinenumberEnd: 993
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    functionUses: 19
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:992,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 996
    functionLinenumberEnd: 998
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    functionUses: 14
    ICount: 7
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:997,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].refCnt()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 1001
    functionLinenumberEnd: 1003
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.buffer.EmptyByteBuf].refCnt()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 25
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:1002,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].isAccessible()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 1006
    functionLinenumberEnd: 1008
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].isAccessible()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].isAccessible()"
    - "[io.netty.buffer.SwappedByteBuf].isAccessible()"
    - "[io.netty.buffer.ByteBuf].isAccessible()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].isAccessible()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isAccessible()"
    - "[io.netty.buffer.CompositeByteBuf].isAccessible()"
    functionUses: 8
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:1007,1"
      Dst: "[io.netty.buffer.ByteBuf].isAccessible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].retain()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 1011
    functionLinenumberEnd: 1014
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 63
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:1012,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].retain(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:1018,1"
      Dst: "[io.netty.buffer.ByteBuf].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].touch()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 1023
    functionLinenumberEnd: 1026
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.SwappedByteBuf].touch()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch()"
    - "[io.netty.buffer.EmptyByteBuf].touch()"
    - "[io.netty.buffer.WrappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    - "[io.netty.buffer.UnreleasableByteBuf].touch()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.CompositeByteBuf].touch()"
    - "[io.netty.buffer.ByteBuf].touch()"
    functionUses: 20
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:1024,1"
      Dst: "[io.netty.buffer.ByteBuf].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 1029
    functionLinenumberEnd: 1032
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 27
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:1030,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].release()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 1035
    functionLinenumberEnd: 1037
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 346
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:1036,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].release(int)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 1040
    functionLinenumberEnd: 1042
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release(int)"
    - "[io.netty.buffer.WrappedByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release(int)"
    - "[io.netty.buffer.EmptyByteBuf].release(int)"
    - "[io.netty.buffer.SwappedByteBuf].release(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].release(int)"
    - "[io.netty.util.ReferenceCounted].release(int)"
    functionUses: 18
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:1041,1"
      Dst: "[io.netty.util.ReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].hashCode()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 1045
    functionLinenumberEnd: 1047
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].hashCode()"
    - "[io.netty.buffer.SwappedByteBuf].hashCode()"
    - "[io.netty.buffer.AbstractByteBuf].hashCode()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hashCode()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hashCode()"
    - "[io.netty.buffer.EmptyByteBuf].hashCode()"
    - "[io.netty.buffer.ByteBuf].hashCode()"
    functionUses: 13
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:1046,1"
      Dst: "[io.netty.buffer.ByteBuf].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].equals(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 1050
    functionLinenumberEnd: 1055
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].equals(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 18
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.SwappedByteBuf:1051"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SwappedByteBuf:1054"
        BranchSideFuncs:
        - "equals(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.buffer.SwappedByteBuf:1053"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:1052,1"
      Dst: "[io.netty.buffer.ByteBufUtil].equals(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].equals(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 406
    functionLinenumberEnd: 415
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufUtil].equals(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    functionUses: 3
    ICount: 12
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:407"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:410"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:409"
        BranchSideFuncs:
        - "readableBytes()"
    - Branch String: "io.netty.buffer.ByteBufUtil:411"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:414"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:413"
        BranchSideFuncs:
        - "equals(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf,int,int)"
        - "readerIndex()"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:410,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.ByteBufUtil:414,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.ByteBufUtil:414,1"
      Dst: "[io.netty.buffer.ByteBufUtil].equals(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].compare(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:1059,1"
      Dst: "[io.netty.buffer.ByteBufUtil].compare(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].compare(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 421
    functionLinenumberEnd: 461
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.SwappedByteBuf].order()"
    - "[io.netty.buffer.EmptyByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.ByteBufUtil].compareUintBigEndian(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    - "[io.netty.buffer.ByteBufUtil].compareUintLittleEndian(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    - "[io.netty.buffer.ByteBufUtil].compareUintBigEndianA(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    - "[io.netty.buffer.ByteBufUtil].compareUintBigEndianB(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    - "[java.lang.Math].max(long,long)"
    - "[java.lang.Math].min(long,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].order()"
    - "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    functionUses: 1
    ICount: 59
    EdgeCount: 95
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:422"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:425"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:424"
        BranchSideFuncs:
        - "min(int,int)"
        - "readerIndex()"
        - "readableBytes()"
    - Branch String: "io.netty.buffer.ByteBufUtil:433"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:453"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:452"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:434"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:438"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:442"
        BranchSideFuncs:
        - "compareUintBigEndian(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:441"
        BranchSideFuncs:
        - "compareUintBigEndianA(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:439"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:440"
        BranchSideFuncs:
        - "compareUintLittleEndian(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:439"
        BranchSideFuncs:
        - "compareUintLittleEndian(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:442"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:443"
        BranchSideFuncs:
        - "compareUintBigEndianB(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:442"
        BranchSideFuncs:
        - "compareUintBigEndianB(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:445"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:448"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:453"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:460"
        BranchSideFuncs:
        - "getUnsignedByte(int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:459"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:455"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:453"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:452"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:425,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.ByteBufUtil:427,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:430,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.ByteBufUtil:434,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    - Src: "io.netty.buffer.ByteBufUtil:439,1"
      Dst: "[io.netty.buffer.ByteBufUtil].compareUintBigEndian(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:440,1"
      Dst: "[io.netty.buffer.ByteBufUtil].compareUintLittleEndian(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:442,1"
      Dst: "[io.netty.buffer.ByteBufUtil].compareUintBigEndianA(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:443,1"
      Dst: "[io.netty.buffer.ByteBufUtil].compareUintBigEndianB(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:447,1"
      Dst: "[java.lang.Math].max(long,long)"
    - Src: "io.netty.buffer.ByteBufUtil:447,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "io.netty.buffer.ByteBufUtil:454,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 24
    CyclomaticComplexity: 7
  - functionName: "[io.netty.buffer.ByteBufUtil].compareUintBigEndian(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 464
    functionLinenumberEnd: 472
    functionDepth: 0
    returnType: "long"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedInt(int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:465"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:471"
        BranchSideFuncs:
        - "getUnsignedInt(int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:470"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:467"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:465"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:464"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:466,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].compareUintLittleEndian(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 475
    functionLinenumberEnd: 483
    functionDepth: 1
    returnType: "long"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.ByteBufUtil].uintFromLE(long)"
    - "[io.netty.buffer.ByteBuf].getUnsignedIntLE(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:476"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:482"
        BranchSideFuncs:
        - "getUnsignedIntLE(int)"
        - "uintFromLE(long)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:481"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:478"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:476"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:475"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:477,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedIntLE(int)"
    - Src: "io.netty.buffer.ByteBufUtil:477,1"
      Dst: "[io.netty.buffer.ByteBufUtil].uintFromLE(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].uintFromLE(long)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 511
    functionLinenumberEnd: 513
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Long].reverseBytes(long)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:512,1"
      Dst: "[java.lang.Long].reverseBytes(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].compareUintBigEndianA(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 486
    functionLinenumberEnd: 496
    functionDepth: 1
    returnType: "long"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.ByteBufUtil].uintFromLE(long)"
    - "[io.netty.buffer.ByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedIntLE(int)"
    functionUses: 1
    ICount: 18
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:487"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:495"
        BranchSideFuncs:
        - "getUnsignedInt(int)"
        - "getUnsignedIntLE(int)"
        - "uintFromLE(long)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:494"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:491"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:487"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:486"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:488,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedInt(int)"
    - Src: "io.netty.buffer.ByteBufUtil:489,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedIntLE(int)"
    - Src: "io.netty.buffer.ByteBufUtil:489,1"
      Dst: "[io.netty.buffer.ByteBufUtil].uintFromLE(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].compareUintBigEndianB(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,int,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 499
    functionLinenumberEnd: 509
    functionDepth: 1
    returnType: "long"
    argCount: 5
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.ByteBufUtil].uintFromLE(long)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedInt(int)"
    functionUses: 1
    ICount: 18
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:500"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:508"
        BranchSideFuncs:
        - "getUnsignedInt(int)"
        - "getUnsignedIntLE(int)"
        - "uintFromLE(long)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:507"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:504"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:500"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:499"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:501,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedIntLE(int)"
    - Src: "io.netty.buffer.ByteBufUtil:501,1"
      Dst: "[io.netty.buffer.ByteBufUtil].uintFromLE(long)"
    - Src: "io.netty.buffer.ByteBufUtil:502,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.SwappedByteBuf].toString()"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: 1063
    functionLinenumberEnd: 1065
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 21
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:1064,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.SwappedByteBuf:1064,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.SwappedByteBuf:1064,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.buffer.SwappedByteBuf:1064,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.buffer.SwappedByteBuf:1064,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SwappedByteBuf].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.SwappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SwappedByteBuf:37,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool$2].<init>(io.netty.channel.pool.FixedChannelPool)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.channel.pool.FixedChannelPool$1)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$2:200,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].<init>(io.netty.channel.pool.FixedChannelPool,io.netty.channel.pool.FixedChannelPool$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool$2].onTimeout(io.netty.channel.pool.FixedChannelPool$AcquireTask)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$2"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 209
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool$AcquireTask"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.FixedChannelPool$AcquireListener].acquired()"
    - "[io.netty.channel.pool.FixedChannelPool].access$201(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$2:205,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool$AcquireListener].acquired()"
    - Src: "io.netty.channel.pool.FixedChannelPool$2:207,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].access$201(io.netty.channel.pool.FixedChannelPool,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator$1].<init>(io.netty.buffer.PooledByteBufAllocator)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator$1"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PooledByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator$1:60,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator$1"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].trimCurrentThreadCache()"
    functionUses: 49
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator$1:63,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].trimCurrentThreadCache()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].trimCurrentThreadCache()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 740
    functionLinenumberEnd: 747
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].getIfExists()"
    - "[io.netty.buffer.PoolThreadCache].trim()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:742"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:746"
        BranchSideFuncs:
        - "trim()"
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:745"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:741,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].getIfExists()"
    - Src: "io.netty.buffer.PooledByteBufAllocator:743,1"
      Dst: "[io.netty.buffer.PoolThreadCache].trim()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZlibCodecFactory].isSupportingWindowSizeAndMemLevel()"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibCodecFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibEncoder(int)"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibCodecFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.handler.codec.compression.ZlibEncoder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.handler.codec.compression.JZlibEncoder].<init>(int)"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:56"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:55"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:58"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:55,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:56,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(int)"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:58,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:69,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int,int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:96,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:103,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibEncoder(io.netty.handler.codec.compression.ZlibWrapper)"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibCodecFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.handler.codec.compression.ZlibEncoder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.handler.codec.compression.JZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper)"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:64"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:63"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:66"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:63,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:64,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper)"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:66,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:80,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:113,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibEncoder(io.netty.handler.codec.compression.ZlibWrapper,int)"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibCodecFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.handler.codec.compression.ZlibEncoder"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.handler.codec.compression.JZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:71"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:74"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:71,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:72,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:74,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibEncoder(byte[])"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibCodecFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.handler.codec.compression.ZlibEncoder"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.handler.codec.compression.JZlibEncoder].<init>(byte[])"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:88"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:89"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:88"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:88"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:91"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:90"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:88,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:89,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(byte[])"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:91,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(byte[])"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JZlibEncoder].<init>(int,byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:155,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(int,byte[])"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JZlibEncoder].<init>(int,int,int,byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:174,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(int,int,int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(int,int,int,byte[])"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ZlibEncoder].<init>()"
    - "[com.jcraft.jzlib.Deflater].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[com.jcraft.jzlib.Deflater].deflateInit(int,int,int,com.jcraft.jzlib.JZlib$WrapperType)"
    - "[io.netty.handler.codec.compression.ZlibUtil].fail(com.jcraft.jzlib.Deflater,java.lang.String,int)"
    - "[com.jcraft.jzlib.Deflater].deflateSetDictionary(byte[],int)"
    - "[io.netty.handler.codec.compression.ZlibUtil].wrapperOverhead(io.netty.handler.codec.compression.ZlibWrapper)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JZlibEncoder:212"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:215"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:214"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JZlibEncoder:216"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:221"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:202,1"
      Dst: "[io.netty.handler.codec.compression.ZlibEncoder].<init>()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:39,1"
      Dst: "[com.jcraft.jzlib.Deflater].<init>()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:203,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:206,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:209,1"
      Dst: "[com.jcraft.jzlib.Deflater].deflateInit(int,int,int,com.jcraft.jzlib.JZlib$WrapperType)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:213,1"
      Dst: "[io.netty.handler.codec.compression.ZlibUtil].fail(com.jcraft.jzlib.Deflater,java.lang.String,int)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:215,1"
      Dst: "[com.jcraft.jzlib.Deflater].deflateSetDictionary(byte[],int)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:221,1"
      Dst: "[io.netty.handler.codec.compression.ZlibUtil].wrapperOverhead(io.netty.handler.codec.compression.ZlibWrapper)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(byte[])"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(int,byte[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:152,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(int,byte[])"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ZlibEncoder].<init>()"
    - "[java.util.zip.CRC32].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.zip.Deflater].<init>(int)"
    - "[java.util.zip.Deflater].setDictionary(byte[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:169,1"
      Dst: "[io.netty.handler.codec.compression.ZlibEncoder].<init>()"
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:62,1"
      Dst: "[java.util.zip.CRC32].<init>()"
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:170,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:171,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:174,1"
      Dst: "[java.util.zip.Deflater].<init>(int)"
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder:175,1"
      Dst: "[java.util.zip.Deflater].setDictionary(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibEncoder(int,byte[])"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibCodecFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.handler.codec.compression.ZlibEncoder"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.handler.codec.compression.JZlibEncoder].<init>(int,byte[])"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(int,byte[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:97"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:96"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:99"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:96,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:97,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(int,byte[])"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:99,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibEncoder(int,int,int,byte[])"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibCodecFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.handler.codec.compression.ZlibEncoder"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.handler.codec.compression.JZlibEncoder].<init>(int,int,int,byte[])"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(int,byte[])"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:105"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:105"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:105"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:104,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:106,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(int,int,int,byte[])"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:108,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibEncoder].<init>(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibDecoder()"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibCodecFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.handler.codec.compression.ZlibDecoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.handler.codec.compression.JZlibDecoder].<init>()"
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:114"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:116"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:113,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:114,1"
      Dst: "[io.netty.handler.codec.compression.JZlibDecoder].<init>()"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:116,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.JZlibDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibDecoder:39,1"
      Dst: "[io.netty.handler.codec.compression.JZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:137,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZlibCodecFactory].newZlibDecoder(byte[])"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibCodecFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.handler.codec.compression.ZlibDecoder"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.handler.codec.compression.JZlibDecoder].<init>(byte[])"
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(byte[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:129"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:130"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:129"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.ZlibCodecFactory:129"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:132"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.ZlibCodecFactory:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:129,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:130,1"
      Dst: "[io.netty.handler.codec.compression.JZlibDecoder].<init>(byte[])"
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:132,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.JZlibDecoder].<init>(byte[])"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JZlibDecoder].<init>(byte[],int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibDecoder:93,1"
      Dst: "[io.netty.handler.codec.compression.JZlibDecoder].<init>(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibDecoder].<init>(byte[],int)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ZlibDecoder].<init>(int)"
    - "[com.jcraft.jzlib.Inflater].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[com.jcraft.jzlib.Inflater].inflateInit(com.jcraft.jzlib.JZlib$WrapperType)"
    - "[io.netty.handler.codec.compression.ZlibUtil].fail(com.jcraft.jzlib.Inflater,java.lang.String,int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JZlibDecoder:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibDecoder:115"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JZlibDecoder:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibDecoder:108,1"
      Dst: "[io.netty.handler.codec.compression.ZlibDecoder].<init>(int)"
    - Src: "io.netty.handler.codec.compression.JZlibDecoder:29,1"
      Dst: "[com.jcraft.jzlib.Inflater].<init>()"
    - Src: "io.netty.handler.codec.compression.JZlibDecoder:109,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JZlibDecoder:111,1"
      Dst: "[com.jcraft.jzlib.Inflater].inflateInit(com.jcraft.jzlib.JZlib$WrapperType)"
    - Src: "io.netty.handler.codec.compression.JZlibDecoder:113,1"
      Dst: "[io.netty.handler.codec.compression.ZlibUtil].fail(com.jcraft.jzlib.Inflater,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(byte[])"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:90,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZlibCodecFactory].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibCodecFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibCodecFactory:136,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].clearCache()"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].clear()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:127,1"
      Dst: "[java.util.Map].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].isJ2OCached(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:135,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:135,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].isO2JCached(java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:143"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:146"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:142,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:146,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].toJavaUncached(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.CipherSuiteConverter].toJavaUncached0(java.lang.String,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:339,1"
      Dst: "[io.netty.handler.ssl.CipherSuiteConverter].toJavaUncached0(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].convertToCipherStrings(java.lang.Iterable<String>,java.lang.StringBuilder,java.lang.StringBuilder,boolean)"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: 460
    functionLinenumberEnd: 494
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.Iterable<String>"
    - "java.lang.StringBuilder"
    - "java.lang.StringBuilder"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].iterator()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.buffer.CompositeByteBuf].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.channel.pool.AbstractChannelPoolMap].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.channel.DefaultChannelPipeline].iterator()"
    - "[io.netty.channel.group.ChannelGroupException].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$1].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$1].iterator()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$1].iterator()"
    - "[io.netty.handler.codec.EmptyHeaders].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.buffer.PoolChunkList].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.ssl.CipherSuiteConverter].toOpenSsl(java.lang.String,boolean)"
    - "[io.netty.handler.ssl.OpenSsl].isCipherSuiteAvailable(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.ssl.SslUtils].isTLSv13Cipher(java.lang.String)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 56
    EdgeCount: 224
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:461"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:484"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:483"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:462"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:466"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:465"
        BranchSideFuncs:
        - "toOpenSsl(java.lang.String,boolean)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:467"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:471"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:470"
        BranchSideFuncs:
        - "isCipherSuiteAvailable(java.lang.String)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:471"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:475"
        BranchSideFuncs:
        - "toString()"
        - "<init>()"
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:474"
        BranchSideFuncs:
        - "isTLSv13Cipher(java.lang.String)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:475"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:476"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:475"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:475"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:479"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:478"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "append(char)"
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:484"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:487"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:486"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:484"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:487"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:486"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:487"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:490"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:489"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.CipherSuiteConverter:490"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:493"
        BranchSideFuncs:
        - "length()"
        - "setLength(int)"
      - BranchSide: "io.netty.handler.ssl.CipherSuiteConverter:492"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:461,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:461,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:461,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:466,1"
      Dst: "[io.netty.handler.ssl.CipherSuiteConverter].toOpenSsl(java.lang.String,boolean)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:471,1"
      Dst: "[io.netty.handler.ssl.OpenSsl].isCipherSuiteAvailable(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:472,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:472,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:472,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:472,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:472,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:475,1"
      Dst: "[io.netty.handler.ssl.SslUtils].isTLSv13Cipher(java.lang.String)"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:484,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:488,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.ssl.CipherSuiteConverter].<init>()"
    functionSourceFile: "io.netty.handler.ssl.CipherSuiteConverter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.CipherSuiteConverter:495,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoop$1].<init>(io.netty.channel.ThreadPerChannelEventLoop)"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoop$1"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ThreadPerChannelEventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoop$1:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoop$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoop$1"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 46
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.CompleteChannelFuture:io.netty.channel.DefaultChannelProgressivePromise:io.netty.channel.DefaultChannelPromise:io.netty.channel.ThreadPerChannelEventLoop:io.netty.channel.VoidChannelPromise].access$002(io.netty.channel.ThreadPerChannelEventLoop,io.netty.channel.Channel)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.ThreadPerChannelEventLoop].deregister()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.channel.ChannelFuture].channel()"
    - "[io.netty.channel.ThreadPerChannelEventLoop].access$002(io.netty.channel.ThreadPerChannelEventLoop,io.netty.channel.Channel)"
    functionUses: 1
    ICount: 11
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoop$1:40"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoop$1:43"
        BranchSideFuncs:
        - "access$002(io.netty.channel.ThreadPerChannelEventLoop,io.netty.channel.Channel)"
        - "channel()"
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoop$1:42"
        BranchSideFuncs:
        - "deregister()"
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoop$1:40,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoop$1:41,1"
      Dst: "[io.netty.channel.ChannelFuture].channel()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoop$1:41,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoop].access$002(io.netty.channel.ThreadPerChannelEventLoop,io.netty.channel.Channel)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoop$1:43,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoop].deregister()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoop].access$002(io.netty.channel.ThreadPerChannelEventLoop,io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoop"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionDepth: 0
    returnType: "io.netty.channel.Channel"
    argCount: 2
    argTypes:
    - "io.netty.channel.ThreadPerChannelEventLoop"
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoop].deregister()"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoop"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].remove(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].remove(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].add(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue:java.util.AbstractQueue:java.util.ArrayDeque:java.util.LinkedList:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.LinkedBlockingDeque].add(java.lang.Object)"
    - "[java.util.Set].remove(java.lang.Object)"
    - "[java.util.Queue].add(java.lang.Object)"
    functionUses: 3
    ICount: 9
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoop:95,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoop:96,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoop$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoop$1"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ThreadPerChannelEventLoop$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoop$1:37,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoop$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].status()"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.v4.Socks4CommandStatus"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].dstAddr()"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].dstPort()"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].toString()"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 98
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.AbstractSocksMessage].decoderResult()"
    - "[io.netty.handler.codec.DecoderResult].isSuccess()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].dstAddr()"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].dstPort()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 21
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:85"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:90"
        BranchSideFuncs:
        - "append(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:81,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:82,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:82,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:84,1"
      Dst: "[io.netty.handler.codec.socksx.AbstractSocksMessage].decoderResult()"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:85,1"
      Dst: "[io.netty.handler.codec.DecoderResult].isSuccess()"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:87,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:92,1"
      Dst: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].dstAddr()"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:94,1"
      Dst: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].dstPort()"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:94,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:95,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse:97,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.PemReader].readCertificates(java.io.File)"
    functionSourceFile: "io.netty.handler.ssl.PemReader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "io.netty.buffer.ByteBuf[]"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[io.netty.handler.ssl.PemReader].readCertificates(java.io.InputStream)"
    - "[io.netty.handler.ssl.PemReader].safeClose(java.io.InputStream)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.cert.CertificateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemReader:60,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "io.netty.handler.ssl.PemReader:63,1"
      Dst: "[io.netty.handler.ssl.PemReader].readCertificates(java.io.InputStream)"
    - Src: "io.netty.handler.ssl.PemReader:65,1"
      Dst: "[io.netty.handler.ssl.PemReader].safeClose(java.io.InputStream)"
    - Src: "io.netty.handler.ssl.PemReader:68,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.PemReader:68,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.PemReader:68,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.PemReader:68,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.PemReader:68,1"
      Dst: "[java.security.cert.CertificateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemReader].readCertificates(java.io.InputStream)"
    functionSourceFile: "io.netty.handler.ssl.PemReader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "io.netty.buffer.ByteBuf[]"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.PemReader].readContent(java.io.InputStream)"
    - "[java.security.cert.CertificateException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].find(int)"
    - "[java.util.regex.Matcher].usePattern(java.util.regex.Pattern)"
    - "[java.util.regex.Matcher].find()"
    - "[java.util.regex.Matcher].group(int)"
    - "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.regex.Matcher].end()"
    - "[java.util.List].isEmpty()"
    - "[java.security.cert.CertificateException].<init>(java.lang.String)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 44
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.PemReader:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemReader:87"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.PemReader:86"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.PemReader:88"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemReader:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.PemReader:91"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.PemReader:94"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemReader:97"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.PemReader:106"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemReader:110"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.PemReader:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemReader:75,1"
      Dst: "[io.netty.handler.ssl.PemReader].readContent(java.io.InputStream)"
    - Src: "io.netty.handler.ssl.PemReader:77,1"
      Dst: "[java.security.cert.CertificateException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.PemReader:80,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.ssl.PemReader:81,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "io.netty.handler.ssl.PemReader:84,1"
      Dst: "[java.util.regex.Matcher].find(int)"
    - Src: "io.netty.handler.ssl.PemReader:87,1"
      Dst: "[java.util.regex.Matcher].usePattern(java.util.regex.Pattern)"
    - Src: "io.netty.handler.ssl.PemReader:88,1"
      Dst: "[java.util.regex.Matcher].find()"
    - Src: "io.netty.handler.ssl.PemReader:92,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "io.netty.handler.ssl.PemReader:92,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,java.nio.charset.Charset)"
    - Src: "io.netty.handler.ssl.PemReader:98,1"
      Dst: "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.PemReader:99,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.ssl.PemReader:100,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.ssl.PemReader:102,1"
      Dst: "[java.util.regex.Matcher].end()"
    - Src: "io.netty.handler.ssl.PemReader:106,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.handler.ssl.PemReader:107,1"
      Dst: "[java.security.cert.CertificateException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.PemReader:110,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.PemReader].readContent(java.io.InputStream)"
    functionSourceFile: "io.netty.handler.ssl.PemReader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ByteArrayOutputStream].<init>()"
    - "[java.io.InputStream].read(byte[])"
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    - "[java.nio.charset.Charset].name()"
    - "[java.io.ByteArrayOutputStream].toString(java.lang.String)"
    - "[io.netty.handler.ssl.PemReader].safeClose(java.io.OutputStream)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.PemReader:166"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemReader:169"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.PemReader:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemReader:161,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>()"
    - Src: "io.netty.handler.ssl.PemReader:165,1"
      Dst: "[java.io.InputStream].read(byte[])"
    - Src: "io.netty.handler.ssl.PemReader:169,1"
      Dst: "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    - Src: "io.netty.handler.ssl.PemReader:171,1"
      Dst: "[java.nio.charset.Charset].name()"
    - Src: "io.netty.handler.ssl.PemReader:171,1"
      Dst: "[java.io.ByteArrayOutputStream].toString(java.lang.String)"
    - Src: "io.netty.handler.ssl.PemReader:173,1"
      Dst: "[io.netty.handler.ssl.PemReader].safeClose(java.io.OutputStream)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemReader].safeClose(java.io.OutputStream)"
    functionSourceFile: "io.netty.handler.ssl.PemReader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.OutputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.OutputStream].close()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemReader:187,1"
      Dst: "[java.io.OutputStream].close()"
    - Src: "io.netty.handler.ssl.PemReader:189,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemReader].safeClose(java.io.InputStream)"
    functionSourceFile: "io.netty.handler.ssl.PemReader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].close()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemReader:179,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "io.netty.handler.ssl.PemReader:181,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemReader].readPrivateKey(java.io.File)"
    functionSourceFile: "io.netty.handler.ssl.PemReader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FileInputStream].<init>(java.io.File)"
    - "[io.netty.handler.ssl.PemReader].readPrivateKey(java.io.InputStream)"
    - "[io.netty.handler.ssl.PemReader].safeClose(java.io.InputStream)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.KeyException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemReader:115,1"
      Dst: "[java.io.FileInputStream].<init>(java.io.File)"
    - Src: "io.netty.handler.ssl.PemReader:118,1"
      Dst: "[io.netty.handler.ssl.PemReader].readPrivateKey(java.io.InputStream)"
    - Src: "io.netty.handler.ssl.PemReader:120,1"
      Dst: "[io.netty.handler.ssl.PemReader].safeClose(java.io.InputStream)"
    - Src: "io.netty.handler.ssl.PemReader:123,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.PemReader:123,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.PemReader:123,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.PemReader:123,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.PemReader:123,1"
      Dst: "[java.security.KeyException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.KeyException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemReader].readPrivateKey(java.io.InputStream)"
    functionSourceFile: "io.netty.handler.ssl.PemReader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.PemReader].readContent(java.io.InputStream)"
    - "[java.security.KeyException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].find()"
    - "[io.netty.handler.ssl.PemReader].keyNotFoundException()"
    - "[java.util.regex.Matcher].usePattern(java.util.regex.Pattern)"
    - "[java.util.regex.Matcher].group(int)"
    - "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.PemReader:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemReader:139"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.PemReader:138"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.PemReader:140"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemReader:144"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.PemReader:143"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.PemReader:146"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemReader:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemReader:130,1"
      Dst: "[io.netty.handler.ssl.PemReader].readContent(java.io.InputStream)"
    - Src: "io.netty.handler.ssl.PemReader:132,1"
      Dst: "[java.security.KeyException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.PemReader:135,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "io.netty.handler.ssl.PemReader:136,1"
      Dst: "[java.util.regex.Matcher].find()"
    - Src: "io.netty.handler.ssl.PemReader:137,1"
      Dst: "[io.netty.handler.ssl.PemReader].keyNotFoundException()"
    - Src: "io.netty.handler.ssl.PemReader:139,1"
      Dst: "[java.util.regex.Matcher].usePattern(java.util.regex.Pattern)"
    - Src: "io.netty.handler.ssl.PemReader:144,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "io.netty.handler.ssl.PemReader:144,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,java.nio.charset.Charset)"
    - Src: "io.netty.handler.ssl.PemReader:150,1"
      Dst: "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.PemReader:151,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.security.KeyException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemReader].keyNotFoundException()"
    functionSourceFile: "io.netty.handler.ssl.PemReader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.KeyException"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.KeyException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemReader:156,1"
      Dst: "[java.security.KeyException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemReader].<init>()"
    functionSourceFile: "io.netty.handler.ssl.PemReader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemReader:193,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler$2].<init>(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler$2"
    linkageType: ""
    functionLinenumber: 519
    functionLinenumberEnd: 521
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.spdy.SpdySessionHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler$2:520,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler$2"
    linkageType: ""
    functionLinenumber: 522
    functionLinenumberEnd: 527
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].access$000(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    functionUses: 1
    ICount: 9
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler$2:523"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler$2:526"
        BranchSideFuncs:
        - "access$000(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler$2:525"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler$2:523,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler$2:524,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].access$000(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].access$000(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.spdy.SpdySessionHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.spdy.SpdySessionStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].issueSessionError(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:34,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].issueSessionError(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].issueSessionError(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 659
    functionLinenumberEnd: 662
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.spdy.SpdySessionStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener].<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].sendGoAwayFrame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 6
    ICount: 9
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:660,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].sendGoAwayFrame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:660,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:660,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener].<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:660,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].sendGoAwayFrame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 830
    functionLinenumberEnd: 837
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.spdy.SpdySessionStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].<init>(int,io.netty.handler.codec.spdy.SpdySessionStatus)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].newSucceededFuture()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newSucceededFuture()"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundInvoker].newSucceededFuture()"
    functionUses: 2
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:831"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:836"
        BranchSideFuncs:
        - "writeAndFlush(java.lang.Object)"
        - "<init>(int,io.netty.handler.codec.spdy.SpdySessionStatus)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:835"
        BranchSideFuncs:
        - "newSucceededFuture()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:833,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].<init>(int,io.netty.handler.codec.spdy.SpdySessionStatus)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:834,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:836,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newSucceededFuture()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler$2"
    linkageType: ""
    functionLinenumber: 519
    functionLinenumberEnd: 521
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler$2:520,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler$2].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThrowableUtil].<init>()"
    functionSourceFile: "io.netty.util.internal.ThrowableUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThrowableUtil:25,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThrowableUtil].unknownStackTrace(java.lang.Throwable,java.lang.Class,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ThrowableUtil"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 3
    argTypes:
    - "java.lang.Throwable"
    - "java.lang.Class"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StackTraceElement].<init>(java.lang.String,java.lang.String,java.lang.String,int)"
    - "[java.lang.Class].getName()"
    - "[java.lang.Throwable].setStackTrace(java.lang.StackTraceElement[])"
    functionUses: 5
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThrowableUtil:31,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.util.internal.ThrowableUtil:31,1"
      Dst: "[java.lang.StackTraceElement].<init>(java.lang.String,java.lang.String,java.lang.String,int)"
    - Src: "io.netty.util.internal.ThrowableUtil:31,1"
      Dst: "[java.lang.Throwable].setStackTrace(java.lang.StackTraceElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThrowableUtil].addSuppressedAndClear(java.lang.Throwable,java.util.List<Throwable>)"
    functionSourceFile: "io.netty.util.internal.ThrowableUtil"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Throwable"
    - "java.util.List<Throwable>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.util.List)"
    - "[jaz.Zer].clear()"
    - "[io.netty.handler.codec.CodecOutputList:java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].clear()"
    - "[java.util.List].clear()"
    functionUses: 5
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThrowableUtil:70,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.util.List)"
    - Src: "io.netty.util.internal.ThrowableUtil:71,1"
      Dst: "[java.util.List].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.util.List<Throwable>)"
    functionSourceFile: "io.netty.util.internal.ThrowableUtil"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 79
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Throwable"
    - "java.util.List<Throwable>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 10
    EdgeCount: 97
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ThrowableUtil:75"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ThrowableUtil:78"
        BranchSideFuncs:
        - "addSuppressed(java.lang.Throwable,java.lang.Throwable)"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.util.internal.ThrowableUtil:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.ThrowableUtil:75,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.util.internal.ThrowableUtil:75,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.util.internal.ThrowableUtil:75,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.util.internal.ThrowableUtil:76,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    functionSourceFile: "io.netty.handler.traffic.GlobalTrafficShapingHandler$1"
    linkageType: ""
    functionLinenumber: 372
    functionLinenumberEnd: 375
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler].access$200(io.netty.handler.traffic.GlobalTrafficShapingHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel,long)"
    functionUses: 49
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalTrafficShapingHandler$1:373,1"
      Dst: "[io.netty.handler.traffic.GlobalTrafficShapingHandler].access$200(io.netty.handler.traffic.GlobalTrafficShapingHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.traffic.GlobalTrafficShapingHandler$PerChannel,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultSelectStrategy].<init>()"
    functionSourceFile: "io.netty.channel.DefaultSelectStrategy"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultSelectStrategy:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultSelectStrategy].calculateStrategy(io.netty.util.IntSupplier,boolean)"
    functionSourceFile: "io.netty.channel.DefaultSelectStrategy"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.util.IntSupplier"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueEventLoop$1].get()"
    - "[io.netty.channel.epoll.EpollEventLoop$1].get()"
    - "[io.netty.channel.nio.NioEventLoop$1].get()"
    - "[io.netty.util.IntSupplier].get()"
    functionUses: 3
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultSelectStrategy:30"
      Branch Sides: []
    Callsites:
    - Src: "io.netty.channel.DefaultSelectStrategy:30,1"
      Dst: "[io.netty.util.IntSupplier].get()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe].<init>(io.netty.channel.epoll.EpollDatagramChannel)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe"
    linkageType: ""
    functionLinenumber: 487
    functionLinenumberEnd: 489
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.EpollDatagramChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:488,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe].epollInReady()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe"
    linkageType: ""
    functionLinenumber: 491
    functionLinenumberEnd: 560
    functionDepth: 11
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].clearEpollIn0()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].edgeTriggered(boolean)"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isFlagSet(int)"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInBefore()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isConnected()"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].getMaxDatagramPayloadSize()"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].isUdpGro()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].access$200(io.netty.channel.epoll.EpollDatagramChannel)"
    - "[io.netty.channel.epoll.EpollDatagramChannel].access$300(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.epoll.EpollDatagramChannel].access$400(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.channel.epoll.EpollDatagramChannel].access$500(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.channel.epoll.EpollDatagramChannel].access$600(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.unix.Errors$NativeIoException)"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInFinally(io.netty.channel.ChannelConfig)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 3
    ICount: 84
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:492"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:493"
        BranchSideFuncs:
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:492"
        BranchSideFuncs:
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:492"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:493"
        BranchSideFuncs:
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:492"
        BranchSideFuncs:
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:494"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:498"
        BranchSideFuncs:
        - "clearEpollIn0()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:497"
        BranchSideFuncs:
        - "reset(io.netty.channel.ChannelConfig)"
        - "isFlagSet(int)"
        - "edgeTriggered(boolean)"
        - "recvBufAllocHandle()"
        - "pipeline()"
        - "getAllocator()"
        - "epollInBefore()"
        - "isConnected()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:516"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:517"
        BranchSideFuncs:
        - "writableBytes()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:516"
        BranchSideFuncs:
        - "writableBytes()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:516"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:517"
        BranchSideFuncs:
        - "writableBytes()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:516"
        BranchSideFuncs:
        - "writableBytes()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:520"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:528"
        BranchSideFuncs:
        - "isUdpGro()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:527"
        BranchSideFuncs:
        - "access$200(io.netty.channel.epoll.EpollDatagramChannel)"
        - "access$500(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf,int,int)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:521"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:522"
        BranchSideFuncs:
        - "access$300(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:521"
        BranchSideFuncs:
        - "access$300(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:521"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:524"
        BranchSideFuncs:
        - "access$300(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:523"
        BranchSideFuncs:
        - "access$400(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:532"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:535"
        BranchSideFuncs:
        - "access$600(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.unix.Errors$NativeIoException)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:534"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:538"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:548"
        BranchSideFuncs:
        - "continueReading(io.netty.util.UncheckedBooleanSupplier)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:547"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:545"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:512"
        BranchSideFuncs:
        - "getMaxDatagramPayloadSize()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "writableBytes()"
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
        - "access$400(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.buffer.ByteBuf,int)"
        - "clearEpollIn0()"
        - "access$200(io.netty.channel.epoll.EpollDatagramChannel)"
        - "<init>()"
        - "isFlagSet(int)"
        - "access$600(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.unix.Errors$NativeIoException)"
        - "readComplete()"
        - "epollInFinally(io.netty.channel.ChannelConfig)"
        - "inEventLoop()"
        - "continueReading(io.netty.util.UncheckedBooleanSupplier)"
        - "edgeTriggered(boolean)"
        - "access$500(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf,int,int)"
        - "isUdpGro()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "config()"
        - "recvBufAllocHandle()"
        - "access$300(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf)"
        - "pipeline()"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "eventLoop()"
        - "getAllocator()"
        - "epollInBefore()"
        - "isConnected()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:511"
        BranchSideFuncs:
        - "getMaxDatagramPayloadSize()"
        - "config()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:553"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:557"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:556"
        BranchSideFuncs:
        - "epollInFinally(io.netty.channel.ChannelConfig)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:492,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:492,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:492,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:493,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:494,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:495,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].clearEpollIn0()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:498,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].recvBufAllocHandle()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:499,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].isFlagSet(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:499,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].edgeTriggered(boolean)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:501,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:502,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:503,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:504,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInBefore()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:509,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].isConnected()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:512,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannelConfig].getMaxDatagramPayloadSize()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:514,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:517,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:521,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannelConfig].isUdpGro()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:522,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].access$200(io.netty.channel.epoll.EpollDatagramChannel)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:522,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].access$300(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:524,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].access$400(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:528,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].access$500(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:533,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].access$600(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.unix.Errors$NativeIoException)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:545,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:550,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:551,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:554,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe:557,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInFinally(io.netty.channel.ChannelConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 30
    CyclomaticComplexity: 8
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 462
    functionLinenumberEnd: 464
    functionDepth: 0
    returnType: "io.netty.channel.epoll.EpollDatagramChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 58
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].isConnected()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannelConfig].getMaxDatagramPayloadSize()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 531
    functionLinenumberEnd: 533
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].updateAllocator(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].delegate()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].allocate(io.netty.buffer.ByteBufAllocator)"
    functionUses: 12
    ICount: 8
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:74,1"
      Dst: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].updateAllocator(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:75,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].delegate()"
    - Src: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:75,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].allocate(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannelConfig].isUdpGro()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 558
    functionLinenumberEnd: 560
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].access$200(io.netty.channel.epoll.EpollDatagramChannel)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 10
    returnType: "io.netty.channel.epoll.NativeDatagramPacketArray"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.EpollDatagramChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDatagramChannel].cleanDatagramPacketArray()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:55,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].cleanDatagramPacketArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].cleanDatagramPacketArray()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 759
    functionLinenumberEnd: 761
    functionDepth: 9
    returnType: "io.netty.channel.epoll.NativeDatagramPacketArray"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollEventLoop].cleanDatagramPacketArray()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:760,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:760,1"
      Dst: "[io.netty.channel.epoll.EpollEventLoop].cleanDatagramPacketArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventLoop].cleanDatagramPacketArray()"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoop"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 185
    functionDepth: 8
    returnType: "io.netty.channel.epoll.NativeDatagramPacketArray"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.NativeDatagramPacketArray].<init>()"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray].clear()"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:179"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:182"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:181"
        BranchSideFuncs:
        - "clear()"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoop:180,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray].<init>()"
    - Src: "io.netty.channel.epoll.EpollEventLoop:182,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray].<init>()"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 58
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.IovArray].<init>()"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor].<init>(io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.channel.epoll.NativeDatagramPacketArray$1)"
    - "[java.lang.Object].<init>()"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket].<init>(io.netty.channel.epoll.NativeDatagramPacketArray)"
    functionUses: 1
    ICount: 24
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray:54"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:53,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:45,1"
      Dst: "[io.netty.channel.unix.IovArray].<init>()"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:49,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor].<init>(io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.channel.epoll.NativeDatagramPacketArray$1)"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:55,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket].<init>(io.netty.channel.epoll.NativeDatagramPacketArray)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket].<init>(io.netty.channel.epoll.NativeDatagramPacketArray)"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 179
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.NativeDatagramPacketArray"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:164,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray].clear()"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 108
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.IovArray].clear()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:106,1"
      Dst: "[io.netty.channel.unix.IovArray].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].access$300(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 8
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "io.netty.channel.epoll.EpollDatagramChannel"
    - "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    - "io.netty.channel.epoll.NativeDatagramPacketArray"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDatagramChannel].recvmsg(io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:55,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].recvmsg(io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].recvmsg(io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 662
    functionLinenumberEnd: 704
    functionDepth: 7
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    - "io.netty.channel.epoll.NativeDatagramPacketArray"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray].addWritable(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray].packets()"
    - "[io.netty.channel.epoll.LinuxSocket].recvmsg(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket)"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket].hasSender()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.channel.epoll.EpollDatagramChannel].localAddress()"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket].newDatagramPacket(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].processPacket(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.channel.socket.DatagramPacket)"
    - "[io.netty.util.internal.RecyclableArrayList].newInstance()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].addDatagramPacketToOut(io.netty.channel.socket.DatagramPacket,io.netty.util.internal.RecyclableArrayList)"
    - "[io.netty.channel.epoll.EpollDatagramChannel].processPacketList(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.util.internal.RecyclableArrayList)"
    - "[io.netty.util.internal.RecyclableArrayList].recycle()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].releaseAndRecycle(io.netty.buffer.ByteBuf,io.netty.util.internal.RecyclableArrayList)"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    functionUses: 1
    ICount: 47
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:668"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:670"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "localAddress()"
        - "newDatagramPacket(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
        - "hasSender()"
        - "processPacket(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.channel.socket.DatagramPacket)"
        - "packets()"
        - "attemptedBytesRead(int)"
        - "recycle()"
        - "pipeline()"
        - "newInstance()"
        - "<init>()"
        - "writerIndex(int)"
        - "processPacketList(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.util.internal.RecyclableArrayList)"
        - "releaseAndRecycle(io.netty.buffer.ByteBuf,io.netty.util.internal.RecyclableArrayList)"
        - "addDatagramPacketToOut(io.netty.channel.socket.DatagramPacket,io.netty.util.internal.RecyclableArrayList)"
        - "recvmsg(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:669"
        BranchSideFuncs:
        - "hasSender()"
        - "packets()"
        - "attemptedBytesRead(int)"
        - "recvmsg(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:668"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:670"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "localAddress()"
        - "newDatagramPacket(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
        - "hasSender()"
        - "processPacket(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.channel.socket.DatagramPacket)"
        - "packets()"
        - "attemptedBytesRead(int)"
        - "recycle()"
        - "pipeline()"
        - "newInstance()"
        - "<init>()"
        - "writerIndex(int)"
        - "processPacketList(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.util.internal.RecyclableArrayList)"
        - "releaseAndRecycle(io.netty.buffer.ByteBuf,io.netty.util.internal.RecyclableArrayList)"
        - "addDatagramPacketToOut(io.netty.channel.socket.DatagramPacket,io.netty.util.internal.RecyclableArrayList)"
        - "recvmsg(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:669"
        BranchSideFuncs:
        - "hasSender()"
        - "packets()"
        - "attemptedBytesRead(int)"
        - "recvmsg(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:675"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:679"
        BranchSideFuncs:
        - "lastBytesRead(int)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:678"
        BranchSideFuncs:
        - "localAddress()"
        - "newDatagramPacket(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
        - "writerIndex(int)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:682"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:689"
        BranchSideFuncs:
        - "processPacket(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.channel.socket.DatagramPacket)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:688"
        BranchSideFuncs:
        - "recycle()"
        - "pipeline()"
        - "newInstance()"
        - "processPacketList(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.util.internal.RecyclableArrayList)"
        - "addDatagramPacketToOut(io.netty.channel.socket.DatagramPacket,io.netty.util.internal.RecyclableArrayList)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:665,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:667,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:667,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray].addWritable(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:668,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:670,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:672,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray].packets()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:674,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].recvmsg(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:675,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket].hasSender()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:676,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:702,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].releaseAndRecycle(io.netty.buffer.ByteBuf,io.netty.util.internal.RecyclableArrayList)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:679,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:680,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].localAddress()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:681,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket].newDatagramPacket(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:683,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:683,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].processPacket(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.channel.socket.DatagramPacket)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:689,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].newInstance()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:690,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].addDatagramPacketToOut(io.netty.channel.socket.DatagramPacket,io.netty.util.internal.RecyclableArrayList)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:695,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].processPacketList(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.util.internal.RecyclableArrayList)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:696,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].recycle()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray].addWritable(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 6
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.NativeDatagramPacketArray].add0(io.netty.buffer.ByteBuf,int,int,int,java.net.InetSocketAddress)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:60,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray].add0(io.netty.buffer.ByteBuf,int,int,int,java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray].packets()"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].recvmsg(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.Native].recvmsg(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:65,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:65,1"
      Dst: "[io.netty.channel.epoll.Native].recvmsg(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket].hasSender()"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:213"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:212"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].releaseAndRecycle(io.netty.buffer.ByteBuf,io.netty.util.internal.RecyclableArrayList)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 632
    functionLinenumberEnd: 643
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.util.internal.RecyclableArrayList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[java.util.ArrayList].size()"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.util.internal.RecyclableArrayList].recycle()"
    functionUses: 7
    ICount: 14
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:633"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:636"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:635"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:636"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:642"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:641"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:637"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:639"
        BranchSideFuncs:
        - "recycle()"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:634,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:637,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:638,1"
      Dst: "[java.util.ArrayList].get(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:638,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:640,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].recycle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].localAddress()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:114,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket].newDatagramPacket(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 227
    functionDepth: 4
    returnType: "io.netty.channel.socket.DatagramPacket"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.NativeDatagramPacketArray].access$500(io.netty.channel.epoll.NativeDatagramPacketArray)"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray].access$600(byte[],int,int,int,byte[])"
    - "[io.netty.channel.unix.SegmentedDatagramPacket].<init>(io.netty.buffer.ByteBuf,int,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    functionUses: 3
    ICount: 28
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:218"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:223"
        BranchSideFuncs:
        - "access$600(byte[],int,int,int,byte[])"
        - "access$500(io.netty.channel.epoll.NativeDatagramPacketArray)"
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:222"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:223"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:226"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf,int,java.net.InetSocketAddress,java.net.InetSocketAddress)"
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:225"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    Callsites:
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:217,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray].access$500(io.netty.channel.epoll.NativeDatagramPacketArray)"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:217,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray].access$600(byte[],int,int,int,byte[])"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:224,1"
      Dst: "[io.netty.channel.unix.SegmentedDatagramPacket].<init>(io.netty.buffer.ByteBuf,int,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket:226,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.net.UnknownHostException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray].access$500(io.netty.channel.epoll.NativeDatagramPacketArray)"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.NativeDatagramPacketArray"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray].access$600(byte[],int,int,int,byte[])"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 1
    returnType: "java.net.InetSocketAddress"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.NativeDatagramPacketArray].newAddress(byte[],int,int,int,byte[])"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:38,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray].newAddress(byte[],int,int,int,byte[])"
    JavaMethodInfo:
      exceptions:
      - "java.net.UnknownHostException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray].newAddress(byte[],int,int,int,byte[])"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.net.InetAddress].getByAddress(byte[])"
    - "[java.net.Inet6Address].getByAddress(java.lang.String,byte[],int)"
    - "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.NativeDatagramPacketArray:150"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray:154"
        BranchSideFuncs:
        - "arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
        - "getByAddress(byte[])"
      - BranchSide: "io.netty.channel.epoll.NativeDatagramPacketArray:153"
        BranchSideFuncs:
        - "getByAddress(java.lang.String,byte[],int)"
    Callsites:
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:151,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:152,1"
      Dst: "[java.net.InetAddress].getByAddress(byte[])"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:154,1"
      Dst: "[java.net.Inet6Address].getByAddress(java.lang.String,byte[],int)"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:156,1"
      Dst: "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    JavaMethodInfo:
      exceptions:
      - "java.net.UnknownHostException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].processPacket(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.channel.socket.DatagramPacket)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 645
    functionLinenumberEnd: 650
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelPipeline"
    - "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    - "int"
    - "io.netty.channel.socket.DatagramPacket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - "[java.lang.Math].max(int,int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:646,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:646,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:647,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:648,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].addDatagramPacketToOut(io.netty.channel.socket.DatagramPacket,io.netty.util.internal.RecyclableArrayList)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 613
    functionLinenumberEnd: 631
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.DatagramPacket"
    - "io.netty.util.internal.RecyclableArrayList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - "[io.netty.channel.unix.SegmentedDatagramPacket].segmentSize()"
    - "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.channel.DefaultAddressedEnvelope].release()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    functionUses: 2
    ICount: 24
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:614"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:628"
        BranchSideFuncs:
        - "content()"
        - "sender()"
        - "recipient()"
        - "segmentSize()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:627"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:624"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:621"
        BranchSideFuncs:
        - "min(int,int)"
        - "isReadable()"
        - "readRetainedSlice(int)"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "readableBytes()"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:617,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].content()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:618,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:619,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].sender()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:620,1"
      Dst: "[io.netty.channel.unix.SegmentedDatagramPacket].segmentSize()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:622,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:622,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:622,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:622,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:622,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:624,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:626,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].processPacketList(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.util.internal.RecyclableArrayList)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 652
    functionLinenumberEnd: 660
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelPipeline"
    - "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    - "int"
    - "io.netty.util.internal.RecyclableArrayList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].size()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - "[java.lang.Math].max(int,int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.util.internal.RecyclableArrayList].set(int,java.lang.Object)"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    functionUses: 2
    ICount: 16
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:656"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:658"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:653,1"
      Dst: "[java.util.ArrayList].size()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:654,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:654,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:655,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:657,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].set(int,java.lang.Object)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:657,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].access$400(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 5
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "io.netty.channel.epoll.EpollDatagramChannel"
    - "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDatagramChannel].connectedRead(io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.buffer.ByteBuf,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:55,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].connectedRead(io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].connectedRead(io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 564
    functionLinenumberEnd: 600
    functionDepth: 4
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.channel.unix.Socket].recvAddress(long,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.channel.unix.Socket].recv(java.nio.ByteBuffer,int,int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - "[io.netty.channel.epoll.EpollDatagramChannel].localAddress()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].remoteAddress()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.Buffer].limit()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    functionUses: 1
    ICount: 51
    EdgeCount: 132
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:565"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:566"
        BranchSideFuncs:
        - "writableBytes()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:565"
        BranchSideFuncs:
        - "writableBytes()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:571"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:574"
        BranchSideFuncs:
        - "memoryAddress()"
        - "recvAddress(long,int,int)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:573"
        BranchSideFuncs:
        - "internalNioBuffer(int,int)"
        - "recv(java.nio.ByteBuffer,int,int)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:578"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:579"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "localAddress()"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "fireChannelRead(java.lang.Object)"
        - "pipeline()"
        - "writerIndex(int)"
        - "incMessagesRead(int)"
        - "remoteAddress()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:578"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "localAddress()"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "fireChannelRead(java.lang.Object)"
        - "pipeline()"
        - "writerIndex(int)"
        - "incMessagesRead(int)"
        - "remoteAddress()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:596"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:579"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:578"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "localAddress()"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "fireChannelRead(java.lang.Object)"
        - "pipeline()"
        - "writerIndex(int)"
        - "incMessagesRead(int)"
        - "remoteAddress()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:586"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:579"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "localAddress()"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "fireChannelRead(java.lang.Object)"
        - "pipeline()"
        - "writerIndex(int)"
        - "incMessagesRead(int)"
        - "remoteAddress()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:578"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "localAddress()"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "fireChannelRead(java.lang.Object)"
        - "pipeline()"
        - "writerIndex(int)"
        - "incMessagesRead(int)"
        - "remoteAddress()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:596"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:579"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:578"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "localAddress()"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "fireChannelRead(java.lang.Object)"
        - "pipeline()"
        - "writerIndex(int)"
        - "incMessagesRead(int)"
        - "remoteAddress()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:596"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:599"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:598"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:565,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:565,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:567,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:569,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:571,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:572,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:572,1"
      Dst: "[io.netty.channel.unix.Socket].recvAddress(long,int,int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:574,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:575,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:575,1"
      Dst: "[java.nio.Buffer].limit()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:575,1"
      Dst: "[io.netty.channel.unix.Socket].recv(java.nio.ByteBuffer,int,int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:579,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:597,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:584,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:589,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].localAddress()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:589,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].remoteAddress()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:589,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:590,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:592,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:592,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.unix.Socket].recvAddress(long,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 291
    functionDepth: 3
    returnType: "int"
    argCount: 3
    argTypes:
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.unix.Socket].recvAddress(int,long,int,int)"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:284"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:287"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:286"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Socket:287"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:290"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:289"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:283,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.unix.Socket:283,1"
      Dst: "[io.netty.channel.unix.Socket].recvAddress(int,long,int,int)"
    - Src: "io.netty.channel.unix.Socket:290,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].recvAddress(int,long,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.Socket].recv(java.nio.ByteBuffer,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 280
    functionDepth: 3
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.unix.Socket].recv(int,java.nio.ByteBuffer,int,int)"
    - "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:273"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:276"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:275"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.Socket:276"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:279"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.Socket:278"
        BranchSideFuncs:
        - "ioResult(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:272,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.unix.Socket:272,1"
      Dst: "[io.netty.channel.unix.Socket].recv(int,java.nio.ByteBuffer,int,int)"
    - Src: "io.netty.channel.unix.Socket:279,1"
      Dst: "[io.netty.channel.unix.Errors].ioResult(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].recv(int,java.nio.ByteBuffer,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:109,1"
      Dst: "[io.netty.channel.AbstractChannel].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].access$500(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 8
    returnType: "boolean"
    argCount: 6
    argTypes:
    - "io.netty.channel.epoll.EpollDatagramChannel"
    - "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    - "io.netty.channel.epoll.NativeDatagramPacketArray"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDatagramChannel].scatteringRead(io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:55,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].scatteringRead(io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].scatteringRead(io.netty.channel.epoll.EpollRecvByteAllocatorHandle,io.netty.channel.epoll.NativeDatagramPacketArray,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 707
    functionLinenumberEnd: 757
    functionDepth: 7
    returnType: "boolean"
    argCount: 5
    argTypes:
    - "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    - "io.netty.channel.epoll.NativeDatagramPacketArray"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray].addWritable(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray].packets()"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray].count()"
    - "[io.netty.channel.epoll.LinuxSocket].recvmmsg(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.channel.epoll.EpollDatagramChannel].localAddress()"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket].newDatagramPacket(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].processPacket(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.channel.socket.DatagramPacket)"
    - "[io.netty.util.internal.RecyclableArrayList].newInstance()"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.channel.epoll.EpollDatagramChannel].addDatagramPacketToOut(io.netty.channel.socket.DatagramPacket,io.netty.util.internal.RecyclableArrayList)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].processPacketList(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.util.internal.RecyclableArrayList)"
    - "[io.netty.util.internal.RecyclableArrayList].recycle()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].releaseAndRecycle(io.netty.buffer.ByteBuf,io.netty.util.internal.RecyclableArrayList)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    functionUses: 1
    ICount: 62
    EdgeCount: 63
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:711"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:717"
        BranchSideFuncs:
        - "addWritable(io.netty.buffer.ByteBuf,int,int)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:716"
        BranchSideFuncs:
        - "count()"
        - "writerIndex()"
        - "packets()"
        - "attemptedBytesRead(int)"
        - "recvmmsg(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:712"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:708"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:707"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:722"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:726"
        BranchSideFuncs:
        - "lastBytesRead(int)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:725"
        BranchSideFuncs:
        - "localAddress()"
        - "writerIndex(int)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:729"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:741"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "localAddress()"
        - "newDatagramPacket(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
        - "processPacket(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.channel.socket.DatagramPacket)"
        - "readRetainedSlice(int)"
        - "recycle()"
        - "pipeline()"
        - "newInstance()"
        - "writerIndex(int)"
        - "processPacketList(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.util.internal.RecyclableArrayList)"
        - "releaseAndRecycle(io.netty.buffer.ByteBuf,io.netty.util.internal.RecyclableArrayList)"
        - "addDatagramPacketToOut(io.netty.channel.socket.DatagramPacket,io.netty.util.internal.RecyclableArrayList)"
        - "release()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:740"
        BranchSideFuncs:
        - "newInstance()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:732"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:741"
        BranchSideFuncs:
        - "processPacket(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.channel.socket.DatagramPacket)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:740"
        BranchSideFuncs:
        - "newInstance()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:742"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:747"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "localAddress()"
        - "newDatagramPacket(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
        - "processPacket(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.channel.socket.DatagramPacket)"
        - "readRetainedSlice(int)"
        - "recycle()"
        - "pipeline()"
        - "newInstance()"
        - "writerIndex(int)"
        - "processPacketList(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.util.internal.RecyclableArrayList)"
        - "releaseAndRecycle(io.netty.buffer.ByteBuf,io.netty.util.internal.RecyclableArrayList)"
        - "addDatagramPacketToOut(io.netty.channel.socket.DatagramPacket,io.netty.util.internal.RecyclableArrayList)"
        - "release()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:746"
        BranchSideFuncs:
        - "recycle()"
        - "pipeline()"
        - "processPacketList(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.util.internal.RecyclableArrayList)"
        - "release()"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:710,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:712,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray].addWritable(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:717,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:719,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray].packets()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:721,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray].count()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:721,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].recvmmsg(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:723,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:755,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].releaseAndRecycle(io.netty.buffer.ByteBuf,io.netty.util.internal.RecyclableArrayList)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:727,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:728,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].localAddress()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:731,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket].newDatagramPacket(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:733,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:733,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].processPacket(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.channel.socket.DatagramPacket)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:741,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].newInstance()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:743,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:744,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].addDatagramPacketToOut(io.netty.channel.socket.DatagramPacket,io.netty.util.internal.RecyclableArrayList)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:747,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:750,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].processPacketList(io.netty.channel.ChannelPipeline,io.netty.channel.epoll.EpollRecvByteAllocatorHandle,int,io.netty.util.internal.RecyclableArrayList)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:751,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].recycle()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray].count()"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].recvmmsg(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 4
    returnType: "int"
    argCount: 3
    argTypes:
    - "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.Native].recvmmsg(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:61,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:61,1"
      Dst: "[io.netty.channel.epoll.Native].recvmmsg(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].access$600(io.netty.channel.epoll.EpollDatagramChannel,io.netty.channel.unix.Errors$NativeIoException)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 2
    returnType: "java.io.IOException"
    argCount: 2
    argTypes:
    - "io.netty.channel.epoll.EpollDatagramChannel"
    - "io.netty.channel.unix.Errors$NativeIoException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDatagramChannel].translateForConnected(io.netty.channel.unix.Errors$NativeIoException)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:55,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].translateForConnected(io.netty.channel.unix.Errors$NativeIoException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].translateForConnected(io.netty.channel.unix.Errors$NativeIoException)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 603
    functionLinenumberEnd: 610
    functionDepth: 1
    returnType: "java.io.IOException"
    argCount: 1
    argTypes:
    - "io.netty.channel.unix.Errors$NativeIoException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Errors$NativeIoException].expectedErr()"
    - "[java.net.PortUnreachableException].<init>(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:604"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:609"
        BranchSideFuncs:
        - "initCause(java.lang.Throwable)"
        - "<init>(java.lang.String)"
        - "getMessage()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:608"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:604,1"
      Dst: "[io.netty.channel.unix.Errors$NativeIoException].expectedErr()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:605,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:605,1"
      Dst: "[java.net.PortUnreachableException].<init>(java.lang.String)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:606,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.UncheckedBooleanSupplier$2].<init>()"
    functionSourceFile: "io.netty.util.UncheckedBooleanSupplier$2"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.UncheckedBooleanSupplier$2:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.UncheckedBooleanSupplier$2].get()"
    functionSourceFile: "io.netty.util.UncheckedBooleanSupplier$2"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].isExplicitNoUnsafe()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 490
    functionLinenumberEnd: 492
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:491"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:490"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent0].explicitNoUnsafeCause0()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 494
    functionLinenumberEnd: 518
    functionDepth: 5
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SystemPropertyUtil].getBoolean(java.lang.String,boolean)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.util.internal.SystemPropertyUtil].contains(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    functionUses: 1
    ICount: 33
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:498"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:505"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent0:504"
        BranchSideFuncs:
        - "contains(java.lang.String)"
    - Branch String: "io.netty.util.internal.PlatformDependent0:505"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:511"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:517"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "debug(java.lang.String)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:516"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:495,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].getBoolean(java.lang.String,boolean)"
    - Src: "io.netty.util.internal.PlatformDependent0:496,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.util.internal.PlatformDependent0:496,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.PlatformDependent0:499,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent0:500,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent0:505,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].contains(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent0:512,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.PlatformDependent0:512,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent0:512,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.SystemPropertyUtil].getBoolean(java.lang.String,boolean)"
    functionSourceFile: "io.netty.util.internal.SystemPropertyUtil"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 120
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String)"
    - "[java.lang.String].toLowerCase()"
    - "[java.lang.String].trim()"
    - "[io.netty.util.internal.logging.Slf4JLogger:java.lang.String].isEmpty()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object[])"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[java.lang.String].isEmpty()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object[])"
    functionUses: 35
    ICount: 38
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.util.internal.SystemPropertyUtil:97"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:101"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:100"
        BranchSideFuncs:
        - "isEmpty()"
        - "toLowerCase()"
        - "trim()"
    - Branch String: "io.netty.util.internal.SystemPropertyUtil:102"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:106"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:105"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.SystemPropertyUtil:106"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:107"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.SystemPropertyUtil:106"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:107"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.SystemPropertyUtil:106"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:110"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:109"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.util.internal.SystemPropertyUtil:110"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:111"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.SystemPropertyUtil:110"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:111"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.SystemPropertyUtil:110"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:116"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:115"
        BranchSideFuncs:
        - "valueOf(boolean)"
    Callsites:
    - Src: "io.netty.util.internal.SystemPropertyUtil:96,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String)"
    - Src: "io.netty.util.internal.SystemPropertyUtil:101,1"
      Dst: "[java.lang.String].trim()"
    - Src: "io.netty.util.internal.SystemPropertyUtil:101,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "io.netty.util.internal.SystemPropertyUtil:102,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.util.internal.SystemPropertyUtil:106,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.util.internal.SystemPropertyUtil:116,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.util.internal.SystemPropertyUtil:114,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.SystemPropertyUtil"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String,java.lang.String)"
    functionUses: 17
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SystemPropertyUtil:48,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SystemPropertyUtil].contains(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.SystemPropertyUtil"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String)"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.SystemPropertyUtil:38"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:37"
        BranchSideFuncs:
        - "get(java.lang.String)"
    Callsites:
    - Src: "io.netty.util.internal.SystemPropertyUtil:38,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent0].hasUnsafe()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 524
    functionLinenumberEnd: 526
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:525"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:524"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent0].getUnsafeUnavailabilityCause()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 528
    functionLinenumberEnd: 530
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].hasDirectBufferNoCleanerConstructor()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 541
    functionLinenumberEnd: 543
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:542"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:541"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent0].reallocateDirectNoCleaner(java.nio.ByteBuffer,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 545
    functionLinenumberEnd: 547
    functionDepth: 2
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].directBufferAddress(java.nio.ByteBuffer)"
    - "[io.netty.util.internal.PlatformDependent0].newDirectBuffer(long,int)"
    - "[sun.misc.Unsafe].reallocateMemory(long,long)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:546,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].directBufferAddress(java.nio.ByteBuffer)"
    - Src: "io.netty.util.internal.PlatformDependent0:546,1"
      Dst: "[sun.misc.Unsafe].reallocateMemory(long,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:546,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].newDirectBuffer(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].newDirectBuffer(long,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 584
    functionLinenumberEnd: 595
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Error].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:591"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:594"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent0:593"
        BranchSideFuncs:
        - "<init>(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:585,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent0:588,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.util.internal.PlatformDependent0:588,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.util.internal.PlatformDependent0:588,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "io.netty.util.internal.PlatformDependent0:594,1"
      Dst: "[java.lang.Error].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].allocateDirectNoCleaner(int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 552
    functionLinenumberEnd: 554
    functionDepth: 2
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].allocateMemory(long)"
    - "[java.lang.Math].max(int,int)"
    - "[io.netty.util.internal.PlatformDependent0].newDirectBuffer(long,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:553,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "io.netty.util.internal.PlatformDependent0:553,1"
      Dst: "[sun.misc.Unsafe].allocateMemory(long)"
    - Src: "io.netty.util.internal.PlatformDependent0:553,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].newDirectBuffer(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].hasAlignSliceMethod()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 556
    functionLinenumberEnd: 558
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:557"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:556"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent0].alignSlice(java.nio.ByteBuffer,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 561
    functionLinenumberEnd: 567
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Error].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:562,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.util.internal.PlatformDependent0:562,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.util.internal.PlatformDependent0:564,1"
      Dst: "[java.lang.Error].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].hasAllocateArrayMethod()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 570
    functionLinenumberEnd: 572
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:571"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:570"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent0].byteArrayBaseOffset()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 602
    functionLinenumberEnd: 604
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].getInt(java.lang.Object,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 610
    functionLinenumberEnd: 612
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getInt(java.lang.Object,long)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:611,1"
      Dst: "[sun.misc.Unsafe].getInt(java.lang.Object,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].safeConstructPutInt(java.lang.Object,long,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 614
    functionLinenumberEnd: 622
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].putInt(java.lang.Object,long,int)"
    - "[sun.misc.Unsafe].storeFence()"
    - "[sun.misc.Unsafe].putIntVolatile(java.lang.Object,long,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:615"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:619"
        BranchSideFuncs:
        - "storeFence()"
        - "putInt(java.lang.Object,long,int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:618"
        BranchSideFuncs:
        - "putIntVolatile(java.lang.Object,long,int)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:616,1"
      Dst: "[sun.misc.Unsafe].putInt(java.lang.Object,long,int)"
    - Src: "io.netty.util.internal.PlatformDependent0:617,1"
      Dst: "[sun.misc.Unsafe].storeFence()"
    - Src: "io.netty.util.internal.PlatformDependent0:619,1"
      Dst: "[sun.misc.Unsafe].putIntVolatile(java.lang.Object,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent0].getByte(byte[],long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 651
    functionLinenumberEnd: 653
    functionDepth: 0
    returnType: "byte"
    argCount: 2
    argTypes:
    - "byte[]"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getByte(java.lang.Object,long)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:652,1"
      Dst: "[sun.misc.Unsafe].getByte(java.lang.Object,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].getIntVolatile(long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getIntVolatile(java.lang.Object,long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:668,1"
      Dst: "[sun.misc.Unsafe].getIntVolatile(java.lang.Object,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].putIntOrdered(long,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].putOrderedInt(java.lang.Object,long,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:672,1"
      Dst: "[sun.misc.Unsafe].putOrderedInt(java.lang.Object,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].equalsConstantTime(byte[],int,byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 801
    functionLinenumberEnd: 824
    functionDepth: 1
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].getLong(java.lang.Object,long)"
    - "[sun.misc.Unsafe].getInt(java.lang.Object,long)"
    - "[sun.misc.Unsafe].getChar(java.lang.Object,long)"
    - "[sun.misc.Unsafe].getByte(java.lang.Object,long)"
    - "[io.netty.util.internal.ConstantTimeUtils].equalsConstantTime(long,long)"
    functionUses: 1
    ICount: 67
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:807"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:809"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:810"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:814"
        BranchSideFuncs:
        - "getInt(java.lang.Object,long)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:813"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:814"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:819"
        BranchSideFuncs:
        - "getChar(java.lang.Object,long)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:818"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:819"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:823"
        BranchSideFuncs:
        - "getByte(java.lang.Object,long)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:822"
        BranchSideFuncs:
        - "equalsConstantTime(long,long)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:808,1"
      Dst: "[sun.misc.Unsafe].getLong(java.lang.Object,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:811,1"
      Dst: "[sun.misc.Unsafe].getInt(java.lang.Object,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:816,1"
      Dst: "[sun.misc.Unsafe].getChar(java.lang.Object,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:821,1"
      Dst: "[sun.misc.Unsafe].getByte(java.lang.Object,long)"
    - Src: "io.netty.util.internal.PlatformDependent0:823,1"
      Dst: "[io.netty.util.internal.ConstantTimeUtils].equalsConstantTime(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.internal.PlatformDependent0].getClassLoader(java.lang.Class<?>)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 902
    functionLinenumberEnd: 907
    functionDepth: 1
    returnType: "java.lang.ClassLoader"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].getSecurityManager()"
    - "[java.lang.Class].getClassLoader()"
    - "[io.netty.util.internal.PlatformDependent0$10].<init>(java.lang.Class)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[io.netty.util.internal.PlatformDependent0$10].run()"
    functionUses: 2
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:903"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:906"
        BranchSideFuncs:
        - "getClassLoader()"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:905"
        BranchSideFuncs:
        - "doPrivileged(java.security.PrivilegedAction)"
        - "run()"
        - "<init>(java.lang.Class)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:903,1"
      Dst: "[java.lang.System].getSecurityManager()"
    - Src: "io.netty.util.internal.PlatformDependent0:904,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "io.netty.util.internal.PlatformDependent0:906,1"
      Dst: "[io.netty.util.internal.PlatformDependent0$10].<init>(java.lang.Class)"
    - Src: "io.netty.util.internal.PlatformDependent0:906,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].addressSize()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 941
    functionLinenumberEnd: 943
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].addressSize()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:942,1"
      Dst: "[sun.misc.Unsafe].addressSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].allocateMemory(long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].allocateMemory(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:946,1"
      Dst: "[sun.misc.Unsafe].allocateMemory(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].freeMemory(long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 949
    functionLinenumberEnd: 952
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].freeMemory(long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:950,1"
      Dst: "[sun.misc.Unsafe].freeMemory(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].reallocateMemory(long,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.misc.Unsafe].reallocateMemory(long,long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:954,1"
      Dst: "[sun.misc.Unsafe].reallocateMemory(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].isAndroid()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 957
    functionLinenumberEnd: 959
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].isAndroid0()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 968
    functionLinenumberEnd: 975
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    functionUses: 2
    ICount: 7
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:971"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:974"
        BranchSideFuncs:
        - "debug(java.lang.String)"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:973"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:969,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent0:970,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.util.internal.PlatformDependent0:972,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent0].explicitTryReflectionSetAccessible0()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 979
    functionLinenumberEnd: 981
    functionDepth: 5
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SystemPropertyUtil].getBoolean(java.lang.String,boolean)"
    - "[io.netty.util.internal.PlatformDependent0].javaVersion()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:980"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:978"
        BranchSideFuncs:
        - "javaVersion()"
        - "getBoolean(java.lang.String,boolean)"
    - Branch String: "io.netty.util.internal.PlatformDependent0:980"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:978"
        BranchSideFuncs:
        - "javaVersion()"
        - "getBoolean(java.lang.String,boolean)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:980,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].javaVersion()"
    - Src: "io.netty.util.internal.PlatformDependent0:979,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].getBoolean(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent0].javaVersion0()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 993
    functionLinenumberEnd: 1003
    functionDepth: 5
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].isAndroid0()"
    - "[io.netty.util.internal.PlatformDependent0].majorVersionFromJavaSpecificationVersion()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:994"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:997"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent0:996"
        BranchSideFuncs:
        - "majorVersionFromJavaSpecificationVersion()"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:994,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].isAndroid0()"
    - Src: "io.netty.util.internal.PlatformDependent0:997,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].majorVersionFromJavaSpecificationVersion()"
    - Src: "io.netty.util.internal.PlatformDependent0:1000,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.util.internal.PlatformDependent0:1000,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent0].majorVersionFromJavaSpecificationVersion()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 1006
    functionLinenumberEnd: 1008
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String,java.lang.String)"
    - "[io.netty.util.internal.PlatformDependent0].majorVersion(java.lang.String)"
    functionUses: 1
    ICount: 3
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:1007,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String,java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent0:1007,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].majorVersion(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0].majorVersion(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: 1011
    functionLinenumberEnd: 1023
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].split(java.lang.String)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.lang.AssertionError].<init>()"
    functionUses: 1
    ICount: 25
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent0:1014"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:1017"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:1018"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:1022"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.util.internal.PlatformDependent0:1021"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:1019"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent0:1019"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent0:1019"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent0:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent0:1019"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:1012,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent0:1015,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent0:1019,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent0].<init>()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0:1026,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator].<init>()"
    functionSourceFile: "io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator].wrapperFactory()"
    functionSourceFile: "io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator].protocolSelectorFactory()"
    functionSourceFile: "io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator:48,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator].protocolListenerFactory()"
    functionSourceFile: "io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator:53,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator].protocols()"
    functionSourceFile: "io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptyList()"
    functionUses: 11
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator:58,1"
      Dst: "[java.util.Collections].emptyList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry"
    linkageType: ""
    functionLinenumber: 245
    functionLinenumberEnd: 247
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 67
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry"
    linkageType: ""
    functionLinenumber: 250
    functionLinenumberEnd: 252
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 63
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].setValue(java.lang.Object)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry:256,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf[])"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.buffer.ByteBuf[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].<init>(int)"
    - "[io.netty.buffer.ByteBuf].isDirect()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].order()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    functionUses: 0
    ICount: 50
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:47"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:54"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:53"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:60"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:71"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:70"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:62"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:65"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:64"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:67"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:54"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:46,1"
      Dst: "[io.netty.buffer.AbstractReferenceCountedByteBuf].<init>(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:52,1"
      Dst: "[io.netty.buffer.ByteBuf].isDirect()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:57,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:58,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:59,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:63,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:75,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:75,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].isWritable()"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].isWritable(int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].discardReadBytes()"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:91,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 20
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:96,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 13
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:101,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 8
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:106,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].setByte(int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 65
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:111,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._setByte(int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 25
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:116,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].setShort(int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 18
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:121,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._setShort(int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:126,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:131,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:136,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 142
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:141,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:146,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].setInt(int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 26
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:151,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._setInt(int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 10
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:156,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:161,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].setLong(int,long)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 14
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:166,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._setLong(int,long)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 8
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:171,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:176,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:181,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:186,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 8
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:191,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 67
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].maxCapacity()"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 202
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].capacity(int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 207
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:206,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].alloc()"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBufAllocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].order()"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 217
    functionDepth: 0
    returnType: "java.nio.ByteOrder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 38
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].unwrap()"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 220
    functionLinenumberEnd: 222
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].isDirect()"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 227
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 229
    functionLinenumberEnd: 250
    functionDepth: 3
    returnType: "io.netty.buffer.FixedCompositeByteBuf$Component"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].<init>(int,int,io.netty.buffer.ByteBuf)"
    - "[java.lang.IllegalStateException].<init>()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 14
    ICount: 32
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:231"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:249"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:248"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:234"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:238"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:237"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:239"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:230"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:240"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:245"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:238,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:243,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].<init>(int,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:249,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 255
    functionLinenumberEnd: 258
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:257"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:255"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 263
    functionDepth: 5
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf]._getByte(int)"
    functionUses: 136
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:262,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._getByte(int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 269
    functionDepth: 4
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 29
    ICount: 8
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:267,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:268,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:268,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._getShort(int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 272
    functionLinenumberEnd: 280
    functionDepth: 5
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$100(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.SwappedByteBuf].getShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShort(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.ByteBuf].getShort(int)"
    functionUses: 12
    ICount: 40
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:274"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:276"
        BranchSideFuncs:
        - "access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
        - "getShort(int)"
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:275"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:276"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:279"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:278"
        BranchSideFuncs:
        - "_getByte(int)"
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:273,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:274,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$100(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:275,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:275,1"
      Dst: "[io.netty.buffer.ByteBuf].getShort(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:276,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:277,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._getShortLE(int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 284
    functionLinenumberEnd: 292
    functionDepth: 5
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$100(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShortLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShortLE(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.ByteBuf].getShortLE(int)"
    functionUses: 12
    ICount: 40
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:286"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:288"
        BranchSideFuncs:
        - "access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
        - "getShortLE(int)"
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:287"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:288"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:291"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:290"
        BranchSideFuncs:
        - "_getByte(int)"
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:285,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:286,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$100(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:287,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:287,1"
      Dst: "[io.netty.buffer.ByteBuf].getShortLE(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:288,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:289,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 296
    functionLinenumberEnd: 304
    functionDepth: 6
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$100(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.SlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedMedium(int)"
    functionUses: 6
    ICount: 38
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:298"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:300"
        BranchSideFuncs:
        - "access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
        - "getUnsignedMedium(int)"
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:299"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:300"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:303"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:302"
        BranchSideFuncs:
        - "_getShort(int)"
        - "_getByte(int)"
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:297,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:298,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$100(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:299,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:299,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedMedium(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:300,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:301,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf]._getShort(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:301,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 308
    functionLinenumberEnd: 316
    functionDepth: 6
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$100(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedMediumLE(int)"
    functionUses: 6
    ICount: 38
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:310"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:312"
        BranchSideFuncs:
        - "access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
        - "getUnsignedMediumLE(int)"
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:311"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:312"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:315"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:314"
        BranchSideFuncs:
        - "_getShortLE(int)"
        - "_getByte(int)"
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:309,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:310,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$100(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:311,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:311,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedMediumLE(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:312,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:313,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf]._getShortLE(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:313,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._getInt(int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 320
    functionLinenumberEnd: 328
    functionDepth: 6
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$100(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.SlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.ByteBuf].getInt(int)"
    functionUses: 10
    ICount: 38
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:322"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:324"
        BranchSideFuncs:
        - "access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
        - "getInt(int)"
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:323"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:324"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:327"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:326"
        BranchSideFuncs:
        - "_getShort(int)"
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:321,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:322,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$100(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:323,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:323,1"
      Dst: "[io.netty.buffer.ByteBuf].getInt(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:324,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:325,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf]._getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._getIntLE(int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 332
    functionLinenumberEnd: 340
    functionDepth: 6
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$100(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.SlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getIntLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getIntLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getIntLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getIntLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.ByteBuf].getIntLE(int)"
    functionUses: 10
    ICount: 38
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:334"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:336"
        BranchSideFuncs:
        - "access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
        - "getIntLE(int)"
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:335"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:336"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:339"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:338"
        BranchSideFuncs:
        - "_getShortLE(int)"
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:333,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:334,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$100(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:335,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:335,1"
      Dst: "[io.netty.buffer.ByteBuf].getIntLE(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:336,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:337,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf]._getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._getLong(int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 344
    functionLinenumberEnd: 352
    functionDepth: 7
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$100(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLong(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLong(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLong(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getInt(int)"
    - "[io.netty.buffer.ByteBuf].getLong(int)"
    functionUses: 7
    ICount: 34
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:346"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:348"
        BranchSideFuncs:
        - "access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
        - "getLong(int)"
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:347"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:348"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:351"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:350"
        BranchSideFuncs:
        - "_getInt(int)"
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:345,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:346,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$100(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:347,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:347,1"
      Dst: "[io.netty.buffer.ByteBuf].getLong(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:348,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:349,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf]._getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf]._getLongLE(int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 356
    functionLinenumberEnd: 364
    functionDepth: 7
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$100(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLongLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLongLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLongLE(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.ByteBuf].getLongLE(int)"
    functionUses: 6
    ICount: 34
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:358"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:360"
        BranchSideFuncs:
        - "access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
        - "getLongLE(int)"
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:359"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:360"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:363"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:362"
        BranchSideFuncs:
        - "_getIntLE(int)"
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:357,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:358,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$100(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:359,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:359,1"
      Dst: "[io.netty.buffer.ByteBuf].getLongLE(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:360,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:361,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf]._getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 368
    functionLinenumberEnd: 391
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$200(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    functionUses: 17
    ICount: 31
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:370"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:374"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:373"
        BranchSideFuncs:
        - "access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
        - "access$200(io.netty.buffer.FixedCompositeByteBuf$Component)"
        - "findComponent(int)"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:385"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:388"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:387"
        BranchSideFuncs:
        - "buffer(int)"
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:369,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:374,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:375,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$200(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:376,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:379,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:379,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:380,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:388,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 394
    functionLinenumberEnd: 424
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$200(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - "[java.nio.Buffer].limit()"
    - "[java.nio.Buffer].remaining()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionUses: 12
    ICount: 38
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:399"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:404"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:403"
        BranchSideFuncs:
        - "access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
        - "access$200(io.netty.buffer.FixedCompositeByteBuf$Component)"
        - "findComponent(int)"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:415"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:418"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:417"
        BranchSideFuncs:
        - "buffer(int)"
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:395,1"
      Dst: "[java.nio.Buffer].limit()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:396,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:398,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:404,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:405,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$200(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:406,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:409,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:409,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:410,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:410,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:411,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:418,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 427
    functionLinenumberEnd: 450
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$200(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 15
    ICount: 31
    EdgeCount: 58
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:429"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:433"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:432"
        BranchSideFuncs:
        - "access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
        - "access$200(io.netty.buffer.FixedCompositeByteBuf$Component)"
        - "findComponent(int)"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:444"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:447"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:446"
        BranchSideFuncs:
        - "buffer(int)"
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:428,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:428,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:433,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:434,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$200(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:435,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:438,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:438,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:439,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:447,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 454
    functionLinenumberEnd: 464
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[sun.nio.ch.FileChannelImpl].write(java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - "[java.nio.channels.DatagramChannel].write(java.nio.ByteBuffer[])"
    - "[java.nio.channels.FileChannel].write(java.nio.ByteBuffer[])"
    - "[java.nio.channels.SocketChannel].write(java.nio.ByteBuffer[])"
    - "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    - "[java.nio.channels.GatheringByteChannel].write(java.nio.ByteBuffer[])"
    functionUses: 8
    ICount: 17
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:456"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:459"
        BranchSideFuncs:
        - "write(java.nio.ByteBuffer)"
        - "internalNioBuffer(int,int)"
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:458"
        BranchSideFuncs:
        - "write(java.nio.ByteBuffer[])"
        - "nioBuffers(int,int)"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:460"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:463"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:462"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:455,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:457,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:457,1"
      Dst: "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:459,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:459,1"
      Dst: "[java.nio.channels.GatheringByteChannel].write(java.nio.ByteBuffer[])"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 529
    functionLinenumberEnd: 531
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 46
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 555
    functionLinenumberEnd: 560
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    functionUses: 38
    ICount: 12
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:556"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:559"
        BranchSideFuncs:
        - "buffer(int)"
        - "internalNioBuffer(int,int)"
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:558"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:557,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:557,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:559,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 563
    functionLinenumberEnd: 600
    functionDepth: 4
    returnType: "java.nio.ByteBuffer[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.util.internal.RecyclableArrayList].newInstance(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$200(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].nioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffer(int,int)"
    - "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffers(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[io.netty.util.internal.RecyclableArrayList].recycle()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    functionUses: 21
    ICount: 48
    EdgeCount: 81
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:565"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:569"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:568"
        BranchSideFuncs:
        - "access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
        - "findComponent(int)"
        - "newInstance(int)"
        - "access$200(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:590"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:593"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:592"
        BranchSideFuncs:
        - "buffer(int)"
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:564,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:569,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].newInstance(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:571,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:572,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$200(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:573,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:576,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:576,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:577,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:579,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:581,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:581,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:584,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:584,1"
      Dst: "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:593,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:596,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:598,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].recycle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[java.nio.channels.FileChannel].write(java.nio.ByteBuffer,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:472"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:475"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:474"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:476"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:478"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:479"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:482"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:481"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:471,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:473,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:473,1"
      Dst: "[java.nio.channels.FileChannel].write(java.nio.ByteBuffer,long)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:476,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 488
    functionLinenumberEnd: 510
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$200(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionUses: 10
    ICount: 28
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:490"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:494"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:493"
        BranchSideFuncs:
        - "access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
        - "access$200(io.netty.buffer.FixedCompositeByteBuf$Component)"
        - "findComponent(int)"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:504"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:507"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:506"
        BranchSideFuncs:
        - "buffer(int)"
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:489,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:494,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:495,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$200(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:496,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf$Component].access$000(io.netty.buffer.FixedCompositeByteBuf$Component)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:499,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:499,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:500,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.io.OutputStream,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:507,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].copy(int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 513
    functionLinenumberEnd: 526
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 10
    ICount: 16
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:522"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:514"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:513"
        BranchSideFuncs:
        - "alloc()"
        - "checkIndex(int,int)"
        - "buffer(int)"
        - "writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:522"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:525"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:524"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:514,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:516,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].alloc()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:516,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:518,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:523,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].nioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 534
    functionLinenumberEnd: 552
    functionDepth: 5
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].nioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffer(int,int)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    functionUses: 19
    ICount: 25
    EdgeCount: 42
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:536"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:542"
        BranchSideFuncs:
        - "nioBufferCount()"
        - "buffer(int)"
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:541"
        BranchSideFuncs:
        - "allocate(int)"
        - "order()"
        - "nioBuffers(int,int)"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:538"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:542"
        BranchSideFuncs:
        - "nioBuffer(int,int)"
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:541"
        BranchSideFuncs:
        - "allocate(int)"
        - "order()"
        - "nioBuffers(int,int)"
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:546"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:549"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:535,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:537,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:538,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:539,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:542,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:542,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:542,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:543,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:547,1"
      Dst: "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:550,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 603
    functionLinenumberEnd: 611
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.EmptyByteBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    functionUses: 46
    ICount: 9
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:608,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:608,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].array()"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 615
    functionLinenumberEnd: 623
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.buffer.ByteBuf].array()"
    functionUses: 63
    ICount: 12
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:620,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:620,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:622,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 627
    functionLinenumberEnd: 635
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    functionUses: 58
    ICount: 11
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:632,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:632,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:634,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 639
    functionLinenumberEnd: 647
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    functionUses: 39
    ICount: 11
    EdgeCount: 41
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:642,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:644,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 651
    functionLinenumberEnd: 659
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    functionUses: 38
    ICount: 13
    EdgeCount: 44
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:654,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:656,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:658,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].deallocate()"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 663
    functionLinenumberEnd: 668
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 10
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.buffer.FixedCompositeByteBuf:664"
      Branch Sides:
      - BranchSide: "io.netty.buffer.FixedCompositeByteBuf:666"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:665,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].buffer(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:665,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.FixedCompositeByteBuf].toString()"
    functionSourceFile: "io.netty.buffer.FixedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 670
    functionLinenumberEnd: 674
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].toString()"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 21
    ICount: 15
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.FixedCompositeByteBuf:671,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].toString()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:672,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:672,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:673,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:673,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:673,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:673,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.buffer.FixedCompositeByteBuf:673,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator$1"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator$1:86,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator$1].size(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator$1"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].initialFlowControlledBytes()"
    - "[java.lang.Math].min(long,long)"
    - "[io.netty.handler.codec.http2.Http2DataFrame].initialFlowControlledBytes()"
    functionUses: 4
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator$1:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator$1:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator$1:91,1"
      Dst: "[io.netty.handler.codec.http2.Http2DataFrame].initialFlowControlledBytes()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator$1:91,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback].handle(long,byte[],byte[][])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "byte[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslEngineMap].get(long)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback].supportedClientKeyTypes(byte[])"
    - "[java.util.Set].toArray(java.lang.Object[])"
    - "[javax.security.auth.x500.X500Principal].<init>(byte[])"
    - "[io.netty.handler.ssl.OpenSslKeyMaterialManager].setKeyMaterialClientSide(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String[],javax.security.auth.x500.X500Principal[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].initHandshakeException(java.lang.Throwable)"
    - "[javax.net.ssl.SSLException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:251"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:255"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:254"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:258"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:261"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:260"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:262"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:266"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:265"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:269"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:266"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:265"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:249,1"
      Dst: "[io.netty.handler.ssl.OpenSslEngineMap].get(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:255,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback].supportedClientKeyTypes(byte[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:256,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:263,1"
      Dst: "[javax.security.auth.x500.X500Principal].<init>(byte[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:266,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterialManager].setKeyMaterialClientSide(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.String[],javax.security.auth.x500.X500Principal[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:268,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].initHandshakeException(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:272,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback].supportedClientKeyTypes(byte[])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext].access$000()"
    - "[java.util.HashSet].<init>(int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback].clientKeyType(byte)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:285"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:288"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:290"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:298"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:297"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:292"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:295"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:287,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext].access$000()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:289,1"
      Dst: "[java.util.HashSet].<init>(int)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:291,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback].clientKeyType(byte)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback:296,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback].clientKeyType(byte)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslClientContext$OpenSslClientCertificateCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler].<init>(io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandshaker[])"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandshaker[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.lang.Object[],java.lang.String)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:59,1"
      Dst: "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:60,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.lang.Object[],java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:60,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 101
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].isWebsocketUpgrade(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpHeaders].getAsString(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].extractExtensions(java.lang.String)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].hasNext()"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker].handshakeExtension(io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData)"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker].handshakeExtension(io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData)"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension].rsv()"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandshaker].handshakeExtension(io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtension].rsv()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 3
    ICount: 46
    EdgeCount: 210
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:65"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:99"
        BranchSideFuncs:
        - "isWebsocketUpgrade(io.netty.handler.codec.http.HttpHeaders)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:98"
        BranchSideFuncs:
        - "channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:99"
        BranchSideFuncs:
        - "getAsString(java.lang.CharSequence)"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:98"
        BranchSideFuncs:
        - "channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:98"
        BranchSideFuncs:
        - "channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:99"
        BranchSideFuncs:
        - "iterator()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:98"
        BranchSideFuncs:
        - "channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:81"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:86"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:81"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:86"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:87"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:94"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:93"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:87"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:94"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:93"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:88"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:91"
        BranchSideFuncs:
        - "<init>(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:90"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "rsv()"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:68,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:68,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].isWebsocketUpgrade(io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:69,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].getAsString(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:73,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].extractExtensions(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:76,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:76,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:76,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:84,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandshaker].handshakeExtension(io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:87,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtension].rsv()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:89,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:92,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:99,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 115
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseStatus].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler].handlePotentialUpgrade(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise,io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.channel.ChannelDuplexHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    functionUses: 3
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:113"
        BranchSideFuncs:
        - "status()"
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:112"
        BranchSideFuncs:
        - "write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:113"
        BranchSideFuncs:
        - "handlePotentialUpgrade(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise,io.netty.handler.codec.http.HttpResponse)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:112"
        BranchSideFuncs:
        - "write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:108,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:108,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:109,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler].handlePotentialUpgrade(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise,io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:113,1"
      Dst: "[io.netty.channel.ChannelDuplexHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler].handlePotentialUpgrade(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise,io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 162
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].isWebsocketUpgrade(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpHeaders].getAsString(java.lang.CharSequence)"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameServerExtensionHandshaker$DeflateFrameServerExtension].newReponseData()"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateServerExtensionHandshaker$PermessageDeflateExtension].newReponseData()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].computeMergeExtensionsHeaderValue(java.lang.String,java.util.List)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler$1].<init>(io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler$2].<init>(io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtension].newReponseData()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 35
    EdgeCount: 121
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:120"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:160"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:122"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:152"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "getAsString(java.lang.CharSequence)"
        - "<init>(int)"
        - "iterator()"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:151"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler,io.netty.channel.ChannelHandlerContext)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:130"
        BranchSideFuncs:
        - "hasNext()"
        - "add(java.lang.Object)"
        - "next()"
        - "iterator()"
        - "newReponseData()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:129"
        BranchSideFuncs:
        - "computeMergeExtensionsHeaderValue(java.lang.String,java.util.List)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:147"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:152"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:151"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler,io.netty.channel.ChannelHandlerContext)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:118,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:120,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].isWebsocketUpgrade(io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:123,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].getAsString(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:125,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:125,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:126,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:126,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:126,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:127,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtension].newReponseData()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:127,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:130,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionUtil].computeMergeExtensionsHeaderValue(java.lang.String,java.util.List)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:131,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler$1].<init>(io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:131,1"
      Dst: "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:148,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler:152,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler$2].<init>(io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler,io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler$1].<init>(io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler$1"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler$1:131,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler$2].<init>(io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler$2"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler$2:152,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler].access$000(io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketServerExtensionHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.SnappyFramedEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.SnappyFramedEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.SnappyFrameEncoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.SnappyFramedEncoder:23,1"
      Dst: "[io.netty.handler.codec.compression.SnappyFrameEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeDirectByteBuf$1].<init>()"
    functionSourceFile: "io.netty.buffer.PooledUnsafeDirectByteBuf$1"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeDirectByteBuf$1:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeDirectByteBuf$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeDirectByteBuf$1"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 2
    returnType: "io.netty.buffer.PooledUnsafeDirectByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int,io.netty.buffer.PooledUnsafeDirectByteBuf$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeDirectByteBuf$1:34,1"
      Dst: "[io.netty.buffer.PooledUnsafeDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int,io.netty.buffer.PooledUnsafeDirectByteBuf$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int,io.netty.buffer.PooledUnsafeDirectByteBuf$1)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    - "int"
    - "io.netty.buffer.PooledUnsafeDirectByteBuf$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeDirectByteBuf:29,1"
      Dst: "[io.netty.buffer.PooledUnsafeDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeDirectByteBuf:47,1"
      Dst: "[io.netty.buffer.PooledByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$6].<init>(io.netty.channel.AbstractChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$6"
    linkageType: ""
    functionLinenumber: 377
    functionLinenumberEnd: 379
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$6:378,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$6"
    linkageType: ""
    functionLinenumber: 380
    functionLinenumberEnd: 383
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].access$500(io.netty.channel.AbstractChannelHandlerContext,java.lang.Object)"
    functionUses: 50
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$6:381,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].access$500(io.netty.channel.AbstractChannelHandlerContext,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].<init>(io.netty.handler.codec.http2.Http2FrameWriter,io.netty.handler.codec.http2.Http2FrameLogger)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2OutboundFrameLogger"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameWriter"
    - "io.netty.handler.codec.http2.Http2FrameLogger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:35,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:36,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2OutboundFrameLogger"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 7
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 6
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logData(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2DataWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 13
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:43,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logData(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:44,1"
      Dst: "[io.netty.handler.codec.http2.Http2DataWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2OutboundFrameLogger"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 6
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logHeaders(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 13
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:50,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logHeaders(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:51,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2OutboundFrameLogger"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 61
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 9
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "short"
    - "boolean"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logHeaders(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 16
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:58,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logHeaders(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:60,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writePriority(io.netty.channel.ChannelHandlerContext,int,int,short,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2OutboundFrameLogger"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 6
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    - "short"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logPriority(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writePriority(io.netty.channel.ChannelHandlerContext,int,int,short,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writePriority(io.netty.channel.ChannelHandlerContext,int,int,short,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writePriority(io.netty.channel.ChannelHandlerContext,int,int,short,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writePriority(io.netty.channel.ChannelHandlerContext,int,int,short,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writePriority(io.netty.channel.ChannelHandlerContext,int,int,short,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:67,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logPriority(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:68,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writePriority(io.netty.channel.ChannelHandlerContext,int,int,short,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2OutboundFrameLogger"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logRstStream(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,long)"
    - "[io.netty.handler.codec.http2.Http2ControlFrameLimitEncoder].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    functionUses: 4
    ICount: 11
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:74,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logRstStream(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,long)"
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:75,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2OutboundFrameLogger"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Settings"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logSettings(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:81,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logSettings(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:82,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeSettings(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeSettingsAck(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2OutboundFrameLogger"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 89
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logSettingsAck(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeSettingsAck(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeSettingsAck(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2ControlFrameLimitEncoder].writeSettingsAck(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeSettingsAck(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeSettingsAck(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeSettingsAck(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 4
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:87,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logSettingsAck(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:88,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeSettingsAck(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writePing(io.netty.channel.ChannelHandlerContext,boolean,long,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2OutboundFrameLogger"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 100
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "boolean"
    - "long"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logPingAck(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logPing(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writePing(io.netty.channel.ChannelHandlerContext,boolean,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2ControlFrameLimitEncoder].writePing(io.netty.channel.ChannelHandlerContext,boolean,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writePing(io.netty.channel.ChannelHandlerContext,boolean,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writePing(io.netty.channel.ChannelHandlerContext,boolean,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writePing(io.netty.channel.ChannelHandlerContext,boolean,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writePing(io.netty.channel.ChannelHandlerContext,boolean,long,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 16
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:94"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:97"
        BranchSideFuncs:
        - "logPingAck(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,long)"
      - BranchSide: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:96"
        BranchSideFuncs:
        - "logPing(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,long)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:95,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logPingAck(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,long)"
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:97,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logPing(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,long)"
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:99,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writePing(io.netty.channel.ChannelHandlerContext,boolean,long,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writePushPromise(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2OutboundFrameLogger"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 6
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logPushPromise(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writePushPromise(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writePushPromise(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writePushPromise(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writePushPromise(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writePushPromise(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:105,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logPushPromise(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:106,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writePushPromise(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeGoAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2OutboundFrameLogger"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 114
    functionDepth: 7
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logGoAway(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeGoAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeGoAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeGoAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeGoAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeGoAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 12
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:112,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logGoAway(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:113,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeGoAway(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeWindowUpdate(io.netty.channel.ChannelHandlerContext,int,int,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2OutboundFrameLogger"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 121
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logWindowsUpdate(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeWindowUpdate(io.netty.channel.ChannelHandlerContext,int,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeWindowUpdate(io.netty.channel.ChannelHandlerContext,int,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeWindowUpdate(io.netty.channel.ChannelHandlerContext,int,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeWindowUpdate(io.netty.channel.ChannelHandlerContext,int,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeWindowUpdate(io.netty.channel.ChannelHandlerContext,int,int,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:119,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logWindowsUpdate(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,int,int)"
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:120,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeWindowUpdate(io.netty.channel.ChannelHandlerContext,int,int,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2OutboundFrameLogger"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionDepth: 7
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 6
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "byte"
    - "int"
    - "io.netty.handler.codec.http2.Http2Flags"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameLogger].logUnknownFrame(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 13
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:126,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameLogger].logUnknownFrame(io.netty.handler.codec.http2.Http2FrameLogger$Direction,io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:127,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].close()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2OutboundFrameLogger"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].close()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].close()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].close()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].close()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].close()"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].close()"
    functionUses: 4
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:132,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].configuration()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2OutboundFrameLogger"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameWriter$Configuration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].configuration()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].configuration()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].configuration()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].configuration()"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].configuration()"
    functionUses: 3
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2OutboundFrameLogger:137,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].configuration()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.CompactObjectInputStream].readStreamHeader()"
    functionSourceFile: "io.netty.handler.codec.serialization.CompactObjectInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectInputStream].readByte()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.StreamCorruptedException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.serialization.CompactObjectInputStream:37"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.serialization.CompactObjectInputStream:41"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.serialization.CompactObjectInputStream:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:36,1"
      Dst: "[java.io.ObjectInputStream].readByte()"
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:38,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:38,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:38,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:38,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:38,1"
      Dst: "[java.io.StreamCorruptedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.CompactObjectInputStream].readClassDescriptor()"
    functionSourceFile: "io.netty.handler.codec.serialization.CompactObjectInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.io.ObjectStreamClass"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectInputStream].read()"
    - "[java.io.EOFException].<init>()"
    - "[java.io.ObjectInputStream].readClassDescriptor()"
    - "[java.io.ObjectInputStream].readUTF()"
    - "[io.netty.handler.codec.serialization.ClassResolver].resolve(java.lang.String)"
    - "[java.io.ObjectStreamClass].lookupAny(java.lang.Class)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.StreamCorruptedException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.serialization.CompactObjectInputStream:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.serialization.CompactObjectInputStream:50"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.serialization.CompactObjectInputStream:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:46,1"
      Dst: "[java.io.ObjectInputStream].read()"
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:48,1"
      Dst: "[java.io.EOFException].<init>()"
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:52,1"
      Dst: "[java.io.ObjectInputStream].readClassDescriptor()"
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:54,1"
      Dst: "[java.io.ObjectInputStream].readUTF()"
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:55,1"
      Dst: "[io.netty.handler.codec.serialization.ClassResolver].resolve(java.lang.String)"
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:56,1"
      Dst: "[java.io.ObjectStreamClass].lookupAny(java.lang.Class)"
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:58,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:58,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:58,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:58,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:58,1"
      Dst: "[java.io.StreamCorruptedException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      - "java.lang.ClassNotFoundException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.CompactObjectInputStream].resolveClass(java.io.ObjectStreamClass)"
    functionSourceFile: "io.netty.handler.codec.serialization.CompactObjectInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "java.io.ObjectStreamClass"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.ObjectStreamClass].getName()"
    - "[io.netty.handler.codec.serialization.ClassResolver].resolve(java.lang.String)"
    - "[java.io.ObjectInputStream].resolveClass(java.io.ObjectStreamClass)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:67,1"
      Dst: "[java.io.ObjectStreamClass].getName()"
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:67,1"
      Dst: "[io.netty.handler.codec.serialization.ClassResolver].resolve(java.lang.String)"
    - Src: "io.netty.handler.codec.serialization.CompactObjectInputStream:69,1"
      Dst: "[java.io.ObjectInputStream].resolveClass(java.io.ObjectStreamClass)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      - "java.lang.ClassNotFoundException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompConstants].<init>()"
    functionSourceFile: "io.netty.handler.codec.stomp.StompConstants"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompConstants:25,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$9].run()"
    functionSourceFile: "io.netty.util.internal.SocketUtils$9"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "java.net.InetAddress[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetAddress].getAllByName(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$9:169,1"
      Dst: "[java.net.InetAddress].getAllByName(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.net.UnknownHostException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer$3"
    linkageType: ""
    functionLinenumber: 673
    functionLinenumberEnd: 676
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].close(java.lang.Throwable,boolean)"
    functionUses: 50
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer$3:674,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].close(java.lang.Throwable,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].isSegmentedDatagramPacketSupported()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.Epoll].isAvailable()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:73"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:73"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:73"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:73,1"
      Dst: "[io.netty.channel.epoll.Epoll].isAvailable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.epoll.Epoll].isAvailable()"
    functionSourceFile: "io.netty.channel.epoll.Epoll"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.Epoll:70"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Epoll:69"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].<init>()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDatagramChannel].<init>(io.netty.channel.socket.InternetProtocolFamily)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:83,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].<init>(io.netty.channel.socket.InternetProtocolFamily)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].<init>(io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].newSocketDgram(io.netty.channel.socket.InternetProtocolFamily)"
    - "[io.netty.channel.epoll.EpollDatagramChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:91,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].newSocketDgram(io.netty.channel.socket.InternetProtocolFamily)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:91,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].<init>(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].<init>(int)"
    - "[io.netty.channel.epoll.EpollDatagramChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:99,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].<init>(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:99,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].<init>(io.netty.channel.epoll.LinuxSocket,boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.epoll.LinuxSocket"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel].<init>(io.netty.channel.Channel,io.netty.channel.epoll.LinuxSocket,boolean)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].<init>(io.netty.channel.epoll.EpollDatagramChannel)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:103,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].<init>(io.netty.channel.Channel,io.netty.channel.epoll.LinuxSocket,boolean)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:104,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannelConfig].<init>(io.netty.channel.epoll.EpollDatagramChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].metadata()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 0
    returnType: "io.netty.channel.ChannelMetadata"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].getActiveOnOpen()"
    - "[io.netty.channel.unix.FileDescriptor].isOpen()"
    - "[io.netty.channel.AbstractChannel].isRegistered()"
    functionUses: 37
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:124"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:123"
        BranchSideFuncs:
        - "isRegistered()"
        - "getActiveOnOpen()"
        - "isOpen()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:124"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:123"
        BranchSideFuncs:
        - "isRegistered()"
        - "getActiveOnOpen()"
        - "isOpen()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:124"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:123"
        BranchSideFuncs:
        - "isRegistered()"
        - "getActiveOnOpen()"
        - "isOpen()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:124"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:123"
        BranchSideFuncs:
        - "isRegistered()"
        - "getActiveOnOpen()"
        - "isOpen()"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:124,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].isOpen()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:124,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannelConfig].getActiveOnOpen()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:124,1"
      Dst: "[io.netty.channel.AbstractChannel].isRegistered()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannelConfig].getActiveOnOpen()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:134,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:134,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].getNetworkInterface()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].localAddress()"
    - "[java.net.InetSocketAddress].getAddress()"
    - "[java.net.NetworkInterface].getByInetAddress(java.net.InetAddress)"
    - "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:141"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:144"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:143"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:140,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:140,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannelConfig].getNetworkInterface()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:142,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].localAddress()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:142,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:142,1"
      Dst: "[java.net.NetworkInterface].getByInetAddress(java.net.InetAddress)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:144,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:146,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannelConfig].getNetworkInterface()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 389
    functionLinenumberEnd: 393
    functionDepth: 3
    returnType: "java.net.NetworkInterface"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getNetworkInterface()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannelConfig:390,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getNetworkInterface()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannelConfig:392,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getNetworkInterface()"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 104
    functionDepth: 2
    returnType: "java.net.NetworkInterface"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getInterface(int,boolean)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.unix.FileDescriptor:java.net.NetworkInterface].getByIndex(int)"
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.channel.epoll.LinuxSocket].inetAddress(int)"
    - "[java.net.NetworkInterface].getByInetAddress(java.net.InetAddress)"
    - "[java.net.NetworkInterface].getByIndex(int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.LinuxSocket:99"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:102"
        BranchSideFuncs:
        - "javaVersion()"
        - "getByIndex(int)"
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:101"
        BranchSideFuncs:
        - "inetAddress(int)"
        - "getByInetAddress(java.net.InetAddress)"
    - Branch String: "io.netty.channel.epoll.LinuxSocket:100"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:99"
        BranchSideFuncs:
        - "javaVersion()"
        - "getByIndex(int)"
    - Branch String: "io.netty.channel.epoll.LinuxSocket:103"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:101"
        BranchSideFuncs:
        - "inetAddress(int)"
        - "getByInetAddress(java.net.InetAddress)"
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:98,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:98,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getInterface(int,boolean)"
    - Src: "io.netty.channel.epoll.LinuxSocket:100,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.epoll.LinuxSocket:100,1"
      Dst: "[java.net.NetworkInterface].getByIndex(int)"
    - Src: "io.netty.channel.epoll.LinuxSocket:102,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].inetAddress(int)"
    - Src: "io.netty.channel.epoll.LinuxSocket:103,1"
      Dst: "[java.net.NetworkInterface].getByInetAddress(java.net.InetAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getInterface(int,boolean)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.LinuxSocket].inetAddress(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 118
    functionDepth: 0
    returnType: "java.net.InetAddress"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetAddress].getByAddress(byte[])"
    functionUses: 1
    ICount: 21
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:115,1"
      Dst: "[java.net.InetAddress].getByAddress(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup0(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].<init>(io.netty.channel.epoll.EpollDatagramChannel,java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:178"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:181"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:180"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:175,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:178,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:178,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:179,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup0(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:181,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel$1].<init>(io.netty.channel.epoll.EpollDatagramChannel,java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:181,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup0(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 203
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.epoll.LinuxSocket].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 20
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:194"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:197"
        BranchSideFuncs:
        - "joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "setSuccess()"
        - "eventLoop()"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:196"
        BranchSideFuncs:
        - "joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
        - "setFailure(java.lang.Throwable)"
        - "setSuccess()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:194"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:197"
        BranchSideFuncs:
        - "joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "setSuccess()"
        - "eventLoop()"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:196"
        BranchSideFuncs:
        - "joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
        - "setFailure(java.lang.Throwable)"
        - "setSuccess()"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:194,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:194,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:194,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:197,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:198,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:200,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.LinuxSocket].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 136
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.NativeInetAddress].newInstance(java.net.InetAddress)"
    - "[io.netty.channel.epoll.LinuxSocket].deriveInetAddress(java.net.NetworkInterface,boolean)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.channel.unix.NativeInetAddress].address()"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].joinSsmGroup(int,boolean,byte[],byte[],int,int,byte[])"
    - "[io.netty.channel.epoll.LinuxSocket].interfaceIndex(java.net.NetworkInterface)"
    - "[io.netty.channel.unix.NativeInetAddress].scopeId()"
    - "[io.netty.channel.epoll.LinuxSocket].joinGroup(int,boolean,byte[],byte[],int,int)"
    functionUses: 1
    ICount: 43
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.LinuxSocket:125"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:133"
        BranchSideFuncs:
        - "getClass()"
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:132"
        BranchSideFuncs:
        - "interfaceIndex(java.net.NetworkInterface)"
        - "address()"
        - "intValue()"
        - "scopeId()"
        - "joinGroup(int,boolean,byte[],byte[],int,int)"
    - Branch String: "io.netty.channel.epoll.LinuxSocket:126"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:129"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:128"
        BranchSideFuncs:
        - "newInstance(java.net.InetAddress)"
        - "joinSsmGroup(int,boolean,byte[],byte[],int,int,byte[])"
    - Branch String: "io.netty.channel.epoll.LinuxSocket:130"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:129"
        BranchSideFuncs:
        - "joinSsmGroup(int,boolean,byte[],byte[],int,int,byte[])"
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:128"
        BranchSideFuncs:
        - "newInstance(java.net.InetAddress)"
        - "joinSsmGroup(int,boolean,byte[],byte[],int,int,byte[])"
    - Branch String: "io.netty.channel.epoll.LinuxSocket:130"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:129"
        BranchSideFuncs:
        - "joinSsmGroup(int,boolean,byte[],byte[],int,int,byte[])"
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:128"
        BranchSideFuncs:
        - "newInstance(java.net.InetAddress)"
        - "joinSsmGroup(int,boolean,byte[],byte[],int,int,byte[])"
    - Branch String: "io.netty.channel.epoll.LinuxSocket:133"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:132"
        BranchSideFuncs:
        - "interfaceIndex(java.net.NetworkInterface)"
        - "address()"
        - "intValue()"
        - "scopeId()"
        - "joinGroup(int,boolean,byte[],byte[],int,int)"
    - Branch String: "io.netty.channel.epoll.LinuxSocket:133"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:132"
        BranchSideFuncs:
        - "interfaceIndex(java.net.NetworkInterface)"
        - "address()"
        - "intValue()"
        - "scopeId()"
        - "joinGroup(int,boolean,byte[],byte[],int,int)"
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:122,1"
      Dst: "[io.netty.channel.unix.NativeInetAddress].newInstance(java.net.InetAddress)"
    - Src: "io.netty.channel.epoll.LinuxSocket:124,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].deriveInetAddress(java.net.NetworkInterface,boolean)"
    - Src: "io.netty.channel.epoll.LinuxSocket:126,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.channel.epoll.LinuxSocket:127,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.channel.epoll.LinuxSocket:130,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:130,1"
      Dst: "[io.netty.channel.unix.NativeInetAddress].address()"
    - Src: "io.netty.channel.epoll.LinuxSocket:131,1"
      Dst: "[io.netty.channel.unix.NativeInetAddress].scopeId()"
    - Src: "io.netty.channel.epoll.LinuxSocket:131,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].interfaceIndex(java.net.NetworkInterface)"
    - Src: "io.netty.channel.epoll.LinuxSocket:130,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].joinSsmGroup(int,boolean,byte[],byte[],int,int,byte[])"
    - Src: "io.netty.channel.epoll.LinuxSocket:133,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].joinGroup(int,boolean,byte[],byte[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.epoll.LinuxSocket].joinSsmGroup(int,boolean,byte[],byte[],int,int,byte[])"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "int"
    - "boolean"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.LinuxSocket].joinGroup(int,boolean,byte[],byte[],int,int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "boolean"
    - "byte[]"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel$1].<init>(io.netty.channel.epoll.EpollDatagramChannel,java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.epoll.EpollDatagramChannel"
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$1:181,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup(java.net.InetSocketAddress,java.net.NetworkInterface)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.NetworkInterface"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:154,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:154,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.NetworkInterface"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].getAddress()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:161,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:161,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:167,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:167,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:206,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:206,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDatagramChannel].localAddress()"
    - "[java.net.InetSocketAddress].getAddress()"
    - "[java.net.NetworkInterface].getByInetAddress(java.net.InetAddress)"
    - "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:213,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].localAddress()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:213,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:213,1"
      Dst: "[java.net.NetworkInterface].getByInetAddress(java.net.InetAddress)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:212,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:215,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup0(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].<init>(io.netty.channel.epoll.EpollDatagramChannel,java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:246"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:249"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:243,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:246,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:246,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:247,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup0(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:249,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel$2].<init>(io.netty.channel.epoll.EpollDatagramChannel,java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:249,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup(java.net.InetSocketAddress,java.net.NetworkInterface)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.NetworkInterface"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:223,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:223,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup(java.net.InetSocketAddress,java.net.NetworkInterface,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.NetworkInterface"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].getAddress()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:230,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:230,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:236,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:236,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].leaveGroup(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].block(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].block(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:276,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:276,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].block(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].block(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:283,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:287,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:287,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].block(java.net.InetAddress,java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].block(java.net.InetAddress,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:293,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:293,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].block(java.net.InetAddress,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].block(java.net.InetAddress,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "java.net.InetAddress"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDatagramChannel].localAddress()"
    - "[java.net.InetSocketAddress].getAddress()"
    - "[java.net.NetworkInterface].getByInetAddress(java.net.InetAddress)"
    - "[io.netty.channel.epoll.EpollDatagramChannel].block(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:302,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].localAddress()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:302,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:302,1"
      Dst: "[java.net.NetworkInterface].getByInetAddress(java.net.InetAddress)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:300,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].block(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:305,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].newUnsafe()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 311
    functionLinenumberEnd: 313
    functionDepth: 1
    returnType: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe].<init>(io.netty.channel.epoll.EpollDatagramChannel)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:312,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe].<init>(io.netty.channel.epoll.EpollDatagramChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 316
    functionLinenumberEnd: 329
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].getAddress()"
    - "[java.net.Inet6Address].isAnyLocalAddress()"
    - "[java.net.Inet4Address].isAnyLocalAddress()"
    - "[java.net.InetAddress].isAnyLocalAddress()"
    - "[io.netty.channel.epoll.LinuxSocket].family()"
    - "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    - "[java.net.InetSocketAddress].getPort()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].doBind(java.net.SocketAddress)"
    functionUses: 1
    ICount: 24
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:317"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:null"
        BranchSideFuncs:
        - "isAnyLocalAddress()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:319"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:null"
        BranchSideFuncs:
        - "getAddress()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:320"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:null"
        BranchSideFuncs:
        - "family()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:321"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:null"
        BranchSideFuncs:
        - "<init>(java.net.InetAddress,int)"
        - "getPort()"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:319,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:319,1"
      Dst: "[java.net.InetAddress].isAnyLocalAddress()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:321,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].family()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:322,1"
      Dst: "[java.net.InetSocketAddress].getPort()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:322,1"
      Dst: "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:326,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].doBind(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.epoll.LinuxSocket].family()"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "io.netty.channel.socket.InternetProtocolFamily"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.LinuxSocket:51"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:50"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].doWrite(io.netty.channel.ChannelOutboundBuffer)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 331
    functionLinenumberEnd: 397
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].maxMessagesPerWrite()"
    - "[io.netty.channel.ChannelOutboundBuffer].current()"
    - "[io.netty.channel.ChannelOutboundBuffer].size()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].cleanDatagramPacketArray()"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray].add(io.netty.channel.ChannelOutboundBuffer,boolean,int)"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isConnected()"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray].count()"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray].packets()"
    - "[io.netty.channel.epoll.LinuxSocket].sendmmsg(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    - "[io.netty.channel.ChannelOutboundBuffer].remove()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].getWriteSpinCount()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].doWriteMessage(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundBuffer].remove(java.lang.Throwable)"
    - "[io.netty.channel.ChannelOutboundBuffer].isEmpty()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].clearFlag(int)"
    - "[io.netty.channel.epoll.AbstractEpollChannel].setFlag(int)"
    functionUses: 1
    ICount: 62
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:333"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:389"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:388"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:335"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:341"
        BranchSideFuncs:
        - "size()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:342"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:343"
        BranchSideFuncs:
        - "current()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:342"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:344"
        BranchSideFuncs:
        - "count()"
        - "add(io.netty.channel.ChannelOutboundBuffer,boolean,int)"
        - "isConnected()"
        - "cleanDatagramPacketArray()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:344"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:366"
        BranchSideFuncs:
        - "count()"
        - "add(io.netty.channel.ChannelOutboundBuffer,boolean,int)"
        - "isConnected()"
        - "cleanDatagramPacketArray()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:365"
        BranchSideFuncs:
        - "config()"
        - "getWriteSpinCount()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:349"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:365"
        BranchSideFuncs:
        - "config()"
        - "getWriteSpinCount()"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:355"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:358"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:359"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:361"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:367"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:374"
        BranchSideFuncs:
        - "doWriteMessage(java.lang.Object)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:373"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:368"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:374"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:378"
        BranchSideFuncs:
        - "remove()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:377"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:389"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:393"
        BranchSideFuncs:
        - "setFlag(int)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:332,1"
      Dst: "[io.netty.channel.AbstractChannel].maxMessagesPerWrite()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:334,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].current()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:342,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].size()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:345,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].cleanDatagramPacketArray()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:346,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].isConnected()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:346,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray].add(io.netty.channel.ChannelOutboundBuffer,boolean,int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:347,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray].count()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:352,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray].packets()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:354,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].sendmmsg(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:360,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].remove()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:367,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:367,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getWriteSpinCount()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:368,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].doWriteMessage(java.lang.Object)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:385,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].remove(java.lang.Throwable)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:389,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].isEmpty()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:391,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].clearFlag(int)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:394,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].setFlag(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 29
    CyclomaticComplexity: 13
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray].add(io.netty.channel.ChannelOutboundBuffer,boolean,int)"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 89
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor].access$202(io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor,boolean)"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor].access$302(io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor,int)"
    - "[io.netty.channel.ChannelOutboundBuffer].forEachFlushedMessage(io.netty.channel.ChannelOutboundBuffer$MessageProcessor)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:85,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor].access$202(io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor,boolean)"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:86,1"
      Dst: "[io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor].access$302(io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor,int)"
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:87,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].forEachFlushedMessage(io.netty.channel.ChannelOutboundBuffer$MessageProcessor)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].forEachFlushedMessage(io.netty.channel.ChannelOutboundBuffer$MessageProcessor)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 770
    functionLinenumberEnd: 787
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer$MessageProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.epoll.NativeDatagramPacketArray$MyMessageProcessor].processMessage(java.lang.Object)"
    - "[io.netty.channel.unix.IovArray].processMessage(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundBuffer].isFlushedEntry(io.netty.channel.ChannelOutboundBuffer$Entry)"
    - "[io.netty.channel.ChannelOutboundBuffer$MessageProcessor].processMessage(java.lang.Object)"
    functionUses: 3
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:774"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:779"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:778"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:779"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:784"
        BranchSideFuncs:
        - "processMessage(java.lang.Object)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:783"
        BranchSideFuncs:
        - "isFlushedEntry(io.netty.channel.ChannelOutboundBuffer$Entry)"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:780"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:784"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:783"
        BranchSideFuncs:
        - "isFlushedEntry(io.netty.channel.ChannelOutboundBuffer$Entry)"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:785"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:779"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:778"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:771,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:780,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer$MessageProcessor].processMessage(java.lang.Object)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:785,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].isFlushedEntry(io.netty.channel.ChannelOutboundBuffer$Entry)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].isFlushedEntry(io.netty.channel.ChannelOutboundBuffer$Entry)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 788
    functionLinenumberEnd: 790
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer$Entry"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:789"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:788"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:789"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:788"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.epoll.LinuxSocket].sendmmsg(io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 4
    returnType: "int"
    argCount: 3
    argTypes:
    - "io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.Native].sendmmsg(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:56,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:56,1"
      Dst: "[io.netty.channel.epoll.Native].sendmmsg(int,boolean,io.netty.channel.epoll.NativeDatagramPacketArray$NativeDatagramPacket[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].doWriteMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 400
    functionLinenumberEnd: 418
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].content()"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.channel.DefaultAddressedEnvelope].content()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].content()"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].recipient()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].recipient()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].doWriteOrSendBytes(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,boolean)"
    - "[io.netty.channel.AddressedEnvelope].content()"
    - "[io.netty.channel.AddressedEnvelope].recipient()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 1
    ICount: 23
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:401"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:407"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:413"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:417"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:416"
        BranchSideFuncs:
        - "doWriteOrSendBytes(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,boolean)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:417"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:416"
        BranchSideFuncs:
        - "doWriteOrSendBytes(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,boolean)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:405,1"
      Dst: "[io.netty.channel.AddressedEnvelope].content()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:406,1"
      Dst: "[io.netty.channel.AddressedEnvelope].recipient()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:412,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:417,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].doWriteOrSendBytes(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].filterOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 421
    functionLinenumberEnd: 459
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.channel.unix.UnixChannelUtil].isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.epoll.AbstractEpollChannel].newDirectBuffer(java.lang.Object,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.epoll.SegmentedDatagramPacket].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.unix.SegmentedDatagramPacket].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
    - "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].newDirectBuffer(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].content()"
    - "[io.netty.channel.DefaultAddressedEnvelope].content()"
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].content()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].recipient()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].recipient()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].recipient()"
    - "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress)"
    - "[io.netty.channel.AddressedEnvelope].content()"
    - "[io.netty.channel.AddressedEnvelope].recipient()"
    functionUses: 1
    ICount: 87
    EdgeCount: 53
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:422"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:432"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:431"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:423"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:427"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:426"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:429"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:427"
        BranchSideFuncs:
        - "replace(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:426"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:432"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:439"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:438"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:435"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:433"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:432"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:439"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:444"
        BranchSideFuncs:
        - "newDirectBuffer(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:443"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:441"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:439"
        BranchSideFuncs:
        - "newDirectBuffer(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:444"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:456"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:447"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:457"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:456"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:448"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:449"
        BranchSideFuncs:
        - "content()"
        - "isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:448"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:456"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:451"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:450"
        BranchSideFuncs:
        - "<init>(java.lang.Object,java.net.SocketAddress)"
        - "isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf)"
        - "newDirectBuffer(java.lang.Object,io.netty.buffer.ByteBuf)"
        - "recipient()"
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:449"
        BranchSideFuncs:
        - "content()"
        - "isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:424,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:424,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:425,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:425,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:425,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:428,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].content()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:429,1"
      Dst: "[io.netty.channel.unix.UnixChannelUtil].isBufferCopyNeededForWrite(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:430,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].newDirectBuffer(java.lang.Object,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:430,1"
      Dst: "[io.netty.channel.unix.SegmentedDatagramPacket].replace(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:436,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].recipient()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:436,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:441,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].newDirectBuffer(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:447,1"
      Dst: "[io.netty.channel.AddressedEnvelope].content()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:448,1"
      Dst: "[io.netty.channel.AddressedEnvelope].recipient()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:453,1"
      Dst: "[io.netty.channel.DefaultAddressedEnvelope].<init>(java.lang.Object,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 26
    CyclomaticComplexity: 8
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].doDisconnect()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 467
    functionLinenumberEnd: 472
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].disconnect()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].resetCachedAddresses()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:468,1"
      Dst: "[io.netty.channel.unix.Socket].disconnect()"
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:470,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].resetCachedAddresses()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].disconnect()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 364
    functionLinenumberEnd: 370
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].disconnect(int,boolean)"
    - "[io.netty.channel.unix.Errors].handleConnectErrno(java.lang.String,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:366"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:369"
        BranchSideFuncs:
        - "handleConnectErrno(java.lang.String,int)"
      - BranchSide: "io.netty.channel.unix.Socket:368"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:365,1"
      Dst: "[io.netty.channel.unix.Socket].disconnect(int,boolean)"
    - Src: "io.netty.channel.unix.Socket:367,1"
      Dst: "[io.netty.channel.unix.Errors].handleConnectErrno(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Socket].disconnect(int,boolean)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 474
    functionLinenumberEnd: 480
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDatagramChannel:475"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:479"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDatagramChannel:478"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:475,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].doClose()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 483
    functionLinenumberEnd: 487
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel].doClose()"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:484,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].doClose()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].isOpen()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel].isOpen()"
    functionUses: 12
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:55,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].isOpen()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel].access$000(io.netty.channel.epoll.EpollDatagramChannel,java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 5
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.epoll.EpollDatagramChannel"
    - "java.net.InetAddress"
    - "java.net.NetworkInterface"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup0(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel:55,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].joinGroup0(java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Crc32c].update(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Crc32c"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Crc32c].crc32c(int,int)"
    functionUses: 12
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Crc32c:101,1"
      Dst: "[io.netty.handler.codec.compression.Crc32c].crc32c(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Crc32c].crc32c(int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Crc32c"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Crc32c].update(byte[],int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Crc32c"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 111
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Crc32c].update(int)"
    functionUses: 3
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Crc32c:107"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Crc32c:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Crc32c:108,1"
      Dst: "[io.netty.handler.codec.compression.Crc32c].update(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpClientUpgradeHandler].<init>(io.netty.handler.codec.http.HttpClientUpgradeHandler$SourceCodec,io.netty.handler.codec.http.HttpClientUpgradeHandler$UpgradeCodec,int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientUpgradeHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpClientUpgradeHandler$SourceCodec"
    - "io.netty.handler.codec.http.HttpClientUpgradeHandler$UpgradeCodec"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator].<init>(int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:118,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator].<init>(int)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:119,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientUpgradeHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientUpgradeHandler"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 127
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:125,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientUpgradeHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientUpgradeHandler"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:131,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientUpgradeHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientUpgradeHandler"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:136,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientUpgradeHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientUpgradeHandler"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:141,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientUpgradeHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientUpgradeHandler"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].deregister(io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:146,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].deregister(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientUpgradeHandler].read(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientUpgradeHandler"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].read()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].read()"
    - "[io.netty.channel.ChannelHandlerContext].read()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:151,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].read()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientUpgradeHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientUpgradeHandler"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 178
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http.HttpClientUpgradeHandler].setUpgradeRequestHeaders(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    functionUses: 2
    ICount: 21
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpClientUpgradeHandler:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:162"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:161"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpClientUpgradeHandler:162"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:168"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:167"
        BranchSideFuncs:
        - "setUpgradeRequestHeaders(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
        - "fireUserEventTriggered(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:158,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:163,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:163,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:169,1"
      Dst: "[io.netty.handler.codec.http.HttpClientUpgradeHandler].setUpgradeRequestHeaders(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:175,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientUpgradeHandler].setUpgradeRequestHeaders(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientUpgradeHandler"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 277
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].protocol()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[java.util.LinkedHashSet].<init>(int)"
    - "[java.util.AbstractCollection].addAll(java.util.Collection)"
    - "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].setUpgradeHeaders(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
    - "[java.lang.StringBuilder].<init>()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpClientUpgradeHandler$UpgradeCodec].protocol()"
    - "[io.netty.handler.codec.http.HttpClientUpgradeHandler$UpgradeCodec].setUpgradeHeaders(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
    - "[java.util.Set].addAll(java.util.Collection)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 30
    EdgeCount: 132
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpClientUpgradeHandler:270"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:274"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "append(char)"
        - "iterator()"
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:273"
        BranchSideFuncs:
        - "add(java.lang.CharSequence,java.lang.Object)"
        - "toString()"
        - "headers()"
        - "append(java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:262,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:262,1"
      Dst: "[io.netty.handler.codec.http.HttpClientUpgradeHandler$UpgradeCodec].protocol()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:262,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:265,1"
      Dst: "[java.util.LinkedHashSet].<init>(int)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:266,1"
      Dst: "[io.netty.handler.codec.http.HttpClientUpgradeHandler$UpgradeCodec].setUpgradeHeaders(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:266,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:269,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:270,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:270,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:270,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:271,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:272,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:275,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:275,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpClientUpgradeHandler].flush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientUpgradeHandler"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:181,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientUpgradeHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpObject,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientUpgradeHandler"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 252
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.HttpObject"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpClientUpgradeHandler].removeThisHandler(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].retain()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].retain()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.handler.codec.MessageAggregator].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[jaz.Zer].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].protocol()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.HttpClientCodec].prepareUpgradeFrom(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].upgradeTo(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpResponse)"
    - "[io.netty.handler.codec.http.HttpClientCodec].upgradeFrom(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].release()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].release()"
    - "[java.util.AbstractList].clear()"
    - "[java.util.concurrent.CopyOnWriteArrayList].clear()"
    - "[java.util.Vector].clear()"
    - "[jaz.Zer].clear()"
    - "[java.util.LinkedList].clear()"
    - "[java.util.ArrayList].clear()"
    - "[io.netty.handler.codec.CodecOutputList].clear()"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.handler.codec.http.FullHttpResponse].retain()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpClientUpgradeHandler$UpgradeCodec].protocol()"
    - "[io.netty.handler.codec.http.HttpClientUpgradeHandler$SourceCodec].prepareUpgradeFrom(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.HttpClientUpgradeHandler$UpgradeCodec].upgradeTo(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpResponse)"
    - "[io.netty.handler.codec.http.HttpClientUpgradeHandler$SourceCodec].upgradeFrom(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[java.util.List].clear()"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 1
    ICount: 74
    EdgeCount: 74
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpClientUpgradeHandler:189"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:193"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:192"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpClientUpgradeHandler:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:207"
        BranchSideFuncs:
        - "status()"
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:206"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpClientUpgradeHandler:195"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:207"
        BranchSideFuncs:
        - "removeThisHandler(io.netty.channel.ChannelHandlerContext)"
        - "append(java.lang.String)"
        - "fireUserEventTriggered(java.lang.Object)"
        - "headers()"
        - "fireChannelRead(java.lang.Object)"
        - "get(java.lang.CharSequence)"
        - "contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
        - "retain()"
        - "<init>()"
        - "release(java.lang.Object)"
        - "prepareUpgradeFrom(io.netty.channel.ChannelHandlerContext)"
        - "upgradeTo(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpResponse)"
        - "release()"
        - "clear()"
        - "add(java.lang.Object)"
        - "isEmpty()"
        - "append(java.lang.Object)"
        - "toString()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "get(int)"
        - "status()"
        - "decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
        - "protocol()"
        - "upgradeFrom(io.netty.channel.ChannelHandlerContext)"
        - "<init>(java.lang.String)"
        - "equals(java.lang.Object)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:206"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpClientUpgradeHandler:207"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:214"
        BranchSideFuncs:
        - "retain()"
        - "add(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:213"
        BranchSideFuncs:
        - "isEmpty()"
        - "decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - Branch String: "io.netty.handler.codec.http.HttpClientUpgradeHandler:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:220"
        BranchSideFuncs:
        - "removeThisHandler(io.netty.channel.ChannelHandlerContext)"
        - "append(java.lang.String)"
        - "fireUserEventTriggered(java.lang.Object)"
        - "headers()"
        - "fireChannelRead(java.lang.Object)"
        - "get(java.lang.CharSequence)"
        - "contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
        - "retain()"
        - "<init>()"
        - "release(java.lang.Object)"
        - "prepareUpgradeFrom(io.netty.channel.ChannelHandlerContext)"
        - "upgradeTo(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpResponse)"
        - "release()"
        - "clear()"
        - "add(java.lang.Object)"
        - "isEmpty()"
        - "append(java.lang.Object)"
        - "toString()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "get(int)"
        - "status()"
        - "decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
        - "protocol()"
        - "upgradeFrom(io.netty.channel.ChannelHandlerContext)"
        - "<init>(java.lang.String)"
        - "equals(java.lang.Object)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:219"
        BranchSideFuncs:
        - "size()"
    - Branch String: "io.netty.handler.codec.http.HttpClientUpgradeHandler:220"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:221"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:220"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "io.netty.handler.codec.http.HttpClientUpgradeHandler:220"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:221"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:220"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "io.netty.handler.codec.http.HttpClientUpgradeHandler:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:231"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:230"
        BranchSideFuncs:
        - "removeThisHandler(io.netty.channel.ChannelHandlerContext)"
        - "fireUserEventTriggered(java.lang.Object)"
        - "release(java.lang.Object)"
        - "prepareUpgradeFrom(io.netty.channel.ChannelHandlerContext)"
        - "upgradeTo(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpResponse)"
        - "release()"
        - "clear()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "upgradeFrom(io.netty.channel.ChannelHandlerContext)"
    - Branch String: "io.netty.handler.codec.http.HttpClientUpgradeHandler:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:231"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.HttpClientUpgradeHandler:230"
        BranchSideFuncs:
        - "removeThisHandler(io.netty.channel.ChannelHandlerContext)"
        - "fireUserEventTriggered(java.lang.Object)"
        - "release(java.lang.Object)"
        - "prepareUpgradeFrom(io.netty.channel.ChannelHandlerContext)"
        - "upgradeTo(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpResponse)"
        - "release()"
        - "clear()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "upgradeFrom(io.netty.channel.ChannelHandlerContext)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:190,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:195,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:195,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:200,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:201,1"
      Dst: "[io.netty.handler.codec.http.HttpClientUpgradeHandler].removeThisHandler(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:202,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:210,1"
      Dst: "[io.netty.handler.codec.http.FullHttpResponse].retain()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:211,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:214,1"
      Dst: "[io.netty.handler.codec.MessageAggregator].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:215,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:220,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:220,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:221,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:224,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:224,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:225,1"
      Dst: "[io.netty.handler.codec.http.HttpClientUpgradeHandler$UpgradeCodec].protocol()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:225,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:226,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:226,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:226,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:226,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:231,1"
      Dst: "[io.netty.handler.codec.http.HttpClientUpgradeHandler$SourceCodec].prepareUpgradeFrom(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:232,1"
      Dst: "[io.netty.handler.codec.http.HttpClientUpgradeHandler$UpgradeCodec].upgradeTo(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpResponse)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:239,1"
      Dst: "[io.netty.handler.codec.http.HttpClientUpgradeHandler$SourceCodec].upgradeFrom(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:243,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:244,1"
      Dst: "[java.util.List].clear()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:247,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:248,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.HttpClientUpgradeHandler].removeThisHandler(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientUpgradeHandler"
    linkageType: ""
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].name()"
    - "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(java.lang.String)"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelHandlerContext].name()"
    - "[io.netty.channel.ChannelPipeline].remove(java.lang.String)"
    functionUses: 3
    ICount: 5
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:254,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:254,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].name()"
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:254,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientUpgradeHandler].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientUpgradeHandler"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpClientUpgradeHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpObject,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientUpgradeHandler:39,1"
      Dst: "[io.netty.handler.codec.http.HttpClientUpgradeHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpObject,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameDecoder$State"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.Lz4FrameDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder$State:57,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.Lz4FrameDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder$State:57,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameDecoder$State"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder$State:57,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler].<init>()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageCodec].<init>()"
    - "[java.util.ArrayDeque].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:33,1"
      Dst: "[io.netty.handler.codec.MessageToMessageCodec].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:36,1"
      Dst: "[java.util.ArrayDeque].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler].acceptInboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:40"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:39"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:40"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:39"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpMessage,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 52
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.HttpMessage"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage:java.lang.Integer].intValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    - "[java.util.Queue].poll()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 23
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:50"
        BranchSideFuncs:
        - "intValue()"
        - "headers()"
        - "setInt(java.lang.CharSequence,int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:49"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "retain(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:50"
        BranchSideFuncs:
        - "intValue()"
        - "headers()"
        - "setInt(java.lang.CharSequence,int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:49"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "retain(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:50"
        BranchSideFuncs:
        - "intValue()"
        - "headers()"
        - "setInt(java.lang.CharSequence,int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:49"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "retain(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:45,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:46,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:46,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:46,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:47,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].setInt(java.lang.CharSequence,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:50,1"
      Dst: "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:50,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 68
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedQueue].add(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue:java.util.AbstractQueue:java.util.ArrayDeque:java.util.LinkedList:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.LinkedBlockingDeque].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].getInt(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].getInt(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].getInt(java.lang.CharSequence)"
    - "[io.netty.util.internal.DefaultPriorityQueue].remove(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].remove(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].remove(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].streamId()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[java.util.Queue].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].getInt(java.lang.CharSequence)"
    - "[io.netty.handler.codec.spdy.SpdyStreamFrame].streamId()"
    - "[java.util.Collection].remove(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 32
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:55"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:54"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:57"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:60"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:59"
        BranchSideFuncs:
        - "getInt(java.lang.CharSequence)"
        - "headers()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:66"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:65"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "retain(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:56,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:56,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:58,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:60,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].getInt(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:63,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamFrame].streamId()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:63,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:63,1"
      Dst: "[java.util.Collection].remove(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:66,1"
      Dst: "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:66,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpMessage,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler:33,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHttpResponseStreamIdHandler].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpMessage,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].<init>()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.BsdSocket].newSocketDomain()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].<init>(io.netty.channel.kqueue.BsdSocket,boolean)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:40,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].newSocketDomain()"
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:40,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueServerChannel].<init>(io.netty.channel.kqueue.BsdSocket,boolean)"
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:36,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].<init>(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].<init>(io.netty.channel.kqueue.BsdSocket,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:44,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:44,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].<init>(io.netty.channel.kqueue.BsdSocket,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].<init>(io.netty.channel.kqueue.BsdSocket,boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.kqueue.BsdSocket"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].<init>(io.netty.channel.kqueue.BsdSocket,boolean)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:48,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueServerChannel].<init>(io.netty.channel.kqueue.BsdSocket,boolean)"
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:36,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].newChildChannel(int,byte[],int,int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 8
    returnType: "io.netty.channel.Channel"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].<init>(io.netty.channel.Channel,io.netty.channel.kqueue.BsdSocket)"
    - "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:53,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:53,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].<init>(io.netty.channel.Channel,io.netty.channel.kqueue.BsdSocket)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].<init>(io.netty.channel.Channel,io.netty.channel.kqueue.BsdSocket)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.channel.kqueue.BsdSocket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].<init>(io.netty.channel.Channel,io.netty.channel.kqueue.BsdSocket,boolean)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:49,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].<init>(io.netty.channel.Channel,io.netty.channel.kqueue.BsdSocket,boolean)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:35,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.AbstractKQueueChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:44,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 68
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].bind(java.net.SocketAddress)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].getBacklog()"
    - "[io.netty.channel.unix.Socket].listen(int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:63,1"
      Dst: "[io.netty.channel.unix.Socket].bind(java.net.SocketAddress)"
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:64,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].getBacklog()"
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:64,1"
      Dst: "[io.netty.channel.unix.Socket].listen(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].getBacklog()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].listen(int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 391
    functionLinenumberEnd: 397
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].listen(int,int)"
    - "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    functionUses: 4
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:393"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:396"
        BranchSideFuncs:
        - "newIOException(java.lang.String,int)"
      - BranchSide: "io.netty.channel.unix.Socket:395"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:392,1"
      Dst: "[io.netty.channel.unix.Socket].listen(int,int)"
    - Src: "io.netty.channel.unix.Socket:394,1"
      Dst: "[io.netty.channel.unix.Errors].newIOException(java.lang.String,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].listen(int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].doClose()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 85
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].doClose()"
    - "[java.io.File].<init>(java.lang.String)"
    - "[io.netty.channel.unix.DomainSocketAddress].path()"
    - "[java.io.File].delete()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    functionUses: 6
    ICount: 32
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:75"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:82"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:79"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:83"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object)"
        - "path()"
      - BranchSide: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:82"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:79"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:83"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object)"
        - "path()"
      - BranchSide: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:82"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:75"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:82"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:79"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:83"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object)"
        - "path()"
      - BranchSide: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:82"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:79"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:83"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object)"
        - "path()"
      - BranchSide: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:72,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].doClose()"
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:77,1"
      Dst: "[io.netty.channel.unix.DomainSocketAddress].path()"
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:77,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:78,1"
      Dst: "[java.io.File].delete()"
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:79,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:80,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].config()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 56
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:93,1"
      Dst: "[io.netty.channel.AbstractChannel].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].localAddress()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerDomainSocketChannel:98,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:53,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    functionUses: 67
    ICount: 4
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:58,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:58,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].capacity(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].capacity(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.PooledByteBuf].capacity(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].capacity(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity(int)"
    - "[io.netty.buffer.SlicedByteBuf].capacity(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity(int)"
    - "[io.netty.buffer.CompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].capacity(int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:63,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:63,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    functionUses: 58
    ICount: 4
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:69,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:69,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    functionUses: 38
    ICount: 4
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:74,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:74,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    functionUses: 20
    ICount: 6
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:79,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:79,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffers(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "java.nio.ByteBuffer[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    functionUses: 19
    ICount: 6
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:84,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:84,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].copy(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].copy(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].copy(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].copy(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].copy(int,int)"
    functionUses: 10
    ICount: 6
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:89,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:89,1"
      Dst: "[io.netty.buffer.ByteBuf].copy(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].retainedSlice(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledSlicedByteBuf].newInstance(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 11
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:94,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:94,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].newInstance(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].duplicate()"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].duplicate0()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].setIndex(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].setIndex(int,int)"
    functionUses: 23
    ICount: 6
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:99,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].duplicate0()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:99,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:99,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:99,1"
      Dst: "[io.netty.buffer.ByteBuf].setIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].retainedDuplicate()"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].newInstance(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    functionUses: 8
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:104,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:104,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:104,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:104,1"
      Dst: "[io.netty.buffer.PooledDuplicatedByteBuf].newInstance(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 136
    ICount: 5
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:109,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:109,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._getByte(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getByte(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getByte(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:114,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:114,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].getShort(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 20
    ICount: 5
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:119,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:119,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._getShort(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getShort(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getShort(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getShort(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getShort(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:124,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:124,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].getShortLE(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 13
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:129,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:129,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._getShortLE(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getShortLE(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:134,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:134,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.SlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 15
    ICount: 5
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:139,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:139,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getUnsignedMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getUnsignedMedium(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:144,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:144,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getUnsignedMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 14
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:149,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:149,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getUnsignedMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getUnsignedMediumLE(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:154,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:154,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getUnsignedMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].getInt(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.SlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 25
    ICount: 5
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:159,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:159,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._getInt(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getInt(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getInt(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getInt(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getInt(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getInt(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:164,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:164,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].getIntLE(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 14
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:169,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:169,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._getIntLE(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getIntLE(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getIntLE(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:174,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:174,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].getLong(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 180
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 20
    ICount: 5
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:179,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:179,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._getLong(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 185
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getLong(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getLong(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getLong(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getLong(int)"
    functionUses: 7
    ICount: 5
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:184,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:184,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].getLongLE(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 190
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLongLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 13
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:189,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:189,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getLongLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._getLongLE(int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._getLongLE(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:194,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:194,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getLongLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 15
    ICount: 8
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:199,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:199,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 207
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    functionUses: 17
    ICount: 8
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:205,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:205,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 213
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionUses: 12
    ICount: 6
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:211,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:211,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].setByte(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 219
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 65
    ICount: 6
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:217,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:217,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._setByte(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 222
    functionLinenumberEnd: 225
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setByte(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setByte(int,int)"
    functionUses: 25
    ICount: 6
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:223,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:223,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].setShort(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 227
    functionLinenumberEnd: 230
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 18
    ICount: 6
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:228,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:228,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._setShort(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 233
    functionLinenumberEnd: 236
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setShort(int,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:234,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:234,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShortLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 9
    ICount: 6
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:239,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:239,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setShortLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 247
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledSlicedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setShortLE(int,int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:245,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:245,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setShortLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 249
    functionLinenumberEnd: 252
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 11
    ICount: 6
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:250,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:250,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 255
    functionLinenumberEnd: 258
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setMedium(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setMedium(int,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:256,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:256,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 260
    functionLinenumberEnd: 263
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 10
    ICount: 6
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:261,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:261,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setMediumLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 269
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setMediumLE(int,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:267,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:267,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setMediumLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].setInt(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 274
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 26
    ICount: 6
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:272,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:272,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._setInt(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 277
    functionLinenumberEnd: 280
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setInt(int,int)"
    functionUses: 10
    ICount: 6
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:278,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:278,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 285
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledSlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 12
    ICount: 6
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:283,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:283,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setIntLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 288
    functionLinenumberEnd: 291
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setIntLE(int,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:289,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:289,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setIntLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].setLong(int,long)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 293
    functionLinenumberEnd: 296
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractByteBuf].setLong(int,long)"
    - "[io.netty.buffer.DuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 14
    ICount: 6
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:294,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:294,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._setLong(int,long)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 299
    functionLinenumberEnd: 302
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledDirectByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledHeapByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.DuplicatedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf]._setLong(int,long)"
    functionUses: 8
    ICount: 6
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:300,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:300,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf].setLongLE(int,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:305,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:305,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setLongLE(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf]._setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf].setLongLE(int,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:311,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:311,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setLongLE(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 315
    functionLinenumberEnd: 318
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,byte[],int,int)"
    functionUses: 13
    ICount: 8
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:316,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:316,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 321
    functionLinenumberEnd: 324
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 20
    ICount: 8
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:322,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:322,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 327
    functionLinenumberEnd: 330
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionUses: 8
    ICount: 6
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:328,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:328,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 334
    functionLinenumberEnd: 337
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionUses: 10
    ICount: 7
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:335,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:335,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 341
    functionLinenumberEnd: 343
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionUses: 8
    ICount: 7
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:342,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:342,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:348,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:348,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 353
    functionLinenumberEnd: 355
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.io.InputStream,int)"
    functionUses: 8
    ICount: 7
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:354,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:354,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 359
    functionLinenumberEnd: 361
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionUses: 8
    ICount: 7
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:360,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:360,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 365
    functionLinenumberEnd: 367
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionUses: 8
    ICount: 8
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:366,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:366,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 370
    functionLinenumberEnd: 372
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.DuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ReadOnlyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    functionUses: 19
    ICount: 7
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:371,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:371,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:376,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:376,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.buffer.PooledDuplicatedByteBuf$1)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    - "io.netty.buffer.PooledDuplicatedByteBuf$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf:32,1"
      Dst: "[io.netty.buffer.PooledDuplicatedByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].<init>(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:50,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:51,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:59,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].option(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Map].remove(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:73"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:67,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:71,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:73,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].attr(io.netty.util.AttributeKey,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    argCount: 2
    argTypes:
    - "io.netty.util.AttributeKey"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Map].remove(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:85"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:88"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:84,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:86,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:88,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].handler(io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:97,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].open()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].open(io.netty.util.concurrent.Promise)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:106,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:106,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:106,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].open(io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].open(io.netty.util.concurrent.Promise<Http2StreamChannel>)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future<Http2StreamChannel>"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Promise<Http2StreamChannel>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].findCtx()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].open0(io.netty.channel.ChannelHandlerContext,io.netty.util.concurrent.Promise)"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].<init>(io.netty.handler.codec.http2.Http2StreamChannelBootstrap,io.netty.channel.ChannelHandlerContext,io.netty.util.concurrent.Promise)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:117"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:121"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:115,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].findCtx()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:116,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:117,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:118,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].open0(io.netty.channel.ChannelHandlerContext,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:121,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].<init>(io.netty.handler.codec.http2.Http2StreamChannelBootstrap,io.netty.channel.ChannelHandlerContext,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:121,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:133,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].findCtx()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerContext].isRemoved()"
    - "[io.netty.channel.Channel].pipeline()"
    - "[io.netty.channel.ChannelPipeline].context(java.lang.Class)"
    - "[io.netty.channel.Channel].isActive()"
    - "[java.lang.StringBuilder].<init>()"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.nio.channels.ClosedChannelException].<init>()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:142"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:145"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:144"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:142"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:145"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:144"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:147"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:150"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:149"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:159"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:158"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:151"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:156"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:155"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:142,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].isRemoved()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:145,1"
      Dst: "[io.netty.channel.Channel].pipeline()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:146,1"
      Dst: "[io.netty.channel.ChannelPipeline].context(java.lang.Class)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:151,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:152,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:152,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:152,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:153,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:153,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:153,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:156,1"
      Dst: "[java.nio.channels.ClosedChannelException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.nio.channels.ClosedChannelException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].<init>(io.netty.handler.codec.http2.Http2StreamChannelBootstrap,io.netty.channel.ChannelHandlerContext,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1:121,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].open0(io.netty.channel.ChannelHandlerContext,io.netty.util.concurrent.Promise<Http2StreamChannel>)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 211
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.util.concurrent.Promise<Http2StreamChannel>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.PromiseTask].setUncancellable()"
    - "[io.netty.util.concurrent.DefaultPromise].setUncancellable()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setUncancellable()"
    - "[io.netty.channel.VoidChannelPromise].setUncancellable()"
    - "[io.netty.channel.DefaultChannelHandlerContext].handler()"
    - "[io.netty.channel.ChannelHandlerContext].handler()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$TailContext].handler()"
    - "[io.netty.channel.DefaultChannelPipeline$HeadContext].handler()"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].newOutboundStream()"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler].newOutboundStream()"
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].init(io.netty.channel.Channel)"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].closeForcibly()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].closeForcibly()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].closeForcibly()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].register(io.netty.channel.Channel)"
    - "[io.netty.channel.SingleThreadEventLoop].register(io.netty.channel.Channel)"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2].<init>(io.netty.handler.codec.http2.Http2StreamChannelBootstrap,io.netty.util.concurrent.Promise,io.netty.handler.codec.http2.Http2StreamChannel)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.Promise].setUncancellable()"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.Channel].unsafe()"
    - "[io.netty.channel.Channel$Unsafe].closeForcibly()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.channel.EventLoopGroup].register(io.netty.channel.Channel)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 42
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:168"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:169"
        BranchSideFuncs:
        - "setUncancellable()"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:168"
        BranchSideFuncs:
        - "setUncancellable()"
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:168"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:169"
        BranchSideFuncs:
        - "setUncancellable()"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:168"
        BranchSideFuncs:
        - "setUncancellable()"
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:174"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:174"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:177"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:176"
        BranchSideFuncs:
        - "newOutboundStream()"
        - "handler()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:168,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:168,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:168,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:169,1"
      Dst: "[io.netty.util.concurrent.Promise].setUncancellable()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:174,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].handler()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:175,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodec].newOutboundStream()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:177,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexHandler].newOutboundStream()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:180,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:184,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].init(io.netty.channel.Channel)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:186,1"
      Dst: "[io.netty.channel.Channel].unsafe()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:186,1"
      Dst: "[io.netty.channel.Channel$Unsafe].closeForcibly()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:191,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:191,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:191,1"
      Dst: "[io.netty.channel.EventLoopGroup].register(io.netty.channel.Channel)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:192,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2].<init>(io.netty.handler.codec.http2.Http2StreamChannelBootstrap,io.netty.util.concurrent.Promise,io.netty.handler.codec.http2.Http2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:192,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexHandler].newOutboundStream()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexHandler"
    linkageType: ""
    functionLinenumber: 263
    functionLinenumberEnd: 265
    functionDepth: 2
    returnType: "io.netty.handler.codec.http2.Http2StreamChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel].<init>(io.netty.handler.codec.http2.Http2MultiplexHandler,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,io.netty.channel.ChannelHandler)"
    - "[io.netty.handler.codec.http2.Http2ChannelDuplexHandler].newStream()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler:264,1"
      Dst: "[io.netty.handler.codec.http2.Http2ChannelDuplexHandler].newStream()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler:264,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel].<init>(io.netty.handler.codec.http2.Http2MultiplexHandler,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel].<init>(io.netty.handler.codec.http2.Http2MultiplexHandler,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel"
    linkageType: ""
    functionLinenumber: 357
    functionLinenumberEnd: 361
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2MultiplexHandler"
    - "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].<init>(io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,int,io.netty.channel.ChannelHandler)"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler].access$004(io.netty.handler.codec.http2.Http2MultiplexHandler)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel:359,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexHandler].access$004(io.netty.handler.codec.http2.Http2MultiplexHandler)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel:359,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].<init>(io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,int,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexHandler].access$004(io.netty.handler.codec.http2.Http2MultiplexHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexHandler"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2MultiplexHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].init(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 226
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - "[java.security.Provider].entrySet()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].entrySet()"
    - "[java.util.concurrent.ConcurrentHashMap].entrySet()"
    - "[io.netty.util.collection.ShortObjectHashMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].entrySet()"
    - "[java.util.TreeMap].entrySet()"
    - "[java.util.stream.Collectors$Partition].entrySet()"
    - "[java.util.Properties].entrySet()"
    - "[java.util.WeakHashMap].entrySet()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[io.netty.util.collection.IntObjectHashMap].entrySet()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].entrySet()"
    - "[java.util.jar.Attributes].entrySet()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].entrySet()"
    - "[java.util.IdentityHashMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.util.collection.ByteObjectHashMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].entrySet()"
    - "[java.util.HashMap].entrySet()"
    - "[io.netty.util.collection.CharObjectHashMap].entrySet()"
    - "[java.util.Hashtable].entrySet()"
    - "[io.netty.util.collection.LongObjectHashMap].entrySet()"
    - "[io.netty.channel.group.DefaultChannelGroup].toArray(java.lang.Object[])"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toArray(java.lang.Object[])"
    - "[java.util.AbstractCollection].toArray(java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].setChannelOptions(io.netty.channel.Channel,java.util.Map$Entry[])"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].setAttributes(io.netty.channel.Channel,java.util.Map$Entry[])"
    - "[io.netty.channel.Channel].pipeline()"
    - "[io.netty.channel.ChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 28
    EdgeCount: 65
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:219"
        BranchSideFuncs:
        - "addLast(io.netty.channel.ChannelHandler[])"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:213,1"
      Dst: "[io.netty.channel.Channel].pipeline()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:216,1"
      Dst: "[io.netty.channel.ChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:220,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:220,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:223,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].setChannelOptions(io.netty.channel.Channel,java.util.Map$Entry[])"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:224,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].setAttributes(io.netty.channel.Channel,java.util.Map$Entry[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].setChannelOptions(io.netty.channel.Channel,java.util.Map$Entry[])"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 233
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "java.util.Map$Entry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    - "[java.util.AbstractMap$SimpleEntry].getKey()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].setChannelOption(io.netty.channel.Channel,io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    functionUses: 1
    ICount: 13
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:229"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:230,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:230,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:230,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].setChannelOption(io.netty.channel.Channel,io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].setAttributes(io.netty.channel.Channel,java.util.Map$Entry[])"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    linkageType: ""
    functionLinenumber: 249
    functionLinenumberEnd: 256
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "java.util.Map$Entry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    - "[java.util.AbstractMap$SimpleEntry].getKey()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[io.netty.util.DefaultAttributeMap].attr(io.netty.util.AttributeKey)"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    - "[java.util.Map$Entry].getKey()"
    - "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - "[java.util.Map$Entry].getValue()"
    - "[io.netty.util.Attribute].set(java.lang.Object)"
    functionUses: 1
    ICount: 14
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:250"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:254"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:252,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:253,1"
      Dst: "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:253,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:253,1"
      Dst: "[io.netty.util.Attribute].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2].<init>(io.netty.handler.codec.http2.Http2StreamChannelBootstrap,io.netty.util.concurrent.Promise,io.netty.handler.codec.http2.Http2StreamChannel)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    - "io.netty.util.concurrent.Promise"
    - "io.netty.handler.codec.http2.Http2StreamChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:192,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].setChannelOption(io.netty.channel.Channel,io.netty.channel.ChannelOption<?>,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 247
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.channel.ChannelOption<?>"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.embedded.EmbeddedChannel].config()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].config()"
    - "[io.netty.bootstrap.FailedChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.local.LocalServerChannel].config()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].config()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].config()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.socket.nio.NioDatagramChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.channel.ChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 18
    EdgeCount: 71
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:239"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:245"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:244"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:239,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:239,1"
      Dst: "[io.netty.channel.ChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:240,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap:243,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].access$000(io.netty.handler.codec.http2.Http2StreamChannelBootstrap)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "io.netty.channel.Channel"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2StreamChannelBootstrap"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackUtil].equalsConstantTime(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackUtil"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 66
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[io.netty.util.AsciiString:io.netty.util.internal.AppendableCharSequence:java.lang.AbstractStringBuilder:java.lang.StringBuffer:java.lang.StringBuilder:java.nio.CharBuffer].array()"
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[io.netty.util.internal.PlatformDependent].equalsConstantTime(byte[],int,byte[],int,int)"
    - "[io.netty.util.AsciiString].array()"
    - "[io.netty.util.AsciiString:io.netty.util.internal.AppendableCharSequence:java.lang.AbstractStringBuilder:java.lang.StringBuffer:java.lang.StringBuilder:java.nio.CharBuffer].length()"
    - "[io.netty.util.internal.ConstantTimeUtils].equalsConstantTime(java.lang.CharSequence,java.lang.CharSequence)"
    - "[java.lang.CharSequence].length()"
    functionUses: 1
    ICount: 21
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackUtil:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackUtil:65"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackUtil:64"
        BranchSideFuncs:
        - "equalsConstantTime(java.lang.CharSequence,java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http2.HpackUtil:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackUtil:65"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackUtil:64"
        BranchSideFuncs:
        - "equalsConstantTime(java.lang.CharSequence,java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http2.HpackUtil:56"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackUtil:59"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackUtil:58"
        BranchSideFuncs:
        - "equalsConstantTime(byte[],int,byte[],int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackUtil:56,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http2.HpackUtil:61,1"
      Dst: "[io.netty.util.AsciiString].array()"
    - Src: "io.netty.handler.codec.http2.HpackUtil:61,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.handler.codec.http2.HpackUtil:61,1"
      Dst: "[io.netty.util.internal.PlatformDependent].equalsConstantTime(byte[],int,byte[],int,int)"
    - Src: "io.netty.handler.codec.http2.HpackUtil:65,1"
      Dst: "[io.netty.util.internal.ConstantTimeUtils].equalsConstantTime(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].equalsConstantTime(byte[],int,byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 914
    functionLinenumberEnd: 918
    functionDepth: 2
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.util.internal.PlatformDependent0].unalignedAccess()"
    - "[io.netty.util.internal.ConstantTimeUtils].equalsConstantTime(byte[],int,byte[],int,int)"
    - "[io.netty.util.internal.PlatformDependent0].equalsConstantTime(byte[],int,byte[],int,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:915"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:916"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:915"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:915"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:917"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:916"
        BranchSideFuncs:
        - "equalsConstantTime(byte[],int,byte[],int,int)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:915,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.util.internal.PlatformDependent:915,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].unalignedAccess()"
    - Src: "io.netty.util.internal.PlatformDependent:916,1"
      Dst: "[io.netty.util.internal.ConstantTimeUtils].equalsConstantTime(byte[],int,byte[],int,int)"
    - Src: "io.netty.util.internal.PlatformDependent:917,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].equalsConstantTime(byte[],int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.HpackUtil].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackUtil:369,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool$4].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool$4"
    linkageType: ""
    functionLinenumber: 231
    functionLinenumberEnd: 233
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.pool.SimpleChannelPool"
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool$4:232,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool$4].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool$4"
    linkageType: ""
    functionLinenumber: 234
    functionLinenumberEnd: 237
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].access$200(io.netty.channel.pool.SimpleChannelPool,io.netty.util.concurrent.Future,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool$4:235,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].access$200(io.netty.channel.pool.SimpleChannelPool,io.netty.util.concurrent.Future,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].access$200(io.netty.channel.pool.SimpleChannelPool,io.netty.util.concurrent.Future,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.pool.SimpleChannelPool"
    - "io.netty.util.concurrent.Future"
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].notifyHealthCheck(io.netty.util.concurrent.Future,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:43,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].notifyHealthCheck(io.netty.util.concurrent.Future,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].<init>(io.netty.channel.group.ChannelGroup)"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.group.ChannelGroup"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.VoidChannelGroupFuture:33,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].group()"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.group.ChannelGroup"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].find(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].isSuccess()"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 22
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].cause()"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "io.netty.channel.group.ChannelGroupException"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].isPartialSuccess()"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].isPartialFailure()"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener<?\
      \ extends Future<? super Void>>)"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 1
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener<? extends Future<? super Void>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    functionUses: 17
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.VoidChannelGroupFuture:69,1"
      Dst: "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionDepth: 0
    returnType: "java.lang.RuntimeException"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.VoidChannelGroupFuture:173,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.VoidChannelGroupFuture:74,1"
      Dst: "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].removeListener(io.netty.util.concurrent.GenericFutureListener<?\
      \ extends Future<? super Void>>)"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 1
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener<? extends Future<? super Void>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.VoidChannelGroupFuture:79,1"
      Dst: "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.VoidChannelGroupFuture:84,1"
      Dst: "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].await()"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 1
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.VoidChannelGroupFuture:89,1"
      Dst: "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].awaitUninterruptibly()"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.VoidChannelGroupFuture:94,1"
      Dst: "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].syncUninterruptibly()"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 1
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.VoidChannelGroupFuture:99,1"
      Dst: "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].sync()"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.VoidChannelGroupFuture:104,1"
      Dst: "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].iterator()"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].isCancellable()"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].await(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.VoidChannelGroupFuture:119,1"
      Dst: "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].await(long)"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.VoidChannelGroupFuture:124,1"
      Dst: "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].awaitUninterruptibly(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.VoidChannelGroupFuture:129,1"
      Dst: "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].awaitUninterruptibly(long)"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.VoidChannelGroupFuture:134,1"
      Dst: "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].getNow()"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 23
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].cancel(boolean)"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 34
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].isCancelled()"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].isDone()"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].get()"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionDepth: 1
    returnType: "java.lang.Void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.VoidChannelGroupFuture:164,1"
      Dst: "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.VoidChannelGroupFuture].get(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.channel.group.VoidChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Void"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.VoidChannelGroupFuture:169,1"
      Dst: "[io.netty.channel.group.VoidChannelGroupFuture].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$9].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelFuture,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$9"
    linkageType: ""
    functionLinenumber: 2171
    functionLinenumberEnd: 2173
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$9:2172,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$9].run()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$9"
    linkageType: ""
    functionLinenumber: 2175
    functionLinenumberEnd: 2182
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.ssl.SslHandler].access$2400()"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.handler.ssl.SslHandler].access$2500(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 49
    ICount: 15
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler$9:2176"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$9:2181"
        BranchSideFuncs:
        - "access$2500(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
        - "newPromise()"
        - "warn(java.lang.String,java.lang.Object)"
        - "channel()"
        - "close(io.netty.channel.ChannelPromise)"
        - "access$2400()"
      - BranchSide: "io.netty.handler.ssl.SslHandler$9:2180"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$9:2176,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.ssl.SslHandler$9:2177,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$2400()"
    - Src: "io.netty.handler.ssl.SslHandler$9:2178,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.ssl.SslHandler$9:2177,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler$9:2179,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.ssl.SslHandler$9:2179,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler$9:2179,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$2500(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler].access$2400()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$2].<init>(java.net.Socket,java.net.SocketAddress)"
    functionSourceFile: "io.netty.util.internal.SocketUtils$2"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.Socket"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$2:73,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$2].run()"
    functionSourceFile: "io.netty.util.internal.SocketUtils$2"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].bind(java.net.SocketAddress)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$2:76,1"
      Dst: "[java.net.Socket].bind(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpCommand].valueOf(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpCommand"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.smtp.SmtpCommand"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.CharSequence].toString()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[io.netty.util.AsciiString].of(java.lang.CharSequence)"
    - "[io.netty.handler.codec.smtp.SmtpCommand].<init>(io.netty.util.AsciiString)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.smtp.SmtpCommand:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpCommand:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpCommand:67,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.smtp.SmtpCommand:68,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.smtp.SmtpCommand:68,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.smtp.SmtpCommand:69,1"
      Dst: "[io.netty.util.AsciiString].of(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.smtp.SmtpCommand:69,1"
      Dst: "[io.netty.handler.codec.smtp.SmtpCommand].<init>(io.netty.util.AsciiString)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.smtp.SmtpCommand].<init>(io.netty.util.AsciiString)"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpCommand"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.AsciiString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 13
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpCommand:74,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpCommand].name()"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpCommand"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "io.netty.util.AsciiString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpCommand].encode(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpCommand"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 88
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].writeAscii(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpCommand:86,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeAscii(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpCommand].isContentExpected()"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpCommand"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 5
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.SmtpCommand].equals(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpCommand:90,1"
      Dst: "[io.netty.handler.codec.smtp.SmtpCommand].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpCommand].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpCommand"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 107
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - "[io.netty.handler.codec.smtp.SmtpCommand].name()"
    functionUses: 12
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.smtp.SmtpCommand:100"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpCommand:103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpCommand:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.SmtpCommand:103"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpCommand:106"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpCommand:105"
        BranchSideFuncs:
        - "contentEqualsIgnoreCase(java.lang.CharSequence)"
        - "name()"
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpCommand:106,1"
      Dst: "[io.netty.handler.codec.smtp.SmtpCommand].name()"
    - Src: "io.netty.handler.codec.smtp.SmtpCommand:106,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpCommand].hashCode()"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpCommand"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 5
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].hashCode()"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpCommand:95,1"
      Dst: "[io.netty.util.AsciiString].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpCommand].toString()"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpCommand"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 19
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpCommand:111,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.smtp.SmtpCommand:111,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.smtp.SmtpCommand:111,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.smtp.SmtpCommand:111,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.smtp.SmtpCommand:111,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.NativeDatagramPacketArray].release()"
    functionSourceFile: "io.netty.channel.epoll.NativeDatagramPacketArray"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.IovArray].release()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.NativeDatagramPacketArray:110,1"
      Dst: "[io.netty.channel.unix.IovArray].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.IovArray].release()"
    functionSourceFile: "io.netty.channel.unix.IovArray"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 224
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 5
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.IovArray:222,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateEventExecutor$ImmediatePromise].checkDeadLock()"
    functionSourceFile: "io.netty.util.concurrent.ImmediateEventExecutor$ImmediatePromise"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Buffer].<init>()"
    functionSourceFile: "io.netty.channel.unix.Buffer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Buffer:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Buffer].free(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.channel.unix.Buffer"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].freeDirectBuffer(java.nio.ByteBuffer)"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Buffer:33,1"
      Dst: "[io.netty.util.internal.PlatformDependent].freeDirectBuffer(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Buffer].addressSize()"
    functionSourceFile: "io.netty.channel.unix.Buffer"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 63
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.util.internal.PlatformDependent].addressSize()"
    - "[io.netty.channel.unix.Buffer].addressSize0()"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Buffer:59"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Buffer:62"
        BranchSideFuncs:
        - "addressSize()"
      - BranchSide: "io.netty.channel.unix.Buffer:61"
        BranchSideFuncs:
        - "addressSize0()"
    Callsites:
    - Src: "io.netty.channel.unix.Buffer:59,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.channel.unix.Buffer:60,1"
      Dst: "[io.netty.util.internal.PlatformDependent].addressSize()"
    - Src: "io.netty.channel.unix.Buffer:62,1"
      Dst: "[io.netty.channel.unix.Buffer].addressSize0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].addressSize()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 439
    functionLinenumberEnd: 441
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Buffer].addressSize0()"
    functionSourceFile: "io.netty.channel.unix.Buffer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.pool.FixedChannelPool$4].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$4"
    linkageType: ""
    functionLinenumber: 298
    functionLinenumberEnd: 323
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.pool.FixedChannelPool].access$400(io.netty.channel.pool.FixedChannelPool)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.channel.pool.FixedChannelPool].access$500(io.netty.channel.pool.FixedChannelPool)"
    - "[io.netty.channel.AbstractChannel].close()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].close()"
    - "[io.netty.channel.embedded.EmbeddedChannel].close()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.util.concurrent.FailedFuture].isSuccess()"
    - "[io.netty.util.concurrent.SucceededFuture].isSuccess()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.channel.pool.FixedChannelPool].access$600(io.netty.channel.pool.FixedChannelPool)"
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setSuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.util.concurrent.FailedFuture].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.util.concurrent.SucceededFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 41
    EdgeCount: 76
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.FixedChannelPool$4:299"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$4:301"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "access$400(io.netty.channel.pool.FixedChannelPool)"
        - "<init>()"
        - "isSuccess()"
        - "setSuccess(java.lang.Object)"
        - "<init>(java.lang.String)"
        - "access$500(io.netty.channel.pool.FixedChannelPool)"
        - "tryFailure(java.lang.Throwable)"
        - "access$600(io.netty.channel.pool.FixedChannelPool)"
        - "inEventLoop()"
        - "close()"
        - "cause()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$4:300"
        BranchSideFuncs:
        - "access$500(io.netty.channel.pool.FixedChannelPool)"
    - Branch String: "io.netty.channel.pool.FixedChannelPool$4:299"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$4:301"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "access$400(io.netty.channel.pool.FixedChannelPool)"
        - "<init>()"
        - "isSuccess()"
        - "setSuccess(java.lang.Object)"
        - "<init>(java.lang.String)"
        - "access$500(io.netty.channel.pool.FixedChannelPool)"
        - "tryFailure(java.lang.Throwable)"
        - "access$600(io.netty.channel.pool.FixedChannelPool)"
        - "inEventLoop()"
        - "close()"
        - "cause()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$4:300"
        BranchSideFuncs:
        - "access$500(io.netty.channel.pool.FixedChannelPool)"
    - Branch String: "io.netty.channel.pool.FixedChannelPool$4:301"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$4:308"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "access$400(io.netty.channel.pool.FixedChannelPool)"
        - "<init>()"
        - "isSuccess()"
        - "setSuccess(java.lang.Object)"
        - "<init>(java.lang.String)"
        - "access$500(io.netty.channel.pool.FixedChannelPool)"
        - "tryFailure(java.lang.Throwable)"
        - "access$600(io.netty.channel.pool.FixedChannelPool)"
        - "inEventLoop()"
        - "close()"
        - "cause()"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$4:307"
        BranchSideFuncs:
        - "isSuccess()"
    - Branch String: "io.netty.channel.pool.FixedChannelPool$4:308"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$4:312"
        BranchSideFuncs:
        - "setSuccess(java.lang.Object)"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$4:311"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.FixedChannelPool$4:314"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$4:317"
        BranchSideFuncs:
        - "access$600(io.netty.channel.pool.FixedChannelPool)"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$4:316"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "cause()"
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$4:299,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].access$400(io.netty.channel.pool.FixedChannelPool)"
    - Src: "io.netty.channel.pool.FixedChannelPool$4:299,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.pool.FixedChannelPool$4:299,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.pool.FixedChannelPool$4:301,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].access$500(io.netty.channel.pool.FixedChannelPool)"
    - Src: "io.netty.channel.pool.FixedChannelPool$4:303,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    - Src: "io.netty.channel.pool.FixedChannelPool$4:304,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.channel.pool.FixedChannelPool$4:304,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.pool.FixedChannelPool$4:308,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.channel.pool.FixedChannelPool$4:309,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].access$600(io.netty.channel.pool.FixedChannelPool)"
    - Src: "io.netty.channel.pool.FixedChannelPool$4:310,1"
      Dst: "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - Src: "io.netty.channel.pool.FixedChannelPool$4:312,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.channel.pool.FixedChannelPool$4:320,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.concurrent.SingleThreadEventExecutor$1].<init>()"
    functionSourceFile: "io.netty.util.concurrent.SingleThreadEventExecutor$1"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.SingleThreadEventExecutor$1:65,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.SingleThreadEventExecutor$1].run()"
    functionSourceFile: "io.netty.util.concurrent.SingleThreadEventExecutor$1"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 49
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.InternalLogLevel].values()"
    functionSourceFile: "io.netty.util.internal.logging.InternalLogLevel"
    linkageType: ""
    functionLinenumber: 20
    functionLinenumberEnd: 22
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogLevel[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.InternalLogLevel:21,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.InternalLogLevel].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.InternalLogLevel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogLevel"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.InternalLogLevel:21,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.InternalLogLevel].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.util.internal.logging.InternalLogLevel"
    linkageType: ""
    functionLinenumber: 20
    functionLinenumberEnd: 22
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.InternalLogLevel:21,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].<init>(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.channel.kqueue.KQueueEventArray].calculateBufferCapacity(int)"
    - "[io.netty.channel.unix.Buffer].allocateDirectWithNativeOrder(int)"
    - "[io.netty.channel.unix.Buffer].memoryAddress(java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventArray:49"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventArray:52"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventArray:51"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventArray:48,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:50,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:50,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:50,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:50,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:50,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:52,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].calculateBufferCapacity(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:52,1"
      Dst: "[io.netty.channel.unix.Buffer].allocateDirectWithNativeOrder(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:53,1"
      Dst: "[io.netty.channel.unix.Buffer].memoryAddress(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].evSet(io.netty.channel.kqueue.AbstractKQueueChannel,short,short,int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.kqueue.AbstractKQueueChannel"
    - "short"
    - "short"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueEventArray].reallocIfNeeded()"
    - "[io.netty.channel.kqueue.KQueueEventArray].evSet(long,int,short,short,int)"
    - "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffset(int)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventArray:81,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].reallocIfNeeded()"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:82,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffset(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:82,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:82,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].evSet(long,int,short,short,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].reallocIfNeeded()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 90
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueEventArray].realloc(boolean)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventArray:86"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventArray:89"
        BranchSideFuncs:
        - "realloc(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventArray:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventArray:87,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].realloc(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].realloc(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 118
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Buffer].allocateDirectWithNativeOrder(int)"
    - "[io.netty.channel.kqueue.KQueueEventArray].calculateBufferCapacity(int)"
    - "[io.netty.channel.unix.Buffer].free(java.nio.ByteBuffer)"
    - "[io.netty.channel.unix.Buffer].memoryAddress(java.nio.ByteBuffer)"
    - "[java.lang.OutOfMemoryError].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    - "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 2
    ICount: 42
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventArray:96"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventArray:96"
        BranchSideFuncs:
        - "<init>()"
        - "allocateDirectWithNativeOrder(int)"
        - "toString()"
        - "initCause(java.lang.Throwable)"
        - "free(java.nio.ByteBuffer)"
        - "memoryAddress(java.nio.ByteBuffer)"
        - "<init>(java.lang.String)"
        - "calculateBufferCapacity(int)"
        - "append(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventArray:95"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventArray:110"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventArray:117"
        BranchSideFuncs:
        - "<init>()"
        - "allocateDirectWithNativeOrder(int)"
        - "toString()"
        - "initCause(java.lang.Throwable)"
        - "free(java.nio.ByteBuffer)"
        - "memoryAddress(java.nio.ByteBuffer)"
        - "<init>(java.lang.String)"
        - "calculateBufferCapacity(int)"
        - "append(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventArray:116"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventArray:99,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].calculateBufferCapacity(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:99,1"
      Dst: "[io.netty.channel.unix.Buffer].allocateDirectWithNativeOrder(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:102,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:102,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:103,1"
      Dst: "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:106,1"
      Dst: "[io.netty.channel.unix.Buffer].free(java.nio.ByteBuffer)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:108,1"
      Dst: "[io.netty.channel.unix.Buffer].memoryAddress(java.nio.ByteBuffer)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:111,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:111,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:111,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:111,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:111,1"
      Dst: "[java.lang.OutOfMemoryError].<init>(java.lang.String)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:113,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].calculateBufferCapacity(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffset(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].evSet(long,int,short,short,int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "long"
    - "int"
    - "short"
    - "short"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].free()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 126
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Buffer].free(java.nio.ByteBuffer)"
    functionUses: 4
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventArray:123,1"
      Dst: "[io.netty.channel.unix.Buffer].free(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffsetAddress(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffset(int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventArray:132,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffset(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].getShort(int,int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 140
    functionDepth: 2
    returnType: "short"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffsetAddress(int)"
    - "[io.netty.util.internal.PlatformDependent].getShort(long)"
    - "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffset(int)"
    - "[java.nio.ByteBuffer].getShort(int)"
    functionUses: 3
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventArray:136"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventArray:139"
        BranchSideFuncs:
        - "getKEventOffsetAddress(int)"
        - "getShort(long)"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventArray:138"
        BranchSideFuncs:
        - "getKEventOffset(int)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventArray:136,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:137,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffsetAddress(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:137,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getShort(long)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:139,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffset(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:139,1"
      Dst: "[java.nio.ByteBuffer].getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].flags(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionDepth: 3
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueEventArray].getShort(int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventArray:143,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].getShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].filter(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionDepth: 3
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueEventArray].getShort(int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventArray:147,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].getShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].fflags(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionDepth: 3
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueEventArray].getShort(int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventArray:151,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].getShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].fd(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 159
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.util.internal.PlatformDependent].getInt(long)"
    - "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffsetAddress(int)"
    - "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffset(int)"
    - "[java.nio.ByteBuffer].getInt(int)"
    functionUses: 2
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventArray:155"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventArray:158"
        BranchSideFuncs:
        - "getInt(long)"
        - "getKEventOffsetAddress(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventArray:157"
        BranchSideFuncs:
        - "getKEventOffset(int)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventArray:155,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:156,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffsetAddress(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:156,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getInt(long)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:158,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffset(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:158,1"
      Dst: "[java.nio.ByteBuffer].getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventArray].data(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventArray"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 166
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffsetAddress(int)"
    - "[io.netty.util.internal.PlatformDependent].getLong(long)"
    - "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffset(int)"
    - "[java.nio.ByteBuffer].getLong(int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventArray:162"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventArray:165"
        BranchSideFuncs:
        - "getLong(long)"
        - "getKEventOffsetAddress(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventArray:164"
        BranchSideFuncs:
        - "getKEventOffset(int)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventArray:162,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:163,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffsetAddress(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:163,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getLong(long)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:165,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].getKEventOffset(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventArray:165,1"
      Dst: "[java.nio.ByteBuffer].getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConstant].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConstant"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConstant:20,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:119,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1].onStreamAdded(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 145
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$000(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.util.collection.IntObjectHashMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].remove(int)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$100(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].takeChild(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,boolean,java.util.List)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].notifyParentChanged(java.util.List)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$200(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    - "[io.netty.util.internal.DefaultPriorityQueue].removeTyped(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].removeTyped(java.lang.Object)"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].state()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].setStreamReservedOrActivated()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$300(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.util.collection.IntObjectMap].remove(int)"
    - "[io.netty.util.internal.PriorityQueue].removeTyped(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Stream].state()"
    - "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    functionUses: 1
    ICount: 35
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:123"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:130"
        BranchSideFuncs:
        - "takeChild(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,boolean,java.util.List)"
        - "<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
        - "access$100(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
        - "<init>(int)"
        - "notifyParentChanged(java.util.List)"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:129"
        BranchSideFuncs:
        - "access$200(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
        - "removeTyped(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:122,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$000(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:122,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:122,1"
      Dst: "[io.netty.util.collection.IntObjectMap].remove(int)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:124,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:126,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:127,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$100(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:127,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].takeChild(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,boolean,java.util.List)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:128,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].notifyParentChanged(java.util.List)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:130,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$200(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:130,1"
      Dst: "[io.netty.util.internal.PriorityQueue].removeTyped(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:133,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].state()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:133,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:136,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].setStreamReservedOrActivated()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:143,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$300(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:143,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$000(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "io.netty.util.collection.IntObjectMap"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 472
    functionLinenumberEnd: 475
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,io.netty.handler.codec.http2.Http2Stream,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:473,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,io.netty.handler.codec.http2.Http2Stream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,io.netty.handler.codec.http2.Http2Stream,int)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 476
    functionLinenumberEnd: 479
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    - "io.netty.handler.codec.http2.Http2Stream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,int,io.netty.handler.codec.http2.Http2Stream,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:477,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:477,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,int,io.netty.handler.codec.http2.Http2Stream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,int,io.netty.handler.codec.http2.Http2Stream,int)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 479
    functionLinenumberEnd: 485
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    - "int"
    - "io.netty.handler.codec.http2.Http2Stream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.IntCollections].emptyMap()"
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.DefaultPriorityQueue].<init>(java.util.Comparator,int)"
    functionUses: 2
    ICount: 21
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:480,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:445,1"
      Dst: "[io.netty.util.collection.IntCollections].emptyMap()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:483,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].<init>(java.util.Comparator,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$100(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].takeChild(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,boolean,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 497
    functionLinenumberEnd: 500
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    - "boolean"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].takeChild(java.util.Iterator,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,boolean,java.util.List)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:498,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].takeChild(java.util.Iterator,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,boolean,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].takeChild(java.util.Iterator,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,boolean,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 506
    functionLinenumberEnd: 537
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.Iterator"
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    - "boolean"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$ParentChangedEvent].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].setParent(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].remove()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].remove()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].remove()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].remove()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].remove()"
    - "[io.netty.channel.nio.NioEventLoop$7].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].remove()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].remove()"
    - "[io.netty.util.internal.ReadOnlyIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].remove()"
    - "[io.netty.channel.group.CombinedIterator].remove()"
    - "[java.util.Iterator].remove()"
    - "[io.netty.util.collection.IntObjectHashMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].remove(int)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].initChildrenIfEmpty()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].put(int,java.lang.Object)"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.IntObjectHashMap].isEmpty()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].isEmpty()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].entries()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].entries()"
    - "[io.netty.util.collection.IntObjectHashMap].entries()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].iterator()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.buffer.CompositeByteBuf].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.channel.pool.AbstractChannelPoolMap].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.channel.DefaultChannelPipeline].iterator()"
    - "[io.netty.channel.group.ChannelGroupException].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$1].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$1].iterator()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$1].iterator()"
    - "[io.netty.handler.codec.EmptyHeaders].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.buffer.PoolChunkList].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].removeAllChildrenExcept(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].takeChild(java.util.Iterator,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,boolean,java.util.List)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$EntryImpl].value()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].value()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectMap].remove(int)"
    - "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    - "[java.util.Map].isEmpty()"
    - "[io.netty.util.collection.IntObjectMap].entries()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.util.collection.IntObjectMap$PrimitiveEntry].value()"
    functionUses: 3
    ICount: 45
    EdgeCount: 279
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:509"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:528"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "setParent(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
        - "<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:527"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:515"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:517"
        BranchSideFuncs:
        - "remove()"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:516"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:517"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:522"
        BranchSideFuncs:
        - "remove(int)"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:521"
        BranchSideFuncs:
        - "initChildrenIfEmpty()"
        - "put(int,java.lang.Object)"
        - "<init>(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:525"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:527"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:525"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:527"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:528"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:535"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:528"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:535"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:532"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:536"
        BranchSideFuncs:
        - "takeChild(java.util.Iterator,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,boolean,java.util.List)"
        - "next()"
        - "value()"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:535"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:510,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$ParentChangedEvent].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:510,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:511,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].setParent(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:516,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:518,1"
      Dst: "[io.netty.util.collection.IntObjectMap].remove(int)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:522,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].initChildrenIfEmpty()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:524,1"
      Dst: "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:525,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:528,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:531,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].removeAllChildrenExcept(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:531,1"
      Dst: "[io.netty.util.collection.IntObjectMap].entries()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:531,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:532,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:533,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:533,1"
      Dst: "[io.netty.util.collection.IntObjectMap$PrimitiveEntry].value()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:533,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].takeChild(java.util.Iterator,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,boolean,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$ParentChangedEvent].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$ParentChangedEvent"
    linkageType: ""
    functionLinenumber: 797
    functionLinenumberEnd: 802
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$ParentChangedEvent:798,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].setParent(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 589
    functionLinenumberEnd: 598
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].removePseudoTimeQueue(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].activeCountChangeForTree(int)"
    functionUses: 2
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:590"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:594"
        BranchSideFuncs:
        - "activeCountChangeForTree(int)"
        - "removePseudoTimeQueue(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:593"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:590"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:594"
        BranchSideFuncs:
        - "activeCountChangeForTree(int)"
        - "removePseudoTimeQueue(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:593"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:596"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:594"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:593"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:591,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].removePseudoTimeQueue(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:592,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].activeCountChangeForTree(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].removePseudoTimeQueue(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 693
    functionLinenumberEnd: 698
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.DefaultPriorityQueue].removeTyped(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].removeTyped(java.lang.Object)"
    - "[io.netty.util.internal.PriorityQueue].removeTyped(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:694"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:697"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:696"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:694,1"
      Dst: "[io.netty.util.internal.PriorityQueue].removeTyped(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].activeCountChangeForTree(int)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 618
    functionLinenumberEnd: 643
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.DefaultPriorityQueue].containsTyped(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].containsTyped(java.lang.Object)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].removePseudoTimeQueue(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].isDistributing()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].offerAndInitializePseudoTime(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].activeCountChangeForTree(int)"
    - "[io.netty.util.internal.PriorityQueue].containsTyped(java.lang.Object)"
    functionUses: 5
    ICount: 56
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:619"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:620"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:619"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:619"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:620"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:619"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:621"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:642"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:641"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:622"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:627"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "containsTyped(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:626"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:622"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:627"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "containsTyped(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:626"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:622"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:627"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "containsTyped(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:626"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:624"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:626"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:627"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:629"
        BranchSideFuncs:
        - "removePseudoTimeQueue(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:628"
        BranchSideFuncs:
        - "isDistributing()"
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:629"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:639"
        BranchSideFuncs:
        - "activeCountChangeForTree(int)"
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:629"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:639"
        BranchSideFuncs:
        - "activeCountChangeForTree(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:619,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:624,1"
      Dst: "[io.netty.util.internal.PriorityQueue].containsTyped(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:622,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:622,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:622,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:622,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:622,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:628,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].removePseudoTimeQueue(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:629,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].isDistributing()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:638,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].offerAndInitializePseudoTime(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:640,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].activeCountChangeForTree(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].isDistributing()"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 728
    functionLinenumberEnd: 730
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:729"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:728"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].offerAndInitializePseudoTime(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 673
    functionLinenumberEnd: 677
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].offerPseudoTimeQueue(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:675,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].offerPseudoTimeQueue(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].offerPseudoTimeQueue(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 678
    functionLinenumberEnd: 682
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.DefaultPriorityQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].offer(java.lang.Object)"
    - "[java.util.Queue].offer(java.lang.Object)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:679,1"
      Dst: "[java.util.Queue].offer(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].initChildrenIfEmpty()"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 599
    functionLinenumberEnd: 604
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.IntCollections].emptyMap()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].initChildren()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:600"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:603"
        BranchSideFuncs:
        - "initChildren()"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:602"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:600,1"
      Dst: "[io.netty.util.collection.IntCollections].emptyMap()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:601,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].initChildren()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].initChildren()"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 605
    functionLinenumberEnd: 608
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.IntObjectHashMap].<init>(int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:606,1"
      Dst: "[io.netty.util.collection.IntObjectHashMap].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].removeAllChildrenExcept(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 576
    functionLinenumberEnd: 586
    functionDepth: 1
    returnType: "io.netty.util.collection.IntObjectMap"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].remove(int)"
    - "[io.netty.util.collection.IntObjectHashMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].remove(int)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].initChildren()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectMap].remove(int)"
    - "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:582"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:585"
        BranchSideFuncs:
        - "put(int,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:584"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:577,1"
      Dst: "[io.netty.util.collection.IntObjectMap].remove(int)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:581,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].initChildren()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:583,1"
      Dst: "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$200(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "io.netty.util.internal.PriorityQueue"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].setStreamReservedOrActivated()"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 712
    functionLinenumberEnd: 715
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$300(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Connection$PropertyKey"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1].onStreamActive(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 152
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$400(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].setStreamReservedOrActivated()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:148,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$400(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:148,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].setStreamReservedOrActivated()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$400(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].state(io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:60,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].state(io.netty.handler.codec.http2.Http2Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].state(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    linkageType: ""
    functionLinenumber: 345
    functionLinenumberEnd: 347
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:346,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1].onStreamClosed(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$400(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].close()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:155,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$400(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:155,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].close()"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 703
    functionLinenumberEnd: 707
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].updateStreamableBytes(int,boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:704,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].updateStreamableBytes(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].updateStreamableBytes(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 644
    functionLinenumberEnd: 657
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].isActive()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].activeCountChangeForTree(int)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].setActive()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].unsetActive()"
    functionUses: 3
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:645"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:655"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:654"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:646"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:null"
        BranchSideFuncs:
        - "setActive()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:645,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].isActive()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:647,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].activeCountChangeForTree(int)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:648,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].setActive()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:651,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].unsetActive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].isActive()"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 716
    functionLinenumberEnd: 718
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:717"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:716"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].setActive()"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 720
    functionLinenumberEnd: 723
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].unsetActive()"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 724
    functionLinenumberEnd: 727
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1].onStreamRemoved(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 189
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$400(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$500(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].removeChild(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$200(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    - "[io.netty.util.internal.DefaultPriorityQueue].size()"
    - "[io.netty.util.internal.EmptyPriorityQueue].size()"
    - "[io.netty.util.internal.DefaultPriorityQueue].peek()"
    - "[io.netty.util.internal.EmptyPriorityQueue].peek()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator].compare(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$000(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    - "[io.netty.util.collection.IntObjectHashMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].remove(int)"
    - "[java.util.AbstractQueue].add(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].add(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].put(int,java.lang.Object)"
    - "[java.util.Collection].size()"
    - "[java.util.Queue].peek()"
    - "[java.util.Queue].poll()"
    - "[io.netty.util.collection.IntObjectMap].remove(int)"
    - "[java.util.Queue].add(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    functionUses: 1
    ICount: 44
    EdgeCount: 27
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:170"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:174"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:173"
        BranchSideFuncs:
        - "access$500(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
        - "size()"
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:174"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:186"
        BranchSideFuncs:
        - "peek()"
        - "compare(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:185"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "access$000(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
        - "put(int,java.lang.Object)"
        - "access$200(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:176"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:181"
        BranchSideFuncs:
        - "removeChild(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
        - "remove(int)"
        - "poll()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:163,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$400(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:170,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$500(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:171,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].removeChild(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:174,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$200(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:174,1"
      Dst: "[java.util.Collection].size()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:175,1"
      Dst: "[java.util.Queue].peek()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:176,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator].compare(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:182,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:184,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$000(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:184,1"
      Dst: "[io.netty.util.collection.IntObjectMap].remove(int)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:186,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1:187,1"
      Dst: "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$500(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].removeChild(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 541
    functionLinenumberEnd: 562
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.IntObjectHashMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].remove(int)"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].size()"
    - "[io.netty.util.collection.IntObjectHashMap].size()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].size()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$ParentChangedEvent].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].setParent(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.IntObjectHashMap].isEmpty()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].isEmpty()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].entries()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].entries()"
    - "[io.netty.util.collection.IntObjectHashMap].entries()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].iterator()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.buffer.CompositeByteBuf].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.channel.pool.AbstractChannelPoolMap].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.channel.DefaultChannelPipeline].iterator()"
    - "[io.netty.channel.group.ChannelGroupException].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$1].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$1].iterator()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$1].iterator()"
    - "[io.netty.handler.codec.EmptyHeaders].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.buffer.PoolChunkList].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].getTotalWeight()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$EntryImpl].value()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].value()"
    - "[java.lang.Math].max(long,long)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].takeChild(java.util.Iterator,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,boolean,java.util.List)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].notifyParentChanged(java.util.List)"
    - "[io.netty.util.collection.IntObjectMap].remove(int)"
    - "[java.util.Map].size()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Map].isEmpty()"
    - "[io.netty.util.collection.IntObjectMap].entries()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].next()"
    - "[io.netty.util.collection.IntObjectMap$PrimitiveEntry].value()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 4
    ICount: 44
    EdgeCount: 222
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:542"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:561"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "isEmpty()"
        - "<init>(int)"
        - "setParent(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
        - "<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:560"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:547"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:558"
        BranchSideFuncs:
        - "notifyParentChanged(java.util.List)"
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:556"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:552"
        BranchSideFuncs:
        - "hasNext()"
        - "takeChild(java.util.Iterator,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,boolean,java.util.List)"
        - "next()"
        - "max(long,long)"
        - "value()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:542,1"
      Dst: "[io.netty.util.collection.IntObjectMap].remove(int)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:543,1"
      Dst: "[java.util.Map].size()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:543,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:544,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$ParentChangedEvent].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:544,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:545,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].setParent(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:547,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:549,1"
      Dst: "[io.netty.util.collection.IntObjectMap].entries()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:549,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:550,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].getTotalWeight()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:553,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:553,1"
      Dst: "[io.netty.util.collection.IntObjectMap$PrimitiveEntry].value()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:554,1"
      Dst: "[java.lang.Math].max(long,long)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:555,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].takeChild(java.util.Iterator,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,boolean,java.util.List)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:556,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:559,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].notifyParentChanged(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].getTotalWeight()"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 563
    functionLinenumberEnd: 569
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.IntObjectHashMap].values()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].values()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 14
    EdgeCount: 168
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:565"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:568"
        BranchSideFuncs:
        - "values()"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:567"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:565,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:565,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:565,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:565,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator].compare(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator"
    linkageType: ""
    functionLinenumber: 402
    functionLinenumberEnd: 418
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].wasStreamReservedOrActivated()"
    functionUses: 2
    ICount: 21
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator:404"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator:408"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator:407"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator:405"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator:404"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator:417"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator:407"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator:403,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].wasStreamReservedOrActivated()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].wasStreamReservedOrActivated()"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 708
    functionLinenumberEnd: 710
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:709"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:708"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder].<init>(int,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:77,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder].<init>(int,int,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:81,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder].<init>(int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder].<init>(int,int)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder].<init>(int,int,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:85,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder].<init>(int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder].<init>(int,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[io.netty.util.internal.AppendableCharSequence].<init>(int)"
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].<init>(io.netty.util.internal.AppendableCharSequence,int)"
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser].<init>(io.netty.util.internal.AppendableCharSequence,int,boolean)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:89,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:90,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:93,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].<init>(int)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:93,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].<init>(io.netty.util.internal.AppendableCharSequence,int)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:94,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser].<init>(io.netty.util.internal.AppendableCharSequence,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 191
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.ReplayingDecoder].state()"
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder].skipControlCharacters(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder].readCommand(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].<init>(io.netty.handler.codec.stomp.StompCommand)"
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder].readHeaders(io.netty.buffer.ByteBuf,io.netty.handler.codec.stomp.StompHeadersSubframe)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufUtil].readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].<init>(io.netty.buffer.ByteBuf)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBufUtil].indexOf(io.netty.buffer.ByteBuf,int,int,byte)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder].skipNullCharacter(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder].resetDecoder()"
    - "[io.netty.buffer.DefaultByteBufHolder].release()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].release()"
    - "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].release()"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 138
    EdgeCount: 129
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:105"
        BranchSideFuncs:
        - "readCommand(io.netty.buffer.ByteBuf)"
        - "readHeaders(io.netty.buffer.ByteBuf,io.netty.handler.codec.stomp.StompHeadersSubframe)"
        - "<init>(io.netty.handler.codec.stomp.StompCommand)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:104"
        BranchSideFuncs:
        - "readCommand(io.netty.buffer.ByteBuf)"
        - "readHeaders(io.netty.buffer.ByteBuf,io.netty.handler.codec.stomp.StompHeadersSubframe)"
        - "<init>(io.netty.handler.codec.stomp.StompCommand)"
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:130"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:133"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:132"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:136"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:135"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:150"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:149"
        BranchSideFuncs:
        - "indexOf(io.netty.buffer.ByteBuf,int,int,byte)"
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:141"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:140"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:142"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:146"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:145"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:151"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:154"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:153"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:154"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:156"
        BranchSideFuncs:
        - "readerIndex()"
        - "writerIndex()"
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:161"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:165"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:164"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:176"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:175"
        BranchSideFuncs:
        - "resetDecoder()"
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:180"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:185"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:184"
        BranchSideFuncs:
        - "setDecoderResult(io.netty.handler.codec.DecoderResult)"
        - "add(java.lang.Object)"
        - "checkpoint(java.lang.Object)"
        - "failure(java.lang.Throwable)"
        - "<init>(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:99,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].state()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:99,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:101,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder].skipControlCharacters(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:102,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:108,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder].readCommand(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:109,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].<init>(io.netty.handler.codec.stomp.StompCommand)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:110,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder].readHeaders(io.netty.buffer.ByteBuf,io.netty.handler.codec.stomp.StompHeadersSubframe)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:111,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:116,1"
      Dst: "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:116,1"
      Dst: "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:123,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:123,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:129,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:141,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:141,1"
      Dst: "[io.netty.buffer.ByteBufUtil].readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:143,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:146,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:150,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:150,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:150,1"
      Dst: "[io.netty.buffer.ByteBufUtil].indexOf(io.netty.buffer.ByteBuf,int,int,byte)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:172,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder].skipNullCharacter(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:177,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder].resetDecoder()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:181,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 35
    CyclomaticComplexity: 12
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder].skipControlCharacters(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 246
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:240"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:239"
        BranchSideFuncs:
        - "readerIndex()"
        - "readerIndex(int)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:238"
        BranchSideFuncs:
        - "readByte()"
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:240"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:239"
        BranchSideFuncs:
        - "readerIndex()"
        - "readerIndex(int)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:238"
        BranchSideFuncs:
        - "readByte()"
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:239,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:241,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:241,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder].readCommand(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 202
    functionDepth: 3
    returnType: "io.netty.handler.codec.stomp.StompCommand"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].parse(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[io.netty.handler.codec.stomp.StompCommand].valueOf(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.CharSequence].toString()"
    functionUses: 1
    ICount: 20
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:194"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:197"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:196"
        BranchSideFuncs:
        - "valueOf(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:193,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder$Utf8LineParser].parse(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:195,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:197,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:199,1"
      Dst: "[io.netty.handler.codec.stomp.StompCommand].valueOf(java.lang.String)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:201,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:201,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:201,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompCommand].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompCommand"
    linkageType: ""
    functionLinenumber: 20
    functionLinenumberEnd: 22
    functionDepth: 0
    returnType: "io.netty.handler.codec.stomp.StompCommand"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompCommand:21,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].<init>(io.netty.handler.codec.stomp.StompCommand)"
    functionSourceFile: "io.netty.handler.codec.stomp.DefaultStompHeadersSubframe"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.stomp.StompCommand"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].<init>(io.netty.handler.codec.stomp.StompCommand,io.netty.handler.codec.stomp.DefaultStompHeaders)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.DefaultStompHeadersSubframe:31,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].<init>(io.netty.handler.codec.stomp.StompCommand,io.netty.handler.codec.stomp.DefaultStompHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder].readHeaders(io.netty.buffer.ByteBuf,io.netty.handler.codec.stomp.StompHeadersSubframe)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 219
    functionDepth: 4
    returnType: "io.netty.handler.codec.stomp.StompSubframeDecoder$State"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.stomp.StompHeadersSubframe"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].headers()"
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser].parseHeader(io.netty.handler.codec.stomp.StompHeadersSubframe,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object)"
    - "[io.netty.handler.codec.stomp.StompSubframeDecoder].getContentLength(io.netty.handler.codec.stomp.StompHeaders)"
    - "[io.netty.handler.codec.stomp.StompHeadersSubframe].headers()"
    - "[io.netty.handler.codec.Headers].contains(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:209"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:218"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:217"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:210"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:216"
        BranchSideFuncs:
        - "getContentLength(io.netty.handler.codec.stomp.StompHeaders)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:215"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:212"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:216"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:215"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:206,1"
      Dst: "[io.netty.handler.codec.stomp.StompHeadersSubframe].headers()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:208,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder$HeaderParser].parseHeader(io.netty.handler.codec.stomp.StompHeadersSubframe,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:210,1"
      Dst: "[io.netty.handler.codec.Headers].contains(java.lang.Object)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:211,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeDecoder].getContentLength(io.netty.handler.codec.stomp.StompHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder].getContentLength(io.netty.handler.codec.stomp.StompHeaders)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 227
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.stomp.StompHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].getLong(java.lang.Object,long)"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.Headers].getLong(java.lang.Object,long)"
    functionUses: 1
    ICount: 16
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:223"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:226"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:225"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:222,1"
      Dst: "[io.netty.handler.codec.Headers].getLong(java.lang.Object,long)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:224,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:224,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:224,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:224,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:224,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].indexOf(io.netty.buffer.ByteBuf,int,int,byte)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 631
    functionLinenumberEnd: 633
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.AbstractByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.SwappedByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.WrappedByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.EmptyByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.ByteBuf].indexOf(int,int,byte)"
    functionUses: 2
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:632,1"
      Dst: "[io.netty.buffer.ByteBuf].indexOf(int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder].skipNullCharacter(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder"
    linkageType: ""
    functionLinenumber: 229
    functionLinenumberEnd: 235
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    functionUses: 1
    ICount: 14
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeDecoder:231"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:234"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeDecoder:233"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:230,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:232,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:232,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:232,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:232,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:232,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeDecoder].resetDecoder()"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeDecoder"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 253
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeDecoder:248,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].<init>(io.netty.buffer.PoolArena,java.lang.Object,java.lang.Object,int,int,int,int)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 217
    functionDepth: 5
    returnType: "void"
    argCount: 7
    argTypes:
    - "io.netty.buffer.PoolArena"
    - "java.lang.Object"
    - "java.lang.Object"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].newLongCounter()"
    - "[java.lang.Object].<init>()"
    - "[io.netty.buffer.PoolChunk].newRunsAvailqueueArray(int)"
    - "[java.util.concurrent.locks.ReentrantLock].<init>()"
    - "[io.netty.buffer.LongLongHashMap].<init>(long)"
    - "[io.netty.buffer.PoolChunk].insertAvailRun(int,int,long)"
    - "[java.util.ArrayDeque].<init>(int)"
    functionUses: 3
    ICount: 38
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:195,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.buffer.PoolChunk:172,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newLongCounter()"
    - Src: "io.netty.buffer.PoolChunk:205,1"
      Dst: "[io.netty.buffer.PoolChunk].newRunsAvailqueueArray(int)"
    - Src: "io.netty.buffer.PoolChunk:206,1"
      Dst: "[java.util.concurrent.locks.ReentrantLock].<init>()"
    - Src: "io.netty.buffer.PoolChunk:207,1"
      Dst: "[io.netty.buffer.LongLongHashMap].<init>(long)"
    - Src: "io.netty.buffer.PoolChunk:213,1"
      Dst: "[io.netty.buffer.PoolChunk].insertAvailRun(int,int,long)"
    - Src: "io.netty.buffer.PoolChunk:215,1"
      Dst: "[java.util.ArrayDeque].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].<init>(io.netty.buffer.PoolArena,java.lang.Object,java.lang.Object,int)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 233
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.buffer.PoolArena"
    - "java.lang.Object"
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].newLongCounter()"
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 21
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:219,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.buffer.PoolChunk:172,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newLongCounter()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].newRunsAvailqueueArray(int)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 234
    functionLinenumberEnd: 240
    functionDepth: 0
    returnType: "io.netty.buffer.LongPriorityQueue[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.LongPriorityQueue].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:236"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:238"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:237,1"
      Dst: "[io.netty.buffer.LongPriorityQueue].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolChunk].allocate(io.netty.buffer.PooledByteBuf<T>,int,int,io.netty.buffer.PoolThreadCache)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 312
    functionLinenumberEnd: 334
    functionDepth: 8
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "io.netty.buffer.PooledByteBuf<T>"
    - "int"
    - "int"
    - "io.netty.buffer.PoolThreadCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolChunk].allocateSubpage(int)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.PoolChunk].isSubpage(long)"
    - "[io.netty.buffer.SizeClasses].sizeIdx2size(int)"
    - "[io.netty.buffer.PoolChunk].allocateRun(int)"
    - "[java.util.concurrent.LinkedBlockingDeque].pollLast()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].pollLast()"
    - "[java.util.LinkedList].pollLast()"
    - "[java.util.ArrayDeque].pollLast()"
    - "[io.netty.buffer.PoolChunk].initBuf(io.netty.buffer.PooledByteBuf,java.nio.ByteBuffer,long,int,io.netty.buffer.PoolThreadCache)"
    - "[java.util.Deque].pollLast()"
    functionUses: 2
    ICount: 45
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:313"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:322"
        BranchSideFuncs:
        - "allocateRun(int)"
        - "sizeIdx2size(int)"
    - Branch String: "io.netty.buffer.PoolChunk:316"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:319"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunk:318"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:319"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:330"
        BranchSideFuncs:
        - "pollLast()"
    - Branch String: "io.netty.buffer.PoolChunk:319"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:330"
        BranchSideFuncs:
        - "pollLast()"
    - Branch String: "io.netty.buffer.PoolChunk:325"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:328"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunk:327"
        BranchSideFuncs:
        - "<init>()"
        - "isSubpage(long)"
    - Branch String: "io.netty.buffer.PoolChunk:328"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:330"
        BranchSideFuncs:
        - "pollLast()"
    - Branch String: "io.netty.buffer.PoolChunk:328"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:330"
        BranchSideFuncs:
        - "pollLast()"
    - Branch String: "io.netty.buffer.PoolChunk:331"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:331"
        BranchSideFuncs:
        - "initBuf(io.netty.buffer.PooledByteBuf,java.nio.ByteBuffer,long,int,io.netty.buffer.PoolThreadCache)"
      - BranchSide: "io.netty.buffer.PoolChunk:330"
        BranchSideFuncs:
        - "pollLast()"
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:315,1"
      Dst: "[io.netty.buffer.PoolChunk].allocateSubpage(int)"
    - Src: "io.netty.buffer.PoolChunk:319,1"
      Dst: "[io.netty.buffer.PoolChunk].isSubpage(long)"
    - Src: "io.netty.buffer.PoolChunk:319,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.PoolChunk:323,1"
      Dst: "[io.netty.buffer.SizeClasses].sizeIdx2size(int)"
    - Src: "io.netty.buffer.PoolChunk:324,1"
      Dst: "[io.netty.buffer.PoolChunk].allocateRun(int)"
    - Src: "io.netty.buffer.PoolChunk:331,1"
      Dst: "[java.util.Deque].pollLast()"
    - Src: "io.netty.buffer.PoolChunk:332,1"
      Dst: "[io.netty.buffer.PoolChunk].initBuf(io.netty.buffer.PooledByteBuf,java.nio.ByteBuffer,long,int,io.netty.buffer.PoolThreadCache)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 5
  - functionName: "[io.netty.buffer.PoolChunk].allocateSubpage(int)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 441
    functionLinenumberEnd: 465
    functionDepth: 7
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena].findSubpagePoolHead(int)"
    - "[io.netty.buffer.PoolSubpage].lock()"
    - "[io.netty.buffer.PoolChunk].calculateRunSize(int)"
    - "[io.netty.buffer.PoolChunk].allocateRun(int)"
    - "[io.netty.buffer.PoolChunk].runOffset(long)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.SizeClasses].sizeIdx2size(int)"
    - "[io.netty.buffer.PoolSubpage].<init>(io.netty.buffer.PoolSubpage,io.netty.buffer.PoolChunk,int,int,int,int)"
    - "[io.netty.buffer.PoolChunk].runSize(int,long)"
    - "[io.netty.buffer.PoolSubpage].allocate()"
    - "[io.netty.buffer.PoolSubpage].unlock()"
    functionUses: 1
    ICount: 36
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:449"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:453"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.PoolSubpage,io.netty.buffer.PoolChunk,int,int,int,int)"
        - "runOffset(long)"
        - "<init>()"
        - "unlock()"
        - "sizeIdx2size(int)"
        - "allocate()"
        - "runSize(int,long)"
      - BranchSide: "io.netty.buffer.PoolChunk:452"
        BranchSideFuncs:
        - "runOffset(long)"
        - "<init>()"
    - Branch String: "io.netty.buffer.PoolChunk:454"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:455"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.PoolSubpage,io.netty.buffer.PoolChunk,int,int,int,int)"
        - "sizeIdx2size(int)"
        - "allocate()"
        - "runSize(int,long)"
      - BranchSide: "io.netty.buffer.PoolChunk:454"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.PoolSubpage,io.netty.buffer.PoolChunk,int,int,int,int)"
        - "sizeIdx2size(int)"
        - "allocate()"
        - "runSize(int,long)"
    - Branch String: "io.netty.buffer.PoolChunk:454"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:455"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.PoolSubpage,io.netty.buffer.PoolChunk,int,int,int,int)"
        - "sizeIdx2size(int)"
        - "allocate()"
        - "runSize(int,long)"
      - BranchSide: "io.netty.buffer.PoolChunk:454"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.PoolSubpage,io.netty.buffer.PoolChunk,int,int,int,int)"
        - "sizeIdx2size(int)"
        - "allocate()"
        - "runSize(int,long)"
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:442,1"
      Dst: "[io.netty.buffer.PoolArena].findSubpagePoolHead(int)"
    - Src: "io.netty.buffer.PoolChunk:443,1"
      Dst: "[io.netty.buffer.PoolSubpage].lock()"
    - Src: "io.netty.buffer.PoolChunk:446,1"
      Dst: "[io.netty.buffer.PoolChunk].calculateRunSize(int)"
    - Src: "io.netty.buffer.PoolChunk:448,1"
      Dst: "[io.netty.buffer.PoolChunk].allocateRun(int)"
    - Src: "io.netty.buffer.PoolChunk:463,1"
      Dst: "[io.netty.buffer.PoolSubpage].unlock()"
    - Src: "io.netty.buffer.PoolChunk:453,1"
      Dst: "[io.netty.buffer.PoolChunk].runOffset(long)"
    - Src: "io.netty.buffer.PoolChunk:454,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.PoolChunk:455,1"
      Dst: "[io.netty.buffer.SizeClasses].sizeIdx2size(int)"
    - Src: "io.netty.buffer.PoolChunk:458,1"
      Dst: "[io.netty.buffer.PoolChunk].runSize(int,long)"
    - Src: "io.netty.buffer.PoolChunk:458,1"
      Dst: "[io.netty.buffer.PoolSubpage].<init>(io.netty.buffer.PoolSubpage,io.netty.buffer.PoolChunk,int,int,int,int)"
    - Src: "io.netty.buffer.PoolChunk:461,1"
      Dst: "[io.netty.buffer.PoolSubpage].allocate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].calculateRunSize(int)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 368
    functionLinenumberEnd: 391
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SizeClasses].sizeIdx2size(int)"
    - "[java.lang.AssertionError].<init>()"
    functionUses: 1
    ICount: 41
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:379"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:380"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:379"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:376"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:381"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:386"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunk:385"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:386"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:387"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunk:386"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:386"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:387"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunk:386"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:387"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:388"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.buffer.PoolChunk:387"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.buffer.PoolChunk:387"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:388"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.buffer.PoolChunk:387"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.buffer.PoolChunk:388"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:389"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:388"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:389"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:373,1"
      Dst: "[io.netty.buffer.SizeClasses].sizeIdx2size(int)"
    - Src: "io.netty.buffer.PoolChunk:386,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 7
  - functionName: "[io.netty.buffer.PoolChunk].allocateRun(int)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 336
    functionLinenumberEnd: 366
    functionDepth: 6
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SizeClasses].pages2pageIdx(int)"
    - "[java.util.concurrent.locks.ReentrantLock].lock()"
    - "[io.netty.buffer.PoolChunk].runFirstBestFit(int)"
    - "[io.netty.buffer.LongPriorityQueue].poll()"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.buffer.PoolChunk].isUsed(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.PoolChunk].removeAvailRun(io.netty.buffer.LongPriorityQueue,long)"
    - "[io.netty.buffer.PoolChunk].splitLargeRun(long,int)"
    - "[io.netty.buffer.PoolChunk].runSize(int,long)"
    - "[java.util.concurrent.locks.ReentrantLock].unlock()"
    functionUses: 2
    ICount: 48
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:344"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:349"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "unlock()"
        - "splitLargeRun(long,int)"
        - "isUsed(long)"
        - "poll()"
        - "runSize(int,long)"
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "removeAvailRun(io.netty.buffer.LongPriorityQueue,long)"
      - BranchSide: "io.netty.buffer.PoolChunk:348"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "isUsed(long)"
        - "poll()"
        - "<init>(java.lang.Object)"
        - "<init>()"
    - Branch String: "io.netty.buffer.PoolChunk:352"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:354"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "unlock()"
        - "splitLargeRun(long,int)"
        - "isUsed(long)"
        - "poll()"
        - "runSize(int,long)"
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "removeAvailRun(io.netty.buffer.LongPriorityQueue,long)"
      - BranchSide: "io.netty.buffer.PoolChunk:353"
        BranchSideFuncs:
        - "removeAvailRun(io.netty.buffer.LongPriorityQueue,long)"
    - Branch String: "io.netty.buffer.PoolChunk:352"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:349"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "unlock()"
        - "splitLargeRun(long,int)"
        - "isUsed(long)"
        - "poll()"
        - "runSize(int,long)"
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "removeAvailRun(io.netty.buffer.LongPriorityQueue,long)"
      - BranchSide: "io.netty.buffer.PoolChunk:348"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "isUsed(long)"
        - "poll()"
        - "<init>(java.lang.Object)"
        - "<init>()"
    - Branch String: "io.netty.buffer.PoolChunk:352"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:354"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "unlock()"
        - "splitLargeRun(long,int)"
        - "isUsed(long)"
        - "poll()"
        - "runSize(int,long)"
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "removeAvailRun(io.netty.buffer.LongPriorityQueue,long)"
      - BranchSide: "io.netty.buffer.PoolChunk:353"
        BranchSideFuncs:
        - "removeAvailRun(io.netty.buffer.LongPriorityQueue,long)"
    - Branch String: "io.netty.buffer.PoolChunk:356"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:360"
        BranchSideFuncs:
        - "splitLargeRun(long,int)"
      - BranchSide: "io.netty.buffer.PoolChunk:359"
        BranchSideFuncs:
        - "runSize(int,long)"
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:338,1"
      Dst: "[io.netty.buffer.SizeClasses].pages2pageIdx(int)"
    - Src: "io.netty.buffer.PoolChunk:340,1"
      Dst: "[java.util.concurrent.locks.ReentrantLock].lock()"
    - Src: "io.netty.buffer.PoolChunk:343,1"
      Dst: "[io.netty.buffer.PoolChunk].runFirstBestFit(int)"
    - Src: "io.netty.buffer.PoolChunk:364,1"
      Dst: "[java.util.concurrent.locks.ReentrantLock].unlock()"
    - Src: "io.netty.buffer.PoolChunk:350,1"
      Dst: "[io.netty.buffer.LongPriorityQueue].poll()"
    - Src: "io.netty.buffer.PoolChunk:352,1"
      Dst: "[io.netty.buffer.PoolChunk].isUsed(long)"
    - Src: "io.netty.buffer.PoolChunk:352,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.PoolChunk:352,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.PoolChunk:352,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.buffer.PoolChunk:352,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.PoolChunk:352,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    - Src: "io.netty.buffer.PoolChunk:354,1"
      Dst: "[io.netty.buffer.PoolChunk].removeAvailRun(io.netty.buffer.LongPriorityQueue,long)"
    - Src: "io.netty.buffer.PoolChunk:357,1"
      Dst: "[io.netty.buffer.PoolChunk].splitLargeRun(long,int)"
    - Src: "io.netty.buffer.PoolChunk:360,1"
      Dst: "[io.netty.buffer.PoolChunk].runSize(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.PoolChunk].runFirstBestFit(int)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 393
    functionLinenumberEnd: 404
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.LongPriorityQueue].isEmpty()"
    functionUses: 1
    ICount: 23
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:394"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:397"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunk:396"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:397"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:null"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.buffer.PoolChunk:399"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:397"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunk:396"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:399"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:397"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolChunk:396"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:399,1"
      Dst: "[io.netty.buffer.LongPriorityQueue].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.PoolChunk].isUsed(long)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 674
    functionLinenumberEnd: 676
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:675"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:674"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolChunk].splitLargeRun(long,int)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 406
    functionLinenumberEnd: 429
    functionDepth: 5
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.PoolChunk].runPages(long)"
    - "[io.netty.buffer.PoolChunk].runOffset(long)"
    - "[io.netty.buffer.PoolChunk].toRunHandle(int,int,int)"
    - "[io.netty.buffer.PoolChunk].insertAvailRun(int,int,long)"
    functionUses: 1
    ICount: 26
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:407"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:408"
        BranchSideFuncs:
        - "<init>()"
        - "runPages(long)"
    - Branch String: "io.netty.buffer.PoolChunk:407"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:408"
        BranchSideFuncs:
        - "<init>()"
        - "runPages(long)"
    - Branch String: "io.netty.buffer.PoolChunk:410"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:411"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:410"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:411"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolChunk:414"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:427"
        BranchSideFuncs:
        - "runOffset(long)"
        - "toRunHandle(int,int,int)"
        - "insertAvailRun(int,int,long)"
      - BranchSide: "io.netty.buffer.PoolChunk:426"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:407,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.PoolChunk:409,1"
      Dst: "[io.netty.buffer.PoolChunk].runPages(long)"
    - Src: "io.netty.buffer.PoolChunk:415,1"
      Dst: "[io.netty.buffer.PoolChunk].runOffset(long)"
    - Src: "io.netty.buffer.PoolChunk:419,1"
      Dst: "[io.netty.buffer.PoolChunk].toRunHandle(int,int,int)"
    - Src: "io.netty.buffer.PoolChunk:420,1"
      Dst: "[io.netty.buffer.PoolChunk].insertAvailRun(int,int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.PoolChunk].initBuf(io.netty.buffer.PooledByteBuf<T>,java.nio.ByteBuffer,long,int,io.netty.buffer.PoolThreadCache)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 583
    functionLinenumberEnd: 592
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.buffer.PooledByteBuf<T>"
    - "java.nio.ByteBuffer"
    - "long"
    - "int"
    - "io.netty.buffer.PoolThreadCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolChunk].isSubpage(long)"
    - "[io.netty.buffer.PoolChunk].initBufWithSubpage(io.netty.buffer.PooledByteBuf,java.nio.ByteBuffer,long,int,io.netty.buffer.PoolThreadCache)"
    - "[io.netty.buffer.PoolChunk].runSize(int,long)"
    - "[io.netty.buffer.PooledByteBuf].init(io.netty.buffer.PoolChunk,java.nio.ByteBuffer,long,int,int,int,io.netty.buffer.PoolThreadCache)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].init(io.netty.buffer.PoolChunk,java.nio.ByteBuffer,long,int,int,int,io.netty.buffer.PoolThreadCache)"
    - "[io.netty.buffer.PoolChunk].runOffset(long)"
    - "[io.netty.buffer.PooledByteBufAllocator].threadCache()"
    functionUses: 2
    ICount: 20
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:584"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:587"
        BranchSideFuncs:
        - "initBufWithSubpage(io.netty.buffer.PooledByteBuf,java.nio.ByteBuffer,long,int,io.netty.buffer.PoolThreadCache)"
      - BranchSide: "io.netty.buffer.PoolChunk:586"
        BranchSideFuncs:
        - "runOffset(long)"
        - "init(io.netty.buffer.PoolChunk,java.nio.ByteBuffer,long,int,int,int,io.netty.buffer.PoolThreadCache)"
        - "runSize(int,long)"
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:584,1"
      Dst: "[io.netty.buffer.PoolChunk].isSubpage(long)"
    - Src: "io.netty.buffer.PoolChunk:585,1"
      Dst: "[io.netty.buffer.PoolChunk].initBufWithSubpage(io.netty.buffer.PooledByteBuf,java.nio.ByteBuffer,long,int,io.netty.buffer.PoolThreadCache)"
    - Src: "io.netty.buffer.PoolChunk:587,1"
      Dst: "[io.netty.buffer.PoolChunk].runSize(int,long)"
    - Src: "io.netty.buffer.PoolChunk:588,1"
      Dst: "[io.netty.buffer.PoolChunk].runOffset(long)"
    - Src: "io.netty.buffer.PoolChunk:589,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].threadCache()"
    - Src: "io.netty.buffer.PoolChunk:588,1"
      Dst: "[io.netty.buffer.PooledByteBuf].init(io.netty.buffer.PoolChunk,java.nio.ByteBuffer,long,int,int,int,io.netty.buffer.PoolThreadCache)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].threadCache()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 728
    functionLinenumberEnd: 732
    functionDepth: 5
    returnType: "io.netty.buffer.PoolThreadCache"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].get()"
    - "[java.lang.AssertionError].<init>()"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:730"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:731"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:730"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:730"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:731"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:730"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:729,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].get()"
    - Src: "io.netty.buffer.PooledByteBufAllocator:730,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolChunk].initBufWithSubpage(io.netty.buffer.PooledByteBuf<T>,java.nio.ByteBuffer,long,int,io.netty.buffer.PoolThreadCache)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 594
    functionLinenumberEnd: 605
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.buffer.PooledByteBuf<T>"
    - "java.nio.ByteBuffer"
    - "long"
    - "int"
    - "io.netty.buffer.PoolThreadCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolChunk].runOffset(long)"
    - "[io.netty.buffer.PoolChunk].bitmapIdx(long)"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.PooledByteBuf].init(io.netty.buffer.PoolChunk,java.nio.ByteBuffer,long,int,int,int,io.netty.buffer.PoolThreadCache)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].init(io.netty.buffer.PoolChunk,java.nio.ByteBuffer,long,int,int,int,io.netty.buffer.PoolThreadCache)"
    functionUses: 3
    ICount: 39
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:599"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:600"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
      - BranchSide: "io.netty.buffer.PoolChunk:599"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
    - Branch String: "io.netty.buffer.PoolChunk:599"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:600"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
      - BranchSide: "io.netty.buffer.PoolChunk:599"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
    - Branch String: "io.netty.buffer.PoolChunk:600"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:601"
        BranchSideFuncs:
        - "init(io.netty.buffer.PoolChunk,java.nio.ByteBuffer,long,int,int,int,io.netty.buffer.PoolThreadCache)"
    - Branch String: "io.netty.buffer.PoolChunk:600"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:601"
        BranchSideFuncs:
        - "init(io.netty.buffer.PoolChunk,java.nio.ByteBuffer,long,int,int,int,io.netty.buffer.PoolThreadCache)"
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:595,1"
      Dst: "[io.netty.buffer.PoolChunk].runOffset(long)"
    - Src: "io.netty.buffer.PoolChunk:596,1"
      Dst: "[io.netty.buffer.PoolChunk].bitmapIdx(long)"
    - Src: "io.netty.buffer.PoolChunk:599,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.PoolChunk:600,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.PoolChunk:600,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.PoolChunk:600,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.PoolChunk:600,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.PoolChunk:600,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    - Src: "io.netty.buffer.PoolChunk:603,1"
      Dst: "[io.netty.buffer.PooledByteBuf].init(io.netty.buffer.PoolChunk,java.nio.ByteBuffer,long,int,int,int,io.netty.buffer.PoolThreadCache)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.PoolChunk].incrementPinnedMemory(int)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 606
    functionLinenumberEnd: 610
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].add(long)"
    - "[java.util.concurrent.atomic.LongAdder].add(long)"
    - "[io.netty.util.internal.LongCounter].add(long)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:607"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:608"
        BranchSideFuncs:
        - "add(long)"
      - BranchSide: "io.netty.buffer.PoolChunk:607"
        BranchSideFuncs:
        - "add(long)"
    - Branch String: "io.netty.buffer.PoolChunk:607"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:608"
        BranchSideFuncs:
        - "add(long)"
      - BranchSide: "io.netty.buffer.PoolChunk:607"
        BranchSideFuncs:
        - "add(long)"
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:607,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.PoolChunk:608,1"
      Dst: "[io.netty.util.internal.LongCounter].add(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolChunk].decrementPinnedMemory(int)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 611
    functionLinenumberEnd: 615
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].add(long)"
    - "[java.util.concurrent.atomic.LongAdder].add(long)"
    - "[io.netty.util.internal.LongCounter].add(long)"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:612"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:613"
        BranchSideFuncs:
        - "add(long)"
      - BranchSide: "io.netty.buffer.PoolChunk:612"
        BranchSideFuncs:
        - "add(long)"
    - Branch String: "io.netty.buffer.PoolChunk:612"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:613"
        BranchSideFuncs:
        - "add(long)"
      - BranchSide: "io.netty.buffer.PoolChunk:612"
        BranchSideFuncs:
        - "add(long)"
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:612,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.PoolChunk:613,1"
      Dst: "[io.netty.util.internal.LongCounter].add(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolChunk].chunkSize()"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 617
    functionLinenumberEnd: 619
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].freeBytes()"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena].lock()"
    - "[io.netty.buffer.PoolArena].unlock()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:623,1"
      Dst: "[io.netty.buffer.PoolArena].lock()"
    - Src: "io.netty.buffer.PoolChunk:627,1"
      Dst: "[io.netty.buffer.PoolArena].unlock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].pinnedBytes()"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.LongCounter].value()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:632,1"
      Dst: "[io.netty.util.internal.LongCounter].value()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].toString()"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: 637
    functionLinenumberEnd: 656
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena].lock()"
    - "[io.netty.buffer.PoolArena].unlock()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.System].identityHashCode(java.lang.Object)"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.buffer.PoolChunk].usage(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 30
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:638,1"
      Dst: "[io.netty.buffer.PoolArena].lock()"
    - Src: "io.netty.buffer.PoolChunk:642,1"
      Dst: "[io.netty.buffer.PoolArena].unlock()"
    - Src: "io.netty.buffer.PoolChunk:645,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.PoolChunk:646,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.PoolChunk:647,1"
      Dst: "[java.lang.System].identityHashCode(java.lang.Object)"
    - Src: "io.netty.buffer.PoolChunk:647,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "io.netty.buffer.PoolChunk:649,1"
      Dst: "[io.netty.buffer.PoolChunk].usage(int)"
    - Src: "io.netty.buffer.PoolChunk:649,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.PoolChunk:652,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.buffer.PoolChunk:655,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolChunk].isRun(long)"
    functionSourceFile: "io.netty.buffer.PoolChunk"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolChunk].isSubpage(long)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolChunk:679"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolChunk:678"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PoolChunk:679,1"
      Dst: "[io.netty.buffer.PoolChunk].isSubpage(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$3].<init>()"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$3"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$3:114,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$3].newListener(javax.net.ssl.SSLEngine,java.util.List)"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$3"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionDepth: 2
    returnType: "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$FailProtocolSelectionListener].<init>(io.netty.handler.ssl.JdkSslEngine,java.util.List)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$3:117,1"
      Dst: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$FailProtocolSelectionListener].<init>(io.netty.handler.ssl.JdkSslEngine,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$FailProtocolSelectionListener].<init>(io.netty.handler.ssl.JdkSslEngine,java.util.List)"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$FailProtocolSelectionListener"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 203
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.JdkSslEngine"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelectionListener].<init>(io.netty.handler.ssl.JdkSslEngine,java.util.List)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$FailProtocolSelectionListener:201,1"
      Dst: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelectionListener].<init>(io.netty.handler.ssl.JdkSslEngine,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelectionListener].<init>(io.netty.handler.ssl.JdkSslEngine,java.util.List)"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelectionListener"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 179
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.JdkSslEngine"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelectionListener:175,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerUpgradeHandler].<init>(io.netty.handler.codec.http.HttpServerUpgradeHandler$SourceCodec,io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodecFactory)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerUpgradeHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpServerUpgradeHandler$SourceCodec"
    - "io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodecFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler].<init>(io.netty.handler.codec.http.HttpServerUpgradeHandler$SourceCodec,io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodecFactory,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:190,1"
      Dst: "[io.netty.handler.codec.http.HttpServerUpgradeHandler].<init>(io.netty.handler.codec.http.HttpServerUpgradeHandler$SourceCodec,io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodecFactory,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerUpgradeHandler].<init>(io.netty.handler.codec.http.HttpServerUpgradeHandler$SourceCodec,io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodecFactory,int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerUpgradeHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpServerUpgradeHandler$SourceCodec"
    - "io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodecFactory"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler].<init>(io.netty.handler.codec.http.HttpServerUpgradeHandler$SourceCodec,io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodecFactory,int,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:203,1"
      Dst: "[io.netty.handler.codec.http.HttpServerUpgradeHandler].<init>(io.netty.handler.codec.http.HttpServerUpgradeHandler$SourceCodec,io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodecFactory,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerUpgradeHandler].<init>(io.netty.handler.codec.http.HttpServerUpgradeHandler$SourceCodec,io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodecFactory,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerUpgradeHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http.HttpServerUpgradeHandler$SourceCodec"
    - "io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodecFactory"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator].<init>(int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:217,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator].<init>(int)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:219,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerUpgradeHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpObject,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerUpgradeHandler"
    linkageType: ""
    functionLinenumber: 227
    functionLinenumberEnd: 276
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.HttpObject"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler].shouldHandleUpgradeRequest(io.netty.handler.codec.http.HttpRequest)"
    - "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.handler.codec.MessageAggregator].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[jaz.Zer].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler].upgrade(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpRequest)"
    - "[java.util.AbstractList].clear()"
    - "[java.util.concurrent.CopyOnWriteArrayList].clear()"
    - "[java.util.Vector].clear()"
    - "[jaz.Zer].clear()"
    - "[java.util.LinkedList].clear()"
    - "[java.util.ArrayList].clear()"
    - "[io.netty.handler.codec.CodecOutputList].clear()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.List].clear()"
    functionUses: 1
    ICount: 48
    EdgeCount: 53
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:228"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:247"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:230"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:241"
        BranchSideFuncs:
        - "headers()"
        - "contains(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:240"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:232"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:236"
        BranchSideFuncs:
        - "shouldHandleUpgradeRequest(io.netty.handler.codec.http.HttpRequest)"
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:235"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:233"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:236"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:235"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:248"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:254"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "retain(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:253"
        BranchSideFuncs:
        - "isEmpty()"
        - "decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:255"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:260"
        BranchSideFuncs:
        - "<init>()"
        - "size()"
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:261"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:262"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:261"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:261"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:262"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:261"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:266"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:232,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:232,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:233,1"
      Dst: "[io.netty.handler.codec.http.HttpServerUpgradeHandler].shouldHandleUpgradeRequest(io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:236,1"
      Dst: "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:237,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:251,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:254,1"
      Dst: "[io.netty.handler.codec.MessageAggregator].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:255,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:261,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:261,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:263,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:266,1"
      Dst: "[io.netty.handler.codec.http.HttpServerUpgradeHandler].upgrade(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpRequest)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:270,1"
      Dst: "[java.util.List].clear()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http.HttpServerUpgradeHandler].shouldHandleUpgradeRequest(io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerUpgradeHandler"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 292
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerUpgradeHandler].upgrade(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerUpgradeHandler"
    linkageType: ""
    functionLinenumber: 303
    functionLinenumberEnd: 387
    functionDepth: 8
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.FullHttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler].splitHeader(java.lang.CharSequence)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.handler.codec.http.HttpHeaders].getAll(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].getAll(java.lang.CharSequence)"
    - "[jaz.Zer].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].requiredUpgradeHeaders()"
    - "[io.netty.util.AsciiString].containsContentEqualsIgnoreCase(java.util.Collection,java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].containsAllContentEqualsIgnoreCase(java.util.Collection,java.util.Collection)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler].createUpgradeResponse(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].prepareUpgradeResponse(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpRequest,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].<init>(java.lang.CharSequence,io.netty.handler.codec.http.FullHttpRequest)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpServerCodec].upgradeFrom(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2ServerUpgradeCodec].upgradeTo(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpRequest)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].retain()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].release()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodecFactory].newUpgradeCodec(java.lang.CharSequence)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodec].requiredUpgradeHeaders()"
    - "[java.util.Collection].iterator()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodec].prepareUpgradeResponse(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpRequest,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$SourceCodec].upgradeFrom(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodec].upgradeTo(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpRequest)"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 87
    EdgeCount: 361
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:308"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:318"
        BranchSideFuncs:
        - "get(int)"
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:317"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:311"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:304"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:303"
        BranchSideFuncs:
        - "get(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:318"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:324"
        BranchSideFuncs:
        - "writeAndFlush(java.lang.Object)"
        - "hasNext()"
        - "next()"
        - "createUpgradeResponse(java.lang.CharSequence)"
        - "length()"
        - "fireUserEventTriggered(java.lang.Object)"
        - "headers()"
        - "<init>(int)"
        - "append(char)"
        - "retain()"
        - "containsContentEqualsIgnoreCase(java.util.Collection,java.lang.CharSequence)"
        - "getAll(java.lang.CharSequence)"
        - "release()"
        - "remove(io.netty.channel.ChannelHandler)"
        - "splitHeader(java.lang.CharSequence)"
        - "isEmpty()"
        - "pipeline()"
        - "upgradeTo(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpRequest)"
        - "requiredUpgradeHeaders()"
        - "<init>(java.lang.CharSequence,io.netty.handler.codec.http.FullHttpRequest)"
        - "iterator()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "contains(java.lang.CharSequence)"
        - "prepareUpgradeResponse(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpRequest,io.netty.handler.codec.http.HttpHeaders)"
        - "upgradeFrom(io.netty.channel.ChannelHandlerContext)"
        - "setLength(int)"
        - "append(java.lang.CharSequence)"
        - "size()"
        - "containsAllContentEqualsIgnoreCase(java.util.Collection,java.util.Collection)"
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:323"
        BranchSideFuncs:
        - "getAll(java.lang.CharSequence)"
        - "isEmpty()"
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:326"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:327"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:326"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:326"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:330"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:329"
        BranchSideFuncs:
        - "<init>(int)"
        - "size()"
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:331"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:334"
        BranchSideFuncs:
        - "append(char)"
        - "append(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:333"
        BranchSideFuncs:
        - "length()"
        - "containsContentEqualsIgnoreCase(java.util.Collection,java.lang.CharSequence)"
        - "splitHeader(java.lang.CharSequence)"
        - "requiredUpgradeHeaders()"
        - "setLength(int)"
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:339"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:341"
        BranchSideFuncs:
        - "containsAllContentEqualsIgnoreCase(java.util.Collection,java.util.Collection)"
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:340"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:340"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:345"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:344"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:345"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:353"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "contains(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:352"
        BranchSideFuncs:
        - "createUpgradeResponse(java.lang.CharSequence)"
        - "headers()"
        - "prepareUpgradeResponse(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpRequest,io.netty.handler.codec.http.HttpHeaders)"
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:346"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:349"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:348"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:354"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:359"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:358"
        BranchSideFuncs:
        - "writeAndFlush(java.lang.Object)"
        - "fireUserEventTriggered(java.lang.Object)"
        - "retain()"
        - "release()"
        - "remove(io.netty.channel.ChannelHandler)"
        - "pipeline()"
        - "upgradeTo(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpRequest)"
        - "<init>(java.lang.CharSequence,io.netty.handler.codec.http.FullHttpRequest)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "upgradeFrom(io.netty.channel.ChannelHandlerContext)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:304,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:304,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:304,1"
      Dst: "[io.netty.handler.codec.http.HttpServerUpgradeHandler].splitHeader(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:305,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:309,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:310,1"
      Dst: "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodecFactory].newUpgradeCodec(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:324,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].getAll(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:326,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:330,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:331,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:331,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:331,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:332,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:332,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:334,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:334,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:337,1"
      Dst: "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodec].requiredUpgradeHeaders()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:339,1"
      Dst: "[io.netty.util.AsciiString].containsContentEqualsIgnoreCase(java.util.Collection,java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:340,1"
      Dst: "[io.netty.util.AsciiString].containsAllContentEqualsIgnoreCase(java.util.Collection,java.util.Collection)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:345,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:346,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:353,1"
      Dst: "[io.netty.handler.codec.http.HttpServerUpgradeHandler].createUpgradeResponse(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:354,1"
      Dst: "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodec].prepareUpgradeResponse(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpRequest,io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:359,1"
      Dst: "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].<init>(java.lang.CharSequence,io.netty.handler.codec.http.FullHttpRequest)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:366,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:368,1"
      Dst: "[io.netty.handler.codec.http.HttpServerUpgradeHandler$SourceCodec].upgradeFrom(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:369,1"
      Dst: "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeCodec].upgradeTo(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpRequest)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:372,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:372,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:376,1"
      Dst: "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].retain()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:376,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:381,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:384,1"
      Dst: "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 26
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http.HttpServerUpgradeHandler].splitHeader(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerUpgradeHandler"
    linkageType: ""
    functionLinenumber: 404
    functionLinenumberEnd: 428
    functionDepth: 0
    returnType: "java.util.List<CharSequence>"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[java.lang.Character].isWhitespace(char)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 27
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:407"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:423"
        BranchSideFuncs:
        - "isWhitespace(char)"
        - "charAt(int)"
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:422"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:409"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:413"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:417"
        BranchSideFuncs:
        - "append(char)"
    - Branch String: "io.netty.handler.codec.http.HttpServerUpgradeHandler:423"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:427"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "toString()"
      - BranchSide: "io.netty.handler.codec.http.HttpServerUpgradeHandler:426"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:405,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:405,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:406,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:408,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:409,1"
      Dst: "[java.lang.Character].isWhitespace(char)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:415,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:415,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:416,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:418,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:423,1"
      Dst: "[java.lang.StringBuilder].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.HttpServerUpgradeHandler].createUpgradeResponse(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerUpgradeHandler"
    linkageType: ""
    functionLinenumber: 392
    functionLinenumberEnd: 398
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.FullHttpResponse"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    functionUses: 1
    ICount: 16
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:393,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:395,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:395,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].<init>(java.lang.CharSequence,io.netty.handler.codec.http.FullHttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "io.netty.handler.codec.http.FullHttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent:106,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].retain()"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].retain()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].retain()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].retain()"
    - "[io.netty.handler.codec.http.FullHttpRequest].retain()"
    functionUses: 3
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent:132,1"
      Dst: "[io.netty.handler.codec.http.FullHttpRequest].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].release()"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].release()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].release()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 6
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent:156,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerUpgradeHandler].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerUpgradeHandler"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpObject,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerUpgradeHandler:40,1"
      Dst: "[io.netty.handler.codec.http.HttpServerUpgradeHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpObject,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:69,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:81,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(byte[],int)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:103,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:112,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,int)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:125,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.compression.ZlibWrapper"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:133,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(boolean,int)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:141,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].<init>(io.netty.handler.codec.compression.ZlibWrapper,byte[],boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].isClosed()"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 285
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].getShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShort(int)"
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].looksLikeZlib(short)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[java.util.zip.Inflater].<init>(boolean)"
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].handleGzipFooter(io.netty.buffer.ByteBuf)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].readGZIPHeader(io.netty.buffer.ByteBuf)"
    - "[java.util.zip.Inflater].needsInput()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.EmptyByteBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[java.util.zip.Inflater].setInput(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AbstractByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[])"
    - "[java.util.zip.Inflater].setInput(byte[])"
    - "[java.util.zip.Inflater].getRemaining()"
    - "[io.netty.handler.codec.compression.ZlibDecoder].prepareDecompressBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[java.util.zip.Inflater].inflate(byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].update(byte[],int,int)"
    - "[io.netty.handler.codec.compression.Crc32c].update(byte[],int,int)"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].update(byte[],int,int)"
    - "[java.util.zip.Inflater].needsDictionary()"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[java.util.zip.Inflater].setDictionary(byte[])"
    - "[java.util.zip.Inflater].finished()"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].getShort(int)"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[java.util.zip.Checksum].update(byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 145
    EdgeCount: 270
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:186"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:192"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:191"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:192"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:203"
        BranchSideFuncs:
        - "arrayOffset()"
        - "setInput(byte[],int,int)"
        - "inflate(byte[],int,int)"
        - "readGZIPHeader(io.netty.buffer.ByteBuf)"
        - "needsInput()"
        - "isReadable()"
        - "readerIndex()"
        - "writerIndex()"
        - "<init>(boolean)"
        - "writableBytes()"
        - "update(byte[],int,int)"
        - "skipBytes(int)"
        - "looksLikeZlib(short)"
        - "prepareDecompressBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
        - "<init>()"
        - "writerIndex(int)"
        - "setInput(byte[])"
        - "finished()"
        - "setDictionary(byte[])"
        - "handleGzipFooter(io.netty.buffer.ByteBuf)"
        - "array()"
        - "needsDictionary()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "getShort(int)"
        - "getBytes(int,byte[])"
        - "getRemaining()"
        - "<init>(java.lang.String)"
        - "hasArray()"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:202"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:194"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:198"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:197"
        BranchSideFuncs:
        - "looksLikeZlib(short)"
        - "getShort(int)"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:198"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:198"
        BranchSideFuncs:
        - "<init>(boolean)"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:197"
        BranchSideFuncs:
        - "looksLikeZlib(short)"
        - "getShort(int)"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:203"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:225"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:224"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:204"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:225"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:224"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:205"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:213"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:212"
        BranchSideFuncs:
        - "readGZIPHeader(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:211"
        BranchSideFuncs:
        - "arrayOffset()"
        - "setInput(byte[],int,int)"
        - "inflate(byte[],int,int)"
        - "readGZIPHeader(io.netty.buffer.ByteBuf)"
        - "needsInput()"
        - "isReadable()"
        - "readerIndex()"
        - "writerIndex()"
        - "<init>(boolean)"
        - "writableBytes()"
        - "update(byte[],int,int)"
        - "skipBytes(int)"
        - "looksLikeZlib(short)"
        - "prepareDecompressBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
        - "<init>()"
        - "writerIndex(int)"
        - "setInput(byte[])"
        - "finished()"
        - "setDictionary(byte[])"
        - "handleGzipFooter(io.netty.buffer.ByteBuf)"
        - "array()"
        - "needsDictionary()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "getShort(int)"
        - "getBytes(int,byte[])"
        - "getRemaining()"
        - "<init>(java.lang.String)"
        - "hasArray()"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:210"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:211"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:213"
        BranchSideFuncs:
        - "arrayOffset()"
        - "setInput(byte[],int,int)"
        - "inflate(byte[],int,int)"
        - "readGZIPHeader(io.netty.buffer.ByteBuf)"
        - "needsInput()"
        - "isReadable()"
        - "readerIndex()"
        - "writerIndex()"
        - "<init>(boolean)"
        - "writableBytes()"
        - "update(byte[],int,int)"
        - "skipBytes(int)"
        - "looksLikeZlib(short)"
        - "prepareDecompressBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
        - "<init>()"
        - "writerIndex(int)"
        - "setInput(byte[])"
        - "finished()"
        - "setDictionary(byte[])"
        - "handleGzipFooter(io.netty.buffer.ByteBuf)"
        - "array()"
        - "needsDictionary()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "getShort(int)"
        - "getBytes(int,byte[])"
        - "getRemaining()"
        - "<init>(java.lang.String)"
        - "hasArray()"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:212"
        BranchSideFuncs:
        - "readGZIPHeader(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:211"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:213"
        BranchSideFuncs:
        - "arrayOffset()"
        - "setInput(byte[],int,int)"
        - "inflate(byte[],int,int)"
        - "readGZIPHeader(io.netty.buffer.ByteBuf)"
        - "needsInput()"
        - "isReadable()"
        - "readerIndex()"
        - "writerIndex()"
        - "<init>(boolean)"
        - "writableBytes()"
        - "update(byte[],int,int)"
        - "skipBytes(int)"
        - "looksLikeZlib(short)"
        - "prepareDecompressBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
        - "<init>()"
        - "writerIndex(int)"
        - "setInput(byte[])"
        - "finished()"
        - "setDictionary(byte[])"
        - "handleGzipFooter(io.netty.buffer.ByteBuf)"
        - "array()"
        - "needsDictionary()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "getShort(int)"
        - "getBytes(int,byte[])"
        - "getRemaining()"
        - "<init>(java.lang.String)"
        - "hasArray()"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:212"
        BranchSideFuncs:
        - "readGZIPHeader(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:213"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:218"
        BranchSideFuncs:
        - "arrayOffset()"
        - "setInput(byte[],int,int)"
        - "inflate(byte[],int,int)"
        - "readGZIPHeader(io.netty.buffer.ByteBuf)"
        - "needsInput()"
        - "isReadable()"
        - "readerIndex()"
        - "writerIndex()"
        - "<init>(boolean)"
        - "writableBytes()"
        - "update(byte[],int,int)"
        - "skipBytes(int)"
        - "looksLikeZlib(short)"
        - "prepareDecompressBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
        - "<init>()"
        - "writerIndex(int)"
        - "setInput(byte[])"
        - "finished()"
        - "setDictionary(byte[])"
        - "handleGzipFooter(io.netty.buffer.ByteBuf)"
        - "array()"
        - "needsDictionary()"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "getShort(int)"
        - "getBytes(int,byte[])"
        - "getRemaining()"
        - "<init>(java.lang.String)"
        - "hasArray()"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:217"
        BranchSideFuncs:
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:219"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:225"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:224"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:235"
        BranchSideFuncs:
        - "hasArray()"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:234"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:226"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:229"
        BranchSideFuncs:
        - "setInput(byte[],int,int)"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:228"
        BranchSideFuncs:
        - "readerIndex()"
        - "setInput(byte[])"
        - "getBytes(int,byte[])"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:238"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:269"
        BranchSideFuncs:
        - "arrayOffset()"
        - "inflate(byte[],int,int)"
        - "writerIndex()"
        - "writableBytes()"
        - "array()"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:268"
        BranchSideFuncs:
        - "skipBytes(int)"
        - "getRemaining()"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:244"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:249"
        BranchSideFuncs:
        - "writerIndex(int)"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:248"
        BranchSideFuncs:
        - "needsDictionary()"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:246"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:257"
        BranchSideFuncs:
        - "update(byte[],int,int)"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:256"
        BranchSideFuncs:
        - "finished()"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:249"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:257"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:256"
        BranchSideFuncs:
        - "finished()"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:250"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:254"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:253"
        BranchSideFuncs:
        - "setDictionary(byte[])"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:257"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:265"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:264"
        BranchSideFuncs:
        - "prepareDecompressBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:258"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:261"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:260"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:271"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:278"
        BranchSideFuncs:
        - "handleGzipFooter(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:277"
        BranchSideFuncs:
        - "isReadable()"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:278"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:281"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:280"
        BranchSideFuncs:
        - "release()"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:278"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:281"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:280"
        BranchSideFuncs:
        - "release()"
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:183,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:183,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:198,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:198,1"
      Dst: "[io.netty.buffer.ByteBuf].getShort(int)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:198,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].looksLikeZlib(short)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:199,1"
      Dst: "[java.util.zip.Inflater].<init>(boolean)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:206,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].handleGzipFooter(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:211,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:213,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].readGZIPHeader(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:225,1"
      Dst: "[java.util.zip.Inflater].needsInput()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:226,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:227,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:227,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:227,1"
      Dst: "[java.util.zip.Inflater].setInput(byte[],int,int)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:230,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:231,1"
      Dst: "[java.util.zip.Inflater].setInput(byte[])"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:235,1"
      Dst: "[java.util.zip.Inflater].getRemaining()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:235,1"
      Dst: "[io.netty.handler.codec.compression.ZlibDecoder].prepareDecompressBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:240,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:242,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:243,1"
      Dst: "[java.util.zip.Inflater].inflate(byte[],int,int)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:245,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:247,1"
      Dst: "[java.util.zip.Checksum].update(byte[],int,int)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:249,1"
      Dst: "[java.util.zip.Inflater].needsDictionary()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:251,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:254,1"
      Dst: "[java.util.zip.Inflater].setDictionary(byte[])"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:257,1"
      Dst: "[java.util.zip.Inflater].finished()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:278,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:279,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:281,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:276,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 52
    CyclomaticComplexity: 16
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].looksLikeZlib(short)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: 507
    functionLinenumberEnd: 509
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:508"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:507"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:508"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:507"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].handleGzipFooter(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 298
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].readGZIPFooter(io.netty.buffer.ByteBuf)"
    - "[java.util.zip.Inflater].reset()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].reset()"
    - "[io.netty.handler.codec.compression.Crc32c].reset()"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].reset()"
    - "[java.util.zip.Checksum].reset()"
    functionUses: 2
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:297"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:296"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:288"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:288"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:287"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:290"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:297"
        BranchSideFuncs:
        - "reset()"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:296"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:287,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].readGZIPFooter(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:291,1"
      Dst: "[java.util.zip.Inflater].reset()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:292,1"
      Dst: "[java.util.zip.Checksum].reset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].readGZIPFooter(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: 437
    functionLinenumberEnd: 456
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].verifyCrc(io.netty.buffer.ByteBuf)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[java.util.zip.Inflater].getTotalOut()"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    functionUses: 1
    ICount: 36
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:438"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:442"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:441"
        BranchSideFuncs:
        - "verifyCrc(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:443"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:445"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:443"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:445"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:447"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:449"
        BranchSideFuncs:
        - "getTotalOut()"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:451"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:455"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:454"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:438,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:442,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].verifyCrc(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:443,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:448,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:450,1"
      Dst: "[java.util.zip.Inflater].getTotalOut()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:452,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:452,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:452,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:452,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:452,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].verifyCrc(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: 465
    functionLinenumberEnd: 479
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].getValue()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].getValue()"
    - "[io.netty.handler.codec.compression.Crc32c].getValue()"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[java.util.zip.Checksum].getValue()"
    functionUses: 1
    ICount: 30
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:466"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:469"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:468"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:470"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:472"
        BranchSideFuncs:
        - "getValue()"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:474"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:478"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:477"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:466,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:471,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:473,1"
      Dst: "[java.util.zip.Checksum].getValue()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:475,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:475,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:475,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:475,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:475,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].readGZIPHeader(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: 313
    functionLinenumberEnd: 402
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].update(int)"
    - "[io.netty.handler.codec.compression.Crc32c].update(int)"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].update(int)"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].update(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.compression.ByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].skipIfNeeded(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.compression.JdkZlibDecoder].verifyCrc16(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].reset()"
    - "[io.netty.handler.codec.compression.Crc32c].reset()"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].reset()"
    - "[java.lang.IllegalStateException].<init>()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[java.util.zip.Checksum].update(int)"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[java.util.zip.Checksum].reset()"
    functionUses: 1
    ICount: 127
    EdgeCount: 158
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:316"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:320"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:319"
        BranchSideFuncs:
        - "readByte()"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:323"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:326"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:325"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:330"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:334"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:333"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:339"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:345"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:344"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:354"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:365"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:364"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:355"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:358"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:357"
        BranchSideFuncs:
        - "readUnsignedByte()"
        - "update(int)"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:368"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:375"
        BranchSideFuncs:
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:374"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:369"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:372"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:371"
        BranchSideFuncs:
        - "readerIndex()"
        - "update(io.netty.buffer.ByteBuf,int,int)"
        - "skipBytes(int)"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:378"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:381"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:380"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:384"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:387"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:386"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:390"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:395"
        BranchSideFuncs:
        - "verifyCrc16(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:394"
        BranchSideFuncs:
        - "reset()"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:391"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:395"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:394"
        BranchSideFuncs:
        - "reset()"
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:314,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:316,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:320,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:324,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:326,1"
      Dst: "[java.util.zip.Checksum].update(int)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:329,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:331,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:331,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:331,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:331,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:345,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:345,1"
      Dst: "[io.netty.handler.codec.compression.ByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:346,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:378,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].skipIfNeeded(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:391,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibDecoder].verifyCrc16(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:395,1"
      Dst: "[java.util.zip.Checksum].reset()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:401,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 32
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].skipIfNeeded(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: 412
    functionLinenumberEnd: 428
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].update(int)"
    - "[io.netty.handler.codec.compression.Crc32c].update(int)"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].update(int)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[java.util.zip.Checksum].update(int)"
    functionUses: 2
    ICount: 17
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:413"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:426"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:415"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:418"
        BranchSideFuncs:
        - "update(int)"
        - "readUnsignedByte()"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:421"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:424"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:423"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:415,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:419,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:420,1"
      Dst: "[java.util.zip.Checksum].update(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].verifyCrc16(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: 481
    functionLinenumberEnd: 498
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.compression.Lz4XXHash32].getValue()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].getValue()"
    - "[io.netty.handler.codec.compression.Crc32c].getValue()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[java.util.zip.Checksum].getValue()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    functionUses: 1
    ICount: 37
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:482"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:485"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:484"
        BranchSideFuncs:
        - "getValue()"
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:488"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:492"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:493"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:497"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:496"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:482,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:485,1"
      Dst: "[java.util.zip.Checksum].getValue()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:489,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:494,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:494,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:494,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:494,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:494,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.compression.DecompressionException"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.DecompressionException:37,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].decompressionBufferExhausted(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: 301
    functionLinenumberEnd: 304
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibDecoder].handlerRemoved0(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibDecoder"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 312
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].handlerRemoved0(io.netty.channel.ChannelHandlerContext)"
    - "[java.util.zip.Inflater].end()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JdkZlibDecoder:308"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:311"
        BranchSideFuncs:
        - "end()"
      - BranchSide: "io.netty.handler.codec.compression.JdkZlibDecoder:310"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:307,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].handlerRemoved0(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.compression.JdkZlibDecoder:309,1"
      Dst: "[java.util.zip.Inflater].end()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.address.DynamicAddressConnectHandler$1].<init>(io.netty.handler.address.DynamicAddressConnectHandler)"
    functionSourceFile: "io.netty.handler.address.DynamicAddressConnectHandler$1"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.address.DynamicAddressConnectHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.address.DynamicAddressConnectHandler$1:49,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.address.DynamicAddressConnectHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.address.DynamicAddressConnectHandler$1"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.AbstractChannel:io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.channel.ChannelFuture].channel()"
    - "[io.netty.channel.Channel].pipeline()"
    - "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    functionUses: 1
    ICount: 9
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.address.DynamicAddressConnectHandler$1:52"
      Branch Sides:
      - BranchSide: "io.netty.handler.address.DynamicAddressConnectHandler$1:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.address.DynamicAddressConnectHandler$1:52,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.address.DynamicAddressConnectHandler$1:55,1"
      Dst: "[io.netty.channel.ChannelFuture].channel()"
    - Src: "io.netty.handler.address.DynamicAddressConnectHandler$1:55,1"
      Dst: "[io.netty.channel.Channel].pipeline()"
    - Src: "io.netty.handler.address.DynamicAddressConnectHandler$1:55,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.address.DynamicAddressConnectHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.address.DynamicAddressConnectHandler$1"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.address.DynamicAddressConnectHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.address.DynamicAddressConnectHandler$1:49,1"
      Dst: "[io.netty.handler.address.DynamicAddressConnectHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksProtocolVersion].values()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksProtocolVersion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksProtocolVersion[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksProtocolVersion:19,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksProtocolVersion].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksProtocolVersion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksProtocolVersion"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksProtocolVersion:19,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksProtocolVersion].<init>(java.lang.String,int,byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksProtocolVersion"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksProtocolVersion:26,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksProtocolVersion].fromByte(byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksProtocolVersion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.socks.SocksProtocolVersion"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksProtocolVersion].valueOf(byte)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksProtocolVersion:35,1"
      Dst: "[io.netty.handler.codec.socks.SocksProtocolVersion].valueOf(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksProtocolVersion].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksProtocolVersion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.socks.SocksProtocolVersion"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksProtocolVersion].values()"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksProtocolVersion:39"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksProtocolVersion:44"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksProtocolVersion:43"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socks.SocksProtocolVersion:40"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksProtocolVersion:39"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksProtocolVersion:38"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksProtocolVersion:39,1"
      Dst: "[io.netty.handler.codec.socks.SocksProtocolVersion].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.HashedWheelTimer].<init>()"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.Executors].defaultThreadFactory()"
    - "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer:129,1"
      Dst: "[java.util.concurrent.Executors].defaultThreadFactory()"
    - Src: "io.netty.util.HashedWheelTimer:129,1"
      Dst: "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer].<init>(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.Executors].defaultThreadFactory()"
    - "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer:143,1"
      Dst: "[java.util.concurrent.Executors].defaultThreadFactory()"
    - Src: "io.netty.util.HashedWheelTimer:143,1"
      Dst: "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer].<init>(long,java.util.concurrent.TimeUnit,int)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.Executors].defaultThreadFactory()"
    - "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer:157,1"
      Dst: "[java.util.concurrent.Executors].defaultThreadFactory()"
    - Src: "io.netty.util.HashedWheelTimer:157,1"
      Dst: "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.concurrent.ThreadFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer:170,1"
      Dst: "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.concurrent.ThreadFactory"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer:186,1"
      Dst: "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit,int)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.util.concurrent.ThreadFactory"
    - "long"
    - "java.util.concurrent.TimeUnit"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit,int,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer:204,1"
      Dst: "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit,int,boolean)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.util.concurrent.ThreadFactory"
    - "long"
    - "java.util.concurrent.TimeUnit"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit,int,boolean,long)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer:225,1"
      Dst: "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit,int,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit,int,boolean,long)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.util.concurrent.ThreadFactory"
    - "long"
    - "java.util.concurrent.TimeUnit"
    - "int"
    - "boolean"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit,int,boolean,long,java.util.concurrent.Executor)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer:252,1"
      Dst: "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit,int,boolean,long,java.util.concurrent.Executor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer].<init>(java.util.concurrent.ThreadFactory,long,java.util.concurrent.TimeUnit,int,boolean,long,java.util.concurrent.Executor)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.util.concurrent.ThreadFactory"
    - "long"
    - "java.util.concurrent.TimeUnit"
    - "int"
    - "boolean"
    - "long"
    - "java.util.concurrent.Executor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.HashedWheelTimer$Worker].<init>(io.netty.util.HashedWheelTimer,io.netty.util.HashedWheelTimer$1)"
    - "[java.util.concurrent.CountDownLatch].<init>(int)"
    - "[io.netty.util.internal.PlatformDependent].newMpscQueue()"
    - "[java.util.concurrent.atomic.AtomicLong].<init>(long)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(long,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[io.netty.util.HashedWheelTimer].createWheel(int)"
    - "[java.util.concurrent.TimeUnit].toNanos(long)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ThreadFactory].newThread(java.lang.Runnable)"
    - "[java.lang.Thread].isDaemon()"
    - "[io.netty.util.ResourceLeakDetector].track(java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicInteger].incrementAndGet()"
    - "[java.util.concurrent.atomic.AtomicBoolean].compareAndSet(boolean,boolean)"
    - "[io.netty.util.HashedWheelTimer].reportTooManyInstances()"
    functionUses: 0
    ICount: 90
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer:297"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:303"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:302"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:303"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:307"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:313"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:311"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:310"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:313"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:311"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:310"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:317"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:321"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:320"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:318"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:321"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:320"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer:281,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.HashedWheelTimer:101,1"
      Dst: "[io.netty.util.HashedWheelTimer$Worker].<init>(io.netty.util.HashedWheelTimer,io.netty.util.HashedWheelTimer$1)"
    - Src: "io.netty.util.HashedWheelTimer:113,1"
      Dst: "[java.util.concurrent.CountDownLatch].<init>(int)"
    - Src: "io.netty.util.HashedWheelTimer:114,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newMpscQueue()"
    - Src: "io.netty.util.HashedWheelTimer:116,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].<init>(long)"
    - Src: "io.netty.util.HashedWheelTimer:283,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.HashedWheelTimer:285,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(long,java.lang.String)"
    - Src: "io.netty.util.HashedWheelTimer:286,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.util.HashedWheelTimer:290,1"
      Dst: "[io.netty.util.HashedWheelTimer].createWheel(int)"
    - Src: "io.netty.util.HashedWheelTimer:294,1"
      Dst: "[java.util.concurrent.TimeUnit].toNanos(long)"
    - Src: "io.netty.util.HashedWheelTimer:300,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.util.HashedWheelTimer:298,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.util.HashedWheelTimer:298,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.util.HashedWheelTimer:304,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.HashedWheelTimer:311,1"
      Dst: "[java.util.concurrent.ThreadFactory].newThread(java.lang.Runnable)"
    - Src: "io.netty.util.HashedWheelTimer:313,1"
      Dst: "[java.lang.Thread].isDaemon()"
    - Src: "io.netty.util.HashedWheelTimer:313,1"
      Dst: "[io.netty.util.ResourceLeakDetector].track(java.lang.Object)"
    - Src: "io.netty.util.HashedWheelTimer:317,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].incrementAndGet()"
    - Src: "io.netty.util.HashedWheelTimer:318,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].compareAndSet(boolean,boolean)"
    - Src: "io.netty.util.HashedWheelTimer:319,1"
      Dst: "[io.netty.util.HashedWheelTimer].reportTooManyInstances()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 6
  - functionName: "[io.netty.util.HashedWheelTimer].createWheel(int)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.util.HashedWheelTimer$HashedWheelBucket[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    - "[io.netty.util.HashedWheelTimer].normalizeTicksPerWheel(int)"
    - "[io.netty.util.HashedWheelTimer$HashedWheelBucket].<init>(io.netty.util.HashedWheelTimer$1)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer:342"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:344"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer:338,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    - Src: "io.netty.util.HashedWheelTimer:340,1"
      Dst: "[io.netty.util.HashedWheelTimer].normalizeTicksPerWheel(int)"
    - Src: "io.netty.util.HashedWheelTimer:343,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelBucket].<init>(io.netty.util.HashedWheelTimer$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.HashedWheelTimer].normalizeTicksPerWheel(int)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer:350"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:353"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:352"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelBucket].<init>(io.netty.util.HashedWheelTimer$1)"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelBucket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.HashedWheelTimer$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.HashedWheelTimer$HashedWheelBucket].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelBucket:762,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelBucket].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer$HashedWheelBucket].<init>()"
    functionSourceFile: "io.netty.util.HashedWheelTimer$HashedWheelBucket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer$HashedWheelBucket:762,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer].start()"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].get(java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    - "[java.lang.Thread].start()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.Error].<init>(java.lang.String)"
    - "[java.util.concurrent.CountDownLatch].await()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer:366"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:379"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:378"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:379"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:386"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:385"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer:364,1"
      Dst: "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].get(java.lang.Object)"
    - Src: "io.netty.util.HashedWheelTimer:366,1"
      Dst: "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    - Src: "io.netty.util.HashedWheelTimer:367,1"
      Dst: "[java.lang.Thread].start()"
    - Src: "io.netty.util.HashedWheelTimer:373,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.util.HashedWheelTimer:375,1"
      Dst: "[java.lang.Error].<init>(java.lang.String)"
    - Src: "io.netty.util.HashedWheelTimer:381,1"
      Dst: "[java.util.concurrent.CountDownLatch].await()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.HashedWheelTimer].stop()"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    - "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].getAndSet(java.lang.Object,int)"
    - "[java.util.concurrent.atomic.AtomicInteger].decrementAndGet()"
    - "[io.netty.util.ResourceLeakTracker].close(java.lang.Object)"
    - "[java.lang.AssertionError].<init>()"
    - "[java.util.Collections].emptySet()"
    - "[java.lang.Thread].isAlive()"
    - "[java.lang.Thread].interrupt()"
    - "[java.lang.Thread].join(long)"
    - "[io.netty.util.HashedWheelTimer$Worker].unprocessedTimeouts()"
    functionUses: 0
    ICount: 82
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer:390"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:397"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:396"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:397"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:411"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:410"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:399"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:407"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:406"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:401"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:407"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:406"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:403"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:407"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:406"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:403"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:407"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:406"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:412"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:421"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:420"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:421"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:425"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:424"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:426"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:431"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:430"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:428"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:429"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:428"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:428"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:429"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:428"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:426"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:430"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:429"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:428"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:430"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:429"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:428"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:430"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:429"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer:390,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "io.netty.util.HashedWheelTimer:391,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.HashedWheelTimer:392,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "io.netty.util.HashedWheelTimer:392,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.HashedWheelTimer:394,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.HashedWheelTimer:394,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.util.HashedWheelTimer:397,1"
      Dst: "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    - Src: "io.netty.util.HashedWheelTimer:399,1"
      Dst: "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].getAndSet(java.lang.Object,int)"
    - Src: "io.netty.util.HashedWheelTimer:400,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].decrementAndGet()"
    - Src: "io.netty.util.HashedWheelTimer:402,1"
      Dst: "[io.netty.util.ResourceLeakTracker].close(java.lang.Object)"
    - Src: "io.netty.util.HashedWheelTimer:403,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.util.HashedWheelTimer:407,1"
      Dst: "[java.util.Collections].emptySet()"
    - Src: "io.netty.util.HashedWheelTimer:412,1"
      Dst: "[java.lang.Thread].isAlive()"
    - Src: "io.netty.util.HashedWheelTimer:413,1"
      Dst: "[java.lang.Thread].interrupt()"
    - Src: "io.netty.util.HashedWheelTimer:415,1"
      Dst: "[java.lang.Thread].join(long)"
    - Src: "io.netty.util.HashedWheelTimer:431,1"
      Dst: "[io.netty.util.HashedWheelTimer$Worker].unprocessedTimeouts()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 26
    CyclomaticComplexity: 9
  - functionName: "[io.netty.util.HashedWheelTimer].newTimeout(io.netty.util.TimerTask,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.Timeout"
    argCount: 3
    argTypes:
    - "io.netty.util.TimerTask"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.concurrent.atomic.AtomicLong].incrementAndGet()"
    - "[java.util.concurrent.atomic.AtomicLong].decrementAndGet()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.concurrent.RejectedExecutionException].<init>(java.lang.String)"
    - "[io.netty.util.HashedWheelTimer].start()"
    - "[java.lang.System].nanoTime()"
    - "[java.util.concurrent.TimeUnit].toNanos(long)"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].<init>(io.netty.util.HashedWheelTimer,io.netty.util.TimerTask,long)"
    - "[java.util.Queue].add(java.lang.Object)"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer:441"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:448"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:447"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:441"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:448"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:447"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:455"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:458"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:457"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.HashedWheelTimer:455"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:458"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:457"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer:436,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.HashedWheelTimer:439,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].incrementAndGet()"
    - Src: "io.netty.util.HashedWheelTimer:442,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].decrementAndGet()"
    - Src: "io.netty.util.HashedWheelTimer:443,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.HashedWheelTimer:443,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.HashedWheelTimer:443,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.util.HashedWheelTimer:443,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.HashedWheelTimer:443,1"
      Dst: "[java.util.concurrent.RejectedExecutionException].<init>(java.lang.String)"
    - Src: "io.netty.util.HashedWheelTimer:448,1"
      Dst: "[io.netty.util.HashedWheelTimer].start()"
    - Src: "io.netty.util.HashedWheelTimer:452,1"
      Dst: "[java.lang.System].nanoTime()"
    - Src: "io.netty.util.HashedWheelTimer:452,1"
      Dst: "[java.util.concurrent.TimeUnit].toNanos(long)"
    - Src: "io.netty.util.HashedWheelTimer:458,1"
      Dst: "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].<init>(io.netty.util.HashedWheelTimer,io.netty.util.TimerTask,long)"
    - Src: "io.netty.util.HashedWheelTimer:459,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.HashedWheelTimer].pendingTimeouts()"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].get()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer:467,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.HashedWheelTimer].reportTooManyInstances()"
    functionSourceFile: "io.netty.util.HashedWheelTimer"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.InternalLogger].isErrorEnabled()"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.HashedWheelTimer:471"
      Branch Sides:
      - BranchSide: "io.netty.util.HashedWheelTimer:477"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.HashedWheelTimer:476"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.HashedWheelTimer:471,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isErrorEnabled()"
    - Src: "io.netty.util.HashedWheelTimer:472,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - Src: "io.netty.util.HashedWheelTimer:473,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.HashedWheelTimer:473,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.HashedWheelTimer:473,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.HashedWheelTimer:473,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].error(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpContentEncoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentEncoder$State"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpContentEncoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentEncoder$State:58,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentEncoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentEncoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpContentEncoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentEncoder$State:58,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentEncoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentEncoder$State"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentEncoder$State:58,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.CleanerJava9$2].run()"
    functionSourceFile: "io.netty.util.internal.CleanerJava9$2"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 109
    functionDepth: 1
    returnType: "java.lang.Exception"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.CleanerJava9].access$000()"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    functionUses: 4
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.CleanerJava9$2:102,1"
      Dst: "[io.netty.util.internal.CleanerJava9].access$000()"
    - Src: "io.netty.util.internal.CleanerJava9$2:102,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalChannel$3].run()"
    functionSourceFile: "io.netty.channel.local.LocalChannel$3"
    linkageType: ""
    functionLinenumber: 179
    functionLinenumberEnd: 188
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalChannel].access$200(io.netty.channel.local.LocalChannel)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].trySuccess()"
    - "[io.netty.channel.DefaultChannelPromise].trySuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].trySuccess()"
    - "[io.netty.channel.VoidChannelPromise].trySuccess()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelActive()"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.ChannelPromise].trySuccess()"
    - "[io.netty.channel.ChannelPipeline].fireChannelActive()"
    functionUses: 50
    ICount: 10
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalChannel$3:184"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel$3:187"
        BranchSideFuncs:
        - "pipeline()"
        - "fireChannelActive()"
      - BranchSide: "io.netty.channel.local.LocalChannel$3:186"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.local.LocalChannel$3:184"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalChannel$3:187"
        BranchSideFuncs:
        - "pipeline()"
        - "fireChannelActive()"
      - BranchSide: "io.netty.channel.local.LocalChannel$3:186"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.local.LocalChannel$3:180,1"
      Dst: "[io.netty.channel.local.LocalChannel].access$200(io.netty.channel.local.LocalChannel)"
    - Src: "io.netty.channel.local.LocalChannel$3:184,1"
      Dst: "[io.netty.channel.ChannelPromise].trySuccess()"
    - Src: "io.netty.channel.local.LocalChannel$3:185,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.local.LocalChannel$3:185,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelActive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.protobuf.ProtobufEncoderNano].<init>()"
    functionSourceFile: "io.netty.handler.codec.protobuf.ProtobufEncoderNano"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoderNano:60,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.protobuf.ProtobufEncoderNano].encode(io.netty.channel.ChannelHandlerContext,com.google.protobuf.nano.MessageNano,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.protobuf.ProtobufEncoderNano"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "com.google.protobuf.nano.MessageNano"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[com.google.protobuf.nano.CodedOutputByteBufferNano].newInstance(byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.PooledHeapByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[com.google.protobuf.nano.MessageNano].getSerializedSize()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[com.google.protobuf.nano.MessageNano].writeTo(com.google.protobuf.nano.CodedOutputByteBufferNano)"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 15
    EdgeCount: 62
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoderNano:64,1"
      Dst: "[com.google.protobuf.nano.MessageNano].getSerializedSize()"
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoderNano:65,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoderNano:65,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int,int)"
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoderNano:66,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoderNano:68,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoderNano:68,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoderNano:67,1"
      Dst: "[com.google.protobuf.nano.CodedOutputByteBufferNano].newInstance(byte[],int,int)"
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoderNano:69,1"
      Dst: "[com.google.protobuf.nano.MessageNano].writeTo(com.google.protobuf.nano.CodedOutputByteBufferNano)"
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoderNano:70,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoderNano:71,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.protobuf.ProtobufEncoderNano].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.protobuf.ProtobufEncoderNano"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.protobuf.ProtobufEncoderNano].encode(io.netty.channel.ChannelHandlerContext,com.google.protobuf.nano.MessageNano,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.protobuf.ProtobufEncoderNano:59,1"
      Dst: "[io.netty.handler.codec.protobuf.ProtobufEncoderNano].encode(io.netty.channel.ChannelHandlerContext,com.google.protobuf.nano.MessageNano,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook].remove(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet:java.util.AbstractCollection:java.util.HashSet:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.TreeSet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView].remove(java.lang.Object)"
    - "[java.util.Set].remove(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook:52,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook].add(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook:61,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook].checkFileExist(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].contains(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DeleteFileOnExitHook:71,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOption].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.channel.ChannelOption"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "io.netty.channel.ChannelOption<T>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ConstantPool].valueOf(java.lang.String)"
    functionUses: 36
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOption:48,1"
      Dst: "[io.netty.util.ConstantPool].valueOf(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOption].valueOf(java.lang.Class<?>,java.lang.String)"
    functionSourceFile: "io.netty.channel.ChannelOption"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "io.netty.channel.ChannelOption<T>"
    argCount: 2
    argTypes:
    - "java.lang.Class<?>"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ConstantPool].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 36
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOption:56,1"
      Dst: "[io.netty.util.ConstantPool].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOption].exists(java.lang.String)"
    functionSourceFile: "io.netty.channel.ChannelOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ConstantPool].exists(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOption:63,1"
      Dst: "[io.netty.util.ConstantPool].exists(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOption].newInstance(java.lang.String)"
    functionSourceFile: "io.netty.channel.ChannelOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelOption<T>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ConstantPool].newInstance(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOption:75,1"
      Dst: "[io.netty.util.ConstantPool].newInstance(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOption].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.channel.ChannelOption"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractConstant].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOption:151,1"
      Dst: "[io.netty.util.AbstractConstant].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOption].<init>(java.lang.String)"
    functionSourceFile: "io.netty.channel.ChannelOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ConstantPool].nextId()"
    - "[io.netty.channel.ChannelOption].<init>(int,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOption:156,1"
      Dst: "[io.netty.util.ConstantPool].nextId()"
    - Src: "io.netty.channel.ChannelOption:156,1"
      Dst: "[io.netty.channel.ChannelOption].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOption].<init>(int,java.lang.String,io.netty.channel.ChannelOption$1)"
    functionSourceFile: "io.netty.channel.ChannelOption"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.String"
    - "io.netty.channel.ChannelOption$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOption].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOption:34,1"
      Dst: "[io.netty.channel.ChannelOption].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsPtrRecord].<init>(java.lang.String,int,long,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsPtrRecord"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 49
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "long"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].<init>(java.lang.String,io.netty.handler.codec.dns.DnsRecordType,int,long)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:46,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsRecord].<init>(java.lang.String,io.netty.handler.codec.dns.DnsRecordType,int,long)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:47,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsPtrRecord].hostname()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsPtrRecord"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsPtrRecord].toString()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsPtrRecord"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 72
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].type()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.String].isEmpty()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].name()"
    - "[java.lang.StringBuilder].append(long)"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].timeToLive()"
    - "[io.netty.handler.codec.dns.DnsMessageUtil].appendRecordClass(java.lang.StringBuilder,int)"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].dnsClass()"
    - "[io.netty.handler.codec.dns.DnsRecordType].name()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 21
    ICount: 28
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:59"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:57"
        BranchSideFuncs:
        - "append(char)"
        - "appendRecordClass(java.lang.StringBuilder,int)"
        - "isEmpty()"
        - "name()"
        - "timeToLive()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "dnsClass()"
      - BranchSide: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:56"
        BranchSideFuncs:
        - "<init>(int)"
        - "simpleClassName(java.lang.Object)"
        - "isEmpty()"
        - "type()"
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:57,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:57,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:57,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:57,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:58,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsRecord].type()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:59,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsRecord].name()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:59,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:61,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsRecord].timeToLive()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:61,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:64,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsRecord].dnsClass()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:64,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].appendRecordClass(java.lang.StringBuilder,int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:66,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecordType].name()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsPtrRecord:71,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.DnsMessageUtil].appendRecordClass(java.lang.StringBuilder,int)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsMessageUtil"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "java.lang.StringBuilder"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 4
    ICount: 39
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsMessageUtil:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:71"
        BranchSideFuncs:
        - "append(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.dns.DnsMessageUtil:70"
        BranchSideFuncs:
        - "append(char)"
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:69,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:71,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.dns.DnsMessageUtil:71,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 130
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.FailedChannel:io.netty.channel.epoll.AbstractEpollChannel:io.netty.channel.kqueue.AbstractKQueueChannel:io.netty.channel.local.LocalServerChannel:io.netty.handler.codec.http2.Http2StreamChannelBootstrap].access$000(io.netty.handler.codec.http2.Http2StreamChannelBootstrap)"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].open0(io.netty.channel.ChannelHandlerContext,io.netty.util.concurrent.Promise)"
    - "[java.nio.channels.ClosedChannelException].<init>()"
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].access$000(io.netty.handler.codec.http2.Http2StreamChannelBootstrap)"
    - "[io.netty.channel.Channel].isActive()"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    functionUses: 49
    ICount: 15
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1:127"
        BranchSideFuncs:
        - "open0(io.netty.channel.ChannelHandlerContext,io.netty.util.concurrent.Promise)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1:126"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1:124,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].access$000(io.netty.handler.codec.http2.Http2StreamChannelBootstrap)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1:124,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1:125,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap].open0(io.netty.channel.ChannelHandlerContext,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1:127,1"
      Dst: "[java.nio.channels.ClosedChannelException].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1:127,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.CompositeNameResolver$2].<init>(io.netty.resolver.CompositeNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int)"
    functionSourceFile: "io.netty.resolver.CompositeNameResolver$2"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.resolver.CompositeNameResolver"
    - "io.netty.util.concurrent.Promise"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.CompositeNameResolver$2:95,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.CompositeNameResolver$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.resolver.CompositeNameResolver$2"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 104
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.util.concurrent.FailedFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setSuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.resolver.CompositeNameResolver].access$100(io.netty.resolver.CompositeNameResolver,java.lang.String,io.netty.util.concurrent.Promise,int,java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture:io.netty.channel.SucceededChannelFuture:io.netty.channel.VoidChannelPromise:io.netty.channel.group.VoidChannelGroupFuture:io.netty.util.concurrent.FailedFuture:io.netty.util.concurrent.SucceededFuture].cause()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].getNow()"
    - "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.Future].cause()"
    functionUses: 1
    ICount: 16
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.resolver.CompositeNameResolver$2:98"
      Branch Sides:
      - BranchSide: "io.netty.resolver.CompositeNameResolver$2:101"
        BranchSideFuncs:
        - "setSuccess(java.lang.Object)"
        - "getNow()"
      - BranchSide: "io.netty.resolver.CompositeNameResolver$2:100"
        BranchSideFuncs:
        - "access$100(io.netty.resolver.CompositeNameResolver,java.lang.String,io.netty.util.concurrent.Promise,int,java.lang.Throwable)"
        - "cause()"
    Callsites:
    - Src: "io.netty.resolver.CompositeNameResolver$2:98,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.resolver.CompositeNameResolver$2:99,1"
      Dst: "[io.netty.util.concurrent.Future].getNow()"
    - Src: "io.netty.resolver.CompositeNameResolver$2:99,1"
      Dst: "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - Src: "io.netty.resolver.CompositeNameResolver$2:101,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.resolver.CompositeNameResolver$2:101,1"
      Dst: "[io.netty.resolver.CompositeNameResolver].access$100(io.netty.resolver.CompositeNameResolver,java.lang.String,io.netty.util.concurrent.Promise,int,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.CompositeNameResolver].access$100(io.netty.resolver.CompositeNameResolver,java.lang.String,io.netty.util.concurrent.Promise,int,java.lang.Throwable)"
    functionSourceFile: "io.netty.resolver.CompositeNameResolver"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.resolver.CompositeNameResolver"
    - "java.lang.String"
    - "io.netty.util.concurrent.Promise"
    - "int"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.CompositeNameResolver].doResolveAllRec(java.lang.String,io.netty.util.concurrent.Promise,int,java.lang.Throwable)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.CompositeNameResolver:34,1"
      Dst: "[io.netty.resolver.CompositeNameResolver].doResolveAllRec(java.lang.String,io.netty.util.concurrent.Promise,int,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtilFuzzer].<init>(com.code_intelligence.jazzer.api.FuzzedDataProvider)"
    functionSourceFile: "io.netty.buffer.ByteBufUtilFuzzer"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.code_intelligence.jazzer.api.FuzzedDataProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtilFuzzer].getByteArray()"
    functionSourceFile: "io.netty.buffer.ByteBufUtilFuzzer"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.code_intelligence.jazzer.api.CannedFuzzedDataProvider].consumeInt(int,int)"
    - "[com.code_intelligence.jazzer.api.CannedFuzzedDataProvider].remainingBytes()"
    - "[com.code_intelligence.jazzer.api.CannedFuzzedDataProvider].consumeBytes(int)"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].remainingBytes()"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeInt(int,int)"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeBytes(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:34,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].remainingBytes()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:34,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeInt(int,int)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:35,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtilFuzzer].getCharBuffer()"
    functionSourceFile: "io.netty.buffer.ByteBufUtilFuzzer"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 43
    functionDepth: 1
    returnType: "java.nio.CharBuffer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtilFuzzer].getCharSequence()"
    - "[java.nio.Buffer:java.nio.CharBuffer].allocate(int)"
    - "[java.lang.String].length()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[io.netty.util.AsciiString].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.lang.String:java.lang.StringBuilder:java.nio.CharBuffer].toString()"
    - "[java.lang.CharSequence].length()"
    - "[java.nio.CharBuffer].allocate(int)"
    - "[java.lang.CharSequence].toString()"
    - "[java.nio.CharBuffer].put(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:39,1"
      Dst: "[io.netty.buffer.ByteBufUtilFuzzer].getCharSequence()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:40,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:40,1"
      Dst: "[java.nio.CharBuffer].allocate(int)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:41,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:41,1"
      Dst: "[java.nio.CharBuffer].put(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtilFuzzer].getCharSequence()"
    functionSourceFile: "io.netty.buffer.ByteBufUtilFuzzer"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.code_intelligence.jazzer.api.CannedFuzzedDataProvider].consumeInt(int,int)"
    - "[com.code_intelligence.jazzer.api.CannedFuzzedDataProvider].remainingBytes()"
    - "[com.code_intelligence.jazzer.api.CannedFuzzedDataProvider].consumeString(int)"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].remainingBytes()"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeInt(int,int)"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeString(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:46,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].remainingBytes()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:46,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeInt(int,int)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:47,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeString(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtilFuzzer].validIndex(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.ByteBufUtilFuzzer"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.SlicedByteBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[com.code_intelligence.jazzer.api.CannedFuzzedDataProvider].consumeInt(int,int)"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeInt(int,int)"
    functionUses: 3
    ICount: 10
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtilFuzzer:52"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtilFuzzer:55"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtilFuzzer:54"
        BranchSideFuncs:
        - "consumeInt(int,int)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:51,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:55,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtilFuzzer].validLength(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtilFuzzer"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 65
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtilFuzzer].validIndex(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.SlicedByteBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    functionUses: 2
    ICount: 13
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtilFuzzer:60"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtilFuzzer:64"
        BranchSideFuncs:
        - "capacity()"
      - BranchSide: "io.netty.buffer.ByteBufUtilFuzzer:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:59,1"
      Dst: "[io.netty.buffer.ByteBufUtilFuzzer].validIndex(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:60,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtilFuzzer].test()"
    functionSourceFile: "io.netty.buffer.ByteBufUtilFuzzer"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 117
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.code_intelligence.jazzer.api.CannedFuzzedDataProvider].consumeInt()"
    - "[com.code_intelligence.jazzer.api.CannedFuzzedDataProvider].consumeByte()"
    - "[io.netty.buffer.Unpooled].copiedBuffer(byte[])"
    - "[io.netty.buffer.ByteBufUtilFuzzer].getByteArray()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[java.lang.Math].abs(int)"
    - "[io.netty.buffer.ByteBufUtil].indexOf(io.netty.buffer.ByteBuf,int,int,byte)"
    - "[io.netty.buffer.ByteBufUtil].indexOf(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBufUtil].hexDump(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBufUtil].hashCode(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBufUtilFuzzer].getCharSequence()"
    - "[io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.SlicedByteBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[java.lang.String].length()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    - "[io.netty.buffer.ReadOnlyByteBuf].alloc()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].alloc()"
    - "[io.netty.buffer.DuplicatedByteBuf].alloc()"
    - "[io.netty.buffer.SwappedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].alloc()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.WrappedByteBuf].alloc()"
    - "[io.netty.buffer.SlicedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].alloc()"
    - "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.ByteBufAllocator,java.lang.CharSequence)"
    - "[io.netty.buffer.ByteBufUtil].encodeString(io.netty.buffer.ByteBufAllocator,java.nio.CharBuffer,java.nio.charset.Charset)"
    - "[io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf:java.nio.charset.Charset].forName(java.lang.String)"
    - "[io.netty.buffer.ByteBufUtilFuzzer].getCharBuffer()"
    - "[io.netty.buffer.ByteBufUtilFuzzer].validIndex(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBufUtilFuzzer].validLength(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBufUtil].decodeString(io.netty.buffer.ByteBuf,int,int,java.nio.charset.Charset)"
    - "[java.nio.charset.Charset].forName(java.lang.String)"
    - "[io.netty.buffer.CompositeByteBuf].addComponent(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].addComponent(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].addComponent(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.Unpooled].compositeBuffer()"
    - "[io.netty.buffer.ByteBufUtil].firstIndexOf(io.netty.buffer.AbstractByteBuf,int,int,byte)"
    - "[io.netty.buffer.ByteBufUtil].equals(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBufUtil].compare(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[java.lang.StringBuilder].<init>(java.lang.CharSequence)"
    - "[io.netty.buffer.ByteBufUtil].appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBufUtil].isText(io.netty.buffer.ByteBuf,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBufUtil].isText(io.netty.buffer.ByteBuf,int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBufUtil].prettyHexDump(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    - "[com.code_intelligence.jazzer.api.CannedFuzzedDataProvider].consumeLong()"
    - "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    - "[io.netty.buffer.ByteBufUtil].swapMedium(int)"
    - "[com.code_intelligence.jazzer.api.CannedFuzzedDataProvider].consumeShort()"
    - "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeInt()"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeByte()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[java.lang.CharSequence].length()"
    - "[io.netty.buffer.ByteBuf].alloc()"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeLong()"
    - "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeShort()"
    functionUses: 1
    ICount: 74
    EdgeCount: 124
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtilFuzzer:74"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtilFuzzer:79"
        BranchSideFuncs:
        - "writerIndex()"
        - "length()"
        - "hashCode(io.netty.buffer.ByteBuf)"
        - "getCharSequence()"
        - "indexOf(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
        - "hexDump(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.buffer.ByteBufUtilFuzzer:85"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtilFuzzer:88"
        BranchSideFuncs:
        - "writeUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
      - BranchSide: "io.netty.buffer.ByteBufUtilFuzzer:87"
        BranchSideFuncs:
        - "encodeString(io.netty.buffer.ByteBufAllocator,java.nio.CharBuffer,java.nio.charset.Charset)"
        - "writeUtf8(io.netty.buffer.ByteBufAllocator,java.lang.CharSequence)"
        - "getCharBuffer()"
        - "alloc()"
        - "capacity()"
    - Branch String: "io.netty.buffer.ByteBufUtilFuzzer:90"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtilFuzzer:98"
        BranchSideFuncs:
        - "validIndex(io.netty.buffer.ByteBuf)"
        - "appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf)"
        - "swapLong(long)"
        - "forName(java.lang.String)"
        - "compare(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
        - "prettyHexDump(io.netty.buffer.ByteBuf)"
        - "swapMedium(int)"
        - "isText(io.netty.buffer.ByteBuf,int,int,java.nio.charset.Charset)"
        - "consumeLong()"
        - "validLength(io.netty.buffer.ByteBuf,int)"
        - "swapShort(short)"
        - "isText(io.netty.buffer.ByteBuf,java.nio.charset.Charset)"
        - "<init>(java.lang.CharSequence)"
        - "equals(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
        - "swapInt(int)"
        - "consumeShort()"
        - "consumeInt()"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:69,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeInt()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:71,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeByte()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:72,1"
      Dst: "[io.netty.buffer.ByteBufUtilFuzzer].getByteArray()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:72,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBuffer(byte[])"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:74,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:78,1"
      Dst: "[java.lang.Math].abs(int)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:78,1"
      Dst: "[io.netty.buffer.ByteBufUtil].indexOf(io.netty.buffer.ByteBuf,int,int,byte)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:80,1"
      Dst: "[io.netty.buffer.ByteBufUtil].indexOf(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:81,1"
      Dst: "[io.netty.buffer.ByteBufUtil].hexDump(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:82,1"
      Dst: "[io.netty.buffer.ByteBufUtil].hashCode(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:84,1"
      Dst: "[io.netty.buffer.ByteBufUtilFuzzer].getCharSequence()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:85,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:85,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:86,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:88,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:88,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeUtf8(io.netty.buffer.ByteBufAllocator,java.lang.CharSequence)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:89,1"
      Dst: "[io.netty.buffer.ByteBufUtilFuzzer].getCharBuffer()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:89,1"
      Dst: "[java.nio.charset.Charset].forName(java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:89,1"
      Dst: "[io.netty.buffer.ByteBufUtil].encodeString(io.netty.buffer.ByteBufAllocator,java.nio.CharBuffer,java.nio.charset.Charset)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:92,1"
      Dst: "[io.netty.buffer.ByteBufUtilFuzzer].validIndex(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:93,1"
      Dst: "[io.netty.buffer.ByteBufUtilFuzzer].validLength(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:94,1"
      Dst: "[io.netty.buffer.ByteBufUtil].decodeString(io.netty.buffer.ByteBuf,int,int,java.nio.charset.Charset)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:95,1"
      Dst: "[io.netty.buffer.Unpooled].compositeBuffer()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:95,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponent(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:96,1"
      Dst: "[io.netty.buffer.ByteBufUtil].firstIndexOf(io.netty.buffer.AbstractByteBuf,int,int,byte)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:99,1"
      Dst: "[io.netty.buffer.ByteBufUtil].equals(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:100,1"
      Dst: "[io.netty.buffer.ByteBufUtil].compare(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:101,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.CharSequence)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:101,1"
      Dst: "[io.netty.buffer.ByteBufUtil].appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:104,1"
      Dst: "[io.netty.buffer.ByteBufUtil].isText(io.netty.buffer.ByteBuf,java.nio.charset.Charset)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:105,1"
      Dst: "[io.netty.buffer.ByteBufUtil].isText(io.netty.buffer.ByteBuf,int,int,java.nio.charset.Charset)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:106,1"
      Dst: "[io.netty.buffer.ByteBufUtil].prettyHexDump(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:107,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:108,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeLong()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:108,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:109,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapMedium(int)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:110,1"
      Dst: "[com.code_intelligence.jazzer.api.FuzzedDataProvider].consumeShort()"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:110,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.Unpooled].copiedBuffer(byte[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: 362
    functionLinenumberEnd: 367
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeSet].clone()"
    - "[javax.crypto.MacSpi].clone()"
    - "[java.util.GregorianCalendar].clone()"
    - "[java.util.Hashtable].clone()"
    - "[java.util.Hashtable$Entry].clone()"
    - "[java.util.LinkedList].clone()"
    - "[java.lang.Thread].clone()"
    - "[java.util.IdentityHashMap].clone()"
    - "[java.util.Locale].clone()"
    - "[java.util.ArrayList].clone()"
    - "[java.util.concurrent.CopyOnWriteArrayList].clone()"
    - "[java.lang.Object].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[java.util.ArrayDeque].clone()"
    - "[java.util.jar.Manifest].clone()"
    - "[java.security.Signature].clone()"
    - "[java.util.zip.ZipEntry].clone()"
    - "[java.util.TimeZone].clone()"
    - "[java.util.AbstractMap].clone()"
    - "[java.text.NumberFormat].clone()"
    - "[java.util.EnumSet].clone()"
    - "[java.security.MessageDigest].clone()"
    - "[sun.security.x509.GeneralSubtrees].clone()"
    - "[java.lang.ref.Reference].clone()"
    - "[java.text.SimpleDateFormat].clone()"
    - "[java.util.BitSet].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[sun.util.calendar.CalendarDate].clone()"
    - "[java.text.Collator].clone()"
    - "[jaz.Zer].clone()"
    - "[sun.text.normalizer.UCharacterIterator].clone()"
    - "[java.security.MessageDigestSpi].clone()"
    - "[java.util.Vector].clone()"
    - "[sun.security.x509.NameConstraintsExtension].clone()"
    - "[java.util.jar.Attributes].clone()"
    - "[java.text.DateFormat].clone()"
    - "[java.util.HashMap].clone()"
    - "[java.text.BreakIterator].clone()"
    - "[java.text.MessageFormat].clone()"
    - "[javax.crypto.Mac].clone()"
    - "[java.util.Properties].clone()"
    - "[java.lang.invoke.MemberName].clone()"
    - "[java.util.Date].clone()"
    - "[java.security.SignatureSpi].clone()"
    - "[java.util.Calendar].clone()"
    - "[sun.security.util.BitArray].clone()"
    - "[java.text.Format].clone()"
    - "[java.util.TreeMap].clone()"
    - "[java.text.DecimalFormatSymbols].clone()"
    - "[java.util.HashSet].clone()"
    - "[java.net.HttpCookie].clone()"
    - "[java.text.DateFormatSymbols].clone()"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    functionUses: 2
    ICount: 9
    EdgeCount: 54
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:363"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:366"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:365"
        BranchSideFuncs:
        - "wrappedBuffer(byte[])"
        - "clone()"
    Callsites:
    - Src: "io.netty.buffer.Unpooled:366,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "io.netty.buffer.Unpooled:366,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].indexOf(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 233
    functionLinenumberEnd: 316
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.AbstractByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.SwappedByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.WrappedByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.EmptyByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].indexOf(int,int,byte)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].indexOf(int,int,byte)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBufUtil].maxSuf(io.netty.buffer.ByteBuf,int,int,boolean)"
    - "[java.lang.Math].max(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.ByteBufUtil].equals(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].indexOf(int,int,byte)"
    functionUses: 2
    ICount: 133
    EdgeCount: 259
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:234"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:234"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:238"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:237"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:238"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:242"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:241"
        BranchSideFuncs:
        - "readableBytes()"
    - Branch String: "io.netty.buffer.ByteBufUtil:244"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:250"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:249"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:250"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:256"
        BranchSideFuncs:
        - "writerIndex()"
        - "indexOf(int,int,byte)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:255"
        BranchSideFuncs:
        - "min(int,int)"
        - "equals(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf,int,int)"
        - "readerIndex()"
        - "maxSuf(io.netty.buffer.ByteBuf,int,int,boolean)"
    - Branch String: "io.netty.buffer.ByteBufUtil:266"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:292"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:291"
        BranchSideFuncs:
        - "max(int,int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:268"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:270"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:273"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:272"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:270"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:273"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:272"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:273"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:276"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:275"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:276"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:287"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:286"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:278"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:281"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:280"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:278"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:281"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:280"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:281"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:284"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:283"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:293"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:295"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:298"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:297"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:295"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:298"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:297"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:298"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:301"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:300"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:301"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:311"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:310"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:303"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:306"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:305"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:303"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:306"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:305"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:306"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:309"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:308"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:238,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.ByteBufUtil:251,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.ByteBufUtil:251,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.buffer.ByteBufUtil:252,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    - Src: "io.netty.buffer.ByteBufUtil:251,1"
      Dst: "[io.netty.buffer.ByteBuf].indexOf(int,int,byte)"
    - Src: "io.netty.buffer.ByteBufUtil:259,1"
      Dst: "[io.netty.buffer.ByteBufUtil].maxSuf(io.netty.buffer.ByteBuf,int,int,boolean)"
    - Src: "io.netty.buffer.ByteBufUtil:261,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:264,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:266,1"
      Dst: "[io.netty.buffer.ByteBufUtil].equals(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 45
    CyclomaticComplexity: 15
  - functionName: "[io.netty.buffer.ByteBufUtil].maxSuf(io.netty.buffer.ByteBuf,int,int,boolean)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 318
    functionLinenumberEnd: 347
    functionDepth: 0
    returnType: "long"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 2
    ICount: 53
    EdgeCount: 42
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:325"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:346"
        BranchSideFuncs:
        - "getByte(int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:345"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:328"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:328"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:326"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:325"
        BranchSideFuncs:
        - "getByte(int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:328"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:326"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:325"
        BranchSideFuncs:
        - "getByte(int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:329"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:333"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:341"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:340"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:334"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:337"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:336"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:326,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 8
  - functionName: "[io.netty.buffer.ByteBufUtil].hashCode(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 226
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.SwappedByteBuf].order()"
    - "[io.netty.buffer.EmptyByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.SlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].order()"
    - "[io.netty.buffer.ByteBuf].getInt(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 2
    ICount: 43
    EdgeCount: 90
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:205"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:211"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:210"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:206"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:205"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:211"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:216"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:217"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:220"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:221"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:225"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:199,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.ByteBufUtil:204,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.ByteBufUtil:205,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    - Src: "io.netty.buffer.ByteBufUtil:207,1"
      Dst: "[io.netty.buffer.ByteBuf].getInt(int)"
    - Src: "io.netty.buffer.ByteBufUtil:212,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    - Src: "io.netty.buffer.ByteBufUtil:218,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 6
  - functionName: "[io.netty.buffer.ByteBufUtil].decodeString(io.netty.buffer.ByteBuf,int,int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1257
    functionLinenumberEnd: 1277
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.EmptyByteBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBufUtil].threadLocalTempArray(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[java.nio.charset.Charset].equals(java.lang.Object)"
    - "[java.lang.String].<init>(byte[],int,int,int)"
    - "[java.lang.String].<init>(byte[],int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    functionUses: 2
    ICount: 25
    EdgeCount: 81
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:1258"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1264"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1263"
        BranchSideFuncs:
        - "hasArray()"
    - Branch String: "io.netty.buffer.ByteBufUtil:1264"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1268"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1267"
        BranchSideFuncs:
        - "getBytes(int,byte[],int,int)"
        - "threadLocalTempArray(int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1272"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1275"
        BranchSideFuncs:
        - "<init>(byte[],int,int,java.nio.charset.Charset)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1264,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.buffer.ByteBufUtil:1265,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.ByteBufUtil:1266,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.buffer.ByteBufUtil:1268,1"
      Dst: "[io.netty.buffer.ByteBufUtil].threadLocalTempArray(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1270,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1272,1"
      Dst: "[java.nio.charset.Charset].equals(java.lang.Object)"
    - Src: "io.netty.buffer.ByteBufUtil:1274,1"
      Dst: "[java.lang.String].<init>(byte[],int,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1276,1"
      Dst: "[java.lang.String].<init>(byte[],int,int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.CompositeByteBuf].addComponent(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionDepth: 6
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:165,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].firstIndexOf(io.netty.buffer.AbstractByteBuf,int,int,byte)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 578
    functionLinenumberEnd: 616
    functionDepth: 2
    returnType: "int"
    argCount: 4
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.util.internal.PlatformDependent].isUnaligned()"
    - "[io.netty.buffer.ByteBufUtil].linearFirstIndexOf(io.netty.buffer.AbstractByteBuf,int,int,byte)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.ByteBufUtil].unrolledFirstIndexOf(io.netty.buffer.AbstractByteBuf,int,int,byte)"
    - "[java.nio.ByteOrder].nativeOrder()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.ByteBufUtil$SWARByteSearch].access$200(byte)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getLong(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getLong(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getLong(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.ByteBufUtil$SWARByteSearch].access$300(long,long,boolean)"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].order()"
    - "[io.netty.buffer.AbstractByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.AbstractByteBuf]._getLong(int)"
    functionUses: 2
    ICount: 64
    EdgeCount: 74
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:580"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:580"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:583"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:582"
        BranchSideFuncs:
        - "checkIndex(int,int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:585"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:588"
        BranchSideFuncs:
        - "linearFirstIndexOf(io.netty.buffer.AbstractByteBuf,int,int,byte)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:587"
        BranchSideFuncs:
        - "isUnaligned()"
        - "<init>()"
    - Branch String: "io.netty.buffer.ByteBufUtil:588"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:589"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:588"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:588"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:589"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:588"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:591"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:601"
        BranchSideFuncs:
        - "unrolledFirstIndexOf(io.netty.buffer.AbstractByteBuf,int,int,byte)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:600"
        BranchSideFuncs:
        - "order()"
        - "nativeOrder()"
    - Branch String: "io.netty.buffer.ByteBufUtil:593"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:596"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:595"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:597"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:601"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:600"
        BranchSideFuncs:
        - "order()"
        - "nativeOrder()"
    - Branch String: "io.netty.buffer.ByteBufUtil:603"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:601"
        BranchSideFuncs:
        - "order()"
      - BranchSide: "io.netty.buffer.ByteBufUtil:600"
        BranchSideFuncs:
        - "order()"
        - "nativeOrder()"
    - Branch String: "io.netty.buffer.ByteBufUtil:604"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:603"
        BranchSideFuncs:
        - "access$200(byte)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:602"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.ByteBufUtil:606"
      Branch Sides: []
    - Branch String: "io.netty.buffer.ByteBufUtil:608"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:608"
        BranchSideFuncs:
        - "access$300(long,long,boolean)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:607"
        BranchSideFuncs:
        - "_getLongLE(int)"
        - "_getLong(int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:610"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:579,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:580,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.buffer.ByteBufUtil:584,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:585,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isUnaligned()"
    - Src: "io.netty.buffer.ByteBufUtil:586,1"
      Dst: "[io.netty.buffer.ByteBufUtil].linearFirstIndexOf(io.netty.buffer.AbstractByteBuf,int,int,byte)"
    - Src: "io.netty.buffer.ByteBufUtil:588,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.ByteBufUtil:592,1"
      Dst: "[io.netty.buffer.ByteBufUtil].unrolledFirstIndexOf(io.netty.buffer.AbstractByteBuf,int,int,byte)"
    - Src: "io.netty.buffer.ByteBufUtil:602,1"
      Dst: "[java.nio.ByteOrder].nativeOrder()"
    - Src: "io.netty.buffer.ByteBufUtil:603,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    - Src: "io.netty.buffer.ByteBufUtil:605,1"
      Dst: "[io.netty.buffer.ByteBufUtil$SWARByteSearch].access$200(byte)"
    - Src: "io.netty.buffer.ByteBufUtil:608,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getLongLE(int)"
    - Src: "io.netty.buffer.ByteBufUtil:608,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getLong(int)"
    - Src: "io.netty.buffer.ByteBufUtil:609,1"
      Dst: "[io.netty.buffer.ByteBufUtil$SWARByteSearch].access$300(long,long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 28
    CyclomaticComplexity: 8
  - functionName: "[io.netty.buffer.ByteBufUtil].linearFirstIndexOf(io.netty.buffer.AbstractByteBuf,int,int,byte)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 618
    functionLinenumberEnd: 625
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf]._getByte(int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:619"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:null"
        BranchSideFuncs:
        - "_getByte(int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:620"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:619"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:618"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:620,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].unrolledFirstIndexOf(io.netty.buffer.AbstractByteBuf,int,int,byte)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 530
    functionLinenumberEnd: 572
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "io.netty.buffer.AbstractByteBuf"
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf]._getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf]._getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf]._getByte(int)"
    functionUses: 1
    ICount: 78
    EdgeCount: 141
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:531"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:532"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:531"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:531"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:531"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:530"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.buffer.ByteBufUtil:531"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:532"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:531"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:532"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:535"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:534"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:535"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:538"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:537"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:538"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:541"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:540"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:541"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:544"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:543"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:544"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:547"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:546"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:547"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:550"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:549"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:550"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:553"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:552"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:553"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:556"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:555"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:556"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:559"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:558"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:559"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:562"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:561"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:562"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:565"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:564"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:565"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:568"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:567"
        BranchSideFuncs:
        - "_getByte(int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:568"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:531,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.buffer.ByteBufUtil:532,1"
      Dst: "[io.netty.buffer.AbstractByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 31
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.ByteBufUtil].appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1406
    functionLinenumberEnd: 1409
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 3
    ICount: 6
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1407,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.ByteBufUtil:1407,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.ByteBufUtil:1407,1"
      Dst: "[io.netty.buffer.ByteBufUtil].appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1415
    functionLinenumberEnd: 1418
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil$HexUtil].access$500(java.lang.StringBuilder,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1416,1"
      Dst: "[io.netty.buffer.ByteBufUtil$HexUtil].access$500(java.lang.StringBuilder,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$HexUtil].access$500(java.lang.StringBuilder,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$HexUtil"
    linkageType: ""
    functionLinenumber: 1419
    functionLinenumberEnd: 1421
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil$HexUtil].appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1420,1"
      Dst: "[io.netty.buffer.ByteBufUtil$HexUtil].appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$HexUtil].appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$HexUtil"
    linkageType: ""
    functionLinenumber: 1534
    functionLinenumberEnd: 1596
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.StringBuilder"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBufUtil$HexUtil].appendHexDumpRowPrefix(java.lang.StringBuilder,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    functionUses: 2
    ICount: 103
    EdgeCount: 102
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil$HexUtil:1535"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1540"
        BranchSideFuncs:
        - "capacity()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1539"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil$HexUtil:1540"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1543"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1542"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil$HexUtil:1552"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1573"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1572"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil$HexUtil:1560"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1562"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil$HexUtil:1566"
      Branch Sides: []
    - Branch String: "io.netty.buffer.ByteBufUtil$HexUtil:1573"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1593"
        BranchSideFuncs:
        - "appendHexDumpRowPrefix(java.lang.StringBuilder,int,int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1592"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
    - Branch String: "io.netty.buffer.ByteBufUtil$HexUtil:1579"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1581"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil$HexUtil:1586"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1588"
        BranchSideFuncs:
        - "append(char)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1535,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1535,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1536,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1536,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1536,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1538,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1538,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1538,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1556,1"
      Dst: "[io.netty.buffer.ByteBufUtil$HexUtil].appendHexDumpRowPrefix(java.lang.StringBuilder,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1561,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 22
    CyclomaticComplexity: 7
  - functionName: "[io.netty.buffer.ByteBufUtil$HexUtil].appendHexDumpRowPrefix(java.lang.StringBuilder,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$HexUtil"
    linkageType: ""
    functionLinenumber: 1597
    functionLinenumberEnd: 1607
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Long].toHexString(long)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 2
    ICount: 22
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil$HexUtil:1598"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1601"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1600"
        BranchSideFuncs:
        - "append(char)"
        - "toHexString(long)"
        - "append(java.lang.String)"
        - "length()"
        - "setCharAt(int,char)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1599,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1602,1"
      Dst: "[java.lang.Long].toHexString(long)"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1603,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1603,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1604,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].isText(io.netty.buffer.ByteBuf,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1684
    functionLinenumberEnd: 1686
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].isText(io.netty.buffer.ByteBuf,int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 1
    ICount: 6
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1685,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.ByteBufUtil:1685,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.ByteBufUtil:1685,1"
      Dst: "[io.netty.buffer.ByteBufUtil].isText(io.netty.buffer.ByteBuf,int,int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].isText(io.netty.buffer.ByteBuf,int,int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1699
    functionLinenumberEnd: 1727
    functionDepth: 2
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.nio.charset.Charset].equals(java.lang.Object)"
    - "[io.netty.buffer.ByteBufUtil].isUtf8(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBufUtil].isAscii(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.util.CharsetUtil].decoder(java.nio.charset.Charset,java.nio.charset.CodingErrorAction,java.nio.charset.CodingErrorAction)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].nioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].alloc()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].alloc()"
    - "[io.netty.buffer.DuplicatedByteBuf].alloc()"
    - "[io.netty.buffer.SwappedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].alloc()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].alloc()"
    - "[io.netty.buffer.WrappedByteBuf].alloc()"
    - "[io.netty.buffer.SlicedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].alloc()"
    - "[io.netty.buffer.PooledByteBuf].alloc()"
    - "[io.netty.buffer.FixedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.EmptyByteBuf].alloc()"
    - "[io.netty.buffer.CompositeByteBuf].alloc()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - "[java.nio.charset.CharsetDecoder].decode(java.nio.ByteBuffer)"
    - "[io.netty.buffer.ByteBuf].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    functionUses: 2
    ICount: 55
    EdgeCount: 138
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:1703"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1704"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1703"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
        - "<init>()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1703"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1704"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1703"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
        - "<init>()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1703"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1706"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1705"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1706"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1708"
        BranchSideFuncs:
        - "isUtf8(io.netty.buffer.ByteBuf,int,int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1707"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1708"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1711"
        BranchSideFuncs:
        - "isAscii(io.netty.buffer.ByteBuf,int,int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1710"
        BranchSideFuncs:
        - "decoder(java.nio.charset.Charset,java.nio.charset.CodingErrorAction,java.nio.charset.CodingErrorAction)"
        - "nioBufferCount()"
    - Branch String: "io.netty.buffer.ByteBufUtil:1713"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1716"
        BranchSideFuncs:
        - "nioBuffer(int,int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1715"
        BranchSideFuncs:
        - "readerIndex()"
        - "internalNioBuffer(int,int)"
        - "heapBuffer(int)"
        - "alloc()"
        - "writeBytes(io.netty.buffer.ByteBuf,int,int)"
        - "release()"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1700,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil:1702,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.ByteBufUtil:1702,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.ByteBufUtil:1704,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.ByteBufUtil:1704,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil:1704,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1704,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.ByteBufUtil:1704,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil:1706,1"
      Dst: "[java.nio.charset.Charset].equals(java.lang.Object)"
    - Src: "io.netty.buffer.ByteBufUtil:1707,1"
      Dst: "[io.netty.buffer.ByteBufUtil].isUtf8(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1709,1"
      Dst: "[io.netty.buffer.ByteBufUtil].isAscii(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1711,1"
      Dst: "[io.netty.util.CharsetUtil].decoder(java.nio.charset.Charset,java.nio.charset.CodingErrorAction,java.nio.charset.CodingErrorAction)"
    - Src: "io.netty.buffer.ByteBufUtil:1713,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.buffer.ByteBufUtil:1714,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1714,1"
      Dst: "[java.nio.charset.CharsetDecoder].decode(java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.ByteBufUtil:1716,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    - Src: "io.netty.buffer.ByteBufUtil:1716,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1718,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1719,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1721,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].isUtf8(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1796
    functionLinenumberEnd: 1872
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 1
    ICount: 116
    EdgeCount: 147
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:1798"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1871"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1870"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1801"
      Branch Sides: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1805"
      Branch Sides: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1811"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1814"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1813"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1815"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1818"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1870"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1869"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1821"
      Branch Sides: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1830"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1833"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1832"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1835"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1836"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1835"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1835"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1838"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1837"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1838"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1841"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1840"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1838"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1841"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1840"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1841"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1870"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1869"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1841"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1870"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1869"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1844"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1867"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1852"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1855"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil:1854"
        BranchSideFuncs:
        - "getByte(int)"
    - Branch String: "io.netty.buffer.ByteBufUtil:1858"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1859"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1858"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1859"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1858"
      Branch Sides: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1862"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1864"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1862"
      Branch Sides: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1862"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1864"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1862"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1869"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil:1862"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1869"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1799,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 39
    CyclomaticComplexity: 14
  - functionName: "[io.netty.buffer.ByteBufUtil].isAscii(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1749
    functionLinenumberEnd: 1751
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.DuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ReadOnlyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionUses: 1
    ICount: 11
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:1750"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1749"
        BranchSideFuncs:
        - "forEachByte(int,int,io.netty.util.ByteProcessor)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1750,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.CharsetUtil].decoder(java.nio.charset.Charset,java.nio.charset.CodingErrorAction,java.nio.charset.CodingErrorAction)"
    functionSourceFile: "io.netty.util.CharsetUtil"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 150
    functionDepth: 1
    returnType: "java.nio.charset.CharsetDecoder"
    argCount: 3
    argTypes:
    - "java.nio.charset.Charset"
    - "java.nio.charset.CodingErrorAction"
    - "java.nio.charset.CodingErrorAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[sun.nio.cs.UTF_8].newDecoder()"
    - "[java.nio.charset.Charset].newDecoder()"
    - "[java.nio.charset.CharsetDecoder].onMalformedInput(java.nio.charset.CodingErrorAction)"
    - "[java.nio.charset.CharsetDecoder].onUnmappableCharacter(java.nio.charset.CodingErrorAction)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.CharsetUtil:146,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.CharsetUtil:147,1"
      Dst: "[java.nio.charset.Charset].newDecoder()"
    - Src: "io.netty.util.CharsetUtil:148,1"
      Dst: "[java.nio.charset.CharsetDecoder].onMalformedInput(java.nio.charset.CodingErrorAction)"
    - Src: "io.netty.util.CharsetUtil:148,1"
      Dst: "[java.nio.charset.CharsetDecoder].onUnmappableCharacter(java.nio.charset.CodingErrorAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].prettyHexDump(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1390
    functionLinenumberEnd: 1392
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].prettyHexDump(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 1
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1391,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.ByteBufUtil:1391,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.ByteBufUtil:1391,1"
      Dst: "[io.netty.buffer.ByteBufUtil].prettyHexDump(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].prettyHexDump(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1398
    functionLinenumberEnd: 1400
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil$HexUtil].access$400(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1399,1"
      Dst: "[io.netty.buffer.ByteBufUtil$HexUtil].access$400(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$HexUtil].access$400(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$HexUtil"
    linkageType: ""
    functionLinenumber: 1419
    functionLinenumberEnd: 1421
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil$HexUtil].prettyHexDump(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1420,1"
      Dst: "[io.netty.buffer.ByteBufUtil$HexUtil].prettyHexDump(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$HexUtil].prettyHexDump(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$HexUtil"
    linkageType: ""
    functionLinenumber: 1523
    functionLinenumberEnd: 1531
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[io.netty.buffer.ByteBufUtil$HexUtil].appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf,int,int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 19
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil$HexUtil:1524"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1527"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1526"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil$HexUtil:1527"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1527"
        BranchSideFuncs:
        - "<init>(int)"
        - "appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf,int,int)"
        - "toString()"
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1526"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1528,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1529,1"
      Dst: "[io.netty.buffer.ByteBufUtil$HexUtil].appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1530,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtilFuzzer].fuzzerTestOneInput(com.code_intelligence.jazzer.api.FuzzedDataProvider)"
    functionSourceFile: "io.netty.buffer.ByteBufUtilFuzzer"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 122
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.code_intelligence.jazzer.api.FuzzedDataProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtilFuzzer].<init>(com.code_intelligence.jazzer.api.FuzzedDataProvider)"
    - "[io.netty.buffer.ByteBufUtilFuzzer].test()"
    functionUses: 0
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:119,1"
      Dst: "[io.netty.buffer.ByteBufUtilFuzzer].<init>(com.code_intelligence.jazzer.api.FuzzedDataProvider)"
    - Src: "io.netty.buffer.ByteBufUtilFuzzer:120,1"
      Dst: "[io.netty.buffer.ByteBufUtilFuzzer].test()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].<init>(io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>(long)"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:117,1"
      Dst: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>(long)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:117,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.multipart.HttpDataFactory"
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:133,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].<init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.multipart.HttpDataFactory"
    - "io.netty.handler.codec.http.HttpRequest"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.TreeMap].<init>(java.util.Comparator)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].offer(io.netty.handler.codec.http.HttpContent)"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].parseBody()"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].destroy()"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:155"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:150,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:74,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:79,1"
      Dst: "[java.util.TreeMap].<init>(java.util.Comparator)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:151,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:158,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].offer(io.netty.handler.codec.http.HttpContent)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:160,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].parseBody()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:163,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].destroy()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:164,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:173"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:170,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:170,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:170,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:170,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:170,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].isMultipart()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:182,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].setDiscardThreshold(int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:193,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].getDiscardThreshold()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].getBodyHttpDatas()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:218"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:221"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:216,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:219,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].getBodyHttpDatas(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.util.List<InterfaceHttpData>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:239"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:242"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:237,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:240,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:242,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].getBodyHttpData(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:261"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:264"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:263"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:265"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:268"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:267"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:259,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:262,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$NotEnoughDataDecoderException].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:264,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:266,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].offer(io.netty.handler.codec.http.HttpContent)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpContent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].alloc()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].parseBody()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    - "[io.netty.buffer.ByteBuf].discardReadBytes()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:284"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:288"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:287"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:289"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:296"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:300"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:313"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:312"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:300"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:313"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:312"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:301"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:306"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:282,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:288,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:295,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:295,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:295,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:295,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:299,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].parseBody()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:300,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:301,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:303,1"
      Dst: "[io.netty.buffer.ByteBuf].discardReadBytes()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:309,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].parseBody()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].parseBodyAttributes()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:374"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:375"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:374"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:374"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:380"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:379"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:375"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:378"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:377"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:380,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].parseBodyAttributes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].parseBodyAttributes()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].parseBodyAttributesStandard()"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].decodeAttribute(java.lang.String,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.HttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String)"
    - "[java.lang.String].isEmpty()"
    - "[io.netty.handler.codec.http.multipart.Attribute].setValue(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].addHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    - "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].setFinalBuffer(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize].setReadPosition(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpData].isCompleted()"
    - "[io.netty.handler.codec.http.multipart.HttpData].addContent(io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 197
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:526"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:529"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:528"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:529"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:533"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:532"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:538"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:541"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:540"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:543"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:620"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:619"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:548"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:548"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:619"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:618"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:564"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:569"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:568"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:575"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:581"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:582"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:599"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:598"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:585"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:595"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:594"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:599"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:619"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:618"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:603"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:619"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:618"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:620"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:630"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:629"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:620"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:630"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:629"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:623"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:625"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:624"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:625"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:628"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:627"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:630"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:636"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:635"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:630"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:636"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:635"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:630"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:636"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:635"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:529,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:530,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].parseBodyAttributesStandard()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:533,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:534,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:546,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:551,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:551,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].decodeAttribute(java.lang.String,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:553,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:564,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:566,1"
      Dst: "[io.netty.handler.codec.http.multipart.Attribute].setValue(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:567,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].addHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:578,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:578,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].setFinalBuffer(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:588,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$SeekAheadOptimize].setReadPosition(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:596,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:625,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].isCompleted()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:632,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].addContent(io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:636,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:644,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 44
    CyclomaticComplexity: 17
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].parseBodyAttributesStandard()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].decodeAttribute(java.lang.String,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.HttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String)"
    - "[java.lang.String].isEmpty()"
    - "[io.netty.handler.codec.http.multipart.Attribute].setValue(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].addHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    - "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].setFinalBuffer(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.HttpData].isCompleted()"
    - "[io.netty.handler.codec.http.multipart.HttpData].addContent(io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 182
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:412"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:417"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:485"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:484"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:417"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:485"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:484"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:422"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:422"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:484"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:483"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:438"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:443"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:442"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:449"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:455"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:456"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:459"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:467"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:466"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:472"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:484"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:483"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:485"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:495"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:494"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:485"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:495"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:494"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:488"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:490"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:489"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:490"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:493"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:492"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:495"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:501"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:500"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:495"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:501"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:500"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:495"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:501"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:500"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:408,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:417,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:418,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:420,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:425,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:425,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].decodeAttribute(java.lang.String,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:427,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:438,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:440,1"
      Dst: "[io.netty.handler.codec.http.multipart.Attribute].setValue(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:441,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].addHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:452,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:452,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].setFinalBuffer(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:467,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:490,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].isCompleted()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:497,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].addContent(io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:501,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:509,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 40
    CyclomaticComplexity: 17
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].decodeAttribute(java.lang.String,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.QueryStringDecoder].decodeComponent(java.lang.String,java.nio.charset.Charset)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:669,1"
      Dst: "[io.netty.handler.codec.http.QueryStringDecoder].decodeComponent(java.lang.String,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:671,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:671,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:671,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:671,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:671,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException:338,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].addHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:387"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:390"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:389"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:391"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:390,1"
      Dst: "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:390,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:392,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:393,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:395,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].setFinalBuffer(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpData].addContent(io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.handler.codec.http.multipart.HttpData].getByteBuf()"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].decodeAttribute(io.netty.buffer.ByteBuf,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.HttpData].setContent(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].addHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:655"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:658"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:657"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:653,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].addContent(io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:654,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].getByteBuf()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:654,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].decodeAttribute(io.netty.buffer.ByteBuf,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:656,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].setContent(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:658,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].addHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].decodeAttribute(io.netty.buffer.ByteBuf,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlEncodedDetector].<init>(io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$1)"
    - "[io.netty.buffer.ByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].alloc()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder].access$100(io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:677"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:681"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:680"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:684"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:694"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:693"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:685"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:688"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:687"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:676,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlEncodedDetector].<init>(io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$1)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:676,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:681,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:681,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:681,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:682,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:684,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder].access$100(io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlDecoder)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:689,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:691,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:691,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:691,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:691,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$ErrorDataDecoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlEncodedDetector].<init>(io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$1)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlEncodedDetector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlEncodedDetector].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlEncodedDetector:741,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlEncodedDetector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlEncodedDetector].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlEncodedDetector"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlEncodedDetector:741,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].hasNext()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    - "[java.util.List].size()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$EndOfDataDecoderException].<init>()"
    - "[java.util.List].isEmpty()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:330"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:335"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:332"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:336"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:335"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:336"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:335"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:336"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:335"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:328,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:332,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:333,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$EndOfDataDecoderException].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:336,1"
      Dst: "[java.util.List].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].next()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].hasNext()"
    - "[java.util.List].get(int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:355"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:358"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:357"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:353,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:355,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].hasNext()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:356,1"
      Dst: "[java.util.List].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].currentPartialHttpData()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].destroy()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].cleanFiles()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:706"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:713"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:712"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:708"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:711"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:710"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:715"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:719"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:718"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:715"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:719"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:718"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:704,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].cleanFiles()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:706,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:706,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:706,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:708,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:709,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].cleanFiles()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    - "[io.netty.handler.codec.http.multipart.HttpDataFactory].cleanRequestHttpData(io.netty.handler.codec.http.HttpRequest)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:726,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:728,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpDataFactory].cleanRequestHttpData(io.netty.handler.codec.http.HttpRequest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].removeHttpDataFromClean(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    - "[io.netty.handler.codec.http.multipart.HttpDataFactory].removeHttpDataFromClean(io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:736,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder].checkDestroyed()"
    - Src: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder:738,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpDataFactory].removeHttpDataFromClean(io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer$1].<init>()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer$1"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer$1:67,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer$1].initialValue()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer$1"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "java.nio.ByteBuffer[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheEncoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder:25,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder].encodeHeader(io.netty.buffer.ByteBuf,io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].magic()"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].opcode()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].keyLength()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extrasLength()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].dataType()"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].status()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].totalBodyLength()"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].opaque()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].cas()"
    - "[io.netty.buffer.SwappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.CompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeLong(long)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeLong(long)"
    - "[io.netty.buffer.AbstractByteBuf].writeLong(long)"
    - "[io.netty.buffer.WrappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.EmptyByteBuf].writeLong(long)"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].magic()"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].opcode()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].keyLength()"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].extrasLength()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].dataType()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse].status()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].totalBodyLength()"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].opaque()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].cas()"
    - "[io.netty.buffer.ByteBuf].writeLong(long)"
    functionUses: 1
    ICount: 28
    EdgeCount: 95
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder:30,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].magic()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder:30,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder:31,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].opcode()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder:32,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].keyLength()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder:32,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder:33,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].extrasLength()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder:34,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].dataType()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder:35,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse].status()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder:36,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].totalBodyLength()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder:36,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder:37,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].opaque()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder:38,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].cas()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder:38,1"
      Dst: "[io.netty.buffer.ByteBuf].writeLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder].encodeHeader(io.netty.buffer.ByteBuf,io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder].encodeHeader(io.netty.buffer.ByteBuf,io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder:24,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseEncoder].encodeHeader(io.netty.buffer.ByteBuf,io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry].remove()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry"
    linkageType: ""
    functionLinenumber: 289
    functionLinenumberEnd: 295
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$100(io.netty.handler.codec.http2.DefaultHttp2Headers)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$102(io.netty.handler.codec.http2.DefaultHttp2Headers,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].after()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].remove()"
    functionUses: 3
    ICount: 11
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:290"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:293"
        BranchSideFuncs:
        - "after()"
        - "access$102(io.netty.handler.codec.http2.DefaultHttp2Headers,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
        - "access$100(io.netty.handler.codec.http2.DefaultHttp2Headers)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:292"
        BranchSideFuncs:
        - "remove()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:290,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$100(io.netty.handler.codec.http2.DefaultHttp2Headers)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:291,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].after()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:291,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers].access$102(io.netty.handler.codec.http2.DefaultHttp2Headers,io.netty.handler.codec.DefaultHeaders$HeaderEntry)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Headers$Http2HeaderEntry:293,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].after()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    linkageType: ""
    functionLinenumber: 1391
    functionLinenumberEnd: 1393
    functionDepth: 0
    returnType: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.UncheckedBooleanSupplier$1].<init>()"
    functionSourceFile: "io.netty.util.UncheckedBooleanSupplier$1"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.UncheckedBooleanSupplier$1:32,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.UncheckedBooleanSupplier$1].get()"
    functionSourceFile: "io.netty.util.UncheckedBooleanSupplier$1"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel$1].<init>(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.oio.OioSocketChannel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel$1:175,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel$1"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel].access$000(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelPromise)"
    functionUses: 49
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel$1:178,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].access$000(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].access$000(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.oio.OioSocketChannel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutput0(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:46,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutput0(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutput0(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 193
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutput0()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:187,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutput0()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:188,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:190,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutput0()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].shutdownOutput()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:195,1"
      Dst: "[java.net.Socket].shutdownOutput()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolArena$SizeClass].values()"
    functionSourceFile: "io.netty.buffer.PoolArena$SizeClass"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "io.netty.buffer.PoolArena$SizeClass[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolArena$SizeClass:36,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolArena$SizeClass].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.buffer.PoolArena$SizeClass"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.PoolArena$SizeClass"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolArena$SizeClass:36,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolArena$SizeClass].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.buffer.PoolArena$SizeClass"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolArena$SizeClass:36,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel$NioSctpChannelConfig].<init>(io.netty.channel.sctp.nio.NioSctpChannel,io.netty.channel.sctp.nio.NioSctpChannel,com.sun.nio.sctp.SctpChannel)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel$NioSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 391
    functionLinenumberEnd: 395
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.sctp.nio.NioSctpChannel"
    - "io.netty.channel.sctp.nio.NioSctpChannel"
    - "com.sun.nio.sctp.SctpChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].<init>(io.netty.channel.sctp.SctpChannel,com.sun.nio.sctp.SctpChannel)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel$NioSctpChannelConfig:393,1"
      Dst: "[io.netty.channel.sctp.DefaultSctpChannelConfig].<init>(io.netty.channel.sctp.SctpChannel,com.sun.nio.sctp.SctpChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel$NioSctpChannelConfig].autoReadCleared()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel$NioSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 397
    functionLinenumberEnd: 400
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpChannel].access$100(io.netty.channel.sctp.nio.NioSctpChannel)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel$NioSctpChannelConfig:398,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].access$100(io.netty.channel.sctp.nio.NioSctpChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].access$100(io.netty.channel.sctp.nio.NioSctpChannel)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.sctp.nio.NioSctpChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].clearReadPending()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:62,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].clearReadPending()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel$NioSctpChannelConfig].<init>(io.netty.channel.sctp.nio.NioSctpChannel,io.netty.channel.sctp.nio.NioSctpChannel,com.sun.nio.sctp.SctpChannel,io.netty.channel.sctp.nio.NioSctpChannel$1)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel$NioSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 390
    functionLinenumberEnd: 392
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.sctp.nio.NioSctpChannel"
    - "io.netty.channel.sctp.nio.NioSctpChannel"
    - "com.sun.nio.sctp.SctpChannel"
    - "io.netty.channel.sctp.nio.NioSctpChannel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpChannel$NioSctpChannelConfig].<init>(io.netty.channel.sctp.nio.NioSctpChannel,io.netty.channel.sctp.nio.NioSctpChannel,com.sun.nio.sctp.SctpChannel)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel$NioSctpChannelConfig:391,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel$NioSctpChannelConfig].<init>(io.netty.channel.sctp.nio.NioSctpChannel,io.netty.channel.sctp.nio.NioSctpChannel,com.sun.nio.sctp.SctpChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.CharsetUtil].values()"
    functionSourceFile: "io.netty.util.CharsetUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.nio.charset.Charset[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.CharsetUtil].getEncoder(java.nio.charset.Charset)"
    functionSourceFile: "io.netty.util.CharsetUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "java.nio.charset.CharsetEncoder"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.CharsetUtil].encoder(java.nio.charset.Charset)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.CharsetUtil:77,1"
      Dst: "[io.netty.util.CharsetUtil].encoder(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.CharsetUtil].encoder(java.nio.charset.Charset,java.nio.charset.CodingErrorAction)"
    functionSourceFile: "io.netty.util.CharsetUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.nio.charset.CharsetEncoder"
    argCount: 2
    argTypes:
    - "java.nio.charset.Charset"
    - "java.nio.charset.CodingErrorAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.CharsetUtil].encoder(java.nio.charset.Charset,java.nio.charset.CodingErrorAction,java.nio.charset.CodingErrorAction)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.CharsetUtil:104,1"
      Dst: "[io.netty.util.CharsetUtil].encoder(java.nio.charset.Charset,java.nio.charset.CodingErrorAction,java.nio.charset.CodingErrorAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.CharsetUtil].getDecoder(java.nio.charset.Charset)"
    functionSourceFile: "io.netty.util.CharsetUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "java.nio.charset.CharsetDecoder"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.CharsetUtil].decoder(java.nio.charset.Charset)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.CharsetUtil:133,1"
      Dst: "[io.netty.util.CharsetUtil].decoder(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.CharsetUtil].decoder(java.nio.charset.Charset)"
    functionSourceFile: "io.netty.util.CharsetUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.nio.charset.CharsetDecoder"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - "[io.netty.util.internal.InternalThreadLocalMap].charsetDecoderCache()"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.nio.charset.CharsetDecoder].reset()"
    - "[java.nio.charset.CharsetDecoder].onMalformedInput(java.nio.charset.CodingErrorAction)"
    - "[java.nio.charset.CharsetDecoder].onUnmappableCharacter(java.nio.charset.CodingErrorAction)"
    - "[io.netty.util.CharsetUtil].decoder(java.nio.charset.Charset,java.nio.charset.CodingErrorAction,java.nio.charset.CodingErrorAction)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.CharsetUtil:174"
      Branch Sides:
      - BranchSide: "io.netty.util.CharsetUtil:179"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.CharsetUtil:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.CharsetUtil:170,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.CharsetUtil:172,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - Src: "io.netty.util.CharsetUtil:172,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].charsetDecoderCache()"
    - Src: "io.netty.util.CharsetUtil:173,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.util.CharsetUtil:175,1"
      Dst: "[java.nio.charset.CharsetDecoder].reset()"
    - Src: "io.netty.util.CharsetUtil:175,1"
      Dst: "[java.nio.charset.CharsetDecoder].onMalformedInput(java.nio.charset.CodingErrorAction)"
    - Src: "io.netty.util.CharsetUtil:175,1"
      Dst: "[java.nio.charset.CharsetDecoder].onUnmappableCharacter(java.nio.charset.CodingErrorAction)"
    - Src: "io.netty.util.CharsetUtil:179,1"
      Dst: "[io.netty.util.CharsetUtil].decoder(java.nio.charset.Charset,java.nio.charset.CodingErrorAction,java.nio.charset.CodingErrorAction)"
    - Src: "io.netty.util.CharsetUtil:180,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].charsetDecoderCache()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.IdentityHashMap].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:244"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:245,1"
      Dst: "[java.util.IdentityHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.CharsetUtil].decoder(java.nio.charset.Charset,java.nio.charset.CodingErrorAction)"
    functionSourceFile: "io.netty.util.CharsetUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.nio.charset.CharsetDecoder"
    argCount: 2
    argTypes:
    - "java.nio.charset.Charset"
    - "java.nio.charset.CodingErrorAction"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.CharsetUtil].decoder(java.nio.charset.Charset,java.nio.charset.CodingErrorAction,java.nio.charset.CodingErrorAction)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.CharsetUtil:160,1"
      Dst: "[io.netty.util.CharsetUtil].decoder(java.nio.charset.Charset,java.nio.charset.CodingErrorAction,java.nio.charset.CodingErrorAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.CharsetUtil].<init>()"
    functionSourceFile: "io.netty.util.CharsetUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.CharsetUtil:184,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4Constants].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4Constants"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4Constants:74,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].forClient()"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:57,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.security.KeyStore].getDefaultType()"
    - "[java.util.HashMap].<init>()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:212,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.SslContextBuilder:209,1"
      Dst: "[java.security.KeyStore].getDefaultType()"
    - Src: "io.netty.handler.ssl.SslContextBuilder:210,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].forServer(java.io.File,java.io.File)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    - "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.io.File,java.io.File)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:68,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:68,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.io.File,java.io.File)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.io.File,java.io.File)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.io.File,java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:326,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.io.File,java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.io.File,java.io.File,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.File)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslContext].toPrivateKey(java.io.File,java.lang.String)"
    - "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.lang.String,java.security.cert.X509Certificate[])"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:379,1"
      Dst: "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.File)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:381,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.SslContextBuilder:381,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:381,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:381,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.SslContextBuilder:381,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:384,1"
      Dst: "[io.netty.handler.ssl.SslContext].toPrivateKey(java.io.File,java.lang.String)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:388,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.lang.String,java.security.cert.X509Certificate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.lang.String,java.security.cert.X509Certificate[])"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 3
    argTypes:
    - "java.security.PrivateKey"
    - "java.lang.String"
    - "java.security.cert.X509Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.lang.Object[],java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslContextBuilder:431"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:435"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:434"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslContextBuilder:435"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:436"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:435"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslContextBuilder:435"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:438"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:437"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslContextBuilder:438"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:440"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:432,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmpty(java.lang.Object[],java.lang.String)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:433,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:439,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:441,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].forServer(java.io.InputStream,java.io.InputStream)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    - "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.io.InputStream,java.io.InputStream)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:84,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:84,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.io.InputStream,java.io.InputStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.io.InputStream,java.io.InputStream)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.io.InputStream,java.io.InputStream,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:341,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.io.InputStream,java.io.InputStream,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.io.InputStream,java.io.InputStream,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "java.io.InputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.InputStream)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslContext].toPrivateKey(java.io.InputStream,java.lang.String)"
    - "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.lang.String,java.security.cert.X509Certificate[])"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:409,1"
      Dst: "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.InputStream)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:411,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:414,1"
      Dst: "[io.netty.handler.ssl.SslContext].toPrivateKey(java.io.InputStream,java.lang.String)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:418,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.lang.String,java.security.cert.X509Certificate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].forServer(java.security.PrivateKey,java.security.cert.X509Certificate[])"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 2
    argTypes:
    - "java.security.PrivateKey"
    - "java.security.cert.X509Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    - "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.security.cert.X509Certificate[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:95,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:95,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.security.cert.X509Certificate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.security.cert.X509Certificate[])"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 2
    argTypes:
    - "java.security.PrivateKey"
    - "java.security.cert.X509Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.lang.String,java.security.cert.X509Certificate[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:352,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.lang.String,java.security.cert.X509Certificate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].forServer(java.security.PrivateKey,java.lang.Iterable<?\
      \ extends X509Certificate>)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 2
    argTypes:
    - "java.security.PrivateKey"
    - "java.lang.Iterable<? extends X509Certificate>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].toArray(java.lang.Iterable,java.lang.Object[])"
    - "[io.netty.handler.ssl.SslContextBuilder].forServer(java.security.PrivateKey,java.security.cert.X509Certificate[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:106,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].toArray(java.lang.Iterable,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.SslContextBuilder:106,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].forServer(java.security.PrivateKey,java.security.cert.X509Certificate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].toArray(java.lang.Iterable,java.lang.Object[])"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object[]"
    argCount: 2
    argTypes:
    - "java.lang.Iterable"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslContextBuilder:619"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:622"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:621"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslContextBuilder:623"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:626"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:625"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:622,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.ssl.SslContextBuilder:623,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.ssl.SslContextBuilder:623,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ssl.SslContextBuilder:623,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ssl.SslContextBuilder:624,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:626,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].forServer(java.io.File,java.io.File,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    - "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.io.File,java.io.File,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:120,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:120,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.io.File,java.io.File,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].forServer(java.io.InputStream,java.io.InputStream,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "java.io.InputStream"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    - "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.io.InputStream,java.io.InputStream,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:138,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:138,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.io.InputStream,java.io.InputStream,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].forServer(java.security.PrivateKey,java.lang.String,java.security.cert.X509Certificate[])"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 3
    argTypes:
    - "java.security.PrivateKey"
    - "java.lang.String"
    - "java.security.cert.X509Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    - "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.lang.String,java.security.cert.X509Certificate[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:152,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:152,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.lang.String,java.security.cert.X509Certificate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].forServer(java.security.PrivateKey,java.lang.String,java.lang.Iterable<?\
      \ extends X509Certificate>)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 3
    argTypes:
    - "java.security.PrivateKey"
    - "java.lang.String"
    - "java.lang.Iterable<? extends X509Certificate>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].toArray(java.lang.Iterable,java.lang.Object[])"
    - "[io.netty.handler.ssl.SslContextBuilder].forServer(java.security.PrivateKey,java.lang.String,java.security.cert.X509Certificate[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:166,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].toArray(java.lang.Iterable,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.SslContextBuilder:166,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].forServer(java.security.PrivateKey,java.lang.String,java.security.cert.X509Certificate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].forServer(javax.net.ssl.KeyManagerFactory)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "javax.net.ssl.KeyManagerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    - "[io.netty.handler.ssl.SslContextBuilder].keyManager(javax.net.ssl.KeyManagerFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:179,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:179,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].keyManager(javax.net.ssl.KeyManagerFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].keyManager(javax.net.ssl.KeyManagerFactory)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "javax.net.ssl.KeyManagerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslContextBuilder:475"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:478"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:477"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:476,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].forServer(javax.net.ssl.KeyManager)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "javax.net.ssl.KeyManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    - "[io.netty.handler.ssl.SslContextBuilder].keyManager(javax.net.ssl.KeyManager)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:188,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].<init>(boolean)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:188,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].keyManager(javax.net.ssl.KeyManager)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].keyManager(javax.net.ssl.KeyManager)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "javax.net.ssl.KeyManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.ssl.util.KeyManagerFactoryWrapper].<init>(javax.net.ssl.KeyManager)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslContextBuilder:493"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:496"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:495"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslContextBuilder:496"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:499"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:498"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:494,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:497,1"
      Dst: "[io.netty.handler.ssl.util.KeyManagerFactoryWrapper].<init>(javax.net.ssl.KeyManager)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.util.KeyManagerFactoryWrapper].<init>(javax.net.ssl.KeyManager)"
    functionSourceFile: "io.netty.handler.ssl.util.KeyManagerFactoryWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.KeyManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.SimpleKeyManagerFactory].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.KeyManagerFactoryWrapper:28,1"
      Dst: "[io.netty.handler.ssl.util.SimpleKeyManagerFactory].<init>()"
    - Src: "io.netty.handler.ssl.util.KeyManagerFactoryWrapper:29,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].option(io.netty.handler.ssl.SslContextOption,java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslContextOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].remove(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslContextBuilder:220"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:223"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:221,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:223,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].sslProvider(io.netty.handler.ssl.SslProvider)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.SslProvider"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].keyStoreType(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].sslContextProvider(java.security.Provider)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].trustManager(java.io.File)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.File)"
    - "[io.netty.handler.ssl.SslContextBuilder].trustManager(java.security.cert.X509Certificate[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:259,1"
      Dst: "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.File)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:259,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].trustManager(java.security.cert.X509Certificate[])"
    - Src: "io.netty.handler.ssl.SslContextBuilder:261,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.SslContextBuilder:261,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:261,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:261,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.SslContextBuilder:261,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].trustManager(java.security.cert.X509Certificate[])"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "java.security.cert.X509Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslContextBuilder:284"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:284"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:283"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:284,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].trustManager(java.io.InputStream)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.InputStream)"
    - "[io.netty.handler.ssl.SslContextBuilder].trustManager(java.security.cert.X509Certificate[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:274,1"
      Dst: "[io.netty.handler.ssl.SslContext].toX509Certificates(java.io.InputStream)"
    - Src: "io.netty.handler.ssl.SslContextBuilder:274,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].trustManager(java.security.cert.X509Certificate[])"
    - Src: "io.netty.handler.ssl.SslContextBuilder:276,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].trustManager(java.lang.Iterable<?\
      \ extends X509Certificate>)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<? extends X509Certificate>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].toArray(java.lang.Iterable,java.lang.Object[])"
    - "[io.netty.handler.ssl.SslContextBuilder].trustManager(java.security.cert.X509Certificate[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:293,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].toArray(java.lang.Iterable,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.SslContextBuilder:293,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].trustManager(java.security.cert.X509Certificate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].trustManager(javax.net.ssl.TrustManagerFactory)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "javax.net.ssl.TrustManagerFactory"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].trustManager(javax.net.ssl.TrustManager)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "javax.net.ssl.TrustManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.TrustManagerFactoryWrapper].<init>(javax.net.ssl.TrustManager)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:313,1"
      Dst: "[io.netty.handler.ssl.util.TrustManagerFactoryWrapper].<init>(javax.net.ssl.TrustManager)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.lang.Iterable<?\
      \ extends X509Certificate>)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 2
    argTypes:
    - "java.security.PrivateKey"
    - "java.lang.Iterable<? extends X509Certificate>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].toArray(java.lang.Iterable,java.lang.Object[])"
    - "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.security.cert.X509Certificate[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:363,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].toArray(java.lang.Iterable,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.SslContextBuilder:363,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.security.cert.X509Certificate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.lang.String,java.lang.Iterable<?\
      \ extends X509Certificate>)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 3
    argTypes:
    - "java.security.PrivateKey"
    - "java.lang.String"
    - "java.lang.Iterable<? extends X509Certificate>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].toArray(java.lang.Iterable,java.lang.Object[])"
    - "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.lang.String,java.security.cert.X509Certificate[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:460,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].toArray(java.lang.Iterable,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.SslContextBuilder:460,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].keyManager(java.security.PrivateKey,java.lang.String,java.security.cert.X509Certificate[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].ciphers(java.lang.Iterable<String>)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].ciphers(java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:512,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].ciphers(java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].ciphers(java.lang.Iterable<String>,io.netty.handler.ssl.CipherSuiteFilter)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 2
    argTypes:
    - "java.lang.Iterable<String>"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:521,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].applicationProtocolConfig(io.netty.handler.ssl.ApplicationProtocolConfig)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ApplicationProtocolConfig"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].sessionCacheSize(long)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].sessionTimeout(long)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].clientAuth(io.netty.handler.ssl.ClientAuth)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ClientAuth"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:556,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].protocols(java.lang.String[])"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslContextBuilder:566"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:566"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslContextBuilder:565"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:566,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].protocols(java.lang.Iterable<String>)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContextBuilder].toArray(java.lang.Iterable,java.lang.Object[])"
    - "[io.netty.handler.ssl.SslContextBuilder].protocols(java.lang.String[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:576,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].toArray(java.lang.Iterable,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.SslContextBuilder:576,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].protocols(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].startTls(boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].enableOcsp(boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.SslContextBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslContextBuilder].build()"
    functionSourceFile: "io.netty.handler.ssl.SslContextBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.ssl.SslContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].entrySet()"
    - "[io.netty.handler.ssl.SslContextBuilder].toArray(java.lang.Iterable,java.lang.Object[])"
    - "[io.netty.handler.ssl.SslContext].newServerContextInternal(io.netty.handler.ssl.SslProvider,java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,long,long,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean,boolean,java.lang.String,java.util.Map$Entry[])"
    - "[io.netty.handler.ssl.SslContext].newClientContextInternal(io.netty.handler.ssl.SslProvider,java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,java.lang.String[],long,long,boolean,java.lang.String,java.util.Map$Entry[])"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslContextBuilder:605"
      Branch Sides: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslContextBuilder:609,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "io.netty.handler.ssl.SslContextBuilder:609,1"
      Dst: "[io.netty.handler.ssl.SslContextBuilder].toArray(java.lang.Iterable,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.SslContextBuilder:606,1"
      Dst: "[io.netty.handler.ssl.SslContext].newServerContextInternal(io.netty.handler.ssl.SslProvider,java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,long,long,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean,boolean,java.lang.String,java.util.Map$Entry[])"
    - Src: "io.netty.handler.ssl.SslContextBuilder:611,1"
      Dst: "[io.netty.handler.ssl.SslContext].newClientContextInternal(io.netty.handler.ssl.SslProvider,java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,java.lang.String[],long,long,boolean,java.lang.String,java.util.Map$Entry[])"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool$1].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.pool.ChannelPoolHandler)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.pool.SimpleChannelPool"
    - "io.netty.channel.pool.ChannelPoolHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelInitializer].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool$1:108,1"
      Dst: "[io.netty.channel.ChannelInitializer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool$1].initChannel(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool$1"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.channel.pool.ChannelPoolHandler].channelCreated(io.netty.channel.Channel)"
    functionUses: 1
    ICount: 13
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.SimpleChannelPool$1:111"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool$1:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool$1:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.SimpleChannelPool$1:111"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool$1:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool$1:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool$1:111,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.channel.pool.SimpleChannelPool$1:111,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.pool.SimpleChannelPool$1:111,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.pool.SimpleChannelPool$1:112,1"
      Dst: "[io.netty.channel.pool.ChannelPoolHandler].channelCreated(io.netty.channel.Channel)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.rxtx.RxtxChannelConfig$Stopbits].values()"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits:57,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannelConfig$Stopbits].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits:57,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannelConfig$Stopbits].<init>(java.lang.String,int,int)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits:73,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannelConfig$Stopbits].valueOf(int)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.rxtx.RxtxChannelConfig$Stopbits].values()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits:82"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits:87"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits:86"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits:83"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits:82"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits:82,1"
      Dst: "[io.netty.channel.rxtx.RxtxChannelConfig$Stopbits].values()"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits:87,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits:87,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits:87,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits:87,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits:87,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.rxtx.RxtxChannelConfig$Stopbits:87,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].<init>(io.netty.buffer.CompositeByteBuf)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.CompositeByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.CompositeByteBuf].alloc()"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:37,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].alloc()"
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:37,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    functionUses: 354
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:43,1"
      Dst: "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release(int)"
    functionUses: 20
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:48,1"
      Dst: "[io.netty.buffer.AbstractReferenceCountedByteBuf].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].maxCapacity()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].maxCapacity()"
    - "[io.netty.buffer.AbstractByteBuf].maxCapacity()"
    functionUses: 13
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:53,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].maxCapacity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    functionUses: 251
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:58,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    functionUses: 135
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:63,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    functionUses: 107
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:68,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].isReadable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].isReadable(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable(int)"
    - "[io.netty.buffer.AbstractByteBuf].isReadable(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:73,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].isReadable(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].isWritable()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].isWritable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isWritable()"
    functionUses: 8
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:78,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].isWritable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].isWritable(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].isWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].isWritable(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:83,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].isWritable(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    functionUses: 437
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:88,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    functionUses: 51
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:93,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].maxWritableBytes()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].maxWritableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].maxWritableBytes()"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:98,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].maxWritableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].maxFastWritableBytes()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].maxFastWritableBytes()"
    - "[io.netty.buffer.ByteBuf].maxFastWritableBytes()"
    functionUses: 6
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:103,1"
      Dst: "[io.netty.buffer.ByteBuf].maxFastWritableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int,boolean)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int,boolean)"
    functionUses: 6
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:108,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureWritable(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteOrder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    - "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    functionUses: 36
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:113,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getBoolean(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].getBoolean(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:118,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getBoolean(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedByte(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedByte(int)"
    functionUses: 39
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:123,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getUnsignedByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getShort(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShort(int)"
    functionUses: 22
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:128,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getShortLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShortLE(int)"
    functionUses: 15
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:133,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedShort(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedShort(int)"
    functionUses: 13
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:138,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getUnsignedShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedShortLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedShortLE(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:143,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getUnsignedShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMedium(int)"
    functionUses: 17
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:148,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getUnsignedMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMediumLE(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:153,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getUnsignedMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getMedium(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].getMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getMedium(int)"
    functionUses: 7
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:158,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getMediumLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getMediumLE(int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:163,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getInt(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 169
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getInt(int)"
    functionUses: 27
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:168,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getIntLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getIntLE(int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:173,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedInt(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedInt(int)"
    functionUses: 9
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:178,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getUnsignedInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedIntLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedIntLE(int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:183,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getUnsignedIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getLong(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLong(int)"
    functionUses: 22
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:188,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getLongLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLongLE(int)"
    functionUses: 15
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:193,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getLongLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getChar(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].getChar(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:198,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getChar(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getFloat(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "float"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].getFloat(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:203,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getFloat(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getDouble(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].getDouble(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:208,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getDouble(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShortLE(int,int)"
    functionUses: 11
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:213,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setShortLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 217
    functionLinenumberEnd: 219
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMediumLE(int,int)"
    functionUses: 12
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:218,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setMediumLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 222
    functionLinenumberEnd: 224
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setIntLE(int,int)"
    functionUses: 14
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:223,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setIntLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].setLongLE(int,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:228,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setLongLE(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 232
    functionLinenumberEnd: 234
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    functionUses: 86
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:233,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readByte()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readBoolean()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readBoolean()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:238,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readBoolean()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 242
    functionLinenumberEnd: 244
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    functionUses: 41
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:243,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readShort()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 249
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readShort()"
    - "[io.netty.buffer.AbstractByteBuf].readShort()"
    functionUses: 11
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:248,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readShort()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readShortLE()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 252
    functionLinenumberEnd: 254
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readShortLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readShortLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readShortLE()"
    functionUses: 6
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:253,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readShortLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShort()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 257
    functionLinenumberEnd: 259
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShort()"
    functionUses: 44
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:258,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readUnsignedShort()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShortLE()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 264
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShortLE()"
    functionUses: 6
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:263,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readUnsignedShortLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readMedium()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 269
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readMedium()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readMedium()"
    functionUses: 5
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:268,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readMedium()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readMediumLE()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 272
    functionLinenumberEnd: 274
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readMediumLE()"
    - "[io.netty.buffer.AbstractByteBuf].readMediumLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readMediumLE()"
    functionUses: 5
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:273,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readMediumLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedMedium()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 277
    functionLinenumberEnd: 279
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedMedium()"
    functionUses: 9
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:278,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readUnsignedMedium()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedMediumLE()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 284
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedMediumLE()"
    functionUses: 6
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:283,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readUnsignedMediumLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readInt()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 287
    functionLinenumberEnd: 289
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readInt()"
    - "[io.netty.buffer.AbstractByteBuf].readInt()"
    functionUses: 22
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:288,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readInt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readIntLE()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 292
    functionLinenumberEnd: 294
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readIntLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readIntLE()"
    - "[io.netty.buffer.AbstractByteBuf].readIntLE()"
    functionUses: 9
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:293,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readIntLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedInt()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 297
    functionLinenumberEnd: 299
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedInt()"
    functionUses: 11
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:298,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readUnsignedInt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedIntLE()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedIntLE()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:303,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readUnsignedIntLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readLong()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 307
    functionLinenumberEnd: 309
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readLong()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readLong()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readLong()"
    functionUses: 11
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:308,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readLong()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readLongLE()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readLongLE()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:313,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readLongLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readChar()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "char"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readChar()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:318,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readChar()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readFloat()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readFloat()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:323,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readFloat()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readDouble()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readDouble()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:328,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readDouble()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 332
    functionLinenumberEnd: 334
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(int)"
    functionUses: 7
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:333,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].slice()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 337
    functionLinenumberEnd: 339
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice()"
    - "[io.netty.buffer.AbstractByteBuf].slice()"
    functionUses: 11
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:338,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].slice()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].retainedSlice()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 342
    functionLinenumberEnd: 344
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedSlice()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedSlice()"
    - "[io.netty.buffer.AbstractByteBuf].retainedSlice()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedSlice()"
    functionUses: 7
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:343,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].retainedSlice()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].slice(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 347
    functionLinenumberEnd: 349
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice(int,int)"
    functionUses: 25
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:348,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].slice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].retainedSlice(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 352
    functionLinenumberEnd: 354
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedSlice(int,int)"
    functionUses: 12
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:353,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].retainedSlice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 357
    functionLinenumberEnd: 359
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer()"
    - "[io.netty.buffer.AbstractByteBuf].nioBuffer()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer()"
    functionUses: 12
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:358,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].nioBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].toString(java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 362
    functionLinenumberEnd: 364
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(java.nio.charset.Charset)"
    functionUses: 21
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:363,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].toString(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 367
    functionLinenumberEnd: 369
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    functionUses: 17
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:368,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].toString(int,int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].indexOf(int,int,byte)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 372
    functionLinenumberEnd: 374
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.AbstractByteBuf].indexOf(int,int,byte)"
    functionUses: 10
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:373,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].indexOf(int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].bytesBefore(byte)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].bytesBefore(byte)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:378,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].bytesBefore(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].bytesBefore(int,byte)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 382
    functionLinenumberEnd: 384
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].bytesBefore(int,byte)"
    - "[io.netty.buffer.AbstractByteBuf].bytesBefore(int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].bytesBefore(int,byte)"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:383,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].bytesBefore(int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].bytesBefore(int,int,byte)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 387
    functionLinenumberEnd: 389
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].bytesBefore(int,int,byte)"
    functionUses: 7
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:388,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].bytesBefore(int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 392
    functionLinenumberEnd: 394
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    functionUses: 10
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:393,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 397
    functionLinenumberEnd: 399
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionUses: 21
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:398,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].forEachByteDesc(io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].forEachByteDesc(io.netty.util.ByteProcessor)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:403,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].forEachByteDesc(io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:408,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].forEachByteAsc0(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 412
    functionLinenumberEnd: 414
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByteAsc0(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.CompositeByteBuf].forEachByteAsc0(int,int,io.netty.util.ByteProcessor)"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:413,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].forEachByteAsc0(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].forEachByteAsc0(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 668
    functionLinenumberEnd: 691
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].forEachByteAsc0(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByteAsc0(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByteAsc0(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.DuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ReadOnlyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionUses: 4
    ICount: 39
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:669"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:672"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:671"
        BranchSideFuncs:
        - "toComponentIndex0(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:672"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:674"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:677"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:676"
        BranchSideFuncs:
        - "idx(int)"
        - "min(int,int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:681"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:683"
        BranchSideFuncs:
        - "forEachByteAsc0(int,int,io.netty.util.ByteProcessor)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:682"
        BranchSideFuncs:
        - "forEachByte(int,int,io.netty.util.ByteProcessor)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:684"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:687"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:686"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:672,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:678,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:679,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:682,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].forEachByteAsc0(int,int,io.netty.util.ByteProcessor)"
    - Src: "io.netty.buffer.CompositeByteBuf:683,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 920
    functionLinenumberEnd: 945
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Error].<init>(java.lang.String)"
    functionUses: 14
    ICount: 43
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:922"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:929"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:928"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:923"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:929"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:928"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:924"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:923"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:922"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:929"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:932"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:931"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:930"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:929"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:930"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:929"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:932"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:944"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:943"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:935"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:937"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:936"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:937"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:940"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:939"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:944,1"
      Dst: "[java.lang.Error].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 7
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].forEachByteDesc0(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].forEachByteDesc0(int,int,io.netty.util.ByteProcessor)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:418,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].forEachByteDesc0(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].forEachByteDesc0(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByteDesc0(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:695"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:698"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:697"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:698"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:700"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:703"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:702"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:707"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:709"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:708"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:711"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:714"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:713"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:698,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:704,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:705,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:708,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].forEachByteDesc0(int,int,io.netty.util.ByteProcessor)"
    - Src: "io.netty.buffer.CompositeByteBuf:709,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].hashCode()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 422
    functionLinenumberEnd: 424
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].hashCode()"
    - "[io.netty.buffer.AbstractByteBuf].hashCode()"
    functionUses: 14
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:423,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].equals(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 427
    functionLinenumberEnd: 429
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].equals(java.lang.Object)"
    functionUses: 19
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:428,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:433,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 437
    functionLinenumberEnd: 439
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    functionUses: 27
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:438,1"
      Dst: "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].isAccessible()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 442
    functionLinenumberEnd: 444
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].isAccessible()"
    - "[io.netty.buffer.CompositeByteBuf].isAccessible()"
    functionUses: 10
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:443,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].isAccessible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].isAccessible()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2269
    functionLinenumberEnd: 2271
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:2270"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2269"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].duplicate()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 447
    functionLinenumberEnd: 449
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.AbstractByteBuf].duplicate()"
    functionUses: 25
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:448,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].retainedDuplicate()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 452
    functionLinenumberEnd: 454
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedDuplicate()"
    functionUses: 10
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:453,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readSlice(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 457
    functionLinenumberEnd: 459
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readSlice(int)"
    functionUses: 23
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:458,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readSlice(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 462
    functionLinenumberEnd: 464
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    functionUses: 42
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:463,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 467
    functionLinenumberEnd: 469
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:468,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeShortLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writeShortLE(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:473,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeMediumLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 477
    functionLinenumberEnd: 479
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeMediumLE(int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:478,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeIntLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 482
    functionLinenumberEnd: 484
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeIntLE(int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:483,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeLongLE(long)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writeLongLE(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:488,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeLongLE(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 492
    functionLinenumberEnd: 494
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.io.InputStream,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:493,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeBytes(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 497
    functionLinenumberEnd: 499
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    functionUses: 7
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:498,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].copy()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].copy()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:503,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].addComponent(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 507
    functionLinenumberEnd: 510
    functionDepth: 7
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].addComponent(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].addComponent(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].addComponent(io.netty.buffer.ByteBuf)"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:508,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponent(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].addComponents(io.netty.buffer.ByteBuf[])"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].addComponents(io.netty.buffer.ByteBuf[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:514,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponents(io.netty.buffer.ByteBuf[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].addComponents(io.netty.buffer.ByteBuf[])"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].addComponents(boolean,io.netty.buffer.ByteBuf[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:180,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponents(boolean,io.netty.buffer.ByteBuf[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].addComponents(boolean,io.netty.buffer.ByteBuf[])"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.buffer.ByteBuf[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.CompositeByteBuf].addComponents0(boolean,int,io.netty.buffer.ByteBuf[],int)"
    - "[io.netty.buffer.CompositeByteBuf].consolidateIfNeeded()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:235,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.CompositeByteBuf:236,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponents0(boolean,int,io.netty.buffer.ByteBuf[],int)"
    - Src: "io.netty.buffer.CompositeByteBuf:237,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].consolidateIfNeeded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].addComponents(java.lang.Iterable<ByteBuf>)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 519
    functionLinenumberEnd: 522
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<ByteBuf>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].addComponents(java.lang.Iterable)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].addComponents(java.lang.Iterable)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].addComponents(java.lang.Iterable)"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:520,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponents(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].addComponent(int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].addComponent(int,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:526,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponent(int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].addComponent(int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].addComponent(boolean,int,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:210,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponent(boolean,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].addComponents(int,io.netty.buffer.ByteBuf[])"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].addComponents(int,io.netty.buffer.ByteBuf[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:532,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponents(int,io.netty.buffer.ByteBuf[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].addComponents(int,io.netty.buffer.ByteBuf[])"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.CompositeByteBuf].addComponents0(boolean,int,io.netty.buffer.ByteBuf[],int)"
    - "[io.netty.buffer.CompositeByteBuf].consolidateIfNeeded()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:365,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.CompositeByteBuf:366,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponents0(boolean,int,io.netty.buffer.ByteBuf[],int)"
    - Src: "io.netty.buffer.CompositeByteBuf:367,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].consolidateIfNeeded()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].addComponents(int,java.lang.Iterable<ByteBuf>)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.Iterable<ByteBuf>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].addComponents(int,java.lang.Iterable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:538,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponents(int,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 543
    functionLinenumberEnd: 546
    functionDepth: 6
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    functionUses: 10
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:544,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponent(boolean,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].addComponents(boolean,io.netty.buffer.ByteBuf[])"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.buffer.ByteBuf[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].addComponents(boolean,io.netty.buffer.ByteBuf[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:550,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponents(boolean,io.netty.buffer.ByteBuf[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].addComponents(boolean,java.lang.Iterable<ByteBuf>)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 555
    functionLinenumberEnd: 558
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.Iterable<ByteBuf>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].addComponents(boolean,java.lang.Iterable)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].addComponents(boolean,java.lang.Iterable)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].addComponents(boolean,java.lang.Iterable)"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:556,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponents(boolean,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].addComponent(boolean,int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 561
    functionLinenumberEnd: 564
    functionDepth: 5
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].addComponent(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].addComponent(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].addComponent(boolean,int,io.netty.buffer.ByteBuf)"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:562,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponent(boolean,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].addFlattenedComponents(boolean,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 567
    functionLinenumberEnd: 570
    functionDepth: 5
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].addFlattenedComponents(boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].addFlattenedComponents(boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].addFlattenedComponents(boolean,io.netty.buffer.ByteBuf)"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:568,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addFlattenedComponents(boolean,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].addFlattenedComponents(boolean,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 470
    functionLinenumberEnd: 529
    functionDepth: 4
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.CompositeByteBuf].addComponent0(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].consolidateIfNeeded()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].unwrap()"
    - "[io.netty.buffer.SlicedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].unwrap()"
    - "[io.netty.buffer.CompositeByteBuf].unwrap()"
    - "[io.netty.buffer.SwappedByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].unwrap()"
    - "[io.netty.buffer.EmptyByteBuf].unwrap()"
    - "[io.netty.buffer.FixedCompositeByteBuf].unwrap()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].unwrap()"
    - "[io.netty.buffer.PooledByteBuf].unwrap()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].unwrap()"
    - "[io.netty.buffer.UnpooledDuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.ReadOnlyByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].unwrap()"
    - "[io.netty.buffer.WrappedByteBuf].unwrap()"
    - "[io.netty.buffer.DuplicatedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - "[java.lang.Math].max(int,int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].addComp(int,io.netty.buffer.CompositeByteBuf$Component)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf$Component].srcIdx(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].<init>(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf,int,int,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].free()"
    - "[io.netty.buffer.CompositeByteBuf].removeComp(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].unwrap()"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 3
    ICount: 85
    EdgeCount: 85
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:474"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:478"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:477"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:478"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:484"
        BranchSideFuncs:
        - "addComponent0(boolean,int,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:483"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:484"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:487"
        BranchSideFuncs:
        - "unwrap()"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:486"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:500"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:505"
        BranchSideFuncs:
        - "min(int,int)"
        - "addComponent0(boolean,int,io.netty.buffer.ByteBuf)"
        - "<init>(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf,int,int,int,io.netty.buffer.ByteBuf)"
        - "consolidateIfNeeded()"
        - "idx(int)"
        - "retain()"
        - "capacity()"
        - "max(int,int)"
        - "toComponentIndex0(int)"
        - "addComp(int,io.netty.buffer.CompositeByteBuf$Component)"
        - "checkIndex(int,int)"
        - "srcIdx(int)"
        - "release()"
        - "unwrap()"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:504"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:505"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:476"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:475"
        BranchSideFuncs:
        - "min(int,int)"
        - "addComponent0(boolean,int,io.netty.buffer.ByteBuf)"
        - "<init>(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf,int,int,int,io.netty.buffer.ByteBuf)"
        - "consolidateIfNeeded()"
        - "idx(int)"
        - "retain()"
        - "capacity()"
        - "max(int,int)"
        - "toComponentIndex0(int)"
        - "addComp(int,io.netty.buffer.CompositeByteBuf$Component)"
        - "checkIndex(int,int)"
        - "srcIdx(int)"
        - "release()"
        - "unwrap()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:510"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:513"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:512"
        BranchSideFuncs:
        - "consolidateIfNeeded()"
        - "release()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:518"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:512"
        BranchSideFuncs:
        - "consolidateIfNeeded()"
        - "release()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:520"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:523"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:522"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:523"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:512"
        BranchSideFuncs:
        - "consolidateIfNeeded()"
        - "release()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:518"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:527"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:520"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:523"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:522"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:523"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:527"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:471,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.CompositeByteBuf:472,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.CompositeByteBuf:473,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.buffer.CompositeByteBuf:475,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.buffer.CompositeByteBuf:479,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponent0(boolean,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.CompositeByteBuf:480,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].consolidateIfNeeded()"
    - Src: "io.netty.buffer.CompositeByteBuf:485,1"
      Dst: "[io.netty.buffer.ByteBuf].unwrap()"
    - Src: "io.netty.buffer.CompositeByteBuf:489,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:494,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:494,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].capacity()"
    - Src: "io.netty.buffer.CompositeByteBuf:497,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:498,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:502,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    - Src: "io.netty.buffer.CompositeByteBuf:502,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].srcIdx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:503,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:503,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].<init>(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBuf,int,int,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.CompositeByteBuf:501,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComp(int,io.netty.buffer.CompositeByteBuf$Component)"
    - Src: "io.netty.buffer.CompositeByteBuf:524,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].free()"
    - Src: "io.netty.buffer.CompositeByteBuf:525,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].removeComp(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 29
    CyclomaticComplexity: 10
  - functionName: "[io.netty.buffer.CompositeByteBuf].removeComp(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2314
    functionLinenumberEnd: 2317
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].removeCompRange(int,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2315,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].removeCompRange(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].removeComponent(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].removeComponent(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:574,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].removeComponent(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].removeComponent(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].free()"
    - "[io.netty.buffer.CompositeByteBuf].removeComp(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].length()"
    - "[io.netty.buffer.CompositeByteBuf].updateComponentOffsets(int)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:616"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:619"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:618"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:621"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:624"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:614,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:619,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].free()"
    - Src: "io.netty.buffer.CompositeByteBuf:620,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].removeComp(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:621,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].length()"
    - Src: "io.netty.buffer.CompositeByteBuf:623,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].updateComponentOffsets(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].removeComponents(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].removeComponents(int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:580,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].removeComponents(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].removeComponents(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int,int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].length()"
    - "[io.netty.buffer.CompositeByteBuf$Component].free()"
    - "[io.netty.buffer.CompositeByteBuf].removeCompRange(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].updateComponentOffsets(int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:637"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:640"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:639"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:642"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:652"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:651"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:644"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:647"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:646"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:647"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:654"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:657"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:635,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:644,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].length()"
    - Src: "io.netty.buffer.CompositeByteBuf:650,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].free()"
    - Src: "io.netty.buffer.CompositeByteBuf:652,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].removeCompRange(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:656,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].updateComponentOffsets(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:586"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:587"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:586"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:586"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:592"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:591"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:585,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.CompositeByteBuf:590,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:587,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.buffer.CompositeByteBuf:587,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].iterator()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 585
    functionLinenumberEnd: 587
    functionDepth: 4
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].iterator()"
    - "[io.netty.buffer.CompositeByteBuf].iterator()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].iterator()"
    functionUses: 26
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:586,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].iterator()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 662
    functionLinenumberEnd: 665
    functionDepth: 3
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].<init>(io.netty.buffer.CompositeByteBuf,io.netty.buffer.CompositeByteBuf$1)"
    functionUses: 25
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:664"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:662"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.CompositeByteBuf,io.netty.buffer.CompositeByteBuf$1)"
        - "ensureAccessible()"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:663,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.CompositeByteBuf:664,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].<init>(io.netty.buffer.CompositeByteBuf,io.netty.buffer.CompositeByteBuf$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].decompose(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.List<ByteBuf>"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].decompose(int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:591,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].decompose(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].decompose(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.List<ByteBuf>"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[java.util.Collections].emptyList()"
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].srcIdx(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.ByteBuf].slice(int,int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf$Component].length()"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:724"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:728"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:727"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:739"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:743"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:742"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:756"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:747"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:723,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:725,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.buffer.CompositeByteBuf:728,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:736,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].srcIdx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:736,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:736,1"
      Dst: "[io.netty.buffer.ByteBuf].slice(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:737,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.CompositeByteBuf:740,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "io.netty.buffer.CompositeByteBuf:743,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:744,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.buffer.CompositeByteBuf:753,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].isDirect()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 595
    functionLinenumberEnd: 597
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isDirect()"
    functionUses: 18
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:596,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].isDirect()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].isDirect()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 762
    functionLinenumberEnd: 773
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isDirect()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.DuplicatedByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].isDirect()"
    - "[io.netty.buffer.CompositeByteBuf].isDirect()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBuf].isDirect()"
    - "[io.netty.buffer.PooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.PooledDirectByteBuf].isDirect()"
    - "[io.netty.buffer.SlicedByteBuf].isDirect()"
    - "[io.netty.buffer.EmptyByteBuf].isDirect()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isDirect()"
    - "[io.netty.buffer.FixedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isDirect()"
    - "[io.netty.buffer.ByteBuf].isDirect()"
    functionUses: 18
    ICount: 15
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:764"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:767"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:766"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:767"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:772"
        BranchSideFuncs:
        - "isDirect()"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:771"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:768"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:767"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:766"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:768,1"
      Dst: "[io.netty.buffer.ByteBuf].isDirect()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 600
    functionLinenumberEnd: 602
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    functionUses: 47
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:601,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].hasArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].hasArray()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 776
    functionLinenumberEnd: 784
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.EmptyByteBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    functionUses: 47
    ICount: 10
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:781,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 605
    functionLinenumberEnd: 607
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    functionUses: 64
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:606,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].array()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].array()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 788
    functionLinenumberEnd: 796
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.buffer.ByteBuf].array()"
    functionUses: 64
    ICount: 13
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:793,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.CompositeByteBuf:795,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 610
    functionLinenumberEnd: 612
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    functionUses: 59
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:611,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 800
    functionLinenumberEnd: 809
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    functionUses: 59
    ICount: 13
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:806,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.buffer.CompositeByteBuf:806,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:808,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 615
    functionLinenumberEnd: 617
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    functionUses: 40
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:616,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 813
    functionLinenumberEnd: 821
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    functionUses: 40
    ICount: 12
    EdgeCount: 40
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:816,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 620
    functionLinenumberEnd: 622
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    functionUses: 39
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:621,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 825
    functionLinenumberEnd: 834
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    functionUses: 39
    ICount: 17
    EdgeCount: 43
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:828,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    - Src: "io.netty.buffer.CompositeByteBuf:833,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 625
    functionLinenumberEnd: 627
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    functionUses: 76
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:626,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].capacity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].capacity(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 630
    functionLinenumberEnd: 633
    functionDepth: 5
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].capacity(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:631,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].capacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].capacity(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 844
    functionLinenumberEnd: 886
    functionDepth: 4
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkNewCapacity(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].allocBuffer(int)"
    - "[io.netty.buffer.WrappedByteBuf].setIndex(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].addComponent0(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].consolidateIfNeeded()"
    - "[io.netty.buffer.CompositeByteBuf$Component].length()"
    - "[io.netty.buffer.CompositeByteBuf$Component].access$100(io.netty.buffer.CompositeByteBuf$Component)"
    - "[io.netty.buffer.CompositeByteBuf$Component].access$102(io.netty.buffer.CompositeByteBuf$Component,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].slice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].slice(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].slice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].slice(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].free()"
    - "[io.netty.buffer.CompositeByteBuf].removeCompRange(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].setIndex0(int,int)"
    - "[io.netty.buffer.ByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.ByteBuf].slice(int,int)"
    functionUses: 10
    ICount: 48
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:848"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:845"
        BranchSideFuncs:
        - "allocBuffer(int)"
        - "addComponent0(boolean,int,io.netty.buffer.ByteBuf)"
        - "setIndex(int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:844"
        BranchSideFuncs:
        - "checkNewCapacity(int)"
        - "capacity()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:852"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:856"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:848"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:885"
        BranchSideFuncs:
        - "allocBuffer(int)"
        - "addComponent0(boolean,int,io.netty.buffer.ByteBuf)"
        - "setIndex(int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:884"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:860"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:877"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:876"
        BranchSideFuncs:
        - "removeCompRange(int,int)"
        - "readerIndex()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:863"
      Branch Sides: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:867"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:876"
        BranchSideFuncs:
        - "removeCompRange(int,int)"
        - "readerIndex()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:879"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:881"
        BranchSideFuncs:
        - "setIndex0(int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:880"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:881"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:885"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:884"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:845,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkNewCapacity(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:847,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].capacity()"
    - Src: "io.netty.buffer.CompositeByteBuf:850,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].allocBuffer(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:850,1"
      Dst: "[io.netty.buffer.ByteBuf].setIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:851,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponent0(boolean,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.CompositeByteBuf:855,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].consolidateIfNeeded()"
    - Src: "io.netty.buffer.CompositeByteBuf:862,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].length()"
    - Src: "io.netty.buffer.CompositeByteBuf:866,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].access$100(io.netty.buffer.CompositeByteBuf$Component)"
    - Src: "io.netty.buffer.CompositeByteBuf:870,1"
      Dst: "[io.netty.buffer.ByteBuf].slice(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:870,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].access$102(io.netty.buffer.CompositeByteBuf$Component,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.CompositeByteBuf:874,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].free()"
    - Src: "io.netty.buffer.CompositeByteBuf:877,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].removeCompRange(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:879,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - Src: "io.netty.buffer.CompositeByteBuf:880,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setIndex0(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 9
  - functionName: "[io.netty.buffer.CompositeByteBuf$Component].access$100(io.netty.buffer.CompositeByteBuf$Component)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$Component"
    linkageType: ""
    functionLinenumber: 1888
    functionLinenumberEnd: 1890
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.CompositeByteBuf$Component"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf$Component].access$102(io.netty.buffer.CompositeByteBuf$Component,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$Component"
    linkageType: ""
    functionLinenumber: 1888
    functionLinenumberEnd: 1890
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.CompositeByteBuf$Component"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 636
    functionLinenumberEnd: 638
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBufAllocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.CompositeByteBuf].alloc()"
    functionUses: 30
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:637,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].alloc()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 641
    functionLinenumberEnd: 643
    functionDepth: 1
    returnType: "java.nio.ByteOrder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    functionUses: 47
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:642,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].order()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 894
    functionLinenumberEnd: 896
    functionDepth: 0
    returnType: "java.nio.ByteOrder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 46
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].numComponents()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 646
    functionLinenumberEnd: 648
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].numComponents()"
    - "[io.netty.buffer.CompositeByteBuf].numComponents()"
    functionUses: 6
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:647,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].numComponents()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].maxNumComponents()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].maxNumComponents()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:652,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].maxNumComponents()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].maxNumComponents()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].toComponentIndex(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:657,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].toComponentIndex(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:916,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:917,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].toByteIndex(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].toByteIndex(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:662,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toByteIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].toByteIndex(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:948,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 666
    functionLinenumberEnd: 668
    functionDepth: 3
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    functionUses: 138
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:667,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 953
    functionLinenumberEnd: 956
    functionDepth: 2
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 137
    ICount: 7
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:954,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:955,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:955,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].findComponent(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1593
    functionLinenumberEnd: 1601
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf$Component"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].findIt(int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1595"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1599"
        BranchSideFuncs:
        - "ensureAccessible()"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1598"
        BranchSideFuncs:
        - "checkIndex(int)"
        - "findIt(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1595"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1599"
        BranchSideFuncs:
        - "ensureAccessible()"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1598"
        BranchSideFuncs:
        - "checkIndex(int)"
        - "findIt(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1595"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1599"
        BranchSideFuncs:
        - "ensureAccessible()"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1598"
        BranchSideFuncs:
        - "checkIndex(int)"
        - "findIt(int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1596,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.CompositeByteBuf:1599,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1600,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findIt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.CompositeByteBuf].findIt(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1611
    functionLinenumberEnd: 1630
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf$Component"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.Error].<init>(java.lang.String)"
    functionUses: 2
    ICount: 27
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1612"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1629"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1628"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1615"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1619"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1618"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1619"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1621"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1620"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1621"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1624"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1623"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1616,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.CompositeByteBuf:1629,1"
      Dst: "[java.lang.Error].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._getByte(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 671
    functionLinenumberEnd: 673
    functionDepth: 3
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getByte(int)"
    functionUses: 29
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:672,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._getByte(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 959
    functionLinenumberEnd: 962
    functionDepth: 2
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 29
    ICount: 7
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:960,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:961,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:961,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1603
    functionLinenumberEnd: 1609
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf$Component"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findIt(int)"
    functionUses: 17
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1605"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1608"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1607"
        BranchSideFuncs:
        - "findIt(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1605"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1608"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1607"
        BranchSideFuncs:
        - "findIt(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1605"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1608"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1607"
        BranchSideFuncs:
        - "findIt(int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1608,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findIt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._getShort(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 676
    functionLinenumberEnd: 678
    functionDepth: 4
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getShort(int)"
    functionUses: 13
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:677,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._getShort(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 965
    functionLinenumberEnd: 973
    functionDepth: 3
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.SwappedByteBuf].getShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShort(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.ByteBuf].getShort(int)"
    functionUses: 13
    ICount: 39
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:967"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:969"
        BranchSideFuncs:
        - "idx(int)"
        - "getShort(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:968"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:969"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:972"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:971"
        BranchSideFuncs:
        - "_getByte(int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:966,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:968,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:968,1"
      Dst: "[io.netty.buffer.ByteBuf].getShort(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:969,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    - Src: "io.netty.buffer.CompositeByteBuf:970,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._getShortLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 681
    functionLinenumberEnd: 683
    functionDepth: 4
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getShortLE(int)"
    functionUses: 13
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:682,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._getShortLE(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 977
    functionLinenumberEnd: 985
    functionDepth: 3
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShortLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShortLE(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.ByteBuf].getShortLE(int)"
    functionUses: 13
    ICount: 39
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:979"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:981"
        BranchSideFuncs:
        - "idx(int)"
        - "getShortLE(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:980"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:981"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:984"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:983"
        BranchSideFuncs:
        - "_getByte(int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:978,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:980,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:980,1"
      Dst: "[io.netty.buffer.ByteBuf].getShortLE(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:981,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    - Src: "io.netty.buffer.CompositeByteBuf:982,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 686
    functionLinenumberEnd: 688
    functionDepth: 5
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getUnsignedMedium(int)"
    functionUses: 7
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:687,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getUnsignedMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 989
    functionLinenumberEnd: 997
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.SlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedMedium(int)"
    functionUses: 7
    ICount: 37
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:991"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:993"
        BranchSideFuncs:
        - "idx(int)"
        - "getUnsignedMedium(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:992"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:993"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:996"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:995"
        BranchSideFuncs:
        - "_getShort(int)"
        - "_getByte(int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:990,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:992,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:992,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedMedium(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:993,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    - Src: "io.netty.buffer.CompositeByteBuf:994,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getShort(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:994,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 691
    functionLinenumberEnd: 693
    functionDepth: 5
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf]._getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getUnsignedMediumLE(int)"
    functionUses: 7
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:692,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getUnsignedMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1001
    functionLinenumberEnd: 1009
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedMediumLE(int)"
    functionUses: 7
    ICount: 37
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1003"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1005"
        BranchSideFuncs:
        - "idx(int)"
        - "getUnsignedMediumLE(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1004"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1005"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1008"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1007"
        BranchSideFuncs:
        - "_getShortLE(int)"
        - "_getByte(int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1002,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1004,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1004,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedMediumLE(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1005,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    - Src: "io.netty.buffer.CompositeByteBuf:1006,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getShortLE(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1006,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._getInt(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 696
    functionLinenumberEnd: 698
    functionDepth: 5
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getInt(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getInt(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:697,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._getInt(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1013
    functionLinenumberEnd: 1021
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.SlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getShort(int)"
    - "[io.netty.buffer.ByteBuf].getInt(int)"
    functionUses: 11
    ICount: 37
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1015"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1017"
        BranchSideFuncs:
        - "idx(int)"
        - "getInt(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1016"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1017"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1020"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1019"
        BranchSideFuncs:
        - "_getShort(int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1014,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1016,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1016,1"
      Dst: "[io.netty.buffer.ByteBuf].getInt(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1017,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    - Src: "io.netty.buffer.CompositeByteBuf:1018,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._getIntLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 701
    functionLinenumberEnd: 703
    functionDepth: 5
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getIntLE(int)"
    functionUses: 11
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:702,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._getIntLE(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1025
    functionLinenumberEnd: 1033
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.SlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getIntLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getIntLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getIntLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getIntLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.CompositeByteBuf]._getShortLE(int)"
    - "[io.netty.buffer.ByteBuf].getIntLE(int)"
    functionUses: 11
    ICount: 37
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1027"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1029"
        BranchSideFuncs:
        - "idx(int)"
        - "getIntLE(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1028"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1029"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1032"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1031"
        BranchSideFuncs:
        - "_getShortLE(int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1026,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1028,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1028,1"
      Dst: "[io.netty.buffer.ByteBuf].getIntLE(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1029,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    - Src: "io.netty.buffer.CompositeByteBuf:1030,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._getLong(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 706
    functionLinenumberEnd: 708
    functionDepth: 6
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf]._getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getLong(int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:707,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._getLong(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1037
    functionLinenumberEnd: 1045
    functionDepth: 5
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLong(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLong(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLong(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf]._getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getInt(int)"
    - "[io.netty.buffer.ByteBuf].getLong(int)"
    functionUses: 8
    ICount: 33
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1039"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1041"
        BranchSideFuncs:
        - "idx(int)"
        - "getLong(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1040"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1041"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1044"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1043"
        BranchSideFuncs:
        - "_getInt(int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1038,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1040,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1040,1"
      Dst: "[io.netty.buffer.ByteBuf].getLong(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1041,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    - Src: "io.netty.buffer.CompositeByteBuf:1042,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._getLongLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 711
    functionLinenumberEnd: 713
    functionDepth: 6
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf]._getLongLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getLongLE(int)"
    functionUses: 7
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:712,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getLongLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._getLongLE(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1049
    functionLinenumberEnd: 1057
    functionDepth: 5
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLongLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLongLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLongLE(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._getIntLE(int)"
    - "[io.netty.buffer.ByteBuf].getLongLE(int)"
    functionUses: 7
    ICount: 33
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1051"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1053"
        BranchSideFuncs:
        - "getLongLE(int)"
        - "idx(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1052"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1053"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1056"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1055"
        BranchSideFuncs:
        - "_getIntLE(int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1050,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1052,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1052,1"
      Dst: "[io.netty.buffer.ByteBuf].getLongLE(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1053,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    - Src: "io.netty.buffer.CompositeByteBuf:1054,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 716
    functionLinenumberEnd: 719
    functionDepth: 2
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[],int,int)"
    functionUses: 20
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:717,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1061
    functionLinenumberEnd: 1078
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    functionUses: 19
    ICount: 25
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1063"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1067"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1066"
        BranchSideFuncs:
        - "toComponentIndex0(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1068"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1077"
        BranchSideFuncs:
        - "idx(int)"
        - "min(int,int)"
        - "getBytes(int,byte[],int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1076"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1062,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1067,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1070,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1071,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1071,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 722
    functionLinenumberEnd: 725
    functionDepth: 2
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionUses: 14
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:723,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1081
    functionLinenumberEnd: 1105
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[java.nio.Buffer].limit()"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionUses: 13
    ICount: 32
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1086"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1090"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1089"
        BranchSideFuncs:
        - "toComponentIndex0(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1092"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1102"
        BranchSideFuncs:
        - "idx(int)"
        - "min(int,int)"
        - "getBytes(int,java.nio.ByteBuffer)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1101"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1082,1"
      Dst: "[java.nio.Buffer].limit()"
    - Src: "io.netty.buffer.CompositeByteBuf:1083,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.CompositeByteBuf:1085,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1090,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1094,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1095,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.buffer.CompositeByteBuf:1095,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1096,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1096,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 728
    functionLinenumberEnd: 731
    functionDepth: 2
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 17
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:729,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1108
    functionLinenumberEnd: 1125
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 16
    ICount: 25
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1110"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1114"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1113"
        BranchSideFuncs:
        - "toComponentIndex0(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1115"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1124"
        BranchSideFuncs:
        - "idx(int)"
        - "min(int,int)"
        - "getBytes(int,io.netty.buffer.ByteBuf,int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1123"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1109,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.buffer.CompositeByteBuf:1109,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1114,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1117,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1118,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1118,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 734
    functionLinenumberEnd: 736
    functionDepth: 4
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionUses: 10
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:735,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1129
    functionLinenumberEnd: 1139
    functionDepth: 3
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[sun.nio.ch.FileChannelImpl].write(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[java.nio.channels.DatagramChannel].write(java.nio.ByteBuffer[])"
    - "[java.nio.channels.FileChannel].write(java.nio.ByteBuffer[])"
    - "[java.nio.channels.SocketChannel].write(java.nio.ByteBuffer[])"
    - "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    - "[java.nio.channels.GatheringByteChannel].write(java.nio.ByteBuffer[])"
    functionUses: 9
    ICount: 17
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1131"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1134"
        BranchSideFuncs:
        - "write(java.nio.ByteBuffer)"
        - "internalNioBuffer(int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1133"
        BranchSideFuncs:
        - "write(java.nio.ByteBuffer[])"
        - "nioBuffers(int,int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1135"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1138"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1137"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1130,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - Src: "io.netty.buffer.CompositeByteBuf:1132,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1132,1"
      Dst: "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.CompositeByteBuf:1134,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1134,1"
      Dst: "[java.nio.channels.GatheringByteChannel].write(java.nio.ByteBuffer[])"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1633
    functionLinenumberEnd: 1646
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    functionUses: 47
    ICount: 20
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1642"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1644"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1639,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1650
    functionLinenumberEnd: 1658
    functionDepth: 2
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf$Component].internalNioBuffer(int,int)"
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 39
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1655,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].internalNioBuffer(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1657,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf$Component].internalNioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$Component"
    linkageType: ""
    functionLinenumber: 1951
    functionLinenumberEnd: 1953
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].srcIdx(int)"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf$Component:1952,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].srcIdx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf$Component:1952,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1695
    functionLinenumberEnd: 1727
    functionDepth: 2
    returnType: "java.nio.ByteBuffer[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.util.internal.RecyclableArrayList].newInstance(int)"
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].nioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffer(int,int)"
    - "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffers(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers(int,int)"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[io.netty.util.internal.RecyclableArrayList].recycle()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    functionUses: 23
    ICount: 43
    EdgeCount: 68
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1697"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1701"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1700"
        BranchSideFuncs:
        - "newInstance(int)"
        - "toComponentIndex0(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1704"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1723"
        BranchSideFuncs:
        - "min(int,int)"
        - "nioBufferCount()"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1722"
        BranchSideFuncs:
        - "toArray(java.lang.Object[])"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1696,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1701,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].newInstance(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1703,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1707,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1708,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.buffer.CompositeByteBuf:1710,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    - Src: "io.netty.buffer.CompositeByteBuf:1712,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1712,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1712,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - Src: "io.netty.buffer.CompositeByteBuf:1715,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1715,1"
      Dst: "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - Src: "io.netty.buffer.CompositeByteBuf:1723,1"
      Dst: "[java.util.ArrayList].toArray(java.lang.Object[])"
    - Src: "io.netty.buffer.CompositeByteBuf:1725,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].recycle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 739
    functionLinenumberEnd: 742
    functionDepth: 2
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionUses: 12
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:740,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1162
    functionLinenumberEnd: 1178
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionUses: 11
    ICount: 22
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1164"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1168"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1167"
        BranchSideFuncs:
        - "toComponentIndex0(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1169"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1177"
        BranchSideFuncs:
        - "idx(int)"
        - "min(int,int)"
        - "getBytes(int,java.io.OutputStream,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1176"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1163,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1168,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1171,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1172,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1172,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 745
    functionLinenumberEnd: 748
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    functionUses: 67
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:746,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1181
    functionLinenumberEnd: 1185
    functionDepth: 2
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setByte(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ByteBuf].setByte(int,int)"
    functionUses: 66
    ICount: 8
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1182,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1183,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1183,1"
      Dst: "[io.netty.buffer.ByteBuf].setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._setByte(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 751
    functionLinenumberEnd: 754
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setByte(int,int)"
    functionUses: 39
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:752,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1188
    functionLinenumberEnd: 1192
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setByte(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ByteBuf].setByte(int,int)"
    functionUses: 39
    ICount: 8
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1189,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1190,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1190,1"
      Dst: "[io.netty.buffer.ByteBuf].setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setShort(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 756
    functionLinenumberEnd: 759
    functionDepth: 5
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShort(int,int)"
    functionUses: 20
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:757,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1194
    functionLinenumberEnd: 1198
    functionDepth: 4
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setShort(int,int)"
    functionUses: 19
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1195,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1196,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._setShort(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1201
    functionLinenumberEnd: 1213
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setShort(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.ByteBuf].setShort(int,int)"
    functionUses: 14
    ICount: 32
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1203"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1205"
        BranchSideFuncs:
        - "idx(int)"
        - "setShort(int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1204"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1205"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1209"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1208"
        BranchSideFuncs:
        - "_setByte(int,int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1202,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1204,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1204,1"
      Dst: "[io.netty.buffer.ByteBuf].setShort(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1205,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    - Src: "io.netty.buffer.CompositeByteBuf:1206,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._setShort(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 762
    functionLinenumberEnd: 765
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setShort(int,int)"
    functionUses: 14
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:763,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 767
    functionLinenumberEnd: 770
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setShortLE(int,int)"
    functionUses: 12
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:768,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setShortLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1215
    functionLinenumberEnd: 1227
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShortLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.ByteBuf].setShortLE(int,int)"
    functionUses: 12
    ICount: 32
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1217"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1219"
        BranchSideFuncs:
        - "idx(int)"
        - "setShortLE(int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1218"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1219"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1223"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1222"
        BranchSideFuncs:
        - "_setByte(int,int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1216,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1218,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1218,1"
      Dst: "[io.netty.buffer.ByteBuf].setShortLE(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1219,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    - Src: "io.netty.buffer.CompositeByteBuf:1220,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 772
    functionLinenumberEnd: 775
    functionDepth: 6
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setMedium(int,int)"
    functionUses: 13
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:773,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1229
    functionLinenumberEnd: 1233
    functionDepth: 5
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setMedium(int,int)"
    functionUses: 12
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1230,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1231,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1236
    functionLinenumberEnd: 1248
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setMedium(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.ByteBuf].setMedium(int,int)"
    functionUses: 8
    ICount: 32
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1238"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1240"
        BranchSideFuncs:
        - "idx(int)"
        - "setMedium(int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1239"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1240"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1244"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1243"
        BranchSideFuncs:
        - "_setByte(int,int)"
        - "_setShort(int,int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1237,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1239,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1239,1"
      Dst: "[io.netty.buffer.ByteBuf].setMedium(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1240,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    - Src: "io.netty.buffer.CompositeByteBuf:1241,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setShort(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1242,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 778
    functionLinenumberEnd: 781
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setMedium(int,int)"
    functionUses: 8
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:779,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 783
    functionLinenumberEnd: 786
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf]._setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setMediumLE(int,int)"
    functionUses: 7
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:784,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setMediumLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1250
    functionLinenumberEnd: 1262
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setMediumLE(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.ByteBuf].setMediumLE(int,int)"
    functionUses: 7
    ICount: 32
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1252"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1254"
        BranchSideFuncs:
        - "idx(int)"
        - "setMediumLE(int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1253"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1254"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1258"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1257"
        BranchSideFuncs:
        - "_setShortLE(int,int)"
        - "_setByte(int,int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1251,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1253,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1253,1"
      Dst: "[io.netty.buffer.ByteBuf].setMediumLE(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1254,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    - Src: "io.netty.buffer.CompositeByteBuf:1255,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setShortLE(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1256,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 788
    functionLinenumberEnd: 791
    functionDepth: 6
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    functionUses: 28
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:789,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1264
    functionLinenumberEnd: 1268
    functionDepth: 5
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setInt(int,int)"
    functionUses: 27
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1265,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1266,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._setInt(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1271
    functionLinenumberEnd: 1283
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setInt(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.ByteBuf].setInt(int,int)"
    functionUses: 16
    ICount: 32
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1273"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1275"
        BranchSideFuncs:
        - "idx(int)"
        - "setInt(int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1274"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1275"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1279"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1278"
        BranchSideFuncs:
        - "_setShort(int,int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1272,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1274,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1274,1"
      Dst: "[io.netty.buffer.ByteBuf].setInt(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1275,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    - Src: "io.netty.buffer.CompositeByteBuf:1276,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._setInt(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 794
    functionLinenumberEnd: 797
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setInt(int,int)"
    functionUses: 16
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:795,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 799
    functionLinenumberEnd: 802
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf]._setIntLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setIntLE(int,int)"
    functionUses: 7
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:800,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setIntLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1285
    functionLinenumberEnd: 1297
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setIntLE(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setShortLE(int,int)"
    - "[io.netty.buffer.ByteBuf].setIntLE(int,int)"
    functionUses: 7
    ICount: 32
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1287"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1289"
        BranchSideFuncs:
        - "idx(int)"
        - "setIntLE(int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1288"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1289"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1293"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1292"
        BranchSideFuncs:
        - "_setShortLE(int,int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1286,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1288,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1288,1"
      Dst: "[io.netty.buffer.ByteBuf].setIntLE(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1289,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    - Src: "io.netty.buffer.CompositeByteBuf:1290,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setShortLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setLong(int,long)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 804
    functionLinenumberEnd: 807
    functionDepth: 7
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf].setLong(int,long)"
    functionUses: 16
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:805,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setLong(int,long)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1299
    functionLinenumberEnd: 1303
    functionDepth: 6
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf]._setLong(int,long)"
    functionUses: 15
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1300,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1301,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._setLong(int,long)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1306
    functionLinenumberEnd: 1318
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setLong(int,long)"
    - "[io.netty.buffer.DuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf].setLong(int,long)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.EmptyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.ByteBuf].setLong(int,long)"
    functionUses: 10
    ICount: 28
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1308"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1310"
        BranchSideFuncs:
        - "idx(int)"
        - "setLong(int,long)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1309"
        BranchSideFuncs:
        - "order()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1310"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1314"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1313"
        BranchSideFuncs:
        - "_setInt(int,int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1307,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1309,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1309,1"
      Dst: "[io.netty.buffer.ByteBuf].setLong(int,long)"
    - Src: "io.netty.buffer.CompositeByteBuf:1310,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    - Src: "io.netty.buffer.CompositeByteBuf:1311,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._setLong(int,long)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 810
    functionLinenumberEnd: 813
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setLong(int,long)"
    functionUses: 10
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:811,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf]._setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf]._setLongLE(int,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:816,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setLongLE(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf]._setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.ByteBuf].setLongLE(int,long)"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf]._setIntLE(int,int)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1322"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1324"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1323"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1324"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1328"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1327"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1321,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1323,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1323,1"
      Dst: "[io.netty.buffer.ByteBuf].setLongLE(int,long)"
    - Src: "io.netty.buffer.CompositeByteBuf:1324,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    - Src: "io.netty.buffer.CompositeByteBuf:1325,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setIntLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 820
    functionLinenumberEnd: 823
    functionDepth: 2
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,byte[],int,int)"
    functionUses: 16
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:821,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1334
    functionLinenumberEnd: 1351
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkSrcIndex(int,int,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,byte[],int,int)"
    functionUses: 15
    ICount: 25
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1336"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1340"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1339"
        BranchSideFuncs:
        - "toComponentIndex0(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1341"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1350"
        BranchSideFuncs:
        - "idx(int)"
        - "min(int,int)"
        - "setBytes(int,byte[],int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1349"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1335,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkSrcIndex(int,int,int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1340,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1343,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1344,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1344,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 826
    functionLinenumberEnd: 829
    functionDepth: 2
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionUses: 10
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:827,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1354
    functionLinenumberEnd: 1378
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[java.nio.Buffer].limit()"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].limit(int)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionUses: 9
    ICount: 32
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1359"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1363"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1362"
        BranchSideFuncs:
        - "toComponentIndex0(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1365"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1375"
        BranchSideFuncs:
        - "idx(int)"
        - "min(int,int)"
        - "setBytes(int,java.nio.ByteBuffer)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1374"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1355,1"
      Dst: "[java.nio.Buffer].limit()"
    - Src: "io.netty.buffer.CompositeByteBuf:1356,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.CompositeByteBuf:1358,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1363,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1367,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1368,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.buffer.CompositeByteBuf:1368,1"
      Dst: "[java.nio.ByteBuffer].limit(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1369,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1369,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 832
    functionLinenumberEnd: 835
    functionDepth: 2
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 22
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:833,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1381
    functionLinenumberEnd: 1398
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.AbstractByteBuf].checkSrcIndex(int,int,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 21
    ICount: 25
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1383"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1387"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1386"
        BranchSideFuncs:
        - "toComponentIndex0(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1388"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1397"
        BranchSideFuncs:
        - "idx(int)"
        - "setBytes(int,io.netty.buffer.ByteBuf,int,int)"
        - "min(int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1396"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1382,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.buffer.CompositeByteBuf:1382,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkSrcIndex(int,int,int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1387,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1390,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1391,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1391,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 838
    functionLinenumberEnd: 840
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    functionUses: 10
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:839,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1401
    functionLinenumberEnd: 1435
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].read(byte[])"
    - "[java.io.FilterInputStream].read(byte[])"
    - "[java.io.InputStream].read(byte[])"
    - "[java.io.DataInputStream].read(byte[])"
    - "[java.lang.ProcessImpl$DeferredCloseInputStream].read(byte[])"
    - "[java.io.FileInputStream].read(byte[])"
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.io.InputStream,int)"
    functionUses: 9
    ICount: 33
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1403"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1407"
        BranchSideFuncs:
        - "read(byte[])"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1406"
        BranchSideFuncs:
        - "toComponentIndex0(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1412"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1416"
        BranchSideFuncs:
        - "idx(int)"
        - "setBytes(int,java.io.InputStream,int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1418"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1426"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1425"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1419"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1434"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1433"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1429"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1432"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1431"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1432"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1409"
        BranchSideFuncs:
        - "min(int,int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1402,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1404,1"
      Dst: "[java.io.InputStream].read(byte[])"
    - Src: "io.netty.buffer.CompositeByteBuf:1407,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1411,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1417,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1417,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 843
    functionLinenumberEnd: 845
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionUses: 10
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:844,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1438
    functionLinenumberEnd: 1477
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[sun.nio.ch.FileChannelImpl].read(java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionUses: 9
    ICount: 35
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1440"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1444"
        BranchSideFuncs:
        - "read(java.nio.ByteBuffer)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1443"
        BranchSideFuncs:
        - "toComponentIndex0(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1449"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1453"
        BranchSideFuncs:
        - "idx(int)"
        - "setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1456"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1460"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1459"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1460"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1468"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1467"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1461"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1476"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1475"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1471"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1474"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1473"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1474"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1446"
        BranchSideFuncs:
        - "min(int,int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1439,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1441,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.CompositeByteBuf:1444,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1448,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1454,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1454,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 6
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].copy(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 848
    functionLinenumberEnd: 850
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].copy(int,int)"
    functionUses: 12
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:849,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].copy(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].copy(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1522
    functionLinenumberEnd: 1529
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].allocBuffer(int)"
    - "[io.netty.buffer.CompositeByteBuf].copyTo(int,int,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    functionUses: 11
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1525"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1528"
        BranchSideFuncs:
        - "copyTo(int,int,int,io.netty.buffer.ByteBuf)"
        - "toComponentIndex0(int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1527"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1523,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1524,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].allocBuffer(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1526,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1526,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].copyTo(int,int,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.CompositeByteBuf].copyTo(int,int,int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1531
    functionLinenumberEnd: 1547
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    functionUses: 1
    ICount: 24
    EdgeCount: 49
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1535"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1545"
        BranchSideFuncs:
        - "idx(int)"
        - "min(int,int)"
        - "getBytes(int,io.netty.buffer.ByteBuf,int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1544"
        BranchSideFuncs:
        - "writerIndex(int)"
        - "capacity()"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1537,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1538,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1538,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1545,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.buffer.CompositeByteBuf:1545,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].component(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].component(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:854,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].component(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].component(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].duplicate()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1555,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1556,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf$Component].duplicate()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf$Component"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].duplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf$Component:1947,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].componentAtOffset(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].componentAtOffset(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:859,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].componentAtOffset(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].componentAtOffset(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].duplicate()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1566,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1566,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].internalComponent(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 863
    functionLinenumberEnd: 865
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalComponent(int)"
    - "[io.netty.buffer.CompositeByteBuf].internalComponent(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:864,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].internalComponent(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].internalComponentAtOffset(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].internalComponentAtOffset(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:869,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].internalComponentAtOffset(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].internalComponentAtOffset(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].findComponent(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].slice()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1587,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].findComponent(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1587,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].slice()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 873
    functionLinenumberEnd: 875
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    functionUses: 48
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:874,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 878
    functionLinenumberEnd: 880
    functionDepth: 3
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    functionUses: 40
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:879,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 883
    functionLinenumberEnd: 885
    functionDepth: 4
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    functionUses: 21
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:884,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1662
    functionLinenumberEnd: 1692
    functionDepth: 3
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].nioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].flip()"
    functionUses: 20
    ICount: 33
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1671"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1679"
        BranchSideFuncs:
        - "idx(int)"
        - "nioBuffer(int,int)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1678"
        BranchSideFuncs:
        - "nioBuffers(int,int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1681"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1685"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1684"
        BranchSideFuncs:
        - "allocate(int)"
        - "order()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1686"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1689"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1663,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1671,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.buffer.CompositeByteBuf:1672,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1672,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1679,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1685,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1685,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].order()"
    - Src: "io.netty.buffer.CompositeByteBuf:1685,1"
      Dst: "[java.nio.ByteBuffer].order(java.nio.ByteOrder)"
    - Src: "io.netty.buffer.CompositeByteBuf:1687,1"
      Dst: "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.CompositeByteBuf:1690,1"
      Dst: "[java.nio.ByteBuffer].flip()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 888
    functionLinenumberEnd: 890
    functionDepth: 3
    returnType: "java.nio.ByteBuffer[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    functionUses: 24
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:889,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].consolidate()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].consolidate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:894,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].consolidate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].consolidate()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.CompositeByteBuf].consolidate0(int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1733,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.CompositeByteBuf:1734,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].consolidate0(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].consolidate(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].consolidate(int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:900,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].consolidate(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].consolidate(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].consolidate0(int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1745,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1746,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].consolidate0(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].discardReadComponents()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 905
    functionLinenumberEnd: 908
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].discardReadComponents()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].discardReadComponents()"
    - "[io.netty.buffer.CompositeByteBuf].discardReadComponents()"
    functionUses: 3
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:906,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].discardReadComponents()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].discardReadComponents()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1774
    functionLinenumberEnd: 1819
    functionDepth: 2
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf$Component].free()"
    - "[io.netty.buffer.CompositeByteBuf].clearComps()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].adjustMarkers(int)"
    - "[io.netty.buffer.CompositeByteBuf].removeCompRange(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].updateComponentOffsets(int)"
    functionUses: 2
    ICount: 49
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1777"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1782"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1781"
        BranchSideFuncs:
        - "capacity()"
        - "writerIndex()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1783"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1795"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1794"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1783"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1795"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1794"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1784"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1786"
        BranchSideFuncs:
        - "clearComps()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1797"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1804"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1803"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1799"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1804"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1807"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1806"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1808"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1811"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1810"
        BranchSideFuncs:
        - "updateComponentOffsets(int)"
        - "removeCompRange(int,int)"
        - "setIndex(int,int)"
        - "adjustMarkers(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1808"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1811"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1810"
        BranchSideFuncs:
        - "updateComponentOffsets(int)"
        - "removeCompRange(int,int)"
        - "setIndex(int,int)"
        - "adjustMarkers(int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1775,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.CompositeByteBuf:1776,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - Src: "io.netty.buffer.CompositeByteBuf:1782,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - Src: "io.netty.buffer.CompositeByteBuf:1783,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].capacity()"
    - Src: "io.netty.buffer.CompositeByteBuf:1785,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].free()"
    - Src: "io.netty.buffer.CompositeByteBuf:1788,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].clearComps()"
    - Src: "io.netty.buffer.CompositeByteBuf:1789,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1790,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].adjustMarkers(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1811,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].removeCompRange(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1815,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].updateComponentOffsets(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 7
  - functionName: "[io.netty.buffer.CompositeByteBuf].clearComps()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2310
    functionLinenumberEnd: 2313
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].removeCompRange(int,int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2311,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].removeCompRange(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setIndex(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1976
    functionLinenumberEnd: 1979
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    functionUses: 19
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1977,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].discardReadBytes()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 911
    functionLinenumberEnd: 914
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].discardReadBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].discardReadBytes()"
    - "[io.netty.buffer.CompositeByteBuf].discardReadBytes()"
    functionUses: 6
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:912,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].discardReadBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].discardReadBytes()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1822
    functionLinenumberEnd: 1876
    functionDepth: 2
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf$Component].free()"
    - "[io.netty.buffer.CompositeByteBuf].clearComps()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].adjustMarkers(int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].access$100(io.netty.buffer.CompositeByteBuf$Component)"
    - "[io.netty.buffer.CompositeByteBuf$Component].access$102(io.netty.buffer.CompositeByteBuf$Component,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf$Component].length()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].slice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].slice(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].slice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].slice(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].removeCompRange(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].updateComponentOffsets(int)"
    - "[io.netty.buffer.ByteBuf].slice(int,int)"
    functionUses: 5
    ICount: 62
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1825"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1830"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1829"
        BranchSideFuncs:
        - "writerIndex()"
        - "capacity()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1831"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1842"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1841"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1831"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1842"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1841"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1832"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1834"
        BranchSideFuncs:
        - "clearComps()"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1844"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1853"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1852"
        BranchSideFuncs:
        - "access$100(io.netty.buffer.CompositeByteBuf$Component)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1846"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1859"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1863"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1865"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1869"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1868"
        BranchSideFuncs:
        - "updateComponentOffsets(int)"
        - "removeCompRange(int,int)"
        - "setIndex(int,int)"
        - "adjustMarkers(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1865"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1869"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1868"
        BranchSideFuncs:
        - "updateComponentOffsets(int)"
        - "removeCompRange(int,int)"
        - "setIndex(int,int)"
        - "adjustMarkers(int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1823,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.CompositeByteBuf:1824,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - Src: "io.netty.buffer.CompositeByteBuf:1830,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - Src: "io.netty.buffer.CompositeByteBuf:1831,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].capacity()"
    - Src: "io.netty.buffer.CompositeByteBuf:1833,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].free()"
    - Src: "io.netty.buffer.CompositeByteBuf:1836,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].clearComps()"
    - Src: "io.netty.buffer.CompositeByteBuf:1837,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1838,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].adjustMarkers(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1858,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].access$100(io.netty.buffer.CompositeByteBuf$Component)"
    - Src: "io.netty.buffer.CompositeByteBuf:1862,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].length()"
    - Src: "io.netty.buffer.CompositeByteBuf:1862,1"
      Dst: "[io.netty.buffer.ByteBuf].slice(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1862,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].access$102(io.netty.buffer.CompositeByteBuf$Component,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.CompositeByteBuf:1869,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].removeCompRange(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1872,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].updateComponentOffsets(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 8
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].toString()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 917
    functionLinenumberEnd: 919
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString()"
    - "[io.netty.buffer.CompositeByteBuf].toString()"
    functionUses: 22
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:918,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].toString()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1883
    functionLinenumberEnd: 1887
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].toString()"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 22
    ICount: 14
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1884,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].toString()"
    - Src: "io.netty.buffer.CompositeByteBuf:1885,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.buffer.CompositeByteBuf:1885,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1886,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.CompositeByteBuf:1886,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.CompositeByteBuf:1886,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1886,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.buffer.CompositeByteBuf:1886,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 922
    functionLinenumberEnd: 925
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    functionUses: 53
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:923,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 928
    functionLinenumberEnd: 931
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    functionUses: 52
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:929,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setIndex(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 934
    functionLinenumberEnd: 937
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIndex(int,int)"
    functionUses: 19
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:935,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].clear()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 940
    functionLinenumberEnd: 943
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].clear()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].clear()"
    functionUses: 10
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:941,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].clear()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1982
    functionLinenumberEnd: 1985
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].clear()"
    functionUses: 10
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1983,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].markReaderIndex()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 946
    functionLinenumberEnd: 949
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].markReaderIndex()"
    functionUses: 12
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:947,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].markReaderIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].markReaderIndex()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1988
    functionLinenumberEnd: 1991
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].markReaderIndex()"
    functionUses: 12
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1989,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].markReaderIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].resetReaderIndex()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 952
    functionLinenumberEnd: 955
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].resetReaderIndex()"
    functionUses: 16
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:953,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].resetReaderIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].resetReaderIndex()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1994
    functionLinenumberEnd: 1997
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].resetReaderIndex()"
    functionUses: 16
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1995,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].resetReaderIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].markWriterIndex()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].markWriterIndex()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:959,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].markWriterIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].markWriterIndex()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].markWriterIndex()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2001,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].markWriterIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].resetWriterIndex()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].resetWriterIndex()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:965,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].resetWriterIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].resetWriterIndex()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].resetWriterIndex()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2007,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].resetWriterIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 970
    functionLinenumberEnd: 973
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    functionUses: 29
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:971,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2012
    functionLinenumberEnd: 2015
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2013,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:977,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2019,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.buffer.CompositeByteBuf:2019,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2024,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.buffer.CompositeByteBuf:2024,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:2025,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:983,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[])"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 988
    functionLinenumberEnd: 991
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[])"
    functionUses: 13
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:989,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[])"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2030
    functionLinenumberEnd: 2032
    functionDepth: 2
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[],int,int)"
    functionUses: 12
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2031,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setBoolean(int,boolean)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].setBoolean(int,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:995,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setBoolean(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setBoolean(int,boolean)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:2036"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2035"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2036,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setChar(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].setChar(int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1001,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setChar(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setChar(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2041,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setFloat(int,float)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].setFloat(int,float)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1007,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setFloat(int,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setFloat(int,float)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Float].floatToRawIntBits(float)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2046,1"
      Dst: "[java.lang.Float].floatToRawIntBits(float)"
    - Src: "io.netty.buffer.CompositeByteBuf:2046,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setDouble(int,double)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].setDouble(int,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1013,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setDouble(int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setDouble(int,double)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].doubleToRawLongBits(double)"
    - "[io.netty.buffer.CompositeByteBuf].setLong(int,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2051,1"
      Dst: "[java.lang.Double].doubleToRawLongBits(double)"
    - Src: "io.netty.buffer.CompositeByteBuf:2051,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1019,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2056,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.CompositeByteBuf:2056,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1025,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2062,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,byte[])"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1030
    functionLinenumberEnd: 1033
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,byte[])"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,byte[])"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1031,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setBytes(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setBytes(int,byte[])"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2067
    functionLinenumberEnd: 2069
    functionDepth: 2
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,byte[],int,int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2068,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setZero(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1036
    functionLinenumberEnd: 1039
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].setZero(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setZero(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setZero(int,int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1037,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setZero(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setZero(int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2072
    functionLinenumberEnd: 2075
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].setZero(int,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2073,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setZero(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1042
    functionLinenumberEnd: 1045
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    functionUses: 6
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1043,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2078
    functionLinenumberEnd: 2081
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    functionUses: 5
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2079,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.buffer.CompositeByteBuf:2079,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1048
    functionLinenumberEnd: 1051
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    functionUses: 17
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1049,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2084
    functionLinenumberEnd: 2087
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2085,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1054
    functionLinenumberEnd: 1057
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1055,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2090
    functionLinenumberEnd: 2093
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2091,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(byte[])"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1060
    functionLinenumberEnd: 1063
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(byte[])"
    functionUses: 14
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1061,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].readBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].readBytes(byte[])"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2096
    functionLinenumberEnd: 2099
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readBytes(byte[],int,int)"
    functionUses: 13
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2097,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1066
    functionLinenumberEnd: 1069
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(byte[],int,int)"
    functionUses: 7
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1067,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].readBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].readBytes(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2102
    functionLinenumberEnd: 2105
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readBytes(byte[],int,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2103,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1072
    functionLinenumberEnd: 1075
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(java.nio.ByteBuffer)"
    functionUses: 5
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1073,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].readBytes(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].readBytes(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2108
    functionLinenumberEnd: 2111
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readBytes(java.nio.ByteBuffer)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2109,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readBytes(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1078
    functionLinenumberEnd: 1081
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.io.OutputStream,int)"
    functionUses: 8
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1079,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].readBytes(java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].readBytes(java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2114
    functionLinenumberEnd: 2117
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readBytes(java.io.OutputStream,int)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2115,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readBytes(java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1085,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[java.nio.channels.FileChannel].write(java.nio.ByteBuffer,long)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1147"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1150"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1149"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1151"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1153"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1154"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1156"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1146,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - Src: "io.netty.buffer.CompositeByteBuf:1148,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1148,1"
      Dst: "[java.nio.channels.FileChannel].write(java.nio.ByteBuffer,long)"
    - Src: "io.netty.buffer.CompositeByteBuf:1151,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1089
    functionLinenumberEnd: 1091
    functionDepth: 2
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionUses: 10
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1090,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1480
    functionLinenumberEnd: 1519
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[sun.nio.ch.FileChannelImpl].read(java.nio.ByteBuffer,long)"
    - "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[java.nio.channels.FileChannel].read(java.nio.ByteBuffer,long)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionUses: 9
    ICount: 38
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:1482"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1486"
        BranchSideFuncs:
        - "read(java.nio.ByteBuffer,long)"
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1485"
        BranchSideFuncs:
        - "toComponentIndex0(int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1491"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1495"
        BranchSideFuncs:
        - "idx(int)"
        - "setBytes(int,java.nio.channels.FileChannel,long,int)"
    - Branch String: "io.netty.buffer.CompositeByteBuf:1498"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1502"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1501"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1502"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1510"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1509"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1503"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1518"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1517"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1513"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1516"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1515"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:1516"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:1488"
        BranchSideFuncs:
        - "min(int,int)"
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:1481,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1483,1"
      Dst: "[java.nio.channels.FileChannel].read(java.nio.ByteBuffer,long)"
    - Src: "io.netty.buffer.CompositeByteBuf:1486,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].toComponentIndex0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1490,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1496,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].idx(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:1496,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 6
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].isReadOnly()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1094
    functionLinenumberEnd: 1096
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadOnly()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].isReadOnly()"
    - "[io.netty.buffer.AbstractByteBuf].isReadOnly()"
    functionUses: 10
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1095,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].isReadOnly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].asReadOnly()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1099
    functionLinenumberEnd: 1101
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].asReadOnly()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].asReadOnly()"
    - "[io.netty.buffer.AbstractByteBuf].asReadOnly()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].asReadOnly()"
    functionUses: 16
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1100,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].asReadOnly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].newSwappedByteBuf()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1104
    functionLinenumberEnd: 1106
    functionDepth: 0
    returnType: "io.netty.buffer.SwappedByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].newSwappedByteBuf()"
    - "[io.netty.buffer.AbstractByteBuf].newSwappedByteBuf()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1105,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].newSwappedByteBuf()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].getCharSequence(int,int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].getCharSequence(int,int,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1110,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].getCharSequence(int,int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readCharSequence(int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readCharSequence(int,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1115,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readCharSequence(int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1119
    functionLinenumberEnd: 1121
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1120,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readBytes(java.nio.channels.FileChannel,long,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1125,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readBytes(java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1129
    functionLinenumberEnd: 1131
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1130,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1134
    functionLinenumberEnd: 1136
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    functionUses: 26
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1135,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1139
    functionLinenumberEnd: 1142
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    functionUses: 122
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1140,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2120
    functionLinenumberEnd: 2123
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    functionUses: 121
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2121,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeBoolean(boolean)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].writeBoolean(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1146,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writeBoolean(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].writeBoolean(boolean)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:2127"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2127"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2126"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2127,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2132
    functionLinenumberEnd: 2136
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable0(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    functionUses: 201
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2133,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureWritable0(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:2134,1"
      Dst: "[io.netty.buffer.CompositeByteBuf]._setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1151
    functionLinenumberEnd: 1154
    functionDepth: 4
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    functionUses: 202
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1152,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1157
    functionLinenumberEnd: 1160
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    functionUses: 98
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1158,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2139
    functionLinenumberEnd: 2142
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    functionUses: 97
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2140,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeMedium(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1163
    functionLinenumberEnd: 1166
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeMedium(int)"
    functionUses: 13
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1164,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writeMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].writeMedium(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2145
    functionLinenumberEnd: 2148
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writeMedium(int)"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2146,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1169
    functionLinenumberEnd: 1172
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    functionUses: 56
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1170,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2151
    functionLinenumberEnd: 2154
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    functionUses: 55
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2152,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeLong(long)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1175
    functionLinenumberEnd: 1178
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.CompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeLong(long)"
    functionUses: 14
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1176,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writeLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].writeLong(long)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2157
    functionLinenumberEnd: 2160
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writeLong(long)"
    functionUses: 13
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2158,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeChar(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1181
    functionLinenumberEnd: 1184
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeChar(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeChar(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeChar(int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1182,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writeChar(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].writeChar(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2163
    functionLinenumberEnd: 2166
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2164,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeFloat(float)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].writeFloat(float)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1188,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writeFloat(float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].writeFloat(float)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Float].floatToRawIntBits(float)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2170,1"
      Dst: "[java.lang.Float].floatToRawIntBits(float)"
    - Src: "io.netty.buffer.CompositeByteBuf:2170,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeDouble(double)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].writeDouble(double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1194,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writeDouble(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].writeDouble(double)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Double].doubleToRawLongBits(double)"
    - "[io.netty.buffer.AbstractByteBuf].writeLong(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2176,1"
      Dst: "[java.lang.Double].doubleToRawLongBits(double)"
    - Src: "io.netty.buffer.CompositeByteBuf:2176,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1199
    functionLinenumberEnd: 1202
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionUses: 44
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1200,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2181
    functionLinenumberEnd: 2184
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 43
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2182,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.CompositeByteBuf:2182,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1205
    functionLinenumberEnd: 1208
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    functionUses: 13
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1206,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2187
    functionLinenumberEnd: 2190
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2188,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1211
    functionLinenumberEnd: 1214
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 32
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1212,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2193
    functionLinenumberEnd: 2196
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 31
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2194,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1217
    functionLinenumberEnd: 1220
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    functionUses: 44
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1218,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2199
    functionLinenumberEnd: 2202
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[],int,int)"
    functionUses: 43
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2200,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1223
    functionLinenumberEnd: 1226
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[],int,int)"
    functionUses: 16
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1224,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2205
    functionLinenumberEnd: 2208
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[],int,int)"
    functionUses: 15
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2206,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1229
    functionLinenumberEnd: 1232
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    functionUses: 9
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1230,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2211
    functionLinenumberEnd: 2214
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.ByteBuffer)"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2212,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].writeZero(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1235
    functionLinenumberEnd: 1238
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeZero(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeZero(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeZero(int)"
    functionUses: 7
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1236,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].writeZero(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].writeZero(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2217
    functionLinenumberEnd: 2220
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writeZero(int)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2218,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writeZero(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].retain(int)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1242,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].retain(int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2224,1"
      Dst: "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1247
    functionLinenumberEnd: 1250
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    functionUses: 65
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1248,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].retain()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2229
    functionLinenumberEnd: 2232
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    functionUses: 64
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2230,1"
      Dst: "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1253
    functionLinenumberEnd: 1256
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch()"
    - "[io.netty.buffer.CompositeByteBuf].touch()"
    functionUses: 21
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1254,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].touch()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2235
    functionLinenumberEnd: 2237
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 21
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1259
    functionLinenumberEnd: 1262
    functionDepth: 1
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf].touch(java.lang.Object)"
    functionUses: 28
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1260,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].touch(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2240
    functionLinenumberEnd: 2242
    functionDepth: 0
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 28
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1265
    functionLinenumberEnd: 1267
    functionDepth: 4
    returnType: "java.nio.ByteBuffer[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers()"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers()"
    functionUses: 9
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1266,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].nioBuffers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].nioBuffers()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2245
    functionLinenumberEnd: 2247
    functionDepth: 3
    returnType: "java.nio.ByteBuffer[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    functionUses: 8
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2246,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - Src: "io.netty.buffer.CompositeByteBuf:2246,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - Src: "io.netty.buffer.CompositeByteBuf:2246,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].discardSomeReadBytes()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1270
    functionLinenumberEnd: 1273
    functionDepth: 4
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.CompositeByteBuf].discardSomeReadBytes()"
    functionUses: 5
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1271,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].discardSomeReadBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].discardSomeReadBytes()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2250
    functionLinenumberEnd: 2252
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].discardReadComponents()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].discardReadComponents()"
    - "[io.netty.buffer.CompositeByteBuf].discardReadComponents()"
    functionUses: 4
    ICount: 3
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2251,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].discardReadComponents()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].deallocate()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1276
    functionLinenumberEnd: 1279
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].deallocate()"
    - "[io.netty.buffer.CompositeByteBuf].deallocate()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:1277,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].deallocate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].deallocate()"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: 2255
    functionLinenumberEnd: 2267
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf$Component].free()"
    functionUses: 2
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:2256"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2260"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2259"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:2263"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:2265"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:2264,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$Component].free()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].unwrap()"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 1281
    functionLinenumberEnd: 1283
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedCompositeByteBuf].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.WrappedCompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedCompositeByteBuf:32,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    functionSourceFile: "io.netty.channel.epoll.EpollDatagramChannel$1"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 186
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDatagramChannel].access$000(io.netty.channel.epoll.EpollDatagramChannel,java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 49
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDatagramChannel$1:184,1"
      Dst: "[io.netty.channel.epoll.EpollDatagramChannel].access$000(io.netty.channel.epoll.EpollDatagramChannel,java.net.InetAddress,java.net.NetworkInterface,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ClassResolvers].cacheDisabled(java.lang.ClassLoader)"
    functionSourceFile: "io.netty.handler.codec.serialization.ClassResolvers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.serialization.ClassResolver"
    argCount: 1
    argTypes:
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.serialization.ClassResolvers].defaultClassLoader(java.lang.ClassLoader)"
    - "[io.netty.handler.codec.serialization.ClassLoaderClassResolver].<init>(java.lang.ClassLoader)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:31,1"
      Dst: "[io.netty.handler.codec.serialization.ClassResolvers].defaultClassLoader(java.lang.ClassLoader)"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:31,1"
      Dst: "[io.netty.handler.codec.serialization.ClassLoaderClassResolver].<init>(java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ClassResolvers].defaultClassLoader(java.lang.ClassLoader)"
    functionSourceFile: "io.netty.handler.codec.serialization.ClassResolvers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.lang.ClassLoader"
    argCount: 1
    argTypes:
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getContextClassLoader()"
    - "[io.netty.util.internal.PlatformDependent].getClassLoader(java.lang.Class)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.serialization.ClassResolvers:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.serialization.ClassResolvers:93"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.serialization.ClassResolvers:92"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.serialization.ClassResolvers:94"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.serialization.ClassResolvers:98"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.serialization.ClassResolvers:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:93,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getContextClassLoader()"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:98,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getClassLoader(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ClassLoaderClassResolver].<init>(java.lang.ClassLoader)"
    functionSourceFile: "io.netty.handler.codec.serialization.ClassLoaderClassResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ClassLoaderClassResolver:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ClassResolvers].weakCachingResolver(java.lang.ClassLoader)"
    functionSourceFile: "io.netty.handler.codec.serialization.ClassResolvers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.serialization.ClassResolver"
    argCount: 1
    argTypes:
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.serialization.ClassResolvers].defaultClassLoader(java.lang.ClassLoader)"
    - "[io.netty.handler.codec.serialization.ClassLoaderClassResolver].<init>(java.lang.ClassLoader)"
    - "[java.util.HashMap].<init>()"
    - "[io.netty.handler.codec.serialization.WeakReferenceMap].<init>(java.util.Map)"
    - "[io.netty.handler.codec.serialization.CachingClassResolver].<init>(io.netty.handler.codec.serialization.ClassResolver,java.util.Map)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:43,1"
      Dst: "[io.netty.handler.codec.serialization.ClassResolvers].defaultClassLoader(java.lang.ClassLoader)"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:43,1"
      Dst: "[io.netty.handler.codec.serialization.ClassLoaderClassResolver].<init>(java.lang.ClassLoader)"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:43,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:43,1"
      Dst: "[io.netty.handler.codec.serialization.WeakReferenceMap].<init>(java.util.Map)"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:43,1"
      Dst: "[io.netty.handler.codec.serialization.CachingClassResolver].<init>(io.netty.handler.codec.serialization.ClassResolver,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.WeakReferenceMap].<init>(java.util.Map)"
    functionSourceFile: "io.netty.handler.codec.serialization.WeakReferenceMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.serialization.ReferenceMap].<init>(java.util.Map)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.WeakReferenceMap:25,1"
      Dst: "[io.netty.handler.codec.serialization.ReferenceMap].<init>(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ClassResolvers].softCachingResolver(java.lang.ClassLoader)"
    functionSourceFile: "io.netty.handler.codec.serialization.ClassResolvers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.serialization.ClassResolver"
    argCount: 1
    argTypes:
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.serialization.ClassResolvers].defaultClassLoader(java.lang.ClassLoader)"
    - "[io.netty.handler.codec.serialization.ClassLoaderClassResolver].<init>(java.lang.ClassLoader)"
    - "[java.util.HashMap].<init>()"
    - "[io.netty.handler.codec.serialization.SoftReferenceMap].<init>(java.util.Map)"
    - "[io.netty.handler.codec.serialization.CachingClassResolver].<init>(io.netty.handler.codec.serialization.ClassResolver,java.util.Map)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:56,1"
      Dst: "[io.netty.handler.codec.serialization.ClassResolvers].defaultClassLoader(java.lang.ClassLoader)"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:56,1"
      Dst: "[io.netty.handler.codec.serialization.ClassLoaderClassResolver].<init>(java.lang.ClassLoader)"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:56,1"
      Dst: "[java.util.HashMap].<init>()"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:56,1"
      Dst: "[io.netty.handler.codec.serialization.SoftReferenceMap].<init>(java.util.Map)"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:56,1"
      Dst: "[io.netty.handler.codec.serialization.CachingClassResolver].<init>(io.netty.handler.codec.serialization.ClassResolver,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.SoftReferenceMap].<init>(java.util.Map)"
    functionSourceFile: "io.netty.handler.codec.serialization.SoftReferenceMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.serialization.ReferenceMap].<init>(java.util.Map)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.SoftReferenceMap:25,1"
      Dst: "[io.netty.handler.codec.serialization.ReferenceMap].<init>(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ClassResolvers].weakCachingConcurrentResolver(java.lang.ClassLoader)"
    functionSourceFile: "io.netty.handler.codec.serialization.ClassResolvers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.serialization.ClassResolver"
    argCount: 1
    argTypes:
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.serialization.ClassResolvers].defaultClassLoader(java.lang.ClassLoader)"
    - "[io.netty.handler.codec.serialization.ClassLoaderClassResolver].<init>(java.lang.ClassLoader)"
    - "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - "[io.netty.handler.codec.serialization.WeakReferenceMap].<init>(java.util.Map)"
    - "[io.netty.handler.codec.serialization.CachingClassResolver].<init>(io.netty.handler.codec.serialization.ClassResolver,java.util.Map)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:69,1"
      Dst: "[io.netty.handler.codec.serialization.ClassResolvers].defaultClassLoader(java.lang.ClassLoader)"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:69,1"
      Dst: "[io.netty.handler.codec.serialization.ClassLoaderClassResolver].<init>(java.lang.ClassLoader)"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:71,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:71,1"
      Dst: "[io.netty.handler.codec.serialization.WeakReferenceMap].<init>(java.util.Map)"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:71,1"
      Dst: "[io.netty.handler.codec.serialization.CachingClassResolver].<init>(io.netty.handler.codec.serialization.ClassResolver,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 474
    functionLinenumberEnd: 476
    functionDepth: 0
    returnType: "java.util.concurrent.ConcurrentMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].<init>()"
    functionUses: 6
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:475,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ClassResolvers].softCachingConcurrentResolver(java.lang.ClassLoader)"
    functionSourceFile: "io.netty.handler.codec.serialization.ClassResolvers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.serialization.ClassResolver"
    argCount: 1
    argTypes:
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.serialization.ClassResolvers].defaultClassLoader(java.lang.ClassLoader)"
    - "[io.netty.handler.codec.serialization.ClassLoaderClassResolver].<init>(java.lang.ClassLoader)"
    - "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - "[io.netty.handler.codec.serialization.SoftReferenceMap].<init>(java.util.Map)"
    - "[io.netty.handler.codec.serialization.CachingClassResolver].<init>(io.netty.handler.codec.serialization.ClassResolver,java.util.Map)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:83,1"
      Dst: "[io.netty.handler.codec.serialization.ClassResolvers].defaultClassLoader(java.lang.ClassLoader)"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:83,1"
      Dst: "[io.netty.handler.codec.serialization.ClassLoaderClassResolver].<init>(java.lang.ClassLoader)"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:85,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:85,1"
      Dst: "[io.netty.handler.codec.serialization.SoftReferenceMap].<init>(java.util.Map)"
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:85,1"
      Dst: "[io.netty.handler.codec.serialization.CachingClassResolver].<init>(io.netty.handler.codec.serialization.ClassResolver,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ClassResolvers].<init>()"
    functionSourceFile: "io.netty.handler.codec.serialization.ClassResolvers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ClassResolvers:101,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$4].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$4"
    linkageType: ""
    functionLinenumber: 823
    functionLinenumberEnd: 826
    functionDepth: 13
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$1100(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$4:824,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$1100(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$4].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$4"
    linkageType: ""
    functionLinenumber: 820
    functionLinenumberEnd: 822
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$4].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$4:821,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$4].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackHuffmanDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHuffmanDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4675,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackHuffmanDecoder].decode(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHuffmanDecoder"
    linkageType: ""
    functionLinenumber: 4684
    functionLinenumberEnd: 4712
    functionDepth: 2
    returnType: "io.netty.util.AsciiString"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.SlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.DuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ReadOnlyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.util.AsciiString].<init>(byte[],int,int,boolean)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 1
    ICount: 37
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4685"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4688"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4687"
        BranchSideFuncs:
        - "forEachByte(int,int,io.netty.util.ByteProcessor)"
        - "readerIndex()"
    - Branch String: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4694"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4705"
        BranchSideFuncs:
        - "forEachByte(int,int,io.netty.util.ByteProcessor)"
        - "<init>(byte[],int,int,boolean)"
        - "readerIndex()"
        - "readerIndex(int)"
      - BranchSide: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4704"
        BranchSideFuncs:
        - "readerIndex(int)"
    - Branch String: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4697"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4700"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4699"
        BranchSideFuncs:
        - "<init>(byte[],int,int,boolean)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4690,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4693,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - Src: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4696,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - Src: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4700,1"
      Dst: "[io.netty.util.AsciiString].<init>(byte[],int,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackHuffmanDecoder].process(byte)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHuffmanDecoder"
    linkageType: ""
    functionLinenumber: 4718
    functionLinenumberEnd: 4720
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackHuffmanDecoder].processNibble(int)"
    functionUses: 2
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4719"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4718"
        BranchSideFuncs:
        - "processNibble(int)"
    - Branch String: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4719"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4718"
        BranchSideFuncs:
        - "processNibble(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4719,1"
      Dst: "[io.netty.handler.codec.http2.HpackHuffmanDecoder].processNibble(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.HpackHuffmanDecoder].processNibble(int)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHuffmanDecoder"
    linkageType: ""
    functionLinenumber: 4724
    functionLinenumberEnd: 4735
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4727"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4730"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4729"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4730"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackHuffmanDecoder:4733"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpStatusClass].values()"
    functionSourceFile: "io.netty.handler.codec.http.HttpStatusClass"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpStatusClass[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpStatusClass:24,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpStatusClass].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpStatusClass"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpStatusClass"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpStatusClass:24,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpStatusClass].<init>(java.lang.String,int,int,int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.HttpStatusClass"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    - "[io.netty.util.AsciiString].cached(java.lang.String)"
    functionUses: 6
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpStatusClass:102,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    - Src: "io.netty.handler.codec.http.HttpStatusClass:105,1"
      Dst: "[io.netty.util.AsciiString].cached(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpStatusClass].<init>(java.lang.String,int,int,int,java.lang.String,io.netty.handler.codec.http.HttpStatusClass$1)"
    functionSourceFile: "io.netty.handler.codec.http.HttpStatusClass"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    - "int"
    - "java.lang.String"
    - "io.netty.handler.codec.http.HttpStatusClass$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpStatusClass].<init>(java.lang.String,int,int,int,java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpStatusClass:24,1"
      Dst: "[io.netty.handler.codec.http.HttpStatusClass].<init>(java.lang.String,int,int,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequests].helo(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequests"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.smtp.SmtpRequest"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:43,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.smtp.SmtpCommand"
    - "java.lang.CharSequence[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.smtp.SmtpUtils].toUnmodifiableList(java.lang.CharSequence[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpRequest:44,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpRequest:45,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpRequest:46,1"
      Dst: "[io.netty.handler.codec.smtp.SmtpUtils].toUnmodifiableList(java.lang.CharSequence[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpUtils].toUnmodifiableList(java.lang.CharSequence[])"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptyList()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.smtp.SmtpUtils:25"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpUtils:26"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpUtils:25"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.SmtpUtils:25"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpUtils:28"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpUtils:27"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpUtils:26,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.codec.smtp.SmtpUtils:28,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.handler.codec.smtp.SmtpUtils:28,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequests].ehlo(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequests"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.smtp.SmtpRequest"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:50,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequests].empty(java.lang.CharSequence[])"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequests"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.smtp.SmtpRequest"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:57,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequests].auth(java.lang.CharSequence[])"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequests"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.smtp.SmtpRequest"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:64,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequests].noop()"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequests"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.smtp.SmtpRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequests].data()"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequests"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.smtp.SmtpRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequests].rset()"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequests"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.smtp.SmtpRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequests].help(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequests"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.smtp.SmtpRequest"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequests:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequests:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:92,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequests].quit()"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequests"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.smtp.SmtpRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequests].mail(java.lang.CharSequence,java.lang.CharSequence[])"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequests"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.smtp.SmtpRequest"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.util.List)"
    functionUses: 0
    ICount: 40
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequests:106"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequests:107"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequests:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequests:106"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequests:110"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequests:109"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequests:107"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequests:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequests:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequests:110"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequests:109"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:107,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:107,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:107,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:107,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:107,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:107,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:110,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:111,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:112,1"
      Dst: "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:113,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.smtp.DefaultSmtpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.smtp.SmtpCommand"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    - "[java.util.Collections].emptyList()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.smtp.DefaultSmtpRequest:58"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.DefaultSmtpRequest:56"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.DefaultSmtpRequest:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpRequest:56,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpRequest:57,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpRequest:59,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    - Src: "io.netty.handler.codec.smtp.DefaultSmtpRequest:58,1"
      Dst: "[java.util.Collections].emptyList()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequests].rcpt(java.lang.CharSequence,java.lang.CharSequence[])"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequests"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.smtp.SmtpRequest"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.util.List)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequests:122"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequests:123"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequests:122"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequests:122"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequests:125"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequests:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:121,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:123,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:123,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:123,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:123,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:123,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:123,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:125,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:126,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:127,1"
      Dst: "[java.util.Collections].addAll(java.util.Collection,java.lang.Object[])"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:128,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequests].expn(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequests"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.smtp.SmtpRequest"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:136,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:136,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequests].vrfy(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequests"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.smtp.SmtpRequest"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:143,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:143,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpRequest].<init>(io.netty.handler.codec.smtp.SmtpCommand,java.lang.CharSequence[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequests].<init>()"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequests"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpRequests:146,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:29,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,long)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,long,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:33,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,long,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "long"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:37,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "long"
    - "java.nio.charset.Charset"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,long,java.nio.charset.Charset,java.lang.String,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:41,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,long,java.nio.charset.Charset,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,long,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "long"
    - "long"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,long,java.nio.charset.Charset,java.lang.String,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:45,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,long,java.nio.charset.Charset,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,long,java.nio.charset.Charset,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "long"
    - "long"
    - "java.nio.charset.Charset"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,long,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].<init>(long,java.lang.String,boolean,io.netty.handler.codec.http.multipart.HttpData)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:51,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,long,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:51,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].<init>(long,java.lang.String,boolean,io.netty.handler.codec.http.multipart.HttpData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,java.lang.String,long)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:56,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,java.lang.String,long,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "long"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:61,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].makeInitialAttributeFromValue(java.lang.String,java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "long"
    - "java.nio.charset.Charset"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.lang.String,java.nio.charset.Charset,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,java.lang.String,java.nio.charset.Charset)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.MixedAttribute:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.MixedAttribute:79"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:67,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:69,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.lang.String,java.nio.charset.Charset,java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:73,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,java.lang.String,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:75,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,java.lang.String,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].<init>(java.lang.String,java.nio.charset.Charset,long)"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].setValue(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:54,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].<init>(java.lang.String,java.nio.charset.Charset,long)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:55,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryAttribute].setValue(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].setValue(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getCharset()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].checkSize(long)"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].setContent(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.MemoryAttribute:74"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:77"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:70,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:71,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getCharset()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:71,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:72,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].checkSize(long)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:73,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:75,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:77,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].setContent(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "long"
    - "java.nio.charset.Charset"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].makeInitialAttributeFromValue(java.lang.String,java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].<init>(long,java.lang.String,boolean,io.netty.handler.codec.http.multipart.HttpData)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:90,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedAttribute].makeInitialAttributeFromValue(java.lang.String,java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:89,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].<init>(long,java.lang.String,boolean,io.netty.handler.codec.http.multipart.HttpData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].getValue()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.Attribute].getValue()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:95,1"
      Dst: "[io.netty.handler.codec.http.multipart.Attribute].getValue()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].setValue(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.Attribute].setValue(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:100,1"
      Dst: "[io.netty.handler.codec.http.multipart.Attribute].setValue(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].makeDiskData()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].getName()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].definedLength()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,long,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].getMaxSize()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].setMaxSize(long)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:105,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedAttribute].getName()"
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:105,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedAttribute].definedLength()"
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:105,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,long,java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:106,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedAttribute].getMaxSize()"
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:106,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].setMaxSize(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].getName()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getName()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].definedLength()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].definedLength()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].definedLength()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].getMaxSize()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getMaxSize()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getMaxSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].copy()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].copy()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:113,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].duplicate()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].duplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:119,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:125,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].retain()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 132
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].retain()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:131,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:137,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].retainedDuplicate()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:143,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].touch()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].touch()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:149,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].touch(java.lang.Object)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:155,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].getFile()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getFile()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getFile()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].getChunk(int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getChunk(int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getChunk(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].toString()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    functionUses: 20
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].equals(java.lang.Object)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].hashCode()"
    functionUses: 6
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].getHttpDataType()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData$HttpDataType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getHttpDataType()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getHttpDataType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].isCompleted()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].isCompleted()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].isCompleted()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].setContent(java.io.InputStream)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setContent(java.io.InputStream)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setContent(java.io.InputStream)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].setContent(java.io.File)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setContent(java.io.File)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setContent(java.io.File)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].setContent(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setContent(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setContent(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].setCharset(java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setCharset(java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setCharset(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].renameTo(java.io.File)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].renameTo(java.io.File)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].renameTo(java.io.File)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].length()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].length()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].isInMemory()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].isInMemory()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].isInMemory()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].getString(java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getString(java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getString(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].getString()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getString()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getString()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].getByteBuf()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getByteBuf()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getByteBuf()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].get()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].get()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].get()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].delete()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].delete()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].delete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].addContent(io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].addContent(io.netty.buffer.ByteBuf,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].addContent(io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].getCharset()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.nio.charset.Charset"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getCharset()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].getCharset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].checkSize(long)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].checkSize(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].checkSize(long)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].content()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].content()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].content()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MixedAttribute].setMaxSize(long)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MixedAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setMaxSize(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MixedAttribute:27,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].setMaxSize(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspRequestDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.rtsp.RtspDecoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspRequestDecoder:22,1"
      Dst: "[io.netty.handler.codec.rtsp.RtspDecoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.SelectorProviderUtil].findOpenMethod(java.lang.String)"
    functionSourceFile: "io.netty.channel.socket.nio.SelectorProviderUtil"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 45
    functionDepth: 2
    returnType: "java.lang.reflect.Method"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 12
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.SelectorProviderUtil:37"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.SelectorProviderUtil:43"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.SelectorProviderUtil:37,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.socket.nio.SelectorProviderUtil:39,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "io.netty.channel.socket.nio.SelectorProviderUtil:41,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.SelectorProviderUtil].newChannel(java.lang.reflect.Method,java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.channel.socket.nio.SelectorProviderUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.nio.channels.Channel"
    argCount: 3
    argTypes:
    - "java.lang.reflect.Method"
    - "java.nio.channels.spi.SelectorProvider"
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.ProtocolFamilyConverter].convert(io.netty.channel.socket.InternetProtocolFamily)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.io.IOException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.SelectorProviderUtil:56"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.SelectorProviderUtil:67"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.SelectorProviderUtil:56"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.SelectorProviderUtil:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.SelectorProviderUtil:60,1"
      Dst: "[io.netty.channel.socket.nio.ProtocolFamilyConverter].convert(io.netty.channel.socket.InternetProtocolFamily)"
    - Src: "io.netty.channel.socket.nio.SelectorProviderUtil:59,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.channel.socket.nio.SelectorProviderUtil:63,1"
      Dst: "[java.io.IOException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.SelectorProviderUtil].<init>()"
    functionSourceFile: "io.netty.channel.socket.nio.SelectorProviderUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.SelectorProviderUtil:71,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop$1].<init>(io.netty.channel.nio.NioEventLoop)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.nio.NioEventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$1:70,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop$1].get()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$1"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoop].selectNow()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$1:73,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].selectNow()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop].selectNow()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 873
    functionLinenumberEnd: 875
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].selectNow()"
    - "[java.nio.channels.Selector].selectNow()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:874,1"
      Dst: "[java.nio.channels.Selector].selectNow()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1"
    linkageType: ""
    functionLinenumber: 1325
    functionLinenumberEnd: 1398
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.resolver.dns.DnsNameResolver].access$000()"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.resolver.dns.DnsQueryContext].finish(io.netty.channel.AddressedEnvelope)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.CompleteChannelFuture].channel()"
    - "[io.netty.channel.DefaultChannelPromise].channel()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].channel()"
    - "[io.netty.channel.VoidChannelPromise].channel()"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].newPromise()"
    - "[io.netty.resolver.dns.DnsQueryContext].question()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].remoteAddress()"
    - "[io.netty.channel.rxtx.RxtxChannel].remoteAddress()"
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].remoteAddress()"
    - "[io.netty.channel.local.LocalServerChannel].remoteAddress()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].remoteAddress()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].remoteAddress()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].remoteAddress()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].remoteAddress()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].remoteAddress()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].remoteAddress()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].remoteAddress()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].remoteAddress()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].remoteAddress()"
    - "[io.netty.channel.local.LocalChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].remoteAddress()"
    - "[io.netty.channel.epoll.EpollSocketChannel].remoteAddress()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].remoteAddress()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].remoteAddress()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].remoteAddress()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].remoteAddress()"
    - "[io.netty.channel.AbstractServerChannel].remoteAddress()"
    - "[io.netty.resolver.dns.TcpDnsQueryContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.channel.Channel,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
    - "[io.netty.resolver.dns.DnsNameResolver].access$800()"
    - "[io.netty.handler.codec.dns.TcpDnsResponseDecoder].<init>()"
    - "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1].<init>(io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1,io.netty.resolver.dns.TcpDnsQueryContext)"
    - "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$2].<init>(io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1,io.netty.channel.Channel)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].newPromise()"
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.resolver.dns.DnsQueryContext].query(boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.ChannelFuture].channel()"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[io.netty.channel.Channel].remoteAddress()"
    - "[io.netty.channel.Channel].pipeline()"
    - "[io.netty.channel.ChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    functionUses: 1
    ICount: 47
    EdgeCount: 91
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1326"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1335"
        BranchSideFuncs:
        - "isDebugEnabled()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1334"
        BranchSideFuncs:
        - "channel()"
        - "question()"
        - "<init>(io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1,io.netty.resolver.dns.TcpDnsQueryContext)"
        - "query(boolean,io.netty.channel.ChannelPromise)"
        - "access$800()"
        - "addLast(io.netty.channel.ChannelHandler[])"
        - "<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.channel.Channel,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
        - "newPromise()"
        - "pipeline()"
        - "<init>()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "eventLoop()"
        - "<init>(io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1,io.netty.channel.Channel)"
        - "remoteAddress()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1327"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1332"
        BranchSideFuncs:
        - "access$000()"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "cause()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1331"
        BranchSideFuncs:
        - "finish(io.netty.channel.AddressedEnvelope)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1326,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1327,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].access$000()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1327,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1328,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1328,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1328,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1332,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].finish(io.netty.channel.AddressedEnvelope)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1335,1"
      Dst: "[io.netty.channel.ChannelFuture].channel()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1338,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1338,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1340,1"
      Dst: "[io.netty.channel.Channel].remoteAddress()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1340,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].question()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1341,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].access$800()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1341,1"
      Dst: "[io.netty.resolver.dns.TcpDnsQueryContext].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.channel.Channel,java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,io.netty.handler.codec.dns.DnsRecord[],io.netty.util.concurrent.Promise)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1343,1"
      Dst: "[io.netty.channel.Channel].pipeline()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1343,1"
      Dst: "[io.netty.handler.codec.dns.TcpDnsResponseDecoder].<init>()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1343,1"
      Dst: "[io.netty.channel.ChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1344,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$1].<init>(io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1,io.netty.resolver.dns.TcpDnsQueryContext)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1380,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1$2].<init>(io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1,io.netty.channel.Channel)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1380,1"
      Dst: "[io.netty.util.concurrent.Promise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1396,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1396,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].query(boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.dns.TcpDnsResponseDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsResponseDecoder"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.TcpDnsResponseDecoder].<init>(io.netty.handler.codec.dns.DnsRecordDecoder,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsResponseDecoder:34,1"
      Dst: "[io.netty.handler.codec.dns.TcpDnsResponseDecoder].<init>(io.netty.handler.codec.dns.DnsRecordDecoder,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.TcpDnsResponseDecoder].<init>(io.netty.handler.codec.dns.DnsRecordDecoder,int)"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsResponseDecoder"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 53
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecordDecoder"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].<init>(int,int,int,int,int)"
    - "[io.netty.handler.codec.dns.TcpDnsResponseDecoder$1].<init>(io.netty.handler.codec.dns.TcpDnsResponseDecoder,io.netty.handler.codec.dns.DnsRecordDecoder)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsResponseDecoder:43,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].<init>(int,int,int,int,int)"
    - Src: "io.netty.handler.codec.dns.TcpDnsResponseDecoder:45,1"
      Dst: "[io.netty.handler.codec.dns.TcpDnsResponseDecoder$1].<init>(io.netty.handler.codec.dns.TcpDnsResponseDecoder,io.netty.handler.codec.dns.DnsRecordDecoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].<init>(int,int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.LengthFieldBasedFrameDecoder"
    linkageType: ""
    functionLinenumber: 239
    functionLinenumberEnd: 245
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].<init>(int,int,int,int,int,boolean)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:240,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].<init>(int,int,int,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].<init>(int,int,int,int,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.LengthFieldBasedFrameDecoder"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 276
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].<init>(java.nio.ByteOrder,int,int,int,int,int,boolean)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:272,1"
      Dst: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].<init>(java.nio.ByteOrder,int,int,int,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.LengthFieldBasedFrameDecoder].<init>(java.nio.ByteOrder,int,int,int,int,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.LengthFieldBasedFrameDecoder"
    linkageType: ""
    functionLinenumber: 303
    functionLinenumberEnd: 330
    functionDepth: 1
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.nio.ByteOrder"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 41
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:314"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:322"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:321"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:304,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:306,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:308,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:310,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:315,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:315,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:315,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:315,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.LengthFieldBasedFrameDecoder:315,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1"
    linkageType: ""
    functionLinenumber: 1322
    functionLinenumberEnd: 1324
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1:1323,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$DnsResponseHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].<init>()"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:88,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].toHexStringPadded(byte[])"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.StringUtil].toHexStringPadded(byte[],int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:153,1"
      Dst: "[io.netty.util.internal.StringUtil].toHexStringPadded(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].toHexStringPadded(byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[io.netty.util.internal.StringUtil].toHexStringPadded(java.lang.Appendable,byte[],int,int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:160,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.util.internal.StringUtil:160,1"
      Dst: "[io.netty.util.internal.StringUtil].toHexStringPadded(java.lang.Appendable,byte[],int,int)"
    - Src: "io.netty.util.internal.StringUtil:160,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].toHexStringPadded(java.lang.Appendable,byte[])"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "java.lang.Appendable"
    argCount: 2
    argTypes:
    - "java.lang.Appendable"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.StringUtil].toHexStringPadded(java.lang.Appendable,byte[],int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:167,1"
      Dst: "[io.netty.util.internal.StringUtil].toHexStringPadded(java.lang.Appendable,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].toHexString(byte[])"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.StringUtil].toHexString(byte[],int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:204,1"
      Dst: "[io.netty.util.internal.StringUtil].toHexString(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].toHexString(byte[],int,int)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[io.netty.util.internal.StringUtil].toHexString(java.lang.Appendable,byte[],int,int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:211,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.util.internal.StringUtil:211,1"
      Dst: "[io.netty.util.internal.StringUtil].toHexString(java.lang.Appendable,byte[],int,int)"
    - Src: "io.netty.util.internal.StringUtil:211,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].toHexString(java.lang.Appendable,byte[])"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "java.lang.Appendable"
    argCount: 2
    argTypes:
    - "java.lang.Appendable"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.StringUtil].toHexString(java.lang.Appendable,byte[],int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:218,1"
      Dst: "[io.netty.util.internal.StringUtil].toHexString(java.lang.Appendable,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].decodeHexDump(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].decodeHexByte(java.lang.CharSequence,int)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:283"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:284"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:283"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:283"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:286"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:285"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:286"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:289"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:288"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:290"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:292"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:284,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.StringUtil:284,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.StringUtil:284,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.internal.StringUtil:284,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.StringUtil:284,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.StringUtil:291,1"
      Dst: "[io.netty.util.internal.StringUtil].decodeHexByte(java.lang.CharSequence,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.StringUtil].decodeHexDump(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[io.netty.util.internal.StringUtil].decodeHexDump(java.lang.CharSequence,int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:300,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.internal.StringUtil:300,1"
      Dst: "[io.netty.util.internal.StringUtil].decodeHexDump(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class<?>)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 318
    functionLinenumberEnd: 325
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Class].getName()"
    - "[java.lang.String].lastIndexOf(int)"
    - "[java.lang.String].substring(int)"
    functionUses: 57
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:321"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:324"
        BranchSideFuncs:
        - "substring(int)"
      - BranchSide: "io.netty.util.internal.StringUtil:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:319,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.StringUtil:319,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.util.internal.StringUtil:320,1"
      Dst: "[java.lang.String].lastIndexOf(int)"
    - Src: "io.netty.util.internal.StringUtil:322,1"
      Dst: "[java.lang.String].substring(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].escapeCsv(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.StringUtil].escapeCsv(java.lang.CharSequence,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:336,1"
      Dst: "[io.netty.util.internal.StringUtil].escapeCsv(java.lang.CharSequence,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.StringUtil].escapeCsv(java.lang.CharSequence,boolean)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 349
    functionLinenumberEnd: 425
    functionDepth: 2
    returnType: "java.lang.CharSequence"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[io.netty.util.internal.StringUtil].indexOfFirstNonOwsChar(java.lang.CharSequence,int)"
    - "[io.netty.util.internal.StringUtil].indexOfLastNonOwsChar(java.lang.CharSequence,int,int)"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.internal.StringUtil].isDoubleQuote(char)"
    - "[io.netty.util.internal.AppendableCharSequence].subSequence(int,int)"
    - "[java.lang.StringBuffer].subSequence(int,int)"
    - "[java.lang.String].subSequence(int,int)"
    - "[java.lang.StringBuilder].subSequence(int,int)"
    - "[io.netty.util.AsciiString].subSequence(int,int)"
    - "[java.lang.AbstractStringBuilder].subSequence(int,int)"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[java.lang.CharSequence].subSequence(int,int)"
    functionUses: 2
    ICount: 110
    EdgeCount: 92
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:353"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:357"
        BranchSideFuncs:
        - "indexOfFirstNonOwsChar(java.lang.CharSequence,int)"
        - "indexOfLastNonOwsChar(java.lang.CharSequence,int,int)"
      - BranchSide: "io.netty.util.internal.StringUtil:356"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:360"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:366"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:376"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:375"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:367"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:367"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:368"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:372"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:371"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:376"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:412"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:411"
        BranchSideFuncs:
        - "<init>(int)"
        - "append(java.lang.CharSequence,int,int)"
    - Branch String: "io.netty.util.internal.StringUtil:377"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:388"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:387"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:378"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:378"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:377"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:379"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:378"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:377"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:380"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:381"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:380"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:380"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:384"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:383"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:388"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:404"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:403"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:390"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:391"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:390"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:390"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:391"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:390"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:390"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:394"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:393"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:394"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:388"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:387"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:395"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:396"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:395"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:395"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:399"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:398"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:404"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:411"
        BranchSideFuncs:
        - "<init>(int)"
        - "append(java.lang.CharSequence,int,int)"
    - Branch String: "io.netty.util.internal.StringUtil:408"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:407"
        BranchSideFuncs:
        - "subSequence(int,int)"
    - Branch String: "io.netty.util.internal.StringUtil:414"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:424"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:423"
        BranchSideFuncs:
        - "append(char)"
    - Branch String: "io.netty.util.internal.StringUtil:416"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:null"
        BranchSideFuncs:
        - "isDoubleQuote(char)"
        - "charAt(int)"
    - Branch String: "io.netty.util.internal.StringUtil:418"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:418"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:350,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.StringUtil:350,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.internal.StringUtil:354,1"
      Dst: "[io.netty.util.internal.StringUtil].indexOfFirstNonOwsChar(java.lang.CharSequence,int)"
    - Src: "io.netty.util.internal.StringUtil:355,1"
      Dst: "[io.netty.util.internal.StringUtil].indexOfLastNonOwsChar(java.lang.CharSequence,int,int)"
    - Src: "io.netty.util.internal.StringUtil:366,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.internal.StringUtil:366,1"
      Dst: "[io.netty.util.internal.StringUtil].isDoubleQuote(char)"
    - Src: "io.netty.util.internal.StringUtil:408,1"
      Dst: "[java.lang.CharSequence].subSequence(int,int)"
    - Src: "io.netty.util.internal.StringUtil:412,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.util.internal.StringUtil:413,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.internal.StringUtil:413,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 49
    CyclomaticComplexity: 24
  - functionName: "[io.netty.util.internal.StringUtil].indexOfFirstNonOwsChar(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 684
    functionLinenumberEnd: 690
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.internal.StringUtil].isOws(char)"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 2
    ICount: 10
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:686"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:689"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:688"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:686"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:689"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:688"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:686,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.internal.StringUtil:686,1"
      Dst: "[io.netty.util.internal.StringUtil].isOws(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.StringUtil].isOws(char)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 703
    functionLinenumberEnd: 705
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:704"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:703"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:704"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:703"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.StringUtil].indexOfLastNonOwsChar(java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 695
    functionLinenumberEnd: 701
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[io.netty.util.internal.StringUtil].isOws(char)"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 2
    ICount: 12
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:697"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:700"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:699"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:697"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:700"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:699"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:697,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.internal.StringUtil:697,1"
      Dst: "[io.netty.util.internal.StringUtil].isOws(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.StringUtil].isDoubleQuote(char)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 618
    functionLinenumberEnd: 620
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:619"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:618"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.StringUtil].unescapeCsv(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.util.internal.StringUtil].isDoubleQuote(char)"
    - "[io.netty.util.internal.StringUtil].validateCsvFormat(java.lang.CharSequence)"
    - "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - "[io.netty.util.internal.InternalThreadLocalMap].stringBuilder()"
    - "[io.netty.util.internal.StringUtil].newInvalidEscapedCsvFieldException(java.lang.CharSequence,int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:437"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:440"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:439"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:441"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:441"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:441"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:442"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:446"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:445"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:447"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:461"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:460"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:449"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:450"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:455"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:450"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:455"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:436,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.StringUtil:436,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.internal.StringUtil:441,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.internal.StringUtil:441,1"
      Dst: "[io.netty.util.internal.StringUtil].isDoubleQuote(char)"
    - Src: "io.netty.util.internal.StringUtil:443,1"
      Dst: "[io.netty.util.internal.StringUtil].validateCsvFormat(java.lang.CharSequence)"
    - Src: "io.netty.util.internal.StringUtil:446,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - Src: "io.netty.util.internal.StringUtil:446,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].stringBuilder()"
    - Src: "io.netty.util.internal.StringUtil:456,1"
      Dst: "[io.netty.util.internal.StringUtil].newInvalidEscapedCsvFieldException(java.lang.CharSequence,int)"
    - Src: "io.netty.util.internal.StringUtil:459,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.internal.StringUtil:461,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 7
  - functionName: "[io.netty.util.internal.StringUtil].validateCsvFormat(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.util.internal.StringUtil].newInvalidEscapedCsvFieldException(java.lang.CharSequence,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:543"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:554"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:553"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:542,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.internal.StringUtil:544,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.internal.StringUtil:550,1"
      Dst: "[io.netty.util.internal.StringUtil].newInvalidEscapedCsvFieldException(java.lang.CharSequence,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.StringUtil].trimOws(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 641
    functionLinenumberEnd: 649
    functionDepth: 2
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.nio.CharBuffer].length()"
    - "[io.netty.util.internal.StringUtil].indexOfFirstNonOwsChar(java.lang.CharSequence,int)"
    - "[io.netty.util.internal.StringUtil].indexOfLastNonOwsChar(java.lang.CharSequence,int,int)"
    - "[io.netty.util.internal.AppendableCharSequence].subSequence(int,int)"
    - "[java.lang.StringBuffer].subSequence(int,int)"
    - "[java.lang.String].subSequence(int,int)"
    - "[java.lang.StringBuilder].subSequence(int,int)"
    - "[io.netty.util.AsciiString].subSequence(int,int)"
    - "[java.lang.AbstractStringBuilder].subSequence(int,int)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].subSequence(int,int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:643"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:646"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:645"
        BranchSideFuncs:
        - "subSequence(int,int)"
        - "indexOfFirstNonOwsChar(java.lang.CharSequence,int)"
        - "indexOfLastNonOwsChar(java.lang.CharSequence,int,int)"
    - Branch String: "io.netty.util.internal.StringUtil:648"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:645"
        BranchSideFuncs:
        - "subSequence(int,int)"
        - "indexOfFirstNonOwsChar(java.lang.CharSequence,int)"
        - "indexOfLastNonOwsChar(java.lang.CharSequence,int,int)"
    - Branch String: "io.netty.util.internal.StringUtil:648"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:645"
        BranchSideFuncs:
        - "subSequence(int,int)"
        - "indexOfFirstNonOwsChar(java.lang.CharSequence,int)"
        - "indexOfLastNonOwsChar(java.lang.CharSequence,int,int)"
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:642,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.internal.StringUtil:646,1"
      Dst: "[io.netty.util.internal.StringUtil].indexOfFirstNonOwsChar(java.lang.CharSequence,int)"
    - Src: "io.netty.util.internal.StringUtil:647,1"
      Dst: "[io.netty.util.internal.StringUtil].indexOfLastNonOwsChar(java.lang.CharSequence,int,int)"
    - Src: "io.netty.util.internal.StringUtil:648,1"
      Dst: "[java.lang.CharSequence].subSequence(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.StringUtil].join(java.lang.CharSequence,java.lang.Iterable<?\
      \ extends CharSequence>)"
    functionSourceFile: "io.netty.util.internal.StringUtil"
    linkageType: ""
    functionLinenumber: 659
    functionLinenumberEnd: 679
    functionDepth: 1
    returnType: "java.lang.CharSequence"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.Iterable<? extends CharSequence>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].iterator()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.buffer.CompositeByteBuf].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.channel.pool.AbstractChannelPoolMap].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.channel.DefaultChannelPipeline].iterator()"
    - "[io.netty.channel.group.ChannelGroupException].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$1].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$1].iterator()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$1].iterator()"
    - "[io.netty.handler.codec.EmptyHeaders].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.buffer.PoolChunkList].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.lang.StringBuilder].<init>(java.lang.CharSequence)"
    - "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 22
    EdgeCount: 372
    BranchProfiles:
    - Branch String: "io.netty.util.internal.StringUtil:664"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:668"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:667"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.StringUtil:669"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:673"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.StringUtil:672"
        BranchSideFuncs:
        - "<init>(java.lang.CharSequence)"
    - Branch String: "io.netty.util.internal.StringUtil:676"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.StringUtil:674"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "append(java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.util.internal.StringUtil:660,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.internal.StringUtil:663,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.util.internal.StringUtil:664,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.util.internal.StringUtil:668,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.util.internal.StringUtil:673,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.CharSequence)"
    - Src: "io.netty.util.internal.StringUtil:675,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DefaultDnsServerAddressStreamProvider].<init>()"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsServerAddressStreamProvider"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultDnsServerAddressStreamProvider:110,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsServerAddressStreamProvider"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsServerAddressStream"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.RotationalDnsServerAddresses].stream()"
    - "[io.netty.resolver.dns.DnsServerAddresses$2].stream()"
    - "[io.netty.resolver.dns.DnsServerAddresses$1].stream()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses].stream()"
    - "[io.netty.resolver.dns.DnsServerAddresses].stream()"
    functionUses: 6
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultDnsServerAddressStreamProvider:115,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddresses].stream()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsServerAddressStreamProvider].defaultAddressList()"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsServerAddressStreamProvider"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsServerAddressStreamProvider].defaultAddresses()"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsServerAddressStreamProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsServerAddresses"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtMessageRendezvousChannel].<init>()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtMessageRendezvousChannel"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].<init>(com.barchart.udt.nio.SocketChannelUDT)"
    - "[io.netty.channel.udt.nio.NioUdtProvider].newRendezvousChannelUDT(com.barchart.udt.TypeUDT)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtMessageRendezvousChannel:32,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtProvider].newRendezvousChannelUDT(com.barchart.udt.TypeUDT)"
    - Src: "io.netty.channel.udt.nio.NioUdtMessageRendezvousChannel:32,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].<init>(com.barchart.udt.nio.SocketChannelUDT)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompCommand].values()"
    functionSourceFile: "io.netty.handler.codec.stomp.StompCommand"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.stomp.StompCommand[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompCommand:21,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompCommand].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompCommand"
    linkageType: ""
    functionLinenumber: 20
    functionLinenumberEnd: 22
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompCommand:21,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:46,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 87
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.ReplayingDecoder].state()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].<init>(java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder].fail(java.util.List,java.lang.Exception)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    functionUses: 1
    ICount: 60
    EdgeCount: 105
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:56"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:60"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:59"
        BranchSideFuncs:
        - "checkpoint(java.lang.Object)"
        - "getUnsignedByte(int)"
        - "toString(int,int,java.nio.charset.Charset)"
        - "<init>(java.lang.String,java.lang.String)"
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:73"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:85"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "readRetainedSlice(int)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:52,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].state()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:52,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:54,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:55,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:57,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:57,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:57,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:57,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:57,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:60,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:64,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:66,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:67,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].<init>(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:65,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:69,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:72,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:74,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:84,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder].fail(java.util.List,java.lang.Exception)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder].fail(java.util.List<Object>,java.lang.Exception)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 99
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List<Object>"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].<init>(java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    - "[io.netty.handler.codec.socksx.AbstractSocksMessage].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:93"
        BranchSideFuncs:
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:92"
        BranchSideFuncs:
        - "failure(java.lang.Throwable)"
        - "setDecoderResult(io.netty.handler.codec.DecoderResult)"
        - "add(java.lang.Object)"
        - "checkpoint(java.lang.Object)"
        - "<init>(java.lang.String,java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:90,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:93,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:95,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].<init>(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:96,1"
      Dst: "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:96,1"
      Dst: "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthRequestDecoder:97,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Unix].registerInternal(java.lang.Runnable)"
    functionSourceFile: "io.netty.channel.unix.Unix"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$2:io.netty.channel.oio.AbstractOioChannel$3:io.netty.util.concurrent.AbstractScheduledEventExecutor$2:io.netty.util.concurrent.GlobalEventExecutor$1:io.netty.util.concurrent.PromiseTask$SentinelRunnable:io.netty.util.concurrent.SingleThreadEventExecutor$1:java.lang.invoke.MethodHandleNatives$CallSiteContext:java.lang.ref.Finalizer$2:java.lang.ref.Finalizer$FinalizerThread:java.util.concurrent.CompletableFuture$Completion:java.util.concurrent.ForkJoinWorkerThread:java.util.concurrent.ThreadPoolExecutor$Worker:java.util.zip.Deflater$DeflaterZStreamRef:java.util.zip.Inflater$InflaterZStreamRef:java.util.zip.ZipFile$CleanableResource].run()"
    - "[io.netty.channel.unix.Socket].initialize()"
    - "[java.lang.Runnable].run()"
    functionUses: 2
    ICount: 4
    EdgeCount: 170
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Unix:57,1"
      Dst: "[java.lang.Runnable].run()"
    - Src: "io.netty.channel.unix.Unix:58,1"
      Dst: "[io.netty.channel.unix.Socket].initialize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].initialize()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 573
    functionLinenumberEnd: 576
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isIPv6Preferred0(boolean)"
    - "[io.netty.util.NetUtil].isIpV4StackPreferred()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:574,1"
      Dst: "[io.netty.util.NetUtil].isIpV4StackPreferred()"
    - Src: "io.netty.channel.unix.Socket:574,1"
      Dst: "[io.netty.channel.unix.Socket].isIPv6Preferred0(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].isIPv6Preferred0(boolean)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.Unix].isAvailable()"
    functionSourceFile: "io.netty.channel.unix.Unix"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 1
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Unix].ensureAvailability()"
    functionSourceFile: "io.netty.channel.unix.Unix"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Unix:78,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Unix].unavailabilityCause()"
    functionSourceFile: "io.netty.channel.unix.Unix"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Unix:89,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Unix].<init>()"
    functionSourceFile: "io.netty.channel.unix.Unix"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Unix:92,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PeerCredentials].<init>(int,int,int[])"
    functionSourceFile: "io.netty.channel.unix.PeerCredentials"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.PeerCredentials:40"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.PeerCredentials:37"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.PeerCredentials:36"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.PeerCredentials:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.PeerCredentials].pid()"
    functionSourceFile: "io.netty.channel.unix.PeerCredentials"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PeerCredentials].uid()"
    functionSourceFile: "io.netty.channel.unix.PeerCredentials"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PeerCredentials].gids()"
    functionSourceFile: "io.netty.channel.unix.PeerCredentials"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.PeerCredentials:58,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.PeerCredentials].toString()"
    functionSourceFile: "io.netty.channel.unix.PeerCredentials"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 29
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.PeerCredentials:65"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.PeerCredentials:71"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.PeerCredentials:70"
        BranchSideFuncs:
        - "append(char)"
        - "toString()"
    - Branch String: "io.netty.channel.unix.PeerCredentials:67"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.PeerCredentials:70"
        BranchSideFuncs:
        - "append(char)"
        - "toString()"
    Callsites:
    - Src: "io.netty.channel.unix.PeerCredentials:63,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.channel.unix.PeerCredentials:64,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.unix.PeerCredentials:64,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.unix.PeerCredentials:71,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.channel.unix.PeerCredentials:72,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.FixedRecvByteBufAllocator$HandleImpl].guess()"
    functionSourceFile: "io.netty.channel.FixedRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,int)"
    - "[java.util.zip.Inflater].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:37,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:32,1"
      Dst: "[java.util.zip.Inflater].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].decode(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 58
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.spdy.SpdyHeadersFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].setInput(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].decompress(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - "[java.util.zip.Inflater].getRemaining()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:45"
        BranchSideFuncs:
        - "decompress(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:55"
        BranchSideFuncs:
        - "skipBytes(int)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:42,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].setInput(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:46,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].decompress(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:51,1"
      Dst: "[java.util.zip.Inflater].getRemaining()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:56,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].setInput(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.PooledDirectByteBuf:io.netty.buffer.PooledHeapByteBuf:io.netty.buffer.PooledUnsafeDirectByteBuf:io.netty.buffer.ReadOnlyByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf:io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[java.util.zip.Inflater].setInput(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AbstractByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:java.util.zip.Inflater].setInput(byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    functionUses: 1
    ICount: 19
    EdgeCount: 66
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:65"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:64"
        BranchSideFuncs:
        - "setInput(byte[],int,int)"
        - "getBytes(int,byte[])"
        - "readerIndex()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:60,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:62,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:63,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:63,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:63,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:63,1"
      Dst: "[java.util.zip.Inflater].setInput(byte[],int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:66,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].decompress(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 96
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.spdy.SpdyHeadersFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].ensureBuffer(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[java.util.zip.Inflater].inflate(byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[java.util.zip.Inflater].needsDictionary()"
    - "[java.util.zip.Inflater].setDictionary(byte[])"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].decodeHeaderBlock(io.netty.buffer.ByteBuf,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].discardReadBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].discardReadBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].discardReadBytes()"
    - "[io.netty.buffer.CompositeByteBuf].discardReadBytes()"
    - "[io.netty.buffer.ReadOnlyByteBuf].discardReadBytes()"
    - "[io.netty.buffer.AbstractByteBuf].discardReadBytes()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].discardReadBytes()"
    - "[io.netty.buffer.SwappedByteBuf].discardReadBytes()"
    - "[io.netty.buffer.WrappedByteBuf].discardReadBytes()"
    - "[io.netty.buffer.FixedCompositeByteBuf].discardReadBytes()"
    - "[io.netty.handler.codec.spdy.SpdyProtocolException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].discardReadBytes()"
    functionUses: 1
    ICount: 46
    EdgeCount: 76
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:86"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:86"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:87"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:93"
        BranchSideFuncs:
        - "writerIndex(int)"
        - "writerIndex()"
        - "decodeHeaderBlock(io.netty.buffer.ByteBuf,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
        - "discardReadBytes()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:74,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].ensureBuffer(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:75,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:76,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:76,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:78,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:78,1"
      Dst: "[java.util.zip.Inflater].inflate(byte[],int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:79,1"
      Dst: "[java.util.zip.Inflater].needsDictionary()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:81,1"
      Dst: "[java.util.zip.Inflater].setDictionary(byte[])"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:88,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:89,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].decodeHeaderBlock(io.netty.buffer.ByteBuf,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:90,1"
      Dst: "[io.netty.buffer.ByteBuf].discardReadBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:95,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyProtocolException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].ensureBuffer(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:100"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:103"
        BranchSideFuncs:
        - "heapBuffer(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:102"
        BranchSideFuncs:
        - "ensureWritable(int)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:101,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:103,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].decodeHeaderBlock(io.netty.buffer.ByteBuf,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 280
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.spdy.SpdyHeadersFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].readLengthField(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].setInvalid()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setInvalid()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setInvalid()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setInvalid()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setTruncated()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(byte[])"
    - "[java.lang.String].<init>(byte[],java.lang.String)"
    - "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].headers()"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].isTruncated()"
    - "[io.netty.handler.codec.DefaultHeaders].add(java.lang.Object,java.lang.Object)"
    - "[java.lang.String].<init>(byte[],int,int,java.lang.String)"
    - "[java.lang.Error].<init>(java.lang.String)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.spdy.SpdyHeadersFrame].setInvalid()"
    - "[io.netty.handler.codec.spdy.SpdyHeadersFrame].setTruncated()"
    - "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    - "[io.netty.handler.codec.spdy.SpdyHeadersFrame].headers()"
    - "[io.netty.handler.codec.Headers].contains(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.spdy.SpdyHeadersFrame].isTruncated()"
    - "[io.netty.handler.codec.Headers].add(java.lang.Object,java.lang.Object)"
    functionUses: 3
    ICount: 242
    EdgeCount: 136
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:87"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:279"
        BranchSideFuncs:
        - "ordinal()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:278"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:94"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:93"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:99"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:98"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:99"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:101"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:107"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:111"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:114"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:117"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:116"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:117"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:118"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:117"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:117"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:122"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:121"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:132"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:131"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
        - "<init>(byte[],java.lang.String)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:137"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:141"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:140"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:87"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:86"
        BranchSideFuncs:
        - "isReadable()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:160"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:159"
        BranchSideFuncs:
        - "readLengthField(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:166"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:165"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:166"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:179"
        BranchSideFuncs:
        - "isTruncated()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:178"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:171"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:176"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:175"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:179"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:180"
        BranchSideFuncs:
        - "setTruncated()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:179"
        BranchSideFuncs:
        - "setTruncated()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:179"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:185"
        BranchSideFuncs:
        - "setTruncated()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:184"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:191"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:195"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:194"
        BranchSideFuncs:
        - "readBytes(byte[])"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:203"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:209"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:208"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:209"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:238"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:237"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:210"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:213"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:212"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:210"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:213"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:212"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:213"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:223"
        BranchSideFuncs:
        - "headers()"
        - "add(java.lang.Object,java.lang.Object)"
        - "<init>(byte[],int,int,java.lang.String)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:218"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:223"
        BranchSideFuncs:
        - "headers()"
        - "add(java.lang.Object,java.lang.Object)"
        - "<init>(byte[],int,int,java.lang.String)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:241"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:245"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:244"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:245"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:248"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:247"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:257"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:87"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:86"
        BranchSideFuncs:
        - "isReadable()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:258"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:261"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:260"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:87,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:88,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:90,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:94,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].readLengthField(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:98,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeadersFrame].setInvalid()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:120,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeadersFrame].setTruncated()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:133,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:134,1"
      Dst: "[java.lang.String].<init>(byte[],java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:137,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeadersFrame].headers()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:137,1"
      Dst: "[io.netty.handler.codec.Headers].contains(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:146,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:147,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:167,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeadersFrame].isTruncated()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:169,1"
      Dst: "[io.netty.handler.codec.Headers].add(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:224,1"
      Dst: "[java.lang.String].<init>(byte[],int,int,java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:276,1"
      Dst: "[java.lang.Error].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 67
    CyclomaticComplexity: 33
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].readLengthField(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 61
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyCodecUtil].getSignedInt(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:58,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:58,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyCodecUtil].getSignedInt(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:59,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyProtocolException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyProtocolException"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyProtocolException:35,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].endHeaderBlock(io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 111
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyHeadersFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].endHeaderBlock(io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].releaseBuffer()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:108,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].endHeaderBlock(io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:109,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].releaseBuffer()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].endHeaderBlock(io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 294
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyHeadersFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].setInvalid()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setInvalid()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setInvalid()"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].releaseBuffer()"
    - "[io.netty.handler.codec.spdy.SpdyHeadersFrame].setInvalid()"
    functionUses: 2
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:283"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:287"
        BranchSideFuncs:
        - "setInvalid()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:286"
        BranchSideFuncs:
        - "releaseBuffer()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:284,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeadersFrame].setInvalid()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:287,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].releaseBuffer()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].releaseBuffer()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder"
    linkageType: ""
    functionLinenumber: 300
    functionLinenumberEnd: 306
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    functionUses: 3
    ICount: 7
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:301"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:305"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:304"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:302,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].releaseBuffer()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.util.ReferenceCounted].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 2
    ICount: 7
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:120"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:124"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:121,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].end()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 118
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].end()"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].releaseBuffer()"
    - "[java.util.zip.Inflater].end()"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:114,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].end()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:115,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder].releaseBuffer()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibDecoder:116,1"
      Dst: "[java.util.zip.Inflater].end()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].end()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder"
    linkageType: ""
    functionLinenumber: 296
    functionLinenumberEnd: 299
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].releaseBuffer()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:297,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].releaseBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsCnameCache$1].<init>(io.netty.resolver.dns.DefaultDnsCnameCache)"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCnameCache$1"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DefaultDnsCnameCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.Cache].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultDnsCnameCache$1:32,1"
      Dst: "[io.netty.resolver.dns.Cache].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsCnameCache$1].shouldReplaceAll(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCnameCache$1"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsCnameCache$1].equals(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCnameCache$1"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultDnsCnameCache$1:41,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsCnameCache$1].equals(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCnameCache$1"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultDnsCnameCache$1].equals(java.lang.String,java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultDnsCnameCache$1:32,1"
      Dst: "[io.netty.resolver.dns.DefaultDnsCnameCache$1].equals(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsCnameCache$1].shouldReplaceAll(java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCnameCache$1"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultDnsCnameCache$1].shouldReplaceAll(java.lang.String)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultDnsCnameCache$1:32,1"
      Dst: "[io.netty.resolver.dns.DefaultDnsCnameCache$1].shouldReplaceAll(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.json.JsonObjectDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.json.JsonObjectDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.json.JsonObjectDecoder].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:64,1"
      Dst: "[io.netty.handler.codec.json.JsonObjectDecoder].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.json.JsonObjectDecoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.json.JsonObjectDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.json.JsonObjectDecoder].<init>(int,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:68,1"
      Dst: "[io.netty.handler.codec.json.JsonObjectDecoder].<init>(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.json.JsonObjectDecoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.json.JsonObjectDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.json.JsonObjectDecoder].<init>(int,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:72,1"
      Dst: "[io.netty.handler.codec.json.JsonObjectDecoder].<init>(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.json.JsonObjectDecoder].<init>(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.json.JsonObjectDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:84,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:85,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.json.JsonObjectDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.json.JsonObjectDecoder"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 184
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.json.JsonObjectDecoder].reset()"
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.handler.codec.json.JsonObjectDecoder].decodeByte(byte,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.json.JsonObjectDecoder].extractObject(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[java.lang.Character].isWhitespace(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.handler.codec.json.JsonObjectDecoder].initDecoding(byte)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String)"
    - "[io.netty.buffer.ByteBufUtil].hexDump(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 1
    ICount: 140
    EdgeCount: 226
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:91"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:96"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:95"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:101"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:100"
        BranchSideFuncs:
        - "writerIndex()"
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:101"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:100"
        BranchSideFuncs:
        - "writerIndex()"
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:177"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:176"
        BranchSideFuncs:
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:114"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:132"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:131"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:119"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:121"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:127"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:126"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:132"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:null"
        BranchSideFuncs:
        - "decodeByte(byte,io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:135"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:135"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:132"
        BranchSideFuncs:
        - "decodeByte(byte,io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:135"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:137"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:135"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:135"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:142"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:148"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:147"
        BranchSideFuncs:
        - "extractObject(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,int)"
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:148"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:147"
        BranchSideFuncs:
        - "extractObject(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,int)"
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:153"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:152"
        BranchSideFuncs:
        - "readerIndex(int)"
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:155"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:158"
        BranchSideFuncs:
        - "reset()"
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:157"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:160"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:161"
        BranchSideFuncs:
        - "initDecoding(byte)"
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:160"
        BranchSideFuncs:
        - "initDecoding(byte)"
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:160"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:null"
        BranchSideFuncs:
        - "initDecoding(byte)"
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:168"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:null"
        BranchSideFuncs:
        - "skipBytes(int)"
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:180"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:92,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:92,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:96,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:102,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:107,1"
      Dst: "[io.netty.handler.codec.json.JsonObjectDecoder].reset()"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:108,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:108,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:108,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:108,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:108,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:113,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:115,1"
      Dst: "[io.netty.handler.codec.json.JsonObjectDecoder].decodeByte(byte,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:120,1"
      Dst: "[io.netty.handler.codec.json.JsonObjectDecoder].extractObject(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:122,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:127,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:138,1"
      Dst: "[java.lang.Character].isWhitespace(int)"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:161,1"
      Dst: "[io.netty.handler.codec.json.JsonObjectDecoder].initDecoding(byte)"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:173,1"
      Dst: "[io.netty.buffer.ByteBufUtil].hexDump(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:173,1"
      Dst: "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 43
    CyclomaticComplexity: 22
  - functionName: "[io.netty.handler.codec.json.JsonObjectDecoder].reset()"
    functionSourceFile: "io.netty.handler.codec.json.JsonObjectDecoder"
    linkageType: ""
    functionLinenumber: 232
    functionLinenumberEnd: 237
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.json.JsonObjectDecoder].decodeByte(byte,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.json.JsonObjectDecoder"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 222
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 2
    ICount: 45
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:194"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:194"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:193"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:194"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:194"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:196"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:195"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:198"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:220"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:201"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:215"
        BranchSideFuncs:
        - "getByte(int)"
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:214"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:207"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:215"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:214"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:207,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 12
  - functionName: "[io.netty.handler.codec.json.JsonObjectDecoder].extractObject(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.json.JsonObjectDecoder"
    linkageType: ""
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedSlice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.json.JsonObjectDecoder:190,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.json.JsonObjectDecoder].initDecoding(byte)"
    functionSourceFile: "io.netty.handler.codec.json.JsonObjectDecoder"
    linkageType: ""
    functionLinenumber: 223
    functionLinenumberEnd: 231
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:228"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:227"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.json.JsonObjectDecoder:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:228"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.json.JsonObjectDecoder:227"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilterRuleComparator].<init>()"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilterRuleComparator"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRuleComparator:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilterRuleComparator].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilterRuleComparator"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 3
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule].compareTo(java.net.InetSocketAddress)"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRuleComparator:34,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilterRule].compareTo(java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilterRule].compareTo(java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilterRule"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 117
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule].access$200(io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule)"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule].compareInt(int,int)"
    - "[io.netty.util.NetUtil].ipv4AddressToInt(java.net.Inet4Address)"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule].access$400(io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule)"
    - "[java.net.InetSocketAddress].getAddress()"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule].access$300(io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule)"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule].access$500(java.net.Inet6Address)"
    - "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    - "[java.math.BigInteger].and(java.math.BigInteger)"
    functionUses: 1
    ICount: 25
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilterRule:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilterRule:113"
        BranchSideFuncs:
        - "ipv4AddressToInt(java.net.Inet4Address)"
        - "compareInt(int,int)"
        - "access$200(io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule)"
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilterRule:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule:110,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule].access$200(io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule:111,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule:110,1"
      Dst: "[io.netty.util.NetUtil].ipv4AddressToInt(java.net.Inet4Address)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule:111,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule].access$400(io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule:110,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilterRule].compareInt(int,int)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule:114,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule].access$300(io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule:115,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule].access$500(java.net.Inet6Address)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule:116,1"
      Dst: "[java.math.BigInteger].and(java.math.BigInteger)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule:115,1"
      Dst: "[java.math.BigInteger].compareTo(java.math.BigInteger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilterRule].compareInt(int,int)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilterRule"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilterRule:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilterRule:123"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilterRule:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilterRule:123"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule].access$300(io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule].access$500(java.net.Inet6Address)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 175
    functionDepth: 1
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.net.Inet6Address"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule].ipToInt(java.net.Inet6Address)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule:174,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule].ipToInt(java.net.Inet6Address)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule].ipToInt(java.net.Inet6Address)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 213
    functionDepth: 0
    returnType: "java.math.BigInteger"
    argCount: 1
    argTypes:
    - "java.net.Inet6Address"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Inet6Address].getAddress()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.math.BigInteger].<init>(byte[])"
    functionUses: 2
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule:210"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule:211"
        BranchSideFuncs:
        - "<init>(byte[])"
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule:210"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule:211"
        BranchSideFuncs:
        - "<init>(byte[])"
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule:209,1"
      Dst: "[java.net.Inet6Address].getAddress()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule:210,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule:212,1"
      Dst: "[java.math.BigInteger].<init>(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketScheme].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketScheme"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.AsciiString].cached(java.lang.String)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketScheme:38,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketScheme:40,1"
      Dst: "[io.netty.util.AsciiString].cached(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketScheme].name()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketScheme"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "io.netty.util.AsciiString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketScheme].port()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketScheme"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketScheme].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketScheme"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 58
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].name()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].port()"
    functionUses: 9
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketScheme:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketScheme:56"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketScheme:55"
        BranchSideFuncs:
        - "port()"
        - "name()"
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketScheme:57"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketScheme:55"
        BranchSideFuncs:
        - "port()"
        - "name()"
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketScheme:57"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketScheme:55"
        BranchSideFuncs:
        - "port()"
        - "name()"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketScheme:57,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketScheme].port()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketScheme:57,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketScheme].name()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketScheme:57,1"
      Dst: "[io.netty.util.AsciiString].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketScheme].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketScheme"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 5
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].hashCode()"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketScheme:62,1"
      Dst: "[io.netty.util.AsciiString].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketScheme].toString()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketScheme"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].toString()"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketScheme:67,1"
      Dst: "[io.netty.util.AsciiString].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].newStatic(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint,java.lang.Class,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionDepth: 4
    returnType: "io.netty.handler.codec.http2.Http2Exception"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.String"
    - "io.netty.handler.codec.http2.Http2Exception$ShutdownHint"
    - "java.lang.Class"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.handler.codec.http2.Http2Exception$StacklessHttp2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint,boolean)"
    - "[io.netty.handler.codec.http2.Http2Exception$StacklessHttp2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    - "[io.netty.util.internal.ThrowableUtil].unknownStackTrace(java.lang.Throwable,java.lang.Class,java.lang.String)"
    functionUses: 9
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2Exception:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:75"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint,boolean)"
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:74"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception:72,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.codec.http2.Http2Exception:73,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception$StacklessHttp2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2Exception:75,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception$StacklessHttp2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint)"
    - Src: "io.netty.handler.codec.http2.Http2Exception:77,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].unknownStackTrace(java.lang.Throwable,java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint,boolean,io.netty.handler.codec.http2.Http2Exception$1)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 2
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.String"
    - "io.netty.handler.codec.http2.Http2Exception$ShutdownHint"
    - "boolean"
    - "io.netty.handler.codec.http2.Http2Exception$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint,boolean)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception:35,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].<init>(io.netty.handler.codec.http2.Http2Error,java.lang.String,io.netty.handler.codec.http2.Http2Exception$ShutdownHint,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 88
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.String"
    - "io.netty.handler.codec.http2.Http2Exception$ShutdownHint"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable,boolean,boolean)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2Exception:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:85"
        BranchSideFuncs:
        - "checkNotNull(java.lang.Object,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:84"
        BranchSideFuncs:
        - "checkNotNull(java.lang.Object,java.lang.String)"
    - Branch String: "io.netty.handler.codec.http2.Http2Exception:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:85"
        BranchSideFuncs:
        - "checkNotNull(java.lang.Object,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:84"
        BranchSideFuncs:
        - "checkNotNull(java.lang.Object,java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception:83,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable,boolean,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2Exception:84,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2Exception:85,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2Exception].streamId(io.netty.handler.codec.http2.Http2Exception)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].isStreamError(io.netty.handler.codec.http2.Http2Exception)"
    - "[io.netty.handler.codec.http2.Http2Exception$StreamException].streamId()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2Exception:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Exception:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception:225,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].isStreamError(io.netty.handler.codec.http2.Http2Exception)"
    - Src: "io.netty.handler.codec.http2.Http2Exception:225,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception$StreamException].streamId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2HeadersEncoder$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2HeadersEncoder$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2HeadersEncoder$1:94,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2HeadersEncoder$1].isSensitive(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2HeadersEncoder$1"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$10$1].run()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$10$1"
    linkageType: ""
    functionLinenumber: 2208
    functionLinenumberEnd: 2218
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].access$2700(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.handler.ssl.SslHandler].access$2400()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[java.lang.Long].valueOf(long)"
    - "[io.netty.handler.ssl.SslHandler].access$2500(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 49
    ICount: 23
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler$10$1:2209"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$10$1:2217"
        BranchSideFuncs:
        - "access$2500(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
        - "newPromise()"
        - "channel()"
        - "close(io.netty.channel.ChannelPromise)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "access$2400()"
        - "valueOf(long)"
      - BranchSide: "io.netty.handler.ssl.SslHandler$10$1:2216"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$10$1:2209,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$2700(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler$10$1:2209,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - Src: "io.netty.handler.ssl.SslHandler$10$1:2210,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$2400()"
    - Src: "io.netty.handler.ssl.SslHandler$10$1:2212,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.ssl.SslHandler$10$1:2212,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.ssl.SslHandler$10$1:2210,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler$10$1:2215,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.ssl.SslHandler$10$1:2215,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler$10$1:2215,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$2500(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.DomainSocketAddress].<init>(java.lang.String)"
    functionSourceFile: "io.netty.channel.unix.DomainSocketAddress"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.SocketAddress].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.DomainSocketAddress:31,1"
      Dst: "[java.net.SocketAddress].<init>()"
    - Src: "io.netty.channel.unix.DomainSocketAddress:32,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DomainSocketAddress].<init>(java.io.File)"
    functionSourceFile: "io.netty.channel.unix.DomainSocketAddress"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].getPath()"
    - "[io.netty.channel.unix.DomainSocketAddress].<init>(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.DomainSocketAddress:36,1"
      Dst: "[java.io.File].getPath()"
    - Src: "io.netty.channel.unix.DomainSocketAddress:36,1"
      Dst: "[io.netty.channel.unix.DomainSocketAddress].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DomainSocketAddress].toString()"
    functionSourceFile: "io.netty.channel.unix.DomainSocketAddress"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.DomainSocketAddress].path()"
    functionUses: 19
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.DomainSocketAddress:48,1"
      Dst: "[io.netty.channel.unix.DomainSocketAddress].path()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DomainSocketAddress].equals(java.lang.Object)"
    functionSourceFile: "io.netty.channel.unix.DomainSocketAddress"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 9
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.DomainSocketAddress:53"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.DomainSocketAddress:56"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.DomainSocketAddress:55"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.unix.DomainSocketAddress:56"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.DomainSocketAddress:60"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.DomainSocketAddress:59"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.unix.DomainSocketAddress:60,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DomainSocketAddress].hashCode()"
    functionSourceFile: "io.netty.channel.unix.DomainSocketAddress"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.DomainSocketAddress:65,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ThreadDeathWatcher].watch(java.lang.Thread,java.lang.Runnable)"
    functionSourceFile: "io.netty.util.ThreadDeathWatcher"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Thread"
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Thread].isAlive()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.ThreadDeathWatcher].schedule(java.lang.Thread,java.lang.Runnable,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.ThreadDeathWatcher:84"
      Branch Sides:
      - BranchSide: "io.netty.util.ThreadDeathWatcher:88"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ThreadDeathWatcher:87"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.ThreadDeathWatcher:81,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.ThreadDeathWatcher:84,1"
      Dst: "[java.lang.Thread].isAlive()"
    - Src: "io.netty.util.ThreadDeathWatcher:85,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.util.ThreadDeathWatcher:88,1"
      Dst: "[io.netty.util.ThreadDeathWatcher].schedule(java.lang.Thread,java.lang.Runnable,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ThreadDeathWatcher].schedule(java.lang.Thread,java.lang.Runnable,boolean)"
    functionSourceFile: "io.netty.util.ThreadDeathWatcher"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Thread"
    - "java.lang.Runnable"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ThreadDeathWatcher$Entry].<init>(java.lang.Thread,java.lang.Runnable,boolean)"
    - "[java.util.Queue].add(java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicBoolean].compareAndSet(boolean,boolean)"
    - "[java.util.concurrent.ThreadFactory].newThread(java.lang.Runnable)"
    - "[io.netty.util.ThreadDeathWatcher$1].<init>(java.lang.Thread)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[java.lang.Thread].start()"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.ThreadDeathWatcher:103"
      Branch Sides:
      - BranchSide: "io.netty.util.ThreadDeathWatcher:121"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ThreadDeathWatcher:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.ThreadDeathWatcher:101,1"
      Dst: "[io.netty.util.ThreadDeathWatcher$Entry].<init>(java.lang.Thread,java.lang.Runnable,boolean)"
    - Src: "io.netty.util.ThreadDeathWatcher:101,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    - Src: "io.netty.util.ThreadDeathWatcher:103,1"
      Dst: "[java.util.concurrent.atomic.AtomicBoolean].compareAndSet(boolean,boolean)"
    - Src: "io.netty.util.ThreadDeathWatcher:104,1"
      Dst: "[java.util.concurrent.ThreadFactory].newThread(java.lang.Runnable)"
    - Src: "io.netty.util.ThreadDeathWatcher:110,1"
      Dst: "[io.netty.util.ThreadDeathWatcher$1].<init>(java.lang.Thread)"
    - Src: "io.netty.util.ThreadDeathWatcher:110,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "io.netty.util.ThreadDeathWatcher:118,1"
      Dst: "[java.lang.Thread].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.ThreadDeathWatcher$Entry].<init>(java.lang.Thread,java.lang.Runnable,boolean)"
    functionSourceFile: "io.netty.util.ThreadDeathWatcher$Entry"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Thread"
    - "java.lang.Runnable"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ThreadDeathWatcher$Entry:235,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ThreadDeathWatcher].unwatch(java.lang.Thread,java.lang.Runnable)"
    functionSourceFile: "io.netty.util.ThreadDeathWatcher"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Thread"
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.ThreadDeathWatcher].schedule(java.lang.Thread,java.lang.Runnable,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ThreadDeathWatcher:95,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.ThreadDeathWatcher:95,1"
      Dst: "[io.netty.util.ThreadDeathWatcher].schedule(java.lang.Thread,java.lang.Runnable,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ThreadDeathWatcher].awaitInactivity(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.ThreadDeathWatcher"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.concurrent.TimeUnit].toMillis(long)"
    - "[java.lang.Thread].join(long)"
    - "[java.lang.Thread].isAlive()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.ThreadDeathWatcher:136"
      Branch Sides:
      - BranchSide: "io.netty.util.ThreadDeathWatcher:140"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ThreadDeathWatcher:139"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.ThreadDeathWatcher:138"
      Branch Sides:
      - BranchSide: "io.netty.util.ThreadDeathWatcher:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.ThreadDeathWatcher:133,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.ThreadDeathWatcher:137,1"
      Dst: "[java.util.concurrent.TimeUnit].toMillis(long)"
    - Src: "io.netty.util.ThreadDeathWatcher:137,1"
      Dst: "[java.lang.Thread].join(long)"
    - Src: "io.netty.util.ThreadDeathWatcher:138,1"
      Dst: "[java.lang.Thread].isAlive()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.ThreadDeathWatcher].<init>()"
    functionSourceFile: "io.netty.util.ThreadDeathWatcher"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ThreadDeathWatcher:144,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ThreadDeathWatcher].access$100()"
    functionSourceFile: "io.netty.util.ThreadDeathWatcher"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "java.util.Queue"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ThreadDeathWatcher].access$200()"
    functionSourceFile: "io.netty.util.ThreadDeathWatcher"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "java.util.concurrent.atomic.AtomicBoolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ThreadDeathWatcher].access$300()"
    functionSourceFile: "io.netty.util.ThreadDeathWatcher"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].toPEM(io.netty.buffer.ByteBufAllocator,boolean,java.security.PrivateKey)"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.ssl.PemEncoded"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "boolean"
    - "java.security.PrivateKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.PemEncoded].retain()"
    - "[java.security.Key].getEncoded()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.handler.ssl.PemPrivateKey].toPEM(io.netty.buffer.ByteBufAllocator,boolean,byte[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.PemPrivateKey:59"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemPrivateKey:63"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.PemPrivateKey:62"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.PemPrivateKey:64"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemPrivateKey:68"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.PemPrivateKey:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:60,1"
      Dst: "[io.netty.handler.ssl.PemEncoded].retain()"
    - Src: "io.netty.handler.ssl.PemPrivateKey:63,1"
      Dst: "[java.security.Key].getEncoded()"
    - Src: "io.netty.handler.ssl.PemPrivateKey:65,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.PemPrivateKey:65,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.ssl.PemPrivateKey:65,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.handler.ssl.PemPrivateKey:65,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.PemPrivateKey:65,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.PemPrivateKey:65,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.PemPrivateKey:68,1"
      Dst: "[io.netty.handler.ssl.PemPrivateKey].toPEM(io.netty.buffer.ByteBufAllocator,boolean,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].toPEM(io.netty.buffer.ByteBufAllocator,boolean,byte[])"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.ssl.PemEncoded"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "boolean"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[io.netty.handler.ssl.SslUtils].toBase64(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.ssl.PemValue].<init>(io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.handler.ssl.SslUtils].zerooutAndRelease(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 41
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.PemPrivateKey:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemPrivateKey:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.PemPrivateKey:71"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.PemPrivateKey:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemPrivateKey:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.PemPrivateKey:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.PemPrivateKey:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemPrivateKey:93"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.PemPrivateKey:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:72,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.handler.ssl.PemPrivateKey:74,1"
      Dst: "[io.netty.handler.ssl.SslUtils].toBase64(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.PemPrivateKey:76,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.ssl.PemPrivateKey:79,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - Src: "io.netty.handler.ssl.PemPrivateKey:79,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.ssl.PemPrivateKey:81,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - Src: "io.netty.handler.ssl.PemPrivateKey:82,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.PemPrivateKey:85,1"
      Dst: "[io.netty.handler.ssl.PemValue].<init>(io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.ssl.PemPrivateKey:91,1"
      Dst: "[io.netty.handler.ssl.SslUtils].zerooutAndRelease(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslUtils].zerooutAndRelease(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 460
    functionLinenumberEnd: 464
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslUtils].zeroout(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    functionUses: 1
    ICount: 4
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:461,1"
      Dst: "[io.netty.handler.ssl.SslUtils].zeroout(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.SslUtils:462,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslUtils].zeroout(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 451
    functionLinenumberEnd: 456
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].isReadOnly()"
    - "[io.netty.buffer.AbstractByteBuf].isReadOnly()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].isReadOnly()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isReadOnly()"
    - "[io.netty.buffer.EmptyByteBuf].isReadOnly()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isReadOnly()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].isReadOnly()"
    - "[io.netty.buffer.ReadOnlyByteBuf].isReadOnly()"
    - "[io.netty.buffer.SwappedByteBuf].isReadOnly()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadOnly()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadOnly()"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setZero(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setZero(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setZero(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setZero(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setZero(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setZero(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setZero(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setZero(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setZero(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setZero(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setZero(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setZero(int,int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf].setZero(int,int)"
    - "[io.netty.buffer.ByteBuf].isReadOnly()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].setZero(int,int)"
    functionUses: 4
    ICount: 6
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:452"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:455"
        BranchSideFuncs:
        - "setZero(int,int)"
        - "capacity()"
      - BranchSide: "io.netty.handler.ssl.SslUtils:454"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:452,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadOnly()"
    - Src: "io.netty.handler.ssl.SslUtils:453,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.handler.ssl.SslUtils:453,1"
      Dst: "[io.netty.buffer.ByteBuf].setZero(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].valueOf(byte[])"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionDepth: 3
    returnType: "io.netty.handler.ssl.PemPrivateKey"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.PemPrivateKey].valueOf(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:109,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.handler.ssl.PemPrivateKey:109,1"
      Dst: "[io.netty.handler.ssl.PemPrivateKey].valueOf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].valueOf(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 2
    returnType: "io.netty.handler.ssl.PemPrivateKey"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.PemPrivateKey].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:119,1"
      Dst: "[io.netty.handler.ssl.PemPrivateKey].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 127
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:124,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].<init>()"
    - Src: "io.netty.handler.ssl.PemPrivateKey:125,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].isSensitive()"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].content()"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 141
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - "[io.netty.util.IllegalReferenceCountException].<init>(int)"
    functionUses: 15
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.PemPrivateKey:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemPrivateKey:140"
        BranchSideFuncs:
        - "<init>(int)"
      - BranchSide: "io.netty.handler.ssl.PemPrivateKey:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:135,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - Src: "io.netty.handler.ssl.PemPrivateKey:137,1"
      Dst: "[io.netty.util.IllegalReferenceCountException].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].copy()"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.ssl.PemPrivateKey"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.ssl.PemPrivateKey].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:145,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.ssl.PemPrivateKey:145,1"
      Dst: "[io.netty.handler.ssl.PemPrivateKey].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.ssl.PemPrivateKey"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.PemPrivateKey].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:160,1"
      Dst: "[io.netty.handler.ssl.PemPrivateKey].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].duplicate()"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.ssl.PemPrivateKey"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.handler.ssl.PemPrivateKey].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:150,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.ssl.PemPrivateKey:150,1"
      Dst: "[io.netty.handler.ssl.PemPrivateKey].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.ssl.PemPrivateKey"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.ssl.PemPrivateKey].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:155,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.ssl.PemPrivateKey:155,1"
      Dst: "[io.netty.handler.ssl.PemPrivateKey].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].touch()"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 167
    functionDepth: 0
    returnType: "io.netty.handler.ssl.PemPrivateKey"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.SwappedByteBuf].touch()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch()"
    - "[io.netty.buffer.EmptyByteBuf].touch()"
    - "[io.netty.buffer.WrappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    - "[io.netty.buffer.UnreleasableByteBuf].touch()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.CompositeByteBuf].touch()"
    - "[io.netty.buffer.ByteBuf].touch()"
    functionUses: 3
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:165,1"
      Dst: "[io.netty.buffer.ByteBuf].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 173
    functionDepth: 0
    returnType: "io.netty.handler.ssl.PemPrivateKey"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 4
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:171,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].retain()"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionDepth: 0
    returnType: "io.netty.handler.ssl.PemPrivateKey"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].retain()"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:177,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].retain(int)"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.PemPrivateKey"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:182,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].deallocate()"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslUtils].zerooutAndRelease(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:189,1"
      Dst: "[io.netty.handler.ssl.SslUtils].zerooutAndRelease(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].getEncoded()"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:194,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].getAlgorithm()"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:199,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].getFormat()"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].destroy()"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - "[io.netty.util.AbstractReferenceCounted].release(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:216,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - Src: "io.netty.handler.ssl.PemPrivateKey:216,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.PemPrivateKey].isDestroyed()"
    functionSourceFile: "io.netty.handler.ssl.PemPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].refCnt()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.PemPrivateKey:228"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.PemPrivateKey:227"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.PemPrivateKey:228,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.HeadersUtils].<init>()"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils:33,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils].iteratorAsString(java.lang.Iterable<Entry<CharSequence,CharSequence>>)"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 1
    returnType: "java.util.Iterator<Entry<String,String>>"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<Entry<CharSequence,CharSequence>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].<init>(java.util.Iterator)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].iterator()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.buffer.CompositeByteBuf].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.channel.pool.AbstractChannelPoolMap].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.channel.DefaultChannelPipeline].iterator()"
    - "[io.netty.channel.group.ChannelGroupException].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$1].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$1].iterator()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$1].iterator()"
    - "[io.netty.handler.codec.EmptyHeaders].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.buffer.PoolChunkList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.nio.file.Path:java.util.AbstractList:java.util.AbstractSequentialList:java.util.ArrayDeque:java.util.ArrayList:java.util.HashSet:java.util.ServiceLoader:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.TreeSet:java.util.Vector:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView:java.util.concurrent.ConcurrentHashMap$ValuesView:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[java.lang.Iterable].iterator()"
    functionUses: 1
    ICount: 5
    EdgeCount: 70
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils:73,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.codec.HeadersUtils:73,1"
      Dst: "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].<init>(java.util.Iterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils].toString(java.lang.Class<?>,java.util.Iterator<Entry<K,V>>,int)"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "java.lang.Class<?>"
    - "java.util.Iterator<Entry<K,V>>"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry:io.netty.handler.codec.DefaultHeaders$HeaderEntry:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:java.lang.StringBuilder:java.util.AbstractMap$SimpleEntry:java.util.AbstractMap$SimpleImmutableEntry:java.util.HashMap$Node:java.util.Hashtable$Entry:java.util.TreeMap$Entry:java.util.WeakHashMap$Entry:java.util.concurrent.ConcurrentHashMap$Node].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.util.Map$Entry].getValue()"
    - "[java.lang.StringBuilder].length()"
    functionUses: 2
    ICount: 36
    EdgeCount: 119
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.HeadersUtils:85"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.HeadersUtils:89"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.HeadersUtils:88"
        BranchSideFuncs:
        - "<init>(int)"
    - Branch String: "io.netty.handler.codec.HeadersUtils:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.HeadersUtils:96"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "getValue()"
        - "next()"
        - "getKey()"
      - BranchSide: "io.netty.handler.codec.HeadersUtils:95"
        BranchSideFuncs:
        - "append(char)"
        - "toString()"
        - "setLength(int)"
        - "length()"
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils:84,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "io.netty.handler.codec.HeadersUtils:86,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.HeadersUtils:86,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.HeadersUtils:86,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.HeadersUtils:89,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.HeadersUtils:89,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.HeadersUtils:91,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.HeadersUtils:92,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.HeadersUtils:93,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.HeadersUtils:94,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.HeadersUtils:94,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.HeadersUtils:94,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.HeadersUtils:96,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.codec.HeadersUtils:96,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.HeadersUtils].namesAsString(io.netty.handler.codec.Headers<CharSequence,CharSequence,?>)"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 1
    returnType: "java.util.Set<String>"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.Headers<CharSequence,CharSequence,?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].<init>(java.util.Set)"
    - "[io.netty.handler.codec.DefaultHeaders].names()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].names()"
    - "[io.netty.handler.codec.EmptyHeaders].names()"
    - "[io.netty.handler.codec.Headers].names()"
    functionUses: 1
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils:107,1"
      Dst: "[io.netty.handler.codec.Headers].names()"
    - Src: "io.netty.handler.codec.HeadersUtils:107,1"
      Dst: "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].<init>(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].<init>(java.util.Set)"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 199
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].<init>(java.util.Set)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet:197,1"
      Dst: "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].<init>(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory].newProvider(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.ssl.OpenSslKeyMaterialProvider"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.KeyManagerFactory].getKeyManagers()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].chooseX509KeyManager(javax.net.ssl.KeyManager[])"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].<init>(javax.net.ssl.X509KeyManager,java.lang.String)"
    - "[io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider].<init>(javax.net.ssl.X509KeyManager,java.lang.String,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory:71,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].getKeyManagers()"
    - Src: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory:71,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].chooseX509KeyManager(javax.net.ssl.KeyManager[])"
    - Src: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory:72,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory:72,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory:72,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory:75,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].<init>(javax.net.ssl.X509KeyManager,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory:78,1"
      Dst: "[io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider].<init>(javax.net.ssl.X509KeyManager,java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider].<init>(javax.net.ssl.X509KeyManager,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "javax.net.ssl.X509KeyManager"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].<init>(javax.net.ssl.X509KeyManager,java.lang.String)"
    - "[java.util.concurrent.ConcurrentHashMap].<init>()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:36,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].<init>(javax.net.ssl.X509KeyManager,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:33,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpEncoder].<init>(io.netty.handler.codec.spdy.SpdyVersion)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHttpEncoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,boolean,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:136,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHttpEncoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpEncoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:147,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:148,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpObject,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpEncoder"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 216
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.HttpObject"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHttpEncoder].createSynStreamFrame(io.netty.handler.codec.http.HttpRequest)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].isLast()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].isUnidirectional()"
    - "[io.netty.handler.codec.spdy.SpdyHttpEncoder].createHeadersFrame(io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.LastHttpContent$1].content()"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].content()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].content()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].<init>(int,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].trailingHeaders()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].trailingHeaders()"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].setLast(boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].<init>(int,boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setLast(boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].setLast(boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setLast(boolean)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iteratorCharSequence()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iteratorCharSequence()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iteratorCharSequence()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    - "[java.util.AbstractMap$SimpleEntry].getKey()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[io.netty.util.AsciiString].of(java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].toLowerCase()"
    - "[io.netty.handler.codec.DefaultHeaders].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].headers()"
    - "[io.netty.handler.codec.UnsupportedMessageTypeException].<init>(java.lang.Object,java.lang.Class[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdyStreamFrame].isLast()"
    - "[io.netty.handler.codec.spdy.SpdySynStreamFrame].isUnidirectional()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].retain()"
    - "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.spdy.SpdyDataFrame].setLast(boolean)"
    - "[io.netty.handler.codec.spdy.SpdyHeadersFrame].setLast(boolean)"
    - "[io.netty.handler.codec.http.HttpHeaders].iteratorCharSequence()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[io.netty.handler.codec.spdy.SpdyHeadersFrame].headers()"
    - "[java.util.Map$Entry].getValue()"
    - "[io.netty.handler.codec.Headers].add(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 80
    EdgeCount: 268
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:159"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:167"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:165"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:161"
        BranchSideFuncs:
        - "isUnidirectional()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:160"
        BranchSideFuncs:
        - "createSynStreamFrame(io.netty.handler.codec.http.HttpRequest)"
        - "isUnidirectional()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:165"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:161"
        BranchSideFuncs:
        - "isUnidirectional()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:160"
        BranchSideFuncs:
        - "createSynStreamFrame(io.netty.handler.codec.http.HttpRequest)"
        - "isUnidirectional()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:168"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:211"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:211"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:183"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:206"
        BranchSideFuncs:
        - "isEmpty()"
        - "trailingHeaders()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:205"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:191"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:190"
        BranchSideFuncs:
        - "iteratorCharSequence()"
        - "setLast(boolean)"
        - "<init>(int,boolean)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:194"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:202"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:201"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:195"
        BranchSideFuncs:
        - "toLowerCase()"
        - "of(java.lang.CharSequence)"
        - "getKey()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:194"
        BranchSideFuncs:
        - "next()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:212"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:215"
        BranchSideFuncs:
        - "<init>(java.lang.Object,java.lang.Class[])"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:214"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:162,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHttpEncoder].createSynStreamFrame(io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:163,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:165,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamFrame].isLast()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:165,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySynStreamFrame].isUnidirectional()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:171,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHttpEncoder].createHeadersFrame(io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:181,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:181,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:182,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].<init>(int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:185,1"
      Dst: "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:186,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].isEmpty()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:187,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyDataFrame].setLast(boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:191,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].<init>(int,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:192,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeadersFrame].setLast(boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:193,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].iteratorCharSequence()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:194,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:195,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:197,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:197,1"
      Dst: "[io.netty.util.AsciiString].of(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:197,1"
      Dst: "[io.netty.util.AsciiString].toLowerCase()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:198,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeadersFrame].headers()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:198,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:198,1"
      Dst: "[io.netty.handler.codec.Headers].add(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:213,1"
      Dst: "[io.netty.handler.codec.UnsupportedMessageTypeException].<init>(java.lang.Object,java.lang.Class[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 26
    CyclomaticComplexity: 11
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpEncoder].createSynStreamFrame(io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpEncoder"
    linkageType: ""
    functionLinenumber: 219
    functionLinenumberEnd: 273
    functionDepth: 7
    returnType: "io.netty.handler.codec.spdy.SpdySynStreamFrame"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].getInt(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].getInt(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].getInt(java.lang.CharSequence)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].getInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].getInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].getInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].remove(java.lang.String)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].remove(java.lang.String)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].remove(java.lang.String)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].<init>(int,int,byte,boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].method()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].method()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].method()"
    - "[io.netty.handler.codec.http.HttpMethod].name()"
    - "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].uri()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].uri()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].uri()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpVersion].text()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iteratorCharSequence()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iteratorCharSequence()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iteratorCharSequence()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    - "[java.util.AbstractMap$SimpleEntry].getKey()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[io.netty.util.AsciiString].of(java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].toLowerCase()"
    - "[io.netty.handler.codec.DefaultHeaders].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].streamId()"
    - "[io.netty.handler.codec.spdy.SpdyHttpEncoder].isLast(io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setLast(boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setUnidirectional(boolean)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].getInt(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].getInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.String)"
    - "[io.netty.handler.codec.spdy.SpdyHeadersFrame].headers()"
    - "[io.netty.handler.codec.http.HttpRequest].method()"
    - "[io.netty.handler.codec.Headers].set(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpRequest].uri()"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpHeaders].iteratorCharSequence()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[io.netty.handler.codec.Headers].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdyStreamFrame].streamId()"
    - "[io.netty.handler.codec.spdy.SpdySynStreamFrame].setLast(boolean)"
    - "[io.netty.handler.codec.spdy.SpdySynStreamFrame].setUnidirectional(boolean)"
    functionUses: 1
    ICount: 78
    EdgeCount: 231
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:252"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:255"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:254"
        BranchSideFuncs:
        - "iteratorCharSequence()"
        - "set(java.lang.Object,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:259"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:265"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:264"
        BranchSideFuncs:
        - "streamId()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:261"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:260"
        BranchSideFuncs:
        - "of(java.lang.CharSequence)"
        - "getKey()"
        - "toLowerCase()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:259"
        BranchSideFuncs:
        - "next()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:266"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:269"
        BranchSideFuncs:
        - "setLast(boolean)"
        - "isLast(io.netty.handler.codec.http.HttpMessage)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:268"
        BranchSideFuncs:
        - "setUnidirectional(boolean)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:220,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:221,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].getInt(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:221,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:222,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].getInt(java.lang.CharSequence,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:224,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:225,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:233,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:237,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].<init>(int,int,byte,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:241,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeadersFrame].headers()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:242,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].method()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:242,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].name()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:242,1"
      Dst: "[io.netty.handler.codec.Headers].set(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:243,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].uri()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:244,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:244,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].text()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:258,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].iteratorCharSequence()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:259,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:260,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:262,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:262,1"
      Dst: "[io.netty.util.AsciiString].of(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:262,1"
      Dst: "[io.netty.util.AsciiString].toLowerCase()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:263,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:263,1"
      Dst: "[io.netty.handler.codec.Headers].add(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:265,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamFrame].streamId()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:267,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHttpEncoder].isLast(io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:267,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySynStreamFrame].setLast(boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:269,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySynStreamFrame].setUnidirectional(boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpEncoder].isLast(io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpEncoder"
    linkageType: ""
    functionLinenumber: 321
    functionLinenumberEnd: 330
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].content()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].isEmpty()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].trailingHeaders()"
    - "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpHeaders].isEmpty()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    functionUses: 2
    ICount: 12
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:322"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:329"
        BranchSideFuncs:
        - "content()"
        - "trailingHeaders()"
        - "isEmpty()"
        - "isReadable()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:328"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:324"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:329"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:328"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:324"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:329"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:328"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:324,1"
      Dst: "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:324,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].isEmpty()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:324,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:324,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpEncoder].createHeadersFrame(io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpEncoder"
    linkageType: ""
    functionLinenumber: 277
    functionLinenumberEnd: 313
    functionDepth: 7
    returnType: "io.netty.handler.codec.spdy.SpdyHeadersFrame"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].getInt(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].getInt(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].getInt(java.lang.CharSequence)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].remove(java.lang.String)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].remove(java.lang.String)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].remove(java.lang.String)"
    - "[io.netty.handler.codec.spdy.SpdyCodecUtil].isServerId(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].<init>(int,boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].<init>(int,boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].headers()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].codeAsText()"
    - "[io.netty.handler.codec.DefaultHeaders].set(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpVersion].text()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iteratorCharSequence()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iteratorCharSequence()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iteratorCharSequence()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    - "[java.util.AbstractMap$SimpleEntry].getKey()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[io.netty.util.AsciiString].of(java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].toLowerCase()"
    - "[io.netty.handler.codec.DefaultHeaders].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[io.netty.handler.codec.spdy.SpdyHttpEncoder].isLast(io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].setLast(boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].setLast(boolean)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].setLast(boolean)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].getInt(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.String)"
    - "[io.netty.handler.codec.spdy.SpdyHeadersFrame].headers()"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    - "[io.netty.handler.codec.Headers].set(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.HttpHeaders].iteratorCharSequence()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[io.netty.handler.codec.Headers].add(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdyHeadersFrame].setLast(boolean)"
    functionUses: 1
    ICount: 56
    EdgeCount: 207
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:290"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:293"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:292"
        BranchSideFuncs:
        - "<init>(int,boolean)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:302"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:309"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:308"
        BranchSideFuncs:
        - "setLast(boolean)"
        - "isLast(io.netty.handler.codec.http.HttpMessage)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHttpEncoder:304"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:303"
        BranchSideFuncs:
        - "toLowerCase()"
        - "of(java.lang.CharSequence)"
        - "getKey()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHttpEncoder:302"
        BranchSideFuncs:
        - "next()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:278,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:279,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].getInt(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:279,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:280,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:285,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:290,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyCodecUtil].isServerId(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:291,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].<init>(int,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:293,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].<init>(int,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:295,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeadersFrame].headers()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:297,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:297,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].codeAsText()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:297,1"
      Dst: "[io.netty.handler.codec.Headers].set(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:298,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:298,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].text()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:301,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].iteratorCharSequence()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:302,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:303,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:305,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:305,1"
      Dst: "[io.netty.util.AsciiString].of(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:305,1"
      Dst: "[io.netty.util.AsciiString].toLowerCase()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:306,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:306,1"
      Dst: "[io.netty.handler.codec.Headers].add(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:310,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHttpEncoder].isLast(io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:310,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeadersFrame].setLast(boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpEncoder"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHttpEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpObject,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpEncoder:123,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHttpEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpObject,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ReferenceCountUtil$ReleasingTask].<init>(io.netty.util.ReferenceCounted,int)"
    functionSourceFile: "io.netty.util.ReferenceCountUtil$ReleasingTask"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.ReferenceCounted"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ReferenceCountUtil$ReleasingTask:184,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    functionSourceFile: "io.netty.util.ReferenceCountUtil$ReleasingTask"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 201
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].release(int)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].release(int)"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].release(int)"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].release(int)"
    - "[io.netty.buffer.DefaultByteBufHolder].release(int)"
    - "[io.netty.channel.DefaultAddressedEnvelope].release(int)"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].release(int)"
    - "[io.netty.handler.codec.http.LastHttpContent$1].release(int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].release(int)"
    - "[io.netty.buffer.WrappedByteBuf].release(int)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    - "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].release(int)"
    - "[io.netty.handler.ssl.PemX509Certificate].release(int)"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$1].release(int)"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].release(int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release(int)"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$2].release(int)"
    - "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].release(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].release(int)"
    - "[io.netty.buffer.EmptyByteBuf].release(int)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].release(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].release(int)"
    - "[io.netty.handler.codec.http.DefaultHttpContent].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release(int)"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].release(int)"
    - "[io.netty.handler.codec.smtp.LastSmtpContent$1].release(int)"
    - "[io.netty.handler.codec.memcache.LastMemcacheContent$1].release(int)"
    - "[io.netty.buffer.SwappedByteBuf].release(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release(int)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].release(int)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].release(int)"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].release(int)"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].release(int)"
    - "[io.netty.util.AbstractReferenceCounted].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].release(int)"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].release(int)"
    - "[io.netty.util.ReferenceCountUtil].access$000()"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.ReferenceCounted].release(int)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 49
    ICount: 16
    EdgeCount: 60
    BranchProfiles:
    - Branch String: "io.netty.util.ReferenceCountUtil$ReleasingTask:192"
      Branch Sides:
      - BranchSide: "io.netty.util.ReferenceCountUtil$ReleasingTask:195"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.util.ReferenceCountUtil$ReleasingTask:194"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object)"
    Callsites:
    - Src: "io.netty.util.ReferenceCountUtil$ReleasingTask:192,1"
      Dst: "[io.netty.util.ReferenceCounted].release(int)"
    - Src: "io.netty.util.ReferenceCountUtil$ReleasingTask:193,1"
      Dst: "[io.netty.util.ReferenceCountUtil].access$000()"
    - Src: "io.netty.util.ReferenceCountUtil$ReleasingTask:193,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.ReferenceCountUtil$ReleasingTask:195,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.ReferenceCountUtil$ReleasingTask:198,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.ReferenceCountUtil].access$000()"
    functionSourceFile: "io.netty.util.ReferenceCountUtil"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ReferenceCountUtil$ReleasingTask].toString()"
    functionSourceFile: "io.netty.util.ReferenceCountUtil$ReleasingTask"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 205
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].refCnt()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].refCnt()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].refCnt()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].refCnt()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].refCnt()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].refCnt()"
    - "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].refCnt()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].refCnt()"
    - "[io.netty.buffer.DefaultByteBufHolder].refCnt()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].refCnt()"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].refCnt()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.channel.DefaultAddressedEnvelope].refCnt()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].refCnt()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].refCnt()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].refCnt()"
    - "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].refCnt()"
    - "[io.netty.handler.ssl.PemX509Certificate].refCnt()"
    - "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].refCnt()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].refCnt()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].refCnt()"
    - "[io.netty.buffer.EmptyByteBuf].refCnt()"
    - "[io.netty.handler.codec.smtp.LastSmtpContent$1].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.handler.codec.memcache.LastMemcacheContent$1].refCnt()"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 19
    ICount: 15
    EdgeCount: 41
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ReferenceCountUtil$ReleasingTask:204,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.ReferenceCountUtil$ReleasingTask:204,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.util.ReferenceCountUtil$ReleasingTask:204,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.ReferenceCountUtil$ReleasingTask:204,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.ReferenceCountUtil$ReleasingTask:204,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    - Src: "io.netty.util.ReferenceCountUtil$ReleasingTask:204,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1].<init>(io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache)"
    functionSourceFile: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.Cache].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1:37,1"
      Dst: "[io.netty.resolver.dns.Cache].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1].shouldReplaceAll(java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1].equals(java.net.InetSocketAddress,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.net.InetSocketAddress].getHostString()"
    - "[java.net.InetSocketAddress].getHostName()"
    functionUses: 1
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1:45"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1:48"
        BranchSideFuncs:
        - "getHostString()"
      - BranchSide: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1:47"
        BranchSideFuncs:
        - "getHostName()"
        - "equalsIgnoreCase(java.lang.String)"
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1:45,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1:46,1"
      Dst: "[java.net.InetSocketAddress].getHostString()"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1:46,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1:48,1"
      Dst: "[java.net.InetSocketAddress].getHostName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1].sortEntries(java.lang.String,java.util.List)"
    functionSourceFile: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].access$000(io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache)"
    - "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1:53"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1:56"
        BranchSideFuncs:
        - "sort(java.util.List,java.util.Comparator)"
        - "access$000(io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache)"
      - BranchSide: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1:55"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1:53,1"
      Dst: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].access$000(io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache)"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1:54,1"
      Dst: "[java.util.Collections].sort(java.util.List,java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].access$000(io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache)"
    functionSourceFile: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "java.util.Comparator"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1].equals(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1].equals(java.net.InetSocketAddress,java.net.InetSocketAddress)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1:37,1"
      Dst: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1].equals(java.net.InetSocketAddress,java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1].shouldReplaceAll(java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1].shouldReplaceAll(java.net.InetSocketAddress)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1:37,1"
      Dst: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1].shouldReplaceAll(java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper].<init>()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$AllocatorAwareSslEngineWrapperFactory].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:129,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$AllocatorAwareSslEngineWrapperFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper].wrapSslEngine(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 153
    functionDepth: 3
    returnType: "javax.net.ssl.SSLEngine"
    argCount: 4
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.Conscrypt].isEngineSupported(javax.net.ssl.SSLEngine)"
    - "[io.netty.handler.ssl.ConscryptAlpnSslEngine].newServerEngine(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
    - "[io.netty.handler.ssl.ConscryptAlpnSslEngine].newClientEngine(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
    - "[io.netty.handler.ssl.BouncyCastle].isInUse(javax.net.ssl.SSLEngine)"
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    - "[io.netty.handler.ssl.JdkAlpnSslUtils].supportsAlpn()"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    - "[io.netty.handler.ssl.JettyAlpnSslEngine].isAvailable()"
    - "[io.netty.handler.ssl.JettyAlpnSslEngine].newServerEngine(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
    - "[io.netty.handler.ssl.JettyAlpnSslEngine].newClientEngine(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 40
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:137"
        BranchSideFuncs:
        - "newServerEngine(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
      - BranchSide: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:136"
        BranchSideFuncs:
        - "isInUse(javax.net.ssl.SSLEngine)"
    - Branch String: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:135"
        BranchSideFuncs:
        - "newClientEngine(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
      - BranchSide: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:134"
        BranchSideFuncs:
        - "newClientEngine(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
    - Branch String: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:137"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:144"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:143"
        BranchSideFuncs:
        - "supportsAlpn()"
    - Branch String: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:147"
        BranchSideFuncs:
        - "<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
      - BranchSide: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:146"
        BranchSideFuncs:
        - "isAvailable()"
    - Branch String: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:147"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:151"
        BranchSideFuncs:
        - "newServerEngine(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
      - BranchSide: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:150"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "getClass()"
        - "<init>()"
        - "getName()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:149"
        BranchSideFuncs:
        - "newClientEngine(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
      - BranchSide: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:148"
        BranchSideFuncs:
        - "newClientEngine(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:133,1"
      Dst: "[io.netty.handler.ssl.Conscrypt].isEngineSupported(javax.net.ssl.SSLEngine)"
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:134,1"
      Dst: "[io.netty.handler.ssl.ConscryptAlpnSslEngine].newServerEngine(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:135,1"
      Dst: "[io.netty.handler.ssl.ConscryptAlpnSslEngine].newClientEngine(javax.net.ssl.SSLEngine,io.netty.buffer.ByteBufAllocator,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:137,1"
      Dst: "[io.netty.handler.ssl.BouncyCastle].isInUse(javax.net.ssl.SSLEngine)"
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:138,1"
      Dst: "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:144,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslUtils].supportsAlpn()"
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:145,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:147,1"
      Dst: "[io.netty.handler.ssl.JettyAlpnSslEngine].isAvailable()"
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:148,1"
      Dst: "[io.netty.handler.ssl.JettyAlpnSslEngine].newServerEngine(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:149,1"
      Dst: "[io.netty.handler.ssl.JettyAlpnSslEngine].newClientEngine(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:151,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:151,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:152,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:152,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:152,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:152,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.BouncyCastle].isInUse(javax.net.ssl.SSLEngine)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastle"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Package].getName()"
    - "[java.lang.Class].getPackage()"
    - "[java.lang.String].startsWith(java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastle:49,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.ssl.BouncyCastle:49,1"
      Dst: "[java.lang.Class].getPackage()"
    - Src: "io.netty.handler.ssl.BouncyCastle:49,1"
      Dst: "[java.lang.Package].getName()"
    - Src: "io.netty.handler.ssl.BouncyCastle:49,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine$1].<init>()"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine$1"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine$1:32,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine$2].<init>()"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine$2"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine$2:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine$1].<init>()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine$1"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine$1:105,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper].<init>(io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$1)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper:129,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator$AlpnWrapper].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedWriteHandler$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.stream.ChunkedWriteHandler$2"
    linkageType: ""
    functionLinenumber: 281
    functionLinenumberEnd: 284
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.stream.ChunkedWriteHandler].access$100(io.netty.channel.ChannelFuture,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedWriteHandler$2:282,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler].access$100(io.netty.channel.ChannelFuture,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedWriteHandler].access$100(io.netty.channel.ChannelFuture,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite)"
    functionSourceFile: "io.netty.handler.stream.ChunkedWriteHandler"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelFuture"
    - "io.netty.handler.stream.ChunkedWriteHandler$PendingWrite"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.stream.ChunkedWriteHandler].handleEndOfInputFuture(io.netty.channel.ChannelFuture,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedWriteHandler:70,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler].handleEndOfInputFuture(io.netty.channel.ChannelFuture,io.netty.handler.stream.ChunkedWriteHandler$PendingWrite)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.stream.ChunkedWriteHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.stream.ChunkedWriteHandler$2"
    linkageType: ""
    functionLinenumber: 278
    functionLinenumberEnd: 280
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.stream.ChunkedWriteHandler$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.stream.ChunkedWriteHandler$2:279,1"
      Dst: "[io.netty.handler.stream.ChunkedWriteHandler$2].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.ChannelTrafficShapingHandler$ToSend].<init>(long,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.traffic.ChannelTrafficShapingHandler$ToSend"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 175
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.ChannelTrafficShapingHandler$ToSend:170,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.ChannelTrafficShapingHandler$ToSend].<init>(long,java.lang.Object,io.netty.channel.ChannelPromise,io.netty.handler.traffic.ChannelTrafficShapingHandler$1)"
    functionSourceFile: "io.netty.handler.traffic.ChannelTrafficShapingHandler$ToSend"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    - "io.netty.handler.traffic.ChannelTrafficShapingHandler$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$ToSend].<init>(long,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.ChannelTrafficShapingHandler$ToSend:165,1"
      Dst: "[io.netty.handler.traffic.ChannelTrafficShapingHandler$ToSend].<init>(long,java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].<init>(io.netty.handler.ssl.SslHandler$SslTasksRunner)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslTasksRunner$1"
    linkageType: ""
    functionLinenumber: 1610
    functionLinenumberEnd: 1612
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner$1:1611,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslTasksRunner$1"
    linkageType: ""
    functionLinenumber: 1613
    functionLinenumberEnd: 1616
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].runComplete()"
    functionUses: 49
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner$1:1614,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].runComplete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].runComplete()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    linkageType: ""
    functionLinenumber: 1758
    functionLinenumberEnd: 1774
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].access$900(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].<init>(io.netty.handler.ssl.SslHandler$SslTasksRunner)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 3
    ICount: 8
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1759,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$900(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1759,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1767,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].<init>(io.netty.handler.ssl.SslHandler$SslTasksRunner)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1767,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].<init>(io.netty.handler.ssl.SslHandler$SslTasksRunner)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslTasksRunner$2"
    linkageType: ""
    functionLinenumber: 1766
    functionLinenumberEnd: 1768
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner$2:1767,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].<init>(io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultProgressivePromise].<init>(io.netty.util.concurrent.EventExecutor)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:52,1"
      Dst: "[io.netty.util.concurrent.DefaultProgressivePromise].<init>(io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].executor()"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 63
    functionDepth: 1
    returnType: "io.netty.util.concurrent.EventExecutor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].executor()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].channel()"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.channel.Channel].eventLoop()"
    functionUses: 3
    ICount: 7
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelProgressivePromise:59"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelProgressivePromise:62"
        BranchSideFuncs:
        - "channel()"
        - "eventLoop()"
      - BranchSide: "io.netty.channel.DefaultChannelProgressivePromise:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:58,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].executor()"
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:60,1"
      Dst: "[io.netty.channel.DefaultChannelProgressivePromise].channel()"
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:60,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].channel()"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "io.netty.channel.Channel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 10
    returnType: "io.netty.channel.ChannelProgressivePromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Void)"
    functionUses: 50
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:73,1"
      Dst: "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Void)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Void)"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionDepth: 9
    returnType: "io.netty.channel.ChannelProgressivePromise"
    argCount: 1
    argTypes:
    - "java.lang.Void"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:78,1"
      Dst: "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.DefaultProgressivePromise"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionDepth: 8
    returnType: "io.netty.util.concurrent.ProgressivePromise"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    functionUses: 41
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:121,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].trySuccess()"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 8
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    functionUses: 12
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:84,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionDepth: 9
    returnType: "io.netty.channel.ChannelProgressivePromise"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    functionUses: 126
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:89,1"
      Dst: "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    functionSourceFile: "io.netty.util.concurrent.DefaultProgressivePromise"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionDepth: 8
    returnType: "io.netty.util.concurrent.ProgressivePromise<V>"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    functionUses: 30
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:127,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].setProgress(long,long)"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelProgressivePromise"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setProgress(long,long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:95,1"
      Dst: "[io.netty.util.concurrent.DefaultProgressivePromise].setProgress(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultProgressivePromise].setProgress(long,long)"
    functionSourceFile: "io.netty.util.concurrent.DefaultProgressivePromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.util.concurrent.ProgressivePromise<V>"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].notifyProgressiveListeners(long,long)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultProgressivePromise:39"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultProgressivePromise:42"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultProgressivePromise:43"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultProgressivePromise:44"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultProgressivePromise:43"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultProgressivePromise:43"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultProgressivePromise:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultProgressivePromise:47"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultProgressivePromise:48"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultProgressivePromise:52"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultProgressivePromise:51"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:42,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:44,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:44,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:44,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:44,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:44,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:48,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:49,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:52,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].notifyProgressiveListeners(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.concurrent.DefaultPromise].notifyProgressiveListeners(long,long)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 717
    functionLinenumberEnd: 756
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].progressiveListeners()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].executor()"
    - "[io.netty.handler.proxy.ProxyHandler$LazyChannelPromise].executor()"
    - "[io.netty.channel.DefaultChannelPromise].executor()"
    - "[io.netty.handler.ssl.SslHandler$LazyChannelPromise].executor()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].executor()"
    - "[io.netty.bootstrap.AbstractBootstrap$PendingRegistrationPromise].executor()"
    - "[io.netty.util.concurrent.DefaultPromise].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.DefaultPromise].notifyProgressiveListeners0(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener[],long,long)"
    - "[io.netty.util.concurrent.DefaultPromise].notifyProgressiveListener0(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener,long,long)"
    - "[io.netty.util.concurrent.DefaultPromise$3].<init>(io.netty.util.concurrent.DefaultPromise,io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener[],long,long)"
    - "[io.netty.util.concurrent.DefaultPromise].safeExecute(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
    - "[io.netty.util.concurrent.DefaultPromise$4].<init>(io.netty.util.concurrent.DefaultPromise,io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener,long,long)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    functionUses: 1
    ICount: 32
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:719"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:723"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:722"
        BranchSideFuncs:
        - "executor()"
        - "inEventLoop()"
    - Branch String: "io.netty.util.concurrent.DefaultPromise:726"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:735"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:734"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:727"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:731"
        BranchSideFuncs:
        - "notifyProgressiveListeners0(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener[],long,long)"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:730"
        BranchSideFuncs:
        - "notifyProgressiveListener0(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener,long,long)"
    - Branch String: "io.netty.util.concurrent.DefaultPromise:735"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:745"
        BranchSideFuncs:
        - "<init>(io.netty.util.concurrent.DefaultPromise,io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener[],long,long)"
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:744"
        BranchSideFuncs:
        - "safeExecute(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
        - "<init>(io.netty.util.concurrent.DefaultPromise,io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener,long,long)"
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:718,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].progressiveListeners()"
    - Src: "io.netty.util.concurrent.DefaultPromise:725,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].executor()"
    - Src: "io.netty.util.concurrent.DefaultPromise:726,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.util.concurrent.DefaultPromise:728,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].notifyProgressiveListeners0(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener[],long,long)"
    - Src: "io.netty.util.concurrent.DefaultPromise:731,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].notifyProgressiveListener0(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener,long,long)"
    - Src: "io.netty.util.concurrent.DefaultPromise:738,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise$3].<init>(io.netty.util.concurrent.DefaultPromise,io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener[],long,long)"
    - Src: "io.netty.util.concurrent.DefaultPromise:738,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].safeExecute(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
    - Src: "io.netty.util.concurrent.DefaultPromise:747,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise$4].<init>(io.netty.util.concurrent.DefaultPromise,io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener,long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.concurrent.DefaultPromise].progressiveListeners()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 761
    functionLinenumberEnd: 799
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultFutureListeners].progressiveSize()"
    - "[io.netty.util.concurrent.DefaultFutureListeners].listeners()"
    functionUses: 1
    ICount: 40
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:763"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:767"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:768"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:793"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:776"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:781"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:780"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:777"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:776"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:775"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:786"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:793"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:792"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:788"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:784"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:783"
        BranchSideFuncs:
        - "listeners()"
    - Branch String: "io.netty.util.concurrent.DefaultPromise:794"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:798"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:797"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:771,1"
      Dst: "[io.netty.util.concurrent.DefaultFutureListeners].progressiveSize()"
    - Src: "io.netty.util.concurrent.DefaultPromise:776,1"
      Dst: "[io.netty.util.concurrent.DefaultFutureListeners].listeners()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 20
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.concurrent.DefaultPromise].notifyProgressiveListeners0(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener[],long,long)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 803
    functionLinenumberEnd: 811
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.util.concurrent.ProgressiveFuture"
    - "io.netty.util.concurrent.GenericProgressiveFutureListener[]"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].notifyProgressiveListener0(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener,long,long)"
    functionUses: 2
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultPromise:804"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:810"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:809"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.DefaultPromise:805"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultPromise:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:808,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].notifyProgressiveListener0(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener,long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.concurrent.DefaultPromise$3].<init>(io.netty.util.concurrent.DefaultPromise,io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener[],long,long)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise$3"
    linkageType: ""
    functionLinenumber: 737
    functionLinenumberEnd: 739
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.util.concurrent.DefaultPromise"
    - "io.netty.util.concurrent.ProgressiveFuture"
    - "io.netty.util.concurrent.GenericProgressiveFutureListener[]"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise$3:738,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener<?\
      \ extends Future<? super Void>>)"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "io.netty.channel.ChannelProgressivePromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener<? extends Future<? super Void>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 129
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:101,1"
      Dst: "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.channel.ChannelProgressivePromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:107,1"
      Dst: "[io.netty.util.concurrent.DefaultProgressivePromise].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultProgressivePromise].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionSourceFile: "io.netty.util.concurrent.DefaultProgressivePromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.util.concurrent.ProgressivePromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:79,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].removeListener(io.netty.util.concurrent.GenericFutureListener<?\
      \ extends Future<? super Void>>)"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "io.netty.channel.ChannelProgressivePromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener<? extends Future<? super Void>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultProgressivePromise].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:113,1"
      Dst: "[io.netty.util.concurrent.DefaultProgressivePromise].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.ChannelProgressivePromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultProgressivePromise].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:120,1"
      Dst: "[io.netty.util.concurrent.DefaultProgressivePromise].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultProgressivePromise].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionSourceFile: "io.netty.util.concurrent.DefaultProgressivePromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.util.concurrent.ProgressivePromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:91,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].sync()"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.channel.ChannelProgressivePromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultProgressivePromise].sync()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:126,1"
      Dst: "[io.netty.util.concurrent.DefaultProgressivePromise].sync()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultProgressivePromise].sync()"
    functionSourceFile: "io.netty.util.concurrent.DefaultProgressivePromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.util.concurrent.ProgressivePromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].sync()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:97,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].sync()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].syncUninterruptibly()"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionDepth: 7
    returnType: "io.netty.channel.ChannelProgressivePromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultProgressivePromise].syncUninterruptibly()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:132,1"
      Dst: "[io.netty.util.concurrent.DefaultProgressivePromise].syncUninterruptibly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultProgressivePromise].syncUninterruptibly()"
    functionSourceFile: "io.netty.util.concurrent.DefaultProgressivePromise"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionDepth: 6
    returnType: "io.netty.util.concurrent.ProgressivePromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].syncUninterruptibly()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:103,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].syncUninterruptibly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].await()"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionDepth: 6
    returnType: "io.netty.channel.ChannelProgressivePromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultProgressivePromise].await()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:138,1"
      Dst: "[io.netty.util.concurrent.DefaultProgressivePromise].await()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultProgressivePromise].await()"
    functionSourceFile: "io.netty.util.concurrent.DefaultProgressivePromise"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionDepth: 5
    returnType: "io.netty.util.concurrent.ProgressivePromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].await()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:109,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].await()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].awaitUninterruptibly()"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 146
    functionDepth: 6
    returnType: "io.netty.channel.ChannelProgressivePromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultProgressivePromise].awaitUninterruptibly()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:144,1"
      Dst: "[io.netty.util.concurrent.DefaultProgressivePromise].awaitUninterruptibly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultProgressivePromise].awaitUninterruptibly()"
    functionSourceFile: "io.netty.util.concurrent.DefaultProgressivePromise"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionDepth: 5
    returnType: "io.netty.util.concurrent.ProgressivePromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].awaitUninterruptibly()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultProgressivePromise:115,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].awaitUninterruptibly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].flushCheckpoint()"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].flushCheckpoint(long)"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].promise()"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelProgressivePromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].checkDeadLock()"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 169
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelProgressivePromise].channel()"
    - "[io.netty.channel.AbstractChannel].isRegistered()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isRegistered()"
    - "[io.netty.util.concurrent.DefaultPromise].checkDeadLock()"
    - "[io.netty.channel.Channel].isRegistered()"
    functionUses: 2
    ICount: 6
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelProgressivePromise:165"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelProgressivePromise:168"
        BranchSideFuncs:
        - "checkDeadLock()"
      - BranchSide: "io.netty.channel.DefaultChannelProgressivePromise:167"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:165,1"
      Dst: "[io.netty.channel.DefaultChannelProgressivePromise].channel()"
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:165,1"
      Dst: "[io.netty.channel.Channel].isRegistered()"
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:166,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].checkDeadLock()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].unvoid()"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionDepth: 0
    returnType: "io.netty.channel.ChannelProgressivePromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].isVoid()"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Object)"
    functionSourceFile: "io.netty.channel.DefaultChannelProgressivePromise"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 10
    returnType: "io.netty.util.concurrent.ProgressivePromise"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Void)"
    functionUses: 40
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelProgressivePromise:29,1"
      Dst: "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Void)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandshakeCompletionEvent].<init>()"
    functionSourceFile: "io.netty.handler.ssl.SslHandshakeCompletionEvent"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslCompletionEvent].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandshakeCompletionEvent:30,1"
      Dst: "[io.netty.handler.ssl.SslCompletionEvent].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].<init>()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeaders:38,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].getAsString(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyHeaders"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils].getAsString(io.netty.handler.codec.Headers,java.lang.Object)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeaders:50,1"
      Dst: "[io.netty.handler.codec.HeadersUtils].getAsString(io.netty.handler.codec.Headers,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].getAllAsString(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.List<String>"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils].getAllAsString(io.netty.handler.codec.Headers,java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeaders:55,1"
      Dst: "[io.netty.handler.codec.HeadersUtils].getAllAsString(io.netty.handler.codec.Headers,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].iteratorAsString()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils].iteratorAsString(java.lang.Iterable)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeaders:60,1"
      Dst: "[io.netty.handler.codec.HeadersUtils].iteratorAsString(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].contains(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeaders:65,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object,java.lang.Object,io.netty.util.HashingStrategy)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.DefaultSpdyHeaders:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.DefaultSpdyHeaders:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeaders:70,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].contains(java.lang.Object,java.lang.Object,io.netty.util.HashingStrategy)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].contains(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].contains(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyHeaders:29,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyHeaders].contains(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders].size()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders"
    linkageType: ""
    functionLinenumber: 565
    functionLinenumberEnd: 567
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders].error(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders"
    linkageType: ""
    functionLinenumber: 570
    functionLinenumberEnd: 576
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$000(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2LifecycleManager].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 3
    ICount: 10
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:571"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:574"
        BranchSideFuncs:
        - "onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
        - "access$000(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:573"
        BranchSideFuncs:
        - "tryFailure(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:572,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$000(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:572,1"
      Dst: "[io.netty.handler.codec.http2.Http2LifecycleManager].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:574,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders].write(io.netty.channel.ChannelHandlerContext,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders"
    linkageType: ""
    functionLinenumber: 578
    functionLinenumberEnd: 594
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$100(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$200(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].isServer()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$300(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$400(io.netty.handler.codec.http2.Http2FrameWriter,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].headersSent(boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].headersSent(boolean)"
    - "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.handler.codec.http2.Http2Stream].headersSent(boolean)"
    functionUses: 1
    ICount: 30
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:588"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:592"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:579,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$100(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:579,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:579,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$200(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:582,1"
      Dst: "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:584,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$300(io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:584,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:584,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].access$400(io.netty.handler.codec.http2.Http2FrameWriter,io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,boolean,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:587,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders:591,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].headersSent(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders].merge(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder$FlowControlledHeaders"
    linkageType: ""
    functionLinenumber: 596
    functionLinenumberEnd: 598
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2RemoteFlowController$FlowControlled"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrapConfig].<init>(io.netty.bootstrap.ServerBootstrap)"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrapConfig"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.bootstrap.ServerBootstrap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.AbstractBootstrapConfig].<init>(io.netty.bootstrap.AbstractBootstrap)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:33,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrapConfig].<init>(io.netty.bootstrap.AbstractBootstrap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrapConfig].childGroup()"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrapConfig"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 1
    returnType: "io.netty.channel.EventLoopGroup"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.ServerBootstrap].childGroup()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:42,1"
      Dst: "[io.netty.bootstrap.ServerBootstrap].childGroup()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrap].childGroup()"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 263
    functionDepth: 0
    returnType: "io.netty.channel.EventLoopGroup"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrapConfig].childHandler()"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrapConfig"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 1
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.ServerBootstrap].childHandler()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:50,1"
      Dst: "[io.netty.bootstrap.ServerBootstrap].childHandler()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrap].childHandler()"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap"
    linkageType: ""
    functionLinenumber: 265
    functionLinenumberEnd: 267
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrapConfig].childOptions()"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrapConfig"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.ServerBootstrap].childOptions()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:57,1"
      Dst: "[io.netty.bootstrap.ServerBootstrap].childOptions()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrap].childOptions()"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap"
    linkageType: ""
    functionLinenumber: 269
    functionLinenumberEnd: 273
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.AbstractBootstrap].copiedMap(java.util.Map)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrap:271,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].copiedMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrapConfig].childAttrs()"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrapConfig"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 1
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.ServerBootstrap].childAttrs()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:64,1"
      Dst: "[io.netty.bootstrap.ServerBootstrap].childAttrs()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrap].childAttrs()"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap"
    linkageType: ""
    functionLinenumber: 275
    functionLinenumberEnd: 277
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.AbstractBootstrap].copiedMap(java.util.Map)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrap:276,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].copiedMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrapConfig].toString()"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrapConfig"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 104
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].toString()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.bootstrap.ServerBootstrapConfig].childGroup()"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[io.netty.bootstrap.ServerBootstrapConfig].childOptions()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].isEmpty()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap:io.netty.util.collection.ByteObjectHashMap:io.netty.util.collection.CharCollections$EmptyMap:io.netty.util.collection.CharObjectHashMap:io.netty.util.collection.IntCollections$EmptyMap:io.netty.util.collection.IntObjectHashMap:io.netty.util.collection.LongCollections$EmptyMap:io.netty.util.collection.LongObjectHashMap:io.netty.util.collection.ShortCollections$EmptyMap:io.netty.util.collection.ShortObjectHashMap:java.lang.StringBuilder:java.util.AbstractMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.Properties:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.bootstrap.ServerBootstrapConfig].childAttrs()"
    - "[io.netty.bootstrap.ServerBootstrapConfig].childHandler()"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].setCharAt(int,char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Map].isEmpty()"
    functionUses: 19
    ICount: 46
    EdgeCount: 42
    BranchProfiles:
    - Branch String: "io.netty.bootstrap.ServerBootstrapConfig:73"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.ServerBootstrapConfig:78"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
      - BranchSide: "io.netty.bootstrap.ServerBootstrapConfig:77"
        BranchSideFuncs:
        - "childOptions()"
    - Branch String: "io.netty.bootstrap.ServerBootstrapConfig:79"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.ServerBootstrapConfig:84"
        BranchSideFuncs: []
      - BranchSide: "io.netty.bootstrap.ServerBootstrapConfig:83"
        BranchSideFuncs:
        - "isEmpty()"
        - "childAttrs()"
    - Branch String: "io.netty.bootstrap.ServerBootstrapConfig:85"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.ServerBootstrapConfig:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.bootstrap.ServerBootstrapConfig:89"
        BranchSideFuncs:
        - "childHandler()"
    - Branch String: "io.netty.bootstrap.ServerBootstrapConfig:91"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.ServerBootstrapConfig:96"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
      - BranchSide: "io.netty.bootstrap.ServerBootstrapConfig:95"
        BranchSideFuncs:
        - "charAt(int)"
    - Branch String: "io.netty.bootstrap.ServerBootstrapConfig:96"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.ServerBootstrapConfig:99"
        BranchSideFuncs:
        - "append(char)"
      - BranchSide: "io.netty.bootstrap.ServerBootstrapConfig:98"
        BranchSideFuncs:
        - "length()"
        - "setCharAt(int,char)"
        - "setLength(int)"
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:69,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrapConfig].toString()"
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:69,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:70,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:70,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:71,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:72,1"
      Dst: "[io.netty.bootstrap.ServerBootstrapConfig].childGroup()"
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:75,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:78,1"
      Dst: "[io.netty.bootstrap.ServerBootstrapConfig].childOptions()"
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:79,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:81,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:84,1"
      Dst: "[io.netty.bootstrap.ServerBootstrapConfig].childAttrs()"
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:90,1"
      Dst: "[io.netty.bootstrap.ServerBootstrapConfig].childHandler()"
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:96,1"
      Dst: "[java.lang.StringBuilder].charAt(int)"
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:97,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:99,1"
      Dst: "[java.lang.StringBuilder].setCharAt(int,char)"
    - Src: "io.netty.bootstrap.ServerBootstrapConfig:103,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$1].<init>(io.netty.handler.codec.http2.UniformStreamByteDistributor)"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$1:56,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$1].onStreamAdded(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor$1"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].<init>(io.netty.handler.codec.http2.UniformStreamByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor].access$000(io.netty.handler.codec.http2.UniformStreamByteDistributor)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$1:59,1"
      Dst: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].access$000(io.netty.handler.codec.http2.UniformStreamByteDistributor)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$1:59,1"
      Dst: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].<init>(io.netty.handler.codec.http2.UniformStreamByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$1:59,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].access$000(io.netty.handler.codec.http2.UniformStreamByteDistributor)"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Connection$PropertyKey"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].<init>(io.netty.handler.codec.http2.UniformStreamByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 144
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:141,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$1].onStreamClosed(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor$1"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor].access$100(io.netty.handler.codec.http2.UniformStreamByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].close()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$1:64,1"
      Dst: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].access$100(io.netty.handler.codec.http2.UniformStreamByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$1:64,1"
      Dst: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].access$100(io.netty.handler.codec.http2.UniformStreamByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 2
    returnType: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor].state(io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:38,1"
      Dst: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].state(io.netty.handler.codec.http2.Http2Stream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].state(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:128,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:128,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].close()"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 204
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].removeFromQueue()"
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].updateStreamableBytes(int,boolean,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:199,1"
      Dst: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].removeFromQueue()"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:202,1"
      Dst: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].updateStreamableBytes(int,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].removeFromQueue()"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 196
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor].access$300(io.netty.handler.codec.http2.UniformStreamByteDistributor)"
    - "[java.util.concurrent.LinkedBlockingDeque].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].remove(java.lang.Object)"
    - "[java.util.ArrayDeque].remove(java.lang.Object)"
    - "[java.util.LinkedList].remove(java.lang.Object)"
    - "[java.util.Deque].remove(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:191"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:195"
        BranchSideFuncs:
        - "access$300(io.netty.handler.codec.http2.UniformStreamByteDistributor)"
        - "remove(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:194"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:193,1"
      Dst: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].access$300(io.netty.handler.codec.http2.UniformStreamByteDistributor)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:193,1"
      Dst: "[java.util.Deque].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].access$300(io.netty.handler.codec.http2.UniformStreamByteDistributor)"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "java.util.Deque"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].updateStreamableBytes(int,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 166
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor].access$200(io.netty.handler.codec.http2.UniformStreamByteDistributor)"
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor].access$202(io.netty.handler.codec.http2.UniformStreamByteDistributor,long)"
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].addToQueue()"
    functionUses: 2
    ICount: 40
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:146"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:146"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:146"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:161"
        BranchSideFuncs:
        - "access$202(io.netty.handler.codec.http2.UniformStreamByteDistributor,long)"
        - "access$200(io.netty.handler.codec.http2.UniformStreamByteDistributor)"
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:160"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:161"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:161"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:160"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:162"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:165"
        BranchSideFuncs:
        - "addToQueue()"
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:164"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:162"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:163"
        BranchSideFuncs:
        - "addToQueue()"
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:162"
        BranchSideFuncs:
        - "addToQueue()"
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:162"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:165"
        BranchSideFuncs:
        - "addToQueue()"
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:164"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:162"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:165"
        BranchSideFuncs:
        - "addToQueue()"
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:146,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:146,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:146,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:146,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:146,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:146,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:152,1"
      Dst: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].access$200(io.netty.handler.codec.http2.UniformStreamByteDistributor)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:152,1"
      Dst: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].access$202(io.netty.handler.codec.http2.UniformStreamByteDistributor,long)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:163,1"
      Dst: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].addToQueue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].access$200(io.netty.handler.codec.http2.UniformStreamByteDistributor)"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].access$202(io.netty.handler.codec.http2.UniformStreamByteDistributor,long)"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].addToQueue()"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 189
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor].access$300(io.netty.handler.codec.http2.UniformStreamByteDistributor)"
    - "[java.util.ArrayDeque].addLast(java.lang.Object)"
    - "[java.util.LinkedList].addLast(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].addLast(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].addLast(java.lang.Object)"
    - "[java.util.Deque].addLast(java.lang.Object)"
    functionUses: 1
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:188"
        BranchSideFuncs:
        - "access$300(io.netty.handler.codec.http2.UniformStreamByteDistributor)"
        - "addLast(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:187"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:186,1"
      Dst: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].access$300(io.netty.handler.codec.http2.UniformStreamByteDistributor)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:186,1"
      Dst: "[java.util.Deque].addLast(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelOption$1].<init>()"
    functionSourceFile: "io.netty.channel.ChannelOption$1"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ConstantPool].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOption$1:36,1"
      Dst: "[io.netty.util.ConstantPool].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOption$1].newConstant(int,java.lang.String)"
    functionSourceFile: "io.netty.channel.ChannelOption$1"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 2
    returnType: "io.netty.channel.ChannelOption"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOption].<init>(int,java.lang.String,io.netty.channel.ChannelOption$1)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOption$1:39,1"
      Dst: "[io.netty.channel.ChannelOption].<init>(int,java.lang.String,io.netty.channel.ChannelOption$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.SnappyFramedDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.SnappyFramedDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.SnappyFrameDecoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.SnappyFramedDecoder:23,1"
      Dst: "[io.netty.handler.codec.compression.SnappyFrameDecoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode].values()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode:121,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode:121,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode:121,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionTicketKey].<init>(byte[],byte[],byte[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionTicketKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "byte[]"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Object].clone()"
    - "[io.netty.internal.tcnative.SessionTicketKey].<init>(byte[],byte[],byte[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionTicketKey:51,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslSessionTicketKey:52,1"
      Dst: "[java.lang.Object].clone()"
    - Src: "io.netty.handler.ssl.OpenSslSessionTicketKey:52,1"
      Dst: "[io.netty.internal.tcnative.SessionTicketKey].<init>(byte[],byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionTicketKey].name()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionTicketKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SessionTicketKey].getName()"
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionTicketKey:60,1"
      Dst: "[io.netty.internal.tcnative.SessionTicketKey].getName()"
    - Src: "io.netty.handler.ssl.OpenSslSessionTicketKey:60,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionTicketKey].hmacKey()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionTicketKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SessionTicketKey].getHmacKey()"
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionTicketKey:68,1"
      Dst: "[io.netty.internal.tcnative.SessionTicketKey].getHmacKey()"
    - Src: "io.netty.handler.ssl.OpenSslSessionTicketKey:68,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionTicketKey].aesKey()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionTicketKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SessionTicketKey].getAesKey()"
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionTicketKey:76,1"
      Dst: "[io.netty.internal.tcnative.SessionTicketKey].getAesKey()"
    - Src: "io.netty.handler.ssl.OpenSslSessionTicketKey:76,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool$5].run()"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$5"
    linkageType: ""
    functionLinenumber: 471
    functionLinenumberEnd: 483
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.FixedChannelPool$5$1].<init>(io.netty.channel.pool.FixedChannelPool$5)"
    - "[io.netty.channel.pool.FixedChannelPool].access$1200(io.netty.channel.pool.FixedChannelPool)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.CompleteFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 50
    ICount: 7
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$5:472,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].access$1200(io.netty.channel.pool.FixedChannelPool)"
    - Src: "io.netty.channel.pool.FixedChannelPool$5:472,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool$5$1].<init>(io.netty.channel.pool.FixedChannelPool$5)"
    - Src: "io.netty.channel.pool.FixedChannelPool$5:472,1"
      Dst: "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool$5$1].<init>(io.netty.channel.pool.FixedChannelPool$5)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$5$1"
    linkageType: ""
    functionLinenumber: 471
    functionLinenumberEnd: 473
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.pool.FixedChannelPool$5"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$5$1:472,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame].<init>(io.netty.handler.codec.http2.StreamBufferingEncoder,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame"
    linkageType: ""
    functionLinenumber: 363
    functionLinenumberEnd: 370
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http2.StreamBufferingEncoder"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$Frame].<init>(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame:365,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$Frame].<init>(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame].release(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame"
    linkageType: ""
    functionLinenumber: 372
    functionLinenumberEnd: 376
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$Frame].release(java.lang.Throwable)"
    - "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame:373,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$Frame].release(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame:374,1"
      Dst: "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame].send(io.netty.channel.ChannelHandlerContext,int)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame"
    linkageType: ""
    functionLinenumber: 378
    functionLinenumberEnd: 381
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame:379,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 222
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 6
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].isExistingStream(int)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame].<init>(io.netty.handler.codec.http2.StreamBufferingEncoder,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[java.util.concurrent.ConcurrentLinkedQueue].add(java.lang.Object)"
    - "[java.util.AbstractQueue].add(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].add(java.lang.Object)"
    - "[java.util.ArrayDeque].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].add(java.lang.Object)"
    - "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[java.util.Queue].add(java.lang.Object)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 6
    ICount: 29
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder:211"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:214"
        BranchSideFuncs:
        - "writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:213"
        BranchSideFuncs:
        - "get(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:218"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(io.netty.handler.codec.http2.StreamBufferingEncoder,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:217"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "safeRelease(java.lang.Object)"
        - "setFailure(java.lang.Throwable)"
        - "valueOf(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:211,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder].isExistingStream(int)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:212,1"
      Dst: "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:214,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:214,1"
      Dst: "[java.util.TreeMap].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:216,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame].<init>(io.netty.handler.codec.http2.StreamBufferingEncoder,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:216,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:218,1"
      Dst: "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:219,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:219,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2FrameWriter"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 6
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2DataWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 9
    ICount: 10
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2FrameWriter:39,1"
      Dst: "[io.netty.handler.codec.http2.Http2DataWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufProcessor$3].<init>()"
    functionSourceFile: "io.netty.buffer.ByteBufProcessor$3"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufProcessor$3:53,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufProcessor$3].process(byte)"
    functionSourceFile: "io.netty.buffer.ByteBufProcessor$3"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufProcessor$3:56"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufProcessor$3:55"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$1"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel].access$000(io.netty.channel.embedded.EmbeddedChannel,io.netty.channel.ChannelFuture)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$1:68,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel].access$000(io.netty.channel.embedded.EmbeddedChannel,io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannel$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannel$1"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannel$1:65,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannel$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory$1].engineInit(java.security.KeyStore,char[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.KeyStore"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.KeyManagerFactory].init(java.security.KeyStore,char[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory$1:53,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].init(java.security.KeyStore,char[])"
    JavaMethodInfo:
      exceptions:
      - "java.security.KeyStoreException"
      - "java.security.NoSuchAlgorithmException"
      - "java.security.UnrecoverableKeyException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory$1].engineInit(javax.net.ssl.ManagerFactoryParameters)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.ManagerFactoryParameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.KeyManagerFactory].init(javax.net.ssl.ManagerFactoryParameters)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory$1:59,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].init(javax.net.ssl.ManagerFactoryParameters)"
    JavaMethodInfo:
      exceptions:
      - "java.security.InvalidAlgorithmParameterException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory$1].engineGetKeyManagers()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.KeyManager[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.KeyManagerFactory].getKeyManagers()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCachingX509KeyManagerFactory$1:64,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].getKeyManagers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerExpectContinueHandler].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerExpectContinueHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:47,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerExpectContinueHandler].acceptMessage(io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerExpectContinueHandler"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpResponse"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].retainedDuplicate()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].retainedDuplicate()"
    - "[io.netty.handler.codec.http.FullHttpResponse].retainedDuplicate()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:65,1"
      Dst: "[io.netty.handler.codec.http.FullHttpResponse].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerExpectContinueHandler].rejectResponse(io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerExpectContinueHandler"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpResponse"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].retainedDuplicate()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].retainedDuplicate()"
    - "[io.netty.handler.codec.http.FullHttpResponse].retainedDuplicate()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:72,1"
      Dst: "[io.netty.handler.codec.http.FullHttpResponse].retainedDuplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpServerExpectContinueHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.HttpServerExpectContinueHandler"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 97
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpUtil].is100ContinueExpected(io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.handler.codec.http.HttpServerExpectContinueHandler].acceptMessage(io.netty.handler.codec.http.HttpRequest)"
    - "[io.netty.handler.codec.http.HttpServerExpectContinueHandler].rejectResponse(io.netty.handler.codec.http.HttpRequest)"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 2
    ICount: 24
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:95"
        BranchSideFuncs:
        - "is100ContinueExpected(io.netty.handler.codec.http.HttpMessage)"
      - BranchSide: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:94"
        BranchSideFuncs:
        - "channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:80"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:95"
        BranchSideFuncs:
        - "acceptMessage(io.netty.handler.codec.http.HttpRequest)"
      - BranchSide: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:94"
        BranchSideFuncs:
        - "channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:83"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:90"
        BranchSideFuncs:
        - "writeAndFlush(java.lang.Object)"
        - "remove(java.lang.CharSequence)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "headers()"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:80,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].is100ContinueExpected(io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:81,1"
      Dst: "[io.netty.handler.codec.http.HttpServerExpectContinueHandler].acceptMessage(io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:85,1"
      Dst: "[io.netty.handler.codec.http.HttpServerExpectContinueHandler].rejectResponse(io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:86,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:87,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:87,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:92,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:92,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.HttpServerExpectContinueHandler:95,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder].packetId(int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder].packetId(short)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder].packetId(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder:636,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder].packetId(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder].properties(io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder].addReasonCode(short)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Short].valueOf(short)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder:645,1"
      Dst: "[java.lang.Short].valueOf(short)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder:645,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder].addReasonCodes(java.lang.Short[])"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder"
    argCount: 1
    argTypes:
    - "java.lang.Short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder:650,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder:650,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder].build()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttUnsubAckMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].<init>(int,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].<init>(java.lang.Iterable)"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubAckPayload)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder:655,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder:657,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].<init>(int,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder:660,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].<init>(java.lang.Iterable)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$UnsubAckBuilder:661,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubAckPayload)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].<init>(java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 62
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].iterator()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.buffer.CompositeByteBuf].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.channel.pool.AbstractChannelPoolMap].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.channel.DefaultChannelPipeline].iterator()"
    - "[io.netty.channel.group.ChannelGroupException].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$1].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$1].iterator()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$1].iterator()"
    - "[io.netty.handler.codec.EmptyHeaders].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.buffer.PoolChunkList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 168
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload:56"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload:60"
        BranchSideFuncs:
        - "hasNext()"
        - "add(java.lang.Object)"
        - "iterator()"
        - "next()"
        - "checkNotNull(java.lang.Object,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload:59"
        BranchSideFuncs:
        - "unmodifiableList(java.util.List)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload:52,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload:53,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload:55,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload:56,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload:56,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload:56,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload:58,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload:60,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttUnsubAckPayload)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttUnsubAckPayload"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload:35"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload:38"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttUnsubAckPayload:37"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthResponseDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthResponseDecoder$State"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksAuthResponseDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthResponseDecoder$State:59,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthResponseDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthResponseDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksAuthResponseDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthResponseDecoder$State:59,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthResponseDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthResponseDecoder$State"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthResponseDecoder$State:60,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].<init>(io.netty.handler.codec.http2.Http2Connection)"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayDeque].<init>(int)"
    - "[io.netty.handler.codec.http2.Http2Connection].newKey()"
    - "[io.netty.handler.codec.http2.Http2Connection].connectionStream()"
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].<init>(io.netty.handler.codec.http2.UniformStreamByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor$1].<init>(io.netty.handler.codec.http2.UniformStreamByteDistributor)"
    - "[io.netty.handler.codec.http2.Http2Connection].addListener(io.netty.handler.codec.http2.Http2Connection$Listener)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:49,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:40,1"
      Dst: "[java.util.ArrayDeque].<init>(int)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:51,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].newKey()"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:52,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].connectionStream()"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:53,1"
      Dst: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].<init>(io.netty.handler.codec.http2.UniformStreamByteDistributor,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:53,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:56,1"
      Dst: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$1].<init>(io.netty.handler.codec.http2.UniformStreamByteDistributor)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:56,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].addListener(io.netty.handler.codec.http2.Http2Connection$Listener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].minAllocationChunk(int)"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:76,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].updateStreamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 86
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.StreamByteDistributor$StreamState"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor].state(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].stream()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil].streamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].updateStreamableBytes(int,boolean,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].hasFrame()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].windowSize()"
    - "[io.netty.handler.codec.http2.StreamByteDistributor$StreamState].stream()"
    - "[io.netty.handler.codec.http2.StreamByteDistributor$StreamState].hasFrame()"
    - "[io.netty.handler.codec.http2.StreamByteDistributor$StreamState].windowSize()"
    functionUses: 3
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:82,1"
      Dst: "[io.netty.handler.codec.http2.StreamByteDistributor$StreamState].stream()"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:82,1"
      Dst: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].state(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:82,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].streamableBytes(io.netty.handler.codec.http2.StreamByteDistributor$StreamState)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:83,1"
      Dst: "[io.netty.handler.codec.http2.StreamByteDistributor$StreamState].hasFrame()"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:84,1"
      Dst: "[io.netty.handler.codec.http2.StreamByteDistributor$StreamState].windowSize()"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:82,1"
      Dst: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].updateStreamableBytes(int,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].updateDependencyTree(int,int,short,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "short"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor].distribute(int,io.netty.handler.codec.http2.StreamByteDistributor$Writer)"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 125
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.StreamByteDistributor$Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].size()"
    - "[java.lang.Math].max(int,int)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].pollFirst()"
    - "[java.util.ArrayDeque:java.util.LinkedList:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.LinkedBlockingDeque].addFirst(java.lang.Object)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].write(int,io.netty.handler.codec.http2.StreamByteDistributor$Writer)"
    - "[java.util.ArrayDeque:java.util.LinkedList:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.LinkedBlockingDeque].pollFirst()"
    - "[java.util.Deque].size()"
    - "[java.util.Deque].pollFirst()"
    - "[java.util.Deque].addFirst(java.lang.Object)"
    functionUses: 1
    ICount: 49
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor:99"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor:98"
        BranchSideFuncs:
        - "max(int,int)"
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor:95"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor:107"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor:107"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor:116"
        BranchSideFuncs:
        - "min(int,int)"
        - "write(int,io.netty.handler.codec.http2.StreamByteDistributor$Writer)"
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor:107"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor:116"
        BranchSideFuncs:
        - "min(int,int)"
        - "write(int,io.netty.handler.codec.http2.StreamByteDistributor$Writer)"
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor:122"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.UniformStreamByteDistributor:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.UniformStreamByteDistributor:123"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:94,1"
      Dst: "[java.util.Deque].size()"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:99,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:101,1"
      Dst: "[java.util.Deque].pollFirst()"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:111,1"
      Dst: "[java.util.Deque].addFirst(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:117,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor:121,1"
      Dst: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].write(int,io.netty.handler.codec.http2.StreamByteDistributor$Writer)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http2.UniformStreamByteDistributor$State].write(int,io.netty.handler.codec.http2.StreamByteDistributor$Writer)"
    functionSourceFile: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 182
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.StreamByteDistributor$Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].write(io.netty.handler.codec.http2.Http2Stream,int)"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.StreamByteDistributor$Writer].write(io.netty.handler.codec.http2.Http2Stream,int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:175,1"
      Dst: "[io.netty.handler.codec.http2.StreamByteDistributor$Writer].write(io.netty.handler.codec.http2.Http2Stream,int)"
    - Src: "io.netty.handler.codec.http2.UniformStreamByteDistributor$State:177,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:46,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 80
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.ReplayingDecoder].state()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.socksx.SocksVersion].byteValue()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].valueOf(byte)"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].<init>(io.netty.handler.codec.socksx.v5.Socks5AuthMethod)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder].fail(java.util.List,java.lang.Exception)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 1
    ICount: 49
    EdgeCount: 59
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:60"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "byteValue()"
        - "append(char)"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:59"
        BranchSideFuncs:
        - "checkpoint(java.lang.Object)"
        - "readByte()"
        - "valueOf(byte)"
        - "<init>(io.netty.handler.codec.socksx.v5.Socks5AuthMethod)"
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:78"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "readRetainedSlice(int)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:77"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:52,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].state()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:52,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:54,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:55,1"
      Dst: "[io.netty.handler.codec.socksx.SocksVersion].byteValue()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:56,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:56,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:56,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:57,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:57,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:57,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:60,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].valueOf(byte)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:61,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].<init>(io.netty.handler.codec.socksx.v5.Socks5AuthMethod)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:61,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:62,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:65,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:67,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:72,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:77,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder].fail(java.util.List,java.lang.Exception)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].<init>(io.netty.handler.codec.socksx.v5.Socks5AuthMethod)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.socksx.v5.Socks5AuthMethod"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.AbstractSocks5Message].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse:29,1"
      Dst: "[io.netty.handler.codec.socksx.v5.AbstractSocks5Message].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse:30,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder].fail(java.util.List<Object>,java.lang.Exception)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 92
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List<Object>"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].<init>(io.netty.handler.codec.socksx.v5.Socks5AuthMethod)"
    - "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    - "[io.netty.handler.codec.socksx.AbstractSocksMessage].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:82"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:86"
        BranchSideFuncs:
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:85"
        BranchSideFuncs:
        - "failure(java.lang.Throwable)"
        - "setDecoderResult(io.netty.handler.codec.DecoderResult)"
        - "add(java.lang.Object)"
        - "checkpoint(java.lang.Object)"
        - "<init>(io.netty.handler.codec.socksx.v5.Socks5AuthMethod)"
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:83,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:86,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:88,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].<init>(io.netty.handler.codec.socksx.v5.Socks5AuthMethod)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:89,1"
      Dst: "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:89,1"
      Dst: "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5InitialResponseDecoder:90,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.HostsFileParser].parseSilently()"
    functionSourceFile: "io.netty.resolver.HostsFileParser"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.resolver.HostsFileEntries"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.HostsFileEntriesProvider].parser()"
    - "[io.netty.resolver.HostsFileEntriesProvider$Parser].parseSilently()"
    - "[io.netty.resolver.HostsFileParser].hostsFileEntries(io.netty.resolver.HostsFileEntriesProvider)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileParser:42,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider].parser()"
    - Src: "io.netty.resolver.HostsFileParser:42,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$Parser].parseSilently()"
    - Src: "io.netty.resolver.HostsFileParser:42,1"
      Dst: "[io.netty.resolver.HostsFileParser].hostsFileEntries(io.netty.resolver.HostsFileEntriesProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileEntriesProvider].parser()"
    functionSourceFile: "io.netty.resolver.HostsFileEntriesProvider"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "io.netty.resolver.HostsFileEntriesProvider$Parser"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileParser].hostsFileEntries(io.netty.resolver.HostsFileEntriesProvider)"
    functionSourceFile: "io.netty.resolver.HostsFileParser"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.resolver.HostsFileEntries"
    argCount: 1
    argTypes:
    - "io.netty.resolver.HostsFileEntriesProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.HostsFileEntriesProvider].ipv4Entries()"
    - "[io.netty.resolver.HostsFileParser].toMapWithSingleValue(java.util.Map)"
    - "[io.netty.resolver.HostsFileEntriesProvider].ipv6Entries()"
    - "[io.netty.resolver.HostsFileEntries].<init>(java.util.Map,java.util.Map)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.resolver.HostsFileParser:108"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileParser:108"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.HostsFileParser:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileParser:109,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider].ipv4Entries()"
    - Src: "io.netty.resolver.HostsFileParser:109,1"
      Dst: "[io.netty.resolver.HostsFileParser].toMapWithSingleValue(java.util.Map)"
    - Src: "io.netty.resolver.HostsFileParser:110,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider].ipv6Entries()"
    - Src: "io.netty.resolver.HostsFileParser:110,1"
      Dst: "[io.netty.resolver.HostsFileEntries].<init>(java.util.Map,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.HostsFileEntries].<init>(java.util.Map,java.util.Map)"
    functionSourceFile: "io.netty.resolver.HostsFileEntries"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Map"
    - "java.util.Map"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>(java.util.Map)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileEntries:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.HostsFileEntries:43,1"
      Dst: "[java.util.HashMap].<init>(java.util.Map)"
    - Src: "io.netty.resolver.HostsFileEntries:43,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileParser].parseSilently(java.nio.charset.Charset[])"
    functionSourceFile: "io.netty.resolver.HostsFileParser"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.resolver.HostsFileEntries"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.HostsFileEntriesProvider].parser()"
    - "[io.netty.resolver.HostsFileEntriesProvider$Parser].parseSilently(java.nio.charset.Charset[])"
    - "[io.netty.resolver.HostsFileParser].hostsFileEntries(io.netty.resolver.HostsFileEntriesProvider)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileParser:53,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider].parser()"
    - Src: "io.netty.resolver.HostsFileParser:53,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$Parser].parseSilently(java.nio.charset.Charset[])"
    - Src: "io.netty.resolver.HostsFileParser:53,1"
      Dst: "[io.netty.resolver.HostsFileParser].hostsFileEntries(io.netty.resolver.HostsFileEntriesProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileParser].parse()"
    functionSourceFile: "io.netty.resolver.HostsFileParser"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.resolver.HostsFileEntries"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.HostsFileEntriesProvider].parser()"
    - "[io.netty.resolver.HostsFileEntriesProvider$Parser].parse()"
    - "[io.netty.resolver.HostsFileParser].hostsFileEntries(io.netty.resolver.HostsFileEntriesProvider)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileParser:63,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider].parser()"
    - Src: "io.netty.resolver.HostsFileParser:63,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$Parser].parse()"
    - Src: "io.netty.resolver.HostsFileParser:63,1"
      Dst: "[io.netty.resolver.HostsFileParser].hostsFileEntries(io.netty.resolver.HostsFileEntriesProvider)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileParser].parse(java.io.File)"
    functionSourceFile: "io.netty.resolver.HostsFileParser"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.resolver.HostsFileEntries"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.HostsFileEntriesProvider].parser()"
    - "[io.netty.resolver.HostsFileEntriesProvider$Parser].parse(java.io.File,java.nio.charset.Charset[])"
    - "[io.netty.resolver.HostsFileParser].hostsFileEntries(io.netty.resolver.HostsFileEntriesProvider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileParser:74,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider].parser()"
    - Src: "io.netty.resolver.HostsFileParser:74,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$Parser].parse(java.io.File,java.nio.charset.Charset[])"
    - Src: "io.netty.resolver.HostsFileParser:74,1"
      Dst: "[io.netty.resolver.HostsFileParser].hostsFileEntries(io.netty.resolver.HostsFileEntriesProvider)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileParser].parse(java.io.File,java.nio.charset.Charset[])"
    functionSourceFile: "io.netty.resolver.HostsFileParser"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.resolver.HostsFileEntries"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.nio.charset.Charset[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.HostsFileEntriesProvider].parser()"
    - "[io.netty.resolver.HostsFileEntriesProvider$Parser].parse(java.io.File,java.nio.charset.Charset[])"
    - "[io.netty.resolver.HostsFileParser].hostsFileEntries(io.netty.resolver.HostsFileEntriesProvider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileParser:86,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider].parser()"
    - Src: "io.netty.resolver.HostsFileParser:86,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$Parser].parse(java.io.File,java.nio.charset.Charset[])"
    - Src: "io.netty.resolver.HostsFileParser:86,1"
      Dst: "[io.netty.resolver.HostsFileParser].hostsFileEntries(io.netty.resolver.HostsFileEntriesProvider)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileParser].parse(java.io.Reader)"
    functionSourceFile: "io.netty.resolver.HostsFileParser"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.resolver.HostsFileEntries"
    argCount: 1
    argTypes:
    - "java.io.Reader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.HostsFileEntriesProvider].parser()"
    - "[io.netty.resolver.HostsFileEntriesProvider$Parser].parse(java.io.Reader)"
    - "[io.netty.resolver.HostsFileParser].hostsFileEntries(io.netty.resolver.HostsFileEntriesProvider)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileParser:97,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider].parser()"
    - Src: "io.netty.resolver.HostsFileParser:97,1"
      Dst: "[io.netty.resolver.HostsFileEntriesProvider$Parser].parse(java.io.Reader)"
    - Src: "io.netty.resolver.HostsFileParser:97,1"
      Dst: "[io.netty.resolver.HostsFileParser].hostsFileEntries(io.netty.resolver.HostsFileEntriesProvider)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileParser].<init>()"
    functionSourceFile: "io.netty.resolver.HostsFileParser"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileParser:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileParser].toMapWithSingleValue(java.util.Map<String,List<InetAddress>>)"
    functionSourceFile: "io.netty.resolver.HostsFileParser"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Map<String,?>"
    argCount: 1
    argTypes:
    - "java.util.Map<String,List<InetAddress>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].size()"
    - "[java.util.HashMap].<init>(int)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.List].isEmpty()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.List].get(int)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.resolver.HostsFileParser:115"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileParser:121"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.HostsFileParser:120"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.HostsFileParser:117"
      Branch Sides:
      - BranchSide: "io.netty.resolver.HostsFileParser:120"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.HostsFileParser:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.HostsFileParser:114,1"
      Dst: "[java.util.Map].size()"
    - Src: "io.netty.resolver.HostsFileParser:114,1"
      Dst: "[java.util.HashMap].<init>(int)"
    - Src: "io.netty.resolver.HostsFileParser:115,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "io.netty.resolver.HostsFileParser:115,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.resolver.HostsFileParser:115,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.resolver.HostsFileParser:115,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.resolver.HostsFileParser:116,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.resolver.HostsFileParser:117,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.resolver.HostsFileParser:118,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.resolver.HostsFileParser:118,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.resolver.HostsFileParser:118,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].add(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet"
    linkageType: ""
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ConcurrentSet].add(java.lang.Object)"
    - "[java.util.TreeSet].add(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].add(java.lang.Object)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].add(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].add(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].add(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet:202,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].addAll(java.util.Collection)"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Set].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet:207,1"
      Dst: "[java.util.Set].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].add(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 196
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].add(java.lang.String)"
    functionUses: 21
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet:195,1"
      Dst: "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].add(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoop$2].<init>(io.netty.channel.ThreadPerChannelEventLoop)"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoop$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ThreadPerChannelEventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoop$2:52,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoop$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoop$2"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 61
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.CompleteChannelFuture:io.netty.channel.DefaultChannelProgressivePromise:io.netty.channel.DefaultChannelPromise:io.netty.channel.ThreadPerChannelEventLoop:io.netty.channel.VoidChannelPromise].access$002(io.netty.channel.ThreadPerChannelEventLoop,io.netty.channel.Channel)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.ThreadPerChannelEventLoop].deregister()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.channel.ChannelFuture].channel()"
    - "[io.netty.channel.ThreadPerChannelEventLoop].access$002(io.netty.channel.ThreadPerChannelEventLoop,io.netty.channel.Channel)"
    functionUses: 1
    ICount: 11
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoop$2:55"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoop$2:58"
        BranchSideFuncs:
        - "access$002(io.netty.channel.ThreadPerChannelEventLoop,io.netty.channel.Channel)"
        - "channel()"
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoop$2:57"
        BranchSideFuncs:
        - "deregister()"
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoop$2:55,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoop$2:56,1"
      Dst: "[io.netty.channel.ChannelFuture].channel()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoop$2:56,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoop].access$002(io.netty.channel.ThreadPerChannelEventLoop,io.netty.channel.Channel)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoop$2:58,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoop].deregister()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoop$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoop$2"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ThreadPerChannelEventLoop$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoop$2:52,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoop$2].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.org.objectweb.asm.Attribute].isUnknown()"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Attribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.org.objectweb.asm.Attribute].isCodeAttribute()"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Attribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.org.objectweb.asm.Attribute].getLabels()"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Attribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "jdk.internal.org.objectweb.asm.Label[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.org.objectweb.asm.Attribute].read(jdk.internal.org.objectweb.asm.ClassReader,int,int,char[],int,jdk.internal.org.objectweb.asm.Label[])"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Attribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "jdk.internal.org.objectweb.asm.Attribute"
    argCount: 6
    argTypes:
    - "jdk.internal.org.objectweb.asm.ClassReader"
    - "int"
    - "int"
    - "char[]"
    - "int"
    - "jdk.internal.org.objectweb.asm.Label[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.org.objectweb.asm.Attribute].<init>(java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.org.objectweb.asm.Attribute:159,1"
      Dst: "[jdk.internal.org.objectweb.asm.Attribute].<init>(java.lang.String)"
    - Src: "jdk.internal.org.objectweb.asm.Attribute:161,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.org.objectweb.asm.Attribute].write(jdk.internal.org.objectweb.asm.ClassWriter,byte[],int,int,int)"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Attribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "jdk.internal.org.objectweb.asm.ByteVector"
    argCount: 5
    argTypes:
    - "jdk.internal.org.objectweb.asm.ClassWriter"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.org.objectweb.asm.ByteVector].<init>()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.org.objectweb.asm.Attribute:192,1"
      Dst: "[jdk.internal.org.objectweb.asm.ByteVector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.org.objectweb.asm.Attribute].getCount()"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Attribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "jdk.internal.org.objectweb.asm.Attribute:206"
      Branch Sides:
      - BranchSide: "jdk.internal.org.objectweb.asm.Attribute:210"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.org.objectweb.asm.Attribute:209"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[jdk.internal.org.objectweb.asm.Attribute].getSize(jdk.internal.org.objectweb.asm.ClassWriter,byte[],int,int,int)"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Attribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 5
    argTypes:
    - "jdk.internal.org.objectweb.asm.ClassWriter"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.org.objectweb.asm.ClassWriter].newUTF8(java.lang.String)"
    - "[jdk.internal.org.objectweb.asm.Attribute].write(jdk.internal.org.objectweb.asm.ClassWriter,byte[],int,int,int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "jdk.internal.org.objectweb.asm.Attribute:242"
      Branch Sides:
      - BranchSide: "jdk.internal.org.objectweb.asm.Attribute:247"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.org.objectweb.asm.Attribute:246"
        BranchSideFuncs: []
    Callsites:
    - Src: "jdk.internal.org.objectweb.asm.Attribute:243,1"
      Dst: "[jdk.internal.org.objectweb.asm.ClassWriter].newUTF8(java.lang.String)"
    - Src: "jdk.internal.org.objectweb.asm.Attribute:244,1"
      Dst: "[jdk.internal.org.objectweb.asm.Attribute].write(jdk.internal.org.objectweb.asm.ClassWriter,byte[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[jdk.internal.org.objectweb.asm.Attribute].put(jdk.internal.org.objectweb.asm.ClassWriter,byte[],int,int,int,jdk.internal.org.objectweb.asm.ByteVector)"
    functionSourceFile: "jdk.internal.org.objectweb.asm.Attribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "jdk.internal.org.objectweb.asm.ClassWriter"
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "jdk.internal.org.objectweb.asm.ByteVector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.org.objectweb.asm.Attribute].write(jdk.internal.org.objectweb.asm.ClassWriter,byte[],int,int,int)"
    - "[jdk.internal.org.objectweb.asm.ClassWriter].newUTF8(java.lang.String)"
    - "[jdk.internal.org.objectweb.asm.ByteVector].putShort(int)"
    - "[jdk.internal.org.objectweb.asm.ByteVector].putInt(int)"
    - "[jdk.internal.org.objectweb.asm.ByteVector].putByteArray(byte[],int,int)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "jdk.internal.org.objectweb.asm.Attribute:279"
      Branch Sides:
      - BranchSide: "jdk.internal.org.objectweb.asm.Attribute:285"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.org.objectweb.asm.Attribute:284"
        BranchSideFuncs: []
    Callsites:
    - Src: "jdk.internal.org.objectweb.asm.Attribute:280,1"
      Dst: "[jdk.internal.org.objectweb.asm.Attribute].write(jdk.internal.org.objectweb.asm.ClassWriter,byte[],int,int,int)"
    - Src: "jdk.internal.org.objectweb.asm.Attribute:281,1"
      Dst: "[jdk.internal.org.objectweb.asm.ClassWriter].newUTF8(java.lang.String)"
    - Src: "jdk.internal.org.objectweb.asm.Attribute:281,1"
      Dst: "[jdk.internal.org.objectweb.asm.ByteVector].putShort(int)"
    - Src: "jdk.internal.org.objectweb.asm.Attribute:281,1"
      Dst: "[jdk.internal.org.objectweb.asm.ByteVector].putInt(int)"
    - Src: "jdk.internal.org.objectweb.asm.Attribute:282,1"
      Dst: "[jdk.internal.org.objectweb.asm.ByteVector].putByteArray(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectPayload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectPayload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttProperties,java.lang.String,byte[],java.lang.String,byte[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnectPayload:51,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.mqtt.MqttConnectPayload:47,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectPayload].<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttProperties,java.lang.String,byte[],java.lang.String,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectPayload].<init>(java.lang.String,java.lang.String,byte[],java.lang.String,byte[])"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectPayload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "byte[]"
    - "java.lang.String"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttProperties,java.lang.String,byte[],java.lang.String,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnectPayload:62,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectPayload].<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttProperties,java.lang.String,byte[],java.lang.String,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectPayload].<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttProperties,java.lang.String,byte[],java.lang.String,byte[])"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectPayload"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 84
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.mqtt.MqttProperties"
    - "java.lang.String"
    - "byte[]"
    - "java.lang.String"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.mqtt.MqttProperties].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttProperties)"
    functionUses: 1
    ICount: 16
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnectPayload:76,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttConnectPayload:78,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectPayload].willMessage()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectPayload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttConnectPayload:102"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttConnectPayload:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnectPayload:102,1"
      Dst: "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectPayload].password()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectPayload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttConnectPayload:118"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttConnectPayload:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnectPayload:118,1"
      Dst: "[java.lang.String].<init>(byte[],java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectPayload].toString()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectPayload"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 136
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.Arrays].toString(byte[])"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 25
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnectPayload:127,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttConnectPayload:127,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttConnectPayload:128,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.mqtt.MqttConnectPayload:129,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttConnectPayload:131,1"
      Dst: "[java.util.Arrays].toString(byte[])"
    - Src: "io.netty.handler.codec.mqtt.MqttConnectPayload:135,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastle].isAvailable()"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastle"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastle].<init>()"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastle"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastle:52,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$2].getStreamId()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$2"
    linkageType: ""
    functionLinenumber: 466
    functionLinenumberEnd: 468
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$2].processFragment(boolean,io.netty.buffer.ByteBuf,int,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$2"
    linkageType: ""
    functionLinenumber: 472
    functionLinenumberEnd: 480
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].headersBlockBuilder()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].addFragment(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBufAllocator,boolean)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].headers()"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2EventAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2FrameAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    - "[io.netty.handler.codec.http2.Http2Flags].endOfStream()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    functionUses: 4
    ICount: 18
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$2:475"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$2:479"
        BranchSideFuncs:
        - "onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$2:478"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$2:473,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersContinuation].headersBlockBuilder()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$2:474,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$2:474,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].addFragment(io.netty.buffer.ByteBuf,int,io.netty.buffer.ByteBufAllocator,boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$2:476,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].headers()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$2:477,1"
      Dst: "[io.netty.handler.codec.http2.Http2Flags].endOfStream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$2:476,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListener].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler"
    linkageType: ""
    functionLinenumber: 1589
    functionLinenumberEnd: 1595
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].access$800(io.netty.handler.ssl.SslHandler,boolean)"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].runComplete()"
    functionUses: 49
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler:1591"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler:1594"
        BranchSideFuncs:
        - "access$800(io.netty.handler.ssl.SslHandler,boolean)"
        - "runComplete()"
      - BranchSide: "io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler:1593"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler:1592,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$800(io.netty.handler.ssl.SslHandler,boolean)"
    - Src: "io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler:1592,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].runComplete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler].access$800(io.netty.handler.ssl.SslHandler,boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 1
    returnType: "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].getTaskRunner(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].getTaskRunner(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsCodecUtil].<init>()"
    functionSourceFile: "io.netty.handler.codec.dns.DnsCodecUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DnsCodecUtil].decodeDomainName(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsCodecUtil"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 118
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String)"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].isReadable(int)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].isReadable(int)"
    - "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 2
    ICount: 77
    EdgeCount: 89
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.DnsCodecUtil:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:70"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:69"
        BranchSideFuncs:
        - "<init>(int)"
    - Branch String: "io.netty.handler.codec.dns.DnsCodecUtil:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DnsCodecUtil:73"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:71"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DnsCodecUtil:74"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:74"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:73"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DnsCodecUtil:75"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:79"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:78"
        BranchSideFuncs:
        - "isReadable()"
    - Branch String: "io.netty.handler.codec.dns.DnsCodecUtil:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:83"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:82"
        BranchSideFuncs:
        - "readUnsignedByte()"
    - Branch String: "io.netty.handler.codec.dns.DnsCodecUtil:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:87"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:86"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DnsCodecUtil:91"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:94"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:93"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DnsCodecUtil:74"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DnsCodecUtil:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:98"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:97"
        BranchSideFuncs:
        - "readerIndex()"
        - "toString(int,int,java.nio.charset.Charset)"
        - "skipBytes(int)"
    - Branch String: "io.netty.handler.codec.dns.DnsCodecUtil:105"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:109"
        BranchSideFuncs:
        - "readerIndex(int)"
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:108"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.dns.DnsCodecUtil:109"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:113"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:112"
        BranchSideFuncs:
        - "length()"
        - "charAt(int)"
    - Branch String: "io.netty.handler.codec.dns.DnsCodecUtil:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:117"
        BranchSideFuncs:
        - "append(char)"
      - BranchSide: "io.netty.handler.codec.dns.DnsCodecUtil:116"
        BranchSideFuncs:
        - "toString()"
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:56,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:57,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:70,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:71,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:72,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:76,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:80,1"
      Dst: "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:87,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:95,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable(int)"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:98,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:98,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:98,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:99,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:109,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:113,1"
      Dst: "[java.lang.StringBuilder].charAt(int)"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:117,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 29
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.dns.DnsCodecUtil].decompressDomainName(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.DnsCodecUtil"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 130
    functionDepth: 6
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DnsCodecUtil].decodeDomainName(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ReadOnlyByteBuf].alloc()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].alloc()"
    - "[io.netty.buffer.DuplicatedByteBuf].alloc()"
    - "[io.netty.buffer.SwappedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].alloc()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.WrappedByteBuf].alloc()"
    - "[io.netty.buffer.SlicedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].alloc()"
    - "[io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[java.lang.String].length()"
    - "[io.netty.handler.codec.dns.DnsCodecUtil].encodeDomainName(java.lang.String,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:126,1"
      Dst: "[io.netty.handler.codec.dns.DnsCodecUtil].decodeDomainName(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:127,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:127,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:127,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.dns.DnsCodecUtil:128,1"
      Dst: "[io.netty.handler.codec.dns.DnsCodecUtil].encodeDomainName(java.lang.String,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyCommand].values()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyCommand"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.haproxy.HAProxyCommand[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyCommand:21,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyCommand].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyCommand"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.haproxy.HAProxyCommand"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyCommand:21,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyCommand].<init>(java.lang.String,int,byte)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyCommand"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyCommand:43,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyCommand].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyCommand"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "io.netty.handler.codec.haproxy.HAProxyCommand"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 18
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyCommand:60,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyCommand:60,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyCommand:60,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyCommand:60,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyCommand:60,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyCommand].byteValue()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyCommand"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf$1].<init>()"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf$1"
    linkageType: ""
    functionLinenumber: 1611
    functionLinenumberEnd: 1613
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf$1:1612,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf$1"
    linkageType: ""
    functionLinenumber: 1614
    functionLinenumberEnd: 1616
    functionDepth: 7
    returnType: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.buffer.ByteBufUtil$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf$1:1615,1"
      Dst: "[io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.buffer.ByteBufUtil$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.buffer.ByteBufUtil$1)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 1608
    functionLinenumberEnd: 1610
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    - "io.netty.buffer.ByteBufUtil$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf:1609,1"
      Dst: "[io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 1627
    functionLinenumberEnd: 1631
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf:1628,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$4].<init>(io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$4"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 284
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$4:283,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$4"
    linkageType: ""
    functionLinenumber: 285
    functionLinenumberEnd: 288
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].access$300(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 50
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$4:286,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].access$300(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,int)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 468
    functionLinenumberEnd: 471
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,int,io.netty.handler.codec.http2.Http2Stream,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:469,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,int,io.netty.handler.codec.http2.Http2Stream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].isDescendantOf(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 486
    functionLinenumberEnd: 495
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:488"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:494"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:493"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:489"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:492"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:491"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].write(int,io.netty.handler.codec.http2.StreamByteDistributor$Writer)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 609
    functionLinenumberEnd: 617
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.StreamByteDistributor$Writer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor].write(io.netty.handler.codec.http2.Http2Stream,int)"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.StreamByteDistributor$Writer].write(io.netty.handler.codec.http2.Http2Stream,int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:610"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:612"
        BranchSideFuncs:
        - "<init>()"
        - "write(io.netty.handler.codec.http2.Http2Stream,int)"
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:611"
        BranchSideFuncs:
        - "write(io.netty.handler.codec.http2.Http2Stream,int)"
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:610"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:612"
        BranchSideFuncs:
        - "<init>()"
        - "write(io.netty.handler.codec.http2.Http2Stream,int)"
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:611"
        BranchSideFuncs:
        - "write(io.netty.handler.codec.http2.Http2Stream,int)"
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:610,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:612,1"
      Dst: "[io.netty.handler.codec.http2.StreamByteDistributor$Writer].write(io.netty.handler.codec.http2.Http2Stream,int)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:614,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].updatePseudoTime(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,int,long)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 661
    functionLinenumberEnd: 667
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.Math].min(long,long)"
    functionUses: 1
    ICount: 23
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:662"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:664"
        BranchSideFuncs:
        - "min(long,long)"
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:662"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:661"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:662"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:664"
        BranchSideFuncs:
        - "min(long,long)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:662,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:665,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].pollPseudoTimeQueue()"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 686
    functionLinenumberEnd: 691
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[java.util.Queue].poll()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:687,1"
      Dst: "[java.util.Queue].poll()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].peekPseudoTimeQueue()"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 699
    functionLinenumberEnd: 701
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.EmptyPriorityQueue].peek()"
    - "[io.netty.util.internal.DefaultPriorityQueue].peek()"
    - "[java.util.Queue].peek()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:700,1"
      Dst: "[java.util.Queue].peek()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].setDistributing()"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 732
    functionLinenumberEnd: 735
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].unsetDistributing()"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 736
    functionLinenumberEnd: 739
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 741
    functionLinenumberEnd: 743
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.DefaultPriorityQueue"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$200(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    functionUses: 5
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:742"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:741"
        BranchSideFuncs:
        - "access$200(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:742,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$200(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].priorityQueueIndex(io.netty.util.internal.DefaultPriorityQueue,int)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 746
    functionLinenumberEnd: 753
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.DefaultPriorityQueue"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$200(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    functionUses: 7
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:747"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:750"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:749"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:747,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].access$200(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString()"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 756
    functionLinenumberEnd: 760
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString(java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:757"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:757"
        BranchSideFuncs:
        - "<init>(int)"
        - "toString()"
        - "toString(java.lang.StringBuilder)"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:756"
        BranchSideFuncs:
        - "<init>(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:757,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:758,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString(java.lang.StringBuilder)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:759,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString(java.lang.StringBuilder)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State"
    linkageType: ""
    functionLinenumber: 762
    functionLinenumberEnd: 784
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.StringBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(long)"
    - "[io.netty.util.internal.DefaultPriorityQueue].size()"
    - "[io.netty.util.internal.EmptyPriorityQueue].size()"
    - "[io.netty.util.internal.DefaultPriorityQueue].isEmpty()"
    - "[io.netty.util.internal.EmptyPriorityQueue].isEmpty()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString(java.lang.StringBuilder)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.util.Collection].size()"
    - "[java.util.Collection].isEmpty()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 58
    EdgeCount: 144
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:772"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:763"
        BranchSideFuncs:
        - "isEmpty()"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:762"
        BranchSideFuncs:
        - "append(long)"
        - "append(int)"
        - "size()"
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:774"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:782"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:781"
        BranchSideFuncs:
        - "append(char)"
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:775"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:780"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "append(java.lang.String)"
        - "next()"
        - "toString(java.lang.StringBuilder)"
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:779"
        BranchSideFuncs:
        - "setLength(int)"
        - "length()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:763,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:763,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:767,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:770,1"
      Dst: "[java.util.Collection].size()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:774,1"
      Dst: "[java.util.Collection].isEmpty()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:775,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:775,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:775,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:776,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString(java.lang.StringBuilder)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:780,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:780,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State:782,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor].<init>()"
    functionSourceFile: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor:312,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor].process(byte)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor"
    linkageType: ""
    functionLinenumber: 316
    functionLinenumberEnd: 322
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.RedisCodecException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 23
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor:317"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor:318"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor:317"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
    - Branch String: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor:317"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor:320"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor:319"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor:318,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor:318,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor:318,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor:318,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor:318,1"
      Dst: "[io.netty.handler.codec.redis.RedisCodecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.redis.RedisCodecException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisCodecException"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    functionUses: 13
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisCodecException:33,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor].content()"
    functionSourceFile: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor"
    linkageType: ""
    functionLinenumber: 324
    functionLinenumberEnd: 326
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor].reset()"
    functionSourceFile: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor"
    linkageType: ""
    functionLinenumber: 328
    functionLinenumberEnd: 331
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor].<init>(io.netty.handler.codec.redis.RedisDecoder$1)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.redis.RedisDecoder$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor:312,1"
      Dst: "[io.netty.handler.codec.redis.RedisDecoder$ToPositiveLongProcessor].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 164
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:163,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 171
    functionDepth: 1
    returnType: "io.netty.util.ReferenceCounted"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$000(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].record(java.lang.Object)"
    - "[io.netty.util.ResourceLeakTracker].record(java.lang.Object)"
    functionUses: 4
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:166"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:170"
        BranchSideFuncs:
        - "record(java.lang.Object)"
        - "access$000(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:166,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$000(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:167,1"
      Dst: "[io.netty.util.ResourceLeakTracker].record(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1].deallocate()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 182
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$000(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].close(java.lang.Object)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$100(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].release()"
    - "[io.netty.util.ResourceLeakTracker].close(java.lang.Object)"
    functionUses: 1
    ICount: 20
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:176"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:180"
        BranchSideFuncs:
        - "<init>()"
        - "access$000(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
        - "close(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:179"
        BranchSideFuncs:
        - "access$100(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
        - "release()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:179"
        BranchSideFuncs:
        - "access$100(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
        - "release()"
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:179"
        BranchSideFuncs:
        - "access$100(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
        - "release()"
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:175,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].shutdown()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:176,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$000(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:177,1"
      Dst: "[io.netty.util.ResourceLeakTracker].close(java.lang.Object)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:178,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:180,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$100(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$1:180,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$1].<init>(io.netty.handler.codec.http2.DelegatingDecompressorFrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$1:64,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$1].onStreamRemoved(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$1"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 72
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].decompressor(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].access$000(io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$1:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$1:71"
        BranchSideFuncs:
        - "access$000(io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor)"
      - BranchSide: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$1:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$1:67,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].decompressor(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$1:69,1"
      Dst: "[io.netty.handler.codec.http2.DelegatingDecompressorFrameListener].access$000(io.netty.handler.codec.http2.DelegatingDecompressorFrameListener$Http2Decompressor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.RawUnixChannelOption].<init>(java.lang.String,int,int,int)"
    functionSourceFile: "io.netty.channel.unix.RawUnixChannelOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.GenericUnixChannelOption].<init>(java.lang.String,int,int)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.RawUnixChannelOption:40,1"
      Dst: "[io.netty.channel.unix.GenericUnixChannelOption].<init>(java.lang.String,int,int)"
    - Src: "io.netty.channel.unix.RawUnixChannelOption:41,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.RawUnixChannelOption].validate(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.channel.unix.RawUnixChannelOption"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 61
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOption].validate(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.nio.Buffer].remaining()"
    functionUses: 1
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.RawUnixChannelOption:56"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.RawUnixChannelOption:60"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.channel.unix.RawUnixChannelOption:59"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.RawUnixChannelOption:55,1"
      Dst: "[io.netty.channel.ChannelOption].validate(java.lang.Object)"
    - Src: "io.netty.channel.unix.RawUnixChannelOption:56,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.channel.unix.RawUnixChannelOption:57,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.unix.RawUnixChannelOption:57,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.unix.RawUnixChannelOption:57,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.unix.RawUnixChannelOption:58,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.unix.RawUnixChannelOption:58,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.RawUnixChannelOption].validate(java.lang.Object)"
    functionSourceFile: "io.netty.channel.unix.RawUnixChannelOption"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.RawUnixChannelOption].validate(java.nio.ByteBuffer)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.RawUnixChannelOption:27,1"
      Dst: "[io.netty.channel.unix.RawUnixChannelOption].validate(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].<init>(io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1"
    linkageType: ""
    functionLinenumber: 420
    functionLinenumberEnd: 422
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1:421,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1"
    linkageType: ""
    functionLinenumber: 423
    functionLinenumberEnd: 427
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe].epollInReady()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$EpollDatagramChannelUnsafe].epollInReady()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe].epollInReady()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel$EpollServerSocketUnsafe].epollInReady()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe].epollInReady()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInReady()"
    functionUses: 49
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1:425,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInReady()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].newUnsafeDirectByteBuf(io.netty.buffer.ByteBufAllocator,int,int)"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: 630
    functionLinenumberEnd: 635
    functionDepth: 6
    returnType: "io.netty.buffer.UnpooledUnsafeDirectByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].useDirectBufferNoCleaner()"
    - "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnsafeByteBufUtil:631"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:634"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnsafeByteBufUtil:633"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:631,1"
      Dst: "[io.netty.util.internal.PlatformDependent].useDirectBufferNoCleaner()"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:632,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    - Src: "io.netty.buffer.UnsafeByteBufUtil:634,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].useDirectBufferNoCleaner()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 859
    functionLinenumberEnd: 861
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 27
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf:25,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnsafeByteBufUtil].<init>()"
    functionSourceFile: "io.netty.buffer.UnsafeByteBufUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnsafeByteBufUtil:637,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.socket.nio.NioSocketChannel,java.net.Socket)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 475
    functionLinenumberEnd: 480
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.socket.nio.NioSocketChannel"
    - "io.netty.channel.socket.nio.NioSocketChannel"
    - "java.net.Socket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].<init>(io.netty.channel.socket.SocketChannel,java.net.Socket)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].calculateMaxBytesPerGatheringWrite()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:477,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].<init>(io.netty.channel.socket.SocketChannel,java.net.Socket)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:478,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].calculateMaxBytesPerGatheringWrite()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].autoReadCleared()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 482
    functionLinenumberEnd: 485
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].access$600(io.netty.channel.socket.nio.NioSocketChannel)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:483,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].access$600(io.netty.channel.socket.nio.NioSocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].access$600(io.netty.channel.socket.nio.NioSocketChannel)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.socket.nio.NioSocketChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].clearReadPending()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:59,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].clearReadPending()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].setSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 487
    functionLinenumberEnd: 491
    functionDepth: 3
    returnType: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setSendBufferSize(int)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].calculateMaxBytesPerGatheringWrite()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:488,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setSendBufferSize(int)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:489,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].calculateMaxBytesPerGatheringWrite()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].calculateMaxBytesPerGatheringWrite()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 526
    functionLinenumberEnd: 532
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].getSendBufferSize()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].setMaxBytesPerGatheringWrite(int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:528"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:531"
        BranchSideFuncs:
        - "setMaxBytesPerGatheringWrite(int)"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:530"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:527,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].getSendBufferSize()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:529,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].setMaxBytesPerGatheringWrite(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].setMaxBytesPerGatheringWrite(int)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 517
    functionLinenumberEnd: 520
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 494
    functionLinenumberEnd: 499
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].jdkChannel()"
    - "[io.netty.channel.socket.nio.NioChannelOption].setOption(java.nio.channels.Channel,io.netty.channel.socket.nio.NioChannelOption,java.lang.Object)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:495"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:498"
        BranchSideFuncs:
        - "setOption(java.nio.channels.Channel,io.netty.channel.socket.nio.NioChannelOption,java.lang.Object)"
        - "jdkChannel()"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:497"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:495"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:498"
        BranchSideFuncs:
        - "setOption(java.nio.channels.Channel,io.netty.channel.socket.nio.NioChannelOption,java.lang.Object)"
        - "jdkChannel()"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:497"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:495,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:496,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].jdkChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:496,1"
      Dst: "[io.netty.channel.socket.nio.NioChannelOption].setOption(java.nio.channels.Channel,io.netty.channel.socket.nio.NioChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:498,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].jdkChannel()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 533
    functionLinenumberEnd: 535
    functionDepth: 1
    returnType: "java.nio.channels.SocketChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:534,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioChannelOption].setOption(java.nio.channels.Channel,io.netty.channel.socket.nio.NioChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.socket.nio.NioChannelOption"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 74
    functionDepth: 1
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.nio.channels.Channel"
    - "io.netty.channel.socket.nio.NioChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].contains(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].contains(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].contains(java.lang.Object)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[java.nio.channels.NetworkChannel].supportedOptions()"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.nio.channels.NetworkChannel].setOption(java.net.SocketOption,java.lang.Object)"
    functionUses: 3
    ICount: 22
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioChannelOption:61"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioChannelOption:64"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioChannelOption:63"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioChannelOption:64"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioChannelOption:70"
        BranchSideFuncs:
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.socket.nio.NioChannelOption:69"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioChannelOption:64"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioChannelOption:70"
        BranchSideFuncs:
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.socket.nio.NioChannelOption:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioChannelOption:61,1"
      Dst: "[java.nio.channels.NetworkChannel].supportedOptions()"
    - Src: "io.netty.channel.socket.nio.NioChannelOption:61,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "io.netty.channel.socket.nio.NioChannelOption:70,1"
      Dst: "[java.nio.channels.NetworkChannel].setOption(java.net.SocketOption,java.lang.Object)"
    - Src: "io.netty.channel.socket.nio.NioChannelOption:73,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 502
    functionLinenumberEnd: 507
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.channel.socket.nio.NioChannelOption].getOption(java.nio.channels.Channel,io.netty.channel.socket.nio.NioChannelOption)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].jdkChannel()"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 5
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:503"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:506"
        BranchSideFuncs:
        - "getOption(java.nio.channels.Channel,io.netty.channel.socket.nio.NioChannelOption)"
        - "jdkChannel()"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:505"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:503"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:506"
        BranchSideFuncs:
        - "getOption(java.nio.channels.Channel,io.netty.channel.socket.nio.NioChannelOption)"
        - "jdkChannel()"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:505"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:503,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:504,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].jdkChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:504,1"
      Dst: "[io.netty.channel.socket.nio.NioChannelOption].getOption(java.nio.channels.Channel,io.netty.channel.socket.nio.NioChannelOption)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:506,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].getOptions()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].jdkChannel()"
    - "[io.netty.channel.socket.nio.NioChannelOption].getOptions(java.nio.channels.Channel)"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:511"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:514"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:513"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:511,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:512,1"
      Dst: "[io.netty.channel.socket.DefaultSocketChannelConfig].getOptions()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:512,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].jdkChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:512,1"
      Dst: "[io.netty.channel.socket.nio.NioChannelOption].getOptions(java.nio.channels.Channel)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:512,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioChannelOption].getOptions(java.nio.channels.Channel)"
    functionSourceFile: "io.netty.channel.socket.nio.NioChannelOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.ChannelOption[]"
    argCount: 1
    argTypes:
    - "java.nio.channels.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.NetworkChannel].supportedOptions()"
    - "[java.util.Set].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.socket.nio.NioChannelOption].<init>(java.net.SocketOption)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioChannelOption:102"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioChannelOption:114"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioChannelOption:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioChannelOption:104"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioChannelOption:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioChannelOption:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioChannelOption:105"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioChannelOption:109"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioChannelOption:117"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioChannelOption:120"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioChannelOption:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioChannelOption:100,1"
      Dst: "[java.nio.channels.NetworkChannel].supportedOptions()"
    - Src: "io.netty.channel.socket.nio.NioChannelOption:103,1"
      Dst: "[java.util.Set].size()"
    - Src: "io.netty.channel.socket.nio.NioChannelOption:103,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.channel.socket.nio.NioChannelOption:104,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.socket.nio.NioChannelOption:104,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.socket.nio.NioChannelOption:104,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.socket.nio.NioChannelOption:110,1"
      Dst: "[io.netty.channel.socket.nio.NioChannelOption].<init>(java.net.SocketOption)"
    - Src: "io.netty.channel.socket.nio.NioChannelOption:110,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.channel.socket.nio.NioChannelOption:112,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.socket.nio.NioChannelOption].<init>(java.net.SocketOption)"
    functionSourceFile: "io.netty.channel.socket.nio.NioChannelOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketOption"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.SocketOption].name()"
    - "[io.netty.channel.ChannelOption].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioChannelOption:40,1"
      Dst: "[java.net.SocketOption].name()"
    - Src: "io.netty.channel.socket.nio.NioChannelOption:40,1"
      Dst: "[io.netty.channel.ChannelOption].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].getMaxBytesPerGatheringWrite()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 521
    functionLinenumberEnd: 523
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.socket.nio.NioSocketChannel,java.net.Socket,io.netty.channel.socket.nio.NioSocketChannel$1)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 473
    functionLinenumberEnd: 475
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.socket.nio.NioSocketChannel"
    - "io.netty.channel.socket.nio.NioSocketChannel"
    - "java.net.Socket"
    - "io.netty.channel.socket.nio.NioSocketChannel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.socket.nio.NioSocketChannel,java.net.Socket)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig:474,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.socket.nio.NioSocketChannel,java.net.Socket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey].getAlgorithm()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey].getFormat()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey].getEncoded()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey].deallocate()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.internal.tcnative.SSL].freePrivateKey(long)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey:60,1"
      Dst: "[io.netty.internal.tcnative.SSL].freePrivateKey(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey].retain(int)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.OpenSslPrivateKey"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey:72,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey].destroy()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - "[io.netty.util.AbstractReferenceCounted].release(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey:96,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey:96,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslPrivateKey].isDestroyed()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslPrivateKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].refCnt()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslPrivateKey:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslPrivateKey:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslPrivateKey:108,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 209
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setSuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isCancelled()"
    - "[io.netty.util.concurrent.CompleteFuture].isCancelled()"
    - "[io.netty.util.concurrent.DefaultPromise].isCancelled()"
    - "[io.netty.channel.VoidChannelPromise].isCancelled()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cancel(boolean)"
    - "[io.netty.channel.VoidChannelPromise].cancel(boolean)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isRegistered()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].close()"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].closeForcibly()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].closeForcibly()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].closeForcibly()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - "[java.util.concurrent.Future].isCancelled()"
    - "[io.netty.util.concurrent.Future].cancel(boolean)"
    - "[io.netty.channel.Channel].isRegistered()"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    - "[io.netty.channel.Channel].unsafe()"
    - "[io.netty.channel.Channel$Unsafe].closeForcibly()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 26
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:195"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:197"
        BranchSideFuncs:
        - "setSuccess(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:196"
        BranchSideFuncs:
        - "isCancelled()"
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:197"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:200"
        BranchSideFuncs:
        - "cancel(boolean)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:199"
        BranchSideFuncs:
        - "isRegistered()"
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:200"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:203"
        BranchSideFuncs:
        - "close()"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:202"
        BranchSideFuncs:
        - "unsafe()"
        - "closeForcibly()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:195,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:196,1"
      Dst: "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:197,1"
      Dst: "[java.util.concurrent.Future].isCancelled()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:198,1"
      Dst: "[io.netty.util.concurrent.Future].cancel(boolean)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:200,1"
      Dst: "[io.netty.channel.Channel].isRegistered()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:201,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:203,1"
      Dst: "[io.netty.channel.Channel].unsafe()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:203,1"
      Dst: "[io.netty.channel.Channel$Unsafe].closeForcibly()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:206,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:206,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2:192,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$2].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].allowNullOrigin()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].allowNullOrigin()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$Builder:332,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].allowNullOrigin()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].disable()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].disable()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$Builder:341,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].disable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].exposeHeaders(java.lang.String[])"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].exposeHeaders(java.lang.String[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$Builder:350,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].exposeHeaders(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].allowCredentials()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].allowCredentials()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$Builder:359,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].allowCredentials()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].maxAge(long)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].maxAge(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$Builder:368,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].maxAge(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].allowedRequestMethods(io.netty.handler.codec.http.HttpMethod[])"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMethod[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].allowedRequestMethods(io.netty.handler.codec.http.HttpMethod[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$Builder:377,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].allowedRequestMethods(io.netty.handler.codec.http.HttpMethod[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].allowedRequestHeaders(java.lang.String[])"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].allowedRequestHeaders(java.lang.String[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$Builder:386,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].allowedRequestHeaders(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].preflightResponseHeader(java.lang.CharSequence,java.lang.Object[])"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].preflightResponseHeader(java.lang.CharSequence,java.lang.Object[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$Builder:395,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].preflightResponseHeader(java.lang.CharSequence,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].preflightResponseHeader(java.lang.CharSequence,java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].preflightResponseHeader(java.lang.CharSequence,java.lang.Iterable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$Builder:404,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].preflightResponseHeader(java.lang.CharSequence,java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].preflightResponseHeader(java.lang.String,java.util.concurrent.Callable)"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.util.concurrent.Callable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].preflightResponseHeader(java.lang.CharSequence,java.util.concurrent.Callable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$Builder:413,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].preflightResponseHeader(java.lang.CharSequence,java.util.concurrent.Callable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].noPreflightResponseHeaders()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].noPreflightResponseHeaders()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$Builder:422,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].noPreflightResponseHeaders()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].build()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.cors.CorsConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].build()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$Builder:431,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfig$Builder].shortCurcuit()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.cors.CorsConfig$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cors.CorsConfigBuilder].shortCircuit()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfig$Builder:439,1"
      Dst: "[io.netty.handler.codec.http.cors.CorsConfigBuilder].shortCircuit()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe].<init>(io.netty.channel.kqueue.KQueueDatagramChannel)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe"
    linkageType: ""
    functionLinenumber: 356
    functionLinenumberEnd: 358
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.KQueueDatagramChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:357,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe].readReady(io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe"
    linkageType: ""
    functionLinenumber: 360
    functionLinenumberEnd: 457
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].shouldBreakReadReady(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].clearReadFilter0()"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReadyBefore()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isConnected()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].lastBytesRead(int)"
    - "[io.netty.channel.unix.Errors$NativeIoException].expectedErr()"
    - "[java.net.PortUnreachableException].<init>(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].localAddress()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].remoteAddress()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.channel.unix.Socket].recvFromAddress(long,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.channel.unix.Socket].recvFrom(java.nio.ByteBuffer,int,int)"
    - "[io.netty.channel.unix.DatagramSocketAddress].localAddress()"
    - "[io.netty.channel.unix.DatagramSocketAddress].receivedAmount()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReadyFinally(io.netty.channel.ChannelConfig)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.channel.ChannelConfig].getAllocator()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.Buffer].limit()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 3
    ICount: 119
    EdgeCount: 187
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:361"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:362"
        BranchSideFuncs:
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "config()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:361"
        BranchSideFuncs:
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "config()"
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:361"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:362"
        BranchSideFuncs:
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "config()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:361"
        BranchSideFuncs:
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "config()"
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:363"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:367"
        BranchSideFuncs:
        - "clearReadFilter0()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:366"
        BranchSideFuncs:
        - "reset(io.netty.channel.ChannelConfig)"
        - "pipeline()"
        - "readReadyBefore()"
        - "getAllocator()"
        - "isConnected()"
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:382"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:404"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "readReadyFinally(io.netty.channel.ChannelConfig)"
        - "localAddress()"
        - "getMessage()"
        - "writerIndex()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "attemptedBytesRead(int)"
        - "writableBytes()"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "fireChannelRead(java.lang.Object)"
        - "recvFrom(java.nio.ByteBuffer,int,int)"
        - "<init>()"
        - "writerIndex(int)"
        - "recvFromAddress(long,int,int)"
        - "readComplete()"
        - "inEventLoop()"
        - "release()"
        - "continueReading(io.netty.util.UncheckedBooleanSupplier)"
        - "clearReadFilter0()"
        - "receivedAmount()"
        - "hasMemoryAddress()"
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "config()"
        - "initCause(java.lang.Throwable)"
        - "memoryAddress()"
        - "internalNioBuffer(int,int)"
        - "pipeline()"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "expectedErr()"
        - "readReadyBefore()"
        - "incMessagesRead(int)"
        - "eventLoop()"
        - "getAllocator()"
        - "capacity()"
        - "<init>(java.lang.String)"
        - "remoteAddress()"
        - "isConnected()"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:403"
        BranchSideFuncs:
        - "hasMemoryAddress()"
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:387"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:384"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "getMessage()"
        - "initCause(java.lang.Throwable)"
        - "expectedErr()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:383"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "getMessage()"
        - "initCause(java.lang.Throwable)"
        - "expectedErr()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:394"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:400"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "readReadyFinally(io.netty.channel.ChannelConfig)"
        - "localAddress()"
        - "getMessage()"
        - "writerIndex()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "attemptedBytesRead(int)"
        - "writableBytes()"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "fireChannelRead(java.lang.Object)"
        - "recvFrom(java.nio.ByteBuffer,int,int)"
        - "<init>()"
        - "writerIndex(int)"
        - "recvFromAddress(long,int,int)"
        - "readComplete()"
        - "inEventLoop()"
        - "release()"
        - "continueReading(io.netty.util.UncheckedBooleanSupplier)"
        - "clearReadFilter0()"
        - "receivedAmount()"
        - "hasMemoryAddress()"
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "config()"
        - "initCause(java.lang.Throwable)"
        - "memoryAddress()"
        - "internalNioBuffer(int,int)"
        - "pipeline()"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "expectedErr()"
        - "readReadyBefore()"
        - "incMessagesRead(int)"
        - "eventLoop()"
        - "getAllocator()"
        - "capacity()"
        - "<init>(java.lang.String)"
        - "remoteAddress()"
        - "isConnected()"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:399"
        BranchSideFuncs:
        - "remoteAddress()"
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:404"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:410"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "readReadyFinally(io.netty.channel.ChannelConfig)"
        - "localAddress()"
        - "getMessage()"
        - "writerIndex()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "attemptedBytesRead(int)"
        - "writableBytes()"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "fireChannelRead(java.lang.Object)"
        - "recvFrom(java.nio.ByteBuffer,int,int)"
        - "<init>()"
        - "writerIndex(int)"
        - "recvFromAddress(long,int,int)"
        - "readComplete()"
        - "inEventLoop()"
        - "release()"
        - "continueReading(io.netty.util.UncheckedBooleanSupplier)"
        - "clearReadFilter0()"
        - "receivedAmount()"
        - "hasMemoryAddress()"
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "config()"
        - "initCause(java.lang.Throwable)"
        - "memoryAddress()"
        - "internalNioBuffer(int,int)"
        - "pipeline()"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "expectedErr()"
        - "readReadyBefore()"
        - "incMessagesRead(int)"
        - "eventLoop()"
        - "getAllocator()"
        - "capacity()"
        - "<init>(java.lang.String)"
        - "remoteAddress()"
        - "isConnected()"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:409"
        BranchSideFuncs:
        - "writableBytes()"
        - "recvFrom(java.nio.ByteBuffer,int,int)"
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:414"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:420"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:419"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:421"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:424"
        BranchSideFuncs:
        - "localAddress()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:423"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "writerIndex()"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "writerIndex(int)"
        - "receivedAmount()"
        - "lastBytesRead()"
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:439"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:378"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "readReadyFinally(io.netty.channel.ChannelConfig)"
        - "localAddress()"
        - "getMessage()"
        - "writerIndex()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "attemptedBytesRead(int)"
        - "writableBytes()"
        - "<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
        - "fireChannelRead(java.lang.Object)"
        - "recvFrom(java.nio.ByteBuffer,int,int)"
        - "<init>()"
        - "writerIndex(int)"
        - "recvFromAddress(long,int,int)"
        - "readComplete()"
        - "inEventLoop()"
        - "release()"
        - "continueReading(io.netty.util.UncheckedBooleanSupplier)"
        - "clearReadFilter0()"
        - "receivedAmount()"
        - "hasMemoryAddress()"
        - "shouldBreakReadReady(io.netty.channel.ChannelConfig)"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "config()"
        - "initCause(java.lang.Throwable)"
        - "memoryAddress()"
        - "internalNioBuffer(int,int)"
        - "pipeline()"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "expectedErr()"
        - "readReadyBefore()"
        - "incMessagesRead(int)"
        - "eventLoop()"
        - "getAllocator()"
        - "capacity()"
        - "<init>(java.lang.String)"
        - "remoteAddress()"
        - "isConnected()"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:377"
        BranchSideFuncs:
        - "attemptedBytesRead(int)"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:441"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:444"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:443"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:450"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:454"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:453"
        BranchSideFuncs:
        - "readReadyFinally(io.netty.channel.ChannelConfig)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:361,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:361,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:361,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:362,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:363,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].shouldBreakReadReady(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:364,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].clearReadFilter0()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:367,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:368,1"
      Dst: "[io.netty.channel.ChannelConfig].getAllocator()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:369,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].reset(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:370,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReadyBefore()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:376,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannel].isConnected()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:378,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:379,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:379,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:384,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:384,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].lastBytesRead(int)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:387,1"
      Dst: "[io.netty.channel.unix.Errors$NativeIoException].expectedErr()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:388,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:388,1"
      Dst: "[java.net.PortUnreachableException].<init>(java.lang.String)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:389,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:394,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:396,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:401,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].localAddress()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:401,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].remoteAddress()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:401,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].<init>(io.netty.buffer.ByteBuf,java.net.InetSocketAddress,java.net.InetSocketAddress)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:404,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:406,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:406,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:407,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:406,1"
      Dst: "[io.netty.channel.unix.Socket].recvFromAddress(long,int,int)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:409,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:411,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:411,1"
      Dst: "[java.nio.Buffer].limit()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:411,1"
      Dst: "[io.netty.channel.unix.Socket].recvFrom(java.nio.ByteBuffer,int,int)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:420,1"
      Dst: "[io.netty.channel.unix.DatagramSocketAddress].localAddress()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:424,1"
      Dst: "[io.netty.channel.unix.DatagramSocketAddress].receivedAmount()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:425,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:430,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:433,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:439,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:447,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:448,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:451,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannel$KQueueDatagramChannelUnsafe:454,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReadyFinally(io.netty.channel.ChannelConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 32
    CyclomaticComplexity: 8
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannel"
    linkageType: ""
    functionLinenumber: 331
    functionLinenumberEnd: 333
    functionDepth: 0
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 57
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannel].isConnected()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannel"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].recvFromAddress(long,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 257
    functionLinenumberEnd: 259
    functionDepth: 1
    returnType: "io.netty.channel.unix.DatagramSocketAddress"
    argCount: 3
    argTypes:
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].recvFromAddress(int,long,int,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:258,1"
      Dst: "[io.netty.channel.unix.Socket].recvFromAddress(int,long,int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].recvFromAddress(int,long,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.unix.DatagramSocketAddress"
    argCount: 4
    argTypes:
    - "int"
    - "long"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.Socket].recvFrom(java.nio.ByteBuffer,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 253
    functionLinenumberEnd: 255
    functionDepth: 1
    returnType: "io.netty.channel.unix.DatagramSocketAddress"
    argCount: 3
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].recvFrom(int,java.nio.ByteBuffer,int,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.Socket:254,1"
      Dst: "[io.netty.channel.unix.Socket].recvFrom(int,java.nio.ByteBuffer,int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].recvFrom(int,java.nio.ByteBuffer,int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.unix.DatagramSocketAddress"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.DatagramSocketAddress].localAddress()"
    functionSourceFile: "io.netty.channel.unix.DatagramSocketAddress"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "io.netty.channel.unix.DatagramSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DatagramSocketAddress].receivedAmount()"
    functionSourceFile: "io.netty.channel.unix.DatagramSocketAddress"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DatagramSocketAddress].<init>(byte[],int,int,int,io.netty.channel.unix.DatagramSocketAddress)"
    functionSourceFile: "io.netty.channel.unix.DatagramSocketAddress"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "int"
    - "io.netty.channel.unix.DatagramSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.DatagramSocketAddress].newAddress(byte[],int)"
    - "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.DatagramSocketAddress:38,1"
      Dst: "[io.netty.channel.unix.DatagramSocketAddress].newAddress(byte[],int)"
    - Src: "io.netty.channel.unix.DatagramSocketAddress:38,1"
      Dst: "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    JavaMethodInfo:
      exceptions:
      - "java.net.UnknownHostException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.DatagramSocketAddress].newAddress(byte[],int)"
    functionSourceFile: "io.netty.channel.unix.DatagramSocketAddress"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.net.InetAddress"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetAddress].getByAddress(byte[])"
    - "[java.net.Inet6Address].getByAddress(java.lang.String,byte[],int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.DatagramSocketAddress:52"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.DatagramSocketAddress:55"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.unix.DatagramSocketAddress:54"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.unix.DatagramSocketAddress:53,1"
      Dst: "[java.net.InetAddress].getByAddress(byte[])"
    - Src: "io.netty.channel.unix.DatagramSocketAddress:55,1"
      Dst: "[java.net.Inet6Address].getByAddress(java.lang.String,byte[],int)"
    JavaMethodInfo:
      exceptions:
      - "java.net.UnknownHostException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzfEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.LzfEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.LzfEncoder].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzfEncoder:69,1"
      Dst: "[io.netty.handler.codec.compression.LzfEncoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzfEncoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.LzfEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.LzfEncoder].<init>(boolean,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzfEncoder:82,1"
      Dst: "[io.netty.handler.codec.compression.LzfEncoder].<init>(boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzfEncoder].<init>(boolean,int)"
    functionSourceFile: "io.netty.handler.codec.compression.LzfEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.LzfEncoder].<init>(boolean,int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzfEncoder:97,1"
      Dst: "[io.netty.handler.codec.compression.LzfEncoder].<init>(boolean,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzfEncoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.compression.LzfEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.LzfEncoder].<init>(boolean,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzfEncoder:109,1"
      Dst: "[io.netty.handler.codec.compression.LzfEncoder].<init>(boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzfEncoder].<init>(boolean,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.LzfEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToByteEncoder].<init>(boolean)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[com.ning.compress.lzf.util.ChunkEncoderFactory].safeNonAllocatingInstance(int)"
    - "[com.ning.compress.lzf.util.ChunkEncoderFactory].optimalNonAllocatingInstance(int)"
    - "[com.ning.compress.BufferRecycler].instance()"
    functionUses: 0
    ICount: 42
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.LzfEncoder:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:129"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:128"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzfEncoder:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:133"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:132"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzfEncoder:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:137"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzfEncoder:140"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:142"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzfEncoder:127,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].<init>(boolean)"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:129,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:129,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:129,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:129,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:129,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:129,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:141,1"
      Dst: "[com.ning.compress.lzf.util.ChunkEncoderFactory].safeNonAllocatingInstance(int)"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:142,1"
      Dst: "[com.ning.compress.lzf.util.ChunkEncoderFactory].optimalNonAllocatingInstance(int)"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:144,1"
      Dst: "[com.ning.compress.BufferRecycler].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.compression.LzfEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.LzfEncoder"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 196
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.EmptyByteBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[com.ning.compress.BufferRecycler].allocInputBuffer(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[com.ning.compress.lzf.LZFEncoder].estimateMaxWorkspaceSize(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.handler.codec.compression.LzfEncoder].encodeCompress(byte[],int,int,byte[],int)"
    - "[io.netty.handler.codec.compression.LzfEncoder].encodeNonCompress(byte[],int,int,byte[],int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[com.ning.compress.BufferRecycler].releaseInputBuffer(byte[])"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 1
    ICount: 47
    EdgeCount: 233
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.LzfEncoder:153"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:156"
        BranchSideFuncs:
        - "allocInputBuffer(int)"
        - "getBytes(int,byte[],int,int)"
    - Branch String: "io.netty.handler.codec.compression.LzfEncoder:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:171"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:170"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzfEncoder:176"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:180"
        BranchSideFuncs:
        - "encodeNonCompress(byte[],int,int,byte[],int)"
    - Branch String: "io.netty.handler.codec.compression.LzfEncoder:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:187"
        BranchSideFuncs:
        - "writerIndex()"
        - "writerIndex(int)"
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:186"
        BranchSideFuncs:
        - "writeBytes(byte[],int,int)"
    - Branch String: "io.netty.handler.codec.compression.LzfEncoder:192"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:195"
        BranchSideFuncs:
        - "releaseInputBuffer(byte[])"
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:194"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzfEncoder:149,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:150,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:153,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:154,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:155,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:157,1"
      Dst: "[com.ning.compress.BufferRecycler].allocInputBuffer(int)"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:158,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:163,1"
      Dst: "[com.ning.compress.lzf.LZFEncoder].estimateMaxWorkspaceSize(int)"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:164,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:169,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:178,1"
      Dst: "[io.netty.handler.codec.compression.LzfEncoder].encodeCompress(byte[],int,int,byte[],int)"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:181,1"
      Dst: "[io.netty.handler.codec.compression.LzfEncoder].encodeNonCompress(byte[],int,int,byte[],int)"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:185,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:187,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:190,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:193,1"
      Dst: "[com.ning.compress.BufferRecycler].releaseInputBuffer(byte[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.compression.LzfEncoder].encodeCompress(byte[],int,int,byte[],int)"
    functionSourceFile: "io.netty.handler.codec.compression.LzfEncoder"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.ning.compress.lzf.LZFEncoder].appendEncoded(com.ning.compress.lzf.ChunkEncoder,byte[],int,int,byte[],int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzfEncoder:198,1"
      Dst: "[com.ning.compress.lzf.LZFEncoder].appendEncoded(com.ning.compress.lzf.ChunkEncoder,byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzfEncoder].encodeNonCompress(byte[],int,int,byte[],int)"
    functionSourceFile: "io.netty.handler.codec.compression.LzfEncoder"
    linkageType: ""
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionDepth: 1
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.LzfEncoder].lzfEncodeNonCompress(byte[],int,int,byte[],int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzfEncoder:224,1"
      Dst: "[io.netty.handler.codec.compression.LzfEncoder].lzfEncodeNonCompress(byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzfEncoder].lzfEncodeNonCompress(byte[],int,int,byte[],int)"
    functionSourceFile: "io.netty.handler.codec.compression.LzfEncoder"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 218
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    - "byte[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[com.ning.compress.lzf.LZFChunk].appendNonCompressed(byte[],int,int,byte[],int)"
    functionUses: 1
    ICount: 22
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.LzfEncoder:207"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:210"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:209"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzfEncoder:216"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfEncoder:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzfEncoder:204,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:205,1"
      Dst: "[com.ning.compress.lzf.LZFChunk].appendNonCompressed(byte[],int,int,byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.LzfEncoder].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.compression.LzfEncoder"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 232
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerAdapter].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    - "[com.ning.compress.lzf.ChunkEncoder].close()"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzfEncoder:229,1"
      Dst: "[com.ning.compress.lzf.ChunkEncoder].close()"
    - Src: "io.netty.handler.codec.compression.LzfEncoder:230,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzfEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.LzfEncoder"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.LzfEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzfEncoder:35,1"
      Dst: "[io.netty.handler.codec.compression.LzfEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08].<init>(java.lang.String,java.lang.String,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08].<init>(java.lang.String,java.lang.String,boolean,int,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:56,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08].<init>(java.lang.String,java.lang.String,boolean,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08].<init>(java.lang.String,java.lang.String,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].newBuilder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowExtensions(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].maxFramePayloadLength(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowMaskMismatch(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].build()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:79,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].newBuilder()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:80,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowExtensions(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:81,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].maxFramePayloadLength(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:82,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowMaskMismatch(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:83,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].build()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:79,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].<init>(io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:99,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].<init>(io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08].newHandshakeResponse(io.netty.handler.codec.http.FullHttpRequest,io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 174
    functionDepth: 8
    returnType: "io.netty.handler.codec.http.FullHttpResponse"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.FullHttpRequest"
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException].<init>(java.lang.String,io.netty.handler.codec.http.HttpRequest)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ReadOnlyByteBuf].alloc()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].alloc()"
    - "[io.netty.buffer.DuplicatedByteBuf].alloc()"
    - "[io.netty.buffer.SwappedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].alloc()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].alloc()"
    - "[io.netty.buffer.WrappedByteBuf].alloc()"
    - "[io.netty.buffer.SlicedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].alloc()"
    - "[io.netty.buffer.PooledByteBuf].alloc()"
    - "[io.netty.buffer.FixedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.EmptyByteBuf].alloc()"
    - "[io.netty.buffer.CompositeByteBuf].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].content()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil].sha1(byte[])"
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil].base64(byte[])"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].selectSubprotocol(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    functionUses: 1
    ICount: 59
    EdgeCount: 75
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:139"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:143"
        BranchSideFuncs:
        - "<init>(java.lang.String,io.netty.handler.codec.http.HttpRequest)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:142"
        BranchSideFuncs:
        - "content()"
        - "<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
        - "alloc()"
        - "buffer(int)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:146"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:150"
        BranchSideFuncs:
        - "add(io.netty.handler.codec.http.HttpHeaders)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:149"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
        - "toString()"
        - "getBytes(java.nio.charset.Charset)"
        - "base64(byte[])"
        - "<init>()"
        - "sha1(byte[])"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:154"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:158"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:157"
        BranchSideFuncs:
        - "get(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:173"
        BranchSideFuncs:
        - "selectSubprotocol(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:165"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:170"
        BranchSideFuncs:
        - "isDebugEnabled()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:169"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
        - "headers()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:166"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:173"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:138,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:138,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:140,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException].<init>(java.lang.String,io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:144,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:144,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:144,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:144,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:147,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:150,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:150,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:150,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:150,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:151,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:151,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].sha1(byte[])"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:152,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].base64(byte[])"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:154,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:155,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:158,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:164,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].selectSubprotocol(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:167,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].sha1(byte[])"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketUtil"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil].digest(io.netty.util.concurrent.FastThreadLocal,byte[])"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:83,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].digest(io.netty.util.concurrent.FastThreadLocal,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].base64(byte[])"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketUtil"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 116
    functionDepth: 7
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[java.util.Base64$Encoder].encodeToString(byte[])"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:java.util.Base64].getEncoder()"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[java.util.Base64].getEncoder()"
    - "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 9
    ICount: 21
    EdgeCount: 52
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketUtil:100"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketUtil:104"
        BranchSideFuncs:
        - "encodeToString(byte[])"
        - "getEncoder()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketUtil:103"
        BranchSideFuncs:
        - "wrappedBuffer(byte[])"
        - "toString(java.nio.charset.Charset)"
        - "encode(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:100,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:101,1"
      Dst: "[java.util.Base64].getEncoder()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:101,1"
      Dst: "[java.util.Base64$Encoder].encodeToString(byte[])"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:104,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:106,1"
      Dst: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:108,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:110,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08].newWebsocketDecoder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketFrameDecoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].decoderConfig()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:178,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].decoderConfig()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:178,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 4
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:156,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:157,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08].newWebSocketEncoder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketFrameEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder].<init>(boolean)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08:183,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$Level].values()"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$Level"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "io.netty.util.ResourceLeakDetector$Level[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$Level:61,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$Level].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$Level"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.ResourceLeakDetector$Level"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$Level:61,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$Level].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$Level"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$Level:61,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$Level].parseLevel(java.lang.String)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$Level"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 96
    functionDepth: 1
    returnType: "io.netty.util.ResourceLeakDetector$Level"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].trim()"
    - "[io.netty.util.ResourceLeakDetector$Level].values()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[java.lang.Enum].name()"
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.String].valueOf(int)"
    - "[io.netty.util.ResourceLeakDetector].access$000()"
    functionUses: 1
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.util.ResourceLeakDetector$Level:90"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$Level:95"
        BranchSideFuncs:
        - "values()"
        - "name()"
        - "valueOf(int)"
        - "equals(java.lang.Object)"
        - "ordinal()"
        - "equalsIgnoreCase(java.lang.String)"
      - BranchSide: "io.netty.util.ResourceLeakDetector$Level:94"
        BranchSideFuncs:
        - "access$000()"
    - Branch String: "io.netty.util.ResourceLeakDetector$Level:91"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$Level:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ResourceLeakDetector$Level:91"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.ResourceLeakDetector$Level:91"
      Branch Sides:
      - BranchSide: "io.netty.util.ResourceLeakDetector$Level:89"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.ResourceLeakDetector$Level:88"
        BranchSideFuncs:
        - "values()"
        - "trim()"
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$Level:89,1"
      Dst: "[java.lang.String].trim()"
    - Src: "io.netty.util.ResourceLeakDetector$Level:90,1"
      Dst: "[io.netty.util.ResourceLeakDetector$Level].values()"
    - Src: "io.netty.util.ResourceLeakDetector$Level:91,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.util.ResourceLeakDetector$Level:91,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "io.netty.util.ResourceLeakDetector$Level:91,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.util.ResourceLeakDetector$Level:91,1"
      Dst: "[java.lang.String].valueOf(int)"
    - Src: "io.netty.util.ResourceLeakDetector$Level:91,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.util.ResourceLeakDetector$Level:95,1"
      Dst: "[io.netty.util.ResourceLeakDetector].access$000()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.ResourceLeakDetector].access$000()"
    functionSourceFile: "io.netty.util.ResourceLeakDetector"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "io.netty.util.ResourceLeakDetector$Level"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ExtendedOpenSslSession$SSLSessionBindingListenerDecorator].<init>(io.netty.handler.ssl.ExtendedOpenSslSession,javax.net.ssl.SSLSessionBindingListener)"
    functionSourceFile: "io.netty.handler.ssl.ExtendedOpenSslSession$SSLSessionBindingListenerDecorator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.ExtendedOpenSslSession"
    - "javax.net.ssl.SSLSessionBindingListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ExtendedOpenSslSession$SSLSessionBindingListenerDecorator:214,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ExtendedOpenSslSession$SSLSessionBindingListenerDecorator].valueBound(javax.net.ssl.SSLSessionBindingEvent)"
    functionSourceFile: "io.netty.handler.ssl.ExtendedOpenSslSession$SSLSessionBindingListenerDecorator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLSessionBindingEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLSessionBindingEvent].getName()"
    - "[javax.net.ssl.SSLSessionBindingEvent].<init>(javax.net.ssl.SSLSession,java.lang.String)"
    - "[javax.net.ssl.SSLSessionBindingListener].valueBound(javax.net.ssl.SSLSessionBindingEvent)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ExtendedOpenSslSession$SSLSessionBindingListenerDecorator:220,1"
      Dst: "[javax.net.ssl.SSLSessionBindingEvent].getName()"
    - Src: "io.netty.handler.ssl.ExtendedOpenSslSession$SSLSessionBindingListenerDecorator:220,1"
      Dst: "[javax.net.ssl.SSLSessionBindingEvent].<init>(javax.net.ssl.SSLSession,java.lang.String)"
    - Src: "io.netty.handler.ssl.ExtendedOpenSslSession$SSLSessionBindingListenerDecorator:220,1"
      Dst: "[javax.net.ssl.SSLSessionBindingListener].valueBound(javax.net.ssl.SSLSessionBindingEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ExtendedOpenSslSession$SSLSessionBindingListenerDecorator].valueUnbound(javax.net.ssl.SSLSessionBindingEvent)"
    functionSourceFile: "io.netty.handler.ssl.ExtendedOpenSslSession$SSLSessionBindingListenerDecorator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLSessionBindingEvent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLSessionBindingEvent].getName()"
    - "[javax.net.ssl.SSLSessionBindingEvent].<init>(javax.net.ssl.SSLSession,java.lang.String)"
    - "[javax.net.ssl.SSLSessionBindingListener].valueUnbound(javax.net.ssl.SSLSessionBindingEvent)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ExtendedOpenSslSession$SSLSessionBindingListenerDecorator:225,1"
      Dst: "[javax.net.ssl.SSLSessionBindingEvent].getName()"
    - Src: "io.netty.handler.ssl.ExtendedOpenSslSession$SSLSessionBindingListenerDecorator:225,1"
      Dst: "[javax.net.ssl.SSLSessionBindingEvent].<init>(javax.net.ssl.SSLSession,java.lang.String)"
    - Src: "io.netty.handler.ssl.ExtendedOpenSslSession$SSLSessionBindingListenerDecorator:225,1"
      Dst: "[javax.net.ssl.SSLSessionBindingListener].valueUnbound(javax.net.ssl.SSLSessionBindingEvent)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].<init>(io.netty.channel.sctp.nio.NioSctpServerChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel$1"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.sctp.nio.NioSctpServerChannel"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel$1:162,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel$1"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 167
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 50
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel$1:165,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 170
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].javaChannel()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].<init>(io.netty.channel.sctp.nio.NioSctpServerChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[com.sun.nio.sctp.SctpServerChannel].bindAddress(java.net.InetAddress)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 18
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpServerChannel:154"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpServerChannel:161"
        BranchSideFuncs:
        - "run()"
        - "eventLoop()"
        - "<init>(io.netty.channel.sctp.nio.NioSctpServerChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
        - "execute(java.lang.Runnable)"
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:154,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:154,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:156,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:156,1"
      Dst: "[com.sun.nio.sctp.SctpServerChannel].bindAddress(java.net.InetAddress)"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:157,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:159,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:162,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].<init>(io.netty.channel.sctp.nio.NioSctpServerChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:162,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.IntegerHolder].<init>()"
    functionSourceFile: "io.netty.util.internal.IntegerHolder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.IntegerHolder:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13].<init>(java.lang.String,java.lang.String,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13].<init>(java.lang.String,java.lang.String,boolean,int,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:55,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13].<init>(java.lang.String,java.lang.String,boolean,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13].<init>(java.lang.String,java.lang.String,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].newBuilder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowExtensions(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].maxFramePayloadLength(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowMaskMismatch(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].build()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:78,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].newBuilder()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:79,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowExtensions(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:80,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].maxFramePayloadLength(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:81,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowMaskMismatch(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:82,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].build()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:78,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].<init>(io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:98,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].<init>(io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13].newHandshakeResponse(io.netty.handler.codec.http.FullHttpRequest,io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 184
    functionDepth: 8
    returnType: "io.netty.handler.codec.http.FullHttpResponse"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.FullHttpRequest"
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.HttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException].<init>(java.lang.String,io.netty.handler.codec.http.HttpRequest)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ReadOnlyByteBuf].alloc()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].alloc()"
    - "[io.netty.buffer.DuplicatedByteBuf].alloc()"
    - "[io.netty.buffer.SwappedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].alloc()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].alloc()"
    - "[io.netty.buffer.WrappedByteBuf].alloc()"
    - "[io.netty.buffer.SlicedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].alloc()"
    - "[io.netty.buffer.PooledByteBuf].alloc()"
    - "[io.netty.buffer.FixedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.EmptyByteBuf].alloc()"
    - "[io.netty.buffer.CompositeByteBuf].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].content()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil].sha1(byte[])"
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil].base64(byte[])"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].selectSubprotocol(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    functionUses: 1
    ICount: 75
    EdgeCount: 81
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:140"
        BranchSideFuncs:
        - "containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:139"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:139"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:144"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:143"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:149"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:154"
        BranchSideFuncs:
        - "<init>(java.lang.String,io.netty.handler.codec.http.HttpRequest)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:153"
        BranchSideFuncs:
        - "content()"
        - "<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
        - "alloc()"
        - "buffer(int)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:160"
        BranchSideFuncs:
        - "add(io.netty.handler.codec.http.HttpHeaders)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:159"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
        - "toString()"
        - "getBytes(java.nio.charset.Charset)"
        - "base64(byte[])"
        - "<init>()"
        - "sha1(byte[])"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:164"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:168"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:167"
        BranchSideFuncs:
        - "get(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:183"
        BranchSideFuncs:
        - "selectSubprotocol(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:182"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:180"
        BranchSideFuncs:
        - "isDebugEnabled()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:179"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
        - "headers()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:176"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:183"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:182"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:137,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:138,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:139,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:140,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakeException].<init>(java.lang.String,io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:144,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:149,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:155,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:155,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:155,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:155,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:157,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:160,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:160,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:160,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:160,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:161,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:161,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].sha1(byte[])"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:162,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].base64(byte[])"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:164,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:165,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:168,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:174,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].selectSubprotocol(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:177,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13].newWebsocketDecoder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketFrameDecoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].decoderConfig()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:188,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].decoderConfig()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:188,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13].newWebSocketEncoder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketFrameEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket13FrameEncoder].<init>(boolean)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13:193,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket13FrameEncoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket13FrameEncoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket13FrameEncoder"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder].<init>(boolean)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket13FrameEncoder:71,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.SocksVersion].values()"
    functionSourceFile: "io.netty.handler.codec.socksx.SocksVersion"
    linkageType: ""
    functionLinenumber: 21
    functionLinenumberEnd: 23
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.SocksVersion[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.SocksVersion:22,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.SocksVersion].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socksx.SocksVersion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.SocksVersion"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.SocksVersion:22,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.SocksVersion].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.socksx.SocksVersion"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 50
    functionDepth: 1
    returnType: "io.netty.handler.codec.socksx.SocksVersion"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.SocksVersion].byteValue()"
    functionUses: 1
    ICount: 17
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.SocksVersion:43"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.SocksVersion:46"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.SocksVersion:45"
        BranchSideFuncs:
        - "byteValue()"
    - Branch String: "io.netty.handler.codec.socksx.SocksVersion:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.SocksVersion:49"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.SocksVersion:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.SocksVersion:43,1"
      Dst: "[io.netty.handler.codec.socksx.SocksVersion].byteValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.SocksVersion].<init>(java.lang.String,int,byte)"
    functionSourceFile: "io.netty.handler.codec.socksx.SocksVersion"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.SocksVersion:54,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator].<init>(boolean)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledByteBufAllocator].<init>(boolean,boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:46,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator].<init>(boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator].<init>(boolean,boolean)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledByteBufAllocator].<init>(boolean,boolean,boolean)"
    - "[io.netty.util.internal.PlatformDependent].useDirectBufferNoCleaner()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:59,1"
      Dst: "[io.netty.util.internal.PlatformDependent].useDirectBufferNoCleaner()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:59,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator].<init>(boolean,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator].<init>(boolean,boolean,boolean)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].<init>(io.netty.buffer.UnpooledByteBufAllocator$1)"
    - "[io.netty.buffer.AbstractByteBufAllocator].<init>(boolean)"
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.util.internal.PlatformDependent].hasDirectBufferNoCleanerConstructor()"
    functionUses: 1
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledByteBufAllocator:76"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledByteBufAllocator:-1"
        BranchSideFuncs:
        - "hasDirectBufferNoCleanerConstructor()"
      - BranchSide: "io.netty.buffer.UnpooledByteBufAllocator:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnpooledByteBufAllocator:76"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledByteBufAllocator:-1"
        BranchSideFuncs:
        - "hasDirectBufferNoCleanerConstructor()"
      - BranchSide: "io.netty.buffer.UnpooledByteBufAllocator:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnpooledByteBufAllocator:77"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledByteBufAllocator:-1"
        BranchSideFuncs:
        - "hasDirectBufferNoCleanerConstructor()"
        - "hasUnsafe()"
      - BranchSide: "io.netty.buffer.UnpooledByteBufAllocator:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:74,1"
      Dst: "[io.netty.buffer.AbstractByteBufAllocator].<init>(boolean)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:29,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].<init>(io.netty.buffer.UnpooledByteBufAllocator$1)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:76,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:77,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasDirectBufferNoCleanerConstructor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator].newHeapBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledHeapByteBuf].<init>(io.netty.buffer.UnpooledByteBufAllocator,int,int)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf].<init>(io.netty.buffer.UnpooledByteBufAllocator,int,int)"
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledByteBufAllocator:82"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledByteBufAllocator:81"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.UnpooledByteBufAllocator,int,int)"
        - "hasUnsafe()"
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:82,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:82,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf].<init>(io.netty.buffer.UnpooledByteBufAllocator,int,int)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:82,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledHeapByteBuf].<init>(io.netty.buffer.UnpooledByteBufAllocator,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledHeapByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledHeapByteBuf"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 62
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].<init>(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledHeapByteBuf].allocateArray(int)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeHeapByteBuf].allocateArray(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].allocateArray(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].allocateArray(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setArray(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    functionUses: 3
    ICount: 22
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledHeapByteBuf:53"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledHeapByteBuf:58"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.buffer.UnpooledHeapByteBuf:57"
        BranchSideFuncs:
        - "allocateArray(int)"
        - "setArray(byte[])"
        - "setIndex(int,int)"
        - "checkNotNull(java.lang.Object,java.lang.String)"
    Callsites:
    - Src: "io.netty.buffer.UnpooledHeapByteBuf:51,1"
      Dst: "[io.netty.buffer.AbstractReferenceCountedByteBuf].<init>(int)"
    - Src: "io.netty.buffer.UnpooledHeapByteBuf:55,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.buffer.UnpooledHeapByteBuf:54,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.buffer.UnpooledHeapByteBuf:54,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.UnpooledHeapByteBuf:58,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.UnpooledHeapByteBuf:59,1"
      Dst: "[io.netty.buffer.UnpooledHeapByteBuf].allocateArray(int)"
    - Src: "io.netty.buffer.UnpooledHeapByteBuf:59,1"
      Dst: "[io.netty.buffer.UnpooledHeapByteBuf].setArray(byte[])"
    - Src: "io.netty.buffer.UnpooledHeapByteBuf:60,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledHeapByteBuf].allocateArray(int)"
    functionSourceFile: "io.netty.buffer.UnpooledHeapByteBuf"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledHeapByteBuf].<init>(io.netty.buffer.UnpooledByteBufAllocator,int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledHeapByteBuf"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 161
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.UnpooledByteBufAllocator"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledHeapByteBuf:159,1"
      Dst: "[io.netty.buffer.UnpooledHeapByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator].newDirectBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 97
    functionDepth: 7
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.UnpooledByteBufAllocator,int,int)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf].<init>(io.netty.buffer.UnpooledByteBufAllocator,int,int)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf].<init>(io.netty.buffer.UnpooledByteBufAllocator,int,int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].toLeakAwareBuffer(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 25
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledByteBufAllocator:90"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledByteBufAllocator:94"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledByteBufAllocator:93"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.UnpooledByteBufAllocator,int,int)"
    - Branch String: "io.netty.buffer.UnpooledByteBufAllocator:91"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledByteBufAllocator:90"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnpooledByteBufAllocator:96"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledByteBufAllocator:95"
        BranchSideFuncs:
        - "toLeakAwareBuffer(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:90,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:91,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf].<init>(io.netty.buffer.UnpooledByteBufAllocator,int,int)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:91,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.UnpooledByteBufAllocator,int,int)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:94,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf].<init>(io.netty.buffer.UnpooledByteBufAllocator,int,int)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:96,1"
      Dst: "[io.netty.buffer.AbstractByteBufAllocator].toLeakAwareBuffer(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf].<init>(io.netty.buffer.UnpooledByteBufAllocator,int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.UnpooledByteBufAllocator"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf:181,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.UnpooledByteBufAllocator,int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.UnpooledByteBufAllocator"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeDirectByteBuf:210,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf].<init>(io.netty.buffer.UnpooledByteBufAllocator,int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 233
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.UnpooledByteBufAllocator"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf:231,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator].compositeHeapBuffer(int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].toLeakAwareBuffer(io.netty.buffer.CompositeByteBuf)"
    functionUses: 5
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledByteBufAllocator:102"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledByteBufAllocator:100"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBufAllocator,boolean,int)"
        - "toLeakAwareBuffer(io.netty.buffer.CompositeByteBuf)"
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:101,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:102,1"
      Dst: "[io.netty.buffer.AbstractByteBufAllocator].toLeakAwareBuffer(io.netty.buffer.CompositeByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator].compositeDirectBuffer(int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionDepth: 3
    returnType: "io.netty.buffer.CompositeByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].toLeakAwareBuffer(io.netty.buffer.CompositeByteBuf)"
    functionUses: 5
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledByteBufAllocator:108"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledByteBufAllocator:106"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBufAllocator,boolean,int)"
        - "toLeakAwareBuffer(io.netty.buffer.CompositeByteBuf)"
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:107,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:108,1"
      Dst: "[io.netty.buffer.AbstractByteBufAllocator].toLeakAwareBuffer(io.netty.buffer.CompositeByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator].isDirectBufferPooled()"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator].metric()"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBufAllocatorMetric"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator].incrementDirect(int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].add(long)"
    - "[java.util.concurrent.atomic.LongAdder].add(long)"
    - "[io.netty.util.internal.LongCounter].add(long)"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:122,1"
      Dst: "[io.netty.util.internal.LongCounter].add(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator].decrementDirect(int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].add(long)"
    - "[java.util.concurrent.atomic.LongAdder].add(long)"
    - "[io.netty.util.internal.LongCounter].add(long)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator:126,1"
      Dst: "[io.netty.util.internal.LongCounter].add(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodedLengthProcessor].<init>(io.netty.handler.codec.http2.HpackHuffmanEncoder)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodedLengthProcessor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.HpackHuffmanEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodedLengthProcessor:177,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodedLengthProcessor].process(byte)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodedLengthProcessor"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 184
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackHuffmanEncoder].access$200(io.netty.handler.codec.http2.HpackHuffmanEncoder)"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodedLengthProcessor:182,1"
      Dst: "[io.netty.handler.codec.http2.HpackHuffmanEncoder].access$200(io.netty.handler.codec.http2.HpackHuffmanEncoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodedLengthProcessor].reset()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodedLengthProcessor"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 189
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodedLengthProcessor].length()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodedLengthProcessor"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodedLengthProcessor].<init>(io.netty.handler.codec.http2.HpackHuffmanEncoder,io.netty.handler.codec.http2.HpackHuffmanEncoder$1)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodedLengthProcessor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.HpackHuffmanEncoder"
    - "io.netty.handler.codec.http2.HpackHuffmanEncoder$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodedLengthProcessor].<init>(io.netty.handler.codec.http2.HpackHuffmanEncoder)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodedLengthProcessor:177,1"
      Dst: "[io.netty.handler.codec.http2.HpackHuffmanEncoder$EncodedLengthProcessor].<init>(io.netty.handler.codec.http2.HpackHuffmanEncoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4XXHash32].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4XXHash32"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ByteBufChecksum].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4XXHash32:58,1"
      Dst: "[io.netty.handler.codec.compression.ByteBufChecksum].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4XXHash32].update(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4XXHash32"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4XXHash32:64,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4XXHash32].update(byte[],int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4XXHash32"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    - "[net.jpountz.xxhash.XXHash32].hash(byte[],int,int,int)"
    functionUses: 3
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4XXHash32:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4XXHash32:72"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.compression.Lz4XXHash32:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4XXHash32:70,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "io.netty.handler.codec.compression.Lz4XXHash32:72,1"
      Dst: "[net.jpountz.xxhash.XXHash32].hash(byte[],int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4XXHash32].update(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4XXHash32"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 88
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.PooledHeapByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.compression.CompressionUtil].safeNioBuffer(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[net.jpountz.xxhash.XXHash32].hash(byte[],int,int,int)"
    - "[net.jpountz.xxhash.XXHash32].hash(java.nio.ByteBuffer,int)"
    functionUses: 7
    ICount: 26
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4XXHash32:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4XXHash32:81"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.compression.Lz4XXHash32:80"
        BranchSideFuncs:
        - "hasArray()"
    - Branch String: "io.netty.handler.codec.compression.Lz4XXHash32:81"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4XXHash32:84"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
      - BranchSide: "io.netty.handler.codec.compression.Lz4XXHash32:83"
        BranchSideFuncs:
        - "safeNioBuffer(io.netty.buffer.ByteBuf,int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4XXHash32:79,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "io.netty.handler.codec.compression.Lz4XXHash32:81,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.handler.codec.compression.Lz4XXHash32:82,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.handler.codec.compression.Lz4XXHash32:82,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.handler.codec.compression.Lz4XXHash32:82,1"
      Dst: "[net.jpountz.xxhash.XXHash32].hash(byte[],int,int,int)"
    - Src: "io.netty.handler.codec.compression.Lz4XXHash32:84,1"
      Dst: "[io.netty.handler.codec.compression.CompressionUtil].safeNioBuffer(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.compression.Lz4XXHash32:84,1"
      Dst: "[net.jpountz.xxhash.XXHash32].hash(java.nio.ByteBuffer,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Lz4XXHash32].getValue()"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4XXHash32"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 8
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4XXHash32:91"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4XXHash32:100"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.compression.Lz4XXHash32:99"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4XXHash32:92,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4XXHash32].reset()"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4XXHash32"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator].<init>(int,boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:115,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator].<init>(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].<init>(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageAggregator].<init>(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:128,1"
      Dst: "[io.netty.handler.codec.MessageAggregator].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].isStartMessage(io.netty.handler.codec.http.HttpObject)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpObject"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].isContentMessage(io.netty.handler.codec.http.HttpObject)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpObject"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].isLastContentMessage(io.netty.handler.codec.http.HttpContent)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpContent"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].isAggregated(io.netty.handler.codec.http.HttpObject)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpObject"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].isContentLengthInvalid(io.netty.handler.codec.http.HttpMessage,int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 158
    functionDepth: 8
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpUtil].getContentLength(io.netty.handler.codec.http.HttpMessage,long)"
    functionUses: 1
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:155"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:155"
        BranchSideFuncs:
        - "getContentLength(io.netty.handler.codec.http.HttpMessage,long)"
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:154"
        BranchSideFuncs:
        - "getContentLength(io.netty.handler.codec.http.HttpMessage,long)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:155,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].getContentLength(io.netty.handler.codec.http.HttpMessage,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].continueResponse(io.netty.handler.codec.http.HttpMessage,int,io.netty.channel.ChannelPipeline)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 176
    functionDepth: 8
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    - "int"
    - "io.netty.channel.ChannelPipeline"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpUtil].isUnsupportedExpectation(io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.channel.DefaultChannelPipeline].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].retainedDuplicate()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].retainedDuplicate()"
    - "[io.netty.handler.codec.http.HttpUtil].is100ContinueExpected(io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.handler.codec.http.HttpUtil].getContentLength(io.netty.handler.codec.http.HttpMessage,long)"
    - "[io.netty.channel.ChannelPipeline].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.handler.codec.http.FullHttpResponse].retainedDuplicate()"
    functionUses: 1
    ICount: 26
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:162"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:165"
        BranchSideFuncs:
        - "is100ContinueExpected(io.netty.handler.codec.http.HttpMessage)"
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:166"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:174"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:168"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:171"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:170"
        BranchSideFuncs:
        - "fireUserEventTriggered(java.lang.Object)"
        - "retainedDuplicate()"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:162,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].isUnsupportedExpectation(io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:164,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireUserEventTriggered(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:165,1"
      Dst: "[io.netty.handler.codec.http.FullHttpResponse].retainedDuplicate()"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:166,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].is100ContinueExpected(io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:168,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].getContentLength(io.netty.handler.codec.http.HttpMessage,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].newContinueResponse(io.netty.handler.codec.http.HttpMessage,int,io.netty.channel.ChannelPipeline)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 179
    functionLinenumberEnd: 187
    functionDepth: 9
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    - "int"
    - "io.netty.channel.ChannelPipeline"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator].continueResponse(io.netty.handler.codec.http.HttpMessage,int,io.netty.channel.ChannelPipeline)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].remove(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 10
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:183"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:186"
        BranchSideFuncs:
        - "remove(java.lang.CharSequence)"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:185"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:180,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator].continueResponse(io.netty.handler.codec.http.HttpMessage,int,io.netty.channel.ChannelPipeline)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:184,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:184,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].remove(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].closeAfterContinueResponse(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator].ignoreContentAfterContinueResponse(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:191"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:190"
        BranchSideFuncs:
        - "ignoreContentAfterContinueResponse(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:191"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:190"
        BranchSideFuncs:
        - "ignoreContentAfterContinueResponse(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:191,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator].ignoreContentAfterContinueResponse(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].ignoreContentAfterContinueResponse(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 201
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpResponseStatus].codeClass()"
    - "[java.lang.Enum].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    functionUses: 2
    ICount: 11
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:200"
        BranchSideFuncs:
        - "codeClass()"
        - "status()"
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:199"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:198,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:198,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].codeClass()"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:198,1"
      Dst: "[java.lang.Enum].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].beginAggregation(io.netty.handler.codec.http.HttpMessage,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 218
    functionDepth: 5
    returnType: "io.netty.handler.codec.http.FullHttpMessage"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpMessage"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.codec.http.HttpUtil].setTransferEncodingChunked(io.netty.handler.codec.http.HttpMessage,boolean)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].<init>(io.netty.handler.codec.http.HttpRequest,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].<init>(io.netty.handler.codec.http.HttpResponse,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders)"
    - "[java.lang.Error].<init>()"
    functionUses: 1
    ICount: 29
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:205"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:206"
        BranchSideFuncs:
        - "setTransferEncodingChunked(io.netty.handler.codec.http.HttpMessage,boolean)"
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:205"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:206"
        BranchSideFuncs:
        - "setTransferEncodingChunked(io.netty.handler.codec.http.HttpMessage,boolean)"
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:210"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:212"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http.HttpRequest,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders)"
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:211"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:212"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:215"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http.HttpResponse,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders)"
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:214"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:205,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:207,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].setTransferEncodingChunked(io.netty.handler.codec.http.HttpMessage,boolean)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:211,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].<init>(io.netty.handler.codec.http.HttpRequest,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:213,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].<init>(io.netty.handler.codec.http.HttpResponse,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:215,1"
      Dst: "[java.lang.Error].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].<init>(io.netty.handler.codec.http.HttpRequest,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest"
    linkageType: ""
    functionLinenumber: 398
    functionLinenumberEnd: 401
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].<init>(io.netty.handler.codec.http.HttpMessage,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest:399,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].<init>(io.netty.handler.codec.http.HttpMessage,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].<init>(io.netty.handler.codec.http.HttpResponse,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse"
    linkageType: ""
    functionLinenumber: 496
    functionLinenumberEnd: 499
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpResponse"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].<init>(io.netty.handler.codec.http.HttpMessage,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse:497,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].<init>(io.netty.handler.codec.http.HttpMessage,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].aggregate(io.netty.handler.codec.http.FullHttpMessage,io.netty.handler.codec.http.HttpContent)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 227
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.FullHttpMessage"
    - "io.netty.handler.codec.http.HttpContent"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].setTrailingHeaders(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.LastHttpContent$1].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].trailingHeaders()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    functionUses: 1
    ICount: 10
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:222"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:225"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:224,1"
      Dst: "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:224,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].setTrailingHeaders(io.netty.handler.codec.http.HttpHeaders)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].finishAggregation(io.netty.handler.codec.http.FullHttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 235
    functionLinenumberEnd: 242
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.FullHttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpUtil].isContentLengthSet(io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[java.lang.String].valueOf(int)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 1
    ICount: 11
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:236"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:241"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:240"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:236,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].isContentLengthSet(io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:237,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:239,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:239,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:239,1"
      Dst: "[java.lang.String].valueOf(int)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:237,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].handleOversizedMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 280
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpUtil].is100ContinueExpected(io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.handler.codec.http.HttpUtil].isKeepAlive(io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].retainedDuplicate()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].retainedDuplicate()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$1].<init>(io.netty.handler.codec.http.HttpObjectAggregator,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$2].<init>(io.netty.handler.codec.http.HttpObjectAggregator,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close()"
    - "[io.netty.handler.codec.http.TooLongHttpContentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>()"
    - "[io.netty.handler.codec.http.FullHttpResponse].retainedDuplicate()"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 1
    ICount: 40
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:245"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:272"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:250"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:252"
        BranchSideFuncs:
        - "isKeepAlive(io.netty.handler.codec.http.HttpMessage)"
        - "is100ContinueExpected(io.netty.handler.codec.http.HttpMessage)"
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:251"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:251"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:263"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:262"
        BranchSideFuncs:
        - "writeAndFlush(java.lang.Object)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.handler.codec.http.HttpObjectAggregator,io.netty.channel.ChannelHandlerContext)"
        - "retainedDuplicate()"
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:251"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:263"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:262"
        BranchSideFuncs:
        - "writeAndFlush(java.lang.Object)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.handler.codec.http.HttpObjectAggregator,io.netty.channel.ChannelHandlerContext)"
        - "retainedDuplicate()"
    - Branch String: "io.netty.handler.codec.http.HttpObjectAggregator:273"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:277"
        BranchSideFuncs:
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "close()"
      - BranchSide: "io.netty.handler.codec.http.HttpObjectAggregator:276"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:251,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].is100ContinueExpected(io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:251,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].isKeepAlive(io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:252,1"
      Dst: "[io.netty.handler.codec.http.FullHttpResponse].retainedDuplicate()"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:252,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:253,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator$1].<init>(io.netty.handler.codec.http.HttpObjectAggregator,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:253,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:263,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator$2].<init>(io.netty.handler.codec.http.HttpObjectAggregator,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:274,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:275,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:275,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:275,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:275,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:275,1"
      Dst: "[io.netty.handler.codec.http.TooLongHttpContentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:277,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator$1].<init>(io.netty.handler.codec.http.HttpObjectAggregator,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator$1"
    linkageType: ""
    functionLinenumber: 252
    functionLinenumberEnd: 254
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpObjectAggregator"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator$1:253,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator$2].<init>(io.netty.handler.codec.http.HttpObjectAggregator,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator$2"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 264
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpObjectAggregator"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator$2:263,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.TooLongHttpContentException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.TooLongHttpContentException"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.TooLongHttpContentException:45,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].handleOversizedMessage(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator].handleOversizedMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpMessage)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:86,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator].handleOversizedMessage(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpMessage)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].finishAggregation(io.netty.buffer.ByteBufHolder)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator].finishAggregation(io.netty.handler.codec.http.FullHttpMessage)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:86,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator].finishAggregation(io.netty.handler.codec.http.FullHttpMessage)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].aggregate(io.netty.buffer.ByteBufHolder,io.netty.buffer.ByteBufHolder)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufHolder"
    - "io.netty.buffer.ByteBufHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator].aggregate(io.netty.handler.codec.http.FullHttpMessage,io.netty.handler.codec.http.HttpContent)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:86,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator].aggregate(io.netty.handler.codec.http.FullHttpMessage,io.netty.handler.codec.http.HttpContent)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].beginAggregation(java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 6
    returnType: "io.netty.buffer.ByteBufHolder"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator].beginAggregation(io.netty.handler.codec.http.HttpMessage,io.netty.buffer.ByteBuf)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:86,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator].beginAggregation(io.netty.handler.codec.http.HttpMessage,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].newContinueResponse(java.lang.Object,int,io.netty.channel.ChannelPipeline)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 10
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "int"
    - "io.netty.channel.ChannelPipeline"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator].newContinueResponse(io.netty.handler.codec.http.HttpMessage,int,io.netty.channel.ChannelPipeline)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:86,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator].newContinueResponse(io.netty.handler.codec.http.HttpMessage,int,io.netty.channel.ChannelPipeline)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].isContentLengthInvalid(java.lang.Object,int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 9
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator].isContentLengthInvalid(io.netty.handler.codec.http.HttpMessage,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:86,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator].isContentLengthInvalid(io.netty.handler.codec.http.HttpMessage,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].isAggregated(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator].isAggregated(io.netty.handler.codec.http.HttpObject)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:86,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator].isAggregated(io.netty.handler.codec.http.HttpObject)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].isLastContentMessage(io.netty.buffer.ByteBufHolder)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator].isLastContentMessage(io.netty.handler.codec.http.HttpContent)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:86,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator].isLastContentMessage(io.netty.handler.codec.http.HttpContent)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].isContentMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator].isContentMessage(io.netty.handler.codec.http.HttpObject)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:86,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator].isContentMessage(io.netty.handler.codec.http.HttpObject)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].isStartMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator].isStartMessage(io.netty.handler.codec.http.HttpObject)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectAggregator:86,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectAggregator].isStartMessage(io.netty.handler.codec.http.HttpObject)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectAggregator].access$000()"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectAggregator"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.AbstractScheduledEventExecutor$2].<init>()"
    functionSourceFile: "io.netty.util.concurrent.AbstractScheduledEventExecutor$2"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.AbstractScheduledEventExecutor$2:41,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.AbstractScheduledEventExecutor$2].run()"
    functionSourceFile: "io.netty.util.concurrent.AbstractScheduledEventExecutor$2"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 49
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder$DateValueGenerator].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder$DateValueGenerator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder$DateValueGenerator:411,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder$DateValueGenerator].call()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder$DateValueGenerator"
    linkageType: ""
    functionLinenumber: 416
    functionLinenumberEnd: 418
    functionDepth: 0
    returnType: "java.util.Date"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Date].<init>()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cors.CorsConfigBuilder$DateValueGenerator:417,1"
      Dst: "[java.util.Date].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.RecyclableArrayList$1].<init>()"
    functionSourceFile: "io.netty.util.internal.RecyclableArrayList$1"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.RecyclableArrayList$1:37,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.RecyclableArrayList$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.util.internal.RecyclableArrayList$1"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 3
    returnType: "io.netty.util.internal.RecyclableArrayList"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.RecyclableArrayList].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.util.internal.RecyclableArrayList$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.RecyclableArrayList$1:40,1"
      Dst: "[io.netty.util.internal.RecyclableArrayList].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.util.internal.RecyclableArrayList$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder:30,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder:34,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder].decodeHeader(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 50
    functionDepth: 2
    returnType: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].<init>()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setMagic(byte)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setOpcode(byte)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readShort()"
    - "[io.netty.buffer.EmptyByteBuf].readShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readShort()"
    - "[io.netty.buffer.SwappedByteBuf].readShort()"
    - "[io.netty.buffer.WrappedByteBuf].readShort()"
    - "[io.netty.buffer.AbstractByteBuf].readShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readShort()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setKeyLength(short)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setExtrasLength(byte)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setDataType(byte)"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].setStatus(short)"
    - "[io.netty.buffer.SwappedByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readInt()"
    - "[io.netty.buffer.EmptyByteBuf].readInt()"
    - "[io.netty.buffer.AbstractByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readInt()"
    - "[io.netty.buffer.WrappedByteBuf].readInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readInt()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setTotalBodyLength(int)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setOpaque(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readLong()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readLong()"
    - "[io.netty.buffer.WrappedByteBuf].readLong()"
    - "[io.netty.buffer.SwappedByteBuf].readLong()"
    - "[io.netty.buffer.EmptyByteBuf].readLong()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readLong()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readLong()"
    - "[io.netty.buffer.AbstractByteBuf].readLong()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setCas(long)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readShort()"
    - "[io.netty.buffer.ByteBuf].readInt()"
    - "[io.netty.buffer.ByteBuf].readLong()"
    functionUses: 1
    ICount: 23
    EdgeCount: 82
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder:39,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].<init>()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder:40,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder:40,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setMagic(byte)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder:41,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setOpcode(byte)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder:42,1"
      Dst: "[io.netty.buffer.ByteBuf].readShort()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder:42,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setKeyLength(short)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder:43,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setExtrasLength(byte)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder:44,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setDataType(byte)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder:45,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].setStatus(short)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder:46,1"
      Dst: "[io.netty.buffer.ByteBuf].readInt()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder:46,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setTotalBodyLength(int)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder:47,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setOpaque(int)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder:48,1"
      Dst: "[io.netty.buffer.ByteBuf].readLong()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder:48,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setCas(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].<init>()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse:38,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder].buildInvalidMessage()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponseDecoder:54,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpContentCompressor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory:435,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory].createEncoder()"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory"
    linkageType: ""
    functionLinenumber: 438
    functionLinenumberEnd: 441
    functionDepth: 2
    returnType: "io.netty.handler.codec.MessageToByteEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpContentCompressor].access$700(io.netty.handler.codec.http.HttpContentCompressor)"
    - "[io.netty.handler.codec.compression.ZstdOptions].compressionLevel()"
    - "[io.netty.handler.codec.compression.ZstdEncoder].<init>(int,int,int)"
    - "[io.netty.handler.codec.compression.ZstdOptions].blockSize()"
    - "[io.netty.handler.codec.compression.ZstdOptions].maxEncodeSize()"
    functionUses: 1
    ICount: 13
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory:439,1"
      Dst: "[io.netty.handler.codec.http.HttpContentCompressor].access$700(io.netty.handler.codec.http.HttpContentCompressor)"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory:439,1"
      Dst: "[io.netty.handler.codec.compression.ZstdOptions].compressionLevel()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory:440,1"
      Dst: "[io.netty.handler.codec.compression.ZstdOptions].blockSize()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory:440,1"
      Dst: "[io.netty.handler.codec.compression.ZstdOptions].maxEncodeSize()"
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory:440,1"
      Dst: "[io.netty.handler.codec.compression.ZstdEncoder].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor,io.netty.handler.codec.http.HttpContentCompressor$1)"
    functionSourceFile: "io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpContentCompressor"
    - "io.netty.handler.codec.http.HttpContentCompressor$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory:435,1"
      Dst: "[io.netty.handler.codec.http.HttpContentCompressor$ZstdEncoderFactory].<init>(io.netty.handler.codec.http.HttpContentCompressor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspHeaders$Names].<init>()"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspHeaders$Names"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspHeaders$Names:214,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$4].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$4"
    linkageType: ""
    functionLinenumber: 246
    functionLinenumberEnd: 248
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.socket.nio.NioSocketChannel"
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$4:247,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$4].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$4"
    linkageType: ""
    functionLinenumber: 249
    functionLinenumberEnd: 252
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].access$300(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$4:250,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].access$300(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].access$300(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].shutdownDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:59,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 258
    functionLinenumberEnd: 273
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    functionUses: 2
    ICount: 16
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:261"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:267"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:266"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:262"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:266"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Throwable)"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:265"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:267"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:270"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:269"
        BranchSideFuncs:
        - "setSuccess()"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:259,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:263,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:266,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:270,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$4].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$4"
    linkageType: ""
    functionLinenumber: 246
    functionLinenumberEnd: 248
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel$4].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$4:247,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel$4].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.AsciiHeadersEncoder$NewlineType].values()"
    functionSourceFile: "io.netty.handler.codec.AsciiHeadersEncoder$NewlineType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.AsciiHeadersEncoder$NewlineType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder$NewlineType:47,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.AsciiHeadersEncoder$NewlineType].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.AsciiHeadersEncoder$NewlineType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.AsciiHeadersEncoder$NewlineType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder$NewlineType:47,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.AsciiHeadersEncoder$NewlineType].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.AsciiHeadersEncoder$NewlineType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder$NewlineType:47,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.AsciiHeadersEncoder].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.AsciiHeadersEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.AsciiHeadersEncoder].<init>(io.netty.buffer.ByteBuf,io.netty.handler.codec.AsciiHeadersEncoder$SeparatorType,io.netty.handler.codec.AsciiHeadersEncoder$NewlineType)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder:63,1"
      Dst: "[io.netty.handler.codec.AsciiHeadersEncoder].<init>(io.netty.buffer.ByteBuf,io.netty.handler.codec.AsciiHeadersEncoder$SeparatorType,io.netty.handler.codec.AsciiHeadersEncoder$NewlineType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.AsciiHeadersEncoder].<init>(io.netty.buffer.ByteBuf,io.netty.handler.codec.AsciiHeadersEncoder$SeparatorType,io.netty.handler.codec.AsciiHeadersEncoder$NewlineType)"
    functionSourceFile: "io.netty.handler.codec.AsciiHeadersEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.AsciiHeadersEncoder$SeparatorType"
    - "io.netty.handler.codec.AsciiHeadersEncoder$NewlineType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder:66,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder:67,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.AsciiHeadersEncoder].encode(java.util.Map$Entry)"
    functionSourceFile: "io.netty.handler.codec.AsciiHeadersEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Map$Entry"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.lang.CharSequence].length()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.AsciiHeadersEncoder].writeAscii(io.netty.buffer.ByteBuf,int,java.lang.CharSequence)"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.buffer.ByteBuf].setByte(int,int)"
    - "[java.lang.Error].<init>()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder:73,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder:74,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder:76,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder:79,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder:80,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder:81,1"
      Dst: "[io.netty.handler.codec.AsciiHeadersEncoder].writeAscii(io.netty.buffer.ByteBuf,int,java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder:84,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder:86,1"
      Dst: "[io.netty.buffer.ByteBuf].setByte(int,int)"
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder:93,1"
      Dst: "[java.lang.Error].<init>()"
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder:111,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.AsciiHeadersEncoder].writeAscii(io.netty.buffer.ByteBuf,int,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.AsciiHeadersEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[io.netty.buffer.ByteBufUtil].copy(io.netty.util.AsciiString,int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.AsciiHeadersEncoder:115"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.AsciiHeadersEncoder:118"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.AsciiHeadersEncoder:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder:116,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder:116,1"
      Dst: "[io.netty.buffer.ByteBufUtil].copy(io.netty.util.AsciiString,int,io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder:118,1"
      Dst: "[io.netty.buffer.ByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].copy(io.netty.util.AsciiString,int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 1361
    functionLinenumberEnd: 1369
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.util.AsciiString"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].array()"
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,byte[],int,int)"
    functionUses: 1
    ICount: 29
    EdgeCount: 38
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil:1362"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil:1367"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "length()"
        - "append(int)"
      - BranchSide: "io.netty.buffer.ByteBufUtil:1366"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
        - "checkNotNull(java.lang.Object,java.lang.String)"
        - "setBytes(int,byte[],int,int)"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:1362,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.buffer.ByteBufUtil:1362,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil:1363,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.ByteBufUtil:1363,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil:1363,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.ByteBufUtil:1364,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.buffer.ByteBufUtil:1364,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.ByteBufUtil:1364,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil:1367,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil:1367,1"
      Dst: "[io.netty.util.AsciiString].array()"
    - Src: "io.netty.buffer.ByteBufUtil:1367,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.buffer.ByteBufUtil:1367,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Error].values()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Error"
    linkageType: ""
    functionLinenumber: 22
    functionLinenumberEnd: 24
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Error[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Error:23,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Error].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Error"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Error"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Error:23,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Error].<init>(java.lang.String,int,long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Error"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 14
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Error:51,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Error].valueOf(long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Error"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Error"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2Error:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Error:62"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2Error:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2Error:62"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.sctp.SctpChannelOption].<init>()"
    functionSourceFile: "io.netty.channel.sctp.SctpChannelOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOption].<init>(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.SctpChannelOption:46,1"
      Dst: "[io.netty.channel.ChannelOption].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.misc.Signal].getNumber()"
    functionSourceFile: "jdk.internal.misc.Signal"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.misc.Signal].getName()"
    functionSourceFile: "jdk.internal.misc.Signal"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.misc.Signal].equals(java.lang.Object)"
    functionSourceFile: "jdk.internal.misc.Signal"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 9
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "jdk.internal.misc.Signal:102"
      Branch Sides:
      - BranchSide: "jdk.internal.misc.Signal:105"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.misc.Signal:104"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.misc.Signal:105"
      Branch Sides:
      - BranchSide: "jdk.internal.misc.Signal:106"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.misc.Signal:105"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.misc.Signal:105"
      Branch Sides:
      - BranchSide: "jdk.internal.misc.Signal:108"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.misc.Signal:107"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "jdk.internal.misc.Signal:109"
      Branch Sides:
      - BranchSide: "jdk.internal.misc.Signal:107"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "jdk.internal.misc.Signal:109"
      Branch Sides:
      - BranchSide: "jdk.internal.misc.Signal:107"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "jdk.internal.misc.Signal:109,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[jdk.internal.misc.Signal].hashCode()"
    functionSourceFile: "jdk.internal.misc.Signal"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.misc.Signal].toString()"
    functionSourceFile: "jdk.internal.misc.Signal"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.misc.Signal:128,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "jdk.internal.misc.Signal:128,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "jdk.internal.misc.Signal:128,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.misc.Signal].<init>(java.lang.String)"
    functionSourceFile: "jdk.internal.misc.Signal"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[jdk.internal.misc.Signal].findSignal0(java.lang.String)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "jdk.internal.misc.Signal:142"
      Branch Sides:
      - BranchSide: "jdk.internal.misc.Signal:145"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.misc.Signal:144"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.misc.Signal:147"
      Branch Sides:
      - BranchSide: "jdk.internal.misc.Signal:150"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.misc.Signal:149"
        BranchSideFuncs: []
    Callsites:
    - Src: "jdk.internal.misc.Signal:138,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "jdk.internal.misc.Signal:139,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "jdk.internal.misc.Signal:142,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "jdk.internal.misc.Signal:143,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "jdk.internal.misc.Signal:143,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "jdk.internal.misc.Signal:143,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "jdk.internal.misc.Signal:143,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "jdk.internal.misc.Signal:146,1"
      Dst: "[jdk.internal.misc.Signal].findSignal0(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.misc.Signal].handle(jdk.internal.misc.Signal,jdk.internal.misc.Signal$Handler)"
    functionSourceFile: "jdk.internal.misc.Signal"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "jdk.internal.misc.Signal$Handler"
    argCount: 2
    argTypes:
    - "jdk.internal.misc.Signal"
    - "jdk.internal.misc.Signal$Handler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[jdk.internal.misc.Signal$NativeHandler].getHandler()"
    - "[jdk.internal.misc.Signal].handle0(int,long)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.util.Hashtable].remove(java.lang.Object)"
    - "[jdk.internal.misc.Signal$NativeHandler].<init>(long)"
    functionUses: 0
    ICount: 58
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "jdk.internal.misc.Signal:169"
      Branch Sides:
      - BranchSide: "jdk.internal.misc.Signal:170"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.misc.Signal:169"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.misc.Signal:172"
      Branch Sides:
      - BranchSide: "jdk.internal.misc.Signal:176"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.misc.Signal:175"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.misc.Signal:180"
      Branch Sides:
      - BranchSide: "jdk.internal.misc.Signal:183"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.misc.Signal:182"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.misc.Signal:183"
      Branch Sides:
      - BranchSide: "jdk.internal.misc.Signal:185"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.misc.Signal:184"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.misc.Signal:185"
      Branch Sides:
      - BranchSide: "jdk.internal.misc.Signal:187"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.misc.Signal:186"
        BranchSideFuncs: []
    - Branch String: "jdk.internal.misc.Signal:187"
      Branch Sides:
      - BranchSide: "jdk.internal.misc.Signal:190"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.misc.Signal:189"
        BranchSideFuncs: []
    Callsites:
    - Src: "jdk.internal.misc.Signal:167,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "jdk.internal.misc.Signal:170,1"
      Dst: "[jdk.internal.misc.Signal$NativeHandler].getHandler()"
    - Src: "jdk.internal.misc.Signal:171,1"
      Dst: "[jdk.internal.misc.Signal].handle0(int,long)"
    - Src: "jdk.internal.misc.Signal:173,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "jdk.internal.misc.Signal:173,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "jdk.internal.misc.Signal:173,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "jdk.internal.misc.Signal:173,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "jdk.internal.misc.Signal:173,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "jdk.internal.misc.Signal:176,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "jdk.internal.misc.Signal:176,1"
      Dst: "[java.util.Hashtable].put(java.lang.Object,java.lang.Object)"
    - Src: "jdk.internal.misc.Signal:178,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "jdk.internal.misc.Signal:179,1"
      Dst: "[java.util.Hashtable].remove(java.lang.Object)"
    - Src: "jdk.internal.misc.Signal:190,1"
      Dst: "[jdk.internal.misc.Signal$NativeHandler].<init>(long)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.IllegalArgumentException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 2
  - functionName: "[jdk.internal.misc.Signal].handle0(int,long)"
    functionSourceFile: "jdk.internal.misc.Signal"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.misc.Signal].raise(jdk.internal.misc.Signal)"
    functionSourceFile: "jdk.internal.misc.Signal"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "jdk.internal.misc.Signal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[jdk.internal.misc.Signal].raise0(int)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "jdk.internal.misc.Signal:203"
      Branch Sides:
      - BranchSide: "jdk.internal.misc.Signal:206"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.misc.Signal:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "jdk.internal.misc.Signal:202,1"
      Dst: "[java.util.Objects].requireNonNull(java.lang.Object,java.lang.String)"
    - Src: "jdk.internal.misc.Signal:203,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "jdk.internal.misc.Signal:204,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "jdk.internal.misc.Signal:204,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "jdk.internal.misc.Signal:204,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "jdk.internal.misc.Signal:204,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "jdk.internal.misc.Signal:204,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "jdk.internal.misc.Signal:206,1"
      Dst: "[jdk.internal.misc.Signal].raise0(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.IllegalArgumentException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.misc.Signal].raise0(int)"
    functionSourceFile: "jdk.internal.misc.Signal"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.misc.Signal].dispatch(int)"
    functionSourceFile: "jdk.internal.misc.Signal"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[jdk.internal.misc.Signal$1].<init>(jdk.internal.misc.Signal$Handler,jdk.internal.misc.Signal)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Thread].<init>(java.lang.ThreadGroup,java.lang.Runnable,java.lang.String,long,boolean)"
    - "[java.lang.Thread].start()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "jdk.internal.misc.Signal:223"
      Branch Sides:
      - BranchSide: "jdk.internal.misc.Signal:226"
        BranchSideFuncs: []
      - BranchSide: "jdk.internal.misc.Signal:225"
        BranchSideFuncs: []
    Callsites:
    - Src: "jdk.internal.misc.Signal:211,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "jdk.internal.misc.Signal:211,1"
      Dst: "[java.util.Hashtable].get(java.lang.Object)"
    - Src: "jdk.internal.misc.Signal:214,1"
      Dst: "[jdk.internal.misc.Signal$1].<init>(jdk.internal.misc.Signal$Handler,jdk.internal.misc.Signal)"
    - Src: "jdk.internal.misc.Signal:224,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "jdk.internal.misc.Signal:224,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "jdk.internal.misc.Signal:224,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "jdk.internal.misc.Signal:224,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "jdk.internal.misc.Signal:224,1"
      Dst: "[java.lang.Thread].<init>(java.lang.ThreadGroup,java.lang.Runnable,java.lang.String,long,boolean)"
    - Src: "jdk.internal.misc.Signal:224,1"
      Dst: "[java.lang.Thread].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[jdk.internal.misc.Signal$1].<init>(jdk.internal.misc.Signal$Handler,jdk.internal.misc.Signal)"
    functionSourceFile: "jdk.internal.misc.Signal$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "jdk.internal.misc.Signal$Handler"
    - "jdk.internal.misc.Signal"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.misc.Signal$1:214,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.misc.Signal].findSignal0(java.lang.String)"
    functionSourceFile: "jdk.internal.misc.Signal"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].<init>(io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroup].<init>(io.netty.util.concurrent.EventExecutor,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:65,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].<init>(io.netty.util.concurrent.EventExecutor,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].<init>(java.lang.String,io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroup].<init>(java.lang.String,io.netty.util.concurrent.EventExecutor,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:74,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].<init>(java.lang.String,io.netty.util.concurrent.EventExecutor,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].<init>(io.netty.util.concurrent.EventExecutor,boolean)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.util.concurrent.atomic.AtomicInteger].incrementAndGet()"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.group.DefaultChannelGroup].<init>(java.lang.String,io.netty.util.concurrent.EventExecutor,boolean)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:84,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:84,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:84,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].incrementAndGet()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:84,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:84,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:84,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].<init>(java.lang.String,io.netty.util.concurrent.EventExecutor,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].<init>(java.lang.String,io.netty.util.concurrent.EventExecutor,boolean)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "io.netty.util.concurrent.EventExecutor"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractSet].<init>()"
    - "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - "[io.netty.channel.group.DefaultChannelGroup$1].<init>(io.netty.channel.group.DefaultChannelGroup)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].<init>(io.netty.channel.group.ChannelGroup)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:94,1"
      Dst: "[java.util.AbstractSet].<init>()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:48,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:50,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup$1].<init>(io.netty.channel.group.DefaultChannelGroup)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:56,1"
      Dst: "[io.netty.channel.group.VoidChannelGroupFuture].<init>(io.netty.channel.group.ChannelGroup)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:95,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].name()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].find(io.netty.channel.ChannelId)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.Channel"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:109"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:108,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].isEmpty()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].isEmpty()"
    - "[java.util.Map].isEmpty()"
    functionUses: 14
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:118"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:117"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:118"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:117"
        BranchSideFuncs:
        - "isEmpty()"
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:118,1"
      Dst: "[java.util.Map].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].size()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].size()"
    - "[java.util.Map].size()"
    functionUses: 15
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:123,1"
      Dst: "[java.util.Map].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].contains(java.lang.Object)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 134
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].containsValue(java.lang.Object)"
    - "[java.util.Map].containsValue(java.lang.Object)"
    functionUses: 14
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:128"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:130"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:129"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:130"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:133"
        BranchSideFuncs:
        - "containsValue(java.lang.Object)"
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:129,1"
      Dst: "[java.util.Map].containsValue(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].add(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 163
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].id()"
    - "[io.netty.channel.AbstractChannel].id()"
    - "[java.util.concurrent.ConcurrentHashMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].closeFuture()"
    - "[io.netty.channel.AbstractChannel].closeFuture()"
    - "[io.netty.channel.AbstractChannel].close()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].close()"
    - "[io.netty.channel.embedded.EmbeddedChannel].close()"
    - "[io.netty.channel.Channel].id()"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.Channel].closeFuture()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 1
    ICount: 26
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:138"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:137"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:141"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:-1"
        BranchSideFuncs:
        - "putIfAbsent(java.lang.Object,java.lang.Object)"
        - "id()"
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:142"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:146"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "closeFuture()"
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:145"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:146"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:161"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:146"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:161"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:141,1"
      Dst: "[io.netty.channel.Channel].id()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:141,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:143,1"
      Dst: "[io.netty.channel.Channel].closeFuture()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:143,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:159,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].remove(java.lang.Object)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 188
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].remove(java.lang.Object)"
    - "[io.netty.channel.AbstractChannel].id()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].id()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].closeFuture()"
    - "[io.netty.channel.AbstractChannel].closeFuture()"
    - "[io.netty.channel.CompleteChannelFuture].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[java.util.Map].remove(java.lang.Object)"
    - "[io.netty.channel.Channel].id()"
    - "[io.netty.channel.Channel].closeFuture()"
    - "[io.netty.channel.ChannelFuture].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 21
    ICount: 33
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:168"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:173"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:170"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:182"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:181"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:173"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:182"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:181"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:175"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:178"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:177"
        BranchSideFuncs:
        - "remove(java.lang.Object)"
        - "id()"
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:182"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:186"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:185"
        BranchSideFuncs:
        - "closeFuture()"
        - "removeListener(io.netty.util.concurrent.GenericFutureListener)"
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:169,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:176,1"
      Dst: "[io.netty.channel.Channel].id()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:186,1"
      Dst: "[io.netty.channel.Channel].closeFuture()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:186,1"
      Dst: "[io.netty.channel.ChannelFuture].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].clear()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 195
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].clear()"
    - "[java.util.Map].clear()"
    functionUses: 5
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:192,1"
      Dst: "[java.util.Map].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 201
    functionDepth: 2
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap].values()"
    - "[io.netty.channel.group.CombinedIterator].<init>(java.util.Iterator,java.util.Iterator)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 119
    ICount: 10
    EdgeCount: 109
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:199,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:199,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:200,1"
      Dst: "[io.netty.channel.group.CombinedIterator].<init>(java.util.Iterator,java.util.Iterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].toArray()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroup].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].addAll(java.util.Collection)"
    - "[java.util.Collection].toArray()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:205,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].size()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:205,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:206,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:206,1"
      Dst: "[java.util.Collection].addAll(java.util.Collection)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:208,1"
      Dst: "[java.util.Collection].toArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].toArray(java.lang.Object[])"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 217
    functionDepth: 1
    returnType: "java.lang.Object[]"
    argCount: 1
    argTypes:
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.channel.group.DefaultChannelGroup].size()"
    - "[io.netty.util.internal.RecyclableArrayList].addAll(java.util.Collection)"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[java.util.concurrent.ConcurrentHashMap].values()"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[java.util.Map].values()"
    - "[java.util.Collection].addAll(java.util.Collection)"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    functionUses: 9
    ICount: 13
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:213,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].size()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:213,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:214,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:214,1"
      Dst: "[java.util.Collection].addAll(java.util.Collection)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:216,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].close()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.ChannelMatchers].all()"
    - "[io.netty.channel.group.DefaultChannelGroup].close(io.netty.channel.group.ChannelMatcher)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:221,1"
      Dst: "[io.netty.channel.group.ChannelMatchers].all()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:221,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].close(io.netty.channel.group.ChannelMatcher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.ChannelMatchers].all()"
    functionSourceFile: "io.netty.channel.group.ChannelMatchers"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.group.ChannelMatcher"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].close(io.netty.channel.group.ChannelMatcher)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.group.ChannelMatcher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.group.DefaultChannelGroup].size()"
    - "[java.util.LinkedHashMap].<init>(int)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.group.ChannelMatcher].matches(io.netty.channel.Channel)"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].<init>(io.netty.channel.group.ChannelGroup,java.util.Map,io.netty.util.concurrent.EventExecutor)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:325"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:334"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:335"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:340"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:339"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:336"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:339"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:338"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:340"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:346"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:345"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:341"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:344"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:343"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:320,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:323,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].size()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:323,1"
      Dst: "[java.util.LinkedHashMap].<init>(int)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:335,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:335,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:335,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:335,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:336,1"
      Dst: "[io.netty.channel.group.ChannelMatcher].matches(io.netty.channel.Channel)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:337,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:337,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:346,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].<init>(io.netty.channel.group.ChannelGroup,java.util.Map,io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].<init>(io.netty.channel.group.ChannelGroup,java.util.Map,io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.group.ChannelGroup"
    - "java.util.Map"
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].<init>(io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$1].<init>(io.netty.channel.group.DefaultChannelGroupFuture)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[java.util.Map].isEmpty()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess0()"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture:110"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:115"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:114"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture:115"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:118"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:117"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:107,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].<init>(io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:48,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture$1].<init>(io.netty.channel.group.DefaultChannelGroupFuture)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:109,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:110,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:110,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:110,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:110,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:111,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:115,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:116,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].disconnect()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.ChannelMatchers].all()"
    - "[io.netty.channel.group.DefaultChannelGroup].disconnect(io.netty.channel.group.ChannelMatcher)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:226,1"
      Dst: "[io.netty.channel.group.ChannelMatchers].all()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:226,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].disconnect(io.netty.channel.group.ChannelMatcher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].disconnect(io.netty.channel.group.ChannelMatcher)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.group.ChannelMatcher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.group.DefaultChannelGroup].size()"
    - "[java.util.LinkedHashMap].<init>(int)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.group.ChannelMatcher].matches(io.netty.channel.Channel)"
    - "[io.netty.channel.ChannelOutboundInvoker].disconnect()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].<init>(io.netty.channel.group.ChannelGroup,java.util.Map,io.netty.util.concurrent.EventExecutor)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:304"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:309"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:308"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:305"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:308"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:307"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:309"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:315"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:314"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:310"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:313"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:312"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:299,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:302,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].size()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:302,1"
      Dst: "[java.util.LinkedHashMap].<init>(int)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:304,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:304,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:304,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:304,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:305,1"
      Dst: "[io.netty.channel.group.ChannelMatcher].matches(io.netty.channel.Channel)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:306,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].disconnect()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:306,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:315,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].<init>(io.netty.channel.group.ChannelGroup,java.util.Map,io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].deregister()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.ChannelMatchers].all()"
    - "[io.netty.channel.group.DefaultChannelGroup].deregister(io.netty.channel.group.ChannelMatcher)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:231,1"
      Dst: "[io.netty.channel.group.ChannelMatchers].all()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:231,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].deregister(io.netty.channel.group.ChannelMatcher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].deregister(io.netty.channel.group.ChannelMatcher)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.group.ChannelMatcher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.group.DefaultChannelGroup].size()"
    - "[java.util.LinkedHashMap].<init>(int)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.group.ChannelMatcher].matches(io.netty.channel.Channel)"
    - "[io.netty.channel.ChannelOutboundInvoker].deregister()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].<init>(io.netty.channel.group.ChannelGroup,java.util.Map,io.netty.util.concurrent.EventExecutor)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:356"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:361"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:360"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:357"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:360"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:359"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:361"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:367"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:366"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:362"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:365"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:364"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:351,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:354,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].size()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:354,1"
      Dst: "[java.util.LinkedHashMap].<init>(int)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:356,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:356,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:356,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:356,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:357,1"
      Dst: "[io.netty.channel.group.ChannelMatcher].matches(io.netty.channel.Channel)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:358,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].deregister()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:358,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:367,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].<init>(io.netty.channel.group.ChannelGroup,java.util.Map,io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].write(java.lang.Object)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 12
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.ChannelMatchers].all()"
    - "[io.netty.channel.group.DefaultChannelGroup].write(java.lang.Object,io.netty.channel.group.ChannelMatcher)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:236,1"
      Dst: "[io.netty.channel.group.ChannelMatchers].all()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:236,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].write(java.lang.Object,io.netty.channel.group.ChannelMatcher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].write(java.lang.Object,io.netty.channel.group.ChannelMatcher)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.channel.group.ChannelMatcher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroup].write(java.lang.Object,io.netty.channel.group.ChannelMatcher,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:253,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].write(java.lang.Object,io.netty.channel.group.ChannelMatcher,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].write(java.lang.Object,io.netty.channel.group.ChannelMatcher,boolean)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "io.netty.channel.group.ChannelMatcher"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.group.ChannelMatcher].matches(io.netty.channel.Channel)"
    - "[io.netty.channel.group.DefaultChannelGroup].safeDuplicate(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundInvoker].voidPromise()"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[java.util.Map].size()"
    - "[java.util.LinkedHashMap].<init>(int)"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].<init>(io.netty.channel.group.ChannelGroup,java.util.Map,io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:262"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:270"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:269"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:263"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:268"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:267"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:264"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:267"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:266"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:271"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:276"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:275"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:272"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:275"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:274"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:258,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:263,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:263,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:263,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:263,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:264,1"
      Dst: "[io.netty.channel.group.ChannelMatcher].matches(io.netty.channel.Channel)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:265,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].safeDuplicate(java.lang.Object)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:265,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].voidPromise()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:265,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:270,1"
      Dst: "[java.util.Map].size()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:270,1"
      Dst: "[java.util.LinkedHashMap].<init>(int)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:273,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:273,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:276,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].<init>(io.netty.channel.group.ChannelGroup,java.util.Map,io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:278,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].safeDuplicate(java.lang.Object)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.ByteBufHolder].retainedDuplicate()"
    - "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:242"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:244"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:243"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:244"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:247"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:246"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:243,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:245,1"
      Dst: "[io.netty.buffer.ByteBufHolder].retainedDuplicate()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:247,1"
      Dst: "[io.netty.util.ReferenceCountUtil].retain(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].flush()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.group.ChannelGroup"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.ChannelMatchers].all()"
    - "[io.netty.channel.group.DefaultChannelGroup].flush(io.netty.channel.group.ChannelMatcher)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:284,1"
      Dst: "[io.netty.channel.group.ChannelMatchers].all()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:284,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].flush(io.netty.channel.group.ChannelMatcher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].flush(io.netty.channel.group.ChannelMatcher)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.group.ChannelGroup"
    argCount: 1
    argTypes:
    - "io.netty.channel.group.ChannelMatcher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.group.ChannelMatcher].matches(io.netty.channel.Channel)"
    - "[io.netty.channel.Channel].flush()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:372"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:377"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:376"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:373"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:376"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:375"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:372,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:372,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:372,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:372,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:373,1"
      Dst: "[io.netty.channel.group.ChannelMatcher].matches(io.netty.channel.Channel)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:374,1"
      Dst: "[io.netty.channel.Channel].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].flushAndWrite(java.lang.Object)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 13
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroup].writeAndFlush(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:289,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].writeAndFlush(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].writeAndFlush(java.lang.Object)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 12
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.ChannelMatchers].all()"
    - "[io.netty.channel.group.DefaultChannelGroup].writeAndFlush(java.lang.Object,io.netty.channel.group.ChannelMatcher)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:294,1"
      Dst: "[io.netty.channel.group.ChannelMatchers].all()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:294,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].writeAndFlush(java.lang.Object,io.netty.channel.group.ChannelMatcher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].writeAndFlush(java.lang.Object,io.netty.channel.group.ChannelMatcher)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.channel.group.ChannelMatcher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroup].writeAndFlush(java.lang.Object,io.netty.channel.group.ChannelMatcher,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:387,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].writeAndFlush(java.lang.Object,io.netty.channel.group.ChannelMatcher,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].writeAndFlush(java.lang.Object,io.netty.channel.group.ChannelMatcher,boolean)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "io.netty.channel.group.ChannelMatcher"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.group.ChannelMatcher].matches(io.netty.channel.Channel)"
    - "[io.netty.channel.group.DefaultChannelGroup].safeDuplicate(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundInvoker].voidPromise()"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[java.util.Map].size()"
    - "[java.util.LinkedHashMap].<init>(int)"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].<init>(io.netty.channel.group.ChannelGroup,java.util.Map,io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:395"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:403"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:402"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:396"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:401"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:400"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:397"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:400"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:399"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:404"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:409"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:408"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:405"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:408"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:407"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:392,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:396,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:396,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:396,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:396,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:397,1"
      Dst: "[io.netty.channel.group.ChannelMatcher].matches(io.netty.channel.Channel)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:398,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].safeDuplicate(java.lang.Object)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:398,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].voidPromise()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:398,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:403,1"
      Dst: "[java.util.Map].size()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:403,1"
      Dst: "[java.util.LinkedHashMap].<init>(int)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:406,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:406,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:409,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].<init>(io.netty.channel.group.ChannelGroup,java.util.Map,io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:411,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].flushAndWrite(java.lang.Object,io.netty.channel.group.ChannelMatcher)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 12
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.channel.group.ChannelMatcher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroup].writeAndFlush(java.lang.Object,io.netty.channel.group.ChannelMatcher)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:382,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].writeAndFlush(java.lang.Object,io.netty.channel.group.ChannelMatcher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].newCloseFuture()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.ChannelMatchers].all()"
    - "[io.netty.channel.group.DefaultChannelGroup].newCloseFuture(io.netty.channel.group.ChannelMatcher)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:417,1"
      Dst: "[io.netty.channel.group.ChannelMatchers].all()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:417,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].newCloseFuture(io.netty.channel.group.ChannelMatcher)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].newCloseFuture(io.netty.channel.group.ChannelMatcher)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "io.netty.channel.group.ChannelGroupFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.group.ChannelMatcher"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroup].size()"
    - "[java.util.LinkedHashMap].<init>(int)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.group.ChannelMatcher].matches(io.netty.channel.Channel)"
    - "[io.netty.channel.Channel].closeFuture()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].<init>(io.netty.channel.group.ChannelGroup,java.util.Map,io.netty.util.concurrent.EventExecutor)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:425"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:430"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:429"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:426"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:429"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:428"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:430"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:436"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:435"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:431"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:434"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:433"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:423,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].size()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:423,1"
      Dst: "[java.util.LinkedHashMap].<init>(int)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:425,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:425,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:425,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:425,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:426,1"
      Dst: "[io.netty.channel.group.ChannelMatcher].matches(io.netty.channel.Channel)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:427,1"
      Dst: "[io.netty.channel.Channel].closeFuture()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:427,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:436,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].<init>(io.netty.channel.group.ChannelGroup,java.util.Map,io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].hashCode()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: 440
    functionLinenumberEnd: 442
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].identityHashCode(java.lang.Object)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:441,1"
      Dst: "[java.lang.System].identityHashCode(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].equals(java.lang.Object)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: 445
    functionLinenumberEnd: 447
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:446"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:445"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].compareTo(io.netty.channel.group.ChannelGroup)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.group.ChannelGroup"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroup].name()"
    - "[io.netty.channel.group.ChannelGroup].name()"
    - "[java.lang.String].compareTo(java.lang.String)"
    - "[java.lang.System].identityHashCode(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroup:452"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:456"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroup:455"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:451,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].name()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:451,1"
      Dst: "[io.netty.channel.group.ChannelGroup].name()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:451,1"
      Dst: "[java.lang.String].compareTo(java.lang.String)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:456,1"
      Dst: "[java.lang.System].identityHashCode(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].toString()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: 460
    functionLinenumberEnd: 462
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.channel.group.DefaultChannelGroup].name()"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].size()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 14
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:461,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:461,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:461,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:461,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].name()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:461,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].size()"
    - Src: "io.netty.channel.group.DefaultChannelGroup:461,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:461,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.channel.group.DefaultChannelGroup:461,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].add(java.lang.Object)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroup].add(io.netty.channel.Channel)"
    functionUses: 21
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:43,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].add(io.netty.channel.Channel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroup].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroup].compareTo(io.netty.channel.group.ChannelGroup)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroup:43,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroup].compareTo(io.netty.channel.group.ChannelGroup)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].<init>(io.netty.channel.socket.DatagramChannel,java.net.DatagramSocket)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.DatagramChannel"
    - "java.net.DatagramSocket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.FixedRecvByteBufAllocator].<init>(int)"
    - "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel,io.netty.channel.RecvByteBufAllocator)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:55,1"
      Dst: "[io.netty.channel.FixedRecvByteBufAllocator].<init>(int)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:55,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].<init>(io.netty.channel.Channel,io.netty.channel.RecvByteBufAllocator)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:56,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 106
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].isBroadcast()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].getReceiveBufferSize()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].getSendBufferSize()"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].isReuseAddress()"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].isLoopbackModeDisabled()"
    - "[io.netty.channel.socket.nio.NioDatagramChannelConfig].isLoopbackModeDisabled()"
    - "[io.netty.channel.socket.nio.NioDatagramChannelConfig].getInterface()"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].getInterface()"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].getNetworkInterface()"
    - "[io.netty.channel.socket.nio.NioDatagramChannelConfig].getNetworkInterface()"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].getTimeToLive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannelConfig].getTimeToLive()"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].getTrafficClass()"
    - "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 8
    ICount: 52
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:75"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:78"
        BranchSideFuncs:
        - "isBroadcast()"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:77"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:78"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:81"
        BranchSideFuncs:
        - "getReceiveBufferSize()"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:80"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:81"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:84"
        BranchSideFuncs:
        - "getSendBufferSize()"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:83"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:84"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:87"
        BranchSideFuncs:
        - "isReuseAddress()"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:86"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:87"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:90"
        BranchSideFuncs:
        - "isLoopbackModeDisabled()"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:90"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:93"
        BranchSideFuncs:
        - "getInterface()"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:92"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:93"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:96"
        BranchSideFuncs:
        - "getNetworkInterface()"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:95"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:96"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:99"
        BranchSideFuncs:
        - "getTimeToLive()"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:98"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:99"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:102"
        BranchSideFuncs:
        - "getTrafficClass()"
        - "valueOf(int)"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:101"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:102"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:105"
        BranchSideFuncs:
        - "valueOf(boolean)"
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:104"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:76,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].isBroadcast()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:76,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:79,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].getReceiveBufferSize()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:79,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:82,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].getSendBufferSize()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:85,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].isReuseAddress()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:88,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].isLoopbackModeDisabled()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:91,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].getInterface()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:94,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].getNetworkInterface()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:97,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].getTimeToLive()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:100,1"
      Dst: "[io.netty.channel.socket.DefaultDatagramChannelConfig].getTrafficClass()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:105,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].isBroadcast()"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 153
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].getBroadcast()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:150,1"
      Dst: "[java.net.DatagramSocket].getBroadcast()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:152,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].getReceiveBufferSize()"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 281
    functionLinenumberEnd: 285
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].getReceiveBufferSize()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:282,1"
      Dst: "[java.net.DatagramSocket].getReceiveBufferSize()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:284,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].getSendBufferSize()"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 300
    functionLinenumberEnd: 304
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].getSendBufferSize()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:301,1"
      Dst: "[java.net.DatagramSocket].getSendBufferSize()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:303,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].isReuseAddress()"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 266
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].getReuseAddress()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:263,1"
      Dst: "[java.net.DatagramSocket].getReuseAddress()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:265,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].isLoopbackModeDisabled()"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 216
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.MulticastSocket].getLoopbackMode()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:208"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:214"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:210,1"
      Dst: "[java.net.MulticastSocket].getLoopbackMode()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:212,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:215,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].getInterface()"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 189
    functionDepth: 1
    returnType: "java.net.InetAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.MulticastSocket].getInterface()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:181"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:187"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:183,1"
      Dst: "[java.net.MulticastSocket].getInterface()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:185,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:188,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].getNetworkInterface()"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 234
    functionLinenumberEnd: 243
    functionDepth: 1
    returnType: "java.net.NetworkInterface"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.MulticastSocket].getNetworkInterface()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:235"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:241"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:237,1"
      Dst: "[java.net.MulticastSocket].getNetworkInterface()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:239,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:242,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].getTimeToLive()"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 318
    functionLinenumberEnd: 327
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.MulticastSocket].getTimeToLive()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.DefaultDatagramChannelConfig:319"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.DefaultDatagramChannelConfig:325"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:321,1"
      Dst: "[java.net.MulticastSocket].getTimeToLive()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:323,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:326,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].getTrafficClass()"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 346
    functionLinenumberEnd: 350
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.DatagramSocket].getTrafficClass()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:347,1"
      Dst: "[java.net.DatagramSocket].getTrafficClass()"
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:349,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.DefaultDatagramChannelConfig].setMaxMessagesPerWrite(int)"
    functionSourceFile: "io.netty.channel.socket.DefaultDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 431
    functionLinenumberEnd: 434
    functionDepth: 2
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerWrite(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.DefaultDatagramChannelConfig:432,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerWrite(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$2].process()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$2"
    linkageType: ""
    functionLinenumber: 967
    functionLinenumberEnd: 970
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].removeFromActiveStreams(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams$2:968,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$ActiveStreams].removeFromActiveStreams(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream,java.util.Iterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.ResolvedAddressTypes].values()"
    functionSourceFile: "io.netty.resolver.ResolvedAddressTypes"
    linkageType: ""
    functionLinenumber: 20
    functionLinenumberEnd: 22
    functionDepth: 0
    returnType: "io.netty.resolver.ResolvedAddressTypes[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.ResolvedAddressTypes:21,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.ResolvedAddressTypes].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.resolver.ResolvedAddressTypes"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.resolver.ResolvedAddressTypes"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.ResolvedAddressTypes:21,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.ResolvedAddressTypes].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.resolver.ResolvedAddressTypes"
    linkageType: ""
    functionLinenumber: 20
    functionLinenumberEnd: 22
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.ResolvedAddressTypes:21,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    linkageType: ""
    functionLinenumber: 1401
    functionLinenumberEnd: 1403
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 70
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    linkageType: ""
    functionLinenumber: 1406
    functionLinenumberEnd: 1408
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 66
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].setValue(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1412,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].toString()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    linkageType: ""
    functionLinenumber: 1419
    functionLinenumberEnd: 1421
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.channel.ReflectiveChannelFactory].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[sun.security.x509.SerialNumber].toString()"
    - "[io.netty.util.Version].toString()"
    - "[javax.net.ssl.SSLEngineResult].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].toString()"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].toString()"
    - "[java.util.AbstractCollection].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[sun.security.x509.CertificateAlgorithmId].toString()"
    - "[io.netty.buffer.PoolSubpage].toString()"
    - "[java.net.InetSocketAddress].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[java.lang.ProcessBuilder$Redirect$3].toString()"
    - "[io.netty.util.Recycler$1].toString()"
    - "[sun.security.x509.PolicyConstraintsExtension].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].toString()"
    - "[java.nio.charset.Charset].toString()"
    - "[java.util.Properties].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].toString()"
    - "[sun.security.util.JarConstraintsParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].toString()"
    - "[java.lang.reflect.Constructor].toString()"
    - "[java.nio.DoubleBuffer].toString()"
    - "[io.netty.util.Signal].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Thread].toString()"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].toString()"
    - "[java.lang.Throwable].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$CompositePrinterParser].toString()"
    - "[io.netty.channel.embedded.EmbeddedSocketAddress].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].toString()"
    - "[java.util.regex.Matcher].toString()"
    - "[java.lang.reflect.Field].toString()"
    - "[java.lang.invoke.MethodHandles$Lookup].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.net.URL].toString()"
    - "[java.lang.invoke.LambdaForm$Name].toString()"
    - "[sun.security.x509.RDN].toString()"
    - "[java.util.concurrent.atomic.AtomicReference].toString()"
    - "[java.util.Currency].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].toString()"
    - "[io.netty.channel.kqueue.NativeLongArray].toString()"
    - "[io.netty.handler.proxy.ProxyConnectionEvent].toString()"
    - "[java.util.Formatter].toString()"
    - "[java.lang.ModuleLayer].toString()"
    - "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - "[io.netty.handler.ssl.SslCompletionEvent].toString()"
    - "[io.netty.bootstrap.BootstrapConfig].toString()"
    - "[java.lang.ProcessBuilder$Redirect$1].toString()"
    - "[io.netty.handler.codec.xml.XmlEntityReference].toString()"
    - "[java.net.Proxy].toString()"
    - "[sun.security.util.DerValue].toString()"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].toString()"
    - "[sun.security.x509.AlgorithmId].toString()"
    - "[java.text.AttributedCharacterIterator$Attribute].toString()"
    - "[java.lang.Runtime$Version].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$2].toString()"
    - "[java.lang.module.ModuleDescriptor$Exports].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].toString()"
    - "[io.netty.channel.kqueue.AcceptFilter].toString()"
    - "[sun.security.x509.SubjectKeyIdentifierExtension].toString()"
    - "[io.netty.buffer.DefaultByteBufHolder].toString()"
    - "[java.time.temporal.ChronoField].toString()"
    - "[java.security.PermissionCollection].toString()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].toString()"
    - "[java.util.concurrent.ConcurrentHashMap].toString()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].toString()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].toString()"
    - "[java.util.Vector].toString()"
    - "[io.netty.handler.codec.http.HttpVersion].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].toString()"
    - "[java.text.CalendarBuilder].toString()"
    - "[java.net.URLConnection].toString()"
    - "[java.util.EventObject].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].toString()"
    - "[io.netty.util.AbstractConstant].toString()"
    - "[sun.reflect.annotation.TypeAnnotation].toString()"
    - "[java.security.SecureRandom].toString()"
    - "[java.util.concurrent.atomic.AtomicLong].toString()"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].toString()"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].toString()"
    - "[sun.util.calendar.Era].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].toString()"
    - "[java.lang.module.ModuleDescriptor$Requires].toString()"
    - "[java.time.ZonedDateTime].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache].toString()"
    - "[java.math.MutableBigInteger].toString()"
    - "[java.lang.module.ModuleDescriptor$Provides].toString()"
    - "[java.net.InetSocketAddress$InetSocketAddressHolder].toString()"
    - "[sun.security.x509.GeneralNames].toString()"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].toString()"
    - "[sun.security.x509.Extension].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].toString()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].toString()"
    - "[io.netty.handler.ssl.util.LazyX509Certificate].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].toString()"
    - "[sun.security.x509.ExtendedKeyUsageExtension].toString()"
    - "[io.netty.buffer.WrappedByteBuf].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].toString()"
    - "[java.security.MessageDigest].toString()"
    - "[io.netty.handler.codec.dns.DnsOpCode].toString()"
    - "[java.io.ObjectOutputStream$DebugTraceInfoStack].toString()"
    - "[java.util.TreeMap$Entry].toString()"
    - "[java.time.zone.ZoneOffsetTransition].toString()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].toString()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].toString()"
    - "[java.lang.Integer].toString()"
    - "[java.lang.ProcessBuilder$Redirect$6].toString()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].toString()"
    - "[java.util.OptionalInt].toString()"
    - "[javax.naming.NamingException].toString()"
    - "[java.time.LocalDate].toString()"
    - "[java.util.ServiceLoader].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache].toString()"
    - "[java.net.InetAddress].toString()"
    - "[java.util.jar.Attributes$Name].toString()"
    - "[java.lang.Boolean].toString()"
    - "[io.netty.handler.codec.DefaultHeaders].toString()"
    - "[jaz.Zer].toString()"
    - "[io.netty.util.concurrent.DefaultPromise].toString()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].toString()"
    - "[io.netty.handler.ssl.PemX509Certificate].toString()"
    - "[sun.security.x509.UniqueIdentity].toString()"
    - "[java.security.CodeSigner].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].toString()"
    - "[sun.security.x509.CertificateX509Key].toString()"
    - "[java.nio.IntBuffer].toString()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].toString()"
    - "[java.util.concurrent.CountDownLatch].toString()"
    - "[io.netty.handler.codec.redis.IntegerRedisMessage].toString()"
    - "[java.nio.ByteOrder].toString()"
    - "[java.util.OptionalLong].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].toString()"
    - "[io.netty.handler.codec.xml.XmlElementEnd].toString()"
    - "[java.io.ObjectStreamClass].toString()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].toString()"
    - "[java.util.concurrent.atomic.LongAdder].toString()"
    - "[java.util.Optional].toString()"
    - "[java.net.URI].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].toString()"
    - "[java.nio.FloatBuffer].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuestion].toString()"
    - "[io.netty.handler.ssl.OpenSslSessionId].toString()"
    - "[io.netty.channel.group.DefaultChannelGroup].toString()"
    - "[sun.security.x509.AuthorityKeyIdentifierExtension].toString()"
    - "[sun.security.util.ObjectIdentifier].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].toString()"
    - "[java.util.concurrent.LinkedBlockingDeque].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].toString()"
    - "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].toString()"
    - "[java.time.format.DateTimePrintContext].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].toString()"
    - "[sun.nio.fs.UnixPath].toString()"
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].toString()"
    - "[java.lang.Class].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].toString()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].toString()"
    - "[java.util.BitSet].toString()"
    - "[java.lang.StackFrameInfo].toString()"
    - "[javax.xml.namespace.QName].toString()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].toString()"
    - "[sun.security.x509.CertificateExtensions].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].toString()"
    - "[sun.security.x509.BasicConstraintsExtension].toString()"
    - "[java.util.concurrent.atomic.AtomicReferenceArray].toString()"
    - "[java.lang.invoke.Invokers].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].toString()"
    - "[java.time.LocalDateTime].toString()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].toString()"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[java.time.format.DateTimeFormatter].toString()"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].toString()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].toString()"
    - "[sun.security.x509.CertificateIssuerName].toString()"
    - "[java.lang.invoke.SerializedLambda].toString()"
    - "[sun.util.locale.LocaleExtensions].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].toString()"
    - "[sun.security.x509.NameConstraintsExtension].toString()"
    - "[java.net.NetworkInterface].toString()"
    - "[java.util.StringJoiner].toString()"
    - "[java.util.AbstractMap].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].toString()"
    - "[java.time.LocalTime].toString()"
    - "[java.security.ProtectionDomain].toString()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock].toString()"
    - "[io.netty.handler.codec.EmptyHeaders].toString()"
    - "[java.time.temporal.ValueRange].toString()"
    - "[java.time.Instant].toString()"
    - "[java.security.PrivilegedActionException].toString()"
    - "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].toString()"
    - "[sun.util.calendar.CalendarDate].toString()"
    - "[java.lang.module.Configuration].toString()"
    - "[java.security.AlgorithmParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].toString()"
    - "[java.lang.ThreadGroup].toString()"
    - "[io.netty.buffer.AbstractByteBufAllocator].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].toString()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].toString()"
    - "[java.nio.file.attribute.FileTime].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].toString()"
    - "[io.netty.handler.codec.xml.XmlNamespace].toString()"
    - "[io.netty.channel.unix.FileDescriptor].toString()"
    - "[java.lang.Double].toString()"
    - "[java.util.OptionalDouble].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].toString()"
    - "[io.netty.bootstrap.AbstractBootstrap].toString()"
    - "[io.netty.channel.WriteBufferWaterMark].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].toString()"
    - "[java.math.BigInteger].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].toString()"
    - "[java.time.format.Parsed].toString()"
    - "[java.time.OffsetDateTime].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString()"
    - "[java.time.OffsetTime].toString()"
    - "[java.util.WeakHashMap$Entry].toString()"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].toString()"
    - "[sun.security.x509.X509CertImpl].toString()"
    - "[java.time.ZoneOffset].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribePayload].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].toString()"
    - "[java.lang.reflect.Method].toString()"
    - "[io.netty.handler.codec.http2.Http2Flags].toString()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].toString()"
    - "[io.netty.buffer.CompositeByteBuf].toString()"
    - "[java.lang.Enum].toString()"
    - "[io.netty.handler.codec.http2.HpackHeaderField].toString()"
    - "[java.net.ServerSocket].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[java.time.zone.ZoneRules].toString()"
    - "[java.security.spec.PSSParameterSpec].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent].toString()"
    - "[sun.security.x509.X500Name].toString()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].toString()"
    - "[io.netty.channel.embedded.EmbeddedChannelId].toString()"
    - "[java.util.concurrent.locks.AbstractQueuedSynchronizer].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.util.regex.Pattern].toString()"
    - "[java.util.concurrent.atomic.AtomicLongArray].toString()"
    - "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].toString()"
    - "[sun.util.locale.Extension].toString()"
    - "[io.netty.handler.codec.smtp.SmtpCommand].toString()"
    - "[java.util.concurrent.ForkJoinPool].toString()"
    - "[sun.security.x509.CertificateVersion].toString()"
    - "[java.lang.ProcessHandleImpl].toString()"
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].toString()"
    - "[java.util.LongSummaryStatistics].toString()"
    - "[java.io.ObjectStreamField].toString()"
    - "[java.lang.ProcessImpl].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[io.netty.resolver.dns.InflightNameResolver].toString()"
    - "[java.nio.charset.CodingErrorAction].toString()"
    - "[java.lang.Float].toString()"
    - "[java.time.format.DecimalStyle].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].toString()"
    - "[sun.security.x509.IssuerAlternativeNameExtension].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[java.io.File].toString()"
    - "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].toString()"
    - "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].toString()"
    - "[java.util.Calendar].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].toString()"
    - "[java.nio.ByteBuffer].toString()"
    - "[io.netty.buffer.EmptyByteBuf].toString()"
    - "[io.netty.buffer.AbstractByteBuf].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock].toString()"
    - "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].toString()"
    - "[java.lang.Package].toString()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].toString()"
    - "[java.text.ParsePosition].toString()"
    - "[sun.util.locale.BaseLocale].toString()"
    - "[sun.reflect.annotation.AnnotationType].toString()"
    - "[java.lang.Character$Subset].toString()"
    - "[sun.security.util.LazyCodeSourcePermissionCollection].toString()"
    - "[java.lang.Object].toString()"
    - "[io.netty.handler.codec.xml.XmlElement].toString()"
    - "[java.lang.Character].toString()"
    - "[sun.net.www.MessageHeader].toString()"
    - "[java.lang.invoke.MethodType].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].toString()"
    - "[io.netty.handler.codec.http.QueryStringEncoder].toString()"
    - "[java.net.InterfaceAddress].toString()"
    - "[java.time.zone.ZoneOffsetTransitionRule].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].toString()"
    - "[io.netty.handler.codec.dns.DnsRecordType].toString()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].toString()"
    - "[java.lang.StackTraceElement].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toString()"
    - "[java.lang.ProcessBuilder$Redirect$4].toString()"
    - "[java.lang.invoke.LambdaForm].toString()"
    - "[io.netty.handler.codec.dns.DnsResponseCode].toString()"
    - "[io.netty.util.collection.LongObjectHashMap].toString()"
    - "[javax.naming.directory.ModificationItem].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].toString()"
    - "[sun.security.x509.PolicyMappingsExtension].toString()"
    - "[sun.security.x509.CertificatePoliciesExtension].toString()"
    - "[java.security.CodeSource].toString()"
    - "[java.security.Permission].toString()"
    - "[java.security.Timestamp].toString()"
    - "[io.netty.buffer.PoolArena].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].toString()"
    - "[java.nio.charset.CoderResult].toString()"
    - "[io.netty.channel.unix.PeerCredentials].toString()"
    - "[java.security.SecureRandomSpi].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[javax.security.auth.Subject].toString()"
    - "[javax.crypto.CryptoPermission].toString()"
    - "[java.util.Locale].toString()"
    - "[java.time.chrono.AbstractChronology].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsPtrRecord].toString()"
    - "[java.util.concurrent.locks.ReentrantLock].toString()"
    - "[java.lang.module.ResolvedModule].toString()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].toString()"
    - "[io.netty.handler.codec.http.HttpMethod].toString()"
    - "[java.lang.invoke.MemberName].toString()"
    - "[sun.security.x509.PrivateKeyUsageExtension].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].toString()"
    - "[io.netty.handler.traffic.TrafficCounter].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].toString()"
    - "[java.io.ByteArrayOutputStream].toString()"
    - "[sun.security.x509.CertificateValidity].toString()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].toString()"
    - "[java.time.Duration].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[sun.security.x509.X509CertInfo].toString()"
    - "[sun.security.x509.AVA].toString()"
    - "[java.lang.module.ModuleDescriptor$Opens].toString()"
    - "[java.math.BigDecimal].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].toString()"
    - "[java.lang.invoke.MethodHandleImpl$LoopClauses].toString()"
    - "[sun.security.x509.CertificateSerialNumber].toString()"
    - "[sun.nio.fs.UnixFileStore].toString()"
    - "[java.net.Socket].toString()"
    - "[javax.net.ssl.SNIHostName].toString()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].toString()"
    - "[java.util.Hashtable$Entry].toString()"
    - "[java.security.Signature].toString()"
    - "[java.lang.Short].toString()"
    - "[java.util.concurrent.CompletableFuture].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsOptPseudoRrRecord].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses].toString()"
    - "[java.util.concurrent.ThreadPoolExecutor].toString()"
    - "[java.util.concurrent.LinkedBlockingQueue].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].toString()"
    - "[java.time.ZoneId].toString()"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].toString()"
    - "[java.net.SocketImpl].toString()"
    - "[sun.security.x509.KeyIdentifier].toString()"
    - "[java.util.Hashtable].toString()"
    - "[sun.security.x509.GeneralSubtrees].toString()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].toString()"
    - "[java.text.FieldPosition].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent].toString()"
    - "[io.netty.util.DomainNameMapping].toString()"
    - "[sun.security.x509.AuthorityInfoAccessExtension].toString()"
    - "[java.util.concurrent.CopyOnWriteArrayList].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].toString()"
    - "[io.netty.buffer.PoolChunkList].toString()"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].toString()"
    - "[io.netty.buffer.PoolChunk].toString()"
    - "[io.netty.resolver.dns.DefaultDnsServerAddresses].toString()"
    - "[io.netty.util.internal.EmptyPriorityQueue].toString()"
    - "[io.netty.channel.unix.DomainSocketAddress].toString()"
    - "[javax.net.ssl.SNIServerName].toString()"
    - "[java.lang.ProcessBuilder$RedirectPipeImpl].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckPayload].toString()"
    - "[java.io.StringWriter].toString()"
    - "[io.netty.handler.codec.xml.XmlAttribute].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].toString()"
    - "[java.util.zip.ZipEntry].toString()"
    - "[java.util.UUID].toString()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].toString()"
    - "[java.security.Provider].toString()"
    - "[java.time.Period].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].toString()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].toString()"
    - "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].toString()"
    - "[java.lang.reflect.Parameter].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].toString()"
    - "[sun.security.x509.CertificateSubjectName].toString()"
    - "[io.netty.channel.DefaultChannelId].toString()"
    - "[java.util.Date].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame].toString()"
    - "[java.util.IntSummaryStatistics].toString()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[sun.security.x509.CRLDistributionPointsExtension].toString()"
    - "[io.netty.channel.DefaultAddressedEnvelope].toString()"
    - "[io.netty.channel.local.LocalAddress].toString()"
    - "[io.netty.util.collection.CharObjectHashMap].toString()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[io.netty.handler.codec.xml.XmlElementStart].toString()"
    - "[io.netty.handler.codec.DecoderResult].toString()"
    - "[io.netty.handler.ssl.SniCompletionEvent].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[io.netty.util.collection.ByteObjectHashMap].toString()"
    - "[java.util.AbstractMap$SimpleEntry].toString()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].toString()"
    - "[io.netty.util.collection.ShortObjectHashMap].toString()"
    - "[java.time.format.DateTimeParseContext].toString()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].toString()"
    - "[java.math.MathContext].toString()"
    - "[io.netty.handler.codec.http.QueryStringDecoder].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$NumberPrinterParser].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$1].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].toString()"
    - "[java.nio.LongBuffer].toString()"
    - "[java.util.DoubleSummaryStatistics].toString()"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].toString()"
    - "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].toString()"
    - "[java.lang.Long].toString()"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].toString()"
    - "[java.security.Provider$Service].toString()"
    - "[io.netty.channel.sctp.SctpMessage].toString()"
    - "[io.netty.util.collection.IntObjectHashMap].toString()"
    - "[io.netty.handler.codec.xml.XmlContent].toString()"
    - "[io.netty.handler.codec.http.HttpHeaders].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].toString()"
    - "[java.lang.invoke.MethodHandle].toString()"
    - "[java.lang.invoke.MethodTypeForm].toString()"
    - "[java.util.HashMap$Node].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].toString()"
    - "[java.lang.ProcessBuilder$Redirect$2].toString()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].toString()"
    - "[java.time.temporal.ChronoUnit].toString()"
    - "[io.netty.buffer.FixedCompositeByteBuf].toString()"
    - "[java.nio.channels.FileChannel$MapMode].toString()"
    - "[sun.security.x509.SubjectAlternativeNameExtension].toString()"
    - "[io.netty.channel.DefaultChannelPipeline].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].toString()"
    - "[java.nio.ShortBuffer].toString()"
    - "[io.netty.handler.codec.string.LineSeparator].toString()"
    - "[java.util.ResourceBundle$CacheKey].toString()"
    - "[io.netty.buffer.SwappedByteBuf].toString()"
    - "[java.security.cert.CertPath].toString()"
    - "[io.netty.channel.unix.Socket].toString()"
    - "[java.lang.module.ModuleDescriptor].toString()"
    - "[sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo].toString()"
    - "[java.lang.module.ModuleDescriptor$Version].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].toString()"
    - "[java.net.HttpCookie].toString()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].toString()"
    - "[sun.util.calendar.JulianCalendar$Date].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].toString()"
    - "[java.lang.ProcessBuilder$Redirect$5].toString()"
    - "[io.netty.channel.AbstractChannel].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].toString()"
    - "[sun.security.x509.GeneralSubtree].toString()"
    - "[sun.security.x509.GeneralName].toString()"
    - "[java.lang.Byte].toString()"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams].toString()"
    - "[io.netty.handler.codec.xml.XmlDTD].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].toString()"
    - "[io.netty.bootstrap.ServerBootstrapConfig].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandType].toString()"
    - "[java.lang.Module].toString()"
    - "[sun.security.util.BitArray].toString()"
    - "[io.netty.channel.AbstractChannelHandlerContext].toString()"
    - "[java.nio.channels.FileLock].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].toString()"
    - "[io.netty.handler.codec.http.HttpScheme].toString()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].toString()"
    - "[javax.security.auth.x500.X500Principal].toString()"
    - "[java.util.logging.Level].toString()"
    functionUses: 20
    ICount: 12
    EdgeCount: 1057
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1420,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1420,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1420,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1420,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1420,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    linkageType: ""
    functionLinenumber: 1424
    functionLinenumberEnd: 1431
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].equals(java.lang.Object)"
    - "[sun.security.util.DerValue].equals(java.lang.Object)"
    - "[java.util.BitSet].equals(java.lang.Object)"
    - "[java.util.OptionalInt].equals(java.lang.Object)"
    - "[java.time.ZoneId].equals(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Type].equals(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].equals(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].equals(java.lang.Object)"
    - "[io.netty.channel.kqueue.AcceptFilter].equals(java.lang.Object)"
    - "[io.netty.channel.AbstractChannel].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$RecipeElement].equals(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandType].equals(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].equals(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].equals(java.lang.Object)"
    - "[java.security.CodeSigner].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlAttribute].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].equals(java.lang.Object)"
    - "[java.lang.Integer].equals(java.lang.Object)"
    - "[java.util.Hashtable$Entry].equals(java.lang.Object)"
    - "[io.netty.channel.unix.DomainSocketAddress].equals(java.lang.Object)"
    - "[javax.net.ssl.SNIServerName].equals(java.lang.Object)"
    - "[java.security.BasicPermission].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Opens].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].equals(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].equals(java.lang.Object)"
    - "[java.util.AbstractMap].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].equals(java.lang.Object)"
    - "[java.time.chrono.AbstractChronology].equals(java.lang.Object)"
    - "[java.util.zip.ZipFile$Source$Key].equals(java.lang.Object)"
    - "[java.util.Locale].equals(java.lang.Object)"
    - "[java.util.AbstractSet].equals(java.lang.Object)"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].equals(java.lang.Object)"
    - "[java.time.ZoneOffset].equals(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].equals(java.lang.Object)"
    - "[java.nio.CharBuffer].equals(java.lang.Object)"
    - "[io.netty.buffer.AbstractByteBuf].equals(java.lang.Object)"
    - "[java.lang.Enum].equals(java.lang.Object)"
    - "[sun.security.x509.GeneralNames].equals(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].equals(java.lang.Object)"
    - "[java.text.ParsePosition].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleReferenceImpl].equals(java.lang.Object)"
    - "[java.util.ArrayList].equals(java.lang.Object)"
    - "[sun.util.locale.BaseLocale$Key].equals(java.lang.Object)"
    - "[io.netty.channel.local.LocalAddress].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor].equals(java.lang.Object)"
    - "[java.util.Date].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].equals(java.lang.Object)"
    - "[java.nio.charset.Charset].equals(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].equals(java.lang.Object)"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].equals(java.lang.Object)"
    - "[sun.util.locale.LocaleExtensions].equals(java.lang.Object)"
    - "[java.net.SocketPermission].equals(java.lang.Object)"
    - "[java.math.BigDecimal].equals(java.lang.Object)"
    - "[java.lang.reflect.Field].equals(java.lang.Object)"
    - "[javax.security.auth.x500.X500Principal].equals(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DnsOpCode].equals(java.lang.Object)"
    - "[java.net.InterfaceAddress].equals(java.lang.Object)"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams].equals(java.lang.Object)"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].equals(java.lang.Object)"
    - "[java.lang.Character$Subset].equals(java.lang.Object)"
    - "[java.time.Period].equals(java.lang.Object)"
    - "[java.time.ZonedDateTime].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2Flags].equals(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders].equals(java.lang.Object)"
    - "[java.util.UUID].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].equals(java.lang.Object)"
    - "[java.lang.invoke.MemberName].equals(java.lang.Object)"
    - "[io.netty.util.Signal].equals(java.lang.Object)"
    - "[java.util.GregorianCalendar].equals(java.lang.Object)"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].equals(java.lang.Object)"
    - "[java.net.NetworkInterface].equals(java.lang.Object)"
    - "[io.netty.util.ResourceLeakException].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].equals(java.lang.Object)"
    - "[java.io.FilePermission].equals(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].equals(java.lang.Object)"
    - "[java.util.OptionalDouble].equals(java.lang.Object)"
    - "[java.time.temporal.ValueRange].equals(java.lang.Object)"
    - "[java.util.jar.Attributes$Name].equals(java.lang.Object)"
    - "[sun.security.util.DerInputBuffer].equals(java.lang.Object)"
    - "[javax.xml.namespace.QName].equals(java.lang.Object)"
    - "[javax.crypto.spec.SecretKeySpec].equals(java.lang.Object)"
    - "[java.net.Proxy].equals(java.lang.Object)"
    - "[java.net.Inet4Address].equals(java.lang.Object)"
    - "[java.text.DecimalFormatSymbols].equals(java.lang.Object)"
    - "[java.nio.DoubleBuffer].equals(java.lang.Object)"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].equals(java.lang.Object)"
    - "[java.time.LocalTime].equals(java.lang.Object)"
    - "[io.netty.handler.ssl.PemX509Certificate].equals(java.lang.Object)"
    - "[sun.util.calendar.Era].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].equals(java.lang.Object)"
    - "[java.security.AccessControlContext].equals(java.lang.Object)"
    - "[java.time.Instant].equals(java.lang.Object)"
    - "[java.text.Collator].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].equals(java.lang.Object)"
    - "[io.netty.channel.sctp.SctpMessage].equals(java.lang.Object)"
    - "[java.net.URL].equals(java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].equals(java.lang.Object)"
    - "[java.util.HashMap$Node].equals(java.lang.Object)"
    - "[java.net.InetSocketAddress$InetSocketAddressHolder].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm].equals(java.lang.Object)"
    - "[java.util.PropertyPermission].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm$NamedFunction].equals(java.lang.Object)"
    - "[java.util.Properties].equals(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].equals(java.lang.Object)"
    - "[java.time.zone.ZoneOffsetTransitionRule].equals(java.lang.Object)"
    - "[java.net.InetSocketAddress].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$Node].equals(java.lang.Object)"
    - "[sun.util.calendar.CalendarDate].equals(java.lang.Object)"
    - "[java.math.MathContext].equals(java.lang.Object)"
    - "[java.lang.invoke.MethodType].equals(java.lang.Object)"
    - "[javax.net.ssl.SNIHostName].equals(java.lang.Object)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].equals(java.lang.Object)"
    - "[java.util.logging.Level].equals(java.lang.Object)"
    - "[java.lang.ProcessHandleImpl].equals(java.lang.Object)"
    - "[java.lang.Double].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMethod].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlContent].equals(java.lang.Object)"
    - "[java.util.IdentityHashMap].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$Recipe].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlElementStart].equals(java.lang.Object)"
    - "[jdk.internal.org.objectweb.asm.Handle].equals(java.lang.Object)"
    - "[java.util.WeakHashMap$Entry].equals(java.lang.Object)"
    - "[java.util.OptionalLong].equals(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].equals(java.lang.Object)"
    - "[io.netty.util.AsciiString].equals(java.lang.Object)"
    - "[java.util.jar.Manifest].equals(java.lang.Object)"
    - "[java.math.BigInteger].equals(java.lang.Object)"
    - "[java.security.CodeSource].equals(java.lang.Object)"
    - "[java.lang.Float].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].equals(java.lang.Object)"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaForm$Name].equals(java.lang.Object)"
    - "[java.security.Provider$ServiceKey].equals(java.lang.Object)"
    - "[java.text.FieldPosition].equals(java.lang.Object)"
    - "[java.lang.reflect.Method].equals(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Version].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].equals(java.lang.Object)"
    - "[java.text.DateFormatSymbols].equals(java.lang.Object)"
    - "[sun.nio.fs.UnixPath].equals(java.lang.Object)"
    - "[java.lang.Short].equals(java.lang.Object)"
    - "[sun.security.x509.AlgorithmId].equals(java.lang.Object)"
    - "[java.nio.ShortBuffer].equals(java.lang.Object)"
    - "[sun.security.x509.KeyIdentifier].equals(java.lang.Object)"
    - "[jdk.internal.jimage.ImageReader$Node].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].equals(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].equals(java.lang.Object)"
    - "[java.security.Timestamp].equals(java.lang.Object)"
    - "[java.lang.ProcessBuilder$Redirect].equals(java.lang.Object)"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Provides].equals(java.lang.Object)"
    - "[java.util.Calendar].equals(java.lang.Object)"
    - "[java.net.URI].equals(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].equals(java.lang.Object)"
    - "[java.util.Hashtable].equals(java.lang.Object)"
    - "[java.text.MessageFormat].equals(java.lang.Object)"
    - "[javax.crypto.CryptoPermission].equals(java.lang.Object)"
    - "[java.util.AbstractMap$SimpleImmutableEntry].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpVersion].equals(java.lang.Object)"
    - "[sun.security.x509.GeneralName].equals(java.lang.Object)"
    - "[java.lang.Character].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlEntityReference].equals(java.lang.Object)"
    - "[io.netty.util.AbstractConstant].equals(java.lang.Object)"
    - "[java.lang.Byte].equals(java.lang.Object)"
    - "[java.net.Inet6Address$Inet6AddressHolder].equals(java.lang.Object)"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].equals(java.lang.Object)"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].equals(java.lang.Object)"
    - "[sun.security.util.BitArray].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlDTD].equals(java.lang.Object)"
    - "[io.netty.channel.embedded.EmbeddedChannelId].equals(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].equals(java.lang.Object)"
    - "[sun.security.x509.X500Name].equals(java.lang.Object)"
    - "[java.lang.reflect.Constructor].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].equals(java.lang.Object)"
    - "[io.netty.handler.codec.EmptyHeaders].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlNamespace].equals(java.lang.Object)"
    - "[jaz.Zer].equals(java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttProperties$MqttProperty].equals(java.lang.Object)"
    - "[sun.nio.fs.UnixFileStore].equals(java.lang.Object)"
    - "[sun.security.x509.GeneralSubtree].equals(java.lang.Object)"
    - "[java.time.OffsetDateTime].equals(java.lang.Object)"
    - "[java.util.Optional].equals(java.lang.Object)"
    - "[java.util.logging.LogManager$CloseOnReset].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].equals(java.lang.Object)"
    - "[java.util.jar.Attributes].equals(java.lang.Object)"
    - "[java.lang.invoke.LambdaFormEditor$Transform].equals(java.lang.Object)"
    - "[io.netty.handler.codec.smtp.SmtpCommand].equals(java.lang.Object)"
    - "[java.util.ResourceBundle$CacheKey].equals(java.lang.Object)"
    - "[java.util.AbstractList].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].equals(java.lang.Object)"
    - "[java.security.AllPermission].equals(java.lang.Object)"
    - "[io.netty.handler.codec.string.LineSeparator].equals(java.lang.Object)"
    - "[java.text.NumberFormat].equals(java.lang.Object)"
    - "[sun.security.util.ObjectIdentifier].equals(java.lang.Object)"
    - "[sun.util.locale.BaseLocale].equals(java.lang.Object)"
    - "[java.time.zone.ZoneRules].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].equals(java.lang.Object)"
    - "[io.netty.handler.codec.xml.XmlElement].equals(java.lang.Object)"
    - "[java.time.OffsetTime].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].equals(java.lang.Object)"
    - "[java.lang.module.ResolvedModule].equals(java.lang.Object)"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].equals(java.lang.Object)"
    - "[sun.security.x509.AVA].equals(java.lang.Object)"
    - "[java.lang.Runtime$Version].equals(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].equals(java.lang.Object)"
    - "[java.net.HttpCookie].equals(java.lang.Object)"
    - "[java.time.format.DecimalStyle].equals(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].equals(java.lang.Object)"
    - "[java.lang.Thread$WeakClassKey].equals(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DnsResponseCode].equals(java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringPair].equals(java.lang.Object)"
    - "[java.lang.reflect.Parameter].equals(java.lang.Object)"
    - "[javax.security.cert.Certificate].equals(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].equals(java.lang.Object)"
    - "[java.util.AbstractMap$SimpleEntry].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].equals(java.lang.Object)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[jdk.internal.misc.Signal].equals(java.lang.Object)"
    - "[java.security.cert.CertPath].equals(java.lang.Object)"
    - "[java.net.InetAddress].equals(java.lang.Object)"
    - "[java.io.File].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpScheme].equals(java.lang.Object)"
    - "[java.util.Vector].equals(java.lang.Object)"
    - "[java.lang.invoke.StringConcatFactory$Key].equals(java.lang.Object)"
    - "[io.netty.buffer.DefaultByteBufHolder].equals(java.lang.Object)"
    - "[io.netty.util.ThreadDeathWatcher$Entry].equals(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslSessionId].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Exports].equals(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].equals(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].equals(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].equals(java.lang.Object)"
    - "[java.time.LocalDateTime].equals(java.lang.Object)"
    - "[java.security.cert.Certificate].equals(java.lang.Object)"
    - "[sun.security.x509.GeneralSubtrees].equals(java.lang.Object)"
    - "[java.time.Duration].equals(java.lang.Object)"
    - "[java.lang.StackTraceElement].equals(java.lang.Object)"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].equals(java.lang.Object)"
    - "[java.time.zone.ZoneOffsetTransition].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpObject].equals(java.lang.Object)"
    - "[java.util.TreeMap$Entry].equals(java.lang.Object)"
    - "[java.text.SimpleDateFormat].equals(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelId].equals(java.lang.Object)"
    - "[java.net.Inet6Address].equals(java.lang.Object)"
    - "[sun.security.x509.CertificateExtensions].equals(java.lang.Object)"
    - "[javax.security.auth.Subject].equals(java.lang.Object)"
    - "[java.lang.Long].equals(java.lang.Object)"
    - "[java.lang.module.ModuleDescriptor$Requires].equals(java.lang.Object)"
    - "[sun.security.x509.Extension].equals(java.lang.Object)"
    - "[io.netty.channel.unix.FileDescriptor].equals(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].equals(java.lang.Object)"
    - "[java.nio.file.attribute.FileTime].equals(java.lang.Object)"
    - "[jdk.internal.module.ModuleHashes].equals(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].equals(java.lang.Object)"
    - "[sun.nio.ch.FileKey].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].equals(java.lang.Object)"
    - "[java.nio.LongBuffer].equals(java.lang.Object)"
    - "[java.text.AttributedCharacterIterator$Attribute].equals(java.lang.Object)"
    - "[sun.security.x509.X509CertInfo].equals(java.lang.Object)"
    - "[java.nio.IntBuffer].equals(java.lang.Object)"
    - "[java.nio.ByteBuffer].equals(java.lang.Object)"
    - "[java.time.Clock].equals(java.lang.Object)"
    - "[java.time.LocalDate].equals(java.lang.Object)"
    - "[java.nio.FloatBuffer].equals(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].equals(java.lang.Object)"
    - "[io.netty.handler.codec.dns.DnsRecordType].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].equals(java.lang.Object)"
    - "[sun.security.x509.RDN].equals(java.lang.Object)"
    - "[java.text.DateFormat].equals(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    - "[java.util.AbstractMap$SimpleEntry].getKey()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    functionUses: 9
    ICount: 28
    EdgeCount: 646
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1425"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1428"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1427"
        BranchSideFuncs:
        - "getKey()"
    - Branch String: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1429"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1428"
        BranchSideFuncs:
        - "getValue()"
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1427"
        BranchSideFuncs:
        - "getKey()"
    - Branch String: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1429"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:-1"
        BranchSideFuncs:
        - "getValue()"
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1429"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:-1"
        BranchSideFuncs:
        - "getValue()"
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1430"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1429"
        BranchSideFuncs:
        - "getValue()"
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1430"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1430"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1429,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1429,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1429,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1430,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1430,1"
      Dst: "[java.util.Map$Entry].getValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].hashCode()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$HeaderEntry"
    linkageType: ""
    functionLinenumber: 1434
    functionLinenumberEnd: 1436
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].hashCode()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].hashCode()"
    - "[io.netty.handler.codec.http.HttpScheme].hashCode()"
    - "[java.time.Instant].hashCode()"
    - "[java.text.MessageFormat].hashCode()"
    - "[io.netty.handler.codec.xml.XmlElement].hashCode()"
    - "[io.netty.util.concurrent.PromiseTask].hashCode()"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].hashCode()"
    - "[io.netty.channel.sctp.SctpMessage].hashCode()"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].hashCode()"
    - "[java.util.HashMap$Node].hashCode()"
    - "[sun.security.util.ObjectIdentifier].hashCode()"
    - "[java.util.jar.Manifest].hashCode()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].hashCode()"
    - "[java.security.CodeSource].hashCode()"
    - "[java.security.AccessControlContext].hashCode()"
    - "[javax.security.cert.Certificate].hashCode()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hashCode()"
    - "[sun.security.x509.KeyIdentifier].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].hashCode()"
    - "[jdk.internal.module.IllegalAccessLogger$Usage].hashCode()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].hashCode()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].hashCode()"
    - "[java.time.OffsetDateTime].hashCode()"
    - "[java.nio.ShortBuffer].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Opens].hashCode()"
    - "[sun.security.x509.Extension].hashCode()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hashCode()"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].hashCode()"
    - "[java.lang.Float].hashCode()"
    - "[io.netty.handler.codec.http.DefaultHttpObject].hashCode()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].hashCode()"
    - "[io.netty.handler.codec.dns.DnsRecordType].hashCode()"
    - "[javax.security.auth.Subject].hashCode()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].hashCode()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].hashCode()"
    - "[sun.nio.ch.FileKey].hashCode()"
    - "[java.lang.StackTraceElement].hashCode()"
    - "[java.lang.Boolean].hashCode()"
    - "[java.net.InetSocketAddress].hashCode()"
    - "[java.time.LocalDateTime].hashCode()"
    - "[io.netty.channel.AbstractChannel].hashCode()"
    - "[java.util.AbstractMap$SimpleEntry].hashCode()"
    - "[java.util.AbstractSet].hashCode()"
    - "[java.nio.ByteBuffer].hashCode()"
    - "[java.lang.invoke.LambdaForm$Name].hashCode()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].hashCode()"
    - "[java.time.format.DecimalStyle].hashCode()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].hashCode()"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams].hashCode()"
    - "[java.util.concurrent.CopyOnWriteArrayList].hashCode()"
    - "[sun.util.calendar.Era].hashCode()"
    - "[io.netty.buffer.AbstractByteBuf].hashCode()"
    - "[java.time.zone.ZoneOffsetTransition].hashCode()"
    - "[io.netty.util.ResourceLeakException].hashCode()"
    - "[java.lang.invoke.LambdaForm].hashCode()"
    - "[io.netty.handler.ssl.OpenSslSessionId].hashCode()"
    - "[java.net.InterfaceAddress].hashCode()"
    - "[io.netty.channel.kqueue.AcceptFilter].hashCode()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].hashCode()"
    - "[javax.xml.namespace.QName].hashCode()"
    - "[io.netty.handler.codec.dns.AbstractDnsMessage].hashCode()"
    - "[java.util.AbstractMap].hashCode()"
    - "[javax.crypto.CryptoPermission].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Version].hashCode()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].hashCode()"
    - "[java.text.FieldPosition].hashCode()"
    - "[java.lang.module.ModuleDescriptor].hashCode()"
    - "[java.lang.Double].hashCode()"
    - "[java.lang.invoke.StringConcatFactory$Key].hashCode()"
    - "[java.util.TreeMap$Entry].hashCode()"
    - "[java.net.URL].hashCode()"
    - "[java.text.NumberFormat].hashCode()"
    - "[jdk.internal.org.objectweb.asm.Type].hashCode()"
    - "[sun.security.util.DerValue].hashCode()"
    - "[sun.security.x509.GeneralSubtrees].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].hashCode()"
    - "[io.netty.handler.codec.string.LineSeparator].hashCode()"
    - "[sun.security.x509.GeneralNames].hashCode()"
    - "[java.util.OptionalDouble].hashCode()"
    - "[io.netty.util.Signal].hashCode()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].hashCode()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].hashCode()"
    - "[io.netty.buffer.SwappedByteBuf].hashCode()"
    - "[java.lang.Byte].hashCode()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].hashCode()"
    - "[io.netty.util.internal.EmptyPriorityQueue].hashCode()"
    - "[java.text.SimpleDateFormat].hashCode()"
    - "[java.util.jar.Attributes$Name].hashCode()"
    - "[java.util.UUID].hashCode()"
    - "[java.security.Timestamp].hashCode()"
    - "[sun.util.locale.BaseLocale].hashCode()"
    - "[java.nio.LongBuffer].hashCode()"
    - "[java.math.MathContext].hashCode()"
    - "[io.netty.channel.group.DefaultChannelGroup].hashCode()"
    - "[jdk.internal.module.ModuleReferenceImpl].hashCode()"
    - "[java.lang.invoke.MemberName].hashCode()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].hashCode()"
    - "[java.text.DateFormat].hashCode()"
    - "[io.netty.util.collection.ShortObjectHashMap].hashCode()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].hashCode()"
    - "[java.nio.CharBuffer].hashCode()"
    - "[java.lang.invoke.MethodType].hashCode()"
    - "[java.util.Hashtable$Entry].hashCode()"
    - "[java.nio.DoubleBuffer].hashCode()"
    - "[java.util.zip.ZipEntry].hashCode()"
    - "[io.netty.handler.codec.http.HttpMethod].hashCode()"
    - "[sun.util.locale.BaseLocale$Key].hashCode()"
    - "[io.netty.resolver.dns.DnsNameResolver$AddressedEnvelopeAdapter].hashCode()"
    - "[sun.security.x509.GeneralName].hashCode()"
    - "[sun.security.x509.X509CertInfo].hashCode()"
    - "[java.lang.Enum].hashCode()"
    - "[java.text.AttributedCharacterIterator$Attribute].hashCode()"
    - "[sun.nio.fs.UnixPath].hashCode()"
    - "[java.util.WeakHashMap$Entry].hashCode()"
    - "[java.security.cert.CertPath].hashCode()"
    - "[sun.security.x509.RDN].hashCode()"
    - "[java.lang.Object].hashCode()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].hashCode()"
    - "[javax.net.ssl.SNIHostName].hashCode()"
    - "[java.lang.invoke.StringConcatFactory$Recipe].hashCode()"
    - "[io.netty.channel.embedded.EmbeddedChannelId].hashCode()"
    - "[java.net.Proxy].hashCode()"
    - "[java.nio.file.attribute.FileTime].hashCode()"
    - "[java.nio.IntBuffer].hashCode()"
    - "[io.netty.util.ThreadDeathWatcher$Entry].hashCode()"
    - "[java.lang.Short].hashCode()"
    - "[java.util.OptionalInt].hashCode()"
    - "[sun.security.x509.AlgorithmId].hashCode()"
    - "[javax.net.ssl.SNIServerName].hashCode()"
    - "[io.netty.handler.codec.xml.XmlDTD].hashCode()"
    - "[jdk.internal.misc.Signal].hashCode()"
    - "[io.netty.handler.codec.dns.DnsOpCode].hashCode()"
    - "[sun.security.util.BitArray].hashCode()"
    - "[java.util.zip.ZipFile$Source$Key].hashCode()"
    - "[java.time.temporal.ValueRange].hashCode()"
    - "[io.netty.handler.codec.DefaultHeaders].hashCode()"
    - "[sun.nio.fs.UnixFileStore].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].hashCode()"
    - "[javax.crypto.spec.SecretKeySpec].hashCode()"
    - "[java.text.ParsePosition].hashCode()"
    - "[java.time.zone.ZoneRules].hashCode()"
    - "[java.util.logging.Level].hashCode()"
    - "[sun.util.calendar.CalendarDate].hashCode()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].hashCode()"
    - "[java.lang.Runtime$Version].hashCode()"
    - "[java.net.HttpCookie].hashCode()"
    - "[java.util.Hashtable].hashCode()"
    - "[io.netty.util.collection.IntObjectHashMap].hashCode()"
    - "[io.netty.handler.codec.xml.XmlNamespace].hashCode()"
    - "[io.netty.handler.codec.http2.Http2Flags].hashCode()"
    - "[java.lang.reflect.Parameter].hashCode()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].hashCode()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].hashCode()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].hashCode()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].hashCode()"
    - "[java.lang.Character].hashCode()"
    - "[java.time.OffsetTime].hashCode()"
    - "[java.util.PropertyPermission].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Requires].hashCode()"
    - "[java.net.URI].hashCode()"
    - "[jdk.internal.org.objectweb.asm.Handle].hashCode()"
    - "[io.netty.handler.codec.dns.DnsResponseCode].hashCode()"
    - "[jdk.internal.module.ServicesCatalog$ServiceProvider].hashCode()"
    - "[io.netty.channel.unix.FileDescriptor].hashCode()"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].hashCode()"
    - "[java.time.LocalDate].hashCode()"
    - "[io.netty.handler.codec.EmptyHeaders].hashCode()"
    - "[java.math.BigDecimal].hashCode()"
    - "[java.util.Properties].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].hashCode()"
    - "[io.netty.handler.codec.xml.XmlAttribute].hashCode()"
    - "[java.net.Inet6Address$Inet6AddressHolder].hashCode()"
    - "[java.util.ArrayList].hashCode()"
    - "[io.netty.handler.codec.xml.XmlElementStart].hashCode()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].hashCode()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringPair].hashCode()"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].hashCode()"
    - "[io.netty.util.AbstractConstant].hashCode()"
    - "[io.netty.buffer.EmptyByteBuf].hashCode()"
    - "[io.netty.handler.codec.http.HttpVersion].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].hashCode()"
    - "[java.util.AbstractList].hashCode()"
    - "[java.time.Clock].hashCode()"
    - "[java.lang.Long].hashCode()"
    - "[jdk.internal.module.ModuleHashes].hashCode()"
    - "[java.net.Inet6Address].hashCode()"
    - "[sun.util.locale.LocaleExtensions].hashCode()"
    - "[io.netty.channel.local.LocalAddress].hashCode()"
    - "[java.time.ZonedDateTime].hashCode()"
    - "[java.lang.module.ResolvedModule].hashCode()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].hashCode()"
    - "[java.math.BigInteger].hashCode()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].hashCode()"
    - "[java.time.ZoneId].hashCode()"
    - "[java.security.BasicPermission].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].hashCode()"
    - "[io.netty.buffer.DefaultByteBufHolder].hashCode()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].hashCode()"
    - "[java.time.chrono.AbstractChronology].hashCode()"
    - "[java.time.Period].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].hashCode()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Provides].hashCode()"
    - "[java.util.logging.LogManager$CloseOnReset].hashCode()"
    - "[java.lang.reflect.Method].hashCode()"
    - "[java.util.Date].hashCode()"
    - "[java.text.DecimalFormatSymbols].hashCode()"
    - "[java.net.SocketPermission].hashCode()"
    - "[java.io.FilePermission].hashCode()"
    - "[java.nio.FloatBuffer].hashCode()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].hashCode()"
    - "[jaz.Zer].hashCode()"
    - "[sun.security.x509.X500Name].hashCode()"
    - "[java.text.DateFormatSymbols].hashCode()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].hashCode()"
    - "[java.lang.invoke.StringConcatFactory$RecipeElement].hashCode()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].hashCode()"
    - "[java.time.zone.ZoneOffsetTransitionRule].hashCode()"
    - "[java.util.Calendar].hashCode()"
    - "[io.netty.handler.codec.xml.XmlEntityReference].hashCode()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$MqttProperty].hashCode()"
    - "[java.time.LocalTime].hashCode()"
    - "[javax.security.auth.x500.X500Principal].hashCode()"
    - "[java.net.NetworkInterface].hashCode()"
    - "[io.netty.buffer.WrappedByteBuf].hashCode()"
    - "[sun.security.x509.AVA].hashCode()"
    - "[java.util.Vector].hashCode()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].hashCode()"
    - "[java.security.Provider$ServiceKey].hashCode()"
    - "[java.util.Locale].hashCode()"
    - "[java.lang.Integer].hashCode()"
    - "[java.net.Inet4Address].hashCode()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandType].hashCode()"
    - "[java.lang.module.ModuleDescriptor$Exports].hashCode()"
    - "[jdk.internal.loader.AbstractClassLoaderValue$Sub].hashCode()"
    - "[io.netty.handler.ssl.PemX509Certificate].hashCode()"
    - "[java.lang.ProcessBuilder$Redirect].hashCode()"
    - "[io.netty.handler.codec.xml.XmlContent].hashCode()"
    - "[java.util.BitSet].hashCode()"
    - "[io.netty.channel.DefaultChannelId].hashCode()"
    - "[java.net.InetAddress].hashCode()"
    - "[java.net.InetSocketAddress$InetSocketAddressHolder].hashCode()"
    - "[java.lang.Package].hashCode()"
    - "[sun.security.util.DerInputBuffer].hashCode()"
    - "[java.util.GregorianCalendar].hashCode()"
    - "[java.lang.Thread$WeakClassKey].hashCode()"
    - "[java.util.Optional].hashCode()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].hashCode()"
    - "[java.lang.ProcessHandleImpl].hashCode()"
    - "[io.netty.channel.unix.DomainSocketAddress].hashCode()"
    - "[io.netty.handler.codec.smtp.SmtpCommand].hashCode()"
    - "[io.netty.util.AsciiString].hashCode()"
    - "[io.netty.handler.codec.dns.DatagramDnsQuery].hashCode()"
    - "[java.lang.String].hashCode()"
    - "[io.netty.util.collection.ByteObjectHashMap].hashCode()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].hashCode()"
    - "[io.netty.util.collection.LongObjectHashMap].hashCode()"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].hashCode()"
    - "[java.lang.Character$Subset].hashCode()"
    - "[java.lang.reflect.Constructor].hashCode()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].hashCode()"
    - "[io.netty.util.collection.CharObjectHashMap].hashCode()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].hashCode()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].hashCode()"
    - "[jdk.internal.jimage.ImageReader$Node].hashCode()"
    - "[java.util.OptionalLong].hashCode()"
    - "[java.security.cert.Certificate].hashCode()"
    - "[java.security.CodeSigner].hashCode()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponse].hashCode()"
    - "[java.lang.reflect.Field].hashCode()"
    - "[java.util.ResourceBundle$CacheKey].hashCode()"
    - "[sun.security.x509.CertificateExtensions].hashCode()"
    - "[java.security.AllPermission].hashCode()"
    - "[java.util.IdentityHashMap].hashCode()"
    - "[java.nio.charset.Charset].hashCode()"
    - "[java.time.ZoneOffset].hashCode()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].hashCode()"
    - "[sun.security.x509.GeneralSubtree].hashCode()"
    - "[java.io.File].hashCode()"
    - "[java.util.jar.Attributes].hashCode()"
    - "[java.time.Duration].hashCode()"
    functionUses: 5
    ICount: 15
    EdgeCount: 572
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1435"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1434"
        BranchSideFuncs:
        - "hashCode()"
    - Branch String: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1435"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1434"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$HeaderEntry:1435,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder].packetId(int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder].packetId(short)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder].packetId(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:581,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder].packetId(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder].properties(io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder].addGrantedQos(io.netty.handler.codec.mqtt.MqttQoS)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttQoS"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:590,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder].addGrantedQoses(io.netty.handler.codec.mqtt.MqttQoS[])"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttQoS[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:595,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:595,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder].build()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttSubAckMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].<init>(int,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.handler.codec.mqtt.MqttQoS].value()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckPayload].<init>(int[])"
    - "[io.netty.handler.codec.mqtt.MqttSubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttSubAckPayload)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:608"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:612"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:611"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:600,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:602,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].<init>(int,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:606,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:608,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:608,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:608,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:609,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttQoS].value()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:612,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubAckPayload].<init>(int[])"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubAckBuilder:613,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttSubAckPayload)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubAckPayload].<init>(int[])"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubAckPayload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttSubAckPayload:37"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubAckPayload:39"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:33,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:34,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:36,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:38,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:38,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:40,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:34,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,long)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,long,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:38,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,long,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].<init>(java.lang.String,java.nio.charset.Charset,long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:42,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].<init>(java.lang.String,java.nio.charset.Charset,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,long,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "long"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].<init>(java.lang.String,java.nio.charset.Charset,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:46,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].<init>(java.lang.String,java.nio.charset.Charset,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,java.lang.String,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:50,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,java.lang.String,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].getHttpDataType()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.InterfaceHttpData$HttpDataType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].getValue()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].getByteBuf()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.handler.codec.http.multipart.AbstractHttpData].getCharset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getCharset()"
    - "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    functionUses: 1
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:65,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].getByteBuf()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:65,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getCharset()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:65,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].addContent(io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].checkSize(long)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].addContent(io.netty.buffer.ByteBuf,boolean)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.MemoryAttribute:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:91"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.MemoryAttribute:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:91"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:82,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:84,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].checkSize(long)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:86,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:92,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].addContent(io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - "[java.lang.String].hashCode()"
    functionUses: 6
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:97,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:97,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].getName()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    functionUses: 10
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.MemoryAttribute:102"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:105"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:104"
        BranchSideFuncs:
        - "getName()"
        - "equalsIgnoreCase(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:106,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:106,1"
      Dst: "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:106,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].getHttpDataType()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getHttpDataType()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.ClassCastException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].compareTo(io.netty.handler.codec.http.multipart.Attribute)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.MemoryAttribute:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:115"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:112,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:112,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:112,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryAttribute].getHttpDataType()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:112,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:113,1"
      Dst: "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getHttpDataType()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:113,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:113,1"
      Dst: "[java.lang.ClassCastException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:115,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryAttribute].compareTo(io.netty.handler.codec.http.multipart.Attribute)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].compareTo(io.netty.handler.codec.http.multipart.Attribute)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.Attribute"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - "[java.lang.String].compareToIgnoreCase(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:119,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:119,1"
      Dst: "[io.netty.handler.codec.http.multipart.InterfaceHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:119,1"
      Dst: "[java.lang.String].compareToIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].toString()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].getValue()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 20
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:124,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:124,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:124,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:124,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:124,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryAttribute].getValue()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:124,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].copy()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.MemoryAttribute:130"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:128"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:129,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:130,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:130,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryAttribute].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].getCharset()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].setCharset(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].setContent(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].isCompleted()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].setCompleted(boolean)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.MemoryAttribute:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:161,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getName()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:161,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:162,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].getCharset()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:162,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].setCharset(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:165,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].setContent(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:167,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:170,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].isCompleted()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:170,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].setCompleted(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].duplicate()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.MemoryAttribute:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:134"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:135,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:136,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:136,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryAttribute].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.MemoryAttribute:142"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:155"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:154"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.MemoryAttribute:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:143"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:142"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.MemoryAttribute:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:153"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.MemoryAttribute:152"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:141,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:143,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:146,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryAttribute].replace(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:151,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].retain()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].retain()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:176,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:182,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].touch()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].touch()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:188,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 196
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].touch(java.lang.Object)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:194,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryAttribute].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryAttribute:31,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryAttribute].compareTo(io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ZlibCodecFactory].isSupportingWindowSizeAndMemLevel()"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker].<init>(int,boolean,int,boolean,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:50,1"
      Dst: "[io.netty.handler.codec.compression.ZlibCodecFactory].isSupportingWindowSizeAndMemLevel()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:50,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker].<init>(int,boolean,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker].<init>(int,boolean,int,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "boolean"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker].<init>(int,boolean,int,boolean,boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:73,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker].<init>(int,boolean,int,boolean,boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker].<init>(int,boolean,int,boolean,boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "boolean"
    - "int"
    - "boolean"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:101"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:105"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:104"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:105"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:106"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:105"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:105"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:109"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:108"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:99,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:102,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:102,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:102,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:102,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:102,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:114,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker].newRequestData()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 133
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashMap].<init>(int)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].toString(int)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].<init>(java.lang.String,java.util.Map)"
    functionUses: 1
    ICount: 20
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:120"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:123"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:122"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:123"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:125"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:129"
        BranchSideFuncs:
        - "toString(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:128"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:129"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:132"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:131"
        BranchSideFuncs:
        - "<init>(java.lang.String,java.util.Map)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:119,1"
      Dst: "[java.util.HashMap].<init>(int)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:121,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:127,1"
      Dst: "[java.lang.Integer].toString(int)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:132,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].<init>(java.lang.String,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker].handshakeExtension(io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 194
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtension"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].name()"
    - "[java.security.Provider].entrySet()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].entrySet()"
    - "[java.util.concurrent.ConcurrentHashMap].entrySet()"
    - "[io.netty.util.collection.ShortObjectHashMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].entrySet()"
    - "[java.util.TreeMap].entrySet()"
    - "[java.util.stream.Collectors$Partition].entrySet()"
    - "[java.util.Properties].entrySet()"
    - "[java.util.WeakHashMap].entrySet()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[io.netty.util.collection.IntObjectHashMap].entrySet()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].entrySet()"
    - "[java.util.jar.Attributes].entrySet()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].entrySet()"
    - "[java.util.IdentityHashMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.util.collection.ByteObjectHashMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].entrySet()"
    - "[java.util.HashMap].entrySet()"
    - "[io.netty.util.collection.CharObjectHashMap].entrySet()"
    - "[java.util.Hashtable].entrySet()"
    - "[io.netty.util.collection.LongObjectHashMap].entrySet()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].parameters()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    - "[java.util.AbstractMap$SimpleEntry].getKey()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker$PermessageDeflateExtension].<init>(io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker,boolean,int,boolean,int,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    functionUses: 1
    ICount: 99
    EdgeCount: 277
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:137"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:141"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:140"
        BranchSideFuncs:
        - "iterator()"
        - "parameters()"
        - "entrySet()"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:184"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:183"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:184"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:183"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:152"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:161"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:154"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:160"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:159"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:156"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:182"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:181"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:162"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:167"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:165"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:166"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:165"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:165"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:182"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:181"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:168"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:174"
        BranchSideFuncs:
        - "getKey()"
        - "equalsIgnoreCase(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:170"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:173"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:175"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:183"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:184"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:188"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:189"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:193"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker,boolean,int,boolean,int,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:192"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:137,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].name()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:137,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:148,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].parameters()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:148,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:148,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:149,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:150,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:152,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:152,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:155,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:155,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker:190,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker$PermessageDeflateExtension].<init>(io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker,boolean,int,boolean,int,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 30
    CyclomaticComplexity: 16
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker$PermessageDeflateExtension].<init>(io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker,boolean,int,boolean,int,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker$PermessageDeflateExtension"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 219
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker"
    - "boolean"
    - "int"
    - "boolean"
    - "int"
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker$PermessageDeflateExtension:212,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker].access$000(io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateClientExtensionHandshaker"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].<init>(javax.net.ssl.SSLEngine)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].<init>(javax.net.ssl.SSLEngine,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:416,1"
      Dst: "[io.netty.handler.ssl.SslHandler].<init>(javax.net.ssl.SSLEngine,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].<init>(javax.net.ssl.SSLEngine,boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 426
    functionLinenumberEnd: 429
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].<init>(javax.net.ssl.SSLEngine,boolean,java.util.concurrent.Executor)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:427,1"
      Dst: "[io.netty.handler.ssl.SslHandler].<init>(javax.net.ssl.SSLEngine,boolean,java.util.concurrent.Executor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].<init>(javax.net.ssl.SSLEngine,java.util.concurrent.Executor)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "java.util.concurrent.Executor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].<init>(javax.net.ssl.SSLEngine,boolean,java.util.concurrent.Executor)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:438,1"
      Dst: "[io.netty.handler.ssl.SslHandler].<init>(javax.net.ssl.SSLEngine,boolean,java.util.concurrent.Executor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].<init>(javax.net.ssl.SSLEngine,boolean,java.util.concurrent.Executor)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 449
    functionLinenumberEnd: 458
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "boolean"
    - "java.util.concurrent.Executor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].<init>(io.netty.handler.ssl.SslHandler,boolean)"
    - "[io.netty.handler.ssl.SslHandler$LazyChannelPromise].<init>(io.netty.handler.ssl.SslHandler,io.netty.handler.ssl.SslHandler$1)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.ssl.SslHandler$SslEngineType].forEngine(javax.net.ssl.SSLEngine)"
    - "[io.netty.handler.ssl.SslHandler$SslEngineType$3].jdkCompatibilityMode(javax.net.ssl.SSLEngine)"
    - "[io.netty.handler.ssl.SslHandler$SslEngineType$1].jdkCompatibilityMode(javax.net.ssl.SSLEngine)"
    - "[io.netty.handler.ssl.SslHandler$SslEngineType$2].jdkCompatibilityMode(javax.net.ssl.SSLEngine)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].setCumulator(io.netty.handler.codec.ByteToMessageDecoder$Cumulator)"
    - "[io.netty.handler.ssl.SslHandler$SslEngineType].jdkCompatibilityMode(javax.net.ssl.SSLEngine)"
    functionUses: 1
    ICount: 38
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:450,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - Src: "io.netty.handler.ssl.SslHandler:395,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].<init>(io.netty.handler.ssl.SslHandler,boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:399,1"
      Dst: "[io.netty.handler.ssl.SslHandler$LazyChannelPromise].<init>(io.netty.handler.ssl.SslHandler,io.netty.handler.ssl.SslHandler$1)"
    - Src: "io.netty.handler.ssl.SslHandler:451,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.SslHandler:453,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslEngineType].forEngine(javax.net.ssl.SSLEngine)"
    - Src: "io.netty.handler.ssl.SslHandler:455,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslEngineType].jdkCompatibilityMode(javax.net.ssl.SSLEngine)"
    - Src: "io.netty.handler.ssl.SslHandler:456,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].setCumulator(io.netty.handler.codec.ByteToMessageDecoder$Cumulator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].getHandshakeTimeoutMillis()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].setHandshakeTimeout(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.concurrent.TimeUnit].toMillis(long)"
    - "[io.netty.handler.ssl.SslHandler].setHandshakeTimeoutMillis(long)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:464,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.SslHandler:465,1"
      Dst: "[java.util.concurrent.TimeUnit].toMillis(long)"
    - Src: "io.netty.handler.ssl.SslHandler:465,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setHandshakeTimeoutMillis(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].setHandshakeTimeoutMillis(long)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:469,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].setWrapDataSize(int)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].getCloseNotifyTimeoutMillis()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].getCloseNotifyFlushTimeoutMillis()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:502,1"
      Dst: "[io.netty.handler.ssl.SslHandler].getCloseNotifyFlushTimeoutMillis()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].getCloseNotifyFlushTimeoutMillis()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].setCloseNotifyTimeout(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].setCloseNotifyFlushTimeout(long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:510,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setCloseNotifyFlushTimeout(long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].setCloseNotifyFlushTimeout(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.TimeUnit].toMillis(long)"
    - "[io.netty.handler.ssl.SslHandler].setCloseNotifyFlushTimeoutMillis(long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:536,1"
      Dst: "[java.util.concurrent.TimeUnit].toMillis(long)"
    - Src: "io.netty.handler.ssl.SslHandler:536,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setCloseNotifyFlushTimeoutMillis(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].setCloseNotifyFlushTimeoutMillis(long)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:543,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].setCloseNotifyTimeoutMillis(long)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].setCloseNotifyFlushTimeoutMillis(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:518,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setCloseNotifyFlushTimeoutMillis(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].getCloseNotifyReadTimeoutMillis()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].setCloseNotifyReadTimeout(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.TimeUnit].toMillis(long)"
    - "[io.netty.handler.ssl.SslHandler].setCloseNotifyReadTimeoutMillis(long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:562,1"
      Dst: "[java.util.concurrent.TimeUnit].toMillis(long)"
    - Src: "io.netty.handler.ssl.SslHandler:562,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setCloseNotifyReadTimeoutMillis(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].setCloseNotifyReadTimeoutMillis(long)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:569,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].applicationProtocol()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 585
    functionLinenumberEnd: 592
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].engine()"
    - "[io.netty.handler.ssl.JdkAlpnSslEngine].getNegotiatedApplicationProtocol()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getNegotiatedApplicationProtocol()"
    - "[io.netty.handler.ssl.JdkSslEngine].getNegotiatedApplicationProtocol()"
    - "[io.netty.handler.ssl.ApplicationProtocolAccessor].getNegotiatedApplicationProtocol()"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:587"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:591"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:590"
        BranchSideFuncs:
        - "getNegotiatedApplicationProtocol()"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:586,1"
      Dst: "[io.netty.handler.ssl.SslHandler].engine()"
    - Src: "io.netty.handler.ssl.SslHandler:591,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolAccessor].getNegotiatedApplicationProtocol()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].handshakeFuture()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].close()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 20
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].closeOutbound()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:609,1"
      Dst: "[io.netty.handler.ssl.SslHandler].closeOutbound()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].closeOutbound()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 19
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.handler.ssl.SslHandler].closeOutbound(io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:627,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.ssl.SslHandler:627,1"
      Dst: "[io.netty.handler.ssl.SslHandler].closeOutbound(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].closeOutbound(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 18
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.handler.ssl.SslHandler].closeOutbound0(io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.ssl.SslHandler$1].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelPromise)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:638"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:641"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:640"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:638,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.ssl.SslHandler:638,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.ssl.SslHandler:639,1"
      Dst: "[io.netty.handler.ssl.SslHandler].closeOutbound0(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler:641,1"
      Dst: "[io.netty.handler.ssl.SslHandler$1].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler:641,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler].close(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 19
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].closeOutbound(io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:617,1"
      Dst: "[io.netty.handler.ssl.SslHandler].closeOutbound(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].sslCloseFuture()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].handlerRemoved0(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 676
    functionLinenumberEnd: 705
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractCoalescingBufferQueue].isEmpty()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String)"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].tryFailure(java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandshakeCompletionEvent].<init>(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    - "[io.netty.handler.ssl.SslHandler].notifyClosePromise(java.lang.Throwable)"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    functionUses: 1
    ICount: 42
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:677"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:681"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:677"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:681"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:689"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:695"
        BranchSideFuncs:
        - "tryFailure(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:694"
        BranchSideFuncs:
        - "isDone()"
    - Branch String: "io.netty.handler.ssl.SslHandler:691"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:695"
        BranchSideFuncs:
        - "fireUserEventTriggered(java.lang.Object)"
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:694"
        BranchSideFuncs:
        - "isDone()"
    - Branch String: "io.netty.handler.ssl.SslHandler:695"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:702"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:701"
        BranchSideFuncs:
        - "release(java.lang.Object)"
    - Branch String: "io.netty.handler.ssl.SslHandler:696"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:null"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:677,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].isEmpty()"
    - Src: "io.netty.handler.ssl.SslHandler:679,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslHandler:679,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].releaseAndFailAll(io.netty.channel.ChannelOutboundInvoker,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:689,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.ssl.SslHandler:690,1"
      Dst: "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslHandler:691,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:692,1"
      Dst: "[io.netty.handler.ssl.SslHandshakeCompletionEvent].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:692,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:695,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - Src: "io.netty.handler.ssl.SslHandler:697,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslHandler:699,1"
      Dst: "[io.netty.handler.ssl.SslHandler].notifyClosePromise(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:702,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.ssl.SslHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 707
    functionLinenumberEnd: 710
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:708,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 713
    functionLinenumberEnd: 716
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:714,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 718
    functionLinenumberEnd: 721
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].deregister(io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:719,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].deregister(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 724
    functionLinenumberEnd: 727
    functionDepth: 18
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].closeOutboundAndChannel(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise,boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:725,1"
      Dst: "[io.netty.handler.ssl.SslHandler].closeOutboundAndChannel(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].closeOutboundAndChannel(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise,boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1926
    functionLinenumberEnd: 1965
    functionDepth: 17
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].setState(int)"
    - "[io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine].closeOutbound()"
    - "[io.netty.handler.ssl.JettyNpnSslEngine].closeOutbound()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].closeOutbound()"
    - "[io.netty.handler.ssl.JdkSslEngine].closeOutbound()"
    - "[io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine].closeOutbound()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    - "[io.netty.channel.local.LocalServerChannel].isActive()"
    - "[io.netty.channel.Channel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    - "[io.netty.bootstrap.FailedChannel].isActive()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.handler.ssl.SslHandler].flush(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - "[io.netty.util.concurrent.PromiseNotifier].cascade(boolean,io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    - "[io.netty.handler.ssl.SslHandler].safeClose(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.ssl.SslHandler$5].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[javax.net.ssl.SSLEngine].closeOutbound()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    functionUses: 2
    ICount: 45
    EdgeCount: 61
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1930"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1939"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1938"
        BranchSideFuncs:
        - "flush(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
        - "isStateSet(int)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1931"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1934"
        BranchSideFuncs:
        - "disconnect(io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1933"
        BranchSideFuncs:
        - "close(io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1943"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1956"
        BranchSideFuncs:
        - "cascade(boolean,io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
        - "safeClose(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
        - "newPromise()"
        - "setState(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1955"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1943"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1956"
        BranchSideFuncs:
        - "cascade(boolean,io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
        - "safeClose(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
        - "newPromise()"
        - "setState(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1955"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1927,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1928,1"
      Dst: "[javax.net.ssl.SSLEngine].closeOutbound()"
    - Src: "io.netty.handler.ssl.SslHandler:1930,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.ssl.SslHandler:1930,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.handler.ssl.SslHandler:1932,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler:1934,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler:1939,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.ssl.SslHandler:1941,1"
      Dst: "[io.netty.handler.ssl.SslHandler].flush(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler:1943,1"
      Dst: "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1953,1"
      Dst: "[io.netty.util.concurrent.PromiseNotifier].cascade(boolean,io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.handler.ssl.SslHandler:1953,1"
      Dst: "[io.netty.handler.ssl.SslHandler].safeClose(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler:1956,1"
      Dst: "[io.netty.handler.ssl.SslHandler$5].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler:1956,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.SslHandler].safeClose(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 2161
    functionLinenumberEnd: 2237
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    - "[io.netty.channel.local.LocalServerChannel].isActive()"
    - "[io.netty.channel.Channel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    - "[io.netty.bootstrap.FailedChannel].isActive()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.ssl.SslHandler$9].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelFuture,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.handler.ssl.SslHandler$10].<init>(io.netty.handler.ssl.SslHandler,io.netty.util.concurrent.Future,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 28
    EdgeCount: 50
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:2162"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2168"
        BranchSideFuncs:
        - "close(io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:2167"
        BranchSideFuncs:
        - "isDone()"
    - Branch String: "io.netty.handler.ssl.SslHandler:2168"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2187"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:2186"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:2170"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2183"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:2162,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.ssl.SslHandler:2162,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.handler.ssl.SslHandler:2163,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler:2168,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.ssl.SslHandler:2172,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.ssl.SslHandler:2172,1"
      Dst: "[io.netty.handler.ssl.SslHandler$9].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelFuture,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler:2172,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - Src: "io.netty.handler.ssl.SslHandler:2191,1"
      Dst: "[io.netty.handler.ssl.SslHandler$10].<init>(io.netty.handler.ssl.SslHandler,io.netty.util.concurrent.Future,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.ssl.SslHandler:2191,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.SslHandler$5].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$5"
    linkageType: ""
    functionLinenumber: 1955
    functionLinenumberEnd: 1957
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$5:1956,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 730
    functionLinenumberEnd: 733
    functionDepth: 18
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].closeOutboundAndChannel(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise,boolean)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:731,1"
      Dst: "[io.netty.handler.ssl.SslHandler].closeOutboundAndChannel(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].read(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 735
    functionLinenumberEnd: 742
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.ssl.SslHandler].setState(int)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].read()"
    - "[io.netty.channel.AbstractChannelHandlerContext].read()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelHandlerContext].read()"
    functionUses: 2
    ICount: 8
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:736"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:740"
        BranchSideFuncs:
        - "setState(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:739"
        BranchSideFuncs:
        - "read()"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:736,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.ssl.SslHandler:737,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:740,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].read()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 748
    functionLinenumberEnd: 760
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.UnsupportedMessageTypeException].<init>(java.lang.Object,java.lang.Class[])"
    - "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandler].newPendingWritesNullException()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].add(io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 2
    ICount: 23
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:749"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:749"
        BranchSideFuncs:
        - "<init>(java.lang.Object,java.lang.Class[])"
      - BranchSide: "io.netty.handler.ssl.SslHandler:748"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:749"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:757"
        BranchSideFuncs:
        - "<init>(java.lang.Object,java.lang.Class[])"
      - BranchSide: "io.netty.handler.ssl.SslHandler:756"
        BranchSideFuncs:
        - "add(io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:750,1"
      Dst: "[io.netty.handler.codec.UnsupportedMessageTypeException].<init>(java.lang.Object,java.lang.Class[])"
    - Src: "io.netty.handler.ssl.SslHandler:751,1"
      Dst: "[io.netty.util.ReferenceCountUtil].safeRelease(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:752,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:755,1"
      Dst: "[io.netty.handler.ssl.SslHandler].newPendingWritesNullException()"
    - Src: "io.netty.handler.ssl.SslHandler:757,1"
      Dst: "[io.netty.channel.AbstractCoalescingBufferQueue].add(io.netty.buffer.ByteBuf,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.SslHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1062
    functionLinenumberEnd: 1087
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[java.nio.channels.ClosedChannelException].<init>()"
    - "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - "[io.netty.handler.ssl.SslHandler].setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean,boolean,boolean)"
    - "[io.netty.handler.ssl.SslHandler].notifyClosePromise(java.lang.Throwable)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - "[java.lang.Throwable].getCause()"
    - "[io.netty.util.concurrent.Future].cause()"
    functionUses: 3
    ICount: 28
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1063"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1063"
        BranchSideFuncs:
        - "isStateSet(int)"
        - "<init>()"
        - "setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean,boolean,boolean)"
        - "cause()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1062"
        BranchSideFuncs:
        - "cause()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1068"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1063"
        BranchSideFuncs:
        - "isStateSet(int)"
        - "notifyClosePromise(java.lang.Throwable)"
        - "getCause()"
        - "channelInactive(io.netty.channel.ChannelHandlerContext)"
        - "setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean,boolean,boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1062"
        BranchSideFuncs:
        - "isStateSet(int)"
        - "<init>()"
        - "setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean,boolean,boolean)"
        - "cause()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1077"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1068"
        BranchSideFuncs:
        - "isStateSet(int)"
        - "notifyClosePromise(java.lang.Throwable)"
        - "getCause()"
        - "channelInactive(io.netty.channel.ChannelHandlerContext)"
        - "setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean,boolean,boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1067"
        BranchSideFuncs:
        - "isStateSet(int)"
        - "notifyClosePromise(java.lang.Throwable)"
        - "getCause()"
        - "channelInactive(io.netty.channel.ChannelHandlerContext)"
        - "setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean,boolean,boolean)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1077"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1086"
        BranchSideFuncs:
        - "isStateSet(int)"
        - "notifyClosePromise(java.lang.Throwable)"
        - "getCause()"
        - "channelInactive(io.netty.channel.ChannelHandlerContext)"
        - "setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean,boolean,boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1085"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1063,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.ssl.SslHandler:1065,1"
      Dst: "[java.nio.channels.ClosedChannelException].<init>()"
    - Src: "io.netty.handler.ssl.SslHandler:1068,1"
      Dst: "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1068,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean,boolean,boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:1072,1"
      Dst: "[io.netty.handler.ssl.SslHandler].notifyClosePromise(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:1075,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].channelInactive(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.SslHandler:1077,1"
      Dst: "[java.lang.Throwable].getCause()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.SslHandler].decodeJdkCompatible(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1198
    functionLinenumberEnd: 1244
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.ssl.SslUtils].getEncryptedPacketLength(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.ssl.NotSslRecordException].<init>(java.lang.String)"
    - "[io.netty.buffer.ByteBufUtil].hexDump(io.netty.buffer.ByteBuf)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.ssl.SslHandler].setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.ssl.SslHandler].unwrap(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.ssl.JdkSslEngine].isInboundDone()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].isInboundDone()"
    - "[io.netty.handler.ssl.SslHandler].handleUnwrapThrowable(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[javax.net.ssl.SSLEngine].isInboundDone()"
    functionUses: 1
    ICount: 59
    EdgeCount: 53
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1201"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1207"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1206"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1202"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1234"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1233"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "isInboundDone()"
        - "unwrap(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1208"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1211"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1210"
        BranchSideFuncs:
        - "readerIndex()"
        - "getEncryptedPacketLength(io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1212"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1224"
        BranchSideFuncs:
        - "handleUnwrapThrowable(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "append(java.lang.String)"
        - "toString()"
        - "readerIndex()"
        - "setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "skipBytes(int)"
        - "append(int)"
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "isInboundDone()"
        - "unwrap(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
        - "hexDump(io.netty.buffer.ByteBuf)"
        - "getEncryptedPacketLength(io.netty.buffer.ByteBuf,int)"
        - "<init>(java.lang.String)"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1223"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1224"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1225"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1224"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1224"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1225"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1224"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1225"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1234"
        BranchSideFuncs:
        - "handleUnwrapThrowable(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "append(java.lang.String)"
        - "toString()"
        - "readerIndex()"
        - "setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "skipBytes(int)"
        - "append(int)"
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "isInboundDone()"
        - "unwrap(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
        - "hexDump(io.netty.buffer.ByteBuf)"
        - "getEncryptedPacketLength(io.netty.buffer.ByteBuf,int)"
        - "<init>(java.lang.String)"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1233"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "isInboundDone()"
        - "unwrap(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1237"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1242"
        BranchSideFuncs:
        - "handleUnwrapThrowable(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "append(java.lang.String)"
        - "toString()"
        - "readerIndex()"
        - "setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "skipBytes(int)"
        - "append(int)"
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "isInboundDone()"
        - "unwrap(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
        - "hexDump(io.netty.buffer.ByteBuf)"
        - "getEncryptedPacketLength(io.netty.buffer.ByteBuf,int)"
        - "<init>(java.lang.String)"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1241"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1237"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1242"
        BranchSideFuncs:
        - "handleUnwrapThrowable(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "append(java.lang.String)"
        - "toString()"
        - "readerIndex()"
        - "setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "skipBytes(int)"
        - "append(int)"
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "isInboundDone()"
        - "unwrap(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
        - "hexDump(io.netty.buffer.ByteBuf)"
        - "getEncryptedPacketLength(io.netty.buffer.ByteBuf,int)"
        - "<init>(java.lang.String)"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1241"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1237"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1242"
        BranchSideFuncs:
        - "handleUnwrapThrowable(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "append(java.lang.String)"
        - "toString()"
        - "readerIndex()"
        - "setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "skipBytes(int)"
        - "append(int)"
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "isInboundDone()"
        - "unwrap(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
        - "hexDump(io.netty.buffer.ByteBuf)"
        - "getEncryptedPacketLength(io.netty.buffer.ByteBuf,int)"
        - "<init>(java.lang.String)"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1241"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1202,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.ssl.SslHandler:1211,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.ssl.SslHandler:1211,1"
      Dst: "[io.netty.handler.ssl.SslUtils].getEncryptedPacketLength(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.ssl.SslHandler:1214,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.SslHandler:1214,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslHandler:1215,1"
      Dst: "[io.netty.buffer.ByteBufUtil].hexDump(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.SslHandler:1215,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.SslHandler:1215,1"
      Dst: "[io.netty.handler.ssl.NotSslRecordException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslHandler:1216,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1220,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:1224,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.SslHandler:1236,1"
      Dst: "[io.netty.handler.ssl.SslHandler].unwrap(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.ssl.SslHandler:1237,1"
      Dst: "[javax.net.ssl.SSLEngine].isInboundDone()"
    - Src: "io.netty.handler.ssl.SslHandler:1237,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1237,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:1241,1"
      Dst: "[io.netty.handler.ssl.SslHandler].handleUnwrapThrowable(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.ssl.NotSslRecordException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.ssl.SslHandler].handleUnwrapThrowable(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1258
    functionLinenumberEnd: 1278
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].tryFailure(java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandshakeCompletionEvent].<init>(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.handler.ssl.SslHandler].wrapAndFlush(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandler].setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean,boolean,boolean)"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    functionUses: 3
    ICount: 24
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1259"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1264"
        BranchSideFuncs:
        - "fireUserEventTriggered(java.lang.Object)"
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1263"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1264"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1274"
        BranchSideFuncs:
        - "wrapAndFlush(io.netty.channel.ChannelHandlerContext)"
        - "debug(java.lang.String,java.lang.Throwable)"
        - "setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean,boolean,boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1273"
        BranchSideFuncs:
        - "setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean,boolean,boolean)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1259,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:1260,1"
      Dst: "[io.netty.handler.ssl.SslHandshakeCompletionEvent].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:1260,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:1267,1"
      Dst: "[io.netty.handler.ssl.SslHandler].wrapAndFlush(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.SslHandler:1274,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable,boolean,boolean,boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:1270,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:1276,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler].decodeNonJdkCompatible(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1246
    functionLinenumberEnd: 1252
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.handler.ssl.SslHandler].unwrap(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.ssl.SslHandler].handleUnwrapThrowable(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 1
    ICount: 9
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1247,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.ssl.SslHandler:1247,1"
      Dst: "[io.netty.handler.ssl.SslHandler].unwrap(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.ssl.SslHandler:1249,1"
      Dst: "[io.netty.handler.ssl.SslHandler].handleUnwrapThrowable(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1280
    functionLinenumberEnd: 1290
    functionDepth: 12
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - "[io.netty.handler.ssl.SslHandler].decodeJdkCompatible(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.ssl.SslHandler].decodeNonJdkCompatible(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1281"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1284"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:1283"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1284"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1287"
        BranchSideFuncs:
        - "decodeJdkCompatible(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1286"
        BranchSideFuncs:
        - "decodeNonJdkCompatible(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1281,1"
      Dst: "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1285,1"
      Dst: "[io.netty.handler.ssl.SslHandler].decodeJdkCompatible(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.SslHandler:1287,1"
      Dst: "[io.netty.handler.ssl.SslHandler].decodeNonJdkCompatible(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1292
    functionLinenumberEnd: 1295
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].channelReadComplete0(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1293,1"
      Dst: "[io.netty.handler.ssl.SslHandler].channelReadComplete0(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].channelReadComplete0(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1297
    functionLinenumberEnd: 1306
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].discardSomeReadBytes()"
    - "[io.netty.handler.ssl.SslHandler].flushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.SslHandler].readIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.SslHandler].clearState(int)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    functionUses: 2
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1298,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].discardSomeReadBytes()"
    - Src: "io.netty.handler.ssl.SslHandler:1300,1"
      Dst: "[io.netty.handler.ssl.SslHandler].flushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.SslHandler:1301,1"
      Dst: "[io.netty.handler.ssl.SslHandler].readIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.SslHandler:1303,1"
      Dst: "[io.netty.handler.ssl.SslHandler].clearState(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1304,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].flushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1317
    functionLinenumberEnd: 1322
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - "[io.netty.handler.ssl.SslHandler].forceFlush(io.netty.channel.ChannelHandlerContext)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1318"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1321"
        BranchSideFuncs:
        - "forceFlush(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1320"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1318,1"
      Dst: "[io.netty.handler.ssl.SslHandler].isStateSet(int)"
    - Src: "io.netty.handler.ssl.SslHandler:1319,1"
      Dst: "[io.netty.handler.ssl.SslHandler].forceFlush(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler].setHandshakeFailureTransportFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1896
    functionLinenumberEnd: 1906
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandler].releaseAndFailAll(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].tryFailure(java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandshakeCompletionEvent].<init>(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 1
    ICount: 18
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1899"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1903"
        BranchSideFuncs:
        - "fireUserEventTriggered(java.lang.Object)"
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1902"
        BranchSideFuncs:
        - "close()"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1897,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:1898,1"
      Dst: "[io.netty.handler.ssl.SslHandler].releaseAndFailAll(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:1899,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:1900,1"
      Dst: "[io.netty.handler.ssl.SslHandshakeCompletionEvent].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler:1900,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:1903,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 1976
    functionLinenumberEnd: 1998
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.Channel,int)"
    - "[io.netty.handler.ssl.SslHandler].setOpensslEngineSocketFd(io.netty.channel.Channel)"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.embedded.EmbeddedChannel].config()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].config()"
    - "[io.netty.bootstrap.FailedChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.local.LocalServerChannel].config()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].config()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].config()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[java.lang.Boolean].equals(java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.epoll.EpollChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.nio.NioDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    - "[io.netty.channel.local.LocalServerChannel].isActive()"
    - "[io.netty.channel.Channel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    - "[io.netty.bootstrap.FailedChannel].isActive()"
    - "[io.netty.handler.ssl.SslHandler].startHandshakeProcessing(boolean)"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].outboundBuffer()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].outboundBuffer()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].outboundBuffer()"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.embedded.EmbeddedChannel].unsafe()"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - "[io.netty.channel.ChannelOutboundBuffer].totalPendingWriteBytes()"
    - "[io.netty.handler.ssl.SslHandler].setState(int)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.channel.Channel].unsafe()"
    - "[io.netty.channel.Channel$Unsafe].outboundBuffer()"
    functionUses: 5
    ICount: 27
    EdgeCount: 106
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:1984"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1987"
        BranchSideFuncs:
        - "startHandshakeProcessing(boolean)"
        - "outboundBuffer()"
        - "unsafe()"
    - Branch String: "io.netty.handler.ssl.SslHandler:1984"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1996"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1992"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1997"
        BranchSideFuncs:
        - "totalPendingWriteBytes()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1996"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:1992"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1994"
        BranchSideFuncs:
        - "totalPendingWriteBytes()"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1993"
        BranchSideFuncs:
        - "setState(int)"
    - Branch String: "io.netty.handler.ssl.SslHandler:1993"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:1997"
        BranchSideFuncs:
        - "setState(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:1996"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:1978,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.ssl.SslHandler:1979,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslHandlerCoalescingBufferQueue].<init>(io.netty.handler.ssl.SslHandler,io.netty.channel.Channel,int)"
    - Src: "io.netty.handler.ssl.SslHandler:1981,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setOpensslEngineSocketFd(io.netty.channel.Channel)"
    - Src: "io.netty.handler.ssl.SslHandler:1982,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.handler.ssl.SslHandler:1982,1"
      Dst: "[io.netty.channel.ChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - Src: "io.netty.handler.ssl.SslHandler:1982,1"
      Dst: "[java.lang.Boolean].equals(java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler:1983,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.handler.ssl.SslHandler:1988,1"
      Dst: "[io.netty.handler.ssl.SslHandler].startHandshakeProcessing(boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:1992,1"
      Dst: "[io.netty.channel.Channel].unsafe()"
    - Src: "io.netty.handler.ssl.SslHandler:1992,1"
      Dst: "[io.netty.channel.Channel$Unsafe].outboundBuffer()"
    - Src: "io.netty.handler.ssl.SslHandler:1993,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].totalPendingWriteBytes()"
    - Src: "io.netty.handler.ssl.SslHandler:1994,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setState(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.ssl.SslHandler].setOpensslEngineSocketFd(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 2141
    functionLinenumberEnd: 2146
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].bioSetFd(int)"
    - "[io.netty.channel.epoll.AbstractEpollChannel].fd()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].fd()"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.unix.UnixChannel].fd()"
    functionUses: 2
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:2142"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2145"
        BranchSideFuncs:
        - "fd()"
        - "intValue()"
        - "bioSetFd(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:2144"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:2142"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2145"
        BranchSideFuncs:
        - "fd()"
        - "intValue()"
        - "bioSetFd(int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:2144"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:2143,1"
      Dst: "[io.netty.channel.unix.UnixChannel].fd()"
    - Src: "io.netty.handler.ssl.SslHandler:2143,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.handler.ssl.SslHandler:2143,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].bioSetFd(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.SslHandler].renegotiate()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[io.netty.handler.ssl.SslHandler].renegotiate(io.netty.util.concurrent.Promise)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:2019"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2023"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:2022"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:2020,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "io.netty.handler.ssl.SslHandler:2023,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.ssl.SslHandler:2023,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.handler.ssl.SslHandler:2023,1"
      Dst: "[io.netty.handler.ssl.SslHandler].renegotiate(io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].renegotiate(io.netty.util.concurrent.Promise<Channel>)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future<Channel>"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Promise<Channel>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.IllegalStateException].<init>()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.handler.ssl.SslHandler$6].<init>(io.netty.handler.ssl.SslHandler,io.netty.util.concurrent.Promise)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - "[io.netty.handler.ssl.SslHandler].renegotiateOnEventLoop(io.netty.util.concurrent.Promise)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:2033"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2037"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:2036"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler:2038"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2048"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslHandler:2047"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:2030,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.SslHandler:2034,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "io.netty.handler.ssl.SslHandler:2037,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.ssl.SslHandler:2038,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.ssl.SslHandler:2039,1"
      Dst: "[io.netty.handler.ssl.SslHandler$6].<init>(io.netty.handler.ssl.SslHandler,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.handler.ssl.SslHandler:2039,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.handler.ssl.SslHandler:2048,1"
      Dst: "[io.netty.handler.ssl.SslHandler].renegotiateOnEventLoop(io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].renegotiateOnEventLoop(io.netty.util.concurrent.Promise<Channel>)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 2052
    functionLinenumberEnd: 2064
    functionDepth: 14
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Promise<Channel>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.util.concurrent.PromiseNotifier].cascade(io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    - "[io.netty.handler.ssl.SslHandler].handshake(boolean)"
    - "[io.netty.handler.ssl.SslHandler].applyHandshakeTimeout()"
    - "[java.util.concurrent.Future].isDone()"
    functionUses: 1
    ICount: 11
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:2054"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2058"
        BranchSideFuncs:
        - "handshake(boolean)"
        - "applyHandshakeTimeout()"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:2054,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.ssl.SslHandler:2057,1"
      Dst: "[io.netty.util.concurrent.PromiseNotifier].cascade(io.netty.util.concurrent.Future,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.handler.ssl.SslHandler:2060,1"
      Dst: "[io.netty.handler.ssl.SslHandler].handshake(boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:2061,1"
      Dst: "[io.netty.handler.ssl.SslHandler].applyHandshakeTimeout()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 2151
    functionLinenumberEnd: 2158
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.handler.ssl.SslHandler].setOpensslEngineSocketFd(io.netty.channel.Channel)"
    - "[io.netty.handler.ssl.SslHandler].startHandshakeProcessing(boolean)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelActive()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelActive()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelActive()"
    functionUses: 2
    ICount: 9
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler:2153"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler:2156"
        BranchSideFuncs:
        - "startHandshakeProcessing(boolean)"
      - BranchSide: "io.netty.handler.ssl.SslHandler:2155"
        BranchSideFuncs:
        - "fireChannelActive()"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:2152,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.ssl.SslHandler:2152,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setOpensslEngineSocketFd(io.netty.channel.Channel)"
    - Src: "io.netty.handler.ssl.SslHandler:2154,1"
      Dst: "[io.netty.handler.ssl.SslHandler].startHandshakeProcessing(boolean)"
    - Src: "io.netty.handler.ssl.SslHandler:2156,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelActive()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler].access$600(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].setHandshakeFailureTransportFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setHandshakeFailureTransportFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$700(io.netty.handler.ssl.SslHandler,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 9
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].notifyClosePromise(java.lang.Throwable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].notifyClosePromise(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$1000(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].handleUnwrapThrowable(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].handleUnwrapThrowable(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$1100(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setHandshakeFailure(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$1200(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].forceFlush(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].forceFlush(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$1300(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].channelReadComplete0(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].channelReadComplete0(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$1500(io.netty.handler.ssl.SslHandler,io.netty.handler.ssl.SslHandler$SslTasksRunner)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].executeDelegatedTask(io.netty.handler.ssl.SslHandler$SslTasksRunner)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].executeDelegatedTask(io.netty.handler.ssl.SslHandler$SslTasksRunner)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$1600(io.netty.handler.ssl.SslHandler)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].setHandshakeSuccess()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].setHandshakeSuccess()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$1700(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].wrap(io.netty.channel.ChannelHandlerContext,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].wrap(io.netty.channel.ChannelHandlerContext,boolean)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$1800(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 12
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].unwrapNonAppData(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].unwrapNonAppData(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler].access$1900(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 13
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler:169,1"
      Dst: "[io.netty.handler.ssl.SslHandler].wrapNonAppData(io.netty.channel.ChannelHandlerContext,boolean)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup$1].<init>(io.netty.channel.ThreadPerChannelEventLoopGroup)"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ThreadPerChannelEventLoopGroup"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup$1:61,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ThreadPerChannelEventLoopGroup$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.ThreadPerChannelEventLoopGroup$1"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 69
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].isTerminated()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup:io.netty.util.concurrent.PromiseTask].access$000(io.netty.channel.ThreadPerChannelEventLoopGroup)"
    - "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].trySuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].trySuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].trySuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess(java.lang.Object)"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].access$000(io.netty.channel.ThreadPerChannelEventLoopGroup)"
    - "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.channel.ThreadPerChannelEventLoopGroup$1:65"
      Branch Sides:
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup$1:68"
        BranchSideFuncs:
        - "trySuccess(java.lang.Object)"
        - "access$000(io.netty.channel.ThreadPerChannelEventLoopGroup)"
      - BranchSide: "io.netty.channel.ThreadPerChannelEventLoopGroup$1:67"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup$1:65,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoopGroup].isTerminated()"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup$1:66,1"
      Dst: "[io.netty.channel.ThreadPerChannelEventLoopGroup].access$000(io.netty.channel.ThreadPerChannelEventLoopGroup)"
    - Src: "io.netty.channel.ThreadPerChannelEventLoopGroup$1:66,1"
      Dst: "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].<init>()"
    functionSourceFile: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:200,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    functionSourceFile: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 227
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    functionSourceFile: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.NoSuchElementException].<init>()"
    functionUses: 229
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:208,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].remove()"
    functionSourceFile: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:213,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].<init>()"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flush.FlushConsolidationHandler].<init>(int,boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:79,1"
      Dst: "[io.netty.handler.flush.FlushConsolidationHandler].<init>(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].<init>(int)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flush.FlushConsolidationHandler].<init>(int,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:88,1"
      Dst: "[io.netty.handler.flush.FlushConsolidationHandler].<init>(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].<init>(int,boolean)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].<init>(io.netty.handler.flush.FlushConsolidationHandler)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.flush.FlushConsolidationHandler:102"
      Branch Sides:
      - BranchSide: "io.netty.handler.flush.FlushConsolidationHandler:98"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.flush.FlushConsolidationHandler:97"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:98,1"
      Dst: "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:100,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:102,1"
      Dst: "[io.netty.handler.flush.FlushConsolidationHandler$1].<init>(io.netty.handler.flush.FlushConsolidationHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].flush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 141
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flush.FlushConsolidationHandler].flushNow(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.flush.FlushConsolidationHandler].scheduleFlush(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 24
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.flush.FlushConsolidationHandler:123"
      Branch Sides:
      - BranchSide: "io.netty.handler.flush.FlushConsolidationHandler:128"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.flush.FlushConsolidationHandler:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.flush.FlushConsolidationHandler:140"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.flush.FlushConsolidationHandler:139"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.flush.FlushConsolidationHandler:129"
      Branch Sides:
      - BranchSide: "io.netty.handler.flush.FlushConsolidationHandler:137"
        BranchSideFuncs:
        - "flushNow(io.netty.channel.ChannelHandlerContext)"
    - Branch String: "io.netty.handler.flush.FlushConsolidationHandler:131"
      Branch Sides:
      - BranchSide: "io.netty.handler.flush.FlushConsolidationHandler:134"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.flush.FlushConsolidationHandler:133"
        BranchSideFuncs:
        - "scheduleFlush(io.netty.channel.ChannelHandlerContext)"
    Callsites:
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:127,1"
      Dst: "[io.netty.handler.flush.FlushConsolidationHandler].flushNow(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:134,1"
      Dst: "[io.netty.handler.flush.FlushConsolidationHandler].scheduleFlush(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].flushNow(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 201
    functionLinenumberEnd: 206
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flush.FlushConsolidationHandler].cancelScheduledFlush()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 4
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:202,1"
      Dst: "[io.netty.handler.flush.FlushConsolidationHandler].cancelScheduledFlush()"
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:204,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].cancelScheduledFlush()"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 220
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cancel(boolean)"
    - "[java.util.concurrent.CompletableFuture$MinimalStage].cancel(boolean)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[java.util.concurrent.CompletableFuture].cancel(boolean)"
    - "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    - "[java.util.concurrent.ForkJoinTask].cancel(boolean)"
    - "[io.netty.util.concurrent.CompleteFuture].cancel(boolean)"
    - "[io.netty.channel.VoidChannelPromise].cancel(boolean)"
    - "[io.netty.resolver.dns.Cache$1].cancel(boolean)"
    - "[java.util.concurrent.Future].cancel(boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.flush.FlushConsolidationHandler:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.flush.FlushConsolidationHandler:219"
        BranchSideFuncs:
        - "cancel(boolean)"
      - BranchSide: "io.netty.handler.flush.FlushConsolidationHandler:218"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:216,1"
      Dst: "[java.util.concurrent.Future].cancel(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].scheduleFlush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 213
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].submit(java.lang.Runnable)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutorGroup].submit(java.lang.Runnable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.flush.FlushConsolidationHandler:208"
      Branch Sides:
      - BranchSide: "io.netty.handler.flush.FlushConsolidationHandler:211"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:210,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:210,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:210,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].submit(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 148
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flush.FlushConsolidationHandler].resetReadAndFlushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:145,1"
      Dst: "[io.netty.handler.flush.FlushConsolidationHandler].resetReadAndFlushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:146,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].resetReadAndFlushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 194
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flush.FlushConsolidationHandler].flushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:192,1"
      Dst: "[io.netty.handler.flush.FlushConsolidationHandler].flushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].flushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 200
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flush.FlushConsolidationHandler].flushNow(io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.flush.FlushConsolidationHandler:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.flush.FlushConsolidationHandler:199"
        BranchSideFuncs:
        - "flushNow(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.flush.FlushConsolidationHandler:198"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:197,1"
      Dst: "[io.netty.handler.flush.FlushConsolidationHandler].flushNow(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:152,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 161
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flush.FlushConsolidationHandler].resetReadAndFlushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 3
    ICount: 6
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:158,1"
      Dst: "[io.netty.handler.flush.FlushConsolidationHandler].resetReadAndFlushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:159,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 168
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flush.FlushConsolidationHandler].resetReadAndFlushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:165,1"
      Dst: "[io.netty.handler.flush.FlushConsolidationHandler].resetReadAndFlushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:166,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 175
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flush.FlushConsolidationHandler].resetReadAndFlushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:172,1"
      Dst: "[io.netty.handler.flush.FlushConsolidationHandler].resetReadAndFlushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:173,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 184
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannel].isWritable()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isWritable()"
    - "[io.netty.handler.flush.FlushConsolidationHandler].flushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelWritabilityChanged()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelWritabilityChanged()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].isWritable()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelWritabilityChanged()"
    functionUses: 3
    ICount: 8
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.flush.FlushConsolidationHandler:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.flush.FlushConsolidationHandler:181"
        BranchSideFuncs:
        - "fireChannelWritabilityChanged()"
    Callsites:
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:178,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:178,1"
      Dst: "[io.netty.channel.Channel].isWritable()"
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:180,1"
      Dst: "[io.netty.handler.flush.FlushConsolidationHandler].flushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:182,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelWritabilityChanged()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].handlerRemoved(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 189
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flush.FlushConsolidationHandler].flushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flush.FlushConsolidationHandler:187,1"
      Dst: "[io.netty.handler.flush.FlushConsolidationHandler].flushIfNeeded(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].access$000(io.netty.handler.flush.FlushConsolidationHandler)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.flush.FlushConsolidationHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].access$100(io.netty.handler.flush.FlushConsolidationHandler)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.flush.FlushConsolidationHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].access$002(io.netty.handler.flush.FlushConsolidationHandler,int)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.handler.flush.FlushConsolidationHandler"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].access$202(io.netty.handler.flush.FlushConsolidationHandler,java.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "java.util.concurrent.Future"
    argCount: 2
    argTypes:
    - "io.netty.handler.flush.FlushConsolidationHandler"
    - "java.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flush.FlushConsolidationHandler].access$300(io.netty.handler.flush.FlushConsolidationHandler)"
    functionSourceFile: "io.netty.handler.flush.FlushConsolidationHandler"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "io.netty.handler.flush.FlushConsolidationHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].<init>(boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageCodec].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:71,1"
      Dst: "[io.netty.handler.codec.MessageToMessageCodec].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].<init>(boolean,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:77,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].<init>(boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].acceptInboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:82"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:81"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:82"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:81"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2StreamFrame,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 129
    functionDepth: 13
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2StreamFrame"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].headers()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].id()"
    - "[io.netty.handler.codec.http2.EmptyHttp2Headers].status()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].status()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].status()"
    - "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].isInformationalResponseHeaderFrame(java.lang.CharSequence)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].newFullMessage(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].isEndStream()"
    - "[io.netty.handler.codec.http2.EmptyHttp2Headers].method()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].method()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].method()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>(io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean,boolean)"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].trailingHeaders()"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].newMessage(int,io.netty.handler.codec.http2.Http2Headers)"
    - "[io.netty.handler.codec.http.HttpUtil].isContentLengthSet(io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage:java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].isEndStream()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].content()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2HeadersFrame].headers()"
    - "[io.netty.handler.codec.http2.Http2StreamFrame].stream()"
    - "[io.netty.handler.codec.http2.Http2FrameStream].id()"
    - "[io.netty.handler.codec.http2.Http2Headers].status()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2HeadersFrame].isEndStream()"
    - "[io.netty.handler.codec.http2.Http2Headers].method()"
    - "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http2.Http2DataFrame].isEndStream()"
    - "[io.netty.handler.codec.http2.Http2DataFrame].content()"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 1
    ICount: 67
    EdgeCount: 73
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:87"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:87"
        BranchSideFuncs:
        - "id()"
        - "stream()"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:86"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:91"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:88"
        BranchSideFuncs:
        - "status()"
        - "id()"
        - "isInformationalResponseHeaderFrame(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:87"
        BranchSideFuncs:
        - "id()"
        - "stream()"
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:97"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:97"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:103"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:114"
        BranchSideFuncs:
        - "method()"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:113"
        BranchSideFuncs:
        - "isContentLengthSet(io.netty.handler.codec.http.HttpMessage)"
        - "newMessage(int,io.netty.handler.codec.http2.Http2Headers)"
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:110"
        BranchSideFuncs:
        - "trailingHeaders()"
        - "addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean,boolean)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:109"
        BranchSideFuncs:
        - "newFullMessage(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator)"
        - "alloc()"
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:110"
        BranchSideFuncs:
        - "trailingHeaders()"
        - "addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean,boolean)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:109"
        BranchSideFuncs:
        - "newFullMessage(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator)"
        - "alloc()"
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:115"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:118"
        BranchSideFuncs:
        - "add(java.lang.CharSequence,java.lang.Object)"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:117"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:87"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:128"
        BranchSideFuncs:
        - "id()"
        - "stream()"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:127"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:122"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:125"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf,boolean)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:124"
        BranchSideFuncs:
        - "content()"
        - "add(java.lang.Object)"
        - "retain()"
        - "<init>(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:89,1"
      Dst: "[io.netty.handler.codec.http2.Http2HeadersFrame].headers()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:90,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrame].stream()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:91,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameStream].id()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:93,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers].status()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:97,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].isInformationalResponseHeaderFrame(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:98,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:98,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].newFullMessage(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:99,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:103,1"
      Dst: "[io.netty.handler.codec.http2.Http2HeadersFrame].isEndStream()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:104,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers].method()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:105,1"
      Dst: "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>(io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:106,1"
      Dst: "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:106,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpVersion,boolean,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:114,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].newMessage(int,io.netty.handler.codec.http2.Http2Headers)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:115,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].isContentLengthSet(io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:116,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:116,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:122,1"
      Dst: "[io.netty.handler.codec.http2.Http2DataFrame].isEndStream()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:123,1"
      Dst: "[io.netty.handler.codec.http2.Http2DataFrame].content()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:123,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:125,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpContent].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].isInformationalResponseHeaderFrame(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec"
    linkageType: ""
    functionLinenumber: 260
    functionLinenumberEnd: 270
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.CharBuffer].length()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.AbstractStringBuilder].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuffer].length()"
    - "[java.lang.StringBuffer].charAt(int)"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.lang.StringBuilder].charAt(int)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.AbstractStringBuilder].charAt(int)"
    - "[io.netty.util.internal.AppendableCharSequence].charAt(int)"
    - "[java.nio.CharBuffer].charAt(int)"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 1
    ICount: 23
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:261"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:269"
        BranchSideFuncs:
        - "charAt(int)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:268"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:265"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:265"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:265"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:265"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:265"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:265"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:261,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:262,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].newFullMessage(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 218
    functionDepth: 12
    returnType: "io.netty.handler.codec.http.FullHttpMessage"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toFullHttpRequest(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator,boolean)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toFullHttpResponse(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator,boolean)"
    functionUses: 2
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:217"
        BranchSideFuncs:
        - "toFullHttpRequest(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator,boolean)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:216"
        BranchSideFuncs:
        - "toFullHttpResponse(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator,boolean)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:216,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toFullHttpRequest(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:217,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toFullHttpResponse(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].newMessage(int,io.netty.handler.codec.http2.Http2Headers)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 210
    functionDepth: 11
    returnType: "io.netty.handler.codec.http.HttpMessage"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toHttpRequest(int,io.netty.handler.codec.http2.Http2Headers,boolean)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toHttpResponse(int,io.netty.handler.codec.http2.Http2Headers,boolean)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:207"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:209"
        BranchSideFuncs:
        - "toHttpRequest(int,io.netty.handler.codec.http2.Http2Headers,boolean)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:208"
        BranchSideFuncs:
        - "toHttpResponse(int,io.netty.handler.codec.http2.Http2Headers,boolean)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:208,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttpRequest(int,io.netty.handler.codec.http2.Http2Headers,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:209,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttpResponse(int,io.netty.handler.codec.http2.Http2Headers,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].encodeLastContent(io.netty.handler.codec.http.LastHttpContent,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 140
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.LastHttpContent"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].trailingHeaders()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].trailingHeaders()"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].content()"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].content()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].content()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].<init>(io.netty.handler.codec.http2.Http2Headers,boolean)"
    - "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpHeaders].isEmpty()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].retain()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 32
    EdgeCount: 87
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:131"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:131"
        BranchSideFuncs:
        - "isReadable()"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:130"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:131"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:131"
        BranchSideFuncs:
        - "isReadable()"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:130"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:132"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:133"
        BranchSideFuncs:
        - "content()"
        - "retain()"
        - "<init>(io.netty.buffer.ByteBuf,boolean)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:132"
        BranchSideFuncs:
        - "content()"
        - "retain()"
        - "<init>(io.netty.buffer.ByteBuf,boolean)"
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:132"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:135"
        BranchSideFuncs:
        - "content()"
        - "retain()"
        - "<init>(io.netty.buffer.ByteBuf,boolean)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:134"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:135"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:139"
        BranchSideFuncs:
        - "trailingHeaders()"
        - "add(java.lang.Object)"
        - "<init>(io.netty.handler.codec.http2.Http2Headers,boolean)"
        - "toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,boolean)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:138"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:131,1"
      Dst: "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:131,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].isEmpty()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:132,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:132,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:133,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:133,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:133,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:136,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:137,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].<init>(io.netty.handler.codec.http2.Http2Headers,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean,int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:62,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpObject,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 194
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.HttpObject"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].codeClass()"
    - "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].toHttp2Headers(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].<init>(io.netty.handler.codec.http2.Http2Headers,boolean)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].content()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].isEmpty()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].trailingHeaders()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].trailingHeaders()"
    - "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].encodeLastContent(io.netty.handler.codec.http.LastHttpContent,java.util.List)"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.handler.codec.http.LastHttpContent$1].content()"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].content()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].content()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpHeaders].isEmpty()"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 1
    ICount: 63
    EdgeCount: 74
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:175"
        BranchSideFuncs:
        - "status()"
        - "code()"
        - "codeClass()"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:174"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:164"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:175"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:174"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:164"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:175"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:174"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:165"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:170"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:169"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:186"
        BranchSideFuncs:
        - "toHttp2Headers(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpMessage)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:185"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:183"
        BranchSideFuncs:
        - "isEmpty()"
        - "isReadable()"
        - "trailingHeaders()"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:182"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http2.Http2Headers,boolean)"
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:180"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:178"
        BranchSideFuncs:
        - "isEmpty()"
        - "isReadable()"
        - "trailingHeaders()"
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:180"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:178"
        BranchSideFuncs:
        - "isEmpty()"
        - "isReadable()"
        - "trailingHeaders()"
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:186"
        BranchSideFuncs:
        - "encodeLastContent(io.netty.handler.codec.http.LastHttpContent,java.util.List)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:185"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:193"
        BranchSideFuncs:
        - "encodeLastContent(io.netty.handler.codec.http.LastHttpContent,java.util.List)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:192"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:159,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:160,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:161,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].codeClass()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:166,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].toHttp2Headers(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:167,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].<init>(io.netty.handler.codec.http2.Http2Headers,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:167,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:170,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:170,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:170,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:170,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:170,1"
      Dst: "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:180,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:180,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:180,1"
      Dst: "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:180,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].isEmpty()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:188,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].encodeLastContent(io.netty.handler.codec.http.LastHttpContent,java.util.List)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:191,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:191,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].toHttp2Headers(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 203
    functionDepth: 8
    returnType: "io.netty.handler.codec.http2.Http2Headers"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.HttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].connectionScheme(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpMessage,boolean)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 2
    ICount: 13
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:202"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:201"
        BranchSideFuncs:
        - "toHttp2Headers(io.netty.handler.codec.http.HttpMessage,boolean)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:197,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:198,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:199,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].connectionScheme(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:197,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:202,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpMessage,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].connectionScheme(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec"
    linkageType: ""
    functionLinenumber: 241
    functionLinenumberEnd: 244
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.HttpScheme"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].connectionSchemeAttribute(io.netty.channel.ChannelHandlerContext)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[io.netty.util.Attribute].get()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:243"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:241"
        BranchSideFuncs:
        - "connectionSchemeAttribute(io.netty.channel.ChannelHandlerContext)"
        - "get()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:242,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].connectionSchemeAttribute(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:242,1"
      Dst: "[io.netty.util.Attribute].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].connectionSchemeAttribute(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec"
    linkageType: ""
    functionLinenumber: 246
    functionLinenumberEnd: 249
    functionDepth: 1
    returnType: "io.netty.util.Attribute<HttpScheme>"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].connectionChannel(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.util.DefaultAttributeMap].attr(io.netty.util.AttributeKey)"
    - "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:247,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].connectionChannel(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:248,1"
      Dst: "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].connectionChannel(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec"
    linkageType: ""
    functionLinenumber: 251
    functionLinenumberEnd: 254
    functionDepth: 0
    returnType: "io.netty.channel.Channel"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].parent()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].parent()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].parent()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].parent()"
    - "[io.netty.channel.epoll.EpollSocketChannel].parent()"
    - "[io.netty.channel.local.LocalChannel].parent()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].parent()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].parent()"
    - "[io.netty.channel.AbstractChannel].parent()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].parent()"
    functionUses: 2
    ICount: 8
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:253"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:251"
        BranchSideFuncs:
        - "parent()"
        - "channel()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:252,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:253,1"
      Dst: "[io.netty.channel.Channel].parent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 235
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerAdapter].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].connectionSchemeAttribute(io.netty.channel.ChannelHandlerContext)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].isSsl(io.netty.channel.ChannelHandlerContext)"
    - "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    - "[io.netty.util.Attribute].get()"
    - "[io.netty.util.Attribute].set(java.lang.Object)"
    functionUses: 4
    ICount: 13
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:230"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:234"
        BranchSideFuncs:
        - "isSsl(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:233"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:231"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:231"
        BranchSideFuncs:
        - "set(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:230"
        BranchSideFuncs:
        - "isSsl(io.netty.channel.ChannelHandlerContext)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:222,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:229,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].connectionSchemeAttribute(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:230,1"
      Dst: "[io.netty.util.Attribute].get()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:231,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].isSsl(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:232,1"
      Dst: "[io.netty.util.Attribute].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].isSsl(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec"
    linkageType: ""
    functionLinenumber: 236
    functionLinenumberEnd: 239
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].connectionChannel(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline].get(java.lang.Class)"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.channel.Channel].pipeline()"
    - "[io.netty.channel.ChannelPipeline].get(java.lang.Class)"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:238"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:236"
        BranchSideFuncs:
        - "pipeline()"
        - "get(java.lang.Class)"
        - "connectionChannel(io.netty.channel.ChannelHandlerContext)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:237,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].connectionChannel(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:238,1"
      Dst: "[io.netty.channel.Channel].pipeline()"
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:238,1"
      Dst: "[io.netty.channel.ChannelPipeline].get(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2StreamFrame,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:60,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2StreamFrame,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpObject,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec:60,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrameToHttpObjectCodec].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpObject,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.ProxyConnectException].<init>()"
    functionSourceFile: "io.netty.handler.proxy.ProxyConnectException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ConnectException].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.ProxyConnectException:24,1"
      Dst: "[java.net.ConnectException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.ProxyConnectException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.proxy.ProxyConnectException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ConnectException].<init>()"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.ProxyConnectException:30,1"
      Dst: "[java.net.ConnectException].<init>()"
    - Src: "io.netty.handler.proxy.ProxyConnectException:31,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.ProxyConnectException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.proxy.ProxyConnectException"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ConnectException].<init>(java.lang.String)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.ProxyConnectException:35,1"
      Dst: "[java.net.ConnectException].<init>(java.lang.String)"
    - Src: "io.netty.handler.proxy.ProxyConnectException:36,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Epoll].ensureAvailability()"
    functionSourceFile: "io.netty.channel.epoll.Epoll"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsatisfiedLinkError].<init>(java.lang.String)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.Epoll:80"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Epoll:84"
        BranchSideFuncs:
        - "initCause(java.lang.Throwable)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.epoll.Epoll:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.Epoll:81,1"
      Dst: "[java.lang.UnsatisfiedLinkError].<init>(java.lang.String)"
    - Src: "io.netty.channel.epoll.Epoll:82,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Epoll].unavailabilityCause()"
    functionSourceFile: "io.netty.channel.epoll.Epoll"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.Epoll].isTcpFastOpenClientSideAvailable()"
    functionSourceFile: "io.netty.channel.epoll.Epoll"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.Epoll].isAvailable()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.Epoll:103"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Epoll:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.Epoll:103"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Epoll:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.Epoll:103,1"
      Dst: "[io.netty.channel.epoll.Epoll].isAvailable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.epoll.Epoll].isTcpFastOpenServerSideAvailable()"
    functionSourceFile: "io.netty.channel.epoll.Epoll"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.Epoll].isAvailable()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.Epoll:113"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Epoll:112"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.Epoll:113"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.Epoll:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.Epoll:113,1"
      Dst: "[io.netty.channel.epoll.Epoll].isAvailable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.epoll.Epoll].<init>()"
    functionSourceFile: "io.netty.channel.epoll.Epoll"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.Epoll:116,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail].<init>(int,long,byte[])"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "long"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 11
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail:77,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail:80,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].windowSize()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].initialWindowSize()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState"
    linkageType: ""
    functionLinenumber: 374
    functionLinenumberEnd: 376
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].endOfStream(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState"
    linkageType: ""
    functionLinenumber: 379
    functionLinenumberEnd: 382
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].windowUpdateRatio()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].windowUpdateRatio(float)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$400(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[java.lang.AssertionError].<init>()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:390"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:391"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:390"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:390"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:391"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:390"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:390"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:391"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:390"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:390,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$400(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:390,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:390,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:390,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].incrementInitialStreamWindow(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState"
    linkageType: ""
    functionLinenumber: 396
    functionLinenumberEnd: 403
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(long,long)"
    - "[java.lang.Math].max(long,long)"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:398,1"
      Dst: "[java.lang.Math].max(long,long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:397,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].incrementFlowControlWindows(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState"
    linkageType: ""
    functionLinenumber: 405
    functionLinenumberEnd: 415
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    functionUses: 2
    ICount: 25
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:406"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:411"
        BranchSideFuncs:
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:410"
        BranchSideFuncs:
        - "min(int,int)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:406"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:411"
        BranchSideFuncs:
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:410"
        BranchSideFuncs:
        - "min(int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:407,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:408,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:407,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:413,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].receiveFlowControlledFrame(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState"
    linkageType: ""
    functionLinenumber: 417
    functionLinenumberEnd: 433
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    functionUses: 3
    ICount: 25
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:418"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:420"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:418"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:420"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:428"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:432"
        BranchSideFuncs:
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:431"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:418,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:429,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:430,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:429,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].returnProcessedBytes(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState"
    linkageType: ""
    functionLinenumber: 434
    functionLinenumberEnd: 441
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    functionUses: 1
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:435"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:439"
        BranchSideFuncs:
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:438"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:436,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:437,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:436,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].consumeBytes(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState"
    linkageType: ""
    functionLinenumber: 444
    functionLinenumberEnd: 447
    functionDepth: 8
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].returnProcessedBytes(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].writeWindowUpdateIfNeeded()"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:445,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].returnProcessedBytes(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:446,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].writeWindowUpdateIfNeeded()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].writeWindowUpdateIfNeeded()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState"
    linkageType: ""
    functionLinenumber: 455
    functionLinenumberEnd: 468
    functionDepth: 7
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$700(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].writeWindowUpdate()"
    functionUses: 2
    ICount: 19
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:456"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:458"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:456"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:458"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:458"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:462"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:461"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:463"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:467"
        BranchSideFuncs:
        - "writeWindowUpdate()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:466"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:458,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$700(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:464,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].writeWindowUpdate()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].writeWindowUpdate()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState"
    linkageType: ""
    functionLinenumber: 475
    functionLinenumberEnd: 487
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].incrementFlowControlWindows(int)"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$400(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$800(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeWindowUpdate(io.netty.channel.ChannelHandlerContext,int,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeWindowUpdate(io.netty.channel.ChannelHandlerContext,int,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeWindowUpdate(io.netty.channel.ChannelHandlerContext,int,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeWindowUpdate(io.netty.channel.ChannelHandlerContext,int,int,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeWindowUpdate(io.netty.channel.ChannelHandlerContext,int,int,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 26
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:478,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].incrementFlowControlWindows(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:481,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:481,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:480,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:485,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$800(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:485,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$400(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:485,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState:485,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeWindowUpdate(io.netty.channel.ChannelHandlerContext,int,int,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].unconsumedBytes()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState"
    linkageType: ""
    functionLinenumber: 450
    functionLinenumberEnd: 452
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LoggingHandler].<init>()"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.logging.LoggingHandler].<init>(io.netty.handler.logging.LogLevel)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:57,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].<init>(io.netty.handler.logging.LogLevel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LoggingHandler].<init>(io.netty.handler.logging.ByteBufFormat)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.logging.ByteBufFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.logging.LoggingHandler].<init>(io.netty.handler.logging.LogLevel,io.netty.handler.logging.ByteBufFormat)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:66,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].<init>(io.netty.handler.logging.LogLevel,io.netty.handler.logging.ByteBufFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LoggingHandler].<init>(io.netty.handler.logging.LogLevel)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.logging.LogLevel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.logging.LoggingHandler].<init>(io.netty.handler.logging.LogLevel,io.netty.handler.logging.ByteBufFormat)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:76,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].<init>(io.netty.handler.logging.LogLevel,io.netty.handler.logging.ByteBufFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LoggingHandler].<init>(io.netty.handler.logging.LogLevel,io.netty.handler.logging.ByteBufFormat)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.logging.LogLevel"
    - "io.netty.handler.logging.ByteBufFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.Class)"
    - "[io.netty.handler.logging.LogLevel].toInternalLevel()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:86,1"
      Dst: "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - Src: "io.netty.handler.logging.LoggingHandler:87,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:89,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.logging.LoggingHandler:89,1"
      Dst: "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.Class)"
    - Src: "io.netty.handler.logging.LoggingHandler:90,1"
      Dst: "[io.netty.handler.logging.LogLevel].toInternalLevel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LoggingHandler].<init>(java.lang.Class)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.logging.LoggingHandler].<init>(java.lang.Class,io.netty.handler.logging.LogLevel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:100,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].<init>(java.lang.Class,io.netty.handler.logging.LogLevel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LoggingHandler].<init>(java.lang.Class,io.netty.handler.logging.LogLevel)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "io.netty.handler.logging.LogLevel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.logging.LoggingHandler].<init>(java.lang.Class,io.netty.handler.logging.LogLevel,io.netty.handler.logging.ByteBufFormat)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:110,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].<init>(java.lang.Class,io.netty.handler.logging.LogLevel,io.netty.handler.logging.ByteBufFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LoggingHandler].<init>(java.lang.Class,io.netty.handler.logging.LogLevel,io.netty.handler.logging.ByteBufFormat)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Class"
    - "io.netty.handler.logging.LogLevel"
    - "io.netty.handler.logging.ByteBufFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.Class)"
    - "[io.netty.handler.logging.LogLevel].toInternalLevel()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:120,1"
      Dst: "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - Src: "io.netty.handler.logging.LoggingHandler:121,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:124,1"
      Dst: "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.Class)"
    - Src: "io.netty.handler.logging.LoggingHandler:125,1"
      Dst: "[io.netty.handler.logging.LogLevel].toInternalLevel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LoggingHandler].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.logging.LoggingHandler].<init>(java.lang.String,io.netty.handler.logging.LogLevel)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:134,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].<init>(java.lang.String,io.netty.handler.logging.LogLevel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LoggingHandler].<init>(java.lang.String,io.netty.handler.logging.LogLevel)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.logging.LogLevel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.logging.LoggingHandler].<init>(java.lang.String,io.netty.handler.logging.LogLevel,io.netty.handler.logging.ByteBufFormat)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:144,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].<init>(java.lang.String,io.netty.handler.logging.LogLevel,io.netty.handler.logging.ByteBufFormat)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LoggingHandler].<init>(java.lang.String,io.netty.handler.logging.LogLevel,io.netty.handler.logging.ByteBufFormat)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.logging.LogLevel"
    - "io.netty.handler.logging.ByteBufFormat"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.String)"
    - "[io.netty.handler.logging.LogLevel].toInternalLevel()"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:154,1"
      Dst: "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - Src: "io.netty.handler.logging.LoggingHandler:155,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:159,1"
      Dst: "[io.netty.util.internal.logging.InternalLoggerFactory].getInstance(java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:160,1"
      Dst: "[io.netty.handler.logging.LogLevel].toInternalLevel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LoggingHandler].level()"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.logging.LogLevel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LoggingHandler].byteBufFormat()"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.logging.ByteBufFormat"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LoggingHandler].channelRegistered(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 184
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRegistered()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRegistered()"
    - "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRegistered()"
    functionUses: 3
    ICount: 12
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:179"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:182"
        BranchSideFuncs:
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
        - "format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:181"
        BranchSideFuncs:
        - "fireChannelRegistered()"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:179,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - Src: "io.netty.handler.logging.LoggingHandler:180,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:180,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:182,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRegistered()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 312
    functionLinenumberEnd: 319
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].toString()"
    - "[io.netty.channel.AbstractChannel].toString()"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[java.lang.Object].toString()"
    functionUses: 10
    ICount: 16
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:313,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.logging.LoggingHandler:313,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "io.netty.handler.logging.LoggingHandler:314,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.logging.LoggingHandler:314,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.logging.LoggingHandler:315,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:316,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.logging.LoggingHandler:318,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LoggingHandler].channelUnregistered(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 192
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelUnregistered()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelUnregistered()"
    - "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelUnregistered()"
    functionUses: 3
    ICount: 12
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:190"
        BranchSideFuncs:
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
        - "format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:189"
        BranchSideFuncs:
        - "fireChannelUnregistered()"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:187,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - Src: "io.netty.handler.logging.LoggingHandler:188,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:188,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:190,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelUnregistered()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.logging.LoggingHandler].channelActive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 200
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelActive()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelActive()"
    - "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelActive()"
    functionUses: 3
    ICount: 12
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:195"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:198"
        BranchSideFuncs:
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
        - "format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:197"
        BranchSideFuncs:
        - "fireChannelActive()"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:195,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - Src: "io.netty.handler.logging.LoggingHandler:196,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:196,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:198,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelActive()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.logging.LoggingHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 208
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelInactive()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelInactive()"
    - "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelInactive()"
    functionUses: 3
    ICount: 12
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:203"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:206"
        BranchSideFuncs:
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
        - "format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:205"
        BranchSideFuncs:
        - "fireChannelInactive()"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:203,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - Src: "io.netty.handler.logging.LoggingHandler:204,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:204,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:206,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelInactive()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.logging.LoggingHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 216
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 3
    ICount: 13
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:211"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:214"
        BranchSideFuncs:
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Throwable)"
        - "format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:213"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:211,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - Src: "io.netty.handler.logging.LoggingHandler:212,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
    - Src: "io.netty.handler.logging.LoggingHandler:212,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.logging.LoggingHandler:214,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 327
    functionLinenumberEnd: 334
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.logging.LoggingHandler].formatByteBuf(io.netty.channel.ChannelHandlerContext,java.lang.String,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.logging.LoggingHandler].formatByteBufHolder(io.netty.channel.ChannelHandlerContext,java.lang.String,io.netty.buffer.ByteBufHolder)"
    - "[io.netty.handler.logging.LoggingHandler].formatSimple(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
    functionUses: 5
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:328"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:330"
        BranchSideFuncs:
        - "formatByteBuf(io.netty.channel.ChannelHandlerContext,java.lang.String,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:329"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.logging.LoggingHandler:330"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:333"
        BranchSideFuncs:
        - "formatByteBufHolder(io.netty.channel.ChannelHandlerContext,java.lang.String,io.netty.buffer.ByteBufHolder)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:332"
        BranchSideFuncs:
        - "formatSimple(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:329,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].formatByteBuf(io.netty.channel.ChannelHandlerContext,java.lang.String,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.logging.LoggingHandler:331,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].formatByteBufHolder(io.netty.channel.ChannelHandlerContext,java.lang.String,io.netty.buffer.ByteBufHolder)"
    - Src: "io.netty.handler.logging.LoggingHandler:333,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].formatSimple(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LoggingHandler].formatByteBuf(io.netty.channel.ChannelHandlerContext,java.lang.String,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 362
    functionLinenumberEnd: 384
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.String"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].toString()"
    - "[io.netty.channel.AbstractChannel].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.buffer.ByteBufUtil].appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[java.lang.Object].toString()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 1
    ICount: 58
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:365"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:370"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.logging.LoggingHandler:369"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.handler.logging.LoggingHandler:371"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:376"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.logging.LoggingHandler:375"
        BranchSideFuncs:
        - "<init>(int)"
        - "append(char)"
        - "append(int)"
    - Branch String: "io.netty.handler.logging.LoggingHandler:372"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:372"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.logging.LoggingHandler:371"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.logging.LoggingHandler:378"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:383"
        BranchSideFuncs:
        - "appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf)"
        - "append(java.lang.String)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:382"
        BranchSideFuncs:
        - "toString()"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:363,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.logging.LoggingHandler:363,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "io.netty.handler.logging.LoggingHandler:364,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.logging.LoggingHandler:366,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.logging.LoggingHandler:366,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.logging.LoggingHandler:367,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:367,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.logging.LoggingHandler:368,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.logging.LoggingHandler:377,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.logging.LoggingHandler:380,1"
      Dst: "[io.netty.buffer.ByteBufUtil].appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.logging.LoggingHandler].formatByteBufHolder(io.netty.channel.ChannelHandlerContext,java.lang.String,io.netty.buffer.ByteBufHolder)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 390
    functionLinenumberEnd: 415
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.String"
    - "io.netty.buffer.ByteBufHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].toString()"
    - "[io.netty.channel.AbstractChannel].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].toString()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].toString()"
    - "[io.netty.handler.ssl.PemX509Certificate].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].toString()"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].toString()"
    - "[io.netty.buffer.DefaultByteBufHolder].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].toString()"
    - "[io.netty.channel.sctp.SctpMessage].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].toString()"
    - "[io.netty.channel.DefaultAddressedEnvelope].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].toString()"
    - "[java.lang.Object].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].toString()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].toString()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].toString()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].toString()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - "[io.netty.handler.codec.redis.LastBulkStringRedisContent$1].content()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].content()"
    - "[io.netty.handler.codec.smtp.LastSmtpContent$1].content()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].content()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheRequest].content()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].content()"
    - "[io.netty.handler.codec.stomp.LastStompContentSubframe$1].content()"
    - "[io.netty.handler.ssl.PemValue].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.handler.ssl.PemX509Certificate].content()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].content()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].content()"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].content()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].content()"
    - "[io.netty.handler.codec.memcache.LastMemcacheContent$1].content()"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].content()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$2].content()"
    - "[io.netty.handler.ssl.PemPrivateKey].content()"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].content()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].content()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].content()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].content()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].content()"
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.channel.unix.DomainDatagramPacket].content()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.buffer.ByteBufUtil].appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 1
    ICount: 70
    EdgeCount: 101
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:395"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:400"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.logging.LoggingHandler:399"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.handler.logging.LoggingHandler:401"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:406"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.logging.LoggingHandler:405"
        BranchSideFuncs:
        - "<init>(int)"
        - "append(char)"
        - "append(int)"
    - Branch String: "io.netty.handler.logging.LoggingHandler:402"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:402"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.logging.LoggingHandler:401"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.logging.LoggingHandler:409"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:414"
        BranchSideFuncs:
        - "appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf)"
        - "append(java.lang.String)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:413"
        BranchSideFuncs:
        - "toString()"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:391,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.logging.LoggingHandler:391,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "io.netty.handler.logging.LoggingHandler:393,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.logging.LoggingHandler:394,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.logging.LoggingHandler:396,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.logging.LoggingHandler:396,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.logging.LoggingHandler:397,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:397,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.logging.LoggingHandler:398,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.logging.LoggingHandler:408,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.logging.LoggingHandler:411,1"
      Dst: "[io.netty.buffer.ByteBufUtil].appendPrettyHexDump(java.lang.StringBuilder,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.logging.LoggingHandler].formatSimple(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 421
    functionLinenumberEnd: 426
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].toString()"
    - "[io.netty.channel.AbstractChannel].toString()"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[java.lang.Object].toString()"
    functionUses: 2
    ICount: 22
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:422,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.logging.LoggingHandler:422,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "io.netty.handler.logging.LoggingHandler:423,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "io.netty.handler.logging.LoggingHandler:424,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.logging.LoggingHandler:424,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.logging.LoggingHandler:425,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:425,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.logging.LoggingHandler:425,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LoggingHandler].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 224
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    functionUses: 3
    ICount: 13
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:219"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:222"
        BranchSideFuncs:
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
        - "format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:221"
        BranchSideFuncs:
        - "fireUserEventTriggered(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:219,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - Src: "io.netty.handler.logging.LoggingHandler:220,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
    - Src: "io.netty.handler.logging.LoggingHandler:220,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:222,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.logging.LoggingHandler].bind(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 226
    functionLinenumberEnd: 232
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.AbstractChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 14
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:227"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:230"
        BranchSideFuncs:
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
        - "format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:229"
        BranchSideFuncs:
        - "bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:227,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - Src: "io.netty.handler.logging.LoggingHandler:228,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
    - Src: "io.netty.handler.logging.LoggingHandler:228,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:230,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.logging.LoggingHandler].connect(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 236
    functionLinenumberEnd: 242
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.AbstractChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 15
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:237"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:240"
        BranchSideFuncs:
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
        - "format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:239"
        BranchSideFuncs:
        - "connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:237,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - Src: "io.netty.handler.logging.LoggingHandler:238,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.logging.LoggingHandler:238,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:240,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 345
    functionLinenumberEnd: 357
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.logging.LoggingHandler].formatSimple(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].toString()"
    - "[io.netty.channel.AbstractChannel].toString()"
    - "[java.lang.String].valueOf(java.lang.Object)"
    - "[io.netty.channel.ReflectiveChannelFactory].toString()"
    - "[sun.security.x509.SerialNumber].toString()"
    - "[io.netty.util.Version].toString()"
    - "[javax.net.ssl.SSLEngineResult].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].toString()"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].toString()"
    - "[java.util.AbstractCollection].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[sun.security.x509.CertificateAlgorithmId].toString()"
    - "[io.netty.buffer.PoolSubpage].toString()"
    - "[java.net.InetSocketAddress].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[java.lang.ProcessBuilder$Redirect$3].toString()"
    - "[io.netty.util.Recycler$1].toString()"
    - "[sun.security.x509.PolicyConstraintsExtension].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].toString()"
    - "[java.nio.charset.Charset].toString()"
    - "[java.util.Properties].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].toString()"
    - "[sun.security.util.JarConstraintsParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].toString()"
    - "[java.lang.reflect.Constructor].toString()"
    - "[java.nio.DoubleBuffer].toString()"
    - "[io.netty.util.Signal].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Thread].toString()"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].toString()"
    - "[java.lang.Throwable].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$CompositePrinterParser].toString()"
    - "[io.netty.channel.embedded.EmbeddedSocketAddress].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].toString()"
    - "[java.util.regex.Matcher].toString()"
    - "[java.lang.reflect.Field].toString()"
    - "[java.lang.invoke.MethodHandles$Lookup].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.net.URL].toString()"
    - "[java.lang.invoke.LambdaForm$Name].toString()"
    - "[sun.security.x509.RDN].toString()"
    - "[java.util.concurrent.atomic.AtomicReference].toString()"
    - "[java.util.Currency].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].toString()"
    - "[io.netty.channel.kqueue.NativeLongArray].toString()"
    - "[io.netty.handler.proxy.ProxyConnectionEvent].toString()"
    - "[java.util.Formatter].toString()"
    - "[java.lang.ModuleLayer].toString()"
    - "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - "[io.netty.handler.ssl.SslCompletionEvent].toString()"
    - "[io.netty.bootstrap.BootstrapConfig].toString()"
    - "[java.lang.ProcessBuilder$Redirect$1].toString()"
    - "[io.netty.handler.codec.xml.XmlEntityReference].toString()"
    - "[java.net.Proxy].toString()"
    - "[sun.security.util.DerValue].toString()"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].toString()"
    - "[sun.security.x509.AlgorithmId].toString()"
    - "[java.text.AttributedCharacterIterator$Attribute].toString()"
    - "[java.lang.Runtime$Version].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$2].toString()"
    - "[java.lang.module.ModuleDescriptor$Exports].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].toString()"
    - "[io.netty.channel.kqueue.AcceptFilter].toString()"
    - "[sun.security.x509.SubjectKeyIdentifierExtension].toString()"
    - "[io.netty.buffer.DefaultByteBufHolder].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.time.temporal.ChronoField].toString()"
    - "[java.security.PermissionCollection].toString()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].toString()"
    - "[java.util.concurrent.ConcurrentHashMap].toString()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].toString()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].toString()"
    - "[java.util.Vector].toString()"
    - "[io.netty.handler.codec.http.HttpVersion].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].toString()"
    - "[java.text.CalendarBuilder].toString()"
    - "[java.net.URLConnection].toString()"
    - "[java.util.EventObject].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].toString()"
    - "[io.netty.util.AbstractConstant].toString()"
    - "[sun.reflect.annotation.TypeAnnotation].toString()"
    - "[java.security.SecureRandom].toString()"
    - "[java.util.concurrent.atomic.AtomicLong].toString()"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].toString()"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].toString()"
    - "[sun.util.calendar.Era].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].toString()"
    - "[java.lang.module.ModuleDescriptor$Requires].toString()"
    - "[java.time.ZonedDateTime].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache].toString()"
    - "[java.math.MutableBigInteger].toString()"
    - "[java.lang.module.ModuleDescriptor$Provides].toString()"
    - "[java.net.InetSocketAddress$InetSocketAddressHolder].toString()"
    - "[sun.security.x509.GeneralNames].toString()"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].toString()"
    - "[sun.security.x509.Extension].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].toString()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].toString()"
    - "[io.netty.handler.ssl.util.LazyX509Certificate].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].toString()"
    - "[sun.security.x509.ExtendedKeyUsageExtension].toString()"
    - "[io.netty.buffer.WrappedByteBuf].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].toString()"
    - "[java.security.MessageDigest].toString()"
    - "[io.netty.handler.codec.dns.DnsOpCode].toString()"
    - "[java.io.ObjectOutputStream$DebugTraceInfoStack].toString()"
    - "[java.util.TreeMap$Entry].toString()"
    - "[java.time.zone.ZoneOffsetTransition].toString()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].toString()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].toString()"
    - "[java.lang.Integer].toString()"
    - "[java.lang.ProcessBuilder$Redirect$6].toString()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].toString()"
    - "[java.util.OptionalInt].toString()"
    - "[javax.naming.NamingException].toString()"
    - "[java.time.LocalDate].toString()"
    - "[java.util.ServiceLoader].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache].toString()"
    - "[java.net.InetAddress].toString()"
    - "[java.util.jar.Attributes$Name].toString()"
    - "[java.lang.Boolean].toString()"
    - "[io.netty.handler.codec.DefaultHeaders].toString()"
    - "[jaz.Zer].toString()"
    - "[io.netty.util.concurrent.DefaultPromise].toString()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].toString()"
    - "[io.netty.handler.ssl.PemX509Certificate].toString()"
    - "[sun.security.x509.UniqueIdentity].toString()"
    - "[java.security.CodeSigner].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].toString()"
    - "[sun.security.x509.CertificateX509Key].toString()"
    - "[java.nio.IntBuffer].toString()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].toString()"
    - "[java.util.concurrent.CountDownLatch].toString()"
    - "[io.netty.handler.codec.redis.IntegerRedisMessage].toString()"
    - "[java.nio.ByteOrder].toString()"
    - "[java.util.OptionalLong].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].toString()"
    - "[io.netty.handler.codec.xml.XmlElementEnd].toString()"
    - "[java.io.ObjectStreamClass].toString()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].toString()"
    - "[java.util.concurrent.atomic.LongAdder].toString()"
    - "[java.util.Optional].toString()"
    - "[java.net.URI].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].toString()"
    - "[java.nio.FloatBuffer].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuestion].toString()"
    - "[io.netty.handler.ssl.OpenSslSessionId].toString()"
    - "[io.netty.channel.group.DefaultChannelGroup].toString()"
    - "[sun.security.x509.AuthorityKeyIdentifierExtension].toString()"
    - "[sun.security.util.ObjectIdentifier].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].toString()"
    - "[java.util.concurrent.LinkedBlockingDeque].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].toString()"
    - "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].toString()"
    - "[java.time.format.DateTimePrintContext].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].toString()"
    - "[sun.nio.fs.UnixPath].toString()"
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].toString()"
    - "[java.lang.Class].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].toString()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].toString()"
    - "[java.util.BitSet].toString()"
    - "[java.lang.StackFrameInfo].toString()"
    - "[javax.xml.namespace.QName].toString()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].toString()"
    - "[sun.security.x509.CertificateExtensions].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].toString()"
    - "[sun.security.x509.BasicConstraintsExtension].toString()"
    - "[java.util.concurrent.atomic.AtomicReferenceArray].toString()"
    - "[java.lang.invoke.Invokers].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].toString()"
    - "[java.time.LocalDateTime].toString()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].toString()"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[java.time.format.DateTimeFormatter].toString()"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].toString()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].toString()"
    - "[sun.security.x509.CertificateIssuerName].toString()"
    - "[java.lang.invoke.SerializedLambda].toString()"
    - "[sun.util.locale.LocaleExtensions].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].toString()"
    - "[sun.security.x509.NameConstraintsExtension].toString()"
    - "[java.net.NetworkInterface].toString()"
    - "[java.util.StringJoiner].toString()"
    - "[java.util.AbstractMap].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].toString()"
    - "[java.time.LocalTime].toString()"
    - "[java.security.ProtectionDomain].toString()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock].toString()"
    - "[io.netty.handler.codec.EmptyHeaders].toString()"
    - "[java.time.temporal.ValueRange].toString()"
    - "[java.time.Instant].toString()"
    - "[java.security.PrivilegedActionException].toString()"
    - "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].toString()"
    - "[sun.util.calendar.CalendarDate].toString()"
    - "[java.lang.module.Configuration].toString()"
    - "[java.security.AlgorithmParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].toString()"
    - "[java.lang.ThreadGroup].toString()"
    - "[io.netty.buffer.AbstractByteBufAllocator].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].toString()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].toString()"
    - "[java.nio.file.attribute.FileTime].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].toString()"
    - "[io.netty.handler.codec.xml.XmlNamespace].toString()"
    - "[io.netty.channel.unix.FileDescriptor].toString()"
    - "[java.lang.Double].toString()"
    - "[java.util.OptionalDouble].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].toString()"
    - "[io.netty.bootstrap.AbstractBootstrap].toString()"
    - "[io.netty.channel.WriteBufferWaterMark].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].toString()"
    - "[java.math.BigInteger].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].toString()"
    - "[java.time.format.Parsed].toString()"
    - "[java.time.OffsetDateTime].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString()"
    - "[java.time.OffsetTime].toString()"
    - "[java.util.WeakHashMap$Entry].toString()"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].toString()"
    - "[sun.security.x509.X509CertImpl].toString()"
    - "[java.time.ZoneOffset].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribePayload].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].toString()"
    - "[java.lang.reflect.Method].toString()"
    - "[io.netty.handler.codec.http2.Http2Flags].toString()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].toString()"
    - "[io.netty.buffer.CompositeByteBuf].toString()"
    - "[java.lang.Enum].toString()"
    - "[io.netty.handler.codec.http2.HpackHeaderField].toString()"
    - "[java.net.ServerSocket].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[java.time.zone.ZoneRules].toString()"
    - "[java.security.spec.PSSParameterSpec].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent].toString()"
    - "[sun.security.x509.X500Name].toString()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].toString()"
    - "[io.netty.channel.embedded.EmbeddedChannelId].toString()"
    - "[java.util.concurrent.locks.AbstractQueuedSynchronizer].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.util.regex.Pattern].toString()"
    - "[java.util.concurrent.atomic.AtomicLongArray].toString()"
    - "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].toString()"
    - "[sun.util.locale.Extension].toString()"
    - "[io.netty.handler.codec.smtp.SmtpCommand].toString()"
    - "[java.util.concurrent.ForkJoinPool].toString()"
    - "[sun.security.x509.CertificateVersion].toString()"
    - "[java.lang.ProcessHandleImpl].toString()"
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].toString()"
    - "[java.util.LongSummaryStatistics].toString()"
    - "[java.io.ObjectStreamField].toString()"
    - "[java.lang.ProcessImpl].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[io.netty.resolver.dns.InflightNameResolver].toString()"
    - "[java.nio.charset.CodingErrorAction].toString()"
    - "[java.lang.Float].toString()"
    - "[java.time.format.DecimalStyle].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].toString()"
    - "[sun.security.x509.IssuerAlternativeNameExtension].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[java.io.File].toString()"
    - "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].toString()"
    - "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].toString()"
    - "[java.util.Calendar].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].toString()"
    - "[java.nio.ByteBuffer].toString()"
    - "[io.netty.buffer.EmptyByteBuf].toString()"
    - "[io.netty.buffer.AbstractByteBuf].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock].toString()"
    - "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].toString()"
    - "[java.lang.Package].toString()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].toString()"
    - "[java.text.ParsePosition].toString()"
    - "[sun.util.locale.BaseLocale].toString()"
    - "[sun.reflect.annotation.AnnotationType].toString()"
    - "[java.lang.Character$Subset].toString()"
    - "[sun.security.util.LazyCodeSourcePermissionCollection].toString()"
    - "[java.lang.Object].toString()"
    - "[io.netty.handler.codec.xml.XmlElement].toString()"
    - "[java.lang.Character].toString()"
    - "[sun.net.www.MessageHeader].toString()"
    - "[java.lang.invoke.MethodType].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].toString()"
    - "[io.netty.handler.codec.http.QueryStringEncoder].toString()"
    - "[java.net.InterfaceAddress].toString()"
    - "[java.time.zone.ZoneOffsetTransitionRule].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].toString()"
    - "[io.netty.handler.codec.dns.DnsRecordType].toString()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].toString()"
    - "[java.lang.StackTraceElement].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toString()"
    - "[java.lang.ProcessBuilder$Redirect$4].toString()"
    - "[java.lang.invoke.LambdaForm].toString()"
    - "[io.netty.handler.codec.dns.DnsResponseCode].toString()"
    - "[io.netty.util.collection.LongObjectHashMap].toString()"
    - "[javax.naming.directory.ModificationItem].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].toString()"
    - "[sun.security.x509.PolicyMappingsExtension].toString()"
    - "[sun.security.x509.CertificatePoliciesExtension].toString()"
    - "[java.security.CodeSource].toString()"
    - "[java.security.Permission].toString()"
    - "[java.security.Timestamp].toString()"
    - "[io.netty.buffer.PoolArena].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].toString()"
    - "[java.nio.charset.CoderResult].toString()"
    - "[io.netty.channel.unix.PeerCredentials].toString()"
    - "[java.security.SecureRandomSpi].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[javax.security.auth.Subject].toString()"
    - "[javax.crypto.CryptoPermission].toString()"
    - "[java.util.Locale].toString()"
    - "[java.time.chrono.AbstractChronology].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsPtrRecord].toString()"
    - "[java.util.concurrent.locks.ReentrantLock].toString()"
    - "[java.lang.module.ResolvedModule].toString()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].toString()"
    - "[io.netty.handler.codec.http.HttpMethod].toString()"
    - "[java.lang.invoke.MemberName].toString()"
    - "[sun.security.x509.PrivateKeyUsageExtension].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].toString()"
    - "[io.netty.handler.traffic.TrafficCounter].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].toString()"
    - "[java.io.ByteArrayOutputStream].toString()"
    - "[sun.security.x509.CertificateValidity].toString()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].toString()"
    - "[java.time.Duration].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[sun.security.x509.X509CertInfo].toString()"
    - "[sun.security.x509.AVA].toString()"
    - "[java.lang.module.ModuleDescriptor$Opens].toString()"
    - "[java.math.BigDecimal].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].toString()"
    - "[java.lang.invoke.MethodHandleImpl$LoopClauses].toString()"
    - "[sun.security.x509.CertificateSerialNumber].toString()"
    - "[sun.nio.fs.UnixFileStore].toString()"
    - "[java.net.Socket].toString()"
    - "[javax.net.ssl.SNIHostName].toString()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].toString()"
    - "[java.util.Hashtable$Entry].toString()"
    - "[java.security.Signature].toString()"
    - "[java.lang.Short].toString()"
    - "[java.util.concurrent.CompletableFuture].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsOptPseudoRrRecord].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses].toString()"
    - "[java.util.concurrent.ThreadPoolExecutor].toString()"
    - "[java.util.concurrent.LinkedBlockingQueue].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].toString()"
    - "[java.time.ZoneId].toString()"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].toString()"
    - "[java.net.SocketImpl].toString()"
    - "[sun.security.x509.KeyIdentifier].toString()"
    - "[java.util.Hashtable].toString()"
    - "[sun.security.x509.GeneralSubtrees].toString()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].toString()"
    - "[java.text.FieldPosition].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent].toString()"
    - "[io.netty.util.DomainNameMapping].toString()"
    - "[sun.security.x509.AuthorityInfoAccessExtension].toString()"
    - "[java.util.concurrent.CopyOnWriteArrayList].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].toString()"
    - "[io.netty.buffer.PoolChunkList].toString()"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].toString()"
    - "[io.netty.buffer.PoolChunk].toString()"
    - "[io.netty.resolver.dns.DefaultDnsServerAddresses].toString()"
    - "[io.netty.util.internal.EmptyPriorityQueue].toString()"
    - "[io.netty.channel.unix.DomainSocketAddress].toString()"
    - "[javax.net.ssl.SNIServerName].toString()"
    - "[java.lang.ProcessBuilder$RedirectPipeImpl].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckPayload].toString()"
    - "[java.io.StringWriter].toString()"
    - "[io.netty.handler.codec.xml.XmlAttribute].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].toString()"
    - "[java.util.zip.ZipEntry].toString()"
    - "[java.util.UUID].toString()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].toString()"
    - "[java.security.Provider].toString()"
    - "[java.time.Period].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].toString()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].toString()"
    - "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].toString()"
    - "[java.lang.reflect.Parameter].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].toString()"
    - "[sun.security.x509.CertificateSubjectName].toString()"
    - "[io.netty.channel.DefaultChannelId].toString()"
    - "[java.util.Date].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame].toString()"
    - "[java.util.IntSummaryStatistics].toString()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[sun.security.x509.CRLDistributionPointsExtension].toString()"
    - "[io.netty.channel.DefaultAddressedEnvelope].toString()"
    - "[io.netty.channel.local.LocalAddress].toString()"
    - "[io.netty.util.collection.CharObjectHashMap].toString()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[io.netty.handler.codec.xml.XmlElementStart].toString()"
    - "[io.netty.handler.codec.DecoderResult].toString()"
    - "[io.netty.handler.ssl.SniCompletionEvent].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[io.netty.util.collection.ByteObjectHashMap].toString()"
    - "[java.util.AbstractMap$SimpleEntry].toString()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].toString()"
    - "[io.netty.util.collection.ShortObjectHashMap].toString()"
    - "[java.time.format.DateTimeParseContext].toString()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].toString()"
    - "[java.math.MathContext].toString()"
    - "[io.netty.handler.codec.http.QueryStringDecoder].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$NumberPrinterParser].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$1].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].toString()"
    - "[java.nio.LongBuffer].toString()"
    - "[java.util.DoubleSummaryStatistics].toString()"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].toString()"
    - "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].toString()"
    - "[java.lang.Long].toString()"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].toString()"
    - "[java.security.Provider$Service].toString()"
    - "[io.netty.channel.sctp.SctpMessage].toString()"
    - "[io.netty.util.collection.IntObjectHashMap].toString()"
    - "[io.netty.handler.codec.xml.XmlContent].toString()"
    - "[io.netty.handler.codec.http.HttpHeaders].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].toString()"
    - "[java.lang.invoke.MethodHandle].toString()"
    - "[java.lang.invoke.MethodTypeForm].toString()"
    - "[java.util.HashMap$Node].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].toString()"
    - "[java.lang.ProcessBuilder$Redirect$2].toString()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].toString()"
    - "[java.time.temporal.ChronoUnit].toString()"
    - "[io.netty.buffer.FixedCompositeByteBuf].toString()"
    - "[java.nio.channels.FileChannel$MapMode].toString()"
    - "[sun.security.x509.SubjectAlternativeNameExtension].toString()"
    - "[io.netty.channel.DefaultChannelPipeline].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].toString()"
    - "[java.nio.ShortBuffer].toString()"
    - "[io.netty.handler.codec.string.LineSeparator].toString()"
    - "[java.util.ResourceBundle$CacheKey].toString()"
    - "[io.netty.buffer.SwappedByteBuf].toString()"
    - "[java.security.cert.CertPath].toString()"
    - "[io.netty.channel.unix.Socket].toString()"
    - "[java.lang.module.ModuleDescriptor].toString()"
    - "[sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo].toString()"
    - "[java.lang.module.ModuleDescriptor$Version].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].toString()"
    - "[java.net.HttpCookie].toString()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].toString()"
    - "[sun.util.calendar.JulianCalendar$Date].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].toString()"
    - "[java.lang.ProcessBuilder$Redirect$5].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].toString()"
    - "[sun.security.x509.GeneralSubtree].toString()"
    - "[sun.security.x509.GeneralName].toString()"
    - "[java.lang.Byte].toString()"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams].toString()"
    - "[io.netty.handler.codec.xml.XmlDTD].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].toString()"
    - "[io.netty.bootstrap.ServerBootstrapConfig].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandType].toString()"
    - "[java.lang.Module].toString()"
    - "[sun.security.util.BitArray].toString()"
    - "[io.netty.channel.AbstractChannelHandlerContext].toString()"
    - "[java.nio.channels.FileLock].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].toString()"
    - "[io.netty.handler.codec.http.HttpScheme].toString()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].toString()"
    - "[javax.security.auth.x500.X500Principal].toString()"
    - "[java.util.logging.Level].toString()"
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.String].length()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    functionUses: 1
    ICount: 33
    EdgeCount: 545
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:346"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:350"
        BranchSideFuncs:
        - "formatSimple(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:349"
        BranchSideFuncs:
        - "<init>(int)"
        - "append(char)"
        - "channel()"
        - "valueOf(java.lang.Object)"
        - "toString()"
        - "append(java.lang.String)"
        - "length()"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:347,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].formatSimple(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
    - Src: "io.netty.handler.logging.LoggingHandler:350,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.logging.LoggingHandler:350,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "io.netty.handler.logging.LoggingHandler:351,1"
      Dst: "[java.lang.String].valueOf(java.lang.Object)"
    - Src: "io.netty.handler.logging.LoggingHandler:354,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.logging.LoggingHandler:354,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.logging.LoggingHandler:355,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:355,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.logging.LoggingHandler:356,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LoggingHandler].disconnect(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 250
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].disconnect(io.netty.channel.ChannelPromise)"
    - "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 13
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:245"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:248"
        BranchSideFuncs:
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
        - "format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:247"
        BranchSideFuncs:
        - "disconnect(io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:245,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - Src: "io.netty.handler.logging.LoggingHandler:246,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:246,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:248,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].disconnect(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.logging.LoggingHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 252
    functionLinenumberEnd: 258
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 13
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:253"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:256"
        BranchSideFuncs:
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
        - "format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:255"
        BranchSideFuncs:
        - "close(io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:253,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - Src: "io.netty.handler.logging.LoggingHandler:254,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:254,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:256,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.logging.LoggingHandler].deregister(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 260
    functionLinenumberEnd: 266
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].deregister(io.netty.channel.ChannelPromise)"
    - "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.ChannelOutboundInvoker].deregister(io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 13
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:261"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:264"
        BranchSideFuncs:
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
        - "format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:263"
        BranchSideFuncs:
        - "deregister(io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:261,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - Src: "io.netty.handler.logging.LoggingHandler:262,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:262,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:264,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].deregister(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.logging.LoggingHandler].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 268
    functionLinenumberEnd: 274
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    functionUses: 3
    ICount: 12
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:269"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:272"
        BranchSideFuncs:
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
        - "format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:271"
        BranchSideFuncs:
        - "fireChannelReadComplete()"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:269,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - Src: "io.netty.handler.logging.LoggingHandler:270,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:270,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:272,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.logging.LoggingHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 282
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 3
    ICount: 13
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:277"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:280"
        BranchSideFuncs:
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
        - "format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:279"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:277,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - Src: "io.netty.handler.logging.LoggingHandler:278,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
    - Src: "io.netty.handler.logging.LoggingHandler:278,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:280,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.logging.LoggingHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 284
    functionLinenumberEnd: 290
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 14
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:285"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:288"
        BranchSideFuncs:
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
        - "format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:287"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:285,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - Src: "io.netty.handler.logging.LoggingHandler:286,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Object)"
    - Src: "io.netty.handler.logging.LoggingHandler:286,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:288,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.logging.LoggingHandler].channelWritabilityChanged(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 292
    functionLinenumberEnd: 298
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelWritabilityChanged()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelWritabilityChanged()"
    - "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelWritabilityChanged()"
    functionUses: 3
    ICount: 12
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:293"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:296"
        BranchSideFuncs:
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
        - "format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:295"
        BranchSideFuncs:
        - "fireChannelWritabilityChanged()"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:293,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - Src: "io.netty.handler.logging.LoggingHandler:294,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:294,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:296,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelWritabilityChanged()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.logging.LoggingHandler].flush(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.logging.LoggingHandler"
    linkageType: ""
    functionLinenumber: 300
    functionLinenumberEnd: 306
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.Log4J2Logger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - "[io.netty.util.internal.logging.Log4J2Logger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 3
    ICount: 12
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.logging.LoggingHandler:301"
      Branch Sides:
      - BranchSide: "io.netty.handler.logging.LoggingHandler:304"
        BranchSideFuncs:
        - "log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
        - "format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
      - BranchSide: "io.netty.handler.logging.LoggingHandler:303"
        BranchSideFuncs:
        - "flush()"
    Callsites:
    - Src: "io.netty.handler.logging.LoggingHandler:301,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isEnabled(io.netty.util.internal.logging.InternalLogLevel)"
    - Src: "io.netty.handler.logging.LoggingHandler:302,1"
      Dst: "[io.netty.handler.logging.LoggingHandler].format(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:302,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].log(io.netty.util.internal.logging.InternalLogLevel,java.lang.String)"
    - Src: "io.netty.handler.logging.LoggingHandler:304,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.TooLongHttpHeaderException].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.TooLongHttpHeaderException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.TooLongFrameException].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.TooLongHttpHeaderException:31,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.TooLongHttpHeaderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.TooLongHttpHeaderException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.TooLongHttpHeaderException:38,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.TooLongHttpHeaderException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.TooLongHttpHeaderException"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.TooLongHttpHeaderException:45,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.TooLongHttpHeaderException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.TooLongHttpHeaderException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.TooLongHttpHeaderException:52,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.ArrayList].<init>(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry:1059,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry:1065,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry].size()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry"
    linkageType: ""
    functionLinenumber: 1076
    functionLinenumberEnd: 1078
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.List].size()"
    functionUses: 1
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry:1077,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection,io.netty.handler.codec.http2.DefaultHttp2Connection$1)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection"
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry:1059,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry].<init>(io.netty.handler.codec.http2.DefaultHttp2Connection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4J2Logger$1].<init>()"
    functionSourceFile: "io.netty.util.internal.logging.Log4J2Logger$1"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4J2Logger$1:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Log4J2Logger$1].run()"
    functionSourceFile: "io.netty.util.internal.logging.Log4J2Logger$1"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "java.lang.Boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.Boolean].valueOf(boolean)"
    functionUses: 4
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Log4J2Logger$1:42,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "io.netty.util.internal.logging.Log4J2Logger$1:43,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPubAckMessage"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 27
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPubAckMessage:25,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPubAckMessage].variableHeader()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPubAckMessage"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPubAckMessage:30,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.LastHttpContent$1:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].content()"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].copy()"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].duplicate()"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.LastHttpContent$1:49,1"
      Dst: "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].trailingHeaders()"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].decoderResult()"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "io.netty.handler.codec.DecoderResult"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].getDecoderResult()"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.DecoderResult"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.LastHttpContent$1].decoderResult()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.LastHttpContent$1:70,1"
      Dst: "[io.netty.handler.codec.http.LastHttpContent$1].decoderResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.DecoderResult"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.LastHttpContent$1:75,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].refCnt()"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].retain()"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].touch()"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].release()"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].release(int)"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.LastHttpContent$1].toString()"
    functionSourceFile: "io.netty.handler.codec.http.LastHttpContent$1"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$5].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$5"
    linkageType: ""
    functionLinenumber: 859
    functionLinenumberEnd: 862
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$1200(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelFuture)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$5:860,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$1200(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf,io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$5].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$5"
    linkageType: ""
    functionLinenumber: 856
    functionLinenumberEnd: 858
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$5].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$5:857,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$5].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$3].<init>(io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler,io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$3"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler"
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$3:140,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$3].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$3"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cancel(boolean)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cancel(boolean)"
    - "[io.netty.util.concurrent.CompleteFuture].cancel(boolean)"
    - "[io.netty.channel.VoidChannelPromise].cancel(boolean)"
    - "[io.netty.util.concurrent.Future].cancel(boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$3:143,1"
      Dst: "[io.netty.util.concurrent.Future].cancel(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$3].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$3"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$3].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$3:140,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$3].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].<init>()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].<init>()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].<init>(java.net.Socket)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:57,1"
      Dst: "[java.net.Socket].<init>()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:57,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].<init>(java.net.Socket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].<init>(java.net.Socket)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.Socket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel].<init>(io.netty.channel.Channel,java.net.Socket)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:66,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].<init>(io.netty.channel.Channel,java.net.Socket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].parent()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "io.netty.channel.socket.ServerSocketChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].parent()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:103,1"
      Dst: "[io.netty.channel.AbstractChannel].parent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "io.netty.channel.socket.oio.OioSocketChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 54
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].isOpen()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].isClosed()"
    functionUses: 9
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:113"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:112"
        BranchSideFuncs:
        - "isClosed()"
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:113,1"
      Dst: "[java.net.Socket].isClosed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].isClosed()"
    - "[java.net.Socket].isConnected()"
    functionUses: 39
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:118"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:117"
        BranchSideFuncs:
        - "isClosed()"
        - "isConnected()"
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:118"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:117"
        BranchSideFuncs:
        - "isClosed()"
        - "isConnected()"
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:118,1"
      Dst: "[java.net.Socket].isClosed()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:118,1"
      Dst: "[java.net.Socket].isConnected()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].isOutputShutdown()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].isOutputShutdown()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:123"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:122"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:123"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:122"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:123,1"
      Dst: "[java.net.Socket].isOutputShutdown()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:123,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].isInputShutdown()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[java.net.Socket].isInputShutdown()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:128"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:127"
        BranchSideFuncs:
        - "isInputShutdown()"
        - "isActive()"
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:128"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:127"
        BranchSideFuncs:
        - "isInputShutdown()"
        - "isActive()"
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:128,1"
      Dst: "[java.net.Socket].isInputShutdown()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:128,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].isShutdown()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].isInputShutdown()"
    - "[java.net.Socket].isOutputShutdown()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:133"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:132"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:133"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:132"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:133"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:133,1"
      Dst: "[java.net.Socket].isInputShutdown()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:133,1"
      Dst: "[java.net.Socket].isOutputShutdown()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:133,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].doShutdownOutput()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutput0()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:139,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutput0()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutput()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutput(io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:144,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:144,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutput(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutput(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutput0(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].<init>(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelPromise)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:172"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:175"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:174"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:171,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:172,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:173,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutput0(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:175,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel$1].<init>(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:175,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].shutdown()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].shutdown(io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:154,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:154,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].shutdown(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].shutdown(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutput()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutputDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.socket.oio.OioSocketChannel$3].<init>(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:226"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:229"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:228"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:225,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutput()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:226,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:227,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownOutputDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:229,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel$3].<init>(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:229,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 166
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].isClosed()"
    - "[io.netty.channel.oio.OioByteStreamChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:159"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:163"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:162"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:159,1"
      Dst: "[java.net.Socket].isClosed()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:163,1"
      Dst: "[io.netty.channel.oio.OioByteStreamChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].localAddress()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 272
    functionLinenumberEnd: 274
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:273,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 277
    functionLinenumberEnd: 279
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:278,1"
      Dst: "[io.netty.channel.AbstractChannel].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 284
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].getLocalSocketAddress()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:283,1"
      Dst: "[java.net.Socket].getLocalSocketAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].remoteAddress0()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 287
    functionLinenumberEnd: 289
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].getRemoteSocketAddress()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:288,1"
      Dst: "[java.net.Socket].getRemoteSocketAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 292
    functionLinenumberEnd: 295
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils].bind(java.net.Socket,java.net.SocketAddress)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:293,1"
      Dst: "[io.netty.util.internal.SocketUtils].bind(java.net.Socket,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils].bind(java.net.Socket,java.net.SocketAddress)"
    functionSourceFile: "io.netty.util.internal.SocketUtils"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 84
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.Socket"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils$2].<init>(java.net.Socket,java.net.SocketAddress)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - "[io.netty.util.internal.SocketUtils$2].run()"
    - "[java.security.PrivilegedActionException].getCause()"
    functionUses: 3
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils:73,1"
      Dst: "[io.netty.util.internal.SocketUtils$2].<init>(java.net.Socket,java.net.SocketAddress)"
    - Src: "io.netty.util.internal.SocketUtils:73,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - Src: "io.netty.util.internal.SocketUtils:81,1"
      Dst: "[java.security.PrivilegedActionException].getCause()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 298
    functionLinenumberEnd: 318
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils].bind(java.net.Socket,java.net.SocketAddress)"
    - "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - "[io.netty.util.internal.SocketUtils].connect(java.net.Socket,java.net.SocketAddress,int)"
    - "[io.netty.channel.DefaultChannelConfig].getConnectTimeoutMillis()"
    - "[io.netty.channel.oio.OioByteStreamChannel].activate(java.io.InputStream,java.io.OutputStream)"
    - "[java.net.Socket].getInputStream()"
    - "[java.net.Socket].getOutputStream()"
    - "[io.netty.channel.ConnectTimeoutException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Throwable].getStackTrace()"
    - "[java.lang.Throwable].setStackTrace(java.lang.StackTraceElement[])"
    - "[io.netty.channel.socket.oio.OioSocketChannel].doClose()"
    - "[io.netty.channel.ChannelConfig].getConnectTimeoutMillis()"
    functionUses: 1
    ICount: 35
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:299"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:305"
        BranchSideFuncs:
        - "bind(java.net.Socket,java.net.SocketAddress)"
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:304"
        BranchSideFuncs:
        - "getOutputStream()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "setStackTrace(java.lang.StackTraceElement[])"
        - "config()"
        - "getConnectTimeoutMillis()"
        - "activate(java.io.InputStream,java.io.OutputStream)"
        - "<init>()"
        - "getStackTrace()"
        - "connect(java.net.Socket,java.net.SocketAddress,int)"
        - "getInputStream()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:313"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:317"
        BranchSideFuncs:
        - "doClose()"
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:316"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:313"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:316"
        BranchSideFuncs:
        - "doClose()"
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:315"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:300,1"
      Dst: "[io.netty.util.internal.SocketUtils].bind(java.net.Socket,java.net.SocketAddress)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:305,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:305,1"
      Dst: "[io.netty.channel.ChannelConfig].getConnectTimeoutMillis()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:305,1"
      Dst: "[io.netty.util.internal.SocketUtils].connect(java.net.Socket,java.net.SocketAddress,int)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:306,1"
      Dst: "[java.net.Socket].getInputStream()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:306,1"
      Dst: "[java.net.Socket].getOutputStream()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:306,1"
      Dst: "[io.netty.channel.oio.OioByteStreamChannel].activate(java.io.InputStream,java.io.OutputStream)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:314,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].doClose()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:309,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:309,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:309,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:309,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:309,1"
      Dst: "[io.netty.channel.ConnectTimeoutException].<init>(java.lang.String)"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:310,1"
      Dst: "[java.lang.Throwable].getStackTrace()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:310,1"
      Dst: "[java.lang.Throwable].setStackTrace(java.lang.StackTraceElement[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.SocketUtils].connect(java.net.Socket,java.net.SocketAddress,int)"
    functionSourceFile: "io.netty.util.internal.SocketUtils"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 70
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.Socket"
    - "java.net.SocketAddress"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils$1].<init>(java.net.Socket,java.net.SocketAddress,int)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - "[io.netty.util.internal.SocketUtils$1].run()"
    - "[java.security.PrivilegedActionException].getCause()"
    functionUses: 1
    ICount: 13
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils:59,1"
      Dst: "[io.netty.util.internal.SocketUtils$1].<init>(java.net.Socket,java.net.SocketAddress,int)"
    - Src: "io.netty.util.internal.SocketUtils:59,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - Src: "io.netty.util.internal.SocketUtils:67,1"
      Dst: "[java.security.PrivilegedActionException].getCause()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$1].<init>(java.net.Socket,java.net.SocketAddress,int)"
    functionSourceFile: "io.netty.util.internal.SocketUtils$1"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.Socket"
    - "java.net.SocketAddress"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$1:59,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].doClose()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 325
    functionLinenumberEnd: 328
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].close()"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:326,1"
      Dst: "[java.net.Socket].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].doDisconnect()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 320
    functionLinenumberEnd: 323
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel].doClose()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:321,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].doClose()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].checkInputShutdown()"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel].isInputShutdown()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - "[io.netty.channel.socket.oio.OioSocketChannelConfig].getSoTimeout()"
    - "[java.lang.Thread].sleep(long)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.oio.OioSocketChannel:330"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.oio.OioSocketChannel:337"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:330,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].isInputShutdown()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:332,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:332,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannelConfig].getSoTimeout()"
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:332,1"
      Dst: "[java.lang.Thread].sleep(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].setReadPending(boolean)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.oio.AbstractOioChannel].setReadPending(boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:344,1"
      Dst: "[io.netty.channel.oio.AbstractOioChannel].setReadPending(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.oio.OioSocketChannel].access$100(io.netty.channel.socket.oio.OioSocketChannel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.oio.OioSocketChannel"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.oio.OioSocketChannel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.oio.OioSocketChannel].shutdownInput0(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.oio.OioSocketChannel:46,1"
      Dst: "[io.netty.channel.socket.oio.OioSocketChannel].shutdownInput0(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.Utf8Validator].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.Utf8Validator"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.Utf8Validator:44,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.Utf8Validator].check(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.Utf8Validator"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    functionUses: 1
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.Utf8Validator:73,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.Utf8Validator].check(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.Utf8Validator"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.DuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ReadOnlyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionUses: 1
    ICount: 7
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.Utf8Validator:78,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.Utf8Validator].finish()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.Utf8Validator"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 90
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.Utf8Validator:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8Validator:89"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8Validator:88"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.Utf8Validator:86,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.CorruptedFrameException"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.CorruptedFrameException:36,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.Utf8Validator].process(byte)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.Utf8Validator"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 105
    functionDepth: 5
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    functionUses: 2
    ICount: 35
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.Utf8Validator:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8Validator:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.Utf8Validator:99"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8Validator:104"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8Validator:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.Utf8Validator:101,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.Utf8Validator].isChecking()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.Utf8Validator"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.pcap.EthernetPacket].<init>()"
    functionSourceFile: "io.netty.handler.pcap.EthernetPacket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.pcap.EthernetPacket:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].<init>(long)"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 38
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.redis.RedisCodecException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:33"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:36"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:35"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:34,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:34,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:34,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:34,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:34,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:34,1"
      Dst: "[io.netty.handler.codec.redis.RedisCodecException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].toString()"
    functionSourceFile: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 62
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 11
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:57,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:57,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:58,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:59,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:60,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.redis.ArrayHeaderRedisMessage:61,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].newSctpChannel()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.sun.nio.sctp.SctpChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.sun.nio.sctp.SctpChannel].open()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:73,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].open()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:75,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].<init>()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpChannel].newSctpChannel()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].<init>(com.sun.nio.sctp.SctpChannel)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:83,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].newSctpChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:83,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].<init>(com.sun.nio.sctp.SctpChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].<init>(com.sun.nio.sctp.SctpChannel)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.sun.nio.sctp.SctpChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpChannel].<init>(io.netty.channel.Channel,com.sun.nio.sctp.SctpChannel)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:90,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].<init>(io.netty.channel.Channel,com.sun.nio.sctp.SctpChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].<init>(io.netty.channel.Channel,com.sun.nio.sctp.SctpChannel)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 119
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "com.sun.nio.sctp.SctpChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioMessageChannel].<init>(io.netty.channel.Channel,java.nio.channels.SelectableChannel,int)"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$NioSctpChannelConfig].<init>(io.netty.channel.sctp.nio.NioSctpChannel,io.netty.channel.sctp.nio.NioSctpChannel,com.sun.nio.sctp.SctpChannel,io.netty.channel.sctp.nio.NioSctpChannel$1)"
    - "[io.netty.channel.sctp.SctpNotificationHandler].<init>(io.netty.channel.sctp.SctpChannel)"
    - "[io.netty.util.internal.logging.JdkLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger:io.netty.util.internal.logging.LocationAwareSlf4JLogger:io.netty.util.internal.logging.Log4JLogger:io.netty.util.internal.logging.Slf4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.nio.channels.spi.AbstractSelectableChannel].configureBlocking(boolean)"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 25
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:110"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:101"
        BranchSideFuncs:
        - "<init>(io.netty.channel.sctp.nio.NioSctpChannel,io.netty.channel.sctp.nio.NioSctpChannel,com.sun.nio.sctp.SctpChannel,io.netty.channel.sctp.nio.NioSctpChannel$1)"
        - "warn(java.lang.String,java.lang.Throwable)"
        - "<init>(io.netty.channel.Channel,java.nio.channels.SelectableChannel,int)"
        - "isWarnEnabled()"
        - "<init>(io.netty.channel.sctp.SctpChannel)"
        - "<init>(java.lang.String,java.lang.Throwable)"
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:100"
        BranchSideFuncs:
        - "<init>(io.netty.channel.sctp.nio.NioSctpChannel,io.netty.channel.sctp.nio.NioSctpChannel,com.sun.nio.sctp.SctpChannel,io.netty.channel.sctp.nio.NioSctpChannel$1)"
        - "warn(java.lang.String,java.lang.Throwable)"
        - "<init>(io.netty.channel.Channel,java.nio.channels.SelectableChannel,int)"
        - "isWarnEnabled()"
        - "<init>(io.netty.channel.sctp.SctpChannel)"
        - "<init>(java.lang.String,java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:101,1"
      Dst: "[io.netty.channel.nio.AbstractNioMessageChannel].<init>(io.netty.channel.Channel,java.nio.channels.SelectableChannel,int)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:103,1"
      Dst: "[java.nio.channels.spi.AbstractSelectableChannel].configureBlocking(boolean)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:104,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel$NioSctpChannelConfig].<init>(io.netty.channel.sctp.nio.NioSctpChannel,io.netty.channel.sctp.nio.NioSctpChannel,com.sun.nio.sctp.SctpChannel,io.netty.channel.sctp.nio.NioSctpChannel$1)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:105,1"
      Dst: "[io.netty.channel.sctp.SctpNotificationHandler].<init>(io.netty.channel.sctp.SctpChannel)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:108,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:110,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:111,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:116,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].localAddress()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:122,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:127,1"
      Dst: "[io.netty.channel.AbstractChannel].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].parent()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionDepth: 0
    returnType: "io.netty.channel.sctp.SctpServerChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].parent()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:132,1"
      Dst: "[io.netty.channel.AbstractChannel].parent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].metadata()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionDepth: 0
    returnType: "io.netty.channel.ChannelMetadata"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].association()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 146
    functionDepth: 1
    returnType: "com.sun.nio.sctp.Association"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - "[com.sun.nio.sctp.SctpChannel].association()"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:143,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:143,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].association()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].allLocalAddresses()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - "[com.sun.nio.sctp.SctpChannel].getAllLocalAddresses()"
    - "[java.util.Set].size()"
    - "[java.util.LinkedHashSet].<init>(int)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Collections].emptySet()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:154"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:152,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:152,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].getAllLocalAddresses()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:153,1"
      Dst: "[java.util.Set].size()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:153,1"
      Dst: "[java.util.LinkedHashSet].<init>(int)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:154,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:154,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:154,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:155,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:159,1"
      Dst: "[java.util.Collections].emptySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionDepth: 0
    returnType: "io.netty.channel.sctp.SctpChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 55
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].allRemoteAddresses()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - "[com.sun.nio.sctp.SctpChannel].getRemoteAddresses()"
    - "[java.util.Set].size()"
    - "[java.util.HashSet].<init>(int)"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Collections].emptySet()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:173"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:176"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:175"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:171,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:171,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].getRemoteAddresses()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:172,1"
      Dst: "[java.util.Set].size()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:172,1"
      Dst: "[java.util.HashSet].<init>(int)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:173,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:173,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:173,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:174,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:178,1"
      Dst: "[java.util.Collections].emptySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].association()"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].isOpen()"
    functionUses: 36
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:190"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:188"
        BranchSideFuncs:
        - "association()"
        - "javaChannel()"
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:190"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:188"
        BranchSideFuncs:
        - "association()"
        - "javaChannel()"
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:189,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:190,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].isOpen()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:190,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].association()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 204
    functionDepth: 1
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[com.sun.nio.sctp.SctpChannel].getAllLocalAddresses()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 133
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:197"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:202"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:196,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:196,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].getAllLocalAddresses()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:196,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:197,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:198,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].remoteAddress0()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 217
    functionDepth: 1
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[com.sun.nio.sctp.SctpChannel].getRemoteAddresses()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 133
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:210"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:215"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:214"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:209,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:209,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].getRemoteAddresses()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:209,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:210,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:211,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 220
    functionLinenumberEnd: 223
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - "[com.sun.nio.sctp.SctpChannel].bind(java.net.SocketAddress)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:221,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:221,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].bind(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 243
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - "[io.netty.channel.nio.AbstractNioChannel].selectionKey()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].doClose()"
    - "[com.sun.nio.sctp.SctpChannel].bind(java.net.SocketAddress)"
    - "[com.sun.nio.sctp.SctpChannel].connect(java.net.SocketAddress)"
    - "[java.nio.channels.SelectionKey].interestOps(int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:226"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:230"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:229"
        BranchSideFuncs:
        - "javaChannel()"
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:233"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:236"
        BranchSideFuncs:
        - "selectionKey()"
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:235"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:239"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:236"
        BranchSideFuncs:
        - "doClose()"
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:235"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:239"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:242"
        BranchSideFuncs:
        - "doClose()"
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:227,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:227,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].bind(java.net.SocketAddress)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:232,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].connect(java.net.SocketAddress)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:234,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].selectionKey()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:234,1"
      Dst: "[java.nio.channels.SelectionKey].interestOps(int)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:240,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].doClose()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].doClose()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 258
    functionLinenumberEnd: 261
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:259,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:259,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].doFinishConnect()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 246
    functionLinenumberEnd: 251
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - "[java.lang.Error].<init>()"
    - "[com.sun.nio.sctp.SctpChannel].finishConnect()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:247"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:250"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:249"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:247,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:247,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].finishConnect()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:248,1"
      Dst: "[java.lang.Error].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].doDisconnect()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpChannel].doClose()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:254,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].doClose()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].doReadMessages(java.util.List<Object>)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 263
    functionLinenumberEnd: 291
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].lastBytesRead(int)"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].lastBytesRead(int)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].lastBytesRead(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.channel.sctp.SctpMessage].<init>(com.sun.nio.sctp.MessageInfo,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].lastBytesRead()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].lastBytesRead()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.Channel$Unsafe].recvBufAllocHandle()"
    - "[io.netty.channel.ChannelConfig].getAllocator()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[java.nio.Buffer].position()"
    - "[com.sun.nio.sctp.SctpChannel].receive(java.nio.ByteBuffer,java.lang.Object,com.sun.nio.sctp.NotificationHandler)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 43
    EdgeCount: 116
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:274"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:278"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:277"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "add(java.lang.Object)"
        - "writerIndex()"
        - "writerIndex(int)"
        - "throwException(java.lang.Throwable)"
        - "<init>(com.sun.nio.sctp.MessageInfo,io.netty.buffer.ByteBuf)"
        - "lastBytesRead()"
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:287"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:275"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:274"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:287"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:278"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:277"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "add(java.lang.Object)"
        - "writerIndex()"
        - "writerIndex(int)"
        - "throwException(java.lang.Throwable)"
        - "<init>(com.sun.nio.sctp.MessageInfo,io.netty.buffer.ByteBuf)"
        - "lastBytesRead()"
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:287"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:null"
        BranchSideFuncs:
        - "release()"
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:287"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:290"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:289"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:264,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:266,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:266,1"
      Dst: "[io.netty.channel.Channel$Unsafe].recvBufAllocHandle()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:267,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:267,1"
      Dst: "[io.netty.channel.ChannelConfig].getAllocator()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:267,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].allocate(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:270,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:270,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:270,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:271,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:273,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].receive(java.nio.ByteBuffer,java.lang.Object,com.sun.nio.sctp.NotificationHandler)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:288,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:278,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead(int)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:280,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:280,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:280,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].<init>(com.sun.nio.sctp.MessageInfo,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:279,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:284,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].doWriteMessage(java.lang.Object,io.netty.channel.ChannelOutboundBuffer)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 294
    functionLinenumberEnd: 321
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.channel.ChannelOutboundBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.channel.AbstractChannel].alloc()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isDirect()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.DuplicatedByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].isDirect()"
    - "[io.netty.buffer.CompositeByteBuf].isDirect()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBuf].isDirect()"
    - "[io.netty.buffer.PooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.PooledDirectByteBuf].isDirect()"
    - "[io.netty.buffer.SlicedByteBuf].isDirect()"
    - "[io.netty.buffer.EmptyByteBuf].isDirect()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isDirect()"
    - "[io.netty.buffer.FixedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedByteBuf].isDirect()"
    - "[io.netty.buffer.SwappedByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isDirect()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.buffer.UnpooledByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.buffer.PooledByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer()"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer()"
    - "[io.netty.buffer.AbstractByteBuf].nioBuffer()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer()"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer()"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].association()"
    - "[com.sun.nio.sctp.MessageInfo].createOutgoing(com.sun.nio.sctp.Association,java.net.SocketAddress,int)"
    - "[io.netty.channel.sctp.SctpMessage].streamIdentifier()"
    - "[io.netty.channel.sctp.SctpMessage].protocolIdentifier()"
    - "[io.netty.channel.sctp.SctpMessage].isUnordered()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].isDirect()"
    - "[io.netty.buffer.ByteBufAllocator].isDirectBufferPooled()"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].nioBuffer()"
    - "[com.sun.nio.sctp.MessageInfo].payloadProtocolID(int)"
    - "[com.sun.nio.sctp.MessageInfo].streamNumber(int)"
    - "[com.sun.nio.sctp.MessageInfo].unordered(boolean)"
    - "[com.sun.nio.sctp.SctpChannel].send(java.nio.ByteBuffer,com.sun.nio.sctp.MessageInfo)"
    functionUses: 1
    ICount: 44
    EdgeCount: 75
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:298"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:302"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:301"
        BranchSideFuncs:
        - "nioBufferCount()"
        - "alloc()"
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:303"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:-1"
        BranchSideFuncs:
        - "nioBufferCount()"
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:304"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:310"
        BranchSideFuncs:
        - "isDirectBufferPooled()"
        - "isDirect()"
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:309"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:305"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:310"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:309"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:305"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:310"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:309"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:310"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:313"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "directBuffer(int)"
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:312"
        BranchSideFuncs:
        - "association()"
        - "javaChannel()"
        - "nioBuffer()"
        - "createOutgoing(com.sun.nio.sctp.Association,java.net.SocketAddress,int)"
        - "protocolIdentifier()"
        - "isUnordered()"
        - "streamIdentifier()"
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:320"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:312"
        BranchSideFuncs:
        - "association()"
        - "javaChannel()"
        - "nioBuffer()"
        - "createOutgoing(com.sun.nio.sctp.Association,java.net.SocketAddress,int)"
        - "protocolIdentifier()"
        - "isUnordered()"
        - "streamIdentifier()"
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:296,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:297,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:302,1"
      Dst: "[io.netty.channel.AbstractChannel].alloc()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:303,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:305,1"
      Dst: "[io.netty.buffer.ByteBuf].isDirect()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:305,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].isDirectBufferPooled()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:311,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:311,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:313,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:314,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].association()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:314,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].streamIdentifier()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:314,1"
      Dst: "[com.sun.nio.sctp.MessageInfo].createOutgoing(com.sun.nio.sctp.Association,java.net.SocketAddress,int)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:315,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].protocolIdentifier()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:315,1"
      Dst: "[com.sun.nio.sctp.MessageInfo].payloadProtocolID(int)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:316,1"
      Dst: "[com.sun.nio.sctp.MessageInfo].streamNumber(int)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:317,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].isUnordered()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:317,1"
      Dst: "[com.sun.nio.sctp.MessageInfo].unordered(boolean)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:319,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:319,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].send(java.nio.ByteBuffer,com.sun.nio.sctp.MessageInfo)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 7
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].filterOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 324
    functionLinenumberEnd: 339
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isDirect()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.DuplicatedByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].isDirect()"
    - "[io.netty.buffer.CompositeByteBuf].isDirect()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBuf].isDirect()"
    - "[io.netty.buffer.PooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.PooledDirectByteBuf].isDirect()"
    - "[io.netty.buffer.SlicedByteBuf].isDirect()"
    - "[io.netty.buffer.EmptyByteBuf].isDirect()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isDirect()"
    - "[io.netty.buffer.FixedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedByteBuf].isDirect()"
    - "[io.netty.buffer.SwappedByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isDirect()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.channel.sctp.SctpMessage].isUnordered()"
    - "[io.netty.channel.sctp.SctpMessage].protocolIdentifier()"
    - "[io.netty.channel.sctp.SctpMessage].streamIdentifier()"
    - "[io.netty.channel.sctp.SctpMessage].<init>(int,int,boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.nio.AbstractNioChannel].newDirectBuffer(io.netty.util.ReferenceCounted,io.netty.buffer.ByteBuf)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].isDirect()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    functionUses: 1
    ICount: 30
    EdgeCount: 51
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:325"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:336"
        BranchSideFuncs:
        - "content()"
        - "isDirect()"
        - "nioBufferCount()"
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:335"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>()"
        - "<init>(java.lang.String)"
        - "simpleClassName(java.lang.Class)"
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:328"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:332"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:331"
        BranchSideFuncs:
        - "protocolIdentifier()"
        - "isUnordered()"
        - "streamIdentifier()"
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:328"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:332"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:331"
        BranchSideFuncs:
        - "protocolIdentifier()"
        - "isUnordered()"
        - "streamIdentifier()"
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:327,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:328,1"
      Dst: "[io.netty.buffer.ByteBuf].isDirect()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:328,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:332,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].protocolIdentifier()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:332,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].streamIdentifier()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:332,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].isUnordered()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:333,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].newDirectBuffer(io.netty.util.ReferenceCounted,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:333,1"
      Dst: "[io.netty.channel.sctp.SctpMessage].<init>(int,int,boolean,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:336,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:336,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:337,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:338,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:338,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:338,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].bindAddress(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:343,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:343,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].unbindAddress(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:368,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:368,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel"
    linkageType: ""
    functionLinenumber: 372
    functionLinenumberEnd: 389
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].<init>(io.netty.channel.sctp.nio.NioSctpChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[com.sun.nio.sctp.SctpChannel].unbindAddress(java.net.InetAddress)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 18
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpChannel:373"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpChannel:380"
        BranchSideFuncs:
        - "<init>(io.netty.channel.sctp.nio.NioSctpChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
        - "run()"
        - "eventLoop()"
        - "execute(java.lang.Runnable)"
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:373,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:373,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:375,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:375,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].unbindAddress(java.net.InetAddress)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:376,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:378,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:381,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel$2].<init>(io.netty.channel.sctp.nio.NioSctpChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel:381,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel$2].<init>(io.netty.channel.sctp.nio.NioSctpChannel,java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel$2"
    linkageType: ""
    functionLinenumber: 380
    functionLinenumberEnd: 382
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.sctp.nio.NioSctpChannel"
    - "java.net.InetAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel$2:381,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].lastVariableIndex()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].get()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:161,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].typeParameterMatcherGetCache()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 288
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.IdentityHashMap].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:284"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:null"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:285,1"
      Dst: "[java.util.IdentityHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].typeParameterMatcherFindCache()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 296
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.IdentityHashMap].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:292"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:null"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:293,1"
      Dst: "[java.util.IdentityHashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].counterHashCode()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.internal.IntegerHolder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].setCounterHashCode(io.netty.util.internal.IntegerHolder)"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.IntegerHolder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].handlerSharableCache()"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: 308
    functionLinenumberEnd: 315
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.WeakHashMap].<init>(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:310"
      Branch Sides: []
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:312,1"
      Dst: "[java.util.WeakHashMap].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].isCleanerFlagSet(int)"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.BitSet].get(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:384"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:383"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:384"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:383"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:384,1"
      Dst: "[java.util.BitSet].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.InternalThreadLocalMap].setCleanerFlag(int)"
    functionSourceFile: "io.netty.util.internal.InternalThreadLocalMap"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.BitSet].<init>()"
    - "[java.util.BitSet].set(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.InternalThreadLocalMap:388"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:391"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.InternalThreadLocalMap:390"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.InternalThreadLocalMap:389,1"
      Dst: "[java.util.BitSet].<init>()"
    - Src: "io.netty.util.internal.InternalThreadLocalMap:391,1"
      Dst: "[java.util.BitSet].set(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].isDirect()"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 70
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].capacity(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 162
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkNewCapacity(int)"
    - "[io.netty.buffer.AbstractByteBuf].trimIndicesToCapacity(int)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeDirectByteBuf].allocateDirect(int)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf].allocateDirect(int)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf].allocateDirect(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].allocateDirect(int)"
    - "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].allocateDirect(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByteBuffer(java.nio.ByteBuffer,boolean)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByteBuffer(java.nio.ByteBuffer,boolean)"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    - "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].clear()"
    functionUses: 8
    ICount: 21
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:145"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:149"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:149"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:152"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:151"
        BranchSideFuncs:
        - "trimIndicesToCapacity(int)"
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:143,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkNewCapacity(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:152,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].trimIndicesToCapacity(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:156,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].allocateDirect(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:157,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:157,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:159,1"
      Dst: "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:159,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:160,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].setByteBuffer(java.nio.ByteBuffer,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBufAllocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "java.nio.ByteOrder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 46
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 63
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:181,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 58
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:186,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].hasMemoryAddress()"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 39
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 38
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:196,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 203
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getByte(int)"
    functionUses: 142
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:201,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:202,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf]._getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._getByte(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 208
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].get(int)"
    functionUses: 17
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:207,1"
      Dst: "[java.nio.ByteBuffer].get(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].getShort(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 214
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getShort(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getShort(int)"
    functionUses: 20
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:212,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:213,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf]._getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._getShort(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 217
    functionLinenumberEnd: 219
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].getShort(int)"
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:218,1"
      Dst: "[java.nio.ByteBuffer].getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._getShortLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 222
    functionLinenumberEnd: 224
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    - "[java.nio.ByteBuffer].getShort(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:223,1"
      Dst: "[java.nio.ByteBuffer].getShort(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:223,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 227
    functionLinenumberEnd: 230
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getUnsignedMedium(int)"
    functionUses: 15
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:228,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:229,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf]._getUnsignedMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 233
    functionLinenumberEnd: 237
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    functionUses: 7
    ICount: 21
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:234,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 240
    functionLinenumberEnd: 244
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    functionUses: 6
    ICount: 21
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:241,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].getInt(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 250
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getInt(int)"
    functionUses: 25
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:248,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:249,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf]._getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._getInt(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 253
    functionLinenumberEnd: 255
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].getInt(int)"
    functionUses: 7
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:254,1"
      Dst: "[java.nio.ByteBuffer].getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._getIntLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 258
    functionLinenumberEnd: 260
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    - "[java.nio.ByteBuffer].getInt(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:259,1"
      Dst: "[java.nio.ByteBuffer].getInt(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:259,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].getLong(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 263
    functionLinenumberEnd: 266
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._getLong(int)"
    functionUses: 20
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:264,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:265,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf]._getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._getLong(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 269
    functionLinenumberEnd: 271
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].getLong(int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:270,1"
      Dst: "[java.nio.ByteBuffer].getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._getLongLE(int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 274
    functionLinenumberEnd: 276
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    - "[java.nio.ByteBuffer].getLong(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:275,1"
      Dst: "[java.nio.ByteBuffer].getLong(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:275,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 279
    functionLinenumberEnd: 293
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.EmptyByteBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffers(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - "[java.nio.Buffer].remaining()"
    - "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 15
    ICount: 29
    EdgeCount: 134
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:281"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:283"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
        - "getBytes(int,byte[],int,int)"
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:282"
        BranchSideFuncs:
        - "nioBufferCount()"
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:283"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:290"
        BranchSideFuncs:
        - "nioBuffers(int,int)"
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:289"
        BranchSideFuncs:
        - "setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:284"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:283"
        BranchSideFuncs:
        - "nioBuffers(int,int)"
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:280,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:280,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:281,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:282,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:282,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:282,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:283,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:284,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:285,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:286,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:290,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 296
    functionLinenumberEnd: 299
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,byte[],int,int,boolean)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int,boolean)"
    functionUses: 18
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:297,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int,boolean)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 301
    functionLinenumberEnd: 313
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - "[java.nio.ByteBuffer].duplicate()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    - "[java.nio.ByteBuffer].get(byte[],int,int)"
    functionUses: 2
    ICount: 19
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:305"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:308"
        BranchSideFuncs:
        - "internalNioBuffer()"
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:307"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:302,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkDstIndex(int,int,int,int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:306,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:308,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:310,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:310,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:310,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:311,1"
      Dst: "[java.nio.ByteBuffer].get(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 622
    functionLinenumberEnd: 628
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].duplicate()"
    functionUses: 10
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:624"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:627"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:626"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:625,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 323
    functionLinenumberEnd: 326
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,java.nio.ByteBuffer,boolean)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer,boolean)"
    functionUses: 13
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:324,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer,boolean)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 328
    functionLinenumberEnd: 340
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.ByteBuffer].duplicate()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    - "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    functionUses: 2
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:332"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:335"
        BranchSideFuncs:
        - "internalNioBuffer()"
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:334"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:329,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:329,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:333,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:335,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:337,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:337,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:337,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:338,1"
      Dst: "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 315
    functionLinenumberEnd: 320
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int,boolean)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,byte[],int,int,boolean)"
    functionUses: 5
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:316,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:317,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 342
    functionLinenumberEnd: 348
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer,boolean)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,java.nio.ByteBuffer,boolean)"
    - "[java.nio.Buffer].remaining()"
    functionUses: 3
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:343,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:344,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:345,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 351
    functionLinenumberEnd: 355
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setByte(int,int)"
    functionUses: 71
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:352,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:353,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf]._setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._setByte(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 358
    functionLinenumberEnd: 361
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].put(int,byte)"
    functionUses: 26
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:359,1"
      Dst: "[java.nio.ByteBuffer].put(int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].setShort(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 363
    functionLinenumberEnd: 367
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setShort(int,int)"
    functionUses: 18
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:364,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:365,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf]._setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._setShort(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 370
    functionLinenumberEnd: 373
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].putShort(int,short)"
    functionUses: 7
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:371,1"
      Dst: "[java.nio.ByteBuffer].putShort(int,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 375
    functionLinenumberEnd: 378
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    - "[java.nio.ByteBuffer].putShort(int,short)"
    functionUses: 5
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:376,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapShort(short)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:376,1"
      Dst: "[java.nio.ByteBuffer].putShort(int,short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 380
    functionLinenumberEnd: 384
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setMedium(int,int)"
    functionUses: 11
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:381,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:382,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf]._setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 387
    functionLinenumberEnd: 392
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    functionUses: 7
    ICount: 17
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:388,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 394
    functionLinenumberEnd: 399
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    functionUses: 6
    ICount: 17
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:395,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].setInt(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 401
    functionLinenumberEnd: 405
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setInt(int,int)"
    functionUses: 26
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:402,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:403,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf]._setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._setInt(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 408
    functionLinenumberEnd: 411
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].putInt(int,int)"
    functionUses: 11
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:409,1"
      Dst: "[java.nio.ByteBuffer].putInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 413
    functionLinenumberEnd: 416
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    - "[java.nio.ByteBuffer].putInt(int,int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:414,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapInt(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:414,1"
      Dst: "[java.nio.ByteBuffer].putInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].setLong(int,long)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 418
    functionLinenumberEnd: 422
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf]._setLong(int,long)"
    - "[io.netty.buffer.UnpooledDirectByteBuf]._setLong(int,long)"
    functionUses: 14
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:419,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:420,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf]._setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._setLong(int,long)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 425
    functionLinenumberEnd: 428
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].putLong(int,long)"
    functionUses: 9
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:426,1"
      Dst: "[java.nio.ByteBuffer].putLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf]._setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    - "[java.nio.ByteBuffer].putLong(int,long)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:431,1"
      Dst: "[io.netty.buffer.ByteBufUtil].swapLong(long)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:431,1"
      Dst: "[java.nio.ByteBuffer].putLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 435
    functionLinenumberEnd: 447
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.AbstractByteBuf].checkSrcIndex(int,int,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffers(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - "[java.nio.Buffer].remaining()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 20
    ICount: 22
    EdgeCount: 80
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:437"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:444"
        BranchSideFuncs:
        - "nioBuffers(int,int)"
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:443"
        BranchSideFuncs:
        - "getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:438"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:437"
        BranchSideFuncs:
        - "nioBuffers(int,int)"
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:436,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:436,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkSrcIndex(int,int,int,int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:437,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:438,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:439,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:440,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:444,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 459
    functionLinenumberEnd: 469
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - "[java.nio.ByteBuffer].duplicate()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.Buffer].limit(int)"
    - "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    functionUses: 9
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:462"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:466"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:465"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:460,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:461,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:463,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:466,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:466,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:466,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:466,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:467,1"
      Dst: "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 450
    functionLinenumberEnd: 456
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkSrcIndex(int,int,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    - "[java.nio.ByteBuffer].put(byte[],int,int)"
    functionUses: 13
    ICount: 14
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:451,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkSrcIndex(int,int,int,int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:452,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:453,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:453,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:453,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:454,1"
      Dst: "[java.nio.ByteBuffer].put(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 472
    functionLinenumberEnd: 475
    functionDepth: 8
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,java.io.OutputStream,int,boolean)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.io.OutputStream,int,boolean)"
    functionUses: 10
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:473,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.io.OutputStream,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.io.OutputStream,int,boolean)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 477
    functionLinenumberEnd: 484
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.io.OutputStream"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - "[io.netty.buffer.ByteBufUtil].readBytes(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,int,java.io.OutputStream)"
    - "[java.nio.ByteBuffer].duplicate()"
    functionUses: 2
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:479"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:482"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:481"
        BranchSideFuncs:
        - "readBytes(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,int,java.io.OutputStream)"
        - "internalNioBuffer()"
        - "alloc()"
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:482"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:482"
        BranchSideFuncs:
        - "readBytes(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,int,java.io.OutputStream)"
        - "internalNioBuffer()"
        - "alloc()"
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:481"
        BranchSideFuncs:
        - "readBytes(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,int,java.io.OutputStream)"
        - "internalNioBuffer()"
        - "alloc()"
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:478,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:482,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:482,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:482,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:482,1"
      Dst: "[io.netty.buffer.ByteBufUtil].readBytes(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,int,java.io.OutputStream)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 486
    functionLinenumberEnd: 491
    functionDepth: 8
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.io.OutputStream,int,boolean)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,java.io.OutputStream,int,boolean)"
    functionUses: 6
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:487,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:488,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.io.OutputStream,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 494
    functionLinenumberEnd: 496
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int,boolean)"
    functionUses: 8
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:495,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int,boolean)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 498
    functionLinenumberEnd: 512
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - "[sun.nio.ch.FileChannelImpl].write(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].duplicate()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    - "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    functionUses: 2
    ICount: 19
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:500"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:505"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:504"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:505"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:508"
        BranchSideFuncs:
        - "internalNioBuffer()"
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:507"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:499,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:506,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:508,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:510,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:510,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:510,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:511,1"
      Dst: "[java.nio.channels.WritableByteChannel].write(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:516,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int,boolean)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 5
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - "[java.nio.ByteBuffer].duplicate()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    - "[java.nio.channels.FileChannel].write(java.nio.ByteBuffer,long)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:521"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:525"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:524"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:525"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:525"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:524"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:520,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:525,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:525,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:526,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:526,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:526,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:527,1"
      Dst: "[java.nio.channels.FileChannel].write(java.nio.ByteBuffer,long)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 531
    functionLinenumberEnd: 536
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int,boolean)"
    functionUses: 4
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:532,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:533,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:540,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:541,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 547
    functionLinenumberEnd: 561
    functionDepth: 6
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[java.io.BufferedInputStream].read(byte[],int,int)"
    - "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].read(byte[],int,int)"
    - "[java.util.zip.InflaterInputStream].read(byte[],int,int)"
    - "[io.netty.buffer.ByteBufInputStream].read(byte[],int,int)"
    - "[java.io.DataInputStream].read(byte[],int,int)"
    - "[java.io.InputStream$1].read(byte[],int,int)"
    - "[java.io.FilterInputStream].read(byte[],int,int)"
    - "[java.util.jar.JarInputStream].read(byte[],int,int)"
    - "[java.io.InputStream].read(byte[],int,int)"
    - "[java.io.ObjectInputStream$BlockDataInputStream].read(byte[],int,int)"
    - "[java.io.PushbackInputStream].read(byte[],int,int)"
    - "[java.io.FileInputStream].read(byte[],int,int)"
    - "[java.io.ObjectInputStream].read(byte[],int,int)"
    - "[java.util.zip.ZipInputStream].read(byte[],int,int)"
    - "[java.util.jar.Manifest$FastInputStream].read(byte[],int,int)"
    - "[java.io.ObjectInputStream$PeekInputStream].read(byte[],int,int)"
    - "[java.io.ByteArrayInputStream].read(byte[],int,int)"
    - "[java.lang.ProcessImpl$DeferredCloseInputStream].read(byte[],int,int)"
    - "[io.netty.buffer.ByteBufUtil].threadLocalTempArray(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - "[java.nio.ByteBuffer].hasArray()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.nio.ByteBuffer].arrayOffset()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.ByteBuffer].put(byte[],int,int)"
    functionUses: 8
    ICount: 24
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:549"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:552"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:551"
        BranchSideFuncs:
        - "read(byte[],int,int)"
        - "threadLocalTempArray(int)"
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:554"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:557"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:556"
        BranchSideFuncs:
        - "internalNioBuffer()"
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:548,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:549,1"
      Dst: "[java.nio.ByteBuffer].hasArray()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:550,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:550,1"
      Dst: "[java.nio.ByteBuffer].arrayOffset()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:550,1"
      Dst: "[java.io.InputStream].read(byte[],int,int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:552,1"
      Dst: "[io.netty.buffer.ByteBufUtil].threadLocalTempArray(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:557,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:558,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:558,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:559,1"
      Dst: "[java.nio.ByteBuffer].put(byte[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 565
    functionLinenumberEnd: 573
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - "[sun.nio.ch.FileChannelImpl].read(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    - "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    functionUses: 8
    ICount: 15
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:566,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:567,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:568,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:568,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:568,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:570,1"
      Dst: "[java.nio.channels.ReadableByteChannel].read(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 577
    functionLinenumberEnd: 585
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - "[sun.nio.ch.FileChannelImpl].read(java.nio.ByteBuffer,long)"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    - "[java.nio.channels.FileChannel].read(java.nio.ByteBuffer,long)"
    functionUses: 8
    ICount: 16
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:578,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:579,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:580,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:580,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:580,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:582,1"
      Dst: "[java.nio.channels.FileChannel].read(java.nio.ByteBuffer,long)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 589
    functionLinenumberEnd: 591
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 45
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffers(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 594
    functionLinenumberEnd: 596
    functionDepth: 1
    returnType: "java.nio.ByteBuffer[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    functionUses: 19
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:595,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 631
    functionLinenumberEnd: 634
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[java.nio.ByteBuffer].duplicate()"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    - "[java.nio.ByteBuffer].slice()"
    functionUses: 20
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:632,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:633,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:633,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:633,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:633,1"
      Dst: "[java.nio.ByteBuffer].slice()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].isContiguous()"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 599
    functionLinenumberEnd: 601
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].copy(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 604
    functionLinenumberEnd: 614
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].maxCapacity()"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[java.nio.ByteBuffer].duplicate()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(java.nio.ByteBuffer)"
    functionUses: 10
    ICount: 27
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:605,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:608,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:608,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:608,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:608,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:610,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:610,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:610,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:610,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:610,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:613,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:613,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].maxCapacity()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:613,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int,int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:613,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 617
    functionLinenumberEnd: 620
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - "[java.nio.ByteBuffer].clear()"
    - "[java.nio.Buffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    functionUses: 37
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:618,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:619,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:619,1"
      Dst: "[java.nio.ByteBuffer].clear()"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:619,1"
      Dst: "[java.nio.Buffer].position(int)"
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:619,1"
      Dst: "[java.nio.Buffer].limit(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].deallocate()"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 637
    functionLinenumberEnd: 649
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedUnpooledUnsafeDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    functionUses: 3
    ICount: 9
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:639"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:643"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:642"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.UnpooledDirectByteBuf:645"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:648"
        BranchSideFuncs:
        - "freeDirect(java.nio.ByteBuffer)"
      - BranchSide: "io.netty.buffer.UnpooledDirectByteBuf:647"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledDirectByteBuf:646,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledDirectByteBuf].unwrap()"
    functionSourceFile: "io.netty.buffer.UnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 651
    functionLinenumberEnd: 653
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].<init>()"
    functionSourceFile: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].<init>(int,int,java.util.Comparator)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:63,1"
      Dst: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].<init>(int,int,java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].<init>(int,int,java.util.Comparator)"
    functionSourceFile: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 83
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.util.Comparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1].<init>(io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache)"
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 1
    ICount: 30
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:77"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:81"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:80"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:74,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:37,1"
      Dst: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1].<init>(io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache)"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:75,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:75,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:76,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:78,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:78,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:78,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:78,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:78,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].get(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 94
    functionDepth: 1
    returnType: "io.netty.resolver.dns.DnsServerAddressStream"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.resolver.dns.Cache].get(java.lang.String)"
    - "[jaz.Zer].isEmpty()"
    - "[java.util.AbstractCollection:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].<init>(java.util.List,int)"
    - "[java.util.List].isEmpty()"
    functionUses: 2
    ICount: 12
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:90"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:91"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:90"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:90"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:93"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:92"
        BranchSideFuncs:
        - "<init>(java.util.List,int)"
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:87,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:89,1"
      Dst: "[io.netty.resolver.dns.Cache].get(java.lang.String)"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:90,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:93,1"
      Dst: "[io.netty.resolver.dns.SequentialDnsServerAddressStream].<init>(java.util.List,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].cache(java.lang.String,java.net.InetSocketAddress,long,io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 110
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.net.InetSocketAddress"
    - "long"
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.net.InetSocketAddress].getHostString()"
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.resolver.dns.Cache].cache(java.lang.String,java.lang.Object,int,io.netty.channel.EventLoop)"
    - "[java.lang.Math].max(int,int)"
    - "[java.lang.Math].min(long,long)"
    functionUses: 2
    ICount: 22
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:102"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:107"
        BranchSideFuncs:
        - "min(long,long)"
        - "cache(java.lang.String,java.lang.Object,int,io.netty.channel.EventLoop)"
        - "max(int,int)"
    - Branch String: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:102"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:107"
        BranchSideFuncs:
        - "min(long,long)"
        - "cache(java.lang.String,java.lang.Object,int,io.netty.channel.EventLoop)"
        - "max(int,int)"
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:98,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:102,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:102,1"
      Dst: "[java.net.InetSocketAddress].getHostString()"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:108,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:108,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:108,1"
      Dst: "[io.netty.resolver.dns.Cache].cache(java.lang.String,java.lang.Object,int,io.netty.channel.EventLoop)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].clear()"
    functionSourceFile: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.Cache].clear()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:113,1"
      Dst: "[io.netty.resolver.dns.Cache].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].clear(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.resolver.dns.Cache].clear(java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:118,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:118,1"
      Dst: "[io.netty.resolver.dns.Cache].clear(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].toString()"
    functionSourceFile: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.resolver.dns.Cache].size()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 19
    ICount: 16
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:123,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:123,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:123,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:124,1"
      Dst: "[io.netty.resolver.dns.Cache].size()"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:124,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache:124,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ChannelBufferByteOutput].close()"
    functionSourceFile: "io.netty.handler.codec.marshalling.ChannelBufferByteOutput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ChannelBufferByteOutput].flush()"
    functionSourceFile: "io.netty.handler.codec.marshalling.ChannelBufferByteOutput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ChannelBufferByteOutput].write(int)"
    functionSourceFile: "io.netty.handler.codec.marshalling.ChannelBufferByteOutput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.ChannelBufferByteOutput:51,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ChannelBufferByteOutput].write(byte[])"
    functionSourceFile: "io.netty.handler.codec.marshalling.ChannelBufferByteOutput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.ChannelBufferByteOutput:56,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ChannelBufferByteOutput].write(byte[],int,int)"
    functionSourceFile: "io.netty.handler.codec.marshalling.ChannelBufferByteOutput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.marshalling.ChannelBufferByteOutput:61,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.marshalling.ChannelBufferByteOutput].getBuffer()"
    functionSourceFile: "io.netty.handler.codec.marshalling.ChannelBufferByteOutput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1].<init>(io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1"
    linkageType: ""
    functionLinenumber: 269
    functionLinenumberEnd: 271
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:270,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1"
    linkageType: ""
    functionLinenumber: 272
    functionLinenumberEnd: 291
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.CompleteChannelFuture].channel()"
    - "[io.netty.channel.DefaultChannelPromise].channel()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].channel()"
    - "[io.netty.channel.VoidChannelPromise].channel()"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].context(java.lang.Class)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].name()"
    - "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13].newWebSocketEncoder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].newWebSocketEncoder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker08].newWebSocketEncoder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07].newWebSocketEncoder()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.channel.ChannelFuture].channel()"
    - "[io.netty.channel.Channel].pipeline()"
    - "[io.netty.channel.ChannelPipeline].context(java.lang.Class)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].name()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].newWebSocketEncoder()"
    - "[io.netty.channel.ChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.util.concurrent.Future].cause()"
    functionUses: 1
    ICount: 27
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:273"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:288"
        BranchSideFuncs:
        - "pipeline()"
        - "channel()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:287"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "cause()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:276"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:279"
        BranchSideFuncs:
        - "context(java.lang.Class)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:278"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:279"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:284"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:283"
        BranchSideFuncs:
        - "newWebSocketEncoder()"
        - "name()"
        - "setSuccess()"
        - "addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:273,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:274,1"
      Dst: "[io.netty.channel.ChannelFuture].channel()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:274,1"
      Dst: "[io.netty.channel.Channel].pipeline()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:275,1"
      Dst: "[io.netty.channel.ChannelPipeline].context(java.lang.Class)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:280,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:280,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:284,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].name()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:284,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].newWebSocketEncoder()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:284,1"
      Dst: "[io.netty.channel.ChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:286,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:288,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1"
    linkageType: ""
    functionLinenumber: 269
    functionLinenumberEnd: 271
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1:270,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.TcpDnsQueryEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsQueryEncoder"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.TcpDnsQueryEncoder].<init>(io.netty.handler.codec.dns.DnsRecordEncoder)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryEncoder:34,1"
      Dst: "[io.netty.handler.codec.dns.TcpDnsQueryEncoder].<init>(io.netty.handler.codec.dns.DnsRecordEncoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.TcpDnsQueryEncoder].<init>(io.netty.handler.codec.dns.DnsRecordEncoder)"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsQueryEncoder"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecordEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    - "[io.netty.handler.codec.dns.DnsQueryEncoder].<init>(io.netty.handler.codec.dns.DnsRecordEncoder)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryEncoder:40,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryEncoder:41,1"
      Dst: "[io.netty.handler.codec.dns.DnsQueryEncoder].<init>(io.netty.handler.codec.dns.DnsRecordEncoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.TcpDnsQueryEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsQueryEncoder"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 54
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.dns.DnsQuery"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.handler.codec.dns.DnsQueryEncoder].encode(io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setShort(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].setShort(int,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 39
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryEncoder:48,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryEncoder:48,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryEncoder:49,1"
      Dst: "[io.netty.handler.codec.dns.DnsQueryEncoder].encode(io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryEncoder:52,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryEncoder:52,1"
      Dst: "[io.netty.buffer.ByteBuf].setShort(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.TcpDnsQueryEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.dns.DnsQuery,boolean)"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsQueryEncoder"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.dns.DnsQuery"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.dns.TcpDnsQueryEncoder:58"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.dns.TcpDnsQueryEncoder:61"
        BranchSideFuncs:
        - "ioBuffer(int)"
      - BranchSide: "io.netty.handler.codec.dns.TcpDnsQueryEncoder:60"
        BranchSideFuncs:
        - "heapBuffer(int)"
        - "alloc()"
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryEncoder:59,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryEncoder:59,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryEncoder:61,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.TcpDnsQueryEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsQueryEncoder"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.TcpDnsQueryEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryEncoder:24,1"
      Dst: "[io.netty.handler.codec.dns.TcpDnsQueryEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.dns.DnsQuery,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.TcpDnsQueryEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,java.lang.Object,boolean)"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsQueryEncoder"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.TcpDnsQueryEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.dns.DnsQuery,boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryEncoder:24,1"
      Dst: "[io.netty.handler.codec.dns.TcpDnsQueryEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.dns.DnsQuery,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].<init>(boolean,java.lang.CharSequence[])"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.lang.CharSequence[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpHeaders].<init>()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].newInvalidArraySizeException()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].validateHeaders(java.lang.CharSequence[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:57"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:60"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:59"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:63"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:56,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].<init>()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:58,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].newInvalidArraySizeException()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:61,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].validateHeaders(java.lang.CharSequence[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].newInvalidArraySizeException()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.IllegalArgumentException"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:67,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].validateHeaders(java.lang.CharSequence[])"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders$NameValidator].validateName(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:72,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders$NameValidator].validateName(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get0(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 86
    functionDepth: 5
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 5
    ICount: 20
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:85"
        BranchSideFuncs:
        - "hashCode(java.lang.CharSequence)"
        - "contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:84"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:80"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:76"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:80"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:76"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:77,1"
      Dst: "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:80,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get0(java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.lang.String:java.lang.StringBuilder:java.nio.CharBuffer].toString()"
    - "[java.lang.CharSequence].toString()"
    functionUses: 1
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:91"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:89"
        BranchSideFuncs:
        - "toString()"
        - "get0(java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:90,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get0(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:91,1"
      Dst: "[java.lang.CharSequence].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].getInt(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionDepth: 8
    returnType: "java.lang.Integer"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get0(java.lang.CharSequence)"
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertToInt(java.lang.CharSequence)"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 3
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:97"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:95"
        BranchSideFuncs:
        - "convertToInt(java.lang.CharSequence)"
        - "valueOf(int)"
        - "get0(java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:96,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get0(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:97,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].convertToInt(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:97,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].getInt(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 104
    functionDepth: 8
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get0(java.lang.CharSequence)"
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertToInt(java.lang.CharSequence)"
    functionUses: 5
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:103"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:101"
        BranchSideFuncs:
        - "convertToInt(java.lang.CharSequence)"
        - "get0(java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:102,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get0(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:103,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].convertToInt(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].getShort(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "java.lang.Short"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get0(java.lang.CharSequence)"
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertToShort(java.lang.CharSequence)"
    - "[java.lang.Short].valueOf(short)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:109"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:107"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:108,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get0(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:109,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].convertToShort(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:109,1"
      Dst: "[java.lang.Short].valueOf(short)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].getShort(java.lang.CharSequence,short)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionDepth: 9
    returnType: "short"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get0(java.lang.CharSequence)"
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertToShort(java.lang.CharSequence)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:115"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:113"
        BranchSideFuncs:
        - "convertToShort(java.lang.CharSequence)"
        - "get0(java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:114,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get0(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:115,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].convertToShort(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].getTimeMillis(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "java.lang.Long"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get0(java.lang.CharSequence)"
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertToTimeMillis(java.lang.CharSequence)"
    - "[java.lang.Long].valueOf(long)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:121"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:119"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:120,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get0(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:121,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].convertToTimeMillis(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:121,1"
      Dst: "[java.lang.Long].valueOf(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].getTimeMillis(java.lang.CharSequence,long)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get0(java.lang.CharSequence)"
    - "[io.netty.handler.codec.CharSequenceValueConverter].convertToTimeMillis(java.lang.CharSequence)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:126,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get0(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:127,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].convertToTimeMillis(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].getAll(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 144
    functionDepth: 5
    returnType: "java.util.List<String>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].isEmpty()"
    - "[java.util.Collections].emptyList()"
    - "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[java.lang.CharSequence].toString()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 27
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:132"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:135"
        BranchSideFuncs:
        - "emptyList()"
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:134"
        BranchSideFuncs:
        - "<init>(int)"
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:137"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:143"
        BranchSideFuncs:
        - "hashCode(java.lang.CharSequence)"
        - "contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:142"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:139"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:135"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "toString()"
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:134"
        BranchSideFuncs:
        - "<init>(int)"
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:139"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:135"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "toString()"
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:134"
        BranchSideFuncs:
        - "<init>(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:132,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].isEmpty()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:133,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:135,1"
      Dst: "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:136,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:139,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:140,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:140,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].isEmpty()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:211"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:210"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].entries()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].isEmpty()"
    - "[java.util.Collections].emptyList()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.lang.CharSequence].toString()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].<init>(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:151"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:150"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:152"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:155"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:148,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].isEmpty()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:149,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:151,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].size()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:151,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:153,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:154,1"
      Dst: "[java.util.AbstractMap$SimpleImmutableEntry].<init>(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:153,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].size()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 217
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].contains(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get0(java.lang.CharSequence)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:161"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:160"
        BranchSideFuncs:
        - "get0(java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:161,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].get0(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].contains(java.lang.String,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionDepth: 9
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:166,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 187
    functionDepth: 8
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].contentEquals(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 11
    ICount: 39
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:179"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:178"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:172"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:172"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:171"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:172"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:171"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:174"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:172"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:171"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:179"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:186"
        BranchSideFuncs:
        - "contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:185"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:180"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:179"
        BranchSideFuncs:
        - "contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
        - "contentEquals(java.lang.CharSequence,java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:178"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:179"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:173,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:181,1"
      Dst: "[io.netty.util.AsciiString].contentEquals(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].valueStringIterator(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionDepth: 7
    returnType: "java.util.Iterator<String>"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders,java.lang.CharSequence)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:191,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].valueCharSequenceIterator(java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionDepth: 7
    returnType: "java.util.Iterator<CharSequence>"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders,java.lang.CharSequence)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:196,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iterator()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 202
    functionDepth: 2
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders,io.netty.handler.codec.http.ReadOnlyHttpHeaders$1)"
    functionUses: 28
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:201,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders,io.netty.handler.codec.http.ReadOnlyHttpHeaders$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders,io.netty.handler.codec.http.ReadOnlyHttpHeaders$1)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator"
    linkageType: ""
    functionLinenumber: 328
    functionLinenumberEnd: 330
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    - "io.netty.handler.codec.http.ReadOnlyHttpHeaders$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator:329,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator"
    linkageType: ""
    functionLinenumber: 328
    functionLinenumberEnd: 330
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator:329,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iteratorCharSequence()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 207
    functionDepth: 2
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders,io.netty.handler.codec.http.ReadOnlyHttpHeaders$1)"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:206,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].<init>(io.netty.handler.codec.http.ReadOnlyHttpHeaders,io.netty.handler.codec.http.ReadOnlyHttpHeaders$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].names()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 220
    functionLinenumberEnd: 229
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].isEmpty()"
    - "[java.util.Collections].emptySet()"
    - "[java.util.LinkedHashSet].<init>(int)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].size()"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[java.lang.CharSequence].toString()"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 1
    ICount: 19
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:221"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:224"
        BranchSideFuncs:
        - "emptySet()"
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:223"
        BranchSideFuncs:
        - "<init>(int)"
        - "size()"
    - Branch String: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:227"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:221,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].isEmpty()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:222,1"
      Dst: "[java.util.Collections].emptySet()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:224,1"
      Dst: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].size()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:224,1"
      Dst: "[java.util.LinkedHashSet].<init>(int)"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:226,1"
      Dst: "[java.lang.CharSequence].toString()"
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:226,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].add(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 232
    functionLinenumberEnd: 234
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:233,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].add(java.lang.String,java.lang.Iterable<?>)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Iterable<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:238,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].addInt(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:243,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].addShort(java.lang.CharSequence,short)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:248,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].set(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 252
    functionLinenumberEnd: 254
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:253,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].set(java.lang.String,java.lang.Iterable<?>)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 257
    functionLinenumberEnd: 259
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Iterable<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:258,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].setInt(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 264
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 12
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:263,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].setShort(java.lang.CharSequence,short)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 269
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:268,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].remove(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 272
    functionLinenumberEnd: 274
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:273,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].clear()"
    functionSourceFile: "io.netty.handler.codec.http.ReadOnlyHttpHeaders"
    linkageType: ""
    functionLinenumber: 277
    functionLinenumberEnd: 279
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ReadOnlyHttpHeaders:278,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$2].run()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$2"
    linkageType: ""
    functionLinenumber: 470
    functionLinenumberEnd: 473
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].access$000(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 50
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$2:471,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].access$000(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseNotifier].<init>(io.netty.util.concurrent.Promise[])"
    functionSourceFile: "io.netty.util.concurrent.PromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Promise[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseNotifier].<init>(boolean,io.netty.util.concurrent.Promise[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseNotifier:45,1"
      Dst: "[io.netty.util.concurrent.PromiseNotifier].<init>(boolean,io.netty.util.concurrent.Promise[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseNotifier].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.util.concurrent.PromiseNotifier"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 134
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isCancelled()"
    - "[io.netty.util.concurrent.DefaultPromise].isCancelled()"
    - "[io.netty.util.concurrent.CompleteFuture].isCancelled()"
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.util.concurrent.FailedFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].get()"
    - "[io.netty.util.concurrent.DefaultPromise].get()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].get()"
    - "[io.netty.util.concurrent.AbstractFuture].get()"
    - "[io.netty.util.internal.PromiseNotificationUtil].trySuccess(io.netty.util.concurrent.Promise,java.lang.Object,io.netty.util.internal.logging.InternalLogger)"
    - "[io.netty.util.internal.PromiseNotificationUtil].tryCancel(io.netty.util.concurrent.Promise,io.netty.util.internal.logging.InternalLogger)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.channel.FailedChannelFuture:io.netty.channel.SucceededChannelFuture:io.netty.channel.VoidChannelPromise:io.netty.channel.group.VoidChannelGroupFuture:io.netty.util.concurrent.FailedFuture:io.netty.util.concurrent.SucceededFuture].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.util.internal.PromiseNotificationUtil].tryFailure(io.netty.util.concurrent.Promise,java.lang.Throwable,io.netty.util.internal.logging.InternalLogger)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[java.util.concurrent.Future].get()"
    - "[java.util.concurrent.Future].isCancelled()"
    - "[io.netty.util.concurrent.Future].cause()"
    functionUses: 7
    ICount: 41
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.PromiseNotifier:117"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseNotifier:117"
        BranchSideFuncs:
        - "isSuccess()"
        - "isCancelled()"
      - BranchSide: "io.netty.util.concurrent.PromiseNotifier:116"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.PromiseNotifier:118"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseNotifier:117"
        BranchSideFuncs:
        - "get()"
      - BranchSide: "io.netty.util.concurrent.PromiseNotifier:116"
        BranchSideFuncs:
        - "isSuccess()"
        - "isCancelled()"
    - Branch String: "io.netty.util.concurrent.PromiseNotifier:120"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseNotifier:122"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.PromiseNotifier:118"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseNotifier:128"
        BranchSideFuncs:
        - "get()"
      - BranchSide: "io.netty.util.concurrent.PromiseNotifier:127"
        BranchSideFuncs:
        - "cause()"
    - Branch String: "io.netty.util.concurrent.PromiseNotifier:124"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseNotifier:123"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.PromiseNotifier:129"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseNotifier:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseNotifier:118,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.util.concurrent.PromiseNotifier:119,1"
      Dst: "[java.util.concurrent.Future].get()"
    - Src: "io.netty.util.concurrent.PromiseNotifier:121,1"
      Dst: "[io.netty.util.internal.PromiseNotificationUtil].trySuccess(io.netty.util.concurrent.Promise,java.lang.Object,io.netty.util.internal.logging.InternalLogger)"
    - Src: "io.netty.util.concurrent.PromiseNotifier:118,1"
      Dst: "[java.util.concurrent.Future].isCancelled()"
    - Src: "io.netty.util.concurrent.PromiseNotifier:125,1"
      Dst: "[io.netty.util.internal.PromiseNotificationUtil].tryCancel(io.netty.util.concurrent.Promise,io.netty.util.internal.logging.InternalLogger)"
    - Src: "io.netty.util.concurrent.PromiseNotifier:128,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.util.concurrent.PromiseNotifier:130,1"
      Dst: "[io.netty.util.internal.PromiseNotificationUtil].tryFailure(io.netty.util.concurrent.Promise,java.lang.Throwable,io.netty.util.internal.logging.InternalLogger)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 7
  - functionName: "[io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe].prepareToClose()"
    functionSourceFile: "io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 167
    functionDepth: 6
    returnType: "java.util.concurrent.Executor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].getSoLinger()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isOpen()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.channel.epoll.EpollEventLoop].remove(io.netty.channel.epoll.AbstractEpollChannel)"
    functionUses: 2
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe:153"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe:164"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe:153"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe:153,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].isOpen()"
    - Src: "io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe:153,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - Src: "io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe:153,1"
      Dst: "[io.netty.channel.epoll.EpollSocketChannelConfig].getSoLinger()"
    - Src: "io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe:158,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.epoll.EpollSocketChannel$EpollSocketChannelUnsafe:158,1"
      Dst: "[io.netty.channel.epoll.EpollEventLoop].remove(io.netty.channel.epoll.AbstractEpollChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollEventLoop].remove(io.netty.channel.epoll.AbstractEpollChannel)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoop"
    linkageType: ""
    functionLinenumber: 232
    functionLinenumberEnd: 249
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.AbstractEpollChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.util.collection.IntObjectHashMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].put(int,java.lang.Object)"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isOpen()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isOpen()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isOpen()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isOpen()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isOpen()"
    - "[io.netty.channel.epoll.Native].epollCtlDel(int,int)"
    - "[io.netty.util.collection.IntObjectMap].remove(int)"
    - "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    functionUses: 2
    ICount: 31
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:233"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:234"
        BranchSideFuncs:
        - "remove(int)"
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:233"
        BranchSideFuncs:
        - "remove(int)"
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:233"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:234"
        BranchSideFuncs:
        - "remove(int)"
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:233"
        BranchSideFuncs:
        - "remove(int)"
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:237"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:242"
        BranchSideFuncs:
        - "isOpen()"
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:237"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:242"
        BranchSideFuncs:
        - "isOpen()"
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:242"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:248"
        BranchSideFuncs:
        - "isOpen()"
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:247"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:242"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:248"
        BranchSideFuncs:
        - "isOpen()"
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:247"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:243"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:247"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoop:233,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - Src: "io.netty.channel.epoll.EpollEventLoop:233,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.epoll.EpollEventLoop:234,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.EpollEventLoop:236,1"
      Dst: "[io.netty.util.collection.IntObjectMap].remove(int)"
    - Src: "io.netty.channel.epoll.EpollEventLoop:239,1"
      Dst: "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    - Src: "io.netty.channel.epoll.EpollEventLoop:242,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].isOpen()"
    - Src: "io.netty.channel.epoll.EpollEventLoop:246,1"
      Dst: "[io.netty.channel.epoll.Native].epollCtlDel(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.spdy.SpdyProtocolException].<init>()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyProtocolException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyProtocolException:29,1"
      Dst: "[java.lang.Exception].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyProtocolException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyProtocolException"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyProtocolException:42,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyProtocolException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyProtocolException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyProtocolException:49,1"
      Dst: "[java.lang.Exception].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyProtocolException].newStatic(java.lang.String,java.lang.Class<?>,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyProtocolException"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 60
    functionDepth: 3
    returnType: "io.netty.handler.codec.spdy.SpdyProtocolException"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Class<?>"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.handler.codec.spdy.SpdyProtocolException$StacklessSpdyProtocolException].<init>(java.lang.String,boolean)"
    - "[io.netty.handler.codec.spdy.SpdyProtocolException$StacklessSpdyProtocolException].<init>(java.lang.String)"
    - "[io.netty.util.internal.ThrowableUtil].unknownStackTrace(java.lang.Throwable,java.lang.Class,java.lang.String)"
    functionUses: 2
    ICount: 15
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyProtocolException:54"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyProtocolException:57"
        BranchSideFuncs:
        - "<init>(java.lang.String,boolean)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyProtocolException:56"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyProtocolException:54,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.codec.spdy.SpdyProtocolException:55,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyProtocolException$StacklessSpdyProtocolException].<init>(java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyProtocolException:57,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyProtocolException$StacklessSpdyProtocolException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyProtocolException:59,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].unknownStackTrace(java.lang.Throwable,java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyProtocolException].<init>(java.lang.String,boolean,io.netty.handler.codec.spdy.SpdyProtocolException$1)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyProtocolException"
    linkageType: ""
    functionLinenumber: 21
    functionLinenumberEnd: 23
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "boolean"
    - "io.netty.handler.codec.spdy.SpdyProtocolException$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyProtocolException].<init>(java.lang.String,boolean)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyProtocolException:22,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyProtocolException].<init>(java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyProtocolException].<init>(java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyProtocolException"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable,boolean,boolean)"
    - "[java.lang.AssertionError].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyProtocolException:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyProtocolException:67"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyProtocolException:66"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyProtocolException:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyProtocolException:67"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyProtocolException:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyProtocolException:65,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable,boolean,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdyProtocolException:66,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket07FrameEncoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket07FrameEncoder"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder].<init>(boolean)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket07FrameEncoder:71,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameEncoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].toString()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 49
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[jaz.Zer].isEmpty()"
    - "[java.lang.StringBuilder:java.util.AbstractSequentialList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.List].isEmpty()"
    functionUses: 19
    ICount: 26
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload:42"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload:44"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload:45"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload:48"
        BranchSideFuncs:
        - "setLength(int)"
        - "length()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload:47"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload:41,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload:41,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload:41,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload:42,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload:43,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload:43,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload:45,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload:46,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload:46,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttUnsubscribePayload:48,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.ChannelFutureListener$2].<init>()"
    functionSourceFile: "io.netty.channel.ChannelFutureListener$2"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelFutureListener$2:52,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelFutureListener$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.ChannelFutureListener$2"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.CompleteChannelFuture:io.netty.channel.DefaultChannelProgressivePromise:io.netty.channel.DefaultChannelPromise:io.netty.channel.FailedChannelFuture:io.netty.channel.SucceededChannelFuture:io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.AbstractChannel].close()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].close()"
    - "[io.netty.channel.embedded.EmbeddedChannel].close()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.channel.ChannelFuture].channel()"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 1
    ICount: 7
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelFutureListener$2:55"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelFutureListener$2:58"
        BranchSideFuncs:
        - "channel()"
        - "close()"
      - BranchSide: "io.netty.channel.ChannelFutureListener$2:57"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelFutureListener$2:55,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.channel.ChannelFutureListener$2:56,1"
      Dst: "[io.netty.channel.ChannelFuture].channel()"
    - Src: "io.netty.channel.ChannelFutureListener$2:56,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelFutureListener$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.ChannelFutureListener$2"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelFutureListener$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelFutureListener$2:52,1"
      Dst: "[io.netty.channel.ChannelFutureListener$2].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker].<init>(int,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:44,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker].<init>(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker].<init>(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker].<init>(int,boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:54,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker].<init>(int,boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker].<init>(int,boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:68"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:67"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:71"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:70"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:66,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:68,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:68,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:68,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:68,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:68,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:73,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker].newRequestData()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 81
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].<init>(java.lang.String,java.util.Map)"
    - "[java.util.Collections].emptyMap()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:79"
        BranchSideFuncs:
        - "emptyMap()"
        - "<init>(java.lang.String,java.util.Map)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:80,1"
      Dst: "[java.util.Collections].emptyMap()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:80,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].<init>(java.lang.String,java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker].handshakeExtension(io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 94
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.websocketx.extensions.WebSocketClientExtension"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].name()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].isEmpty()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData:io.netty.util.collection.ByteCollections$EmptyMap:io.netty.util.collection.ByteObjectHashMap:io.netty.util.collection.CharCollections$EmptyMap:io.netty.util.collection.CharObjectHashMap:io.netty.util.collection.IntCollections$EmptyMap:io.netty.util.collection.IntObjectHashMap:io.netty.util.collection.LongCollections$EmptyMap:io.netty.util.collection.LongObjectHashMap:io.netty.util.collection.ShortCollections$EmptyMap:io.netty.util.collection.ShortObjectHashMap:java.util.AbstractMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.Properties:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].parameters()"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension].<init>(int,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].parameters()"
    - "[java.util.Map].isEmpty()"
    functionUses: 1
    ICount: 20
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:85"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:90"
        BranchSideFuncs:
        - "name()"
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:89"
        BranchSideFuncs:
        - "isEmpty()"
        - "parameters()"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:86"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:89"
        BranchSideFuncs:
        - "isEmpty()"
        - "parameters()"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:93"
        BranchSideFuncs:
        - "<init>(int,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:85,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].name()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:85,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:90,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionData].parameters()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:90,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker:91,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension].<init>(int,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension].<init>(int,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 106
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension:102,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler$1].<init>(io.netty.handler.timeout.IdleStateHandler)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.timeout.IdleStateHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler$1:103,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler$1"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 109
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.IdleStateHandler].access$002(io.netty.handler.timeout.IdleStateHandler,long)"
    - "[io.netty.handler.timeout.IdleStateHandler].ticksInNanos()"
    - "[io.netty.handler.timeout.IdleStateHandler].access$102(io.netty.handler.timeout.IdleStateHandler,boolean)"
    - "[io.netty.handler.timeout.IdleStateHandler].access$202(io.netty.handler.timeout.IdleStateHandler,boolean)"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler$1:106,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].ticksInNanos()"
    - Src: "io.netty.handler.timeout.IdleStateHandler$1:106,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].access$002(io.netty.handler.timeout.IdleStateHandler,long)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$1:107,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].access$202(io.netty.handler.timeout.IdleStateHandler,boolean)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$1:107,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].access$102(io.netty.handler.timeout.IdleStateHandler,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler$1"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.IdleStateHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler$1:103,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].add(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap"
    linkageType: ""
    functionLinenumber: 570
    functionLinenumberEnd: 576
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].resizeIfNecessary(int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap:571,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].resizeIfNecessary(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].resizeIfNecessary(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap"
    linkageType: ""
    functionLinenumber: 596
    functionLinenumberEnd: 601
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].copyOf(java.lang.Object[],int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry].size()"
    functionUses: 1
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap:597"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap:600"
        BranchSideFuncs:
        - "copyOf(java.lang.Object[],int)"
        - "size()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap:599"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap:598,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$PropertyKeyRegistry].size()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap:598,1"
      Dst: "[java.util.Arrays].copyOf(java.lang.Object[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].get(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap"
    linkageType: ""
    functionLinenumber: 579
    functionLinenumberEnd: 584
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap:580"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap:583"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap:582"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].remove(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap"
    linkageType: ""
    functionLinenumber: 587
    functionLinenumberEnd: 594
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap:589"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap:593"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap:592"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.channel.epoll.EpollServerSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].config()"
    - "[io.netty.channel.embedded.EmbeddedChannel].config()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].config()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].config()"
    - "[io.netty.bootstrap.FailedChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].config()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].config()"
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.epoll.EpollServerDomainSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueSocketChannel].config()"
    - "[io.netty.channel.kqueue.KQueueServerDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].config()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.local.LocalServerChannel].config()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].config()"
    - "[io.netty.channel.local.LocalChannel].config()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].config()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].config()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].config()"
    - "[io.netty.channel.socket.DefaultSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.nio.NioDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.DefaultDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.oio.DefaultOioSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.udt.DefaultUdtServerChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.epoll.EpollDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.oio.DefaultOioServerSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.socket.oio.DefaultOioDatagramChannelConfig].setAutoRead(boolean)"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.channel.ChannelConfig].setAutoRead(boolean)"
    functionUses: 49
    ICount: 5
    EdgeCount: 58
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1:199,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1:199,1"
      Dst: "[io.netty.channel.ChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils].<init>()"
    functionSourceFile: "io.netty.util.internal.SocketUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils:48,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils].bind(java.nio.channels.SocketChannel,java.net.SocketAddress)"
    functionSourceFile: "io.netty.util.internal.SocketUtils"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 113
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.SocketChannel"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils$4].<init>(java.nio.channels.SocketChannel,java.net.SocketAddress)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - "[io.netty.util.internal.SocketUtils$4].run()"
    - "[java.security.PrivilegedActionException].getCause()"
    functionUses: 1
    ICount: 12
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils:102,1"
      Dst: "[io.netty.util.internal.SocketUtils$4].<init>(java.nio.channels.SocketChannel,java.net.SocketAddress)"
    - Src: "io.netty.util.internal.SocketUtils:102,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - Src: "io.netty.util.internal.SocketUtils:110,1"
      Dst: "[java.security.PrivilegedActionException].getCause()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils].accept(java.nio.channels.ServerSocketChannel)"
    functionSourceFile: "io.netty.util.internal.SocketUtils"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 124
    functionDepth: 1
    returnType: "java.nio.channels.SocketChannel"
    argCount: 1
    argTypes:
    - "java.nio.channels.ServerSocketChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils$5].<init>(java.nio.channels.ServerSocketChannel)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - "[io.netty.util.internal.SocketUtils$5].run()"
    - "[java.security.PrivilegedActionException].getCause()"
    functionUses: 2
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils:116,1"
      Dst: "[io.netty.util.internal.SocketUtils$5].<init>(java.nio.channels.ServerSocketChannel)"
    - Src: "io.netty.util.internal.SocketUtils:116,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedExceptionAction)"
    - Src: "io.netty.util.internal.SocketUtils:123,1"
      Dst: "[java.security.PrivilegedActionException].getCause()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$5].<init>(java.nio.channels.ServerSocketChannel)"
    functionSourceFile: "io.netty.util.internal.SocketUtils$5"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.ServerSocketChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$5:116,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils].loopbackAddress()"
    functionSourceFile: "io.netty.util.internal.SocketUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.net.InetAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils$12].<init>()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils:205,1"
      Dst: "[io.netty.util.internal.SocketUtils$12].<init>()"
    - Src: "io.netty.util.internal.SocketUtils:205,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsQueryContext$2].<init>(io.netty.resolver.dns.DnsQueryContext,io.netty.handler.codec.dns.DnsQuery,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.resolver.dns.DnsQueryContext$2"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.resolver.dns.DnsQueryContext"
    - "io.netty.handler.codec.dns.DnsQuery"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsQueryContext$2:149,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsQueryContext$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.resolver.dns.DnsQueryContext$2"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.util.concurrent.FailedFuture].isSuccess()"
    - "[io.netty.util.concurrent.SucceededFuture].isSuccess()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.resolver.dns.DnsQueryContext].access$000(io.netty.resolver.dns.DnsQueryContext,io.netty.handler.codec.dns.DnsQuery,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.util.concurrent.FailedFuture].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.util.concurrent.SucceededFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.resolver.dns.DnsQueryContext].access$100(io.netty.resolver.dns.DnsQueryContext,io.netty.handler.codec.dns.DnsQuery,java.lang.Throwable,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].cause()"
    functionUses: 1
    ICount: 15
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsQueryContext$2:152"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsQueryContext$2:157"
        BranchSideFuncs:
        - "access$100(io.netty.resolver.dns.DnsQueryContext,io.netty.handler.codec.dns.DnsQuery,java.lang.Throwable,io.netty.channel.ChannelPromise)"
        - "cause()"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsQueryContext$2:152,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.resolver.dns.DnsQueryContext$2:156,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].access$000(io.netty.resolver.dns.DnsQueryContext,io.netty.handler.codec.dns.DnsQuery,boolean,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.resolver.dns.DnsQueryContext$2:158,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.resolver.dns.DnsQueryContext$2:159,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].access$100(io.netty.resolver.dns.DnsQueryContext,io.netty.handler.codec.dns.DnsQuery,java.lang.Throwable,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslProtocols].<init>()"
    functionSourceFile: "io.netty.handler.ssl.SslProtocols"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslProtocols:73,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.net.URI"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "java.lang.String"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:71,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.net.URI"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "java.lang.String"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,long)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:101,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 9
    argTypes:
    - "java.net.URI"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "java.lang.String"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    - "boolean"
    - "boolean"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,long,boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:134,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,long,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 10
    argTypes:
    - "java.net.URI"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "java.lang.String"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    - "boolean"
    - "boolean"
    - "long"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,io.netty.handler.codec.http.HttpHeaders,int,long,boolean)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:171,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,io.netty.handler.codec.http.HttpHeaders,int,long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07].newHandshakeRequest()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 246
    functionDepth: 8
    returnType: "io.netty.handler.codec.http.FullHttpRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].uri()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil].randomBytes(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil].base64(byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil].sha1(byte[])"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].upgradeUrl(java.net.URI)"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].websocketHostValue(java.net.URI)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].websocketOriginValue(java.net.URI)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].expectedSubprotocol()"
    - "[java.lang.String].isEmpty()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketVersion].toAsciiString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].version()"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 66
    EdgeCount: 52
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:208"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:215"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:214"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf)"
        - "headers()"
        - "upgradeUrl(java.net.URI)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:219"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:228"
        BranchSideFuncs:
        - "add(io.netty.handler.codec.http.HttpHeaders)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:227"
        BranchSideFuncs:
        - "websocketHostValue(java.net.URI)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:221"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:230"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:235"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:239"
        BranchSideFuncs:
        - "websocketOriginValue(java.net.URI)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:238"
        BranchSideFuncs:
        - "isEmpty()"
        - "expectedSubprotocol()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:240"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:244"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:243"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
        - "toAsciiString()"
        - "version()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:240"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:244"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:243"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
        - "toAsciiString()"
        - "version()"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:198,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].uri()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:201,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].randomBytes(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:202,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].base64(byte[])"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:204,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:204,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:204,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:205,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:205,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].sha1(byte[])"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:208,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:209,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:215,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].upgradeUrl(java.net.URI)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:215,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:217,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:220,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:221,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:225,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].websocketHostValue(java.net.URI)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:225,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:236,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].websocketOriginValue(java.net.URI)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:239,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].expectedSubprotocol()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:240,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:244,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].version()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:244,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketVersion].toAsciiString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].randomBytes(int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketUtil"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextBytes(byte[])"
    - "[java.security.SecureRandom:java.util.Random].nextBytes(byte[])"
    - "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - "[java.util.Random].nextBytes(byte[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:126,1"
      Dst: "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:126,1"
      Dst: "[java.util.Random].nextBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketVersion].toAsciiString()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "io.netty.util.AsciiString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 4
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketVersion:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketVersion:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketVersion:73,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketVersion:73,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketVersion:73,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketVersion:73,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketVersion:73,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07].verify(io.netty.handler.codec.http.FullHttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 289
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.FullHttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException].<init>(java.lang.String,io.netty.handler.codec.http.HttpResponse)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.HttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 1
    ICount: 57
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:268"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:272"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:271"
        BranchSideFuncs:
        - "contentEqualsIgnoreCase(java.lang.CharSequence)"
        - "headers()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:274"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:278"
        BranchSideFuncs:
        - "append(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:277"
        BranchSideFuncs:
        - "containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:278"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:283"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:282"
        BranchSideFuncs:
        - "get(java.lang.CharSequence)"
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:284"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:285"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String,io.netty.handler.codec.http.HttpResponse)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:284"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String,io.netty.handler.codec.http.HttpResponse)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:284"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:288"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String,io.netty.handler.codec.http.HttpResponse)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:287"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:267,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:268,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:269,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:269,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:269,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:269,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:269,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException].<init>(java.lang.String,io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:272,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:273,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:274,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:278,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:284,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:285,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07].newWebsocketDecoder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07"
    linkageType: ""
    functionLinenumber: 291
    functionLinenumberEnd: 293
    functionDepth: 5
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketFrameDecoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder].<init>(boolean,boolean,int,boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].maxFramePayloadLength()"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:292,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].maxFramePayloadLength()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:292,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder].<init>(boolean,boolean,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder].<init>(boolean,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 105
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].newBuilder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].expectMaskedFrames(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowExtensions(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].maxFramePayloadLength(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowMaskMismatch(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].build()"
    functionUses: 1
    ICount: 13
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder:98,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].newBuilder()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder:99,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].expectMaskedFrames(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder:100,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowExtensions(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder:101,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].maxFramePayloadLength(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder:102,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowMaskMismatch(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder:103,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].build()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder:98,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].newBuilder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$1)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig:108,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket07FrameDecoder:113,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07].newWebSocketEncoder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07"
    linkageType: ""
    functionLinenumber: 296
    functionLinenumberEnd: 298
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketFrameEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket07FrameEncoder].<init>(boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:297,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket07FrameEncoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07].setForceCloseTimeoutMillis(long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].setForceCloseTimeoutMillis(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker07:302,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].setForceCloseTimeoutMillis(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameStreamException].<init>(io.netty.handler.codec.http2.Http2FrameStream,io.netty.handler.codec.http2.Http2Error,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameStreamException"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 39
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameStream"
    - "io.netty.handler.codec.http2.Http2Error"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.io.InvalidClassException:java.lang.Throwable:java.net.URISyntaxException:java.nio.file.FileSystemException:java.nio.file.InvalidPathException:java.security.cert.CertificateRevokedException:java.util.regex.PatternSyntaxException:sun.nio.fs.UnixException].getMessage()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    functionUses: 1
    ICount: 13
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameStreamException:35,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.handler.codec.http2.Http2FrameStreamException:35,1"
      Dst: "[java.lang.Exception].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2FrameStreamException:36,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameStreamException].error()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameStreamException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Error"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].<init>(int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.atomic.AtomicInteger].<init>()"
    - "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamComparator].<init>(io.netty.handler.codec.spdy.SpdySession)"
    - "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:32,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:34,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:35,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamComparator].<init>(io.netty.handler.codec.spdy.SpdySession)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:40,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].numActiveStreams(boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].get()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:45"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:47"
        BranchSideFuncs:
        - "get()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:46,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].noActiveStreams()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].isEmpty()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].isEmpty()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap:io.netty.util.collection.ByteObjectHashMap:io.netty.util.collection.CharCollections$EmptyMap:io.netty.util.collection.CharObjectHashMap:io.netty.util.collection.IntCollections$EmptyMap:io.netty.util.collection.IntObjectHashMap:io.netty.util.collection.LongCollections$EmptyMap:io.netty.util.collection.LongObjectHashMap:io.netty.util.collection.ShortCollections$EmptyMap:io.netty.util.collection.ShortObjectHashMap:java.util.AbstractMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.Properties:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].isEmpty()"
    - "[java.util.Map].isEmpty()"
    functionUses: 3
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:53,1"
      Dst: "[java.util.Map].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].isActiveStream(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].containsKey(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].containsKey(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].containsKey(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].containsKey(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].containsKey(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].containsKey(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].containsKey(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].containsKey(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].containsKey(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].containsKey(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].containsKey(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap:io.netty.util.collection.CharCollections$EmptyMap:io.netty.util.collection.IntCollections$EmptyMap:io.netty.util.collection.LongCollections$EmptyMap:io.netty.util.collection.ShortCollections$EmptyMap:java.util.AbstractMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].containsKey(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 2
    ICount: 6
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:57,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:57,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].activeStreams()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeMap].<init>(java.util.Comparator)"
    - "[java.util.TreeMap].putAll(java.util.Map)"
    - "[java.util.Map].putAll(java.util.Map)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:62,1"
      Dst: "[java.util.TreeMap].<init>(java.util.Comparator)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:63,1"
      Dst: "[java.util.Map].putAll(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].acceptStream(int,byte,boolean,boolean,int,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 82
    functionDepth: 1
    returnType: "void"
    argCount: 7
    argTypes:
    - "int"
    - "byte"
    - "boolean"
    - "boolean"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].<init>(byte,boolean,boolean,int,int)"
    - "[io.netty.util.collection.ShortObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].put(java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.concurrent.atomic.AtomicInteger].incrementAndGet()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 24
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:71"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "<init>(byte,boolean,boolean,int,int)"
        - "valueOf(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:70"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "<init>(byte,boolean,boolean,int,int)"
        - "valueOf(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:81"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "<init>(byte,boolean,boolean,int,int)"
        - "valueOf(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:80"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:73"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:81"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:80"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:74"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:77"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:76"
        BranchSideFuncs:
        - "incrementAndGet()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:71,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:71,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].<init>(byte,boolean,boolean,int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:71,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:75,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].incrementAndGet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$StreamState].<init>(byte,boolean,boolean,int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    linkageType: ""
    functionLinenumber: 245
    functionLinenumberEnd: 253
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "byte"
    - "boolean"
    - "boolean"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentLinkedQueue].<init>()"
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    functionUses: 1
    ICount: 20
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession$StreamState:246,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdySession$StreamState:242,1"
      Dst: "[java.util.concurrent.ConcurrentLinkedQueue].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdySession$StreamState:250,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].removeActiveStream(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].remove(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.concurrent.atomic.AtomicInteger].decrementAndGet()"
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 3
    ICount: 15
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:85"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:91"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:86"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:89"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:88"
        BranchSideFuncs:
        - "decrementAndGet()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:84,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:84,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:87,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].decrementAndGet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].removeStream(int,java.lang.Throwable,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 101
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.Throwable"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySession].removeActiveStream(int,boolean)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].clearPendingWrites(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:97"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:100"
        BranchSideFuncs:
        - "clearPendingWrites(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:99"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:96,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].removeActiveStream(int,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:98,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].clearPendingWrites(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$StreamState].clearPendingWrites(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    linkageType: ""
    functionLinenumber: 315
    functionLinenumberEnd: 323
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.handler.codec.spdy.SpdySession$PendingWrite].fail(java.lang.Throwable)"
    - "[java.util.Queue].poll()"
    functionUses: 1
    ICount: 10
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession$StreamState:317"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession$StreamState:320"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession$StreamState:319"
        BranchSideFuncs:
        - "fail(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession$StreamState:316,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.handler.codec.spdy.SpdySession$StreamState:320,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$PendingWrite].fail(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$PendingWrite].fail(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$PendingWrite"
    linkageType: ""
    functionLinenumber: 352
    functionLinenumberEnd: 356
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].release()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 7
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession$PendingWrite:353,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.spdy.SpdySession$PendingWrite:354,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].isRemoteSideClosed(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 105
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].isRemoteSideClosed()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 4
    ICount: 13
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:102"
        BranchSideFuncs:
        - "valueOf(int)"
        - "isRemoteSideClosed()"
        - "get(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:102"
        BranchSideFuncs:
        - "valueOf(int)"
        - "isRemoteSideClosed()"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:103,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:103,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:104,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].isRemoteSideClosed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$StreamState].isRemoteSideClosed()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    linkageType: ""
    functionLinenumber: 258
    functionLinenumberEnd: 260
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].closeRemoteSide(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 116
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].closeRemoteSide()"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].isLocalSideClosed()"
    - "[io.netty.handler.codec.spdy.SpdySession].removeActiveStream(int,boolean)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:109"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:115"
        BranchSideFuncs:
        - "isLocalSideClosed()"
        - "closeRemoteSide()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:114"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:115"
        BranchSideFuncs:
        - "removeActiveStream(int,boolean)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:108,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:108,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:110,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].closeRemoteSide()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:111,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].isLocalSideClosed()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:112,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].removeActiveStream(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$StreamState].closeRemoteSide()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 265
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$StreamState].isLocalSideClosed()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 268
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].isLocalSideClosed(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].isLocalSideClosed()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 4
    ICount: 13
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:119"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:117"
        BranchSideFuncs:
        - "isLocalSideClosed()"
        - "valueOf(int)"
        - "get(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:119"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:117"
        BranchSideFuncs:
        - "isLocalSideClosed()"
        - "valueOf(int)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:118,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:118,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:119,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].isLocalSideClosed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].closeLocalSide(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 131
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].closeLocalSide()"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].isRemoteSideClosed()"
    - "[io.netty.handler.codec.spdy.SpdySession].removeActiveStream(int,boolean)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:130"
        BranchSideFuncs:
        - "isRemoteSideClosed()"
        - "closeLocalSide()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:129"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:130"
        BranchSideFuncs:
        - "removeActiveStream(int,boolean)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:123,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:123,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:125,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].closeLocalSide()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:126,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].isRemoteSideClosed()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:127,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].removeActiveStream(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$StreamState].closeLocalSide()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    linkageType: ""
    functionLinenumber: 270
    functionLinenumberEnd: 273
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].hasReceivedReply(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].hasReceivedReply()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 13
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:136"
        BranchSideFuncs:
        - "hasReceivedReply()"
        - "valueOf(int)"
        - "get(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:136"
        BranchSideFuncs:
        - "hasReceivedReply()"
        - "valueOf(int)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:137,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:137,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:138,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].hasReceivedReply()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$StreamState].hasReceivedReply()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    linkageType: ""
    functionLinenumber: 274
    functionLinenumberEnd: 276
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].receivedReply(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 147
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].receivedReply()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:143"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:146"
        BranchSideFuncs:
        - "receivedReply()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:142,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:142,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:144,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].receivedReply()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$StreamState].receivedReply()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    linkageType: ""
    functionLinenumber: 278
    functionLinenumberEnd: 281
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].getSendWindowSize(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 155
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].get()"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].getSendWindowSize()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 5
    ICount: 16
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:153"
        BranchSideFuncs:
        - "get()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:152"
        BranchSideFuncs:
        - "valueOf(int)"
        - "getSendWindowSize()"
        - "get(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:154"
      Branch Sides: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:150,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].get()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:153,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:153,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:154,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].getSendWindowSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$StreamState].getSendWindowSize()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 284
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].get()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession$StreamState:283,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].updateSendWindowSize(int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 164
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].addAndGet(int)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].updateSendWindowSize(int)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 9
    ICount: 17
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:158"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:162"
        BranchSideFuncs:
        - "addAndGet(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:161"
        BranchSideFuncs:
        - "updateSendWindowSize(int)"
        - "valueOf(int)"
        - "get(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:163"
      Branch Sides: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:159,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].addAndGet(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:162,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:162,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:163,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].updateSendWindowSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$StreamState].updateSendWindowSize(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 288
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].addAndGet(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession$StreamState:287,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].addAndGet(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].updateReceiveWindowSize(int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 179
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].addAndGet(int)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].setReceiveWindowSizeLowerBound(int)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].updateReceiveWindowSize(int)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 4
    ICount: 18
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:171"
        BranchSideFuncs:
        - "addAndGet(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:170"
        BranchSideFuncs:
        - "valueOf(int)"
        - "get(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:172"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:175"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:174"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:178"
        BranchSideFuncs:
        - "setReceiveWindowSizeLowerBound(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:177"
        BranchSideFuncs:
        - "updateReceiveWindowSize(int)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:168,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].addAndGet(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:171,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:171,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:176,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].setReceiveWindowSizeLowerBound(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:178,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].updateReceiveWindowSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$StreamState].setReceiveWindowSizeLowerBound(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    linkageType: ""
    functionLinenumber: 298
    functionLinenumberEnd: 301
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$StreamState].updateReceiveWindowSize(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 292
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].addAndGet(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession$StreamState:291,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].addAndGet(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].getReceiveWindowSizeLowerBound(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 188
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].getReceiveWindowSizeLowerBound()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:182"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:186"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:185"
        BranchSideFuncs:
        - "valueOf(int)"
        - "get(java.lang.Object)"
        - "getReceiveWindowSizeLowerBound()"
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:185"
        BranchSideFuncs:
        - "valueOf(int)"
        - "get(java.lang.Object)"
        - "getReceiveWindowSizeLowerBound()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:186,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:186,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:187,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].getReceiveWindowSizeLowerBound()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$StreamState].getReceiveWindowSizeLowerBound()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    linkageType: ""
    functionLinenumber: 294
    functionLinenumberEnd: 296
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].updateAllSendWindowSizes(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 195
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.util.TreeMap].values()"
    - "[java.util.Hashtable].values()"
    - "[java.security.Provider].values()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].values()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].values()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].values()"
    - "[java.util.HashMap].values()"
    - "[io.netty.util.collection.IntObjectHashMap].values()"
    - "[java.util.jar.Attributes].values()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.CharObjectHashMap].values()"
    - "[io.netty.util.collection.LongObjectHashMap].values()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].values()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].values()"
    - "[io.netty.util.collection.ByteObjectHashMap].values()"
    - "[java.util.IdentityHashMap].values()"
    - "[java.util.LinkedHashMap].values()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].values()"
    - "[java.util.Properties].values()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].values()"
    - "[java.util.concurrent.ConcurrentHashMap].values()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].values()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].values()"
    - "[io.netty.util.collection.ShortObjectHashMap].values()"
    - "[java.util.WeakHashMap].values()"
    - "[java.util.AbstractMap].values()"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].updateSendWindowSize(int)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 193
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:191"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:194"
        BranchSideFuncs:
        - "values()"
        - "hasNext()"
        - "updateSendWindowSize(int)"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:191,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:191,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:191,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:191,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:192,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].updateSendWindowSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].updateAllReceiveWindowSizes(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 204
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.util.TreeMap].values()"
    - "[java.util.Hashtable].values()"
    - "[java.security.Provider].values()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].values()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].values()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].values()"
    - "[java.util.HashMap].values()"
    - "[io.netty.util.collection.IntObjectHashMap].values()"
    - "[java.util.jar.Attributes].values()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.CharObjectHashMap].values()"
    - "[io.netty.util.collection.LongObjectHashMap].values()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].values()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].values()"
    - "[io.netty.util.collection.ByteObjectHashMap].values()"
    - "[java.util.IdentityHashMap].values()"
    - "[java.util.LinkedHashMap].values()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].values()"
    - "[java.util.Properties].values()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].values()"
    - "[java.util.concurrent.ConcurrentHashMap].values()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].values()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].values()"
    - "[io.netty.util.collection.ShortObjectHashMap].values()"
    - "[java.util.WeakHashMap].values()"
    - "[java.util.AbstractMap].values()"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].updateReceiveWindowSize(int)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].setReceiveWindowSizeLowerBound(int)"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 14
    EdgeCount: 194
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:197"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:203"
        BranchSideFuncs:
        - "values()"
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "updateReceiveWindowSize(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:202"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:202"
        BranchSideFuncs:
        - "setReceiveWindowSizeLowerBound(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:201"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:197,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:197,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:197,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:197,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:198,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].updateReceiveWindowSize(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:200,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].setReceiveWindowSizeLowerBound(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].putPendingWrite(int,io.netty.handler.codec.spdy.SpdySession$PendingWrite)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.spdy.SpdySession$PendingWrite"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].putPendingWrite(io.netty.handler.codec.spdy.SpdySession$PendingWrite)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 2
    ICount: 14
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:207"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:205"
        BranchSideFuncs:
        - "putPendingWrite(io.netty.handler.codec.spdy.SpdySession$PendingWrite)"
        - "valueOf(int)"
        - "get(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:207"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:205"
        BranchSideFuncs:
        - "putPendingWrite(io.netty.handler.codec.spdy.SpdySession$PendingWrite)"
        - "valueOf(int)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:206,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:206,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:207,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].putPendingWrite(io.netty.handler.codec.spdy.SpdySession$PendingWrite)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$StreamState].putPendingWrite(io.netty.handler.codec.spdy.SpdySession$PendingWrite)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    linkageType: ""
    functionLinenumber: 302
    functionLinenumberEnd: 304
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.spdy.SpdySession$PendingWrite"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.DefaultPriorityQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].offer(java.lang.Object)"
    - "[java.util.LinkedList].offer(java.lang.Object)"
    - "[java.util.ArrayDeque].offer(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].offer(java.lang.Object)"
    - "[java.util.Queue].offer(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession$StreamState:303,1"
      Dst: "[java.util.Queue].offer(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].getPendingWrite(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 226
    functionDepth: 1
    returnType: "io.netty.handler.codec.spdy.SpdySession$PendingWrite"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySession].activeStreams()"
    - "[java.security.Provider].entrySet()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].entrySet()"
    - "[java.util.concurrent.ConcurrentHashMap].entrySet()"
    - "[io.netty.util.collection.ShortObjectHashMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].entrySet()"
    - "[java.util.TreeMap].entrySet()"
    - "[java.util.stream.Collectors$Partition].entrySet()"
    - "[java.util.Properties].entrySet()"
    - "[java.util.WeakHashMap].entrySet()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[io.netty.util.collection.IntObjectHashMap].entrySet()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].entrySet()"
    - "[java.util.jar.Attributes].entrySet()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].entrySet()"
    - "[java.util.IdentityHashMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.util.collection.ByteObjectHashMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].entrySet()"
    - "[java.util.HashMap].entrySet()"
    - "[io.netty.util.collection.CharObjectHashMap].entrySet()"
    - "[java.util.Hashtable].entrySet()"
    - "[io.netty.util.collection.LongObjectHashMap].entrySet()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].getSendWindowSize()"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].getPendingWrite()"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 28
    EdgeCount: 209
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:211"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:224"
        BranchSideFuncs:
        - "hasNext()"
        - "activeStreams()"
        - "iterator()"
        - "next()"
        - "entrySet()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:223"
        BranchSideFuncs:
        - "valueOf(int)"
        - "get(java.lang.Object)"
        - "getPendingWrite()"
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:212"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:221"
        BranchSideFuncs:
        - "hasNext()"
        - "activeStreams()"
        - "iterator()"
        - "getValue()"
        - "next()"
        - "entrySet()"
        - "getSendWindowSize()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:220"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:214"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:220"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:219"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:216"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:220"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:219"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:223"
        BranchSideFuncs:
        - "valueOf(int)"
        - "get(java.lang.Object)"
        - "getPendingWrite()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:212,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].activeStreams()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:212,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:212,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:212,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:212,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:213,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:214,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].getSendWindowSize()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:215,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].getPendingWrite()"
    - Src: "io.netty.handler.codec.spdy.SpdySession:224,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:224,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$StreamState].getPendingWrite()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 308
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdySession$PendingWrite"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].peek()"
    - "[java.util.LinkedList].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].peek()"
    - "[java.util.concurrent.LinkedBlockingDeque].peek()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].peek()"
    - "[io.netty.util.internal.EmptyPriorityQueue].peek()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].peek()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].peek()"
    - "[java.util.ArrayDeque].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].peek()"
    - "[io.netty.util.internal.DefaultPriorityQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].peek()"
    - "[java.util.concurrent.LinkedBlockingQueue].peek()"
    - "[java.util.Queue].peek()"
    functionUses: 2
    ICount: 5
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession$StreamState:307,1"
      Dst: "[java.util.Queue].peek()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].removePendingWrite(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 231
    functionDepth: 1
    returnType: "io.netty.handler.codec.spdy.SpdySession$PendingWrite"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[java.util.WeakHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[java.security.Provider].get(java.lang.Object)"
    - "[java.util.IdentityHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.HashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.AbstractMap].get(java.lang.Object)"
    - "[java.util.Hashtable].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[java.util.LinkedHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.Properties].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].get(java.lang.Object)"
    - "[java.util.TreeMap].get(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.spdy.SpdySession$StreamState].removePendingWrite()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySession:230"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySession:228"
        BranchSideFuncs:
        - "removePendingWrite()"
        - "valueOf(int)"
        - "get(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession:229,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:229,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySession:230,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$StreamState].removePendingWrite()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$StreamState].removePendingWrite()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    linkageType: ""
    functionLinenumber: 310
    functionLinenumberEnd: 312
    functionDepth: 0
    returnType: "io.netty.handler.codec.spdy.SpdySession$PendingWrite"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[java.util.Queue].poll()"
    functionUses: 1
    ICount: 5
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession$StreamState:311,1"
      Dst: "[java.util.Queue].poll()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySession].access$000(io.netty.handler.codec.spdy.SpdySession)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.spdy.SpdySession"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$ValueValidator$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$ValueValidator$1"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeaders$ValueValidator$1:85,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeaders$ValueValidator$1].validate(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeaders$ValueValidator$1"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator$1].<init>()"
    functionSourceFile: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.ssl.JettyNpnSslEngine].isAvailable()"
    - "[java.lang.RuntimeException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator$1:29"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator$1:33"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator$1:32"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator$1:27,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator$1:29,1"
      Dst: "[io.netty.handler.ssl.JettyNpnSslEngine].isAvailable()"
    - Src: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator$1:30,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator$1].wrapSslEngine(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    functionSourceFile: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator$1"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 2
    returnType: "javax.net.ssl.SSLEngine"
    argCount: 3
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JettyNpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator$1:38,1"
      Dst: "[io.netty.handler.ssl.JettyNpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JettyNpnSslEngine].<init>(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,boolean)"
    functionSourceFile: "io.netty.handler.ssl.JettyNpnSslEngine"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 110
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].<init>(javax.net.ssl.SSLEngine)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$3].newListener(javax.net.ssl.SSLEngine,java.util.List)"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$4].newListener(javax.net.ssl.SSLEngine,java.util.List)"
    - "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].protocolListenerFactory()"
    - "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator].protocolListenerFactory()"
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].protocolListenerFactory()"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocolListenerFactory()"
    - "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JettyNpnSslEngine$1].<init>(io.netty.handler.ssl.JettyNpnSslEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
    - "[org.eclipse.jetty.npn.NextProtoNego].put(javax.net.ssl.SSLEngine,org.eclipse.jetty.npn.NextProtoNego$Provider)"
    - "[io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.JdkDefaultApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.JdkAlpnApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$1].newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$2].newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    - "[io.netty.handler.ssl.JettyNpnSslEngine$2].<init>(io.netty.handler.ssl.JettyNpnSslEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector)"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator].protocolListenerFactory()"
    - "[io.netty.handler.ssl.ApplicationProtocolNegotiator].protocols()"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory].newListener(javax.net.ssl.SSLEngine,java.util.List)"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator].protocolSelectorFactory()"
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory].newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    functionUses: 1
    ICount: 29
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JettyNpnSslEngine:59"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JettyNpnSslEngine:83"
        BranchSideFuncs:
        - "protocols()"
        - "<init>(io.netty.handler.ssl.JettyNpnSslEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector)"
        - "<init>(java.util.Collection)"
        - "put(javax.net.ssl.SSLEngine,org.eclipse.jetty.npn.NextProtoNego$Provider)"
        - "protocolSelectorFactory()"
        - "checkNotNull(java.lang.Object,java.lang.String)"
        - "newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    Callsites:
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:56,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].<init>(javax.net.ssl.SSLEngine)"
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:57,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:61,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator].protocolListenerFactory()"
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:61,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolNegotiator].protocols()"
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:61,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory].newListener(javax.net.ssl.SSLEngine,java.util.List)"
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:63,1"
      Dst: "[io.netty.handler.ssl.JettyNpnSslEngine$1].<init>(io.netty.handler.ssl.JettyNpnSslEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:63,1"
      Dst: "[org.eclipse.jetty.npn.NextProtoNego].put(javax.net.ssl.SSLEngine,org.eclipse.jetty.npn.NextProtoNego$Provider)"
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:84,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator].protocolSelectorFactory()"
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:85,1"
      Dst: "[java.util.LinkedHashSet].<init>(java.util.Collection)"
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:85,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory].newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:87,1"
      Dst: "[io.netty.handler.ssl.JettyNpnSslEngine$2].<init>(io.netty.handler.ssl.JettyNpnSslEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.JettyNpnSslEngine$1].<init>(io.netty.handler.ssl.JettyNpnSslEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener,io.netty.handler.ssl.JdkApplicationProtocolNegotiator)"
    functionSourceFile: "io.netty.handler.ssl.JettyNpnSslEngine$1"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.JettyNpnSslEngine"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine$1:63,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JettyNpnSslEngine$2].<init>(io.netty.handler.ssl.JettyNpnSslEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector)"
    functionSourceFile: "io.netty.handler.ssl.JettyNpnSslEngine$2"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.JettyNpnSslEngine"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine$2:87,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod].<init>(io.netty.handler.ssl.OpenSslEngineMap,io.netty.handler.ssl.OpenSslAsyncPrivateKeyMethod)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.OpenSslEngineMap"
    - "io.netty.handler.ssl.OpenSslAsyncPrivateKeyMethod"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod:1039,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod].sign(long,int,byte[],io.netty.internal.tcnative.ResultCallback)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "long"
    - "int"
    - "byte[]"
    - "io.netty.internal.tcnative.ResultCallback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$400(io.netty.handler.ssl.OpenSslEngineMap,long)"
    - "[io.netty.handler.ssl.OpenSslAsyncPrivateKeyMethod].sign(javax.net.ssl.SSLEngine,int,byte[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod$ResultCallbackListener].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,long,io.netty.internal.tcnative.ResultCallback)"
    - "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.internal.tcnative.ResultCallback].onError(long,java.lang.Throwable)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod:1047,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$400(io.netty.handler.ssl.OpenSslEngineMap,long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod:1048,1"
      Dst: "[io.netty.handler.ssl.OpenSslAsyncPrivateKeyMethod].sign(javax.net.ssl.SSLEngine,int,byte[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod:1048,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod$ResultCallbackListener].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,long,io.netty.internal.tcnative.ResultCallback)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod:1049,1"
      Dst: "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod:1051,1"
      Dst: "[io.netty.internal.tcnative.ResultCallback].onError(long,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod$ResultCallbackListener].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,long,io.netty.internal.tcnative.ResultCallback)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod$ResultCallbackListener"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    - "long"
    - "io.netty.internal.tcnative.ResultCallback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod$ResultCallbackListener:1072,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod].decrypt(long,byte[],io.netty.internal.tcnative.ResultCallback)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "io.netty.internal.tcnative.ResultCallback"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$400(io.netty.handler.ssl.OpenSslEngineMap,long)"
    - "[io.netty.handler.ssl.OpenSslAsyncPrivateKeyMethod].decrypt(javax.net.ssl.SSLEngine,byte[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod$ResultCallbackListener].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,long,io.netty.internal.tcnative.ResultCallback)"
    - "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.internal.tcnative.ResultCallback].onError(long,java.lang.Throwable)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod:1058,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$400(io.netty.handler.ssl.OpenSslEngineMap,long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod:1059,1"
      Dst: "[io.netty.handler.ssl.OpenSslAsyncPrivateKeyMethod].decrypt(javax.net.ssl.SSLEngine,byte[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod:1059,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod$ResultCallbackListener].<init>(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,long,io.netty.internal.tcnative.ResultCallback)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod:1060,1"
      Dst: "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$AsyncPrivateKeyMethod:1062,1"
      Dst: "[io.netty.internal.tcnative.ResultCallback].onError(long,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueue].isAvailable()"
    functionSourceFile: "io.netty.channel.kqueue.KQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueue:60"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueue:59"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueue].ensureAvailability()"
    functionSourceFile: "io.netty.channel.kqueue.KQueue"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsatisfiedLinkError].<init>(java.lang.String)"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueue:70"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueue:74"
        BranchSideFuncs:
        - "initCause(java.lang.Throwable)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.kqueue.KQueue:73"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueue:71,1"
      Dst: "[java.lang.UnsatisfiedLinkError].<init>(java.lang.String)"
    - Src: "io.netty.channel.kqueue.KQueue:72,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueue].unavailabilityCause()"
    functionSourceFile: "io.netty.channel.kqueue.KQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueue].isTcpFastOpenClientSideAvailable()"
    functionSourceFile: "io.netty.channel.kqueue.KQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueue].isAvailable()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueue:93"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueue:92"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueue:93"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueue:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueue:93,1"
      Dst: "[io.netty.channel.kqueue.KQueue].isAvailable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.kqueue.KQueue].isTcpFastOpenServerSideAvailable()"
    functionSourceFile: "io.netty.channel.kqueue.KQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueue].isAvailable()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueue:103"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueue:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueue:103"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueue:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueue:103,1"
      Dst: "[io.netty.channel.kqueue.KQueue].isAvailable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.kqueue.KQueue].<init>()"
    functionSourceFile: "io.netty.channel.kqueue.KQueue"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueue:106,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop$6].<init>(io.netty.channel.nio.NioEventLoop)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$6"
    linkageType: ""
    functionLinenumber: 359
    functionLinenumberEnd: 361
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.nio.NioEventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$6:360,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop$6].run()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$6"
    linkageType: ""
    functionLinenumber: 362
    functionLinenumberEnd: 365
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoop].access$100(io.netty.channel.nio.NioEventLoop)"
    functionUses: 50
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$6:363,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].access$100(io.netty.channel.nio.NioEventLoop)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop].access$100(io.netty.channel.nio.NioEventLoop)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.nio.NioEventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoop].rebuildSelector0()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:58,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].rebuildSelector0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop].rebuildSelector0()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 441
    functionLinenumberEnd: 502
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoop].openSelector()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].keys()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - "[io.netty.channel.nio.NioEventLoop].invokeChannelUnregistered(io.netty.channel.nio.NioTask,java.nio.channels.SelectionKey,java.lang.Throwable)"
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].close()"
    - "[java.nio.channels.spi.AbstractSelector].close()"
    - "[io.netty.util.internal.logging.JdkLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isInfoEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isInfoEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isInfoEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isInfoEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isInfoEnabled()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].info(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].info(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].info(java.lang.String)"
    - "[io.netty.util.internal.logging.Log4JLogger].info(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].info(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.nio.channels.Selector].keys()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.nio.channels.SelectionKey].attachment()"
    - "[java.nio.channels.SelectionKey].isValid()"
    - "[java.nio.channels.SelectionKey].channel()"
    - "[java.nio.channels.SelectableChannel].keyFor(java.nio.channels.Selector)"
    - "[java.nio.channels.SelectionKey].interestOps()"
    - "[java.nio.channels.SelectionKey].cancel()"
    - "[java.nio.channels.SelectableChannel].register(java.nio.channels.Selector,int,java.lang.Object)"
    - "[io.netty.channel.Channel$Unsafe].voidPromise()"
    - "[io.netty.channel.Channel$Unsafe].close(io.netty.channel.ChannelPromise)"
    - "[java.nio.channels.Selector].close()"
    - "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].isInfoEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].info(java.lang.String)"
    functionUses: 3
    ICount: 74
    EdgeCount: 176
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:445"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:450"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:449"
        BranchSideFuncs:
        - "openSelector()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:458"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:486"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "keys()"
        - "iterator()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:485"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "isWarnEnabled()"
        - "close()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:461"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:462"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:461"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:461"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:465"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:464"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:468"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:472"
        BranchSideFuncs:
        - "hasNext()"
        - "close(io.netty.channel.ChannelPromise)"
        - "openSelector()"
        - "next()"
        - "keys()"
        - "voidPromise()"
        - "invokeChannelUnregistered(io.netty.channel.nio.NioTask,java.nio.channels.SelectionKey,java.lang.Throwable)"
        - "iterator()"
        - "isWarnEnabled()"
        - "unsafe()"
        - "close()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:471"
        BranchSideFuncs:
        - "close(io.netty.channel.ChannelPromise)"
        - "voidPromise()"
        - "invokeChannelUnregistered(io.netty.channel.nio.NioTask,java.nio.channels.SelectionKey,java.lang.Throwable)"
        - "unsafe()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:475"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:472"
        BranchSideFuncs:
        - "close(io.netty.channel.ChannelPromise)"
        - "voidPromise()"
        - "invokeChannelUnregistered(io.netty.channel.nio.NioTask,java.nio.channels.SelectionKey,java.lang.Throwable)"
        - "unsafe()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:471"
        BranchSideFuncs:
        - "close(io.netty.channel.ChannelPromise)"
        - "voidPromise()"
        - "invokeChannelUnregistered(io.netty.channel.nio.NioTask,java.nio.channels.SelectionKey,java.lang.Throwable)"
        - "unsafe()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:493"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:498"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "isWarnEnabled()"
        - "close()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:497"
        BranchSideFuncs:
        - "isInfoEnabled()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:498"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:501"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "info(java.lang.String)"
        - "append(int)"
        - "<init>()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:500"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:450,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].openSelector()"
    - Src: "io.netty.channel.nio.NioEventLoop:452,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.nio.NioEventLoop:458,1"
      Dst: "[java.nio.channels.Selector].keys()"
    - Src: "io.netty.channel.nio.NioEventLoop:458,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.nio.NioEventLoop:458,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.nio.NioEventLoop:458,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.nio.NioEventLoop:459,1"
      Dst: "[java.nio.channels.SelectionKey].attachment()"
    - Src: "io.netty.channel.nio.NioEventLoop:461,1"
      Dst: "[java.nio.channels.SelectionKey].isValid()"
    - Src: "io.netty.channel.nio.NioEventLoop:461,1"
      Dst: "[java.nio.channels.SelectionKey].channel()"
    - Src: "io.netty.channel.nio.NioEventLoop:461,1"
      Dst: "[java.nio.channels.SelectableChannel].keyFor(java.nio.channels.Selector)"
    - Src: "io.netty.channel.nio.NioEventLoop:465,1"
      Dst: "[java.nio.channels.SelectionKey].interestOps()"
    - Src: "io.netty.channel.nio.NioEventLoop:466,1"
      Dst: "[java.nio.channels.SelectionKey].cancel()"
    - Src: "io.netty.channel.nio.NioEventLoop:467,1"
      Dst: "[java.nio.channels.SelectableChannel].register(java.nio.channels.Selector,int,java.lang.Object)"
    - Src: "io.netty.channel.nio.NioEventLoop:477,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - Src: "io.netty.channel.nio.NioEventLoop:477,1"
      Dst: "[io.netty.channel.Channel$Unsafe].voidPromise()"
    - Src: "io.netty.channel.nio.NioEventLoop:477,1"
      Dst: "[io.netty.channel.Channel$Unsafe].close(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.nio.NioEventLoop:481,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].invokeChannelUnregistered(io.netty.channel.nio.NioTask,java.nio.channels.SelectionKey,java.lang.Throwable)"
    - Src: "io.netty.channel.nio.NioEventLoop:491,1"
      Dst: "[java.nio.channels.Selector].close()"
    - Src: "io.netty.channel.nio.NioEventLoop:493,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isWarnEnabled()"
    - Src: "io.netty.channel.nio.NioEventLoop:498,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isInfoEnabled()"
    - Src: "io.netty.channel.nio.NioEventLoop:499,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.nio.NioEventLoop:499,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.nio.NioEventLoop:499,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.nio.NioEventLoop:499,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.nio.NioEventLoop:499,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].info(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 22
    CyclomaticComplexity: 7
  - functionName: "[io.netty.channel.nio.NioEventLoop].openSelector()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 266
    functionDepth: 1
    returnType: "io.netty.channel.nio.NioEventLoop$SelectorTuple"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.nio.NioEventLoop$SelectorTuple].<init>(java.nio.channels.Selector)"
    - "[io.netty.channel.nio.NioEventLoop$3].<init>(io.netty.channel.nio.NioEventLoop)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[io.netty.channel.nio.NioEventLoop$3].run()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[io.netty.util.internal.logging.Log4JLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].<init>()"
    - "[io.netty.channel.nio.NioEventLoop$4].<init>(io.netty.channel.nio.NioEventLoop,java.lang.Class,java.nio.channels.Selector,io.netty.channel.nio.SelectedSelectionKeySet)"
    - "[io.netty.channel.nio.NioEventLoop$4].run()"
    - "[io.netty.util.internal.logging.JdkLogger].trace(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].trace(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].trace(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].trace(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].trace(java.lang.String,java.lang.Object)"
    - "[io.netty.channel.nio.NioEventLoop$SelectorTuple].<init>(java.nio.channels.Selector,java.nio.channels.Selector)"
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].<init>(java.nio.channels.Selector,io.netty.channel.nio.SelectedSelectionKeySet)"
    - "[java.nio.channels.spi.SelectorProvider].openSelector()"
    - "[java.lang.Object].getClass()"
    - "[io.netty.util.internal.logging.InternalLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].trace(java.lang.String,java.lang.Object)"
    functionUses: 1
    ICount: 53
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:182"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:186"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:185"
        BranchSideFuncs:
        - "<init>(io.netty.channel.nio.NioEventLoop)"
    - Branch String: "io.netty.channel.nio.NioEventLoop:200"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:202"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:202"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:210"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:209"
        BranchSideFuncs:
        - "doPrivileged(java.security.PrivilegedAction)"
        - "run()"
        - "<init>()"
        - "<init>(io.netty.channel.nio.NioEventLoop,java.lang.Class,java.nio.channels.Selector,io.netty.channel.nio.SelectedSelectionKeySet)"
    - Branch String: "io.netty.channel.nio.NioEventLoop:203"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:207"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:206"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:257"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:263"
        BranchSideFuncs:
        - "<init>(java.nio.channels.Selector)"
        - "trace(java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:262"
        BranchSideFuncs:
        - "trace(java.lang.String,java.lang.Object)"
        - "<init>(java.nio.channels.Selector,java.nio.channels.Selector)"
        - "<init>(java.nio.channels.Selector,io.netty.channel.nio.SelectedSelectionKeySet)"
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:177,1"
      Dst: "[java.nio.channels.spi.SelectorProvider].openSelector()"
    - Src: "io.netty.channel.nio.NioEventLoop:179,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.nio.NioEventLoop:183,1"
      Dst: "[io.netty.channel.nio.NioEventLoop$SelectorTuple].<init>(java.nio.channels.Selector)"
    - Src: "io.netty.channel.nio.NioEventLoop:186,1"
      Dst: "[io.netty.channel.nio.NioEventLoop$3].<init>(io.netty.channel.nio.NioEventLoop)"
    - Src: "io.netty.channel.nio.NioEventLoop:186,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "io.netty.channel.nio.NioEventLoop:202,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.channel.nio.NioEventLoop:202,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "io.netty.channel.nio.NioEventLoop:205,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.nio.NioEventLoop:211,1"
      Dst: "[io.netty.channel.nio.SelectedSelectionKeySet].<init>()"
    - Src: "io.netty.channel.nio.NioEventLoop:213,1"
      Dst: "[io.netty.channel.nio.NioEventLoop$4].<init>(io.netty.channel.nio.NioEventLoop,java.lang.Class,java.nio.channels.Selector,io.netty.channel.nio.SelectedSelectionKeySet)"
    - Src: "io.netty.channel.nio.NioEventLoop:264,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].trace(java.lang.String,java.lang.Object)"
    - Src: "io.netty.channel.nio.NioEventLoop:265,1"
      Dst: "[io.netty.channel.nio.SelectedSelectionKeySetSelector].<init>(java.nio.channels.Selector,io.netty.channel.nio.SelectedSelectionKeySet)"
    - Src: "io.netty.channel.nio.NioEventLoop:265,1"
      Dst: "[io.netty.channel.nio.NioEventLoop$SelectorTuple].<init>(java.nio.channels.Selector,java.nio.channels.Selector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.nio.NioEventLoop$SelectorTuple].<init>(java.nio.channels.Selector)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$SelectorTuple"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 167
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.Selector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$SelectorTuple:163,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop$3].<init>(io.netty.channel.nio.NioEventLoop)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$3"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 187
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.nio.NioEventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$3:186,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.SelectedSelectionKeySetSelector].<init>(java.nio.channels.Selector,io.netty.channel.nio.SelectedSelectionKeySet)"
    functionSourceFile: "io.netty.channel.nio.SelectedSelectionKeySetSelector"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.Selector"
    - "io.netty.channel.nio.SelectedSelectionKeySet"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.Selector].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.SelectedSelectionKeySetSelector:28,1"
      Dst: "[java.nio.channels.Selector].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop$SelectorTuple].<init>(java.nio.channels.Selector,java.nio.channels.Selector)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$SelectorTuple"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.Selector"
    - "java.nio.channels.Selector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$SelectorTuple:168,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop].invokeChannelUnregistered(io.netty.channel.nio.NioTask,java.nio.channels.SelectionKey,java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 843
    functionLinenumberEnd: 849
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.nio.NioTask"
    - "java.nio.channels.SelectionKey"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.nio.channels.SelectionKey].channel()"
    - "[io.netty.channel.nio.NioTask].channelUnregistered(java.nio.channels.SelectableChannel,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 9
    ICount: 10
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:844,1"
      Dst: "[java.nio.channels.SelectionKey].channel()"
    - Src: "io.netty.channel.nio.NioEventLoop:844,1"
      Dst: "[io.netty.channel.nio.NioTask].channelUnregistered(java.nio.channels.SelectableChannel,java.lang.Throwable)"
    - Src: "io.netty.channel.nio.NioEventLoop:846,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,io.netty.channel.ChannelPipeline)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4"
    linkageType: ""
    functionLinenumber: 273
    functionLinenumberEnd: 275
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.AbstractHttp2StreamChannel"
    - "io.netty.channel.ChannelPipeline"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4:274,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 279
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelWritabilityChanged()"
    - "[io.netty.channel.ChannelPipeline].fireChannelWritabilityChanged()"
    functionUses: 49
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4:277,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelWritabilityChanged()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.bootstrap.Bootstrap"
    - "io.netty.channel.pool.ChannelPoolHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:60,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.bootstrap.Bootstrap"
    - "io.netty.channel.pool.ChannelPoolHandler"
    - "io.netty.channel.pool.ChannelHealthChecker"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:72,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker,boolean)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.bootstrap.Bootstrap"
    - "io.netty.channel.pool.ChannelPoolHandler"
    - "io.netty.channel.pool.ChannelHealthChecker"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker,boolean,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:87,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].<init>(io.netty.bootstrap.Bootstrap,io.netty.channel.pool.ChannelPoolHandler,io.netty.channel.pool.ChannelHealthChecker,boolean,boolean)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.bootstrap.Bootstrap"
    - "io.netty.channel.pool.ChannelPoolHandler"
    - "io.netty.channel.pool.ChannelHealthChecker"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.PlatformDependent].newConcurrentDeque()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[io.netty.channel.pool.SimpleChannelPool$1].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.pool.ChannelPoolHandler)"
    - "[io.netty.bootstrap.AbstractBootstrap].handler(io.netty.channel.ChannelHandler)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:102,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:46,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newConcurrentDeque()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:103,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:107,1"
      Dst: "[io.netty.bootstrap.Bootstrap].clone()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:108,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool$1].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.pool.ChannelPoolHandler)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:108,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].handler(io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].bootstrap()"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.bootstrap.Bootstrap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].handler()"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.pool.ChannelPoolHandler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].healthChecker()"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.pool.ChannelHealthChecker"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].releaseHealthCheck()"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].acquire()"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.Bootstrap].config()"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].group()"
    - "[io.netty.channel.EventLoopGroup].next()"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - "[io.netty.channel.pool.SimpleChannelPool].acquire(io.netty.util.concurrent.Promise)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:157,1"
      Dst: "[io.netty.bootstrap.Bootstrap].config()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:157,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrapConfig].group()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:157,1"
      Dst: "[io.netty.channel.EventLoopGroup].next()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:157,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:157,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].acquire(io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].acquire(io.netty.util.concurrent.Promise<Channel>)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future<Channel>"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Promise<Channel>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].acquireHealthyFromPoolOrNew(io.netty.util.concurrent.Promise)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:162,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:162,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].acquireHealthyFromPoolOrNew(io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].acquireHealthyFromPoolOrNew(io.netty.util.concurrent.Promise<Channel>)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 205
    functionDepth: 6
    returnType: "io.netty.util.concurrent.Future<Channel>"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Promise<Channel>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].pollChannel()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[io.netty.bootstrap.AbstractBootstrap].attr(io.netty.util.AttributeKey,java.lang.Object)"
    - "[io.netty.channel.pool.SimpleChannelPool].connectChannel(io.netty.bootstrap.Bootstrap)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.channel.pool.SimpleChannelPool].notifyConnect(io.netty.channel.ChannelFuture,io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.pool.SimpleChannelPool$2].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.pool.SimpleChannelPool].doHealthCheck(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.pool.SimpleChannelPool$3].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].tryFailure(java.lang.Throwable)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 2
    ICount: 29
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:173"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:188"
        BranchSideFuncs:
        - "eventLoop()"
        - "inEventLoop()"
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:178"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:181"
        BranchSideFuncs:
        - "notifyConnect(io.netty.channel.ChannelFuture,io.netty.util.concurrent.Promise)"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:180"
        BranchSideFuncs:
        - "<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.util.concurrent.Promise)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:190"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:193"
        BranchSideFuncs:
        - "doHealthCheck(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:192"
        BranchSideFuncs:
        - "<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
        - "run()"
        - "execute(java.lang.Runnable)"
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:172,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].pollChannel()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:175,1"
      Dst: "[io.netty.bootstrap.Bootstrap].clone()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:176,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrap].attr(io.netty.util.AttributeKey,java.lang.Object)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:177,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].connectChannel(io.netty.bootstrap.Bootstrap)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:178,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:179,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].notifyConnect(io.netty.channel.ChannelFuture,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:181,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool$2].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:181,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:189,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:190,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:191,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].doHealthCheck(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:193,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool$3].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:193,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:202,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].connectChannel(io.netty.bootstrap.Bootstrap)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 268
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.bootstrap.Bootstrap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.bootstrap.Bootstrap].connect()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:267,1"
      Dst: "[io.netty.bootstrap.Bootstrap].connect()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool$3].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool$3"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.pool.SimpleChannelPool"
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool$3:193,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].notifyConnect(io.netty.channel.ChannelFuture,io.netty.util.concurrent.Promise<Channel>)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 224
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelFuture"
    - "io.netty.util.concurrent.Promise<Channel>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.CompleteChannelFuture].channel()"
    - "[io.netty.channel.DefaultChannelPromise].channel()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].channel()"
    - "[io.netty.channel.VoidChannelPromise].channel()"
    - "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].trySuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].trySuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].trySuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].trySuccess(java.lang.Object)"
    - "[io.netty.channel.pool.SimpleChannelPool].release(io.netty.channel.Channel)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.pool.SimpleChannelPool].closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.channel.ChannelFuture].channel()"
    - "[io.netty.channel.pool.ChannelPoolHandler].channelAcquired(io.netty.channel.Channel)"
    - "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 2
    ICount: 20
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:210"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:218"
        BranchSideFuncs:
        - "trySuccess(java.lang.Object)"
        - "channel()"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:217"
        BranchSideFuncs:
        - "tryFailure(java.lang.Throwable)"
        - "cause()"
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:213"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:210,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:211,1"
      Dst: "[io.netty.channel.ChannelFuture].channel()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:212,1"
      Dst: "[io.netty.channel.pool.ChannelPoolHandler].channelAcquired(io.netty.channel.Channel)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:213,1"
      Dst: "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:215,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].release(io.netty.channel.Channel)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:218,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:218,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:221,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].release(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 273
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future<Void>"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].newPromise()"
    - "[io.netty.channel.pool.SimpleChannelPool].release(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.pool.FixedChannelPool].release(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].newPromise()"
    functionUses: 1
    ICount: 6
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:272,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:272,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newPromise()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:272,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].release(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].doHealthCheck(io.netty.channel.Channel,io.netty.util.concurrent.Promise<Channel>)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 226
    functionLinenumberEnd: 243
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.Promise<Channel>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.pool.ChannelHealthChecker$1].isHealthy(io.netty.channel.Channel)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.channel.pool.SimpleChannelPool].notifyHealthCheck(io.netty.util.concurrent.Future,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.pool.SimpleChannelPool$4].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.CompleteFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.pool.SimpleChannelPool].closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.channel.pool.ChannelHealthChecker].isHealthy(io.netty.channel.Channel)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 24
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:227"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:228"
        BranchSideFuncs:
        - "isHealthy(io.netty.channel.Channel)"
        - "isDone()"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:227"
        BranchSideFuncs:
        - "isHealthy(io.netty.channel.Channel)"
        - "isDone()"
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:227"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:228"
        BranchSideFuncs:
        - "isHealthy(io.netty.channel.Channel)"
        - "isDone()"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:227"
        BranchSideFuncs:
        - "isHealthy(io.netty.channel.Channel)"
        - "isDone()"
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:229"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:232"
        BranchSideFuncs:
        - "notifyHealthCheck(io.netty.util.concurrent.Future,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:231"
        BranchSideFuncs:
        - "<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:227,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:227,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:227,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:228,1"
      Dst: "[io.netty.channel.pool.ChannelHealthChecker].isHealthy(io.netty.channel.Channel)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:229,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:230,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].notifyHealthCheck(io.netty.util.concurrent.Future,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:232,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool$4].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:232,1"
      Dst: "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:240,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].notifyHealthCheck(io.netty.util.concurrent.Future<Boolean>,io.netty.channel.Channel,io.netty.util.concurrent.Promise<Channel>)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 245
    functionLinenumberEnd: 259
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.util.concurrent.Future<Boolean>"
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.Promise<Channel>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].getNow()"
    - "[io.netty.channel.VoidChannelPromise].getNow()"
    - "[io.netty.util.concurrent.SucceededFuture].getNow()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].getNow()"
    - "[io.netty.util.concurrent.FailedFuture].getNow()"
    - "[io.netty.channel.CompleteChannelFuture].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.util.concurrent.FailedFuture].isSuccess()"
    - "[io.netty.util.concurrent.SucceededFuture].isSuccess()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.util.DefaultAttributeMap].attr(io.netty.util.AttributeKey)"
    - "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setSuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.pool.SimpleChannelPool].closeChannel(io.netty.channel.Channel)"
    - "[io.netty.channel.pool.SimpleChannelPool].acquireHealthyFromPoolOrNew(io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.pool.SimpleChannelPool].closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].getNow()"
    - "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - "[io.netty.util.Attribute].set(java.lang.Object)"
    - "[io.netty.channel.pool.ChannelPoolHandler].channelAcquired(io.netty.channel.Channel)"
    - "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    functionUses: 2
    ICount: 31
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:246"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:247"
        BranchSideFuncs:
        - "booleanValue()"
        - "isSuccess()"
        - "getNow()"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:246"
        BranchSideFuncs:
        - "booleanValue()"
        - "isSuccess()"
        - "getNow()"
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:246"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:247"
        BranchSideFuncs:
        - "booleanValue()"
        - "isSuccess()"
        - "getNow()"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:246"
        BranchSideFuncs:
        - "booleanValue()"
        - "isSuccess()"
        - "getNow()"
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:247"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:252"
        BranchSideFuncs:
        - "attr(io.netty.util.AttributeKey)"
        - "set(java.lang.Object)"
        - "setSuccess(java.lang.Object)"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:251"
        BranchSideFuncs:
        - "closeChannel(io.netty.channel.Channel)"
        - "acquireHealthyFromPoolOrNew(io.netty.util.concurrent.Promise)"
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:247"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:252"
        BranchSideFuncs:
        - "attr(io.netty.util.AttributeKey)"
        - "set(java.lang.Object)"
        - "setSuccess(java.lang.Object)"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:251"
        BranchSideFuncs:
        - "closeChannel(io.netty.channel.Channel)"
        - "acquireHealthyFromPoolOrNew(io.netty.util.concurrent.Promise)"
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:246,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:246,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:246,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:247,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:247,1"
      Dst: "[io.netty.util.concurrent.Future].getNow()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:247,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:248,1"
      Dst: "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:248,1"
      Dst: "[io.netty.util.Attribute].set(java.lang.Object)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:249,1"
      Dst: "[io.netty.channel.pool.ChannelPoolHandler].channelAcquired(io.netty.channel.Channel)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:250,1"
      Dst: "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:252,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].closeChannel(io.netty.channel.Channel)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:253,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].acquireHealthyFromPoolOrNew(io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:256,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].closeChannel(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 362
    functionLinenumberEnd: 366
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DefaultAttributeMap].attr(io.netty.util.AttributeKey)"
    - "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - "[io.netty.channel.AbstractChannel].close()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].close()"
    - "[io.netty.channel.embedded.EmbeddedChannel].close()"
    - "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - "[io.netty.util.Attribute].getAndSet(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 2
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:363,1"
      Dst: "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:363,1"
      Dst: "[io.netty.util.Attribute].getAndSet(java.lang.Object)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:364,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].release(io.netty.channel.Channel,io.netty.util.concurrent.Promise<Void>)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 277
    functionLinenumberEnd: 295
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future<Void>"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.Promise<Void>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.pool.SimpleChannelPool].doReleaseChannel(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.pool.SimpleChannelPool$5].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.pool.SimpleChannelPool].closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 2
    ICount: 17
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:281"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:284"
        BranchSideFuncs:
        - "doReleaseChannel(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:283"
        BranchSideFuncs:
        - "run()"
        - "<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
        - "execute(java.lang.Runnable)"
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:278,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:280,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:281,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:282,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].doReleaseChannel(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:284,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool$5].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:284,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:292,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.pool.SimpleChannelPool$5].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool$5"
    linkageType: ""
    functionLinenumber: 283
    functionLinenumberEnd: 285
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.pool.SimpleChannelPool"
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool$5:284,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].doReleaseChannel(io.netty.channel.Channel,io.netty.util.concurrent.Promise<Void>)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 298
    functionLinenumberEnd: 318
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.Promise<Void>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.DefaultAttributeMap].attr(io.netty.util.AttributeKey)"
    - "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.channel.pool.SimpleChannelPool].closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.pool.SimpleChannelPool].doHealthCheckOnRelease(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.pool.SimpleChannelPool].releaseAndOffer(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - "[io.netty.util.Attribute].getAndSet(java.lang.Object)"
    functionUses: 2
    ICount: 34
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:299"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:301"
        BranchSideFuncs:
        - "attr(io.netty.util.AttributeKey)"
        - "closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise)"
        - "releaseAndOffer(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
        - "<init>()"
        - "eventLoop()"
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
        - "toString()"
        - "doHealthCheckOnRelease(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
        - "getAndSet(java.lang.Object)"
        - "<init>(java.lang.String)"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:300"
        BranchSideFuncs:
        - "attr(io.netty.util.AttributeKey)"
        - "getAndSet(java.lang.Object)"
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:299"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:301"
        BranchSideFuncs:
        - "attr(io.netty.util.AttributeKey)"
        - "closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise)"
        - "releaseAndOffer(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
        - "<init>()"
        - "eventLoop()"
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
        - "toString()"
        - "doHealthCheckOnRelease(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
        - "getAndSet(java.lang.Object)"
        - "<init>(java.lang.String)"
        - "inEventLoop()"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:300"
        BranchSideFuncs:
        - "attr(io.netty.util.AttributeKey)"
        - "getAndSet(java.lang.Object)"
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:301"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:308"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:307"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:308"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:311"
        BranchSideFuncs:
        - "doHealthCheckOnRelease(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:310"
        BranchSideFuncs:
        - "releaseAndOffer(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:299,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:299,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:299,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:301,1"
      Dst: "[io.netty.util.AttributeMap].attr(io.netty.util.AttributeKey)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:301,1"
      Dst: "[io.netty.util.Attribute].getAndSet(java.lang.Object)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:302,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:302,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:302,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:302,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:302,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:302,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:309,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].doHealthCheckOnRelease(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:311,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].releaseAndOffer(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].doHealthCheckOnRelease(io.netty.channel.Channel,io.netty.util.concurrent.Promise<Void>)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 319
    functionLinenumberEnd: 332
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.Promise<Void>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.ChannelHealthChecker$1].isHealthy(io.netty.channel.Channel)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.channel.pool.SimpleChannelPool].releaseAndOfferIfHealthy(io.netty.channel.Channel,io.netty.util.concurrent.Promise,io.netty.util.concurrent.Future)"
    - "[io.netty.channel.pool.SimpleChannelPool$6].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise,io.netty.util.concurrent.Future)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.CompleteFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.pool.ChannelHealthChecker].isHealthy(io.netty.channel.Channel)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 13
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:321"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:324"
        BranchSideFuncs:
        - "releaseAndOfferIfHealthy(io.netty.channel.Channel,io.netty.util.concurrent.Promise,io.netty.util.concurrent.Future)"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:323"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise,io.netty.util.concurrent.Future)"
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:320,1"
      Dst: "[io.netty.channel.pool.ChannelHealthChecker].isHealthy(io.netty.channel.Channel)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:321,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:322,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].releaseAndOfferIfHealthy(io.netty.channel.Channel,io.netty.util.concurrent.Promise,io.netty.util.concurrent.Future)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:324,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool$6].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise,io.netty.util.concurrent.Future)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:324,1"
      Dst: "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.pool.SimpleChannelPool$6].<init>(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise,io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool$6"
    linkageType: ""
    functionLinenumber: 323
    functionLinenumberEnd: 325
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.pool.SimpleChannelPool"
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.Promise"
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool$6:324,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].releaseAndOfferIfHealthy(io.netty.channel.Channel,io.netty.util.concurrent.Promise<Void>,io.netty.util.concurrent.Future<Boolean>)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 341
    functionLinenumberEnd: 352
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.Promise<Void>"
    - "io.netty.util.concurrent.Future<Boolean>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].getNow()"
    - "[io.netty.channel.CompleteChannelFuture].getNow()"
    - "[io.netty.channel.VoidChannelPromise].getNow()"
    - "[io.netty.util.concurrent.SucceededFuture].getNow()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].getNow()"
    - "[io.netty.util.concurrent.FailedFuture].getNow()"
    - "[io.netty.channel.pool.SimpleChannelPool].releaseAndOffer(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setSuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.pool.SimpleChannelPool].closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise)"
    - "[io.netty.util.concurrent.Future].getNow()"
    - "[io.netty.channel.pool.ChannelPoolHandler].channelReleased(io.netty.channel.Channel)"
    - "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    functionUses: 2
    ICount: 17
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:342"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:345"
        BranchSideFuncs:
        - "releaseAndOffer(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:344"
        BranchSideFuncs:
        - "setSuccess(java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:342,1"
      Dst: "[io.netty.util.concurrent.Future].getNow()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:342,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.pool.SimpleChannelPool:343,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].releaseAndOffer(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:345,1"
      Dst: "[io.netty.channel.pool.ChannelPoolHandler].channelReleased(io.netty.channel.Channel)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:346,1"
      Dst: "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:349,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].releaseAndOffer(io.netty.channel.Channel,io.netty.util.concurrent.Promise<Void>)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 353
    functionLinenumberEnd: 361
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.Promise<Void>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].offerChannel(io.netty.channel.Channel)"
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setSuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.pool.SimpleChannelPool$ChannelPoolFullException].<init>(io.netty.channel.pool.SimpleChannelPool$1)"
    - "[io.netty.channel.pool.SimpleChannelPool].closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise)"
    - "[io.netty.channel.pool.ChannelPoolHandler].channelReleased(io.netty.channel.Channel)"
    - "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    functionUses: 2
    ICount: 13
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:354"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:358"
        BranchSideFuncs:
        - "setSuccess(java.lang.Object)"
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:357"
        BranchSideFuncs:
        - "closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise)"
        - "<init>(io.netty.channel.pool.SimpleChannelPool$1)"
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:354,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].offerChannel(io.netty.channel.Channel)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:355,1"
      Dst: "[io.netty.channel.pool.ChannelPoolHandler].channelReleased(io.netty.channel.Channel)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:356,1"
      Dst: "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:358,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool$ChannelPoolFullException].<init>(io.netty.channel.pool.SimpleChannelPool$1)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:358,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].offerChannel(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 396
    functionLinenumberEnd: 398
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.LinkedList].offer(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].offer(java.lang.Object)"
    - "[java.util.ArrayDeque].offer(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].offer(java.lang.Object)"
    - "[java.util.Deque].offer(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:397,1"
      Dst: "[java.util.Deque].offer(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].closeAndFail(io.netty.channel.Channel,java.lang.Throwable,io.netty.util.concurrent.Promise<?>)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 367
    functionLinenumberEnd: 377
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.Channel"
    - "java.lang.Throwable"
    - "io.netty.util.concurrent.Promise<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].closeChannel(io.netty.channel.Channel)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 8
    ICount: 11
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.SimpleChannelPool:368"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.SimpleChannelPool:374"
        BranchSideFuncs:
        - "tryFailure(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:370,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].closeChannel(io.netty.channel.Channel)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:372,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].closeAsync()"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 418
    functionLinenumberEnd: 420
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool$7].<init>(io.netty.channel.pool.SimpleChannelPool)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].submit(java.util.concurrent.Callable)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:419,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool$7].<init>(io.netty.channel.pool.SimpleChannelPool)"
    - Src: "io.netty.channel.pool.SimpleChannelPool:419,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].submit(java.util.concurrent.Callable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].access$100(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.pool.SimpleChannelPool"
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].doHealthCheck(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:43,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].doHealthCheck(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].access$300(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.pool.SimpleChannelPool"
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.Promise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].doReleaseChannel(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:43,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].doReleaseChannel(io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool].access$400(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise,io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.pool.SimpleChannelPool"
    - "io.netty.channel.Channel"
    - "io.netty.util.concurrent.Promise"
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].releaseAndOfferIfHealthy(io.netty.channel.Channel,io.netty.util.concurrent.Promise,io.netty.util.concurrent.Future)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool:43,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].releaseAndOfferIfHealthy(io.netty.channel.Channel,io.netty.util.concurrent.Promise,io.netty.util.concurrent.Future)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.Socks4ServerEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.Socks4ServerEncoder"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ServerEncoder:35,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.Socks4ServerEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.socksx.v4.Socks4CommandResponse,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.Socks4ServerEncoder"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 45
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.socksx.v4.Socks4CommandResponse"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].byteValue()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].status()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].dstPort()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].dstAddr()"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.util.NetUtil].createByteArrayFromIpAddressString(java.lang.String)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandResponse].status()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandResponse].dstPort()"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandResponse].dstAddr()"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    functionUses: 1
    ICount: 19
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v4.Socks4ServerEncoder:42"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v4.Socks4ServerEncoder:43"
        BranchSideFuncs:
        - "dstAddr()"
        - "createByteArrayFromIpAddressString(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v4.Socks4ServerEncoder:42"
        BranchSideFuncs:
        - "dstAddr()"
        - "createByteArrayFromIpAddressString(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ServerEncoder:39,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ServerEncoder:40,1"
      Dst: "[io.netty.handler.codec.socksx.v4.Socks4CommandResponse].status()"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ServerEncoder:40,1"
      Dst: "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].byteValue()"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ServerEncoder:41,1"
      Dst: "[io.netty.handler.codec.socksx.v4.Socks4CommandResponse].dstPort()"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ServerEncoder:41,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ServerEncoder:42,1"
      Dst: "[io.netty.handler.codec.socksx.v4.Socks4CommandResponse].dstAddr()"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ServerEncoder:43,1"
      Dst: "[io.netty.util.NetUtil].createByteArrayFromIpAddressString(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ServerEncoder:42,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].byteValue()"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.Socks4CommandStatus"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.Socks4ServerEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.Socks4ServerEncoder"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v4.Socks4ServerEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.socksx.v4.Socks4CommandResponse,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ServerEncoder:28,1"
      Dst: "[io.netty.handler.codec.socksx.v4.Socks4ServerEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.socksx.v4.Socks4CommandResponse,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledHeapByteBuf].allocateArray(int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledHeapByteBuf"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 167
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf].allocateArray(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledByteBufAllocator].incrementHeap(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledHeapByteBuf:164,1"
      Dst: "[io.netty.buffer.UnpooledHeapByteBuf].allocateArray(int)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledHeapByteBuf:165,1"
      Dst: "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledHeapByteBuf:165,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator].incrementHeap(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledHeapByteBuf].freeArray(byte[])"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledHeapByteBuf"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 175
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf].freeArray(byte[])"
    - "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledByteBufAllocator].decrementHeap(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledHeapByteBuf:172,1"
      Dst: "[io.netty.buffer.UnpooledHeapByteBuf].freeArray(byte[])"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledHeapByteBuf:173,1"
      Dst: "[io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledHeapByteBuf:173,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator].decrementHeap(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].<init>(java.lang.Iterable)"
    functionSourceFile: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Iterable].iterator()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator:175,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator:177,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator:177,1"
      Dst: "[java.lang.Iterable].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    functionSourceFile: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 227
    ICount: 4
    EdgeCount: 56
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator:182,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    functionSourceFile: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 188
    functionDepth: 0
    returnType: "io.netty.channel.Channel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.util.Iterator].next()"
    functionUses: 229
    ICount: 5
    EdgeCount: 56
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator:187,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].remove()"
    functionSourceFile: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator:192,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].empty()"
    functionSourceFile: "io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider].chooseKeyMaterial(io.netty.buffer.ByteBufAllocator,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "io.netty.handler.ssl.OpenSslKeyMaterial"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].chooseKeyMaterial(io.netty.buffer.ByteBufAllocator,java.lang.String)"
    - "[java.util.Map].size()"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslKeyMaterial].release()"
    - "[io.netty.handler.ssl.OpenSslKeyMaterial].retain()"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:43"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:65"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:64"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:45"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:49"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:53"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:52"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:58"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:57"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:59"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:65"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:42,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:44,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterialProvider].chooseKeyMaterial(io.netty.buffer.ByteBufAllocator,java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:53,1"
      Dst: "[java.util.Map].size()"
    - Src: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:58,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:60,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterial].release()"
    - Src: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:65,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterial].retain()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider].destroy()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap].values()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.AbstractReferenceCounted].release()"
    - "[io.netty.handler.ssl.DefaultOpenSslKeyMaterial].release()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].remove()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].remove()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].remove()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].remove()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].remove()"
    - "[io.netty.channel.nio.NioEventLoop$7].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].remove()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].remove()"
    - "[io.netty.util.internal.ReadOnlyIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].remove()"
    - "[io.netty.channel.group.CombinedIterator].remove()"
    - "[java.util.concurrent.ConcurrentHashMap].isEmpty()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.handler.ssl.OpenSslKeyMaterial].release()"
    - "[java.util.Iterator].remove()"
    - "[java.util.Map].isEmpty()"
    functionUses: 1
    ICount: 15
    EdgeCount: 186
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:73"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:77"
        BranchSideFuncs:
        - "next()"
        - "remove()"
        - "release()"
      - BranchSide: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:76"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:71"
        BranchSideFuncs:
        - "values()"
        - "iterator()"
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:72,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:72,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:73,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:74,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:74,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterial].release()"
    - Src: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:75,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "io.netty.handler.ssl.OpenSslCachingKeyMaterialProvider:77,1"
      Dst: "[java.util.Map].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].<init>(io.netty.handler.codec.http2.Http2ConnectionEncoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].<init>(io.netty.handler.codec.http2.Http2FrameWriter)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder:30,1"
      Dst: "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].<init>(io.netty.handler.codec.http2.Http2FrameWriter)"
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder:31,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2LifecycleManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ControlFrameLimitEncoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    - "[io.netty.handler.codec.http2.Http2ConnectionEncoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder:36,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionEncoder].lifecycleManager(io.netty.handler.codec.http2.Http2LifecycleManager)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].flowController()"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2RemoteFlowController"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].flowController()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].flowController()"
    - "[io.netty.handler.codec.http2.Http2ConnectionEncoder].flowController()"
    functionUses: 7
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder:46,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionEncoder].flowController()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].frameWriter()"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameWriter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].frameWriter()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].frameWriter()"
    - "[io.netty.handler.codec.http2.Http2ConnectionEncoder].frameWriter()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder:51,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionEncoder].frameWriter()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].pollSentSettings()"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Settings"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].pollSentSettings()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].pollSentSettings()"
    - "[io.netty.handler.codec.http2.Http2ConnectionEncoder].pollSentSettings()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder:56,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionEncoder].pollSentSettings()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.Http2ConnectionEncoder].remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
    functionUses: 4
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder:61,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionEncoder].remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].consumeReceivedSettings(io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].consumeReceivedSettings(io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].consumeReceivedSettings(io.netty.handler.codec.http2.Http2Settings)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http2.Http2SettingsReceivedConsumer].consumeReceivedSettings(io.netty.handler.codec.http2.Http2Settings)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 2
    ICount: 21
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder:69"
        BranchSideFuncs:
        - "consumeReceivedSettings(io.netty.handler.codec.http2.Http2Settings)"
      - BranchSide: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder:68"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder:67,1"
      Dst: "[io.netty.handler.codec.http2.Http2SettingsReceivedConsumer].consumeReceivedSettings(io.netty.handler.codec.http2.Http2Settings)"
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder:69,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder:69,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder:69,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder:69,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder:69,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolverGroup].<init>(io.netty.resolver.dns.DnsNameResolverBuilder)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolverGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolverBuilder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.AddressResolverGroup].<init>()"
    - "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].copy()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:47,1"
      Dst: "[io.netty.resolver.AddressResolverGroup].<init>()"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:44,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:48,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolverGroup].<init>(java.lang.Class,io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolverGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "io.netty.resolver.dns.DnsServerAddressStreamProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.AddressResolverGroup].<init>()"
    - "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].<init>()"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].channelType(java.lang.Class)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].nameServerProvider(io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:53,1"
      Dst: "[io.netty.resolver.AddressResolverGroup].<init>()"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:44,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:54,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].<init>()"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:55,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].channelType(java.lang.Class)"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:55,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].nameServerProvider(io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolverGroup].<init>(io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolverGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelFactory"
    - "io.netty.resolver.dns.DnsServerAddressStreamProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.AddressResolverGroup].<init>()"
    - "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].<init>()"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].channelFactory(io.netty.channel.ChannelFactory)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].nameServerProvider(io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:60,1"
      Dst: "[io.netty.resolver.AddressResolverGroup].<init>()"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:44,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:61,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].<init>()"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:62,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].channelFactory(io.netty.channel.ChannelFactory)"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:62,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].nameServerProvider(io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolverGroup].newResolver(io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolverGroup"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 80
    functionDepth: 1
    returnType: "io.netty.resolver.AddressResolver<InetSocketAddress>"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.resolver.dns.DnsAddressResolverGroup].newResolver(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].channelFactory()"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].nameServerProvider()"
    functionUses: 1
    ICount: 28
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsAddressResolverGroup:68"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsAddressResolverGroup:76"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "simpleClassName(java.lang.Class)"
      - BranchSide: "io.netty.resolver.dns.DnsAddressResolverGroup:75"
        BranchSideFuncs:
        - "newResolver(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    - Branch String: "io.netty.resolver.dns.DnsAddressResolverGroup:77"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsAddressResolverGroup:75"
        BranchSideFuncs:
        - "newResolver(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:69,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:69,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:70,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:71,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:71,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:71,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:78,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].channelFactory()"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:79,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].nameServerProvider()"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:77,1"
      Dst: "[io.netty.resolver.dns.DnsAddressResolverGroup].newResolver(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].channelFactory()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFactory"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].nameServerProvider()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 382
    functionLinenumberEnd: 384
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsServerAddressStreamProvider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolverGroup].newResolver(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory<?\
      \ extends DatagramChannel>,io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolverGroup"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 97
    functionDepth: 2
    returnType: "io.netty.resolver.AddressResolver<InetSocketAddress>"
    argCount: 3
    argTypes:
    - "io.netty.channel.EventLoop"
    - "io.netty.channel.ChannelFactory<? extends DatagramChannel>"
    - "io.netty.resolver.dns.DnsServerAddressStreamProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.InflightNameResolver].<init>(io.netty.util.concurrent.EventExecutor,io.netty.resolver.NameResolver,java.util.concurrent.ConcurrentMap,java.util.concurrent.ConcurrentMap)"
    - "[io.netty.resolver.dns.DnsAddressResolverGroup].newNameResolver(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    - "[io.netty.resolver.dns.RoundRobinDnsAddressResolverGroup].newAddressResolver(io.netty.channel.EventLoop,io.netty.resolver.NameResolver)"
    - "[io.netty.resolver.dns.DnsAddressResolverGroup].newAddressResolver(io.netty.channel.EventLoop,io.netty.resolver.NameResolver)"
    functionUses: 1
    ICount: 11
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:92,1"
      Dst: "[io.netty.resolver.dns.DnsAddressResolverGroup].newNameResolver(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:92,1"
      Dst: "[io.netty.resolver.dns.InflightNameResolver].<init>(io.netty.util.concurrent.EventExecutor,io.netty.resolver.NameResolver,java.util.concurrent.ConcurrentMap,java.util.concurrent.ConcurrentMap)"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:96,1"
      Dst: "[io.netty.resolver.dns.DnsAddressResolverGroup].newAddressResolver(io.netty.channel.EventLoop,io.netty.resolver.NameResolver)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolverGroup].newNameResolver(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory<?\
      \ extends DatagramChannel>,io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolverGroup"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 115
    functionDepth: 6
    returnType: "io.netty.resolver.NameResolver<InetAddress>"
    argCount: 3
    argTypes:
    - "io.netty.channel.EventLoop"
    - "io.netty.channel.ChannelFactory<? extends DatagramChannel>"
    - "io.netty.resolver.dns.DnsServerAddressStreamProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].copy()"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].eventLoop(io.netty.channel.EventLoop)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].channelFactory(io.netty.channel.ChannelFactory)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].nameServerProvider(io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].build()"
    functionUses: 1
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:107,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].copy()"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:111,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].eventLoop(io.netty.channel.EventLoop)"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:112,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].channelFactory(io.netty.channel.ChannelFactory)"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:113,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].nameServerProvider(io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:114,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].build()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].copy()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 517
    functionLinenumberEnd: 577
    functionDepth: 3
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].<init>()"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].eventLoop(io.netty.channel.EventLoop)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].channelFactory(io.netty.channel.ChannelFactory)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].socketChannelFactory(io.netty.channel.ChannelFactory)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].resolveCache(io.netty.resolver.dns.DnsCache)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].cnameCache(io.netty.resolver.dns.DnsCnameCache)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].ttl(int,int)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].negativeTtl(int)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].authoritativeDnsServerCache(io.netty.resolver.dns.AuthoritativeDnsServerCache)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].dnsQueryLifecycleObserverFactory(io.netty.resolver.dns.DnsQueryLifecycleObserverFactory)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].queryTimeoutMillis(long)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].resolvedAddressTypes(io.netty.resolver.ResolvedAddressTypes)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].recursionDesired(boolean)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].maxQueriesPerResolve(int)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].traceEnabled(boolean)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].maxPayloadSize(int)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].optResourceEnabled(boolean)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].hostsFileEntriesResolver(io.netty.resolver.HostsFileEntriesResolver)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].nameServerProvider(io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].searchDomains(java.lang.Iterable)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].ndots(int)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].decodeIdn(boolean)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].completeOncePreferredResolved(boolean)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].localAddress(java.net.SocketAddress)"
    functionUses: 1
    ICount: 79
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:520"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:524"
        BranchSideFuncs:
        - "eventLoop(io.netty.channel.EventLoop)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:523"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:524"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:528"
        BranchSideFuncs:
        - "channelFactory(io.netty.channel.ChannelFactory)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:527"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:528"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:532"
        BranchSideFuncs:
        - "socketChannelFactory(io.netty.channel.ChannelFactory)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:531"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:532"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:536"
        BranchSideFuncs:
        - "resolveCache(io.netty.resolver.dns.DnsCache)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:535"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:536"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:539"
        BranchSideFuncs:
        - "cnameCache(io.netty.resolver.dns.DnsCnameCache)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:538"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:539"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:543"
        BranchSideFuncs:
        - "ttl(int,int)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:542"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:539"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:543"
        BranchSideFuncs:
        - "ttl(int,int)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:542"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:543"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:547"
        BranchSideFuncs:
        - "negativeTtl(int)"
        - "intValue()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:546"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:547"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:551"
        BranchSideFuncs:
        - "authoritativeDnsServerCache(io.netty.resolver.dns.AuthoritativeDnsServerCache)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:550"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:551"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:555"
        BranchSideFuncs:
        - "dnsQueryLifecycleObserverFactory(io.netty.resolver.dns.DnsQueryLifecycleObserverFactory)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:554"
        BranchSideFuncs:
        - "recursionDesired(boolean)"
        - "optResourceEnabled(boolean)"
        - "maxPayloadSize(int)"
        - "queryTimeoutMillis(long)"
        - "maxQueriesPerResolve(int)"
        - "resolvedAddressTypes(io.netty.resolver.ResolvedAddressTypes)"
        - "traceEnabled(boolean)"
        - "hostsFileEntriesResolver(io.netty.resolver.HostsFileEntriesResolver)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:564"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:568"
        BranchSideFuncs:
        - "nameServerProvider(io.netty.resolver.dns.DnsServerAddressStreamProvider)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:567"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:568"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:572"
        BranchSideFuncs:
        - "asList(java.lang.Object[])"
        - "searchDomains(java.lang.Iterable)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:571"
        BranchSideFuncs:
        - "localAddress(java.net.SocketAddress)"
        - "decodeIdn(boolean)"
        - "ndots(int)"
        - "completeOncePreferredResolved(boolean)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:518,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].<init>()"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:521,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].eventLoop(io.netty.channel.EventLoop)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:525,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].channelFactory(io.netty.channel.ChannelFactory)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:529,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].socketChannelFactory(io.netty.channel.ChannelFactory)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:533,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].resolveCache(io.netty.resolver.dns.DnsCache)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:537,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].cnameCache(io.netty.resolver.dns.DnsCnameCache)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:540,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:540,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].ttl(int,int)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:544,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].negativeTtl(int)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:548,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].authoritativeDnsServerCache(io.netty.resolver.dns.AuthoritativeDnsServerCache)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:552,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].dnsQueryLifecycleObserverFactory(io.netty.resolver.dns.DnsQueryLifecycleObserverFactory)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:555,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].queryTimeoutMillis(long)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:556,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].resolvedAddressTypes(io.netty.resolver.ResolvedAddressTypes)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:557,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].recursionDesired(boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:558,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].maxQueriesPerResolve(int)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:559,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].traceEnabled(boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:560,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].maxPayloadSize(int)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:561,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].optResourceEnabled(boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:562,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].hostsFileEntriesResolver(io.netty.resolver.HostsFileEntriesResolver)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:565,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].nameServerProvider(io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:569,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:569,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].searchDomains(java.lang.Iterable)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:572,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].ndots(int)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:573,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].decodeIdn(boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:574,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].completeOncePreferredResolved(boolean)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:575,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].localAddress(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 24
    CyclomaticComplexity: 13
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].<init>()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsServerAddressStreamProviders].platformDefault()"
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 20
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:70,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:60,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStreamProviders].platformDefault()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsServerAddressStreamProviders].platformDefault()"
    functionSourceFile: "io.netty.resolver.dns.DnsServerAddressStreamProviders"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 114
    functionDepth: 1
    returnType: "io.netty.resolver.dns.DnsServerAddressStreamProvider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[io.netty.resolver.dns.DnsServerAddressStreamProviders].unixDefault()"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsServerAddressStreamProviders:102"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsServerAddressStreamProviders:112"
        BranchSideFuncs:
        - "unixDefault()"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsServerAddressStreamProviders:104,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "io.netty.resolver.dns.DnsServerAddressStreamProviders:113,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStreamProviders].unixDefault()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsServerAddressStreamProviders].unixDefault()"
    functionSourceFile: "io.netty.resolver.dns.DnsServerAddressStreamProviders"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsServerAddressStreamProvider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].eventLoop(io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].resolveCache(io.netty.resolver.dns.DnsCache)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 158
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsCache"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].cnameCache(io.netty.resolver.dns.DnsCnameCache)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsCnameCache"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].ttl(int,int)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 232
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:229,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].negativeTtl(int)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 240
    functionLinenumberEnd: 243
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:241,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].authoritativeDnsServerCache(io.netty.resolver.dns.AuthoritativeDnsServerCache)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 201
    functionLinenumberEnd: 204
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.AuthoritativeDnsServerCache"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].dnsQueryLifecycleObserverFactory(io.netty.resolver.dns.DnsQueryLifecycleObserverFactory)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionDepth: 1
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsQueryLifecycleObserverFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:178,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].queryTimeoutMillis(long)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 251
    functionLinenumberEnd: 254
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].resolvedAddressTypes(io.netty.resolver.ResolvedAddressTypes)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 294
    functionLinenumberEnd: 297
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "io.netty.resolver.ResolvedAddressTypes"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].recursionDesired(boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 317
    functionLinenumberEnd: 320
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].maxQueriesPerResolve(int)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 328
    functionLinenumberEnd: 331
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].traceEnabled(boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 343
    functionLinenumberEnd: 346
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].maxPayloadSize(int)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 354
    functionLinenumberEnd: 357
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].optResourceEnabled(boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 367
    functionLinenumberEnd: 370
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].hostsFileEntriesResolver(io.netty.resolver.HostsFileEntriesResolver)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 377
    functionLinenumberEnd: 380
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "io.netty.resolver.HostsFileEntriesResolver"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].nameServerProvider(io.netty.resolver.dns.DnsServerAddressStreamProvider)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 392
    functionLinenumberEnd: 395
    functionDepth: 1
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsServerAddressStreamProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:393,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].ndots(int)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 432
    functionLinenumberEnd: 435
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].decodeIdn(boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 461
    functionLinenumberEnd: 464
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].completeOncePreferredResolved(boolean)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 309
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].localAddress(java.net.SocketAddress)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 214
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].build()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 471
    functionLinenumberEnd: 489
    functionDepth: 5
    returnType: "io.netty.resolver.dns.DnsNameResolver"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].newCache()"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].newCnameCache()"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].newAuthoritativeDnsServerCache()"
    - "[io.netty.resolver.dns.DnsNameResolver].<init>(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.DnsCnameCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,java.net.SocketAddress,io.netty.resolver.dns.DnsQueryLifecycleObserverFactory,long,io.netty.resolver.ResolvedAddressTypes,boolean,int,boolean,int,boolean,io.netty.resolver.HostsFileEntriesResolver,io.netty.resolver.dns.DnsServerAddressStreamProvider,java.lang.String[],int,boolean,boolean)"
    functionUses: 1
    ICount: 66
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:472"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:476"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:475"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:476"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:480"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:479"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:476"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:477"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:476"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:476"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:477"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:476"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:476"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:480"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:479"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:480"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:484"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:483"
        BranchSideFuncs:
        - "newCache()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:480"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:481"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:480"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:480"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:481"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:480"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:480"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:484"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:483"
        BranchSideFuncs:
        - "newCache()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:484"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:484"
        BranchSideFuncs:
        - "newCache()"
        - "newCnameCache()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:483"
        BranchSideFuncs:
        - "newCache()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:485"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:484"
        BranchSideFuncs:
        - "newCnameCache()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:483"
        BranchSideFuncs:
        - "newCache()"
        - "newCnameCache()"
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:486"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:487"
        BranchSideFuncs:
        - "newAuthoritativeDnsServerCache()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:486"
        BranchSideFuncs:
        - "newAuthoritativeDnsServerCache()"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:473,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:484,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].newCache()"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:485,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].newCnameCache()"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:487,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].newAuthoritativeDnsServerCache()"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:488,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].<init>(io.netty.channel.EventLoop,io.netty.channel.ChannelFactory,io.netty.channel.ChannelFactory,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.DnsCnameCache,io.netty.resolver.dns.AuthoritativeDnsServerCache,java.net.SocketAddress,io.netty.resolver.dns.DnsQueryLifecycleObserverFactory,long,io.netty.resolver.ResolvedAddressTypes,boolean,int,boolean,int,boolean,io.netty.resolver.HostsFileEntriesResolver,io.netty.resolver.dns.DnsServerAddressStreamProvider,java.lang.String[],int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 22
    CyclomaticComplexity: 10
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].newCache()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 437
    functionLinenumberEnd: 439
    functionDepth: 2
    returnType: "io.netty.resolver.dns.DnsCache"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultDnsCache].<init>(int,int,int)"
    - "[io.netty.util.internal.ObjectUtil].intValue(java.lang.Integer,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:438,1"
      Dst: "[io.netty.util.internal.ObjectUtil].intValue(java.lang.Integer,int)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:438,1"
      Dst: "[io.netty.resolver.dns.DefaultDnsCache].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ObjectUtil].intValue(java.lang.Integer,int)"
    functionSourceFile: "io.netty.util.internal.ObjectUtil"
    linkageType: ""
    functionLinenumber: 314
    functionLinenumberEnd: 316
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Integer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].intValue()"
    functionUses: 7
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ObjectUtil:315"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ObjectUtil:314"
        BranchSideFuncs:
        - "intValue()"
    Callsites:
    - Src: "io.netty.util.internal.ObjectUtil:315,1"
      Dst: "[java.lang.Integer].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DefaultDnsCache].<init>(int,int,int)"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCache"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 82
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultDnsCache$1].<init>(io.netty.resolver.dns.DefaultDnsCache)"
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 1
    ICount: 31
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DefaultDnsCache:76"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DefaultDnsCache:80"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.resolver.dns.DefaultDnsCache:79"
        BranchSideFuncs:
        - "checkPositiveOrZero(int,java.lang.String)"
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultDnsCache:73,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.DefaultDnsCache:36,1"
      Dst: "[io.netty.resolver.dns.DefaultDnsCache$1].<init>(io.netty.resolver.dns.DefaultDnsCache)"
    - Src: "io.netty.resolver.dns.DefaultDnsCache:74,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.resolver.dns.DefaultDnsCache:74,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.resolver.dns.DefaultDnsCache:77,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.dns.DefaultDnsCache:77,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.dns.DefaultDnsCache:77,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.resolver.dns.DefaultDnsCache:77,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.resolver.dns.DefaultDnsCache:77,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].newCnameCache()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 449
    functionLinenumberEnd: 452
    functionDepth: 2
    returnType: "io.netty.resolver.dns.DnsCnameCache"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultDnsCnameCache].<init>(int,int)"
    - "[io.netty.util.internal.ObjectUtil].intValue(java.lang.Integer,int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:451,1"
      Dst: "[io.netty.util.internal.ObjectUtil].intValue(java.lang.Integer,int)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:451,1"
      Dst: "[io.netty.resolver.dns.DefaultDnsCnameCache].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsCnameCache].<init>(int,int)"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCnameCache"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 66
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultDnsCnameCache$1].<init>(io.netty.resolver.dns.DefaultDnsCnameCache)"
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 1
    ICount: 28
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DefaultDnsCnameCache:61"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DefaultDnsCnameCache:65"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.resolver.dns.DefaultDnsCnameCache:64"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultDnsCnameCache:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.DefaultDnsCnameCache:32,1"
      Dst: "[io.netty.resolver.dns.DefaultDnsCnameCache$1].<init>(io.netty.resolver.dns.DefaultDnsCnameCache)"
    - Src: "io.netty.resolver.dns.DefaultDnsCnameCache:59,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.resolver.dns.DefaultDnsCnameCache:59,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.resolver.dns.DefaultDnsCnameCache:60,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.resolver.dns.DefaultDnsCnameCache:62,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.dns.DefaultDnsCnameCache:62,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.dns.DefaultDnsCnameCache:62,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.resolver.dns.DefaultDnsCnameCache:62,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.resolver.dns.DefaultDnsCnameCache:62,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].newAuthoritativeDnsServerCache()"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 441
    functionLinenumberEnd: 447
    functionDepth: 2
    returnType: "io.netty.resolver.dns.AuthoritativeDnsServerCache"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].intValue(java.lang.Integer,int)"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].<init>(int,int,java.util.Comparator)"
    - "[io.netty.resolver.dns.NameServerComparator].<init>(java.lang.Class)"
    - "[io.netty.channel.socket.InternetProtocolFamily].addressType()"
    - "[io.netty.resolver.dns.DnsNameResolver].preferredAddressType(io.netty.resolver.ResolvedAddressTypes)"
    functionUses: 1
    ICount: 13
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:443,1"
      Dst: "[io.netty.util.internal.ObjectUtil].intValue(java.lang.Integer,int)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:446,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].preferredAddressType(io.netty.resolver.ResolvedAddressTypes)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:446,1"
      Dst: "[io.netty.channel.socket.InternetProtocolFamily].addressType()"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:446,1"
      Dst: "[io.netty.resolver.dns.NameServerComparator].<init>(java.lang.Class)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:446,1"
      Dst: "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].<init>(int,int,java.util.Comparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NameServerComparator].<init>(java.lang.Class)"
    functionSourceFile: "io.netty.resolver.dns.NameServerComparator"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.NameServerComparator:41,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.NameServerComparator:42,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsQueryContextManager].<init>()"
    functionSourceFile: "io.netty.resolver.dns.DnsQueryContextManager"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.HashMap].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:38,1"
      Dst: "[java.util.HashMap].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.BiDnsQueryLifecycleObserverFactory].<init>(io.netty.resolver.dns.DnsQueryLifecycleObserverFactory,io.netty.resolver.dns.DnsQueryLifecycleObserverFactory)"
    functionSourceFile: "io.netty.resolver.dns.BiDnsQueryLifecycleObserverFactory"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 38
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.resolver.dns.DnsQueryLifecycleObserverFactory"
    - "io.netty.resolver.dns.DnsQueryLifecycleObserverFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.BiDnsQueryLifecycleObserverFactory:34,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.BiDnsQueryLifecycleObserverFactory:35,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$4].<init>(io.netty.resolver.dns.DnsNameResolver)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$4"
    linkageType: ""
    functionLinenumber: 513
    functionLinenumberEnd: 515
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$4:514,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$5].<init>(io.netty.resolver.dns.DnsNameResolver,io.netty.resolver.dns.DnsCache,io.netty.resolver.dns.DnsCnameCache,io.netty.resolver.dns.AuthoritativeDnsServerCache)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$5"
    linkageType: ""
    functionLinenumber: 526
    functionLinenumberEnd: 528
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.resolver.dns.DnsNameResolver"
    - "io.netty.resolver.dns.DnsCache"
    - "io.netty.resolver.dns.DnsCnameCache"
    - "io.netty.resolver.dns.AuthoritativeDnsServerCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$5:527,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsAddressResolverGroup].newAddressResolver(io.netty.channel.EventLoop,io.netty.resolver.NameResolver<InetAddress>)"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressResolverGroup"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 1
    returnType: "io.netty.resolver.AddressResolver<InetSocketAddress>"
    argCount: 2
    argTypes:
    - "io.netty.channel.EventLoop"
    - "io.netty.resolver.NameResolver<InetAddress>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.InetSocketAddressResolver].<init>(io.netty.util.concurrent.EventExecutor,io.netty.resolver.NameResolver)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressResolverGroup:124,1"
      Dst: "[io.netty.resolver.InetSocketAddressResolver].<init>(io.netty.util.concurrent.EventExecutor,io.netty.resolver.NameResolver)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.CompressionException].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.CompressionException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.EncoderException].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.CompressionException:30,1"
      Dst: "[io.netty.handler.codec.EncoderException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.CompressionException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.compression.CompressionException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.EncoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.CompressionException:37,1"
      Dst: "[io.netty.handler.codec.EncoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception$ShutdownHint].values()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception$ShutdownHint"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Exception$ShutdownHint[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception$ShutdownHint:231,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception$ShutdownHint].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception$ShutdownHint"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Exception$ShutdownHint"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception$ShutdownHint:231,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Exception$ShutdownHint].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Exception$ShutdownHint"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 232
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Exception$ShutdownHint:231,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask].run(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask"
    linkageType: ""
    functionLinenumber: 557
    functionLinenumberEnd: 586
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.timeout.IdleStateHandler].access$1100(io.netty.handler.timeout.IdleStateHandler)"
    - "[io.netty.handler.timeout.IdleStateHandler].access$400(io.netty.handler.timeout.IdleStateHandler)"
    - "[io.netty.handler.timeout.IdleStateHandler].access$000(io.netty.handler.timeout.IdleStateHandler)"
    - "[io.netty.handler.timeout.IdleStateHandler].access$500(io.netty.handler.timeout.IdleStateHandler)"
    - "[java.lang.Math].max(long,long)"
    - "[io.netty.handler.timeout.IdleStateHandler].ticksInNanos()"
    - "[io.netty.handler.timeout.IdleStateHandler].access$1202(io.netty.handler.timeout.IdleStateHandler,io.netty.util.concurrent.Future)"
    - "[io.netty.handler.timeout.IdleStateHandler].schedule(io.netty.channel.ChannelHandlerContext,java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.handler.timeout.IdleStateHandler].access$200(io.netty.handler.timeout.IdleStateHandler)"
    - "[io.netty.handler.timeout.IdleStateHandler].access$202(io.netty.handler.timeout.IdleStateHandler,boolean)"
    - "[io.netty.handler.timeout.IdleStateHandler].access$1000(io.netty.handler.timeout.IdleStateHandler,io.netty.channel.ChannelHandlerContext,boolean)"
    - "[io.netty.handler.timeout.IdleStateHandler].newIdleStateEvent(io.netty.handler.timeout.IdleState,boolean)"
    - "[io.netty.handler.timeout.ReadTimeoutHandler].channelIdle(io.netty.channel.ChannelHandlerContext,io.netty.handler.timeout.IdleStateEvent)"
    - "[io.netty.handler.timeout.IdleStateHandler].channelIdle(io.netty.channel.ChannelHandlerContext,io.netty.handler.timeout.IdleStateEvent)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 1
    ICount: 50
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:559"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:562"
        BranchSideFuncs:
        - "access$000(io.netty.handler.timeout.IdleStateHandler)"
        - "ticksInNanos()"
        - "access$500(io.netty.handler.timeout.IdleStateHandler)"
        - "max(long,long)"
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:561"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:562"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:583"
        BranchSideFuncs:
        - "access$202(io.netty.handler.timeout.IdleStateHandler,boolean)"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "access$1000(io.netty.handler.timeout.IdleStateHandler,io.netty.channel.ChannelHandlerContext,boolean)"
        - "newIdleStateEvent(io.netty.handler.timeout.IdleState,boolean)"
        - "channelIdle(io.netty.channel.ChannelHandlerContext,io.netty.handler.timeout.IdleStateEvent)"
        - "access$1100(io.netty.handler.timeout.IdleStateHandler)"
        - "access$200(io.netty.handler.timeout.IdleStateHandler)"
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:582"
        BranchSideFuncs:
        - "schedule(io.netty.channel.ChannelHandlerContext,java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "access$1202(io.netty.handler.timeout.IdleStateHandler,io.netty.util.concurrent.Future)"
    - Branch String: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:571"
      Branch Sides:
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:575"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:574"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
        - "newIdleStateEvent(io.netty.handler.timeout.IdleState,boolean)"
        - "channelIdle(io.netty.channel.ChannelHandlerContext,io.netty.handler.timeout.IdleStateEvent)"
    Callsites:
    - Src: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:558,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].access$1100(io.netty.handler.timeout.IdleStateHandler)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:559,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].access$400(io.netty.handler.timeout.IdleStateHandler)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:560,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].ticksInNanos()"
    - Src: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:560,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].access$500(io.netty.handler.timeout.IdleStateHandler)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:560,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].access$000(io.netty.handler.timeout.IdleStateHandler)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:560,1"
      Dst: "[java.lang.Math].max(long,long)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:565,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].schedule(io.netty.channel.ChannelHandlerContext,java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:565,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].access$1202(io.netty.handler.timeout.IdleStateHandler,io.netty.util.concurrent.Future)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:567,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].access$200(io.netty.handler.timeout.IdleStateHandler)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:568,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].access$202(io.netty.handler.timeout.IdleStateHandler,boolean)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:571,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].access$1000(io.netty.handler.timeout.IdleStateHandler,io.netty.channel.ChannelHandlerContext,boolean)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:575,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].newIdleStateEvent(io.netty.handler.timeout.IdleState,boolean)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:576,1"
      Dst: "[io.netty.handler.timeout.IdleStateHandler].channelIdle(io.netty.channel.ChannelHandlerContext,io.netty.handler.timeout.IdleStateEvent)"
    - Src: "io.netty.handler.timeout.IdleStateHandler$AllIdleTimeoutTask:578,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.concurrent.PromiseCombiner$1$1].<init>(io.netty.util.concurrent.PromiseCombiner$1,io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.util.concurrent.PromiseCombiner$1$1"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.PromiseCombiner$1"
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseCombiner$1$1:46,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    functionSourceFile: "io.netty.util.concurrent.PromiseCombiner$1$1"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseCombiner$1].access$100(io.netty.util.concurrent.PromiseCombiner$1,io.netty.util.concurrent.Future)"
    functionUses: 50
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseCombiner$1$1:49,1"
      Dst: "[io.netty.util.concurrent.PromiseCombiner$1].access$100(io.netty.util.concurrent.PromiseCombiner$1,io.netty.util.concurrent.Future)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseCombiner$1].access$100(io.netty.util.concurrent.PromiseCombiner$1,io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.util.concurrent.PromiseCombiner$1"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.PromiseCombiner$1"
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseCombiner$1].operationComplete0(io.netty.util.concurrent.Future)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseCombiner$1:40,1"
      Dst: "[io.netty.util.concurrent.PromiseCombiner$1].operationComplete0(io.netty.util.concurrent.Future)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseCombiner$1].operationComplete0(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.util.concurrent.PromiseCombiner$1"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 65
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.concurrent.PromiseCombiner].access$000(io.netty.util.concurrent.PromiseCombiner)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.PromiseCombiner].access$204(io.netty.util.concurrent.PromiseCombiner)"
    - "[io.netty.util.concurrent.PromiseCombiner].access$300(io.netty.util.concurrent.PromiseCombiner)"
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.util.concurrent.FailedFuture].isSuccess()"
    - "[io.netty.util.concurrent.PromiseCombiner].access$302(io.netty.util.concurrent.PromiseCombiner,java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.util.concurrent.PromiseCombiner].access$200(io.netty.util.concurrent.PromiseCombiner)"
    - "[io.netty.util.concurrent.PromiseCombiner].access$400(io.netty.util.concurrent.PromiseCombiner)"
    - "[io.netty.util.concurrent.PromiseCombiner].access$500(io.netty.util.concurrent.PromiseCombiner)"
    - "[io.netty.util.concurrent.PromiseCombiner].access$600(io.netty.util.concurrent.PromiseCombiner)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].cause()"
    functionUses: 2
    ICount: 32
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.PromiseCombiner$1:56"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseCombiner$1:57"
        BranchSideFuncs:
        - "access$204(io.netty.util.concurrent.PromiseCombiner)"
        - "isSuccess()"
        - "access$300(io.netty.util.concurrent.PromiseCombiner)"
      - BranchSide: "io.netty.util.concurrent.PromiseCombiner$1:56"
        BranchSideFuncs:
        - "access$204(io.netty.util.concurrent.PromiseCombiner)"
        - "isSuccess()"
        - "access$300(io.netty.util.concurrent.PromiseCombiner)"
    - Branch String: "io.netty.util.concurrent.PromiseCombiner$1:56"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseCombiner$1:57"
        BranchSideFuncs:
        - "access$204(io.netty.util.concurrent.PromiseCombiner)"
        - "isSuccess()"
        - "access$300(io.netty.util.concurrent.PromiseCombiner)"
      - BranchSide: "io.netty.util.concurrent.PromiseCombiner$1:56"
        BranchSideFuncs:
        - "access$204(io.netty.util.concurrent.PromiseCombiner)"
        - "isSuccess()"
        - "access$300(io.netty.util.concurrent.PromiseCombiner)"
    - Branch String: "io.netty.util.concurrent.PromiseCombiner$1:58"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseCombiner$1:61"
        BranchSideFuncs:
        - "access$302(io.netty.util.concurrent.PromiseCombiner,java.lang.Throwable)"
        - "cause()"
      - BranchSide: "io.netty.util.concurrent.PromiseCombiner$1:60"
        BranchSideFuncs:
        - "access$500(io.netty.util.concurrent.PromiseCombiner)"
        - "access$200(io.netty.util.concurrent.PromiseCombiner)"
        - "access$400(io.netty.util.concurrent.PromiseCombiner)"
    - Branch String: "io.netty.util.concurrent.PromiseCombiner$1:58"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseCombiner$1:61"
        BranchSideFuncs:
        - "access$302(io.netty.util.concurrent.PromiseCombiner,java.lang.Throwable)"
        - "cause()"
      - BranchSide: "io.netty.util.concurrent.PromiseCombiner$1:60"
        BranchSideFuncs:
        - "access$500(io.netty.util.concurrent.PromiseCombiner)"
        - "access$200(io.netty.util.concurrent.PromiseCombiner)"
        - "access$400(io.netty.util.concurrent.PromiseCombiner)"
    - Branch String: "io.netty.util.concurrent.PromiseCombiner$1:61"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseCombiner$1:64"
        BranchSideFuncs:
        - "access$600(io.netty.util.concurrent.PromiseCombiner)"
      - BranchSide: "io.netty.util.concurrent.PromiseCombiner$1:63"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.PromiseCombiner$1:61"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseCombiner$1:64"
        BranchSideFuncs:
        - "access$600(io.netty.util.concurrent.PromiseCombiner)"
      - BranchSide: "io.netty.util.concurrent.PromiseCombiner$1:63"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseCombiner$1:56,1"
      Dst: "[io.netty.util.concurrent.PromiseCombiner].access$000(io.netty.util.concurrent.PromiseCombiner)"
    - Src: "io.netty.util.concurrent.PromiseCombiner$1:56,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.util.concurrent.PromiseCombiner$1:56,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.util.concurrent.PromiseCombiner$1:57,1"
      Dst: "[io.netty.util.concurrent.PromiseCombiner].access$204(io.netty.util.concurrent.PromiseCombiner)"
    - Src: "io.netty.util.concurrent.PromiseCombiner$1:58,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.util.concurrent.PromiseCombiner$1:58,1"
      Dst: "[io.netty.util.concurrent.PromiseCombiner].access$300(io.netty.util.concurrent.PromiseCombiner)"
    - Src: "io.netty.util.concurrent.PromiseCombiner$1:59,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.util.concurrent.PromiseCombiner$1:59,1"
      Dst: "[io.netty.util.concurrent.PromiseCombiner].access$302(io.netty.util.concurrent.PromiseCombiner,java.lang.Throwable)"
    - Src: "io.netty.util.concurrent.PromiseCombiner$1:61,1"
      Dst: "[io.netty.util.concurrent.PromiseCombiner].access$200(io.netty.util.concurrent.PromiseCombiner)"
    - Src: "io.netty.util.concurrent.PromiseCombiner$1:61,1"
      Dst: "[io.netty.util.concurrent.PromiseCombiner].access$400(io.netty.util.concurrent.PromiseCombiner)"
    - Src: "io.netty.util.concurrent.PromiseCombiner$1:61,1"
      Dst: "[io.netty.util.concurrent.PromiseCombiner].access$500(io.netty.util.concurrent.PromiseCombiner)"
    - Src: "io.netty.util.concurrent.PromiseCombiner$1:62,1"
      Dst: "[io.netty.util.concurrent.PromiseCombiner].access$600(io.netty.util.concurrent.PromiseCombiner)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 6
  - functionName: "[io.netty.util.concurrent.PromiseCombiner].access$000(io.netty.util.concurrent.PromiseCombiner)"
    functionSourceFile: "io.netty.util.concurrent.PromiseCombiner"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "io.netty.util.concurrent.EventExecutor"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.PromiseCombiner"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseCombiner].access$204(io.netty.util.concurrent.PromiseCombiner)"
    functionSourceFile: "io.netty.util.concurrent.PromiseCombiner"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.PromiseCombiner"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseCombiner].access$300(io.netty.util.concurrent.PromiseCombiner)"
    functionSourceFile: "io.netty.util.concurrent.PromiseCombiner"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.PromiseCombiner"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseCombiner].access$302(io.netty.util.concurrent.PromiseCombiner,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.concurrent.PromiseCombiner"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.PromiseCombiner"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseCombiner].access$200(io.netty.util.concurrent.PromiseCombiner)"
    functionSourceFile: "io.netty.util.concurrent.PromiseCombiner"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.PromiseCombiner"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseCombiner].access$400(io.netty.util.concurrent.PromiseCombiner)"
    functionSourceFile: "io.netty.util.concurrent.PromiseCombiner"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.PromiseCombiner"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseCombiner].access$500(io.netty.util.concurrent.PromiseCombiner)"
    functionSourceFile: "io.netty.util.concurrent.PromiseCombiner"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.PromiseCombiner"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseCombiner].access$600(io.netty.util.concurrent.PromiseCombiner)"
    functionSourceFile: "io.netty.util.concurrent.PromiseCombiner"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.PromiseCombiner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseCombiner].tryPromise()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseCombiner:35,1"
      Dst: "[io.netty.util.concurrent.PromiseCombiner].tryPromise()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseCombiner].tryPromise()"
    functionSourceFile: "io.netty.util.concurrent.PromiseCombiner"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].trySuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].trySuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].trySuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].trySuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 2
    ICount: 10
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.PromiseCombiner:170"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseCombiner:169"
        BranchSideFuncs:
        - "trySuccess(java.lang.Object)"
        - "tryFailure(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseCombiner:170,1"
      Dst: "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    - Src: "io.netty.util.concurrent.PromiseCombiner:170,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine$1].accept(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine$1"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnSslUtils].setHandshakeApplicationProtocolSelector(javax.net.ssl.SSLEngine,java.util.function.BiFunction)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine$1:108,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslUtils].setHandshakeApplicationProtocolSelector(javax.net.ssl.SSLEngine,java.util.function.BiFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslEngine$1].accept(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslEngine$1"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkAlpnSslEngine$1].accept(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslEngine$1:105,1"
      Dst: "[io.netty.handler.ssl.JdkAlpnSslEngine$1].accept(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].isAccessible0()"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 250
    functionLinenumberEnd: 252
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].isAccessible()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].isAccessible()"
    - "[io.netty.buffer.SwappedByteBuf].isAccessible()"
    - "[io.netty.buffer.ByteBuf].isAccessible()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].isAccessible()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isAccessible()"
    - "[io.netty.buffer.CompositeByteBuf].isAccessible()"
    functionUses: 1
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:251,1"
      Dst: "[io.netty.buffer.ByteBuf].isAccessible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].refCnt0()"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.buffer.EmptyByteBuf].refCnt()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 1
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:256,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retain0()"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 260
    functionLinenumberEnd: 263
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 1
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:261,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retain0(int)"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:267,1"
      Dst: "[io.netty.buffer.ByteBuf].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].touch0()"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 272
    functionLinenumberEnd: 275
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.SwappedByteBuf].touch()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch()"
    - "[io.netty.buffer.EmptyByteBuf].touch()"
    - "[io.netty.buffer.WrappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    - "[io.netty.buffer.UnreleasableByteBuf].touch()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.CompositeByteBuf].touch()"
    - "[io.netty.buffer.ByteBuf].touch()"
    functionUses: 1
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:273,1"
      Dst: "[io.netty.buffer.ByteBuf].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].touch0(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 278
    functionLinenumberEnd: 281
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:279,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].release0()"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 284
    functionLinenumberEnd: 286
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:285,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].release0(int)"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 289
    functionLinenumberEnd: 291
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release(int)"
    - "[io.netty.buffer.WrappedByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release(int)"
    - "[io.netty.buffer.EmptyByteBuf].release(int)"
    - "[io.netty.buffer.SwappedByteBuf].release(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].release(int)"
    - "[io.netty.util.ReferenceCounted].release(int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:290,1"
      Dst: "[io.netty.util.ReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].duplicate()"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 294
    functionLinenumberEnd: 298
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.AbstractByteBuf)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    functionUses: 23
    ICount: 12
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:295,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].ensureAccessible()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:296,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:296,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.AbstractByteBuf)"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:297,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:297,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:297,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:297,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedDuplicate()"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 301
    functionLinenumberEnd: 303
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].newInstance(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    functionUses: 8
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:302,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:302,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:302,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:302,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:302,1"
      Dst: "[io.netty.buffer.PooledDuplicatedByteBuf].newInstance(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].slice(int,int)"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 309
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.AbstractByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    functionUses: 22
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:307,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:308,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:308,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:308,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.AbstractByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedSlice()"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 313
    functionLinenumberEnd: 315
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedSlice(int,int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:314,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:314,1"
      Dst: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedSlice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedSlice(int,int)"
    functionSourceFile: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf"
    linkageType: ""
    functionLinenumber: 318
    functionLinenumberEnd: 320
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].newInstance(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    functionUses: 11
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:319,1"
      Dst: "[io.netty.buffer.UnpooledSlicedByteBuf].unwrap()"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:319,1"
      Dst: "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].idx(int)"
    - Src: "io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf:319,1"
      Dst: "[io.netty.buffer.PooledSlicedByteBuf].newInstance(io.netty.buffer.AbstractByteBuf,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3].<init>(io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3"
    linkageType: ""
    functionLinenumber: 621
    functionLinenumberEnd: 623
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3:622,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3"
    linkageType: ""
    functionLinenumber: 624
    functionLinenumberEnd: 633
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isCancelled()"
    - "[io.netty.util.concurrent.CompleteFuture].isCancelled()"
    - "[io.netty.util.concurrent.DefaultPromise].isCancelled()"
    - "[io.netty.channel.VoidChannelPromise].isCancelled()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].access$300(io.netty.channel.epoll.AbstractEpollChannel)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cancel(boolean)"
    - "[io.netty.util.concurrent.CompleteFuture].cancel(boolean)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cancel(boolean)"
    - "[io.netty.channel.VoidChannelPromise].cancel(boolean)"
    - "[io.netty.channel.epoll.AbstractEpollChannel].access$102(io.netty.channel.epoll.AbstractEpollChannel,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - "[java.util.concurrent.Future].isCancelled()"
    - "[io.netty.util.concurrent.Future].cancel(boolean)"
    functionUses: 1
    ICount: 20
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3:625"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3:632"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3:631"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3:626"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3:629"
        BranchSideFuncs:
        - "cancel(boolean)"
        - "access$300(io.netty.channel.epoll.AbstractEpollChannel)"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3:628"
        BranchSideFuncs:
        - "access$102(io.netty.channel.epoll.AbstractEpollChannel,io.netty.channel.ChannelPromise)"
        - "close(io.netty.channel.ChannelPromise)"
        - "voidPromise()"
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3:625,1"
      Dst: "[java.util.concurrent.Future].isCancelled()"
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3:626,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].access$300(io.netty.channel.epoll.AbstractEpollChannel)"
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3:627,1"
      Dst: "[io.netty.util.concurrent.Future].cancel(boolean)"
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3:629,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].access$102(io.netty.channel.epoll.AbstractEpollChannel,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3:630,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3:630,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3"
    linkageType: ""
    functionLinenumber: 621
    functionLinenumberEnd: 623
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3:622,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$3].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder].addSubscription(io.netty.handler.codec.mqtt.MqttQoS,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttQoS"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder].ensureSubscriptionsExist()"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttQoS)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder:227,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder].ensureSubscriptionsExist()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder:228,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttTopicSubscription].<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttQoS)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder:228,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder].ensureSubscriptionsExist()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder:258"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder:261"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder:260"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder:259,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder].addSubscription(java.lang.String,io.netty.handler.codec.mqtt.MqttSubscriptionOption)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.mqtt.MqttSubscriptionOption"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder].ensureSubscriptionsExist()"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttSubscriptionOption)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder:233,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder].ensureSubscriptionsExist()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder:234,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttTopicSubscription].<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttSubscriptionOption)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder:234,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder].messageId(int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder].properties(io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder].build()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttSubscribeMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].<init>(int,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.handler.codec.mqtt.MqttSubscribePayload].<init>(java.util.List)"
    - "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttSubscribePayload)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder:249,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder:251,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].<init>(int,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder:253,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscribePayload].<init>(java.util.List)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$SubscribeBuilder:254,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader,io.netty.handler.codec.mqtt.MqttSubscribePayload)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubscribePayload].<init>(java.util.List)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubscribePayload"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubscribePayload:31,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubscribePayload:32,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.StandardCompressionOptions].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.StandardCompressionOptions"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.StandardCompressionOptions:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.StandardCompressionOptions].brotli()"
    functionSourceFile: "io.netty.handler.codec.compression.StandardCompressionOptions"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.BrotliOptions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.StandardCompressionOptions].brotli(com.aayushatharva.brotli4j.encoder.Encoder$Parameters)"
    functionSourceFile: "io.netty.handler.codec.compression.StandardCompressionOptions"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.compression.BrotliOptions"
    argCount: 1
    argTypes:
    - "com.aayushatharva.brotli4j.encoder.Encoder$Parameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.BrotliOptions].<init>(com.aayushatharva.brotli4j.encoder.Encoder$Parameters)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.StandardCompressionOptions:45,1"
      Dst: "[io.netty.handler.codec.compression.BrotliOptions].<init>(com.aayushatharva.brotli4j.encoder.Encoder$Parameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.StandardCompressionOptions].zstd()"
    functionSourceFile: "io.netty.handler.codec.compression.StandardCompressionOptions"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.ZstdOptions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.StandardCompressionOptions].zstd(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.StandardCompressionOptions"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.compression.ZstdOptions"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ZstdOptions].<init>(int,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.StandardCompressionOptions:68,1"
      Dst: "[io.netty.handler.codec.compression.ZstdOptions].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.StandardCompressionOptions].gzip()"
    functionSourceFile: "io.netty.handler.codec.compression.StandardCompressionOptions"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.GzipOptions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.StandardCompressionOptions].gzip(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.StandardCompressionOptions"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.compression.GzipOptions"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.GzipOptions].<init>(int,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.StandardCompressionOptions:97,1"
      Dst: "[io.netty.handler.codec.compression.GzipOptions].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.DeflateOptions].<init>(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.DeflateOptions"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.DeflateOptions:40,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.compression.DeflateOptions:41,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkInRange(int,int,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.StandardCompressionOptions].deflate()"
    functionSourceFile: "io.netty.handler.codec.compression.StandardCompressionOptions"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.DeflateOptions"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.StandardCompressionOptions].deflate(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.StandardCompressionOptions"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.compression.DeflateOptions"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.DeflateOptions].<init>(int,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.StandardCompressionOptions:126,1"
      Dst: "[io.netty.handler.codec.compression.DeflateOptions].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JZlibEncoder].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:53,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].close()"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JZlibEncoder].ctx()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.handler.codec.compression.JZlibEncoder].close(io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:226,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].ctx()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:226,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:226,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:226,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].close(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JZlibEncoder].ctx()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.handler.codec.compression.JZlibEncoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].<init>(io.netty.handler.codec.compression.JZlibEncoder,io.netty.channel.ChannelPromise,io.netty.channel.ChannelPromise)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JZlibEncoder:233"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:236"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:235"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:231,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].ctx()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:232,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:233,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:234,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:236,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:237,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder$1].<init>(io.netty.handler.codec.compression.JZlibEncoder,io.netty.channel.ChannelPromise,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:237,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].isClosed()"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 321
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.EmptyByteBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AbstractByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[])"
    - "[java.lang.Math].ceil(double)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[com.jcraft.jzlib.Deflater].deflate(int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.compression.ZlibUtil].fail(com.jcraft.jzlib.Deflater,java.lang.String,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    functionUses: 1
    ICount: 88
    EdgeCount: 179
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JZlibEncoder:263"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:268"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:267"
        BranchSideFuncs:
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.compression.JZlibEncoder:269"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:275"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:274"
        BranchSideFuncs:
        - "hasArray()"
    - Branch String: "io.netty.handler.codec.compression.JZlibEncoder:277"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:281"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:280"
        BranchSideFuncs:
        - "readerIndex()"
        - "getBytes(int,byte[])"
    - Branch String: "io.netty.handler.codec.compression.JZlibEncoder:304"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:308"
        BranchSideFuncs:
        - "fail(com.jcraft.jzlib.Deflater,java.lang.String,int)"
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:307"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.JZlibEncoder:309"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:317"
        BranchSideFuncs:
        - "writerIndex()"
        - "writerIndex(int)"
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:316"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:264,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:268,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:275,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:278,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:279,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:279,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:282,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:289,1"
      Dst: "[java.lang.Math].ceil(double)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:290,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:293,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:299,1"
      Dst: "[com.jcraft.jzlib.Deflater].deflate(int)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:301,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:305,1"
      Dst: "[io.netty.handler.codec.compression.ZlibUtil].fail(com.jcraft.jzlib.Deflater,java.lang.String,int)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:310,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: 325
    functionLinenumberEnd: 344
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JZlibEncoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$2].<init>(io.netty.handler.codec.compression.JZlibEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].<init>(io.netty.handler.codec.compression.JZlibEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    functionUses: 2
    ICount: 16
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.JZlibEncoder:334"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.JZlibEncoder:342"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:326,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:326,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:327,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder$2].<init>(io.netty.handler.codec.compression.JZlibEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:327,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:334,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:336,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:336,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder$3].<init>(io.netty.handler.codec.compression.JZlibEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:336,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: 391
    functionLinenumberEnd: 394
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JZlibEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.JZlibEncoder"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JZlibEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JZlibEncoder:36,1"
      Dst: "[io.netty.handler.codec.compression.JZlibEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig].mode()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmMode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig].algorithm()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslCertificateCompressionConfig$AlgorithmConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].<init>(java.util.Collection)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Collection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].<init>()"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:226,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:227,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].add(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringPair].<init>(java.lang.String,java.lang.String)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:243,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$StringPair].<init>(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:243,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].toString()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 259
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 19
    ICount: 27
    EdgeCount: 129
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:250"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:257"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:256"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:251"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:254"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:253"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:248,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:250,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:250,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:250,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:252,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:254,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$UserProperties:254,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable,boolean)"
    functionSourceFile: "io.netty.channel.ChannelException"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable,boolean,boolean)"
    - "[java.lang.AssertionError].<init>()"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelException:62"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelException:63"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelException:62"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelException:62"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelException:63"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelException:62"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelException:61,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable,boolean,boolean)"
    - Src: "io.netty.channel.ChannelException:62,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelException].newStatic(java.lang.String,java.lang.Class<?>,java.lang.String)"
    functionSourceFile: "io.netty.channel.ChannelException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelException"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Class<?>"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.channel.ChannelException$StacklessChannelException].<init>(java.lang.String,java.lang.Throwable,boolean)"
    - "[io.netty.channel.ChannelException$StacklessChannelException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.ThrowableUtil].unknownStackTrace(java.lang.Throwable,java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelException:67"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelException:70"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelException:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelException:67,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.ChannelException:68,1"
      Dst: "[io.netty.channel.ChannelException$StacklessChannelException].<init>(java.lang.String,java.lang.Throwable,boolean)"
    - Src: "io.netty.channel.ChannelException:70,1"
      Dst: "[io.netty.channel.ChannelException$StacklessChannelException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.ChannelException:72,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].unknownStackTrace(java.lang.Throwable,java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelException$StacklessChannelException].<init>(java.lang.String,java.lang.Throwable,boolean)"
    functionSourceFile: "io.netty.channel.ChannelException$StacklessChannelException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelException$StacklessChannelException:83,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelException$StacklessChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.ChannelException$StacklessChannelException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelException$StacklessChannelException:79,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State"
    linkageType: ""
    functionLinenumber: 240
    functionLinenumberEnd: 242
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeSet].clone()"
    - "[javax.crypto.MacSpi].clone()"
    - "[java.util.GregorianCalendar].clone()"
    - "[java.util.Hashtable].clone()"
    - "[java.util.Hashtable$Entry].clone()"
    - "[java.util.LinkedList].clone()"
    - "[java.lang.Thread].clone()"
    - "[java.util.IdentityHashMap].clone()"
    - "[java.util.Locale].clone()"
    - "[java.util.ArrayList].clone()"
    - "[java.util.concurrent.CopyOnWriteArrayList].clone()"
    - "[java.lang.Object].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[java.util.ArrayDeque].clone()"
    - "[java.util.jar.Manifest].clone()"
    - "[java.security.Signature].clone()"
    - "[java.util.zip.ZipEntry].clone()"
    - "[java.util.TimeZone].clone()"
    - "[java.util.AbstractMap].clone()"
    - "[java.text.NumberFormat].clone()"
    - "[java.util.EnumSet].clone()"
    - "[java.security.MessageDigest].clone()"
    - "[sun.security.x509.GeneralSubtrees].clone()"
    - "[java.lang.ref.Reference].clone()"
    - "[java.text.SimpleDateFormat].clone()"
    - "[java.util.BitSet].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[sun.util.calendar.CalendarDate].clone()"
    - "[java.text.Collator].clone()"
    - "[jaz.Zer].clone()"
    - "[sun.text.normalizer.UCharacterIterator].clone()"
    - "[java.security.MessageDigestSpi].clone()"
    - "[java.util.Vector].clone()"
    - "[sun.security.x509.NameConstraintsExtension].clone()"
    - "[java.util.jar.Attributes].clone()"
    - "[java.text.DateFormat].clone()"
    - "[java.util.HashMap].clone()"
    - "[java.text.BreakIterator].clone()"
    - "[java.text.MessageFormat].clone()"
    - "[javax.crypto.Mac].clone()"
    - "[java.util.Properties].clone()"
    - "[java.lang.invoke.MemberName].clone()"
    - "[java.util.Date].clone()"
    - "[java.security.SignatureSpi].clone()"
    - "[java.util.Calendar].clone()"
    - "[sun.security.util.BitArray].clone()"
    - "[java.text.Format].clone()"
    - "[java.util.TreeMap].clone()"
    - "[java.text.DecimalFormatSymbols].clone()"
    - "[java.util.HashSet].clone()"
    - "[java.net.HttpCookie].clone()"
    - "[java.text.DateFormatSymbols].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 53
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State:241,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State:241,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State"
    linkageType: ""
    functionLinenumber: 240
    functionLinenumberEnd: 242
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State:241,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.ChannelMatchers$1].<init>()"
    functionSourceFile: "io.netty.channel.group.ChannelMatchers$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.ChannelMatchers$1:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.ChannelMatchers$1].matches(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.group.ChannelMatchers$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.MessageAggregationException].<init>()"
    functionSourceFile: "io.netty.handler.codec.MessageAggregationException"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.MessageAggregationException:26,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.MessageAggregationException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.MessageAggregationException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.MessageAggregationException:29,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.MessageAggregationException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.MessageAggregationException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.MessageAggregationException:33,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.MessageAggregationException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.MessageAggregationException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.MessageAggregationException:37,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.AbstractEpollChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ServerChannelRecvByteBufAllocator].<init>()"
    - "[io.netty.channel.epoll.EpollChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel,io.netty.channel.RecvByteBufAllocator)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:42,1"
      Dst: "[io.netty.channel.ServerChannelRecvByteBufAllocator].<init>()"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:42,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel,io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:47,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].getOptions()"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:47,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 66
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerChannelConfig].getReceiveBufferSize()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].isReuseAddress()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].getBacklog()"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].getTcpFastopen()"
    - "[io.netty.channel.epoll.EpollChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 6
    ICount: 24
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollServerChannelConfig:53"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollServerChannelConfig:56"
        BranchSideFuncs:
        - "getReceiveBufferSize()"
      - BranchSide: "io.netty.channel.epoll.EpollServerChannelConfig:55"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollServerChannelConfig:56"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollServerChannelConfig:59"
        BranchSideFuncs:
        - "isReuseAddress()"
        - "valueOf(boolean)"
      - BranchSide: "io.netty.channel.epoll.EpollServerChannelConfig:58"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollServerChannelConfig:59"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollServerChannelConfig:62"
        BranchSideFuncs:
        - "getBacklog()"
      - BranchSide: "io.netty.channel.epoll.EpollServerChannelConfig:61"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollServerChannelConfig:62"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollServerChannelConfig:65"
        BranchSideFuncs:
        - "getTcpFastopen()"
        - "valueOf(int)"
      - BranchSide: "io.netty.channel.epoll.EpollServerChannelConfig:64"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:54,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].getReceiveBufferSize()"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:54,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:57,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].isReuseAddress()"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:57,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:60,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].getBacklog()"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:63,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].getTcpFastopen()"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:65,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].getReceiveBufferSize()"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 112
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getReceiveBufferSize()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:109,1"
      Dst: "[io.netty.channel.unix.Socket].getReceiveBufferSize()"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:111,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].isReuseAddress()"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 93
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isReuseAddress()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:90,1"
      Dst: "[io.netty.channel.unix.Socket].isReuseAddress()"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:92,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].getBacklog()"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].getTcpFastopen()"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 85
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setReceiveBufferSize(int)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setReceiveBufferSize(int)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setReuseAddress(boolean)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setReuseAddress(boolean)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setBacklog(int)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setBacklog(int)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setTcpFastopen(int)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 3
    ICount: 31
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollServerChannelConfig:72"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollServerChannelConfig:74"
        BranchSideFuncs:
        - "setReceiveBufferSize(int)"
      - BranchSide: "io.netty.channel.epoll.EpollServerChannelConfig:73"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollServerChannelConfig:74"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollServerChannelConfig:76"
        BranchSideFuncs:
        - "booleanValue()"
        - "setReuseAddress(boolean)"
      - BranchSide: "io.netty.channel.epoll.EpollServerChannelConfig:75"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollServerChannelConfig:76"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollServerChannelConfig:78"
        BranchSideFuncs:
        - "setBacklog(int)"
      - BranchSide: "io.netty.channel.epoll.EpollServerChannelConfig:77"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollServerChannelConfig:78"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollServerChannelConfig:81"
        BranchSideFuncs:
        - "intValue()"
        - "setTcpFastopen(int)"
      - BranchSide: "io.netty.channel.epoll.EpollServerChannelConfig:80"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:70,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:73,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:73,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:75,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:75,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setReuseAddress(boolean)"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:77,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setBacklog(int)"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:79,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setTcpFastopen(int)"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:81,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].setReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 122
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setReceiveBufferSize(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:118,1"
      Dst: "[io.netty.channel.unix.Socket].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:121,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].setReuseAddress(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 103
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollServerChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setReuseAddress(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:99,1"
      Dst: "[io.netty.channel.unix.Socket].setReuseAddress(boolean)"
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:102,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].setBacklog(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 135
    functionDepth: 1
    returnType: "io.netty.channel.epoll.EpollServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:132,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].setTcpFastopen(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 159
    functionDepth: 1
    returnType: "io.netty.channel.epoll.EpollServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:156,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].setPerformancePreferences(int,int,int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.epoll.EpollServerChannelConfig"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:168,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 177
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:175,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setWriteSpinCount(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:181,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 189
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollServerChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:187,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollServerChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:193,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 201
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollServerChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setAutoRead(boolean)"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:199,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionDepth: 4
    returnType: "io.netty.channel.epoll.EpollServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:206,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 215
    functionDepth: 4
    returnType: "io.netty.channel.epoll.EpollServerChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:213,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 221
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollServerChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:219,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 227
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollServerChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:225,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerChannelConfig].setEpollMode(io.netty.channel.epoll.EpollMode)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerChannelConfig"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 233
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollServerChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.EpollMode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setEpollMode(io.netty.channel.epoll.EpollMode)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerChannelConfig:231,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setEpollMode(io.netty.channel.epoll.EpollMode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlElementStart].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlElementStart"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[io.netty.handler.codec.xml.XmlElement].equals(java.lang.Object)"
    - "[jaz.Zer].equals(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].equals(java.lang.Object)"
    - "[java.util.List].equals(java.lang.Object)"
    functionUses: 9
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.xml.XmlElementStart:38"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlElementStart:41"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlElementStart:40"
        BranchSideFuncs:
        - "getClass()"
    - Branch String: "io.netty.handler.codec.xml.XmlElementStart:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlElementStart:42"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlElementStart:41"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlElementStart:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlElementStart:44"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlElementStart:43"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlElementStart:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlElementStart:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlElementStart:47"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlElementStart:41,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.codec.xml.XmlElementStart:44,1"
      Dst: "[io.netty.handler.codec.xml.XmlElement].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.xml.XmlElementStart:50,1"
      Dst: "[java.util.List].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.xml.XmlElementStart].hashCode()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlElementStart"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.xml.XmlElement].hashCode()"
    - "[jaz.Zer].hashCode()"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].hashCode()"
    - "[java.util.List].hashCode()"
    functionUses: 5
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlElementStart:55,1"
      Dst: "[io.netty.handler.codec.xml.XmlElement].hashCode()"
    - Src: "io.netty.handler.codec.xml.XmlElementStart:56,1"
      Dst: "[java.util.List].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlElementStart].toString()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlElementStart"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.xml.XmlElement].toString()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 11
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlElementStart:62,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.xml.XmlElementStart:62,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlElementStart:62,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.xml.XmlElementStart:64,1"
      Dst: "[io.netty.handler.codec.xml.XmlElement].toString()"
    - Src: "io.netty.handler.codec.xml.XmlElementStart:64,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ReflectiveChannelFactory].<init>(java.lang.Class)"
    functionSourceFile: "io.netty.channel.ReflectiveChannelFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Class].getConstructor(java.lang.Class[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ReflectiveChannelFactory:31,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.ReflectiveChannelFactory:32,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.ReflectiveChannelFactory:34,1"
      Dst: "[java.lang.Class].getConstructor(java.lang.Class[])"
    - Src: "io.netty.channel.ReflectiveChannelFactory:36,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.ReflectiveChannelFactory:36,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.ReflectiveChannelFactory:36,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - Src: "io.netty.channel.ReflectiveChannelFactory:36,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.ReflectiveChannelFactory:36,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ReflectiveChannelFactory].newChannel()"
    functionSourceFile: "io.netty.channel.ReflectiveChannelFactory"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 47
    functionDepth: 1
    returnType: "io.netty.channel.Channel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 17
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ReflectiveChannelFactory:44,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "io.netty.channel.ReflectiveChannelFactory:46,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.ReflectiveChannelFactory:46,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.ReflectiveChannelFactory:46,1"
      Dst: "[java.lang.reflect.Constructor].getDeclaringClass()"
    - Src: "io.netty.channel.ReflectiveChannelFactory:46,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.channel.ReflectiveChannelFactory:46,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.ReflectiveChannelFactory:46,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ReflectiveChannelFactory].toString()"
    functionSourceFile: "io.netty.channel.ReflectiveChannelFactory"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.reflect.Constructor].getDeclaringClass()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 13
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ReflectiveChannelFactory:52,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.ReflectiveChannelFactory:52,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - Src: "io.netty.channel.ReflectiveChannelFactory:52,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.ReflectiveChannelFactory:52,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.channel.ReflectiveChannelFactory:53,1"
      Dst: "[java.lang.reflect.Constructor].getDeclaringClass()"
    - Src: "io.netty.channel.ReflectiveChannelFactory:53,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:45,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 77
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.ReplayingDecoder].state()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].<init>(io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].valueOf(byte)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder].fail(java.util.List,java.lang.Exception)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 1
    ICount: 40
    EdgeCount: 56
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:54"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:58"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:57"
        BranchSideFuncs:
        - "checkpoint(java.lang.Object)"
        - "readByte()"
        - "valueOf(byte)"
        - "<init>(io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus)"
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:75"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "readRetainedSlice(int)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:51,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].state()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:51,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:53,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:55,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:55,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:55,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:55,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:55,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:58,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].valueOf(byte)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:58,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].<init>(io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:58,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:59,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:62,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:64,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:69,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:74,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder].fail(java.util.List,java.lang.Exception)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 38
    functionDepth: 3
    returnType: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].<init>(int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus:37,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].<init>(int,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus:45,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 52
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus:48,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus:49,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder].fail(java.util.List<Object>,java.lang.Exception)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 89
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List<Object>"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].<init>(io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus)"
    - "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    - "[io.netty.handler.codec.socksx.AbstractSocksMessage].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:83"
        BranchSideFuncs:
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:82"
        BranchSideFuncs:
        - "failure(java.lang.Throwable)"
        - "setDecoderResult(io.netty.handler.codec.DecoderResult)"
        - "add(java.lang.Object)"
        - "checkpoint(java.lang.Object)"
        - "<init>(io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus)"
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:80,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:83,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:85,1"
      Dst: "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].<init>(io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:86,1"
      Dst: "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:86,1"
      Dst: "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponseDecoder:87,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$StreamState].getPriority()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$StreamState"
    linkageType: ""
    functionLinenumber: 254
    functionLinenumberEnd: 256
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec$Encoder].<init>(io.netty.handler.codec.http.HttpClientCodec)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec$Encoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpClientCodec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpRequestEncoder].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Encoder:185,1"
      Dst: "[io.netty.handler.codec.http.HttpRequestEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec$Encoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec$Encoder"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 213
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpClientCodec].access$100(io.netty.handler.codec.http.HttpClientCodec)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].method()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].method()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].method()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.DefaultPriorityQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].offer(java.lang.Object)"
    - "[java.util.LinkedList].offer(java.lang.Object)"
    - "[java.util.ArrayDeque].offer(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].offer(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - "[io.netty.handler.codec.http.HttpClientCodec].access$200(io.netty.handler.codec.http.HttpClientCodec)"
    - "[io.netty.handler.codec.http.HttpClientCodec].access$300(io.netty.handler.codec.http.HttpClientCodec)"
    - "[io.netty.handler.codec.http.HttpClientCodec].access$400(io.netty.handler.codec.http.HttpClientCodec)"
    - "[java.util.concurrent.atomic.AtomicLong].incrementAndGet()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpRequest].method()"
    - "[java.util.Queue].offer(java.lang.Object)"
    functionUses: 3
    ICount: 28
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Encoder:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Encoder:198"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Encoder:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Encoder:203"
        BranchSideFuncs:
        - "access$100(io.netty.handler.codec.http.HttpClientCodec)"
        - "method()"
        - "offer(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Encoder:202"
        BranchSideFuncs:
        - "access$300(io.netty.handler.codec.http.HttpClientCodec)"
        - "encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
        - "access$200(io.netty.handler.codec.http.HttpClientCodec)"
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Encoder:205"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Encoder:211"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Encoder:205"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Encoder:211"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpClientCodec$Encoder:207"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpClientCodec$Encoder:211"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Encoder:195,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Encoder:200,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].access$100(io.netty.handler.codec.http.HttpClientCodec)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Encoder:200,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].method()"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Encoder:200,1"
      Dst: "[java.util.Queue].offer(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Encoder:203,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Encoder:205,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].access$200(io.netty.handler.codec.http.HttpClientCodec)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Encoder:205,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].access$300(io.netty.handler.codec.http.HttpClientCodec)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Encoder:209,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec].access$400(io.netty.handler.codec.http.HttpClientCodec)"
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Encoder:209,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].incrementAndGet()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.HttpClientCodec$Encoder].<init>(io.netty.handler.codec.http.HttpClientCodec,io.netty.handler.codec.http.HttpClientCodec$1)"
    functionSourceFile: "io.netty.handler.codec.http.HttpClientCodec$Encoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpClientCodec"
    - "io.netty.handler.codec.http.HttpClientCodec$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpClientCodec$Encoder].<init>(io.netty.handler.codec.http.HttpClientCodec)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpClientCodec$Encoder:185,1"
      Dst: "[io.netty.handler.codec.http.HttpClientCodec$Encoder].<init>(io.netty.handler.codec.http.HttpClientCodec)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle$1].<init>(io.netty.channel.epoll.EpollRecvByteAllocatorHandle)"
    functionSourceFile: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle$1"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle$1:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle$1].get()"
    functionSourceFile: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle$1"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].maybeMoreDataToRead()"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorStreamingHandle].maybeMoreDataToRead()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle$1:31,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].maybeMoreDataToRead()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].maybeMoreDataToRead()"
    functionSourceFile: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead()"
    functionUses: 2
    ICount: 14
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:59"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:59"
        BranchSideFuncs:
        - "attemptedBytesRead()"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:58"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:59"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:59"
        BranchSideFuncs:
        - "attemptedBytesRead()"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:58"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:59"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:59"
        BranchSideFuncs:
        - "attemptedBytesRead()"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:58"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:60"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:58"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:59,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - Src: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:60,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.oio.OioByteStreamChannel$1].<init>()"
    functionSourceFile: "io.netty.channel.oio.OioByteStreamChannel$1"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.oio.OioByteStreamChannel$1:41,1"
      Dst: "[java.io.InputStream].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.oio.OioByteStreamChannel$1].read()"
    functionSourceFile: "io.netty.channel.oio.OioByteStreamChannel$1"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$FailProtocolSelector].<init>(io.netty.handler.ssl.JdkSslEngine,java.util.Set)"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$FailProtocolSelector"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 164
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.JdkSslEngine"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector].<init>(io.netty.handler.ssl.JdkSslEngine,java.util.Set)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$FailProtocolSelector:162,1"
      Dst: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector].<init>(io.netty.handler.ssl.JdkSslEngine,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$FailProtocolSelector].noSelectMatchFound()"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$FailProtocolSelector"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$FailProtocolSelector:167,1"
      Dst: "[javax.net.ssl.SSLHandshakeException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslClientHelloHandler$1].<init>(io.netty.handler.ssl.SslClientHelloHandler,io.netty.buffer.ByteBuf,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.ssl.SslClientHelloHandler$1"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 195
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.SslClientHelloHandler"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslClientHelloHandler$1:194,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslClientHelloHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.ssl.SslClientHelloHandler$1"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 216
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslClientHelloHandler].access$000(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.ssl.SslClientHelloHandler].access$102(io.netty.handler.ssl.SslClientHelloHandler,boolean)"
    - "[io.netty.handler.ssl.AbstractSniHandler].onLookupComplete(io.netty.channel.ChannelHandlerContext,io.netty.util.concurrent.Future)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslClientHelloHandler].access$200(io.netty.handler.ssl.SslClientHelloHandler)"
    - "[io.netty.handler.ssl.SslClientHelloHandler].access$202(io.netty.handler.ssl.SslClientHelloHandler,boolean)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].read()"
    - "[io.netty.channel.AbstractChannelHandlerContext].read()"
    - "[io.netty.handler.ssl.SslClientHelloHandler].onLookupComplete(io.netty.channel.ChannelHandlerContext,io.netty.util.concurrent.Future)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].read()"
    functionUses: 1
    ICount: 41
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslClientHelloHandler$1:210"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslClientHelloHandler$1:215"
        BranchSideFuncs:
        - "access$202(io.netty.handler.ssl.SslClientHelloHandler,boolean)"
        - "read()"
      - BranchSide: "io.netty.handler.ssl.SslClientHelloHandler$1:214"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslClientHelloHandler$1:210"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslClientHelloHandler$1:214"
        BranchSideFuncs:
        - "access$202(io.netty.handler.ssl.SslClientHelloHandler,boolean)"
        - "read()"
      - BranchSide: "io.netty.handler.ssl.SslClientHelloHandler$1:213"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslClientHelloHandler$1:197,1"
      Dst: "[io.netty.handler.ssl.SslClientHelloHandler].access$000(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.ssl.SslClientHelloHandler$1:199,1"
      Dst: "[io.netty.handler.ssl.SslClientHelloHandler].access$102(io.netty.handler.ssl.SslClientHelloHandler,boolean)"
    - Src: "io.netty.handler.ssl.SslClientHelloHandler$1:201,1"
      Dst: "[io.netty.handler.ssl.SslClientHelloHandler].onLookupComplete(io.netty.channel.ChannelHandlerContext,io.netty.util.concurrent.Future)"
    - Src: "io.netty.handler.ssl.SslClientHelloHandler$1:203,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslClientHelloHandler$1:205,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslClientHelloHandler$1:210,1"
      Dst: "[io.netty.handler.ssl.SslClientHelloHandler].access$200(io.netty.handler.ssl.SslClientHelloHandler)"
    - Src: "io.netty.handler.ssl.SslClientHelloHandler$1:211,1"
      Dst: "[io.netty.handler.ssl.SslClientHelloHandler].access$202(io.netty.handler.ssl.SslClientHelloHandler,boolean)"
    - Src: "io.netty.handler.ssl.SslClientHelloHandler$1:212,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].state()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 406
    functionLinenumberEnd: 408
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Stream$State"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isResetSent()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 411
    functionLinenumberEnd: 413
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:412"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:411"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].resetSent()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 416
    functionLinenumberEnd: 419
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isTrailersSent()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 435
    functionLinenumberEnd: 437
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:436"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:435"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isTrailersReceived()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 453
    functionLinenumberEnd: 455
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:454"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:453"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].pushPromiseSent()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 458
    functionLinenumberEnd: 461
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isPushPromiseSent()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 464
    functionLinenumberEnd: 466
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:465"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:464"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 469
    functionLinenumberEnd: 471
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection$PropertyKey"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].add(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey,java.lang.Object)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].verifyKey(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionUses: 14
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:470,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].verifyKey(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:470,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].add(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 474
    functionLinenumberEnd: 476
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection$PropertyKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].get(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].verifyKey(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionUses: 18
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:475,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].verifyKey(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:475,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].get(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].removeProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 479
    functionLinenumberEnd: 481
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection$PropertyKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].remove(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].verifyKey(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:480,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].verifyKey(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:480,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream$PropertyMap].remove(io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultPropertyKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].open(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 484
    functionLinenumberEnd: 494
    functionDepth: 6
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].activeState(int,io.netty.handler.codec.http2.Http2Stream$State,boolean,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isLocal()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].createdBy()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].createdBy()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].canOpenStream()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].maxActiveStreams()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].activate()"
    functionUses: 2
    ICount: 22
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:487"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:492"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "<init>()"
        - "append(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:491"
        BranchSideFuncs:
        - "activate()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:485,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isLocal()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:485,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].activeState(int,io.netty.handler.codec.http2.Http2Stream$State,boolean,boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:486,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].createdBy()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:487,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].canOpenStream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:488,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:488,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:489,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].maxActiveStreams()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:489,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:489,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:488,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:492,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].activate()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].isLocal()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 560
    functionLinenumberEnd: 562
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isValidStreamId(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:561,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isValidStreamId(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].close()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 520
    functionLinenumberEnd: 522
    functionDepth: 5
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].close(java.util.Iterator)"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:521,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].close(java.util.Iterator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].closeLocalSide()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 525
    functionLinenumberEnd: 538
    functionDepth: 6
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].notifyHalfClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].close()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].close()"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:526,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:529,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].notifyHalfClosed(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:534,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].closeRemoteSide()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream"
    linkageType: ""
    functionLinenumber: 541
    functionLinenumberEnd: 554
    functionDepth: 6
    returnType: "io.netty.handler.codec.http2.Http2Stream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].notifyHalfClosed(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].close()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].close()"
    functionUses: 2
    ICount: 14
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:542,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:545,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].notifyHalfClosed(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream:550,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor].visit(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor"
    linkageType: ""
    functionLinenumber: 629
    functionLinenumberEnd: 640
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$300(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].incrementFlowControlWindows(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$2].incrementFlowControlWindows(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].incrementInitialStreamWindow(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$2].incrementInitialStreamWindow(int)"
    - "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].<init>(io.netty.handler.codec.http2.Http2Error,int)"
    - "[io.netty.handler.codec.http2.Http2Exception].error()"
    - "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].add(io.netty.handler.codec.http2.Http2Exception$StreamException)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].incrementFlowControlWindows(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].incrementInitialStreamWindow(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor:634"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor:630"
        BranchSideFuncs:
        - "error()"
        - "<init>(io.netty.handler.codec.http2.Http2Error,int)"
        - "incrementFlowControlWindows(int)"
        - "incrementInitialStreamWindow(int)"
        - "add(io.netty.handler.codec.http2.Http2Exception$StreamException)"
        - "access$300(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.Http2Stream)"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor:629"
        BranchSideFuncs:
        - "error()"
        - "<init>(io.netty.handler.codec.http2.Http2Error,int)"
        - "incrementFlowControlWindows(int)"
        - "incrementInitialStreamWindow(int)"
        - "add(io.netty.handler.codec.http2.Http2Exception$StreamException)"
        - "access$300(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.Http2Stream)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor:630,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController].access$300(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor:631,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].incrementFlowControlWindows(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor:632,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$FlowState].incrementInitialStreamWindow(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor:635,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].error()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor:635,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].<init>(io.netty.handler.codec.http2.Http2Error,int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$WindowUpdateVisitor:637,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].add(io.netty.handler.codec.http2.Http2Exception$StreamException)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].<init>(io.netty.handler.codec.http2.Http2Connection,int,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2EventAdapter].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2Connection].newKey()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:74,1"
      Dst: "[io.netty.handler.codec.http2.Http2EventAdapter].<init>()"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:75,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:76,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:80,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].newKey()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].removeMessage(io.netty.handler.codec.http2.Http2Stream,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].removeProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].release()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].release()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].release()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].release()"
    - "[io.netty.handler.codec.http2.Http2Stream].removeProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 3
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:93"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:92"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:93"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:92"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:89,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].removeProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:91,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].getMessage(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.FullHttpMessage"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:101,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].putMessage(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.handler.codec.http.FullHttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].release()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].release()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].release()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].release()"
    - "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:114"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:114"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:110,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:112,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onStreamRemoved(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].removeMessage(io.netty.handler.codec.http2.Http2Stream,boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:118,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].removeMessage(io.netty.handler.codec.http2.Http2Stream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].fireChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpMessage,boolean,io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 135
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.FullHttpMessage"
    - "boolean"
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].removeMessage(io.netty.handler.codec.http2.Http2Stream,boolean)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http.HttpUtil].setContentLength(io.netty.handler.codec.http.HttpMessage,long)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 3
    ICount: 12
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:131,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].removeMessage(io.netty.handler.codec.http2.Http2Stream,boolean)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:132,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:132,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:132,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].setContentLength(io.netty.handler.codec.http.HttpMessage,long)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:133,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].newMessage(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionDepth: 12
    returnType: "io.netty.handler.codec.http.FullHttpMessage"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "boolean"
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].isServer()"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toFullHttpRequest(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator,boolean)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toFullHttpResponse(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator,boolean)"
    - "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:152"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:153"
        BranchSideFuncs:
        - "toFullHttpResponse(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator,boolean)"
        - "id()"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:152"
        BranchSideFuncs:
        - "toFullHttpResponse(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator,boolean)"
        - "id()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:152,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].isServer()"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:152,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:152,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toFullHttpRequest(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator,boolean)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:153,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toFullHttpResponse(int,io.netty.handler.codec.http2.Http2Headers,io.netty.buffer.ByteBufAllocator,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].processHeadersBegin(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 205
    functionDepth: 13
    returnType: "io.netty.handler.codec.http.FullHttpMessage"
    argCount: 6
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "boolean"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].getMessage(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].newMessage(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.FullHttpMessage,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter$1].mustSendImmediately(io.netty.handler.codec.http.FullHttpMessage)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter$1].copyIfNeeded(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.http.FullHttpMessage)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].fireChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpMessage,boolean,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter$ImmediateSendDetector].mustSendImmediately(io.netty.handler.codec.http.FullHttpMessage)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter$ImmediateSendDetector].copyIfNeeded(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.http.FullHttpMessage)"
    functionUses: 3
    ICount: 34
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:188"
        BranchSideFuncs:
        - "newMessage(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,io.netty.buffer.ByteBufAllocator)"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:187"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:192"
        BranchSideFuncs:
        - "addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.FullHttpMessage,boolean)"
        - "id()"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:191"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:199"
        BranchSideFuncs:
        - "fireChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpMessage,boolean,io.netty.handler.codec.http2.Http2Stream)"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:198"
        BranchSideFuncs:
        - "copyIfNeeded(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.http.FullHttpMessage)"
        - "alloc()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:184,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].getMessage(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:187,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:187,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].newMessage(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:190,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:190,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].addHttp2ToHttpHeaders(int,io.netty.handler.codec.http2.Http2Headers,io.netty.handler.codec.http.FullHttpMessage,boolean)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:196,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter$ImmediateSendDetector].mustSendImmediately(io.netty.handler.codec.http.FullHttpMessage)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:199,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter$ImmediateSendDetector].copyIfNeeded(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.http.FullHttpMessage)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:200,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].fireChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpMessage,boolean,io.netty.handler.codec.http2.Http2Stream)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].processHeadersEnd(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter"
    linkageType: ""
    functionLinenumber: 217
    functionLinenumberEnd: 225
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.handler.codec.http.FullHttpMessage"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].fireChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpMessage,boolean,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].getMessage(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].putMessage(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage)"
    functionUses: 3
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:218"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:221"
        BranchSideFuncs:
        - "putMessage(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage)"
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:220"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:219"
        BranchSideFuncs:
        - "getMessage(io.netty.handler.codec.http2.Http2Stream)"
        - "fireChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpMessage,boolean,io.netty.handler.codec.http2.Http2Stream)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:220,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].getMessage(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:220,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].fireChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpMessage,boolean,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:222,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].putMessage(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 250
    functionDepth: 4
    returnType: "int"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].getMessage(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].fireChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpMessage,boolean,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 9
    ICount: 37
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:231"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:235"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:234"
        BranchSideFuncs:
        - "content()"
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:237"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:241"
        BranchSideFuncs:
        - "readerIndex()"
        - "writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:244"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:249"
        BranchSideFuncs:
        - "fireChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpMessage,boolean,io.netty.handler.codec.http2.Http2Stream)"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:229,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:230,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].getMessage(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:232,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:232,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:235,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:236,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:242,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:242,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:245,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].fireChannelRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpMessage,boolean,io.netty.handler.codec.http2.Http2Stream)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter"
    linkageType: ""
    functionLinenumber: 254
    functionLinenumberEnd: 261
    functionDepth: 14
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].processHeadersBegin(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean,boolean)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].processHeadersEnd(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage,boolean)"
    - "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    functionUses: 7
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:257"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:260"
        BranchSideFuncs:
        - "processHeadersEnd(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage,boolean)"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:255,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:256,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].processHeadersBegin(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean,boolean)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:258,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].processHeadersEnd(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter"
    linkageType: ""
    functionLinenumber: 265
    functionLinenumberEnd: 280
    functionDepth: 14
    returnType: "void"
    argCount: 8
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "short"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].processHeadersBegin(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean,boolean)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].setShort(java.lang.CharSequence,short)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].setShort(java.lang.CharSequence,short)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].setShort(java.lang.CharSequence,short)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].processHeadersEnd(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage,boolean)"
    - "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.HttpHeaders].setShort(java.lang.CharSequence,short)"
    functionUses: 6
    ICount: 24
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:268"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:278"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:271"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:275"
        BranchSideFuncs:
        - "setInt(java.lang.CharSequence,int)"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:274"
        BranchSideFuncs:
        - "setShort(java.lang.CharSequence,short)"
        - "processHeadersEnd(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage,boolean)"
        - "text()"
        - "headers()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:266,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:267,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].processHeadersBegin(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean,boolean)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:272,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:272,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:272,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].setInt(java.lang.CharSequence,int)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:275,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].setShort(java.lang.CharSequence,short)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:277,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].processHeadersEnd(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 291
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].getMessage(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onRstStreamRead(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http2.Http2Error].valueOf(long)"
    - "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 5
    ICount: 14
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:285"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:288"
        BranchSideFuncs:
        - "onRstStreamRead(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage)"
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:287"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
        - "valueOf(long)"
        - "streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:283,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:284,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].getMessage(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:286,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onRstStreamRead(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:288,1"
      Dst: "[io.netty.handler.codec.http2.Http2Error].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:288,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].streamError(int,io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:288,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onRstStreamRead(io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter"
    linkageType: ""
    functionLinenumber: 329
    functionLinenumberEnd: 332
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    - "io.netty.handler.codec.http.FullHttpMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].removeMessage(io.netty.handler.codec.http2.Http2Stream,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:330,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].removeMessage(io.netty.handler.codec.http2.Http2Stream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 317
    functionDepth: 14
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.EmptyHttp2Headers].status()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].status()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].status()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].codeAsText()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].status(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].status(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.EmptyHttp2Headers].status(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].processHeadersBegin(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean,boolean)"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].setShort(java.lang.CharSequence,short)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].setShort(java.lang.CharSequence,short)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].setShort(java.lang.CharSequence,short)"
    - "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].processHeadersEnd(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage,boolean)"
    - "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - "[io.netty.handler.codec.http2.Http2Headers].status()"
    - "[io.netty.handler.codec.http2.Http2Headers].status(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].setInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.HttpHeaders].setShort(java.lang.CharSequence,short)"
    functionUses: 5
    ICount: 31
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:297"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:304"
        BranchSideFuncs:
        - "processHeadersBegin(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean,boolean)"
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:306"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:310"
        BranchSideFuncs:
        - "setShort(java.lang.CharSequence,short)"
        - "processHeadersEnd(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage,boolean)"
        - "text()"
        - "headers()"
        - "setInt(java.lang.CharSequence,int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:296,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].stream(int)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:297,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers].status()"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:303,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].codeAsText()"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:303,1"
      Dst: "[io.netty.handler.codec.http2.Http2Headers].status(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:305,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].processHeadersBegin(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http2.Http2Headers,boolean,boolean,boolean)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:308,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:307,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:311,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:311,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:311,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].setInt(java.lang.CharSequence,int)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:312,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].setShort(java.lang.CharSequence,short)"
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:315,1"
      Dst: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].processHeadersEnd(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Stream,io.netty.handler.codec.http.FullHttpMessage,boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter"
    linkageType: ""
    functionLinenumber: 319
    functionLinenumberEnd: 325
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 5
    ICount: 7
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:320"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:323"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.InboundHttp2ToHttpAdapter:322,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf].allocateDirect(int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 235
    functionLinenumberEnd: 239
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].allocateDirect(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledByteBufAllocator].incrementDirect(int)"
    - "[java.nio.Buffer].capacity()"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf:236,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].allocateDirect(int)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf:237,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf:237,1"
      Dst: "[java.nio.Buffer].capacity()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf:237,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator].incrementDirect(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf"
    linkageType: ""
    functionLinenumber: 242
    functionLinenumberEnd: 247
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledByteBufAllocator].decrementDirect(int)"
    - "[java.nio.Buffer].capacity()"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf:243,1"
      Dst: "[java.nio.Buffer].capacity()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf:244,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf:245,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledDirectByteBuf:245,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator].decrementDirect(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,io.netty.handler.codec.http.HttpHeaders,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.net.URI"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "java.lang.String"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,io.netty.handler.codec.http.HttpHeaders,int,long)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:65,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,io.netty.handler.codec.http.HttpHeaders,int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,io.netty.handler.codec.http.HttpHeaders,int,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.net.URI"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "java.lang.String"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,io.netty.handler.codec.http.HttpHeaders,int,long,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:89,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,io.netty.handler.codec.http.HttpHeaders,int,long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,io.netty.handler.codec.http.HttpHeaders,int,long,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.net.URI"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "java.lang.String"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    - "long"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,io.netty.handler.codec.http.HttpHeaders,int,long,boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:115,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,io.netty.handler.codec.http.HttpHeaders,int,long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].newHandshakeRequest()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 206
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.FullHttpRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil].randomNumber(int,int)"
    - "[java.lang.Integer].toString(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].insertRandomCharacters(java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].insertSpaces(java.lang.String,int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil].randomBytes(int)"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil].md5(byte[])"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].uri()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].upgradeUrl(java.net.URI)"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].websocketHostValue(java.net.URI)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].websocketOriginValue(java.net.URI)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].expectedSubprotocol()"
    - "[java.lang.String].isEmpty()"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.nio.ByteBuffer].putInt(int)"
    - "[java.nio.ByteBuffer].array()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 71
    EdgeCount: 48
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:183"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:187"
        BranchSideFuncs:
        - "add(io.netty.handler.codec.http.HttpHeaders)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:186"
        BranchSideFuncs:
        - "websocketHostValue(java.net.URI)"
        - "contains(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:197"
        BranchSideFuncs:
        - "websocketOriginValue(java.net.URI)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:196"
        BranchSideFuncs:
        - "isEmpty()"
        - "expectedSubprotocol()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:198"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:203"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
        - "valueOf(int)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:198"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:203"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
        - "valueOf(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:140,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].randomNumber(int,int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:152,1"
      Dst: "[java.lang.Integer].toString(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:155,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].insertRandomCharacters(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:158,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].insertSpaces(java.lang.String,int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:161,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].randomBytes(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:163,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:164,1"
      Dst: "[java.nio.ByteBuffer].putInt(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:165,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:171,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:174,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].md5(byte[])"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:174,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:176,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].uri()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:179,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].upgradeUrl(java.net.URI)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:180,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:181,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:184,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:187,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:189,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].websocketHostValue(java.net.URI)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:193,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:194,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].websocketOriginValue(java.net.URI)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:197,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].expectedSubprotocol()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:198,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:204,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].randomNumber(int,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketUtil"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 161
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[java.util.concurrent.ThreadLocalRandom].nextDouble()"
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextDouble()"
    - "[java.util.Random].nextDouble()"
    - "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    functionUses: 7
    ICount: 17
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketUtil:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketUtil:139"
        BranchSideFuncs:
        - "threadLocalRandom()"
        - "nextDouble()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketUtil:138"
        BranchSideFuncs:
        - "threadLocalRandom()"
        - "nextDouble()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketUtil:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketUtil:139"
        BranchSideFuncs:
        - "threadLocalRandom()"
        - "nextDouble()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketUtil:138"
        BranchSideFuncs:
        - "threadLocalRandom()"
        - "nextDouble()"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:138,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:139,1"
      Dst: "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:139,1"
      Dst: "[java.util.Random].nextDouble()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].insertRandomCharacters(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00"
    linkageType: ""
    functionLinenumber: 252
    functionLinenumberEnd: 273
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil].randomNumber(int,int)"
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextInt(int)"
    - "[java.util.Random].nextInt(int)"
    - "[java.util.concurrent.ThreadLocalRandom].nextInt(int)"
    - "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - "[java.lang.String].length()"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 32
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:257"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:265"
        BranchSideFuncs:
        - "threadLocalRandom()"
        - "nextInt(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:264"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:259"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:258"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:257"
        BranchSideFuncs:
        - "threadLocalRandom()"
        - "nextInt(int)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:259"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:260"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:259"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:259"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:263"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:262"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:259"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:263"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:262"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:265"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:271"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:253,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].randomNumber(int,int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:258,1"
      Dst: "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:258,1"
      Dst: "[java.util.Random].nextInt(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:266,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:267,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:268,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:269,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:269,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:269,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:269,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].insertSpaces(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00"
    linkageType: ""
    functionLinenumber: 275
    functionLinenumberEnd: 284
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil].randomNumber(int,int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 18
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:276"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:282"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:277,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:277,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].randomNumber(int,int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:278,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:279,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:280,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:280,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:280,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:280,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].md5(byte[])"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketUtil"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil].digest(io.netty.util.concurrent.FastThreadLocal,byte[])"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:72,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].digest(io.netty.util.concurrent.FastThreadLocal,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].verify(io.netty.handler.codec.http.FullHttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00"
    linkageType: ""
    functionLinenumber: 229
    functionLinenumberEnd: 251
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.FullHttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException].<init>(java.lang.String,io.netty.handler.codec.http.HttpResponse)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.HttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.AbstractByteBuf].equals(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].equals(java.lang.Object)"
    functionUses: 1
    ICount: 50
    EdgeCount: 37
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:231"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:235"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:234"
        BranchSideFuncs:
        - "contentEqualsIgnoreCase(java.lang.CharSequence)"
        - "headers()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:237"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:241"
        BranchSideFuncs:
        - "append(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:240"
        BranchSideFuncs:
        - "containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:241"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:246"
        BranchSideFuncs:
        - "get(java.lang.CharSequence)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:245"
        BranchSideFuncs:
        - "content()"
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:247"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:250"
        BranchSideFuncs:
        - "<init>(java.lang.String,io.netty.handler.codec.http.HttpResponse)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:249"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:230,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:231,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:232,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:232,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:232,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:232,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:232,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException].<init>(java.lang.String,io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:235,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:236,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:237,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:241,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:246,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:247,1"
      Dst: "[io.netty.buffer.ByteBuf].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].newWebsocketDecoder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00"
    linkageType: ""
    functionLinenumber: 287
    functionLinenumberEnd: 289
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketFrameDecoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder].<init>(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].maxFramePayloadLength()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:288,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].maxFramePayloadLength()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:288,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket00FrameDecoder].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].newWebSocketEncoder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00"
    linkageType: ""
    functionLinenumber: 292
    functionLinenumberEnd: 294
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketFrameEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket00FrameEncoder].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:293,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket00FrameEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket00FrameEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket00FrameEncoder"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket00FrameEncoder:33,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00].setForceCloseTimeoutMillis(long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].setForceCloseTimeoutMillis(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker00:298,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].setForceCloseTimeoutMillis(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine$1].accept(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine$1"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].setHandshakeApplicationProtocolSelector(javax.net.ssl.SSLEngine,java.util.function.BiFunction)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine$1:35,1"
      Dst: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].setHandshakeApplicationProtocolSelector(javax.net.ssl.SSLEngine,java.util.function.BiFunction)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine$1].accept(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine$1"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine$1].accept(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine$1:32,1"
      Dst: "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine$1].accept(javax.net.ssl.SSLEngine,io.netty.handler.ssl.JdkAlpnSslEngine$AlpnSelector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ByteProcessorUtils].<init>()"
    functionSourceFile: "io.netty.util.ByteProcessorUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ByteProcessorUtils:23,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$5].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$5"
    linkageType: ""
    functionLinenumber: 529
    functionLinenumberEnd: 534
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultDnsCache].clear()"
    - "[io.netty.resolver.dns.NoopDnsCache].clear()"
    - "[io.netty.resolver.dns.DefaultDnsCnameCache].clear()"
    - "[io.netty.resolver.dns.NoopDnsCnameCache].clear()"
    - "[io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter].clear()"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].clear()"
    - "[io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache].clear()"
    - "[io.netty.resolver.dns.NoopAuthoritativeDnsServerCache].clear()"
    - "[io.netty.resolver.dns.DnsCache].clear()"
    - "[io.netty.resolver.dns.DnsCnameCache].clear()"
    - "[io.netty.resolver.dns.AuthoritativeDnsServerCache].clear()"
    functionUses: 1
    ICount: 9
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$5:530,1"
      Dst: "[io.netty.resolver.dns.DnsCache].clear()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$5:531,1"
      Dst: "[io.netty.resolver.dns.DnsCnameCache].clear()"
    - Src: "io.netty.resolver.dns.DnsNameResolver$5:532,1"
      Dst: "[io.netty.resolver.dns.AuthoritativeDnsServerCache].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolver$5].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolver$5"
    linkageType: ""
    functionLinenumber: 526
    functionLinenumberEnd: 528
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver$5].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolver$5:527,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver$5].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler].<init>(java.net.SocketAddress)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.proxy.HttpProxyHandler].<init>(java.net.SocketAddress,io.netty.handler.codec.http.HttpHeaders)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler:66,1"
      Dst: "[io.netty.handler.proxy.HttpProxyHandler].<init>(java.net.SocketAddress,io.netty.handler.codec.http.HttpHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler].<init>(java.net.SocketAddress,io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.proxy.HttpProxyHandler].<init>(java.net.SocketAddress,io.netty.handler.codec.http.HttpHeaders,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler:70,1"
      Dst: "[io.netty.handler.proxy.HttpProxyHandler].<init>(java.net.SocketAddress,io.netty.handler.codec.http.HttpHeaders,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler].<init>(java.net.SocketAddress,io.netty.handler.codec.http.HttpHeaders,boolean)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.SocketAddress"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.proxy.ProxyHandler].<init>(java.net.SocketAddress)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].<init>(io.netty.handler.proxy.HttpProxyHandler$1)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler:76,1"
      Dst: "[io.netty.handler.proxy.ProxyHandler].<init>(java.net.SocketAddress)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:56,1"
      Dst: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].<init>(io.netty.handler.proxy.HttpProxyHandler$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler].<init>(java.net.SocketAddress,java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.SocketAddress"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.proxy.HttpProxyHandler].<init>(java.net.SocketAddress,java.lang.String,java.lang.String,io.netty.handler.codec.http.HttpHeaders)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler:85,1"
      Dst: "[io.netty.handler.proxy.HttpProxyHandler].<init>(java.net.SocketAddress,java.lang.String,java.lang.String,io.netty.handler.codec.http.HttpHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler].<init>(java.net.SocketAddress,java.lang.String,java.lang.String,io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.net.SocketAddress"
    - "java.lang.String"
    - "java.lang.String"
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.proxy.HttpProxyHandler].<init>(java.net.SocketAddress,java.lang.String,java.lang.String,io.netty.handler.codec.http.HttpHeaders,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler:90,1"
      Dst: "[io.netty.handler.proxy.HttpProxyHandler].<init>(java.net.SocketAddress,java.lang.String,java.lang.String,io.netty.handler.codec.http.HttpHeaders,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler].<init>(java.net.SocketAddress,java.lang.String,java.lang.String,io.netty.handler.codec.http.HttpHeaders,boolean)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.net.SocketAddress"
    - "java.lang.String"
    - "java.lang.String"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.proxy.ProxyHandler].<init>(java.net.SocketAddress)"
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].<init>(io.netty.handler.proxy.HttpProxyHandler$1)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler:98,1"
      Dst: "[io.netty.handler.proxy.ProxyHandler].<init>(java.net.SocketAddress)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:56,1"
      Dst: "[io.netty.handler.proxy.HttpProxyHandler$HttpClientCodecWrapper].<init>(io.netty.handler.proxy.HttpProxyHandler$1)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:99,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:102,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:102,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:102,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:102,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:102,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,java.nio.charset.Charset)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:105,1"
      Dst: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:107,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:110,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:110,1"
      Dst: "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler].protocol()"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler].authScheme()"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.proxy.HttpProxyHandler:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:125"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler].username()"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler].password()"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler].addCodec(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 143
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext].pipeline()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].name()"
    - "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - "[io.netty.channel.DefaultChannelPipeline].addBefore(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelHandlerContext].name()"
    - "[io.netty.channel.ChannelPipeline].addBefore(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    functionUses: 1
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler:139,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:140,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].name()"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:141,1"
      Dst: "[io.netty.channel.ChannelPipeline].addBefore(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler].removeEncoder(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].removeOutboundHandler()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler:146,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].removeOutboundHandler()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].removeOutboundHandler()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 126
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].checkAdded()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].remove()"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:123,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].checkAdded()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:124,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].checkAdded()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:106"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:109"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:108"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:107,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler].removeDecoder(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].removeInboundHandler()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler:151,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].removeInboundHandler()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].removeInboundHandler()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].checkAdded()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].remove()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:115,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].checkAdded()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:116,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler].newInitialMessage(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 181
    functionDepth: 8
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.proxy.ProxyHandler].destinationAddress()"
    - "[io.netty.handler.codec.http.HttpUtil].formatHostnameForHttp(java.net.InetSocketAddress)"
    - "[java.net.InetSocketAddress].getPort()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 39
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.handler.proxy.HttpProxyHandler:161"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.proxy.HttpProxyHandler:161"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:155"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "destinationAddress()"
        - "formatHostnameForHttp(java.net.InetSocketAddress)"
        - "getPort()"
        - "append(int)"
    - Branch String: "io.netty.handler.proxy.HttpProxyHandler:161"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.proxy.HttpProxyHandler:172"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:176"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:175"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.proxy.HttpProxyHandler:176"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:180"
        BranchSideFuncs:
        - "headers()"
        - "add(io.netty.handler.codec.http.HttpHeaders)"
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler:156,1"
      Dst: "[io.netty.handler.proxy.ProxyHandler].destinationAddress()"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:158,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].formatHostnameForHttp(java.net.InetSocketAddress)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:159,1"
      Dst: "[java.net.InetSocketAddress].getPort()"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:160,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:160,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:160,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:160,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:165,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:170,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:170,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:177,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.proxy.HttpProxyHandler].handleResponse(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.proxy.HttpProxyHandler"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 205
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.proxy.HttpProxyHandler$HttpProxyConnectException].<init>(java.lang.String,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.proxy.ProxyHandler].exceptionMessage(java.lang.String)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 40
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.proxy.HttpProxyHandler:185"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:194"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:193"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.proxy.HttpProxyHandler:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:189"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:188"
        BranchSideFuncs:
        - "status()"
        - "headers()"
    - Branch String: "io.netty.handler.proxy.HttpProxyHandler:195"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.proxy.HttpProxyHandler:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:199"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:198"
        BranchSideFuncs:
        - "code()"
    - Branch String: "io.netty.handler.proxy.HttpProxyHandler:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:204"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String,io.netty.handler.codec.http.HttpHeaders)"
        - "exceptionMessage(java.lang.String)"
      - BranchSide: "io.netty.handler.proxy.HttpProxyHandler:203"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.proxy.HttpProxyHandler:187,1"
      Dst: "[io.netty.handler.proxy.ProxyHandler].exceptionMessage(java.lang.String)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:187,1"
      Dst: "[io.netty.handler.proxy.HttpProxyHandler$HttpProxyConnectException].<init>(java.lang.String,io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:190,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:191,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:199,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:200,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:200,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:200,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.proxy.HttpProxyHandler:200,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].toString()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream"
    linkageType: ""
    functionLinenumber: 760
    functionLinenumberEnd: 762
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].id()"
    - "[java.lang.String].valueOf(int)"
    functionUses: 19
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:761,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].id()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream:761,1"
      Dst: "[java.lang.String].valueOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].access$502(io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream"
    linkageType: ""
    functionLinenumber: 729
    functionLinenumberEnd: 731
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsCnameCache].<init>()"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsCnameCache"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.NoopDnsCnameCache:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsCnameCache].get(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsCnameCache"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsCnameCache].cache(java.lang.String,java.lang.String,long,io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsCnameCache"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "long"
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsCnameCache].clear()"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsCnameCache"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.NoopDnsCnameCache].clear(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.NoopDnsCnameCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.TooLongHttpContentException].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.TooLongHttpContentException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.TooLongFrameException].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.TooLongHttpContentException:31,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.TooLongHttpContentException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.TooLongHttpContentException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.TooLongHttpContentException:38,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.TooLongHttpContentException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.TooLongHttpContentException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.TooLongHttpContentException:52,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastlePemReader$1].<init>()"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastlePemReader$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastlePemReader$1:73,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastlePemReader$1].run()"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastlePemReader$1"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 92
    functionDepth: 1
    returnType: "java.lang.Void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getClassLoader()"
    - "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    - "[io.netty.handler.ssl.BouncyCastlePemReader].access$002(java.security.Provider)"
    - "[java.lang.Class].getConstructor(java.lang.Class[])"
    - "[io.netty.util.internal.logging.CommonsLogger:io.netty.util.internal.logging.Slf4JLogger:java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[io.netty.handler.ssl.BouncyCastlePemReader].access$100()"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String)"
    - "[io.netty.handler.ssl.BouncyCastlePemReader].access$202(boolean)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.handler.ssl.BouncyCastlePemReader].access$302(java.lang.Throwable)"
    - "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    functionUses: 3
    ICount: 21
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastlePemReader$1:77,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.ssl.BouncyCastlePemReader$1:77,1"
      Dst: "[java.lang.Class].getClassLoader()"
    - Src: "io.netty.handler.ssl.BouncyCastlePemReader$1:80,1"
      Dst: "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    - Src: "io.netty.handler.ssl.BouncyCastlePemReader$1:83,1"
      Dst: "[java.lang.Class].getConstructor(java.lang.Class[])"
    - Src: "io.netty.handler.ssl.BouncyCastlePemReader$1:83,1"
      Dst: "[java.lang.reflect.Constructor].newInstance(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.BouncyCastlePemReader$1:83,1"
      Dst: "[io.netty.handler.ssl.BouncyCastlePemReader].access$002(java.security.Provider)"
    - Src: "io.netty.handler.ssl.BouncyCastlePemReader$1:84,1"
      Dst: "[io.netty.handler.ssl.BouncyCastlePemReader].access$100()"
    - Src: "io.netty.handler.ssl.BouncyCastlePemReader$1:84,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - Src: "io.netty.handler.ssl.BouncyCastlePemReader$1:85,1"
      Dst: "[io.netty.handler.ssl.BouncyCastlePemReader].access$202(boolean)"
    - Src: "io.netty.handler.ssl.BouncyCastlePemReader$1:87,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.BouncyCastlePemReader$1:88,1"
      Dst: "[io.netty.handler.ssl.BouncyCastlePemReader].access$302(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastlePemReader].access$002(java.security.Provider)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastlePemReader"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "java.security.Provider"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastlePemReader].access$100()"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastlePemReader"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastlePemReader].access$202(boolean)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastlePemReader"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastlePemReader].access$302(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastlePemReader"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$4].<init>()"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$4"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$4:122,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$4].newListener(javax.net.ssl.SSLEngine,java.util.List)"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$4"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionDepth: 1
    returnType: "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelectionListener].<init>(io.netty.handler.ssl.JdkSslEngine,java.util.List)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$4:125,1"
      Dst: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelectionListener].<init>(io.netty.handler.ssl.JdkSslEngine,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.NativeLibraryLoader].loadLibraryByHelper(java.lang.Class<?>,java.lang.String,boolean)"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader"
    linkageType: ""
    functionLinenumber: 416
    functionLinenumberEnd: 443
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Class<?>"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.NativeLibraryLoader$1].<init>(java.lang.Class,java.lang.String,boolean)"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[io.netty.util.internal.NativeLibraryLoader$1].run()"
    - "[java.lang.AssertionError].<init>(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.UncheckedIOException].getCause()"
    - "[java.lang.Throwable].getCause()"
    - "[java.lang.ClassNotFoundException].getCause()"
    - "[java.lang.reflect.UndeclaredThrowableException].getCause()"
    - "[java.security.PrivilegedActionException].getCause()"
    - "[java.lang.ExceptionInInitializerError].getCause()"
    - "[javax.naming.NamingException].getCause()"
    - "[java.lang.reflect.InvocationTargetException].getCause()"
    - "[java.lang.UnsatisfiedLinkError].<init>(java.lang.String)"
    - "[java.io.InvalidClassException].getMessage()"
    - "[java.nio.file.InvalidPathException].getMessage()"
    - "[java.lang.Throwable].getMessage()"
    - "[sun.nio.fs.UnixException].getMessage()"
    - "[java.net.URISyntaxException].getMessage()"
    - "[java.util.regex.PatternSyntaxException].getMessage()"
    - "[java.nio.file.FileSystemException].getMessage()"
    - "[java.security.cert.CertificateRevokedException].getMessage()"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 1
    ICount: 32
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:431"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:442"
        BranchSideFuncs:
        - "<init>(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
        - "toString()"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:441"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:433"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:434"
        BranchSideFuncs:
        - "getCause()"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:433"
        BranchSideFuncs:
        - "getCause()"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:433"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:434"
        BranchSideFuncs:
        - "getCause()"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:433"
        BranchSideFuncs:
        - "getCause()"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:435"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:438"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:437"
        BranchSideFuncs:
        - "initCause(java.lang.Throwable)"
        - "<init>(java.lang.String)"
        - "getMessage()"
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader:417,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader$1].<init>(java.lang.Class,java.lang.String,boolean)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:417,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:433,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:433,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:433,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:433,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:433,1"
      Dst: "[java.lang.AssertionError].<init>(java.lang.Object)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:434,1"
      Dst: "[java.lang.Throwable].getCause()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:438,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:438,1"
      Dst: "[java.lang.UnsatisfiedLinkError].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:439,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.UnsatisfiedLinkError"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.NativeLibraryLoader].tryToLoadClass(java.lang.ClassLoader,java.lang.Class<?>)"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader"
    linkageType: ""
    functionLinenumber: 453
    functionLinenumberEnd: 488
    functionDepth: 4
    returnType: "java.lang.Class<?>"
    argCount: 2
    argTypes:
    - "java.lang.ClassLoader"
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    - "[java.lang.Class].getName()"
    - "[io.netty.util.internal.NativeLibraryLoader].classToByteArray(java.lang.Class)"
    - "[io.netty.util.internal.NativeLibraryLoader$2].<init>(java.lang.ClassLoader,java.lang.Class,byte[])"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[io.netty.util.internal.NativeLibraryLoader$2].run()"
    - "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    functionUses: 1
    ICount: 23
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:456"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:462"
        BranchSideFuncs:
        - "doPrivileged(java.security.PrivilegedAction)"
        - "run()"
        - "addSuppressed(java.lang.Throwable,java.lang.Throwable)"
        - "getName()"
        - "forName(java.lang.String,boolean,java.lang.ClassLoader)"
        - "classToByteArray(java.lang.Class)"
        - "<init>(java.lang.ClassLoader,java.lang.Class,byte[])"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:461"
        BranchSideFuncs:
        - "doPrivileged(java.security.PrivilegedAction)"
        - "run()"
        - "classToByteArray(java.lang.Class)"
        - "<init>(java.lang.ClassLoader,java.lang.Class,byte[])"
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader:454,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:454,1"
      Dst: "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:462,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].classToByteArray(java.lang.Class)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:463,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader$2].<init>(java.lang.ClassLoader,java.lang.Class,byte[])"
    - Src: "io.netty.util.internal.NativeLibraryLoader:463,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:480,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].addSuppressed(java.lang.Throwable,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.ClassNotFoundException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.NativeLibraryLoader$2].<init>(java.lang.ClassLoader,java.lang.Class,byte[])"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader$2"
    linkageType: ""
    functionLinenumber: 462
    functionLinenumberEnd: 464
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.ClassLoader"
    - "java.lang.Class"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader$2:463,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.NativeLibraryLoader].classToByteArray(java.lang.Class<?>)"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader"
    linkageType: ""
    functionLinenumber: 498
    functionLinenumberEnd: 523
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    - "[java.lang.String].lastIndexOf(int)"
    - "[java.lang.String].substring(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getResource(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.ClassNotFoundException].<init>(java.lang.String)"
    - "[java.io.ByteArrayOutputStream].<init>(int)"
    - "[java.net.URL].openStream()"
    - "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].read(byte[])"
    - "[java.io.FilterInputStream].read(byte[])"
    - "[java.io.InputStream].read(byte[])"
    - "[java.io.DataInputStream].read(byte[])"
    - "[java.lang.ProcessImpl$DeferredCloseInputStream].read(byte[])"
    - "[java.io.FileInputStream].read(byte[])"
    - "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    - "[java.io.ByteArrayOutputStream].toByteArray()"
    - "[java.lang.ClassNotFoundException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.NativeLibraryLoader].closeQuietly(java.io.Closeable)"
    functionUses: 1
    ICount: 42
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:501"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:504"
        BranchSideFuncs:
        - "substring(int)"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:503"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "<init>()"
        - "getResource(java.lang.String)"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:505"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:508"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:507"
        BranchSideFuncs:
        - "<init>(int)"
        - "openStream()"
    - Branch String: "io.netty.util.internal.NativeLibraryLoader:513"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:516"
        BranchSideFuncs:
        - "write(byte[],int,int)"
      - BranchSide: "io.netty.util.internal.NativeLibraryLoader:515"
        BranchSideFuncs:
        - "toByteArray()"
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader:499,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:500,1"
      Dst: "[java.lang.String].lastIndexOf(int)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:502,1"
      Dst: "[java.lang.String].substring(int)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:504,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:504,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:504,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:504,1"
      Dst: "[java.lang.Class].getResource(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:506,1"
      Dst: "[java.lang.ClassNotFoundException].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:509,1"
      Dst: "[java.io.ByteArrayOutputStream].<init>(int)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:512,1"
      Dst: "[java.net.URL].openStream()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:513,1"
      Dst: "[java.io.InputStream].read(byte[])"
    - Src: "io.netty.util.internal.NativeLibraryLoader:514,1"
      Dst: "[java.io.ByteArrayOutputStream].write(byte[],int,int)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:516,1"
      Dst: "[java.io.ByteArrayOutputStream].toByteArray()"
    - Src: "io.netty.util.internal.NativeLibraryLoader:520,1"
      Dst: "[io.netty.util.internal.NativeLibraryLoader].closeQuietly(java.io.Closeable)"
    - Src: "io.netty.util.internal.NativeLibraryLoader:518,1"
      Dst: "[java.lang.ClassNotFoundException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.ClassNotFoundException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.NativeLibraryLoader].<init>()"
    functionSourceFile: "io.netty.util.internal.NativeLibraryLoader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.NativeLibraryLoader:535,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64Decoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.base64.Base64Decoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.base64.Base64Decoder].<init>(io.netty.handler.codec.base64.Base64Dialect)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64Decoder:53,1"
      Dst: "[io.netty.handler.codec.base64.Base64Decoder].<init>(io.netty.handler.codec.base64.Base64Dialect)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64Decoder].<init>(io.netty.handler.codec.base64.Base64Dialect)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64Decoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.base64.Base64Dialect"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64Decoder:56,1"
      Dst: "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.base64.Base64Decoder:57,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64Decoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64Decoder"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf,int,int,io.netty.handler.codec.base64.Base64Dialect)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64Decoder:62,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.base64.Base64Decoder:62,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.base64.Base64Decoder:62,1"
      Dst: "[io.netty.handler.codec.base64.Base64].decode(io.netty.buffer.ByteBuf,int,int,io.netty.handler.codec.base64.Base64Dialect)"
    - Src: "io.netty.handler.codec.base64.Base64Decoder:62,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.base64.Base64Decoder].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.base64.Base64Decoder"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.base64.Base64Decoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.base64.Base64Decoder:47,1"
      Dst: "[io.netty.handler.codec.base64.Base64Decoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollChannelOption].<init>()"
    functionSourceFile: "io.netty.channel.epoll.EpollChannelOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.UnixChannelOption].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollChannelOption:60,1"
      Dst: "[io.netty.channel.unix.UnixChannelOption].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.string.LineSeparator].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.string.LineSeparator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.string.LineSeparator:48,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.string.LineSeparator:49,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.string.LineSeparator].value()"
    functionSourceFile: "io.netty.handler.codec.string.LineSeparator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.string.LineSeparator].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.string.LineSeparator"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 9
    ICount: 20
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.string.LineSeparator:61"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.string.LineSeparator:64"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.string.LineSeparator:63"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.string.LineSeparator:64"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.string.LineSeparator:67"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.string.LineSeparator:66"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.string.LineSeparator:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.string.LineSeparator:66"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.string.LineSeparator:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.string.LineSeparator:66"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.string.LineSeparator:68,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.string.LineSeparator].hashCode()"
    functionSourceFile: "io.netty.handler.codec.string.LineSeparator"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 5
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.string.LineSeparator:73"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.string.LineSeparator:72"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "io.netty.handler.codec.string.LineSeparator:73,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.string.LineSeparator].toString()"
    functionSourceFile: "io.netty.handler.codec.string.LineSeparator"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBufUtil].hexDump(byte[])"
    functionUses: 19
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.string.LineSeparator:81,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.string.LineSeparator:81,1"
      Dst: "[io.netty.buffer.ByteBufUtil].hexDump(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].hexDump(byte[])"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 152
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].hexDump(byte[],int,int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:151,1"
      Dst: "[io.netty.buffer.ByteBufUtil].hexDump(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil].hexDump(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil$HexUtil].access$100(byte[],int,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:159,1"
      Dst: "[io.netty.buffer.ByteBufUtil$HexUtil].access$100(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$HexUtil].access$100(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$HexUtil"
    linkageType: ""
    functionLinenumber: 1419
    functionLinenumberEnd: 1421
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil$HexUtil].hexDump(byte[],int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1420,1"
      Dst: "[io.netty.buffer.ByteBufUtil$HexUtil].hexDump(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$HexUtil].hexDump(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$HexUtil"
    linkageType: ""
    functionLinenumber: 1503
    functionLinenumberEnd: 1521
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[java.lang.String].<init>(char[])"
    functionUses: 1
    ICount: 25
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil$HexUtil:1505"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1509"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1508"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufUtil$HexUtil:1514"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil$HexUtil:1519"
        BranchSideFuncs:
        - "<init>(char[])"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1504,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1515,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "io.netty.buffer.ByteBufUtil$HexUtil:1520,1"
      Dst: "[java.lang.String].<init>(char[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder].<init>(boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:41,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder].<init>(boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder].<init>(boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder].<init>(boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:51,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder].<init>(boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder].acceptInboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageDecoder].acceptInboundMessage(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder].extensionDecoderFilter()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter$2].mustSkip(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter].mustSkip(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    functionUses: 2
    ICount: 30
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:56"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:60"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:59"
        BranchSideFuncs:
        - "extensionDecoderFilter()"
        - "mustSkip(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:61"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:68"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:67"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:65"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:64"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:69"
        BranchSideFuncs:
        - "rsv()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:68"
        BranchSideFuncs:
        - "rsv()"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:69"
        BranchSideFuncs:
        - "rsv()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:68"
        BranchSideFuncs:
        - "rsv()"
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:67"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:56,1"
      Dst: "[io.netty.handler.codec.MessageToMessageDecoder].acceptInboundMessage(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:61,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder].extensionDecoderFilter()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:61,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter].mustSkip(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:63,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:69,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder].newRsv(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:75"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:75"
        BranchSideFuncs:
        - "rsv()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:75,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].rsv()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder].appendFrameTail(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:81,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    functionUses: 2
    ICount: 15
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:91"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:90"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:91"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:91"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:91"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:94"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:93"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:87,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:89,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder:31,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerMessageDeflateDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileEntries].inet4Entries()"
    functionSourceFile: "io.netty.resolver.HostsFileEntries"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.HostsFileEntries].inet6Entries()"
    functionSourceFile: "io.netty.resolver.HostsFileEntries"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$2].<init>()"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$2:106,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$2].newSelector(javax.net.ssl.SSLEngine,java.util.Set)"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$2"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionDepth: 1
    returnType: "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelector"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector].<init>(io.netty.handler.ssl.JdkSslEngine,java.util.Set)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$2:109,1"
      Dst: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator$NoFailProtocolSelector].<init>(io.netty.handler.ssl.JdkSslEngine,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.RoundRobinInetAddressResolver$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.resolver.RoundRobinInetAddressResolver$2"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 95
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.util.concurrent.FailedFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].getNow()"
    - "[jaz.Zer].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.util.ArrayList].<init>(java.util.Collection)"
    - "[io.netty.resolver.RoundRobinInetAddressResolver].access$000(int)"
    - "[java.util.Collections].rotate(java.util.List,int)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setSuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture:io.netty.channel.SucceededChannelFuture:io.netty.channel.VoidChannelPromise:io.netty.channel.group.VoidChannelGroupFuture:io.netty.util.concurrent.FailedFuture:io.netty.util.concurrent.SucceededFuture].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].getNow()"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].size()"
    - "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 23
    EdgeCount: 46
    BranchProfiles:
    - Branch String: "io.netty.resolver.RoundRobinInetAddressResolver$2:80"
      Branch Sides:
      - BranchSide: "io.netty.resolver.RoundRobinInetAddressResolver$2:92"
        BranchSideFuncs:
        - "isEmpty()"
        - "getNow()"
      - BranchSide: "io.netty.resolver.RoundRobinInetAddressResolver$2:91"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "cause()"
    - Branch String: "io.netty.resolver.RoundRobinInetAddressResolver$2:82"
      Branch Sides:
      - BranchSide: "io.netty.resolver.RoundRobinInetAddressResolver$2:88"
        BranchSideFuncs:
        - "setSuccess(java.lang.Object)"
    Callsites:
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$2:80,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$2:81,1"
      Dst: "[io.netty.util.concurrent.Future].getNow()"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$2:82,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$2:84,1"
      Dst: "[java.util.ArrayList].<init>(java.util.Collection)"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$2:86,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$2:86,1"
      Dst: "[io.netty.resolver.RoundRobinInetAddressResolver].access$000(int)"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$2:86,1"
      Dst: "[java.util.Collections].rotate(java.util.List,int)"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$2:87,1"
      Dst: "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$2:92,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.resolver.RoundRobinInetAddressResolver$2:92,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:60,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 126
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].isWebSocketPath(io.netty.handler.codec.http.HttpRequest)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMethod].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].method()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].method()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].method()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].sendHttpResponse(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.HttpResponse)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].getWebSocketLocation(io.netty.channel.ChannelPipeline,io.netty.handler.codec.http.HttpRequest,java.lang.String)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].websocketPath()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].decoderConfig()"
    - "[io.netty.channel.AbstractChannelHandlerContext:io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].subprotocols()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].newHandshaker(io.netty.handler.codec.http.HttpRequest)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].sendUnsupportedVersionResponse(io.netty.channel.Channel)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].setHandshaker(io.netty.channel.Channel,io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker)"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].handshake(io.netty.channel.Channel,io.netty.handler.codec.http.HttpRequest)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler,io.netty.channel.ChannelPromise,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].applyHandshakeTimeout()"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpRequest].method()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].subprotocols()"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 64
    EdgeCount: 45
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:65"
        BranchSideFuncs:
        - "isWebSocketPath(io.netty.handler.codec.http.HttpRequest)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:64"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:76"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:75"
        BranchSideFuncs:
        - "method()"
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:81"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
        - "alloc()"
        - "buffer(int)"
        - "sendHttpResponse(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.HttpResponse)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:80"
        BranchSideFuncs:
        - "<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
        - "newHandshaker(io.netty.handler.codec.http.HttpRequest)"
        - "getWebSocketLocation(io.netty.channel.ChannelPipeline,io.netty.handler.codec.http.HttpRequest,java.lang.String)"
        - "decoderConfig()"
        - "subprotocols()"
        - "websocketPath()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:86"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:94"
        BranchSideFuncs:
        - "sendUnsupportedVersionResponse(io.netty.channel.Channel)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:93"
        BranchSideFuncs:
        - "remove(io.netty.channel.ChannelHandler)"
        - "channel()"
        - "pipeline()"
        - "setHandshaker(io.netty.channel.Channel,io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "applyHandshakeTimeout()"
        - "handshake(io.netty.channel.Channel,io.netty.handler.codec.http.HttpRequest)"
        - "<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler,io.netty.channel.ChannelPromise,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:123"
        BranchSideFuncs:
        - "isWebSocketPath(io.netty.handler.codec.http.HttpRequest)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:122"
        BranchSideFuncs:
        - "release(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:69,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].isWebSocketPath(io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:71,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:76,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].method()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:76,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:77,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:77,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:77,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:77,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].sendHttpResponse(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:118,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:82,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:82,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].websocketPath()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:82,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].getWebSocketLocation(io.netty.channel.ChannelPipeline,io.netty.handler.codec.http.HttpRequest,java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:83,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].subprotocols()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:83,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].decoderConfig()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:83,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:84,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].newHandshaker(io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:87,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:87,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].sendUnsupportedVersionResponse(io.netty.channel.Channel)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:94,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler].setHandshaker(io.netty.channel.Channel,io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:95,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:97,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].handshake(io.netty.channel.Channel,io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:98,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$1].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler,io.netty.channel.ChannelPromise,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:98,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:115,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].applyHandshakeTimeout()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].isWebSocketPath(io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 133
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].websocketPath()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].uri()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].uri()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].uri()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].checkNextUri(java.lang.String,java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].checkStartsWith()"
    - "[io.netty.handler.codec.http.HttpRequest].uri()"
    functionUses: 1
    ICount: 25
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:131"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:128"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "checkStartsWith()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:127"
        BranchSideFuncs:
        - "websocketPath()"
        - "startsWith(java.lang.String)"
        - "uri()"
        - "checkNextUri(java.lang.String,java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:131"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:128"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "checkStartsWith()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:127"
        BranchSideFuncs:
        - "websocketPath()"
        - "startsWith(java.lang.String)"
        - "uri()"
        - "checkNextUri(java.lang.String,java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:132"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:131"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "checkStartsWith()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:132"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:131"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "checkStartsWith()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:132"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:131"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "checkStartsWith()"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:128,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].websocketPath()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:129,1"
      Dst: "[io.netty.handler.codec.http.HttpRequest].uri()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:130,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:131,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:131,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].checkNextUri(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:132,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].checkStartsWith()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].checkNextUri(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 142
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[java.lang.String].charAt(int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:137"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:141"
        BranchSideFuncs:
        - "charAt(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:140"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:139"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:137"
        BranchSideFuncs:
        - "charAt(int)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:139"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:137"
        BranchSideFuncs:
        - "charAt(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:136,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:138,1"
      Dst: "[java.lang.String].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].sendHttpResponse(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.HttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 150
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.HttpRequest"
    - "io.netty.handler.codec.http.HttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    - "[io.netty.handler.codec.http.HttpUtil].isKeepAlive(io.netty.handler.codec.http.HttpMessage)"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 12
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:146"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:147"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:146"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:146"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:149"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:145,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:146,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].isKeepAlive(io.netty.handler.codec.http.HttpMessage)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:146,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:146,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].code()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:147,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].getWebSocketLocation(io.netty.channel.ChannelPipeline,io.netty.handler.codec.http.HttpRequest,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 159
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelPipeline"
    - "io.netty.handler.codec.http.HttpRequest"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].get(java.lang.Class)"
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.ChannelPipeline].get(java.lang.Class)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 18
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:153"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:156"
        BranchSideFuncs:
        - "get(java.lang.CharSequence)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "headers()"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:153,1"
      Dst: "[io.netty.channel.ChannelPipeline].get(java.lang.Class)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:157,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:157,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:158,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:158,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:158,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 122
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:117,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:120,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].newHandshaker(io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 151
    functionDepth: 5
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketVersion].toHttpHeaderValue()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker07].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker00].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 1
    ICount: 43
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:132"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:150"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:149"
        BranchSideFuncs:
        - "<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:137"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:140"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "toHttpHeaderValue()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:141"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:131,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:131,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:133,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketVersion].toHttpHeaderValue()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:133,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:135,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:139,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker08].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:143,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker07].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:150,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker00].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketVersion].toHttpHeaderValue()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketVersion].toAsciiString()"
    - "[io.netty.util.AsciiString].toString()"
    functionUses: 4
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketVersion:67,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketVersion].toAsciiString()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketVersion:67,1"
      Dst: "[io.netty.util.AsciiString].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker07].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker07"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].<init>(io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker07:93,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].<init>(io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker00].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker00"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].<init>(io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker00:81,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker].<init>(io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].sendUnsupportedVersionResponse(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionDepth: 9
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].newPromise()"
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].sendUnsupportedVersionResponse(io.netty.channel.Channel,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    functionUses: 1
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:166,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:166,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].sendUnsupportedVersionResponse(io.netty.channel.Channel,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].sendUnsupportedVersionResponse(io.netty.channel.Channel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 179
    functionDepth: 8
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].alloc()"
    - "[io.netty.channel.AbstractChannel].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketVersion].toHttpHeaderValue()"
    - "[io.netty.handler.codec.http.HttpUtil].setContentLength(io.netty.handler.codec.http.HttpMessage,long)"
    - "[io.netty.channel.AbstractChannel].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.Channel].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 16
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:175,1"
      Dst: "[io.netty.channel.Channel].alloc()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:175,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:175,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:176,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:176,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketVersion].toHttpHeaderValue()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:176,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:177,1"
      Dst: "[io.netty.handler.codec.http.HttpUtil].setContentLength(io.netty.handler.codec.http.HttpMessage,long)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:178,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler].applyHandshakeTimeout()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 188
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].handshakeTimeoutMillis()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$3].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler,io.netty.util.concurrent.Future)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 20
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:164"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:165"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:164"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:164"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:168"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:167"
        BranchSideFuncs:
        - "schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler,io.netty.channel.ChannelPromise)"
        - "<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler,io.netty.util.concurrent.Future)"
        - "executor()"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:163,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].handshakeTimeoutMillis()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:164,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:168,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:168,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:168,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:181,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$3].<init>(io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler,io.netty.util.concurrent.Future)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler:181,1"
      Dst: "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.DefaultEventExecutorGroup].<init>(int)"
    functionSourceFile: "io.netty.util.concurrent.DefaultEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultEventExecutorGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultEventExecutorGroup:30,1"
      Dst: "[io.netty.util.concurrent.DefaultEventExecutorGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultEventExecutorGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    functionSourceFile: "io.netty.util.concurrent.DefaultEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.concurrent.ThreadFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.RejectedExecutionHandlers].reject()"
    - "[io.netty.util.concurrent.DefaultEventExecutorGroup].<init>(int,java.util.concurrent.ThreadFactory,int,io.netty.util.concurrent.RejectedExecutionHandler)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultEventExecutorGroup:41,1"
      Dst: "[io.netty.util.concurrent.RejectedExecutionHandlers].reject()"
    - Src: "io.netty.util.concurrent.DefaultEventExecutorGroup:40,1"
      Dst: "[io.netty.util.concurrent.DefaultEventExecutorGroup].<init>(int,java.util.concurrent.ThreadFactory,int,io.netty.util.concurrent.RejectedExecutionHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultEventExecutorGroup].<init>(int,java.util.concurrent.ThreadFactory,int,io.netty.util.concurrent.RejectedExecutionHandler)"
    functionSourceFile: "io.netty.util.concurrent.DefaultEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.util.concurrent.ThreadFactory"
    - "int"
    - "io.netty.util.concurrent.RejectedExecutionHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].<init>(int,java.util.concurrent.ThreadFactory,java.lang.Object[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultEventExecutorGroup:54,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.util.concurrent.DefaultEventExecutorGroup:54,1"
      Dst: "[io.netty.util.concurrent.MultithreadEventExecutorGroup].<init>(int,java.util.concurrent.ThreadFactory,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultEventExecutorGroup].newChild(java.util.concurrent.Executor,java.lang.Object[])"
    functionSourceFile: "io.netty.util.concurrent.DefaultEventExecutorGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.EventExecutor"
    argCount: 2
    argTypes:
    - "java.util.concurrent.Executor"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].intValue()"
    - "[io.netty.util.concurrent.DefaultEventExecutor].<init>(io.netty.util.concurrent.EventExecutorGroup,java.util.concurrent.Executor,int,io.netty.util.concurrent.RejectedExecutionHandler)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultEventExecutorGroup:59,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.util.concurrent.DefaultEventExecutorGroup:59,1"
      Dst: "[io.netty.util.concurrent.DefaultEventExecutor].<init>(io.netty.util.concurrent.EventExecutorGroup,java.util.concurrent.Executor,int,io.netty.util.concurrent.RejectedExecutionHandler)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultEventExecutor].<init>(io.netty.util.concurrent.EventExecutorGroup,java.util.concurrent.Executor,int,io.netty.util.concurrent.RejectedExecutionHandler)"
    functionSourceFile: "io.netty.util.concurrent.DefaultEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.util.concurrent.EventExecutorGroup"
    - "java.util.concurrent.Executor"
    - "int"
    - "io.netty.util.concurrent.RejectedExecutionHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].<init>(io.netty.util.concurrent.EventExecutorGroup,java.util.concurrent.Executor,boolean,int,io.netty.util.concurrent.RejectedExecutionHandler)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultEventExecutor:58,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].<init>(io.netty.util.concurrent.EventExecutorGroup,java.util.concurrent.Executor,boolean,int,io.netty.util.concurrent.RejectedExecutionHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$12].run()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$12"
    linkageType: ""
    functionLinenumber: 934
    functionLinenumberEnd: 936
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ClassLoader].getSystemClassLoader()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$12:935,1"
      Dst: "[java.lang.ClassLoader].getSystemClassLoader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$10].run()"
    functionSourceFile: "io.netty.util.internal.SocketUtils$10"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$10:181,1"
      Dst: "[java.net.InetSocketAddress].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrap$1].<init>(io.netty.bootstrap.ServerBootstrap,io.netty.channel.EventLoopGroup,io.netty.channel.ChannelHandler,java.util.Map$Entry[],java.util.Map$Entry[])"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap$1"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.bootstrap.ServerBootstrap"
    - "io.netty.channel.EventLoopGroup"
    - "io.netty.channel.ChannelHandler"
    - "java.util.Map$Entry[]"
    - "java.util.Map$Entry[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelInitializer].<init>()"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrap$1:142,1"
      Dst: "[io.netty.channel.ChannelInitializer].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.ServerBootstrap$1].initChannel(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap$1"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 159
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.bootstrap.ServerBootstrap].access$000(io.netty.bootstrap.ServerBootstrap)"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].handler()"
    - "[io.netty.channel.DefaultChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].<init>(io.netty.bootstrap.ServerBootstrap$1,io.netty.channel.ChannelPipeline,io.netty.channel.Channel)"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.Channel].pipeline()"
    - "[io.netty.channel.ChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 1
    ICount: 15
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.bootstrap.ServerBootstrap$1:147"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.ServerBootstrap$1:151"
        BranchSideFuncs:
        - "addLast(io.netty.channel.ChannelHandler[])"
      - BranchSide: "io.netty.bootstrap.ServerBootstrap$1:150"
        BranchSideFuncs:
        - "run()"
        - "<init>(io.netty.bootstrap.ServerBootstrap$1,io.netty.channel.ChannelPipeline,io.netty.channel.Channel)"
        - "eventLoop()"
        - "execute(java.lang.Runnable)"
    Callsites:
    - Src: "io.netty.bootstrap.ServerBootstrap$1:145,1"
      Dst: "[io.netty.channel.Channel].pipeline()"
    - Src: "io.netty.bootstrap.ServerBootstrap$1:146,1"
      Dst: "[io.netty.bootstrap.ServerBootstrap].access$000(io.netty.bootstrap.ServerBootstrap)"
    - Src: "io.netty.bootstrap.ServerBootstrap$1:146,1"
      Dst: "[io.netty.bootstrap.AbstractBootstrapConfig].handler()"
    - Src: "io.netty.bootstrap.ServerBootstrap$1:148,1"
      Dst: "[io.netty.channel.ChannelPipeline].addLast(io.netty.channel.ChannelHandler[])"
    - Src: "io.netty.bootstrap.ServerBootstrap$1:151,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.bootstrap.ServerBootstrap$1:151,1"
      Dst: "[io.netty.bootstrap.ServerBootstrap$1$1].<init>(io.netty.bootstrap.ServerBootstrap$1,io.netty.channel.ChannelPipeline,io.netty.channel.Channel)"
    - Src: "io.netty.bootstrap.ServerBootstrap$1:151,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.bootstrap.ServerBootstrap].access$000(io.netty.bootstrap.ServerBootstrap)"
    functionSourceFile: "io.netty.bootstrap.ServerBootstrap"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "io.netty.bootstrap.ServerBootstrapConfig"
    argCount: 1
    argTypes:
    - "io.netty.bootstrap.ServerBootstrap"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods].<init>()"
    functionSourceFile: "io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods].errnoENOENT()"
    functionSourceFile: "io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods].errnoEBADF()"
    functionSourceFile: "io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods].errnoEPIPE()"
    functionSourceFile: "io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods].errnoECONNRESET()"
    functionSourceFile: "io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods].errnoENOTCONN()"
    functionSourceFile: "io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods].errnoEAGAIN()"
    functionSourceFile: "io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods].errnoEWOULDBLOCK()"
    functionSourceFile: "io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods].errnoEINPROGRESS()"
    functionSourceFile: "io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods].errorECONNREFUSED()"
    functionSourceFile: "io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods].errorEISCONN()"
    functionSourceFile: "io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods].errorEALREADY()"
    functionSourceFile: "io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods].errorENETUNREACH()"
    functionSourceFile: "io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods].strError(int)"
    functionSourceFile: "io.netty.channel.unix.ErrorsStaticallyReferencedJniMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf].newInstance()"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 1619
    functionLinenumberEnd: 1623
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectPool$RecyclerObjectPool].get()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].resetRefCnt()"
    - "[io.netty.util.internal.ObjectPool].get()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf:1620,1"
      Dst: "[io.netty.util.internal.ObjectPool].get()"
    - Src: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf:1621,1"
      Dst: "[io.netty.buffer.AbstractReferenceCountedByteBuf].resetRefCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf].deallocate()"
    functionSourceFile: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 1633
    functionLinenumberEnd: 1641
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].access$700()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].deallocate()"
    - "[io.netty.buffer.AbstractByteBuf].clear()"
    - "[io.netty.util.Recycler$DefaultHandle].recycle(java.lang.Object)"
    - "[io.netty.util.Recycler$1].recycle(java.lang.Object)"
    - "[io.netty.util.internal.ObjectPool$Handle].recycle(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf:1634"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf:1637"
        BranchSideFuncs:
        - "deallocate()"
      - BranchSide: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf:1636"
        BranchSideFuncs:
        - "recycle(java.lang.Object)"
        - "clear()"
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf:1634,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - Src: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf:1634,1"
      Dst: "[io.netty.buffer.ByteBufUtil].access$700()"
    - Src: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf:1635,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].deallocate()"
    - Src: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf:1637,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].clear()"
    - Src: "io.netty.buffer.ByteBufUtil$ThreadLocalUnsafeDirectByteBuf:1638,1"
      Dst: "[io.netty.util.internal.ObjectPool$Handle].recycle(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.ByteBufUtil].access$700()"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionStatus].statusPhrase()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionStatus"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionStatus].hashCode()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionStatus"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].code()"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionStatus:90,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionStatus].code()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionStatus].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionStatus"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 100
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].code()"
    functionUses: 9
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionStatus:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionStatus:99"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionStatus:98"
        BranchSideFuncs:
        - "code()"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionStatus:99"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionStatus:98"
        BranchSideFuncs:
        - "code()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionStatus:99,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionStatus].code()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionStatus].toString()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionStatus"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].statusPhrase()"
    functionUses: 19
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionStatus:104,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionStatus].statusPhrase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionStatus].compareTo(io.netty.handler.codec.spdy.SpdySessionStatus)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.spdy.SpdySessionStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].code()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionStatus:109,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionStatus].code()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionStatus].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].compareTo(io.netty.handler.codec.spdy.SpdySessionStatus)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionStatus:23,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionStatus].compareTo(io.netty.handler.codec.spdy.SpdySessionStatus)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum].<init>(java.util.zip.Checksum,java.lang.reflect.Method)"
    functionSourceFile: "io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.zip.Checksum"
    - "java.lang.reflect.Method"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].<init>(java.util.zip.Checksum)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum:96,1"
      Dst: "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].<init>(java.util.zip.Checksum)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum].update(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 112
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.PooledDirectByteBuf:io.netty.buffer.PooledHeapByteBuf:io.netty.buffer.PooledUnsafeDirectByteBuf:io.netty.buffer.ReadOnlyByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf:io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].update(byte[],int,int)"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[io.netty.handler.codec.compression.CompressionUtil].safeNioBuffer(io.netty.buffer.ByteBuf,int,int)"
    - "[java.lang.Error].<init>()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    functionUses: 7
    ICount: 23
    EdgeCount: 47
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum:102"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum:106"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
        - "update(byte[],int,int)"
      - BranchSide: "io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum:105"
        BranchSideFuncs:
        - "invoke(java.lang.Object,java.lang.Object[])"
        - "<init>()"
        - "safeNioBuffer(io.netty.buffer.ByteBuf,int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum:102,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum:103,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum:103,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum:103,1"
      Dst: "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].update(byte[],int,int)"
    - Src: "io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum:106,1"
      Dst: "[io.netty.handler.codec.compression.CompressionUtil].safeNioBuffer(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum:106,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.handler.codec.compression.ByteBufChecksum$ReflectiveByteBufChecksum:108,1"
      Dst: "[java.lang.Error].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].update(byte[],int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Lz4XXHash32].update(byte[],int,int)"
    - "[java.util.zip.Adler32].update(byte[],int,int)"
    - "[io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum].update(byte[],int,int)"
    - "[io.netty.handler.codec.compression.Crc32c].update(byte[],int,int)"
    - "[java.util.zip.CRC32].update(byte[],int,int)"
    - "[java.util.zip.Checksum].update(byte[],int,int)"
    functionUses: 4
    ICount: 7
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ByteBufChecksum$SlowByteBufChecksum:129,1"
      Dst: "[java.util.zip.Checksum].update(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor$1].visit(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor$1"
    linkageType: ""
    functionLinenumber: 645
    functionLinenumberEnd: 648
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$100(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].incrementStreamWindow(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor$1:646,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].access$100(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController,io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$WritabilityMonitor$1:646,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$FlowState].incrementStreamWindow(int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$6].<init>(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$6"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.epoll.AbstractEpollStreamChannel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$6:626,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$6].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$6"
    linkageType: ""
    functionLinenumber: 628
    functionLinenumberEnd: 631
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].access$200(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$6:629,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].access$200(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$6].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$6"
    linkageType: ""
    functionLinenumber: 625
    functionLinenumberEnd: 627
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$6].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$6:626,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel$6].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$2].<init>(io.netty.util.Recycler)"
    functionSourceFile: "io.netty.util.Recycler$2"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.Recycler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$2:96,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$2].initialValue()"
    functionSourceFile: "io.netty.util.Recycler$2"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 3
    returnType: "io.netty.util.Recycler$LocalPool"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.Recycler$LocalPool].<init>(int,int,int)"
    - "[io.netty.util.Recycler].access$000(io.netty.util.Recycler)"
    - "[io.netty.util.Recycler].access$100(io.netty.util.Recycler)"
    - "[io.netty.util.Recycler].access$200(io.netty.util.Recycler)"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$2:99,1"
      Dst: "[io.netty.util.Recycler].access$000(io.netty.util.Recycler)"
    - Src: "io.netty.util.Recycler$2:99,1"
      Dst: "[io.netty.util.Recycler].access$100(io.netty.util.Recycler)"
    - Src: "io.netty.util.Recycler$2:99,1"
      Dst: "[io.netty.util.Recycler].access$200(io.netty.util.Recycler)"
    - Src: "io.netty.util.Recycler$2:99,1"
      Dst: "[io.netty.util.Recycler$LocalPool].<init>(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$LocalPool].<init>(int,int,int)"
    functionSourceFile: "io.netty.util.Recycler$LocalPool"
    linkageType: ""
    functionLinenumber: 263
    functionLinenumberEnd: 273
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.Recycler].access$400()"
    - "[io.netty.util.Recycler$BlockingMessageQueue].<init>(int)"
    - "[io.netty.util.internal.PlatformDependent].newMpscQueue(int,int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.Recycler$LocalPool:266"
      Branch Sides:
      - BranchSide: "io.netty.util.Recycler$LocalPool:269"
        BranchSideFuncs:
        - "<init>(int)"
      - BranchSide: "io.netty.util.Recycler$LocalPool:268"
        BranchSideFuncs:
        - "newMpscQueue(int,int)"
    Callsites:
    - Src: "io.netty.util.Recycler$LocalPool:264,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.Recycler$LocalPool:266,1"
      Dst: "[io.netty.util.Recycler].access$400()"
    - Src: "io.netty.util.Recycler$LocalPool:267,1"
      Dst: "[io.netty.util.Recycler$BlockingMessageQueue].<init>(int)"
    - Src: "io.netty.util.Recycler$LocalPool:269,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newMpscQueue(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].newMpscQueue(int,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1056
    functionLinenumberEnd: 1058
    functionDepth: 1
    returnType: "java.util.Queue<T>"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent$Mpsc].newChunkedMpscQueue(int,int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1057,1"
      Dst: "[io.netty.util.internal.PlatformDependent$Mpsc].newChunkedMpscQueue(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$2].onRemoval(io.netty.util.Recycler$LocalPool)"
    functionSourceFile: "io.netty.util.Recycler$2"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 109
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.Recycler$LocalPool"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].onRemoval(java.lang.Object)"
    - "[io.netty.util.Recycler$LocalPool].access$300(io.netty.util.Recycler$LocalPool)"
    - "[io.netty.util.Recycler$LocalPool:java.util.AbstractQueue].access$302(io.netty.util.Recycler$LocalPool,io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].clear()"
    - "[io.netty.util.Recycler$BlockingMessageQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].clear()"
    - "[io.netty.util.Recycler$LocalPool].access$302(io.netty.util.Recycler$LocalPool,io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue].clear()"
    functionUses: 1
    ICount: 7
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$2:104,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].onRemoval(java.lang.Object)"
    - Src: "io.netty.util.Recycler$2:105,1"
      Dst: "[io.netty.util.Recycler$LocalPool].access$300(io.netty.util.Recycler$LocalPool)"
    - Src: "io.netty.util.Recycler$2:106,1"
      Dst: "[io.netty.util.Recycler$LocalPool].access$302(io.netty.util.Recycler$LocalPool,io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue)"
    - Src: "io.netty.util.Recycler$2:107,1"
      Dst: "[io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue].clear()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$LocalPool].access$300(io.netty.util.Recycler$LocalPool)"
    functionSourceFile: "io.netty.util.Recycler$LocalPool"
    linkageType: ""
    functionLinenumber: 257
    functionLinenumberEnd: 259
    functionDepth: 0
    returnType: "io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue"
    argCount: 1
    argTypes:
    - "io.netty.util.Recycler$LocalPool"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$LocalPool].access$302(io.netty.util.Recycler$LocalPool,io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue)"
    functionSourceFile: "io.netty.util.Recycler$LocalPool"
    linkageType: ""
    functionLinenumber: 257
    functionLinenumberEnd: 259
    functionDepth: 0
    returnType: "io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue"
    argCount: 2
    argTypes:
    - "io.netty.util.Recycler$LocalPool"
    - "io.netty.util.internal.shaded.org.jctools.queues.MessagePassingQueue"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$2].onRemoval(java.lang.Object)"
    functionSourceFile: "io.netty.util.Recycler$2"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.Recycler$2].onRemoval(io.netty.util.Recycler$LocalPool)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$2:96,1"
      Dst: "[io.netty.util.Recycler$2].onRemoval(io.netty.util.Recycler$LocalPool)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionDecoder"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder:28,1"
      Dst: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder)"
    - Src: "io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder:29,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder].frameListener(io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameListener].<init>(io.netty.handler.codec.http2.Http2FrameListener,int)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].frameListener(io.netty.handler.codec.http2.Http2FrameListener)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder:35"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder:38"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder:37"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder:36,1"
      Dst: "[io.netty.handler.codec.http2.Http2EmptyDataFrameListener].<init>(io.netty.handler.codec.http2.Http2FrameListener,int)"
    - Src: "io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder:36,1"
      Dst: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].frameListener(io.netty.handler.codec.http2.Http2FrameListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2EmptyDataFrameListener].<init>(io.netty.handler.codec.http2.Http2FrameListener,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2EmptyDataFrameListener"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameListener"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].<init>(io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2EmptyDataFrameListener:32,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameListenerDecorator].<init>(io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.Http2EmptyDataFrameListener:33,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder].frameListener()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 50
    functionDepth: 2
    returnType: "io.netty.handler.codec.http2.Http2FrameListener"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder].frameListener0()"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder:49"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder:48"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder:44,1"
      Dst: "[io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder].frameListener0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder].frameListener0()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2FrameListener"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].frameListener()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder:54,1"
      Dst: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].frameListener()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHttpHeaders].<init>()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHttpHeaders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHttpHeaders:50,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].<init>(io.netty.handler.traffic.ChannelTrafficShapingHandler,io.netty.channel.ChannelHandlerContext,long)"
    functionSourceFile: "io.netty.handler.traffic.ChannelTrafficShapingHandler$1"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 196
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.traffic.ChannelTrafficShapingHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.ChannelTrafficShapingHandler$1:195,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    functionSourceFile: "io.netty.handler.traffic.ChannelTrafficShapingHandler$1"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler].access$100(io.netty.handler.traffic.ChannelTrafficShapingHandler,io.netty.channel.ChannelHandlerContext,long)"
    functionUses: 49
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.ChannelTrafficShapingHandler$1:198,1"
      Dst: "[io.netty.handler.traffic.ChannelTrafficShapingHandler].access$100(io.netty.handler.traffic.ChannelTrafficShapingHandler,io.netty.channel.ChannelHandlerContext,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.ChannelTrafficShapingHandler].access$100(io.netty.handler.traffic.ChannelTrafficShapingHandler,io.netty.channel.ChannelHandlerContext,long)"
    functionSourceFile: "io.netty.handler.traffic.ChannelTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.traffic.ChannelTrafficShapingHandler"
    - "io.netty.channel.ChannelHandlerContext"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler].sendAllValid(io.netty.channel.ChannelHandlerContext,long)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.ChannelTrafficShapingHandler:65,1"
      Dst: "[io.netty.handler.traffic.ChannelTrafficShapingHandler].sendAllValid(io.netty.channel.ChannelHandlerContext,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.ChannelTrafficShapingHandler].sendAllValid(io.netty.channel.ChannelHandlerContext,long)"
    functionSourceFile: "io.netty.handler.traffic.ChannelTrafficShapingHandler"
    linkageType: ""
    functionLinenumber: 204
    functionLinenumberEnd: 224
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayDeque].pollFirst()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].calculateSize(java.lang.Object)"
    - "[io.netty.handler.traffic.TrafficCounter].bytesRealWriteFlowControl(long)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[java.util.ArrayDeque].addFirst(java.lang.Object)"
    - "[java.util.ArrayDeque].isEmpty()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].releaseWriteSuspended(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 1
    ICount: 41
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.traffic.ChannelTrafficShapingHandler:207"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.ChannelTrafficShapingHandler:218"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.traffic.ChannelTrafficShapingHandler:217"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.handler.traffic.ChannelTrafficShapingHandler:208"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.ChannelTrafficShapingHandler:214"
        BranchSideFuncs:
        - "bytesRealWriteFlowControl(long)"
        - "calculateSize(java.lang.Object)"
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.traffic.ChannelTrafficShapingHandler:213"
        BranchSideFuncs:
        - "addFirst(java.lang.Object)"
    - Branch String: "io.netty.handler.traffic.ChannelTrafficShapingHandler:218"
      Branch Sides:
      - BranchSide: "io.netty.handler.traffic.ChannelTrafficShapingHandler:221"
        BranchSideFuncs:
        - "releaseWriteSuspended(io.netty.channel.ChannelHandlerContext)"
      - BranchSide: "io.netty.handler.traffic.ChannelTrafficShapingHandler:220"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.traffic.ChannelTrafficShapingHandler:206,1"
      Dst: "[java.util.ArrayDeque].pollFirst()"
    - Src: "io.netty.handler.traffic.ChannelTrafficShapingHandler:209,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].calculateSize(java.lang.Object)"
    - Src: "io.netty.handler.traffic.ChannelTrafficShapingHandler:210,1"
      Dst: "[io.netty.handler.traffic.TrafficCounter].bytesRealWriteFlowControl(long)"
    - Src: "io.netty.handler.traffic.ChannelTrafficShapingHandler:212,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.traffic.ChannelTrafficShapingHandler:214,1"
      Dst: "[java.util.ArrayDeque].addFirst(java.lang.Object)"
    - Src: "io.netty.handler.traffic.ChannelTrafficShapingHandler:218,1"
      Dst: "[java.util.ArrayDeque].isEmpty()"
    - Src: "io.netty.handler.traffic.ChannelTrafficShapingHandler:219,1"
      Dst: "[io.netty.handler.traffic.AbstractTrafficShapingHandler].releaseWriteSuspended(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.traffic.ChannelTrafficShapingHandler:222,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionAdapter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionAdapter:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionAdapter].onStreamAdded(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionAdapter"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionAdapter].onStreamActive(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionAdapter"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionAdapter].onStreamHalfClosed(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionAdapter"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionAdapter].onStreamClosed(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionAdapter"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionAdapter].onStreamRemoved(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionAdapter"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionAdapter].onGoAwaySent(int,long,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionAdapter"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionAdapter].onGoAwayReceived(int,long,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionAdapter"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].<init>(io.netty.handler.codec.spdy.SpdyVersion)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.zip.Deflater].<init>(int)"
    - "[java.util.zip.Deflater].setDictionary(byte[])"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:37"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:38"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:37"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:37"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:41"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:40"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:36,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].<init>(io.netty.handler.codec.spdy.SpdyVersion)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:38,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:38,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:38,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:38,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:38,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:41,1"
      Dst: "[java.util.zip.Deflater].<init>(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:42,1"
      Dst: "[java.util.zip.Deflater].setDictionary(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder].setInput(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.PooledDirectByteBuf:io.netty.buffer.PooledHeapByteBuf:io.netty.buffer.PooledUnsafeDirectByteBuf:io.netty.buffer.ReadOnlyByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf:io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[java.util.zip.Deflater].setInput(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AbstractByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:java.util.zip.Deflater].setInput(byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    functionUses: 1
    ICount: 19
    EdgeCount: 66
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:48"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:51"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:50"
        BranchSideFuncs:
        - "setInput(byte[],int,int)"
        - "getBytes(int,byte[])"
        - "readerIndex()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:46,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:48,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:49,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:49,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:49,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:49,1"
      Dst: "[java.util.zip.Deflater].setInput(byte[],int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:52,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder].encode(io.netty.buffer.ByteBufAllocator,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 74
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder].compressInto(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.SlicedByteBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf:io.netty.buffer.UnreleasableByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 19
    EdgeCount: 46
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:67"
        BranchSideFuncs:
        - "compressInto(io.netty.buffer.ByteBuf)"
        - "capacity()"
        - "ensureWritable(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:66"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:67"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:66"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:73"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:60,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:63,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder].compressInto(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:65,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:65,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:71,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder].compressInto(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 89
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.PooledHeapByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledHeapByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[java.util.zip.Deflater].deflate(byte[],int,int,int)"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:java.util.zip.Deflater].deflate(byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[java.util.zip.Deflater].deflate(byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    functionUses: 1
    ICount: 22
    EdgeCount: 57
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:82"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:85"
        BranchSideFuncs:
        - "deflate(byte[],int,int,int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:84"
        BranchSideFuncs:
        - "deflate(byte[],int,int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:88"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:86"
        BranchSideFuncs:
        - "writerIndex(int)"
        - "writerIndex()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:78,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:79,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:79,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:80,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:82,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:83,1"
      Dst: "[java.util.zip.Deflater].deflate(byte[],int,int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:85,1"
      Dst: "[java.util.zip.Deflater].deflate(byte[],int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:87,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder].encode(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 111
    functionDepth: 6
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.spdy.SpdyHeadersFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].encode(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.util.ReferenceCounted].isReadable()"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder].setInput(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder].encode(io.netty.buffer.ByteBufAllocator,int)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 3
    ICount: 22
    EdgeCount: 40
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:100"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:99"
        BranchSideFuncs:
        - "encode(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
        - "isReadable()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:102"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:106"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:105"
        BranchSideFuncs:
        - "encode(io.netty.buffer.ByteBufAllocator,int)"
        - "setInput(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:93,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:100,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].encode(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:102,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:109,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:106,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder].setInput(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:107,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder].encode(io.netty.buffer.ByteBufAllocator,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].encode(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 84
    functionDepth: 5
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.spdy.SpdyHeadersFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].headers()"
    - "[io.netty.handler.codec.DefaultHeaders].names()"
    - "[io.netty.channel.group.DefaultChannelGroup].size()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].size()"
    - "[io.netty.util.internal.ConcurrentSet].size()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].size()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].size()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].size()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer()"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].writeLengthField(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.lang.String].length()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[io.netty.buffer.ByteBufUtil].writeAscii(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.DefaultHeaders].getAll(java.lang.Object)"
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[io.netty.util.AsciiString:io.netty.util.internal.AppendableCharSequence:java.lang.AbstractStringBuilder:java.lang.StringBuffer:java.lang.StringBuilder:java.nio.CharBuffer].append(java.lang.Object)"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].setLengthField(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.spdy.SpdyHeadersFrame].headers()"
    - "[io.netty.handler.codec.Headers].names()"
    - "[java.util.Set].size()"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.lang.CharSequence].length()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.handler.codec.Headers].getAll(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    functionUses: 5
    ICount: 61
    EdgeCount: 263
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:48"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:55"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:54"
        BranchSideFuncs:
        - "heapBuffer()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:57"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:83"
        BranchSideFuncs:
        - "getAll(java.lang.Object)"
        - "hasNext()"
        - "writeLengthField(io.netty.buffer.ByteBuf,int)"
        - "next()"
        - "headers()"
        - "iterator()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:82"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:71"
        BranchSideFuncs:
        - "getAll(java.lang.Object)"
        - "hasNext()"
        - "next()"
        - "length()"
        - "headers()"
        - "iterator()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:70"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:65"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:70"
        BranchSideFuncs:
        - "writeByte(int)"
        - "writeAscii(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:69"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:74"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:78"
        BranchSideFuncs:
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:77"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:82"
        BranchSideFuncs:
        - "writerIndex()"
        - "writerIndex(int)"
        - "setLengthField(io.netty.buffer.ByteBuf,int,int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:46,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeadersFrame].headers()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:46,1"
      Dst: "[io.netty.handler.codec.Headers].names()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:47,1"
      Dst: "[java.util.Set].size()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:52,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:55,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:56,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].writeLengthField(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:57,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:57,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:57,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:58,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:59,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeAscii(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:60,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:63,1"
      Dst: "[io.netty.handler.codec.Headers].getAll(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:63,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:67,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:75,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:75,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:75,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:75,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:79,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].setLengthField(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:80,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].writeLengthField(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:41,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].setLengthField(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setInt(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ByteBuf].setInt(int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder:37,1"
      Dst: "[io.netty.buffer.ByteBuf].setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder].end()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 122
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.zip.Deflater].end()"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].end()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:115"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:118"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:117"
        BranchSideFuncs:
        - "end()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:119,1"
      Dst: "[java.util.zip.Deflater].end()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockZlibEncoder:120,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].end()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].end()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser].<init>(io.netty.util.internal.AppendableCharSequence,int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.AppendableCharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:939,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser].parse(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser"
    linkageType: ""
    functionLinenumber: 944
    functionLinenumberEnd: 954
    functionDepth: 1
    returnType: "io.netty.util.internal.AppendableCharSequence"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].reset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 5
    ICount: 14
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:948"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:952"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:951"
        BranchSideFuncs:
        - "readerIndex(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:946,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].reset()"
    - Src: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:947,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - Src: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:952,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser].reset()"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser"
    linkageType: ""
    functionLinenumber: 956
    functionLinenumberEnd: 959
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser].process(byte)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser"
    linkageType: ""
    functionLinenumber: 961
    functionLinenumberEnd: 977
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[io.netty.util.internal.AppendableCharSequence].charAtUnsafe(int)"
    - "[io.netty.util.internal.AppendableCharSequence].setLength(int)"
    - "[io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser].increaseCount()"
    - "[io.netty.util.internal.AppendableCharSequence].append(char)"
    functionUses: 3
    ICount: 26
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:963"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:973"
        BranchSideFuncs:
        - "charAtUnsafe(int)"
        - "length()"
      - BranchSide: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:972"
        BranchSideFuncs:
        - "append(char)"
        - "increaseCount()"
    - Branch String: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:966"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:970"
        BranchSideFuncs:
        - "setLength(int)"
      - BranchSide: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:969"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:966"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:970"
        BranchSideFuncs:
        - "setLength(int)"
      - BranchSide: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:969"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:964,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].length()"
    - Src: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:966,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].charAtUnsafe(int)"
    - Src: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:968,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].setLength(int)"
    - Src: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:973,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser].increaseCount()"
    - Src: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:975,1"
      Dst: "[io.netty.util.internal.AppendableCharSequence].append(char)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser].increaseCount()"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser"
    linkageType: ""
    functionLinenumber: 979
    functionLinenumberEnd: 988
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser].newException(int)"
    - "[io.netty.handler.codec.http.HttpObjectDecoder$LineParser].newException(int)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:980"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:986"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:985,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser].newException(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser].newException(int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser"
    linkageType: ""
    functionLinenumber: 989
    functionLinenumberEnd: 991
    functionDepth: 4
    returnType: "io.netty.handler.codec.TooLongFrameException"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.TooLongHttpHeaderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 11
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:990,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:990,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:990,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:990,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.HttpObjectDecoder$HeaderParser:990,1"
      Dst: "[io.netty.handler.codec.http.TooLongHttpHeaderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.CompositeNameResolver].<init>(io.netty.util.concurrent.EventExecutor,io.netty.resolver.NameResolver[])"
    functionSourceFile: "io.netty.resolver.CompositeNameResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    - "io.netty.resolver.NameResolver[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.SimpleNameResolver].<init>(io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.resolver.CompositeNameResolver:46"
      Branch Sides:
      - BranchSide: "io.netty.resolver.CompositeNameResolver:48"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.CompositeNameResolver:49"
      Branch Sides:
      - BranchSide: "io.netty.resolver.CompositeNameResolver:53"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.CompositeNameResolver:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.CompositeNameResolver:44,1"
      Dst: "[io.netty.resolver.SimpleNameResolver].<init>(io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.resolver.CompositeNameResolver:45,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.CompositeNameResolver:47,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.CompositeNameResolver:47,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.CompositeNameResolver:47,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.resolver.CompositeNameResolver:47,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.resolver.CompositeNameResolver:47,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.resolver.CompositeNameResolver:50,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.resolver.CompositeNameResolver:50,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.resolver.CompositeNameResolver:50,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.resolver.CompositeNameResolver:53,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.CompositeNameResolver].doResolve(java.lang.String,io.netty.util.concurrent.Promise<T>)"
    functionSourceFile: "io.netty.resolver.CompositeNameResolver"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.util.concurrent.Promise<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.CompositeNameResolver].doResolveRec(java.lang.String,io.netty.util.concurrent.Promise,int,java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.CompositeNameResolver:58,1"
      Dst: "[io.netty.resolver.CompositeNameResolver].doResolveRec(java.lang.String,io.netty.util.concurrent.Promise,int,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.CompositeNameResolver].doResolveRec(java.lang.String,io.netty.util.concurrent.Promise<T>,int,java.lang.Throwable)"
    functionSourceFile: "io.netty.resolver.CompositeNameResolver"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 81
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "io.netty.util.concurrent.Promise<T>"
    - "int"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].setFailure(java.lang.Throwable)"
    - "[io.netty.resolver.CompositeNameResolver$1].<init>(io.netty.resolver.CompositeNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.CompleteFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.resolver.SimpleNameResolver].resolve(java.lang.String)"
    - "[io.netty.resolver.dns.InflightNameResolver].resolve(java.lang.String)"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    - "[io.netty.resolver.NameResolver].resolve(java.lang.String)"
    - "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 17
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.resolver.CompositeNameResolver:65"
      Branch Sides:
      - BranchSide: "io.netty.resolver.CompositeNameResolver:68"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
      - BranchSide: "io.netty.resolver.CompositeNameResolver:67"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "resolve(java.lang.String)"
        - "<init>(io.netty.resolver.CompositeNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int)"
    Callsites:
    - Src: "io.netty.resolver.CompositeNameResolver:66,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.resolver.CompositeNameResolver:69,1"
      Dst: "[io.netty.resolver.NameResolver].resolve(java.lang.String)"
    - Src: "io.netty.resolver.CompositeNameResolver:69,1"
      Dst: "[io.netty.resolver.CompositeNameResolver$1].<init>(io.netty.resolver.CompositeNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int)"
    - Src: "io.netty.resolver.CompositeNameResolver:69,1"
      Dst: "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.CompositeNameResolver].doResolveAll(java.lang.String,io.netty.util.concurrent.Promise<List<T>>)"
    functionSourceFile: "io.netty.resolver.CompositeNameResolver"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.util.concurrent.Promise<List<T>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.CompositeNameResolver].doResolveAllRec(java.lang.String,io.netty.util.concurrent.Promise,int,java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.CompositeNameResolver:84,1"
      Dst: "[io.netty.resolver.CompositeNameResolver].doResolveAllRec(java.lang.String,io.netty.util.concurrent.Promise,int,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.CompositeNameResolver].doResolveAllRec(java.lang.String,io.netty.util.concurrent.Promise<List<T>>,int,java.lang.Throwable)"
    functionSourceFile: "io.netty.resolver.CompositeNameResolver"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 107
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "io.netty.util.concurrent.Promise<List<T>>"
    - "int"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].setFailure(java.lang.Throwable)"
    - "[io.netty.resolver.CompositeNameResolver$2].<init>(io.netty.resolver.CompositeNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int)"
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.VoidChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.CompleteFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.resolver.SimpleNameResolver].resolveAll(java.lang.String)"
    - "[io.netty.resolver.dns.InflightNameResolver].resolveAll(java.lang.String)"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    - "[io.netty.resolver.NameResolver].resolveAll(java.lang.String)"
    - "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 17
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.resolver.CompositeNameResolver:91"
      Branch Sides:
      - BranchSide: "io.netty.resolver.CompositeNameResolver:94"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
      - BranchSide: "io.netty.resolver.CompositeNameResolver:93"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "resolveAll(java.lang.String)"
        - "<init>(io.netty.resolver.CompositeNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int)"
    Callsites:
    - Src: "io.netty.resolver.CompositeNameResolver:92,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.resolver.CompositeNameResolver:95,1"
      Dst: "[io.netty.resolver.NameResolver].resolveAll(java.lang.String)"
    - Src: "io.netty.resolver.CompositeNameResolver:95,1"
      Dst: "[io.netty.resolver.CompositeNameResolver$2].<init>(io.netty.resolver.CompositeNameResolver,io.netty.util.concurrent.Promise,java.lang.String,int)"
    - Src: "io.netty.resolver.CompositeNameResolver:95,1"
      Dst: "[io.netty.util.concurrent.Future].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$1"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].<init>(io.netty.handler.codec.redis.FullBulkStringRedisMessage$1)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$1:66,1"
      Dst: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].<init>(io.netty.handler.codec.redis.FullBulkStringRedisMessage$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].isNull()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$1"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].content()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$1"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].copy()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].duplicate()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].refCnt()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$1"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].retain()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$1"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].retain(int)"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].touch()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$1"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$1"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].release()"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$1"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].release(int)"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$1"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage$1].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$1"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 4
    returnType: "io.netty.handler.codec.redis.LastBulkStringRedisContent"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].replace(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FullBulkStringRedisMessage$1:66,1"
      Dst: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].<init>(io.netty.handler.codec.mqtt.MqttConnectReturnCode,boolean)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttConnectReturnCode"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].<init>(io.netty.handler.codec.mqtt.MqttConnectReturnCode,boolean,io.netty.handler.codec.mqtt.MqttProperties)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader:33,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].<init>(io.netty.handler.codec.mqtt.MqttConnectReturnCode,boolean,io.netty.handler.codec.mqtt.MqttProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].toString()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 63
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 19
    ICount: 14
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader:57,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader:57,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader:58,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader:59,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader:59,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader:60,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "io.netty.handler.codec.mqtt.MqttConnAckVariableHeader:62,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool$5$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$5$1"
    linkageType: ""
    functionLinenumber: 474
    functionLinenumberEnd: 481
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.util.concurrent.FailedFuture].isSuccess()"
    - "[io.netty.util.concurrent.SucceededFuture].isSuccess()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setSuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.util.concurrent.FailedFuture].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.util.concurrent.SucceededFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.PromiseTask].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 13
    EdgeCount: 36
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.FixedChannelPool$5$1:475"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$5$1:478"
        BranchSideFuncs:
        - "setSuccess(java.lang.Object)"
      - BranchSide: "io.netty.channel.pool.FixedChannelPool$5$1:477"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "cause()"
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$5$1:475,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.channel.pool.FixedChannelPool$5$1:476,1"
      Dst: "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    - Src: "io.netty.channel.pool.FixedChannelPool$5$1:478,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.channel.pool.FixedChannelPool$5$1:478,1"
      Dst: "[io.netty.util.concurrent.Promise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.smtp.SmtpResponseDecoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpResponseDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.LineBasedFrameDecoder].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:41,1"
      Dst: "[io.netty.handler.codec.LineBasedFrameDecoder].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpResponseDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpResponseDecoder"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 97
    functionDepth: 6
    returnType: "io.netty.handler.codec.smtp.SmtpResponse"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.LineBasedFrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.handler.codec.smtp.SmtpResponseDecoder].newDecoderException(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.smtp.SmtpResponseDecoder].parseCode(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[java.util.Collections].emptyList()"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].<init>(int,java.util.List)"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 2
    ICount: 56
    EdgeCount: 75
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.smtp.SmtpResponseDecoder:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpResponseDecoder:51"
        BranchSideFuncs:
        - "readerIndex()"
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.smtp.SmtpResponseDecoder:54"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpResponseDecoder:57"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpResponseDecoder:56"
        BranchSideFuncs:
        - "toString(java.nio.charset.Charset)"
        - "isReadable()"
        - "readByte()"
        - "parseCode(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.smtp.SmtpResponseDecoder:59"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpResponseDecoder:57"
        BranchSideFuncs:
        - "toString(java.nio.charset.Charset)"
        - "isReadable()"
      - BranchSide: "io.netty.handler.codec.smtp.SmtpResponseDecoder:56"
        BranchSideFuncs:
        - "toString(java.nio.charset.Charset)"
        - "isReadable()"
        - "readByte()"
        - "parseCode(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.smtp.SmtpResponseDecoder:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpResponseDecoder:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpResponseDecoder:71"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.SmtpResponseDecoder:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpResponseDecoder:78"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpResponseDecoder:77"
        BranchSideFuncs:
        - "<init>(int,java.util.List)"
    - Branch String: "io.netty.handler.codec.smtp.SmtpResponseDecoder:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpResponseDecoder:75"
        BranchSideFuncs:
        - "emptyList()"
      - BranchSide: "io.netty.handler.codec.smtp.SmtpResponseDecoder:74"
        BranchSideFuncs:
        - "singletonList(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.smtp.SmtpResponseDecoder:81"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpResponseDecoder:94"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpResponseDecoder:93"
        BranchSideFuncs:
        - "release()"
    - Branch String: "io.netty.handler.codec.smtp.SmtpResponseDecoder:82"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpResponseDecoder:null"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "newDecoderException(io.netty.buffer.ByteBuf,int,int)"
        - "toString(java.nio.charset.Charset)"
        - "isReadable()"
        - "readerIndex()"
        - "readByte()"
        - "<init>(int)"
        - "<init>(int,java.util.List)"
        - "parseCode(io.netty.buffer.ByteBuf)"
        - "emptyList()"
        - "singletonList(java.lang.Object)"
        - "readableBytes()"
        - "release()"
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:46,1"
      Dst: "[io.netty.handler.codec.LineBasedFrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:52,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:53,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:55,1"
      Dst: "[io.netty.handler.codec.smtp.SmtpResponseDecoder].newDecoderException(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:57,1"
      Dst: "[io.netty.handler.codec.smtp.SmtpResponseDecoder].parseCode(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:58,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:59,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:59,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:69,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:73,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:75,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:78,1"
      Dst: "[io.netty.handler.codec.smtp.DefaultSmtpResponse].<init>(int,java.util.List)"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:94,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:85,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 23
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.LineBasedFrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.LineBasedFrameDecoder"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 150
    functionDepth: 5
    returnType: "java.lang.Object"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.LineBasedFrameDecoder].findEndOfLine(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.LineBasedFrameDecoder].fail(io.netty.channel.ChannelHandlerContext,int)"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.LineBasedFrameDecoder].fail(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    functionUses: 3
    ICount: 78
    EdgeCount: 140
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.LineBasedFrameDecoder:100"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:134"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:133"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.LineBasedFrameDecoder:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:120"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.LineBasedFrameDecoder:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.LineBasedFrameDecoder:106"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.LineBasedFrameDecoder:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:116"
        BranchSideFuncs:
        - "skipBytes(int)"
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:115"
        BranchSideFuncs:
        - "readRetainedSlice(int)"
    - Branch String: "io.netty.handler.codec.LineBasedFrameDecoder:122"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:131"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:130"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.LineBasedFrameDecoder:127"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:131"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "fail(io.netty.channel.ChannelHandlerContext,java.lang.String)"
        - "append(int)"
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:130"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.LineBasedFrameDecoder:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:144"
        BranchSideFuncs:
        - "readerIndex()"
        - "getByte(int)"
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:143"
        BranchSideFuncs:
        - "readerIndex(int)"
        - "writerIndex()"
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.LineBasedFrameDecoder:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:135"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:134"
        BranchSideFuncs:
        - "readerIndex()"
        - "getByte(int)"
    - Branch String: "io.netty.handler.codec.LineBasedFrameDecoder:140"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:143"
        BranchSideFuncs:
        - "fail(io.netty.channel.ChannelHandlerContext,int)"
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:142"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:99,1"
      Dst: "[io.netty.handler.codec.LineBasedFrameDecoder].findEndOfLine(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:103,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:104,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:107,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:108,1"
      Dst: "[io.netty.handler.codec.LineBasedFrameDecoder].fail(io.netty.channel.ChannelHandlerContext,int)"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:113,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:114,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:121,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:124,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:128,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:128,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:128,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:128,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:128,1"
      Dst: "[io.netty.handler.codec.LineBasedFrameDecoder].fail(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 24
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.LineBasedFrameDecoder].findEndOfLine(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.LineBasedFrameDecoder"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 179
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.SlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.DuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ReadOnlyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 1
    ICount: 23
    EdgeCount: 47
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.LineBasedFrameDecoder:170"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:176"
        BranchSideFuncs:
        - "getByte(int)"
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:175"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.LineBasedFrameDecoder:172"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:178"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:177"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.LineBasedFrameDecoder:172"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:178"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.LineBasedFrameDecoder:177"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:168,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:169,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:169,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:172,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.LineBasedFrameDecoder].fail(io.netty.channel.ChannelHandlerContext,int)"
    functionSourceFile: "io.netty.handler.codec.LineBasedFrameDecoder"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.LineBasedFrameDecoder].fail(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - "[java.lang.String].valueOf(int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:154,1"
      Dst: "[java.lang.String].valueOf(int)"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:154,1"
      Dst: "[io.netty.handler.codec.LineBasedFrameDecoder].fail(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.LineBasedFrameDecoder].fail(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.LineBasedFrameDecoder"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 162
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 2
    ICount: 16
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:158,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:158,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:158,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:158,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:158,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:158,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.LineBasedFrameDecoder:158,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpResponseDecoder].newDecoderException(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpResponseDecoder"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionDepth: 2
    returnType: "io.netty.handler.codec.DecoderException"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    functionUses: 2
    ICount: 14
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:101,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:101,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:101,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:101,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpResponseDecoder].parseCode(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpResponseDecoder"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 112
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.SmtpResponseDecoder].parseNumber(byte)"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    functionUses: 1
    ICount: 12
    EdgeCount: 27
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:108,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:108,1"
      Dst: "[io.netty.handler.codec.smtp.SmtpResponseDecoder].parseNumber(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpResponseDecoder].parseNumber(byte)"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpResponseDecoder"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Character].digit(char,int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpResponseDecoder:115,1"
      Dst: "[java.lang.Character].digit(char,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].newChannel(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.nio.channels.ServerSocketChannel"
    argCount: 2
    argTypes:
    - "java.nio.channels.spi.SelectorProvider"
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.SelectorProviderUtil].newChannel(java.lang.reflect.Method,java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    - "[java.nio.channels.spi.SelectorProvider].openServerSocketChannel()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioServerSocketChannel:63"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel:62"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:62,1"
      Dst: "[io.netty.channel.socket.nio.SelectorProviderUtil].newChannel(java.lang.reflect.Method,java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:63,1"
      Dst: "[java.nio.channels.spi.SelectorProvider].openServerSocketChannel()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:65,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].<init>()"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].<init>(java.nio.channels.spi.SelectorProvider)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:75,1"
      Dst: "[io.netty.channel.socket.nio.NioServerSocketChannel].<init>(java.nio.channels.spi.SelectorProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].<init>(java.nio.channels.spi.SelectorProvider)"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.spi.SelectorProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].<init>(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:82,1"
      Dst: "[io.netty.channel.socket.nio.NioServerSocketChannel].<init>(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].<init>(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.spi.SelectorProvider"
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].newChannel(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].<init>(java.nio.channels.ServerSocketChannel)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:89,1"
      Dst: "[io.netty.channel.socket.nio.NioServerSocketChannel].newChannel(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:89,1"
      Dst: "[io.netty.channel.socket.nio.NioServerSocketChannel].<init>(java.nio.channels.ServerSocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].<init>(java.nio.channels.ServerSocketChannel)"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.ServerSocketChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioMessageChannel].<init>(io.netty.channel.Channel,java.nio.channels.SelectableChannel,int)"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].javaChannel()"
    - "[java.nio.channels.ServerSocketChannel].socket()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].<init>(io.netty.channel.socket.nio.NioServerSocketChannel,io.netty.channel.socket.nio.NioServerSocketChannel,java.net.ServerSocket,io.netty.channel.socket.nio.NioServerSocketChannel$1)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:96,1"
      Dst: "[io.netty.channel.nio.AbstractNioMessageChannel].<init>(io.netty.channel.Channel,java.nio.channels.SelectableChannel,int)"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:97,1"
      Dst: "[io.netty.channel.socket.nio.NioServerSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:97,1"
      Dst: "[java.nio.channels.ServerSocketChannel].socket()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:97,1"
      Dst: "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].<init>(io.netty.channel.socket.nio.NioServerSocketChannel,io.netty.channel.socket.nio.NioServerSocketChannel,java.net.ServerSocket,io.netty.channel.socket.nio.NioServerSocketChannel$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].localAddress()"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:102,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].metadata()"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "io.netty.channel.ChannelMetadata"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].config()"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "io.netty.channel.socket.ServerSocketChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 54
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ServerSocket].isBound()"
    - "[io.netty.channel.nio.AbstractNioChannel].isOpen()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].javaChannel()"
    - "[java.nio.channels.ServerSocketChannel].socket()"
    functionUses: 36
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioServerSocketChannel:119"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel:118"
        BranchSideFuncs:
        - "javaChannel()"
        - "isOpen()"
        - "isBound()"
    - Branch String: "io.netty.channel.socket.nio.NioServerSocketChannel:119"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel:118"
        BranchSideFuncs:
        - "javaChannel()"
        - "isOpen()"
        - "isBound()"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:119,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].isOpen()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:119,1"
      Dst: "[io.netty.channel.socket.nio.NioServerSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:119,1"
      Dst: "[java.nio.channels.ServerSocketChannel].socket()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:119,1"
      Dst: "[java.net.ServerSocket].isBound()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].javaChannel()"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionDepth: 0
    returnType: "java.nio.channels.ServerSocketChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].javaChannel()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:129,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].javaChannel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionDepth: 2
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].javaChannel()"
    - "[io.netty.util.internal.SocketUtils].localSocketAddress(java.net.ServerSocket)"
    - "[java.nio.channels.ServerSocketChannel].socket()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:134,1"
      Dst: "[io.netty.channel.socket.nio.NioServerSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:134,1"
      Dst: "[java.nio.channels.ServerSocketChannel].socket()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:134,1"
      Dst: "[io.netty.util.internal.SocketUtils].localSocketAddress(java.net.ServerSocket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 146
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].getBacklog()"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getBacklog()"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].getBacklog()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].javaChannel()"
    - "[java.net.ServerSocket].bind(java.net.SocketAddress,int)"
    - "[io.netty.channel.socket.ServerSocketChannelConfig].getBacklog()"
    - "[java.nio.channels.ServerSocketChannel].bind(java.net.SocketAddress,int)"
    - "[java.nio.channels.ServerSocketChannel].socket()"
    functionUses: 1
    ICount: 15
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioServerSocketChannel:140"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel:143"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel:142"
        BranchSideFuncs:
        - "javaChannel()"
        - "bind(java.net.SocketAddress,int)"
        - "getBacklog()"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:140,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:141,1"
      Dst: "[io.netty.channel.socket.nio.NioServerSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:141,1"
      Dst: "[io.netty.channel.socket.ServerSocketChannelConfig].getBacklog()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:141,1"
      Dst: "[java.nio.channels.ServerSocketChannel].bind(java.net.SocketAddress,int)"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:143,1"
      Dst: "[java.nio.channels.ServerSocketChannel].socket()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:143,1"
      Dst: "[java.net.ServerSocket].bind(java.net.SocketAddress,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].doClose()"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 151
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].javaChannel()"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:149,1"
      Dst: "[io.netty.channel.socket.nio.NioServerSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:149,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].doReadMessages(java.util.List<Object>)"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 172
    functionDepth: 9
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SocketUtils].accept(java.nio.channels.ServerSocketChannel)"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].javaChannel()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].<init>(io.netty.channel.Channel,java.nio.channels.SocketChannel)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    functionUses: 1
    ICount: 19
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioServerSocketChannel:157"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel:169"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(io.netty.channel.Channel,java.nio.channels.SocketChannel)"
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:154,1"
      Dst: "[io.netty.channel.socket.nio.NioServerSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:154,1"
      Dst: "[io.netty.util.internal.SocketUtils].accept(java.nio.channels.ServerSocketChannel)"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:158,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].<init>(io.netty.channel.Channel,java.nio.channels.SocketChannel)"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:158,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:162,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:165,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].<init>(io.netty.channel.Channel,java.nio.channels.SocketChannel)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 115
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.Channel"
    - "java.nio.channels.SocketChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioByteChannel].<init>(io.netty.channel.Channel,java.nio.channels.SelectableChannel)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.socket.nio.NioSocketChannel,java.net.Socket,io.netty.channel.socket.nio.NioSocketChannel$1)"
    - "[java.nio.channels.SocketChannel].socket()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:112,1"
      Dst: "[io.netty.channel.nio.AbstractNioByteChannel].<init>(io.netty.channel.Channel,java.nio.channels.SelectableChannel)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:113,1"
      Dst: "[java.nio.channels.SocketChannel].socket()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:113,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.socket.nio.NioSocketChannel,java.net.Socket,io.netty.channel.socket.nio.NioSocketChannel$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:178,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].doFinishConnect()"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:183,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].remoteAddress0()"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].doDisconnect()"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 194
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:193,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].doWriteMessage(java.lang.Object,io.netty.channel.ChannelOutboundBuffer)"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.channel.ChannelOutboundBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:198,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].filterOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 204
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:203,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].closeOnReadError(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 247
    functionLinenumberEnd: 249
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioMessageChannel].closeOnReadError(java.lang.Throwable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:248,1"
      Dst: "[io.netty.channel.nio.AbstractNioMessageChannel].closeOnReadError(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel].access$100(io.netty.channel.socket.nio.NioServerSocketChannel)"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.socket.nio.NioServerSocketChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].clearReadPending()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel:48,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].clearReadPending()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.DefaultHeadersImpl].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    functionSourceFile: "io.netty.handler.codec.DefaultHeadersImpl"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.util.HashingStrategy"
    - "io.netty.handler.codec.ValueConverter"
    - "io.netty.handler.codec.DefaultHeaders$NameValidator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.DefaultHeadersImpl:27,1"
      Dst: "[io.netty.handler.codec.DefaultHeaders].<init>(io.netty.util.HashingStrategy,io.netty.handler.codec.ValueConverter,io.netty.handler.codec.DefaultHeaders$NameValidator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeEncoder$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeEncoder$1"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder$1:58,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeEncoder$1].initialValue()"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeEncoder$1"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 91
    functionDepth: 1
    returnType: "java.util.LinkedHashMap"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeEncoder$1$1].<init>(io.netty.handler.codec.stomp.StompSubframeEncoder$1,int,float,boolean)"
    - "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 61
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder$1:61,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeEncoder$1$1].<init>(io.netty.handler.codec.stomp.StompSubframeEncoder$1,int,float,boolean)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeEncoder$1:70,1"
      Dst: "[java.util.HashMap].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodec$1].visit(io.netty.handler.codec.http2.Http2FrameStream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodec$1"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 232
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].id()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isValidStreamId(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].lastStreamId()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].local()"
    - "[io.netty.channel.DefaultChannelPipeline].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].retainedDuplicate()"
    - "[io.netty.handler.codec.http2.Http2FrameStream].id()"
    - "[io.netty.handler.codec.http2.Http2GoAwayFrame].lastStreamId()"
    - "[io.netty.handler.codec.http2.Http2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].isValidStreamId(int)"
    - "[io.netty.handler.codec.http2.Http2GoAwayFrame].retainedDuplicate()"
    - "[io.netty.channel.ChannelPipeline].fireUserEventTriggered(java.lang.Object)"
    functionUses: 1
    ICount: 19
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodec$1:228"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec$1:231"
        BranchSideFuncs:
        - "pipeline()"
        - "fireUserEventTriggered(java.lang.Object)"
        - "retainedDuplicate()"
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec$1:230"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodec$1:228"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec$1:231"
        BranchSideFuncs:
        - "pipeline()"
        - "fireUserEventTriggered(java.lang.Object)"
        - "retainedDuplicate()"
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodec$1:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec$1:225,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameStream].id()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec$1:228,1"
      Dst: "[io.netty.handler.codec.http2.Http2GoAwayFrame].lastStreamId()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec$1:228,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec$1:228,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].local()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec$1:228,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].isValidStreamId(int)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec$1:229,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec$1:229,1"
      Dst: "[io.netty.handler.codec.http2.Http2GoAwayFrame].retainedDuplicate()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodec$1:229,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireUserEventTriggered(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].<init>(io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.resolver.dns.DnsServerAddressStreamProviders].platformDefault()"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].eventLoop(io.netty.channel.EventLoop)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:79,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:60,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStreamProviders].platformDefault()"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:80,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].eventLoop(io.netty.channel.EventLoop)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].channelFactory(io.netty.channel.ChannelFactory<?\
      \ extends DatagramChannel>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFactory<? extends DatagramChannel>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].channelType(java.lang.Class<?\
      \ extends DatagramChannel>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends DatagramChannel>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ReflectiveChannelFactory].<init>(java.lang.Class)"
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].channelFactory(io.netty.channel.ChannelFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:117,1"
      Dst: "[io.netty.channel.ReflectiveChannelFactory].<init>(java.lang.Class)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:117,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].channelFactory(io.netty.channel.ChannelFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].socketChannelFactory(io.netty.channel.ChannelFactory<?\
      \ extends SocketChannel>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFactory<? extends SocketChannel>"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].socketChannelType(java.lang.Class<?\
      \ extends SocketChannel>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "java.lang.Class<? extends SocketChannel>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolverBuilder].socketChannelFactory(io.netty.channel.ChannelFactory)"
    - "[io.netty.channel.ReflectiveChannelFactory].<init>(java.lang.Class)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:143"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:146"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:144,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverBuilder].socketChannelFactory(io.netty.channel.ChannelFactory)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:146,1"
      Dst: "[io.netty.channel.ReflectiveChannelFactory].<init>(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].authoritativeDnsServerCache(io.netty.resolver.dns.DnsCache)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter].<init>(io.netty.resolver.dns.DnsCache)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:191,1"
      Dst: "[io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter].<init>(io.netty.resolver.dns.DnsCache)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter].<init>(io.netty.resolver.dns.DnsCache)"
    functionSourceFile: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:37,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:38,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].computeResolvedAddressTypes(io.netty.channel.socket.InternetProtocolFamily[])"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.resolver.ResolvedAddressTypes"
    argCount: 1
    argTypes:
    - "io.netty.channel.socket.InternetProtocolFamily[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.Enum].ordinal()"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:264"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:265"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:264"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:264"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:267"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:266"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:267"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:271"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:270"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:273"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:272"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:273"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:272"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:277"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:276"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:277"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:276"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:268,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:271,1"
      Dst: "[java.lang.Enum].ordinal()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 6
  - functionName: "[io.netty.resolver.dns.DnsNameResolverBuilder].searchDomains(java.lang.Iterable<String>)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverBuilder"
    linkageType: ""
    functionLinenumber: 403
    functionLinenumberEnd: 423
    functionDepth: 1
    returnType: "io.netty.resolver.dns.DnsNameResolverBuilder"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].iterator()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.buffer.CompositeByteBuf].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.channel.pool.AbstractChannelPoolMap].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.channel.DefaultChannelPipeline].iterator()"
    - "[io.netty.channel.group.ChannelGroupException].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$1].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$1].iterator()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$1].iterator()"
    - "[io.netty.handler.codec.EmptyHeaders].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.buffer.PoolChunkList].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.util.ArrayList].contains(java.lang.Object)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].contains(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 1
    ICount: 22
    EdgeCount: 205
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:408"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:421"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:420"
        BranchSideFuncs:
        - "toArray(java.lang.Object[])"
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:409"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:414"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:413"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
    - Branch String: "io.netty.resolver.dns.DnsNameResolverBuilder:414"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:418"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsNameResolverBuilder:417"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:404,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:406,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:408,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:408,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:408,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:414,1"
      Dst: "[java.util.List].contains(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:418,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsNameResolverBuilder:421,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.xml.XmlDTD].text()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlDTD"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlDTD].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlDTD"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 9
    ICount: 21
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.xml.XmlDTD:35"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDTD:38"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDTD:37"
        BranchSideFuncs:
        - "getClass()"
    - Branch String: "io.netty.handler.codec.xml.XmlDTD:38"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDTD:39"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDTD:38"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlDTD:38"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDTD:42"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDTD:41"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.xml.XmlDTD:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDTD:42"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDTD:41"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.xml.XmlDTD:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDTD:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDTD:47"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlDTD:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDTD:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlDTD:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlDTD:38,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.codec.xml.XmlDTD:44,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.xml.XmlDTD].hashCode()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlDTD"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 5
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.xml.XmlDTD:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlDTD:52"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlDTD:53,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.xml.XmlDTD].toString()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlDTD"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 19
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlDTD:58,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.xml.XmlDTD:58,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlDTD:58,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.xml.XmlDTD:58,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.UnixChannelOption].<init>()"
    functionSourceFile: "io.netty.channel.unix.UnixChannelOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOption].<init>(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.UnixChannelOption:27,1"
      Dst: "[io.netty.channel.ChannelOption].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.UnixChannelOption].<init>(java.lang.String)"
    functionSourceFile: "io.netty.channel.unix.UnixChannelOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOption].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.unix.UnixChannelOption:31,1"
      Dst: "[io.netty.channel.ChannelOption].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString$GeneralCaseInsensitiveCharEqualityComparator].<init>()"
    functionSourceFile: "io.netty.util.AsciiString$GeneralCaseInsensitiveCharEqualityComparator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString$GeneralCaseInsensitiveCharEqualityComparator:1562,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString$GeneralCaseInsensitiveCharEqualityComparator].equals(char,char)"
    functionSourceFile: "io.netty.util.AsciiString$GeneralCaseInsensitiveCharEqualityComparator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "char"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Character].toUpperCase(char)"
    - "[java.lang.Character].toLowerCase(char)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString$GeneralCaseInsensitiveCharEqualityComparator:1567"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString$GeneralCaseInsensitiveCharEqualityComparator:1567"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString$GeneralCaseInsensitiveCharEqualityComparator:1566"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString$GeneralCaseInsensitiveCharEqualityComparator:1568"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString$GeneralCaseInsensitiveCharEqualityComparator:1566"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString$GeneralCaseInsensitiveCharEqualityComparator:1567,1"
      Dst: "[java.lang.Character].toUpperCase(char)"
    - Src: "io.netty.util.AsciiString$GeneralCaseInsensitiveCharEqualityComparator:1568,1"
      Dst: "[java.lang.Character].toLowerCase(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.ClientAuth].values()"
    functionSourceFile: "io.netty.handler.ssl.ClientAuth"
    linkageType: ""
    functionLinenumber: 22
    functionLinenumberEnd: 24
    functionDepth: 0
    returnType: "io.netty.handler.ssl.ClientAuth[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ClientAuth:23,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ClientAuth].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.ClientAuth"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.ClientAuth"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ClientAuth:23,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ClientAuth].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.ssl.ClientAuth"
    linkageType: ""
    functionLinenumber: 22
    functionLinenumberEnd: 24
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ClientAuth:23,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelInboundHandlerAdapter].channelUnregistered(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.ChannelInboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelUnregistered()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelUnregistered()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelUnregistered()"
    functionUses: 4
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelInboundHandlerAdapter:57,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelUnregistered()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelInboundHandlerAdapter].channelReadComplete(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.ChannelInboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    functionUses: 4
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelInboundHandlerAdapter:105,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelReadComplete()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelInboundHandlerAdapter].userEventTriggered(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.channel.ChannelInboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    functionUses: 5
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelInboundHandlerAdapter:117,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$4].<init>(java.lang.Class)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$4"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$4:101,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$4].run()"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$4"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "java.lang.reflect.Method"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$4:104,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque$1].<init>()"
    functionSourceFile: "io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque$1"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 232
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque$1:231,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque$1"
    linkageType: ""
    functionLinenumber: 233
    functionLinenumberEnd: 235
    functionDepth: 2
    returnType: "io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque].<init>(int,io.netty.util.internal.ObjectPool$Handle,io.netty.handler.flow.FlowControlHandler$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque$1:234,1"
      Dst: "[io.netty.handler.flow.FlowControlHandler$RecyclableArrayDeque].<init>(int,io.netty.util.internal.ObjectPool$Handle,io.netty.handler.flow.FlowControlHandler$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    functionSourceFile: "io.netty.channel.pool.SimpleChannelPool$5"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 289
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.SimpleChannelPool].access$300(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    functionUses: 50
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.SimpleChannelPool$5:287,1"
      Dst: "[io.netty.channel.pool.SimpleChannelPool].access$300(io.netty.channel.pool.SimpleChannelPool,io.netty.channel.Channel,io.netty.util.concurrent.Promise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].<init>(io.netty.handler.codec.http2.Http2FrameReader,io.netty.handler.codec.http2.Http2FrameLogger)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameReader"
    - "io.netty.handler.codec.http2.Http2FrameLogger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger:33,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger:34,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].readFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 137
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http2.Http2FrameListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].<init>(io.netty.handler.codec.http2.Http2InboundFrameLogger,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].readFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].readFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.Http2FrameReader].readFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    functionUses: 3
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger:41,1"
      Dst: "[io.netty.handler.codec.http2.Http2InboundFrameLogger$1].<init>(io.netty.handler.codec.http2.Http2InboundFrameLogger,io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger:41,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameReader].readFrame(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2FrameListener)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].close()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 142
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].close()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].close()"
    - "[io.netty.handler.codec.http2.Http2FrameReader].close()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger:140,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameReader].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].configuration()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2InboundFrameLogger"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameReader$Configuration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].configuration()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].configuration()"
    - "[io.netty.handler.codec.http2.Http2FrameReader].configuration()"
    functionUses: 3
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2InboundFrameLogger:145,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameReader].configuration()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].current()"
    functionSourceFile: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.SecureRandom"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].<init>()"
    functionSourceFile: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.SecureRandom].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:38,1"
      Dst: "[java.security.SecureRandom].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].getAlgorithm()"
    functionSourceFile: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].setSeed(byte[])"
    functionSourceFile: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].setSeed(long)"
    functionSourceFile: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextBytes(byte[])"
    functionSourceFile: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextBytes(byte[])"
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - "[java.util.Random].nextBytes(byte[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:53,1"
      Dst: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:53,1"
      Dst: "[java.util.Random].nextBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    functionSourceFile: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 1
    returnType: "java.util.Random"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    functionUses: 5
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:99,1"
      Dst: "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].generateSeed(int)"
    functionSourceFile: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 61
    functionDepth: 2
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextBytes(byte[])"
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - "[java.util.Random].nextBytes(byte[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:59,1"
      Dst: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:59,1"
      Dst: "[java.util.Random].nextBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextInt()"
    functionSourceFile: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextInt()"
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - "[java.util.Random].nextInt()"
    functionUses: 4
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:65,1"
      Dst: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:65,1"
      Dst: "[java.util.Random].nextInt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextInt(int)"
    functionSourceFile: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextInt(int)"
    - "[java.util.Random:java.util.concurrent.ThreadLocalRandom].nextInt(int)"
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - "[java.util.Random].nextInt(int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:70,1"
      Dst: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:70,1"
      Dst: "[java.util.Random].nextInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextBoolean()"
    functionSourceFile: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - "[java.util.Random].nextBoolean()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:75,1"
      Dst: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:75,1"
      Dst: "[java.util.Random].nextBoolean()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextLong()"
    functionSourceFile: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - "[java.util.Random].nextLong()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:80,1"
      Dst: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:80,1"
      Dst: "[java.util.Random].nextLong()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextFloat()"
    functionSourceFile: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - "[java.util.Random].nextFloat()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:85,1"
      Dst: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:85,1"
      Dst: "[java.util.Random].nextFloat()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextDouble()"
    functionSourceFile: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextDouble()"
    - "[java.util.Random:java.util.concurrent.ThreadLocalRandom].nextDouble()"
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - "[java.util.Random].nextDouble()"
    functionUses: 2
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:90,1"
      Dst: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:90,1"
      Dst: "[java.util.Random].nextDouble()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextGaussian()"
    functionSourceFile: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - "[java.util.Random].nextGaussian()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:95,1"
      Dst: "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].random()"
    - Src: "io.netty.handler.ssl.util.ThreadLocalInsecureRandom:95,1"
      Dst: "[java.util.Random].nextGaussian()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].<init>(io.netty.handler.codec.spdy.SpdyVersion,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - "[io.netty.handler.codec.spdy.SpdySession].<init>(int,int)"
    - "[java.util.concurrent.atomic.AtomicInteger].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.spdy.SpdyVersion].getMinorVersion()"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:72,1"
      Dst: "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:46,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].<init>(int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:53,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:73,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:73,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyVersion].getMinorVersion()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].setSessionReceiveWindowSize(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:78,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 412
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].streamId()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.spdy.SpdySession].updateReceiveWindowSize(int,int)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].issueSessionError(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].<init>(int,int)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdySession].isActiveStream(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].release()"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].issueStreamError(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.spdy.SpdyStreamStatus)"
    - "[io.netty.handler.codec.spdy.SpdySession].isRemoteSideClosed(int)"
    - "[io.netty.handler.codec.spdy.SpdySession].hasReceivedReply(int)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].isRemoteInitiatedId(int)"
    - "[io.netty.handler.codec.spdy.SpdySession].getReceiveWindowSizeLowerBound(int)"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].readableBytes()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].<init>(int,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].isLast()"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].halfCloseStream(int,boolean,io.netty.channel.ChannelFuture)"
    - "[io.netty.channel.AbstractChannelHandlerContext].newSucceededFuture()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newSucceededFuture()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].isInvalid()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].priority()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].isUnidirectional()"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].acceptStream(int,byte,boolean,boolean)"
    - "[io.netty.handler.codec.spdy.SpdySession].receivedReply(int)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].removeStream(int,io.netty.channel.ChannelFuture)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].getValue(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].isPersisted(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].removeValue(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].setPersistValue(int,boolean)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].updateInitialSendWindowSize(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].id()"
    - "[java.util.concurrent.atomic.AtomicInteger].get()"
    - "[java.util.concurrent.atomic.AtomicInteger].getAndDecrement()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].streamId()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].deltaWindowSize()"
    - "[io.netty.handler.codec.spdy.SpdySession].isLocalSideClosed(int)"
    - "[io.netty.handler.codec.spdy.SpdySession].getSendWindowSize(int)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].updateSendWindowSize(io.netty.channel.ChannelHandlerContext,int,int)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdyStreamFrame].streamId()"
    - "[io.netty.handler.codec.spdy.SpdyDataFrame].content()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.spdy.SpdyStreamFrame].isLast()"
    - "[io.netty.channel.ChannelOutboundInvoker].newSucceededFuture()"
    - "[io.netty.handler.codec.spdy.SpdyHeadersFrame].isInvalid()"
    - "[io.netty.handler.codec.spdy.SpdySynStreamFrame].priority()"
    - "[io.netty.handler.codec.spdy.SpdySynStreamFrame].isUnidirectional()"
    - "[io.netty.handler.codec.spdy.SpdySettingsFrame].getValue(int)"
    - "[io.netty.handler.codec.spdy.SpdySettingsFrame].isPersisted(int)"
    - "[io.netty.handler.codec.spdy.SpdySettingsFrame].removeValue(int)"
    - "[io.netty.handler.codec.spdy.SpdySettingsFrame].setPersistValue(int,boolean)"
    - "[io.netty.handler.codec.spdy.SpdyPingFrame].id()"
    - "[io.netty.handler.codec.spdy.SpdyWindowUpdateFrame].streamId()"
    - "[io.netty.handler.codec.spdy.SpdyWindowUpdateFrame].deltaWindowSize()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 3
    ICount: 241
    EdgeCount: 117
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:122"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:128"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:127"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:138"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:137"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:150"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:149"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:140"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:142"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:141"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:142"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:145"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:144"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:156"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:170"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:169"
        BranchSideFuncs:
        - "getReceiveWindowSizeLowerBound(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:170"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:169"
        BranchSideFuncs:
        - "getReceiveWindowSizeLowerBound(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:177"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:185"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:184"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:185"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:194"
        BranchSideFuncs:
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:193"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:194"
        BranchSideFuncs:
        - "content()"
        - "<init>(int,io.netty.buffer.ByteBuf)"
        - "readRetainedSlice(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:193"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:194"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:203"
        BranchSideFuncs:
        - "updateReceiveWindowSize(int,int)"
        - "<init>(int,int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:202"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:194"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:203"
        BranchSideFuncs:
        - "updateReceiveWindowSize(int,int)"
        - "<init>(int,int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:202"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:203"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:207"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:206"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:227"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:230"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:228"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:230"
        BranchSideFuncs:
        - "isActiveStream(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:229"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:235"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:234"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:235"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:241"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:240"
        BranchSideFuncs:
        - "isUnidirectional()"
        - "acceptStream(int,byte,boolean,boolean)"
        - "priority()"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:244"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:249"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:248"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:262"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:265"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:264"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:263"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:265"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:264"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:264"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:270"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:269"
        BranchSideFuncs:
        - "hasReceivedReply(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:270"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:275"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:274"
        BranchSideFuncs:
        - "receivedReply(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:278"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:282"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:281"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:301"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:307"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:301"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:307"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:309"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:316"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:315"
        BranchSideFuncs:
        - "isPersisted(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:316"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:319"
        BranchSideFuncs:
        - "removeValue(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:318"
        BranchSideFuncs:
        - "getValue(int)"
        - "setPersistValue(int,boolean)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:323"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:327"
        BranchSideFuncs:
        - "updateInitialSendWindowSize(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:326"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:340"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:346"
        BranchSideFuncs:
        - "writeAndFlush(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:345"
        BranchSideFuncs:
        - "get()"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:346"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:349"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:348"
        BranchSideFuncs:
        - "getAndDecrement()"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:354"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:355"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:354"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:361"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:366"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:365"
        BranchSideFuncs:
        - "isRemoteSideClosed(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:366"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:372"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:371"
        BranchSideFuncs:
        - "isLast()"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:372"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:376"
        BranchSideFuncs:
        - "halfCloseStream(int,boolean,io.netty.channel.ChannelFuture)"
        - "newSucceededFuture()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:375"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:355"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:409"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:393"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:398"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:397"
        BranchSideFuncs:
        - "getSendWindowSize(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:393"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:398"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:397"
        BranchSideFuncs:
        - "getSendWindowSize(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:398"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:407"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:406"
        BranchSideFuncs:
        - "updateSendWindowSize(io.netty.channel.ChannelHandlerContext,int,int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:399"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:402"
        BranchSideFuncs:
        - "issueSessionError(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:401"
        BranchSideFuncs:
        - "issueStreamError(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.spdy.SpdyStreamStatus)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:115,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamFrame].streamId()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:117,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyDataFrame].content()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:117,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:119,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].updateReceiveWindowSize(int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:123,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].issueSessionError(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:131,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].<init>(int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:133,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:138,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].isActiveStream(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:139,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:141,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].issueStreamError(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.spdy.SpdyStreamStatus)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:150,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].isRemoteSideClosed(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:157,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].isRemoteInitiatedId(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:157,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].hasReceivedReply(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:177,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].getReceiveWindowSizeLowerBound(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:188,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:188,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].<init>(int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:194,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamFrame].isLast()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:204,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newSucceededFuture()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:204,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].halfCloseStream(int,boolean,io.netty.channel.ChannelFuture)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:227,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeadersFrame].isInvalid()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:241,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySynStreamFrame].priority()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:243,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySynStreamFrame].isUnidirectional()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:244,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].acceptStream(int,byte,boolean,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:275,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].receivedReply(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:294,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].removeStream(int,io.netty.channel.ChannelFuture)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:300,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySettingsFrame].getValue(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:316,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySettingsFrame].isPersisted(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:317,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySettingsFrame].removeValue(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:319,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySettingsFrame].setPersistValue(int,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:324,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].updateInitialSendWindowSize(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:340,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyPingFrame].id()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:346,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].get()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:349,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].getAndDecrement()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:389,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyWindowUpdateFrame].streamId()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:390,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyWindowUpdateFrame].deltaWindowSize()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:393,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].isLocalSideClosed(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:398,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].getSendWindowSize(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:407,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].updateSendWindowSize(io.netty.channel.ChannelHandlerContext,int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:410,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 87
    CyclomaticComplexity: 31
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].issueStreamError(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.spdy.SpdyStreamStatus)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 674
    functionLinenumberEnd: 685
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.spdy.SpdyStreamStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySession].isRemoteSideClosed(int)"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].removeStream(int,io.netty.channel.ChannelFuture)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].<init>(int,io.netty.handler.codec.spdy.SpdyStreamStatus)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    functionUses: 12
    ICount: 18
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:675"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:675"
        BranchSideFuncs:
        - "newPromise()"
        - "removeStream(int,io.netty.channel.ChannelFuture)"
        - "writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
        - "<init>(int,io.netty.handler.codec.spdy.SpdyStreamStatus)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:674"
        BranchSideFuncs:
        - "isRemoteSideClosed(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:681"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:684"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:683"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:675,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].isRemoteSideClosed(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:676,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:677,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].removeStream(int,io.netty.channel.ChannelFuture)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:679,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].<init>(int,io.netty.handler.codec.spdy.SpdyStreamStatus)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:680,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:682,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].removeStream(int,io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 742
    functionLinenumberEnd: 749
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].isRemoteInitiatedId(int)"
    - "[io.netty.handler.codec.spdy.SpdySession].removeStream(int,java.lang.Throwable,boolean)"
    - "[io.netty.handler.codec.spdy.SpdySession].noActiveStreams()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 4
    ICount: 15
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:745"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:748"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:747"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:745"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:748"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:747"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:743,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].isRemoteInitiatedId(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:743,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].removeStream(int,java.lang.Throwable,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:745,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].noActiveStreams()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:746,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].isRemoteInitiatedId(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 690
    functionLinenumberEnd: 693
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyCodecUtil].isServerId(int)"
    functionUses: 11
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:692"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:690"
        BranchSideFuncs:
        - "isServerId(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:692"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:690"
        BranchSideFuncs:
        - "isServerId(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:692"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:690"
        BranchSideFuncs:
        - "isServerId(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:692"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:690"
        BranchSideFuncs:
        - "isServerId(int)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:691,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyCodecUtil].isServerId(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].halfCloseStream(int,boolean,io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 731
    functionLinenumberEnd: 741
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySession].closeRemoteSide(int,boolean)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].isRemoteInitiatedId(int)"
    - "[io.netty.handler.codec.spdy.SpdySession].closeLocalSide(int,boolean)"
    - "[io.netty.handler.codec.spdy.SpdySession].noActiveStreams()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 7
    ICount: 20
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:732"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:735"
        BranchSideFuncs:
        - "closeRemoteSide(int,boolean)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:734"
        BranchSideFuncs:
        - "closeLocalSide(int,boolean)"
        - "isRemoteInitiatedId(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:737"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:740"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:739"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:737"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:740"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:739"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:733,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].isRemoteInitiatedId(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:733,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].closeRemoteSide(int,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:735,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].closeLocalSide(int,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:737,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].noActiveStreams()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:738,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].acceptStream(int,byte,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 712
    functionLinenumberEnd: 729
    functionDepth: 2
    returnType: "boolean"
    argCount: 4
    argTypes:
    - "int"
    - "byte"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].isRemoteInitiatedId(int)"
    - "[io.netty.handler.codec.spdy.SpdySession].numActiveStreams(boolean)"
    - "[io.netty.handler.codec.spdy.SpdySession].acceptStream(int,byte,boolean,boolean,int,int,boolean)"
    functionUses: 2
    ICount: 26
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:713"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:714"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:713"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:713"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:717"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:716"
        BranchSideFuncs:
        - "isRemoteInitiatedId(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:718"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:717"
        BranchSideFuncs:
        - "numActiveStreams(boolean)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:716"
        BranchSideFuncs:
        - "isRemoteInitiatedId(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:719"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:722"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:721"
        BranchSideFuncs:
        - "acceptStream(int,byte,boolean,boolean,int,int,boolean)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:725"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:728"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:727"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:717,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].isRemoteInitiatedId(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:719,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].numActiveStreams(boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:722,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].acceptStream(int,byte,boolean,boolean,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].updateInitialSendWindowSize(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 696
    functionLinenumberEnd: 701
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySession].updateAllSendWindowSizes(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:699,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].updateAllSendWindowSizes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].updateSendWindowSize(io.netty.channel.ChannelHandlerContext,int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 750
    functionLinenumberEnd: 811
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySession].updateSendWindowSize(int,int)"
    - "[io.netty.handler.codec.spdy.SpdySession].getPendingWrite(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].streamId()"
    - "[io.netty.handler.codec.spdy.SpdySession].getSendWindowSize(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].<init>(int,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$3].<init>(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdySession].removePendingWrite(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].isLast()"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].halfCloseStream(int,boolean,io.netty.channel.ChannelFuture)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$4].<init>(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.spdy.SpdyDataFrame].content()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.spdy.SpdyStreamFrame].streamId()"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.spdy.SpdyStreamFrame].isLast()"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 59
    EdgeCount: 49
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:756"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:760"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:759"
        BranchSideFuncs:
        - "min(int,int)"
        - "streamId()"
        - "getSendWindowSize(int)"
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:767"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:769"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:768"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:769"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:789"
        BranchSideFuncs:
        - "isLast()"
        - "removePendingWrite(int)"
        - "updateSendWindowSize(int,int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:795"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:801"
        BranchSideFuncs:
        - "halfCloseStream(int,boolean,io.netty.channel.ChannelFuture)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:800"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext)"
        - "writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:751,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].updateSendWindowSize(int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:755,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].getPendingWrite(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:761,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyDataFrame].content()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:761,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:762,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamFrame].streamId()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:763,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].getSendWindowSize(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:765,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:776,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:776,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].<init>(int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:780,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:780,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler$3].<init>(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:780,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:790,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].removePendingWrite(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:795,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamFrame].isLast()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:796,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].halfCloseStream(int,boolean,io.netty.channel.ChannelFuture)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:801,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:801,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler$4].<init>(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler$3].<init>(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler$3"
    linkageType: ""
    functionLinenumber: 779
    functionLinenumberEnd: 781
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.spdy.SpdySessionHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler$3:780,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler$4].<init>(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler$4"
    linkageType: ""
    functionLinenumber: 800
    functionLinenumberEnd: 802
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.spdy.SpdySessionHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler$4:801,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].channelInactive(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 414
    functionLinenumberEnd: 420
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySession].activeStreams()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[java.util.LinkedHashMap].keySet()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].keySet()"
    - "[java.util.IdentityHashMap].keySet()"
    - "[io.netty.util.collection.ByteObjectHashMap].keySet()"
    - "[java.util.TreeMap].keySet()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].keySet()"
    - "[java.util.concurrent.ConcurrentHashMap].keySet()"
    - "[io.netty.util.collection.LongObjectHashMap].keySet()"
    - "[java.util.Hashtable].keySet()"
    - "[java.util.jar.Attributes].keySet()"
    - "[java.util.WeakHashMap].keySet()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].keySet()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].keySet()"
    - "[java.util.AbstractMap].keySet()"
    - "[io.netty.util.collection.CharObjectHashMap].keySet()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].keySet()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].keySet()"
    - "[io.netty.util.collection.ShortObjectHashMap].keySet()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].keySet()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].keySet()"
    - "[java.security.Provider].keySet()"
    - "[java.util.Properties].keySet()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].keySet()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].keySet()"
    - "[java.util.HashMap].keySet()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].keySet()"
    - "[io.netty.util.collection.IntObjectHashMap].keySet()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.AbstractChannelHandlerContext].newSucceededFuture()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newSucceededFuture()"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].removeStream(int,io.netty.channel.ChannelFuture)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireChannelInactive()"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireChannelInactive()"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.ChannelOutboundInvoker].newSucceededFuture()"
    - "[io.netty.channel.ChannelHandlerContext].fireChannelInactive()"
    functionUses: 3
    ICount: 16
    EdgeCount: 166
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:415"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:418"
        BranchSideFuncs:
        - "newSucceededFuture()"
        - "hasNext()"
        - "activeStreams()"
        - "iterator()"
        - "intValue()"
        - "removeStream(int,io.netty.channel.ChannelFuture)"
        - "next()"
        - "keySet()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:417"
        BranchSideFuncs:
        - "fireChannelInactive()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:415,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].activeStreams()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:415,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:415,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:415,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:415,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:416,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:416,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newSucceededFuture()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:416,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].removeStream(int,io.netty.channel.ChannelFuture)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:418,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireChannelInactive()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 422
    functionLinenumberEnd: 429
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].issueSessionError(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:423"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:427"
        BranchSideFuncs:
        - "issueSessionError(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:426"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:424,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].issueSessionError(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:427,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 431
    functionLinenumberEnd: 434
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].sendGoAwayFrame(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:432,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].sendGoAwayFrame(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].sendGoAwayFrame(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 814
    functionLinenumberEnd: 828
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    - "[io.netty.channel.local.LocalServerChannel].isActive()"
    - "[io.netty.channel.Channel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    - "[io.netty.bootstrap.FailedChannel].isActive()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].sendGoAwayFrame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    - "[io.netty.handler.codec.spdy.SpdySession].noActiveStreams()"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener].<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 21
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:815"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:820"
        BranchSideFuncs:
        - "close(io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:819"
        BranchSideFuncs:
        - "noActiveStreams()"
        - "sendGoAwayFrame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:821"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:824"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:823"
        BranchSideFuncs:
        - "<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:815,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:815,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:816,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:820,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].sendGoAwayFrame(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:821,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].noActiveStreams()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:822,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler$ClosingChannelFutureListener].<init>(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:822,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 436
    functionLinenumberEnd: 452
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].handleOutboundMessage(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 3
    ICount: 26
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:437"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:446"
        BranchSideFuncs:
        - "handleOutboundMessage(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:437"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:446"
        BranchSideFuncs:
        - "handleOutboundMessage(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:437"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:446"
        BranchSideFuncs:
        - "handleOutboundMessage(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:437"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:446"
        BranchSideFuncs:
        - "handleOutboundMessage(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:437"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:446"
        BranchSideFuncs:
        - "handleOutboundMessage(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:437"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:446"
        BranchSideFuncs:
        - "handleOutboundMessage(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:437"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:446"
        BranchSideFuncs:
        - "handleOutboundMessage(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:437"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:446"
        BranchSideFuncs:
        - "handleOutboundMessage(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:437"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:448"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:447,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].handleOutboundMessage(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:449,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].handleOutboundMessage(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 453
    functionLinenumberEnd: 647
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].streamId()"
    - "[io.netty.handler.codec.spdy.SpdySession].isLocalSideClosed(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].release()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.spdy.SpdySession].getSendWindowSize(int)"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.handler.codec.spdy.SpdySession$PendingWrite].<init>(io.netty.handler.codec.spdy.SpdyDataFrame,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.spdy.SpdySession].putPendingWrite(int,io.netty.handler.codec.spdy.SpdySession$PendingWrite)"
    - "[io.netty.handler.codec.spdy.SpdySession].updateSendWindowSize(int,int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].<init>(int,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$1].<init>(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$2].<init>(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyStreamFrame].isLast()"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].halfCloseStream(int,boolean,io.netty.channel.ChannelFuture)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].isRemoteInitiatedId(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].priority()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].isUnidirectional()"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].acceptStream(int,byte,boolean,boolean)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].removeStream(int,io.netty.channel.ChannelFuture)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].getValue(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].isPersisted(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].removeValue(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].setPersistValue(int,boolean)"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].updateInitialReceiveWindowSize(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].id()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.util.concurrent.atomic.AtomicInteger].getAndIncrement()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.spdy.SpdyStreamFrame].streamId()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.spdy.SpdyDataFrame].content()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.spdy.SpdyStreamFrame].isLast()"
    - "[io.netty.handler.codec.spdy.SpdySynStreamFrame].priority()"
    - "[io.netty.handler.codec.spdy.SpdySynStreamFrame].isUnidirectional()"
    - "[io.netty.handler.codec.spdy.SpdySettingsFrame].getValue(int)"
    - "[io.netty.handler.codec.spdy.SpdySettingsFrame].isPersisted(int)"
    - "[io.netty.handler.codec.spdy.SpdySettingsFrame].removeValue(int)"
    - "[io.netty.handler.codec.spdy.SpdySettingsFrame].setPersistValue(int,boolean)"
    - "[io.netty.handler.codec.spdy.SpdyPingFrame].id()"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 171
    EdgeCount: 135
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:454"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:453"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:460"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:479"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:478"
        BranchSideFuncs:
        - "min(int,int)"
        - "getSendWindowSize(int)"
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:484"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:487"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:488"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:513"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "updateSendWindowSize(int,int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:531"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:535"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:534"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:454"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:453"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:540"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:545"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:544"
        BranchSideFuncs:
        - "isUnidirectional()"
        - "acceptStream(int,byte,boolean,boolean)"
        - "priority()"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:548"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:553"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:552"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:454"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:453"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:559"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:560"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:559"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:559"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:565"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:564"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:565"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:569"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:568"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:454"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:453"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:454"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:453"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:579"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:585"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:579"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:585"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:587"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:594"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:593"
        BranchSideFuncs:
        - "isPersisted(int)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:594"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:597"
        BranchSideFuncs:
        - "removeValue(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:596"
        BranchSideFuncs:
        - "getValue(int)"
        - "setPersistValue(int,boolean)"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:601"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:605"
        BranchSideFuncs:
        - "updateInitialReceiveWindowSize(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:604"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:454"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:453"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:608"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:613"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "toString()"
        - "id()"
        - "append(int)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:612"
        BranchSideFuncs:
        - "getAndIncrement()"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:454"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:621"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:622"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:621"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:628"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:634"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:633"
        BranchSideFuncs:
        - "isLast()"
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:634"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:638"
        BranchSideFuncs:
        - "halfCloseStream(int,boolean,io.netty.channel.ChannelFuture)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:637"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler:622"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler:644"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:457,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamFrame].streamId()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:460,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].isLocalSideClosed(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:461,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:462,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:479,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyDataFrame].content()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:479,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:480,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].getSendWindowSize(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:482,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:486,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession$PendingWrite].<init>(io.netty.handler.codec.spdy.SpdyDataFrame,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:486,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].putPendingWrite(int,io.netty.handler.codec.spdy.SpdySession$PendingWrite)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:490,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].updateSendWindowSize(int,int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:495,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:495,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].<init>(int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:503,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:503,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler$1].<init>(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:503,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:520,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler$2].<init>(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:520,1"
      Dst: "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:531,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamFrame].isLast()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:532,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].halfCloseStream(int,boolean,io.netty.channel.ChannelFuture)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:540,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].isRemoteInitiatedId(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:545,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySynStreamFrame].priority()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:546,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySynStreamFrame].isUnidirectional()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:548,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].acceptStream(int,byte,boolean,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:572,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].removeStream(int,io.netty.channel.ChannelFuture)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:578,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySettingsFrame].getValue(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:594,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySettingsFrame].isPersisted(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:595,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySettingsFrame].removeValue(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:597,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySettingsFrame].setPersistValue(int,boolean)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:602,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].updateInitialReceiveWindowSize(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:608,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyPingFrame].id()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:609,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:609,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:610,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:610,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:610,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:609,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:613,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].getAndIncrement()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:645,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 51
    CyclomaticComplexity: 16
  - functionName: "[io.netty.handler.codec.spdy.SpdySession$PendingWrite].<init>(io.netty.handler.codec.spdy.SpdyDataFrame,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySession$PendingWrite"
    linkageType: ""
    functionLinenumber: 346
    functionLinenumberEnd: 351
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyDataFrame"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySession$PendingWrite:347,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler$1].<init>(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler$1"
    linkageType: ""
    functionLinenumber: 502
    functionLinenumberEnd: 504
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.spdy.SpdySessionHandler"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler$1:503,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler].updateInitialReceiveWindowSize(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler"
    linkageType: ""
    functionLinenumber: 703
    functionLinenumberEnd: 708
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySession].updateAllReceiveWindowSizes(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler:706,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySession].updateAllReceiveWindowSizes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.RotationalDnsServerAddresses].<init>(java.util.List)"
    functionSourceFile: "io.netty.resolver.dns.RotationalDnsServerAddresses"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultDnsServerAddresses].<init>(java.lang.String,java.util.List)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.RotationalDnsServerAddresses:32,1"
      Dst: "[io.netty.resolver.dns.DefaultDnsServerAddresses].<init>(java.lang.String,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.RotationalDnsServerAddresses].stream()"
    functionSourceFile: "io.netty.resolver.dns.RotationalDnsServerAddresses"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 47
    functionDepth: 1
    returnType: "io.netty.resolver.dns.DnsServerAddressStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[io.netty.handler.codec.CodecOutputList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].<init>(java.util.List,int)"
    - "[java.util.List].size()"
    - "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    functionUses: 7
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.RotationalDnsServerAddresses:40"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.RotationalDnsServerAddresses:43"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.RotationalDnsServerAddresses:42"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.RotationalDnsServerAddresses:43"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.RotationalDnsServerAddresses:46"
        BranchSideFuncs:
        - "<init>(java.util.List,int)"
      - BranchSide: "io.netty.resolver.dns.RotationalDnsServerAddresses:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.RotationalDnsServerAddresses:40,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.resolver.dns.RotationalDnsServerAddresses:43,1"
      Dst: "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    - Src: "io.netty.resolver.dns.RotationalDnsServerAddresses:44,1"
      Dst: "[io.netty.resolver.dns.SequentialDnsServerAddressStream].<init>(java.util.List,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>()"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:47,1"
      Dst: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:54,1"
      Dst: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(java.util.concurrent.ThreadFactory)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.concurrent.ThreadFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:62,1"
      Dst: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,io.netty.channel.SelectStrategyFactory)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.channel.SelectStrategyFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,io.netty.channel.SelectStrategyFactory)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:70,1"
      Dst: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,io.netty.channel.SelectStrategyFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.concurrent.ThreadFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:78,1"
      Dst: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.Executor)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.concurrent.Executor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.channel.SelectStrategyFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:82,1"
      Dst: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.channel.SelectStrategyFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,io.netty.channel.SelectStrategyFactory)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.util.concurrent.ThreadFactory"
    - "io.netty.channel.SelectStrategyFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,int,io.netty.channel.SelectStrategyFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:90,1"
      Dst: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,int,io.netty.channel.SelectStrategyFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,int)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.util.concurrent.ThreadFactory"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,int,io.netty.channel.SelectStrategyFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:101,1"
      Dst: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,int,io.netty.channel.SelectStrategyFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,int,io.netty.channel.SelectStrategyFactory)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.util.concurrent.ThreadFactory"
    - "int"
    - "io.netty.channel.SelectStrategyFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.util.concurrent.RejectedExecutionHandlers].reject()"
    - "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.lang.Object[])"
    - "[io.netty.channel.epoll.Epoll].ensureAvailability()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:114,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:114,1"
      Dst: "[io.netty.util.concurrent.RejectedExecutionHandlers].reject()"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:114,1"
      Dst: "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.lang.Object[])"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:40,1"
      Dst: "[io.netty.channel.epoll.Epoll].ensureAvailability()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.channel.SelectStrategyFactory)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.util.concurrent.Executor"
    - "io.netty.channel.SelectStrategyFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.util.concurrent.RejectedExecutionHandlers].reject()"
    - "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,java.lang.Object[])"
    - "[io.netty.channel.epoll.Epoll].ensureAvailability()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:118,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:118,1"
      Dst: "[io.netty.util.concurrent.RejectedExecutionHandlers].reject()"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:118,1"
      Dst: "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,java.lang.Object[])"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:40,1"
      Dst: "[io.netty.channel.epoll.Epoll].ensureAvailability()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,io.netty.channel.SelectStrategyFactory)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.util.concurrent.Executor"
    - "io.netty.util.concurrent.EventExecutorChooserFactory"
    - "io.netty.channel.SelectStrategyFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.util.concurrent.RejectedExecutionHandlers].reject()"
    - "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.lang.Object[])"
    - "[io.netty.channel.epoll.Epoll].ensureAvailability()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:123,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:123,1"
      Dst: "[io.netty.util.concurrent.RejectedExecutionHandlers].reject()"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:123,1"
      Dst: "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.lang.Object[])"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:40,1"
      Dst: "[io.netty.channel.epoll.Epoll].ensureAvailability()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,io.netty.channel.SelectStrategyFactory,io.netty.util.concurrent.RejectedExecutionHandler)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "java.util.concurrent.Executor"
    - "io.netty.util.concurrent.EventExecutorChooserFactory"
    - "io.netty.channel.SelectStrategyFactory"
    - "io.netty.util.concurrent.RejectedExecutionHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.lang.Object[])"
    - "[io.netty.channel.epoll.Epoll].ensureAvailability()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:129,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:129,1"
      Dst: "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.lang.Object[])"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:40,1"
      Dst: "[io.netty.channel.epoll.Epoll].ensureAvailability()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,io.netty.channel.SelectStrategyFactory,io.netty.util.concurrent.RejectedExecutionHandler,io.netty.channel.EventLoopTaskQueueFactory)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "java.util.concurrent.Executor"
    - "io.netty.util.concurrent.EventExecutorChooserFactory"
    - "io.netty.channel.SelectStrategyFactory"
    - "io.netty.util.concurrent.RejectedExecutionHandler"
    - "io.netty.channel.EventLoopTaskQueueFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.lang.Object[])"
    - "[io.netty.channel.epoll.Epoll].ensureAvailability()"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:136,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:136,1"
      Dst: "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.lang.Object[])"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:40,1"
      Dst: "[io.netty.channel.epoll.Epoll].ensureAvailability()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,io.netty.channel.SelectStrategyFactory,io.netty.util.concurrent.RejectedExecutionHandler,io.netty.channel.EventLoopTaskQueueFactory,io.netty.channel.EventLoopTaskQueueFactory)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "int"
    - "java.util.concurrent.Executor"
    - "io.netty.util.concurrent.EventExecutorChooserFactory"
    - "io.netty.channel.SelectStrategyFactory"
    - "io.netty.util.concurrent.RejectedExecutionHandler"
    - "io.netty.channel.EventLoopTaskQueueFactory"
    - "io.netty.channel.EventLoopTaskQueueFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.lang.Object[])"
    - "[io.netty.channel.epoll.Epoll].ensureAvailability()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:157,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:157,1"
      Dst: "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.lang.Object[])"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:40,1"
      Dst: "[io.netty.channel.epoll.Epoll].ensureAvailability()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventLoopGroup].setIoRatio(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.epoll.EpollEventLoop].setIoRatio(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollEventLoopGroup:166"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoopGroup:169"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollEventLoopGroup:168"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:166,1"
      Dst: "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:166,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:166,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:167,1"
      Dst: "[io.netty.channel.epoll.EpollEventLoop].setIoRatio(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollEventLoop].setIoRatio(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:273"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:274"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:273"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:273"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:276"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:275"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoop:274,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.epoll.EpollEventLoop:274,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.epoll.EpollEventLoop:274,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.epoll.EpollEventLoop:274,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.epoll.EpollEventLoop:274,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollEventLoopGroup].newChild(java.util.concurrent.Executor,java.lang.Object[])"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.EventLoop"
    argCount: 2
    argTypes:
    - "java.util.concurrent.Executor"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.SelectStrategyFactory].newSelectStrategy()"
    - "[io.netty.channel.epoll.EpollEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor,int,io.netty.channel.SelectStrategy,io.netty.util.concurrent.RejectedExecutionHandler,io.netty.channel.EventLoopTaskQueueFactory,io.netty.channel.EventLoopTaskQueueFactory)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollEventLoopGroup:180"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoopGroup:183"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollEventLoopGroup:182"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollEventLoopGroup:183"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoopGroup:186"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollEventLoopGroup:185"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:186,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:187,1"
      Dst: "[io.netty.channel.SelectStrategyFactory].newSelectStrategy()"
    - Src: "io.netty.channel.epoll.EpollEventLoopGroup:187,1"
      Dst: "[io.netty.channel.epoll.EpollEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor,int,io.netty.channel.SelectStrategy,io.netty.util.concurrent.RejectedExecutionHandler,io.netty.channel.EventLoopTaskQueueFactory,io.netty.channel.EventLoopTaskQueueFactory)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.epoll.EpollEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor,int,io.netty.channel.SelectStrategy,io.netty.util.concurrent.RejectedExecutionHandler,io.netty.channel.EventLoopTaskQueueFactory,io.netty.channel.EventLoopTaskQueueFactory)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 7
    argTypes:
    - "io.netty.channel.EventLoopGroup"
    - "java.util.concurrent.Executor"
    - "int"
    - "io.netty.channel.SelectStrategy"
    - "io.netty.util.concurrent.RejectedExecutionHandler"
    - "io.netty.channel.EventLoopTaskQueueFactory"
    - "io.netty.channel.EventLoopTaskQueueFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollEventLoop].newTaskQueue(io.netty.channel.EventLoopTaskQueueFactory)"
    - "[io.netty.channel.SingleThreadEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor,boolean,java.util.Queue,java.util.Queue,io.netty.util.concurrent.RejectedExecutionHandler)"
    - "[io.netty.util.collection.IntObjectHashMap].<init>(int)"
    - "[io.netty.channel.epoll.EpollEventLoop$1].<init>(io.netty.channel.epoll.EpollEventLoop)"
    - "[java.util.concurrent.atomic.AtomicLong].<init>(long)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.epoll.EpollEventArray].<init>(int)"
    - "[io.netty.channel.epoll.Native].newEpollCreate()"
    - "[io.netty.channel.epoll.Native].newEventFd()"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.Native].epollCtlAdd(int,int,int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.epoll.Native].newTimerFd()"
    - "[io.netty.channel.unix.FileDescriptor].close()"
    functionUses: 0
    ICount: 98
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:98"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:101"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:129"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:153"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:152"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:130"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:137"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:144"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:143"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:144"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:153"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:152"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:129"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:152"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:151"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:130"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:137"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:144"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:143"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:144"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:152"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoop:95,1"
      Dst: "[io.netty.channel.epoll.EpollEventLoop].newTaskQueue(io.netty.channel.EventLoopTaskQueueFactory)"
    - Src: "io.netty.channel.epoll.EpollEventLoop:95,1"
      Dst: "[io.netty.channel.SingleThreadEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor,boolean,java.util.Queue,java.util.Queue,io.netty.util.concurrent.RejectedExecutionHandler)"
    - Src: "io.netty.channel.epoll.EpollEventLoop:62,1"
      Dst: "[io.netty.util.collection.IntObjectHashMap].<init>(int)"
    - Src: "io.netty.channel.epoll.EpollEventLoop:71,1"
      Dst: "[io.netty.channel.epoll.EpollEventLoop$1].<init>(io.netty.channel.epoll.EpollEventLoop)"
    - Src: "io.netty.channel.epoll.EpollEventLoop:85,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].<init>(long)"
    - Src: "io.netty.channel.epoll.EpollEventLoop:97,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.epoll.EpollEventLoop:100,1"
      Dst: "[io.netty.channel.epoll.EpollEventArray].<init>(int)"
    - Src: "io.netty.channel.epoll.EpollEventLoop:110,1"
      Dst: "[io.netty.channel.epoll.Native].newEpollCreate()"
    - Src: "io.netty.channel.epoll.EpollEventLoop:111,1"
      Dst: "[io.netty.channel.epoll.Native].newEventFd()"
    - Src: "io.netty.channel.epoll.EpollEventLoop:115,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.EpollEventLoop:115,1"
      Dst: "[io.netty.channel.epoll.Native].epollCtlAdd(int,int,int)"
    - Src: "io.netty.channel.epoll.EpollEventLoop:117,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.epoll.EpollEventLoop:119,1"
      Dst: "[io.netty.channel.epoll.Native].newTimerFd()"
    - Src: "io.netty.channel.epoll.EpollEventLoop:132,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 29
    CyclomaticComplexity: 7
  - functionName: "[io.netty.channel.epoll.EpollEventLoop].newTaskQueue(io.netty.channel.EventLoopTaskQueueFactory)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.util.Queue"
    argCount: 1
    argTypes:
    - "io.netty.channel.EventLoopTaskQueueFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollEventLoop].newTaskQueue0(int)"
    - "[io.netty.channel.EventLoopTaskQueueFactory].newTaskQueue(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:157"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:160"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoop:158,1"
      Dst: "[io.netty.channel.epoll.EpollEventLoop].newTaskQueue0(int)"
    - Src: "io.netty.channel.epoll.EpollEventLoop:160,1"
      Dst: "[io.netty.channel.EventLoopTaskQueueFactory].newTaskQueue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventLoop].newTaskQueue0(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoop"
    linkageType: ""
    functionLinenumber: 256
    functionLinenumberEnd: 259
    functionDepth: 3
    returnType: "java.util.Queue"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].newMpscQueue()"
    - "[io.netty.util.internal.PlatformDependent].newMpscQueue(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollEventLoop:257"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:258"
        BranchSideFuncs:
        - "newMpscQueue(int)"
      - BranchSide: "io.netty.channel.epoll.EpollEventLoop:257"
        BranchSideFuncs:
        - "newMpscQueue(int)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoop:257,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newMpscQueue()"
    - Src: "io.netty.channel.epoll.EpollEventLoop:258,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newMpscQueue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].newMpscQueue(int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1047
    functionLinenumberEnd: 1049
    functionDepth: 2
    returnType: "java.util.Queue<T>"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent$Mpsc].newMpscQueue(int)"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1048,1"
      Dst: "[io.netty.util.internal.PlatformDependent$Mpsc].newMpscQueue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventLoop$1].<init>(io.netty.channel.epoll.EpollEventLoop)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventLoop$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.EpollEventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventLoop$1:71,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventArray].<init>(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventArray"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.channel.epoll.EpollEventArray].calculateBufferCapacity(int)"
    - "[io.netty.channel.unix.Buffer].allocateDirectWithNativeOrder(int)"
    - "[io.netty.channel.unix.Buffer].memoryAddress(java.nio.ByteBuffer)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollEventArray:54"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollEventArray:57"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollEventArray:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollEventArray:53,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.epoll.EpollEventArray:55,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.epoll.EpollEventArray:55,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.epoll.EpollEventArray:55,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.epoll.EpollEventArray:55,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.epoll.EpollEventArray:55,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.channel.epoll.EpollEventArray:58,1"
      Dst: "[io.netty.channel.epoll.EpollEventArray].calculateBufferCapacity(int)"
    - Src: "io.netty.channel.epoll.EpollEventArray:58,1"
      Dst: "[io.netty.channel.unix.Buffer].allocateDirectWithNativeOrder(int)"
    - Src: "io.netty.channel.epoll.EpollEventArray:59,1"
      Dst: "[io.netty.channel.unix.Buffer].memoryAddress(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollEventArray].calculateBufferCapacity(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollEventArray"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdStatus].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksCmdStatus"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdStatus:19,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdStatus].<init>(java.lang.String,int,byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdStatus"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 10
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdStatus:33,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdStatus].fromByte(byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.socks.SocksCmdStatus"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksCmdStatus].valueOf(byte)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdStatus:42,1"
      Dst: "[io.netty.handler.codec.socks.SocksCmdStatus].valueOf(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdStatus].byteValue()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdStatus"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].builder(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder].<init>(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:94,1"
      Dst: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactoryBuilder].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].<init>(java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].toFingerprintArray(java.lang.Iterable)"
    - "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].<init>(java.lang.String,byte[][])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:153,1"
      Dst: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].toFingerprintArray(java.lang.Iterable)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:153,1"
      Dst: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].<init>(java.lang.String,byte[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].<init>(java.lang.String[])"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].toFingerprintArray(java.lang.Iterable)"
    - "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].<init>(java.lang.String,byte[][])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:167,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:167,1"
      Dst: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].toFingerprintArray(java.lang.Iterable)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:167,1"
      Dst: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].<init>(java.lang.String,byte[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].<init>(byte[][])"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].<init>(java.lang.String,byte[][])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:181,1"
      Dst: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].<init>(java.lang.String,byte[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].toFingerprintArray(java.lang.Iterable<String>)"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "byte[][]"
    argCount: 1
    argTypes:
    - "java.lang.Iterable<String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].matches()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.util.regex.Matcher].replaceAll(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].decodeHexDump(java.lang.CharSequence)"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:241"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:254"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:253"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:242"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:246"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:245"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:246"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:249"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:248"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:238,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:240,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:241,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:241,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:241,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:246,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:246,1"
      Dst: "[java.util.regex.Matcher].matches()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:247,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:247,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:247,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:247,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:249,1"
      Dst: "[java.util.regex.Matcher].replaceAll(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:251,1"
      Dst: "[io.netty.util.internal.StringUtil].decodeHexDump(java.lang.CharSequence)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:251,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory:254,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].engineInit(java.security.KeyStore)"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.KeyStore"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].engineInit(javax.net.ssl.ManagerFactoryParameters)"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.ManagerFactoryParameters"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].engineGetTrustManagers()"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.TrustManager[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].access$000(io.netty.handler.ssl.util.FingerprintTrustManagerFactory)"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[][]"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.util.FingerprintTrustManagerFactory"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].access$100(io.netty.handler.ssl.util.FingerprintTrustManagerFactory)"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.FastThreadLocal"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.util.FingerprintTrustManagerFactory"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuestion].<init>(java.lang.String,io.netty.handler.codec.dns.DnsRecordType)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuestion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecordType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].<init>(java.lang.String,io.netty.handler.codec.dns.DnsRecordType,long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuestion:34,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsRecord].<init>(java.lang.String,io.netty.handler.codec.dns.DnsRecordType,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuestion].<init>(java.lang.String,io.netty.handler.codec.dns.DnsRecordType,int)"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuestion"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.dns.DnsRecordType"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].<init>(java.lang.String,io.netty.handler.codec.dns.DnsRecordType,int,long)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuestion:53,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsRecord].<init>(java.lang.String,io.netty.handler.codec.dns.DnsRecordType,int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DefaultDnsQuestion].toString()"
    functionSourceFile: "io.netty.handler.codec.dns.DefaultDnsQuestion"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 71
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].name()"
    - "[io.netty.handler.codec.dns.DnsMessageUtil].appendRecordClass(java.lang.StringBuilder,int)"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].dnsClass()"
    - "[io.netty.handler.codec.dns.DnsRecordType].name()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].type()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 21
    ICount: 18
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuestion:58,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuestion:60,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuestion:60,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuestion:61,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuestion:62,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsRecord].name()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuestion:65,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsRecord].dnsClass()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuestion:65,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].appendRecordClass(java.lang.StringBuilder,int)"
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuestion:67,1"
      Dst: "[io.netty.handler.codec.dns.AbstractDnsRecord].type()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuestion:67,1"
      Dst: "[io.netty.handler.codec.dns.DnsRecordType].name()"
    - Src: "io.netty.handler.codec.dns.DefaultDnsQuestion:70,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.Cache$Entries].<init>(io.netty.resolver.dns.Cache,java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.Cache$Entries"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.resolver.dns.Cache"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicReference].<init>(java.lang.Object)"
    - "[java.util.Collections].emptyList()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.Cache$Entries:169,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.resolver.dns.Cache$Entries:169,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.Cache$Entries].add(java.lang.Object,int,io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.resolver.dns.Cache$Entries"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 232
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "int"
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1].shouldReplaceAll(java.lang.Object)"
    - "[io.netty.resolver.dns.DefaultDnsCnameCache$1].shouldReplaceAll(java.lang.Object)"
    - "[io.netty.resolver.dns.DefaultDnsCache$1].shouldReplaceAll(java.lang.Object)"
    - "[java.util.concurrent.atomic.AtomicReference].get()"
    - "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - "[jaz.Zer].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[java.util.Collections].singletonList(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.resolver.dns.Cache$Entries].scheduleCacheExpirationIfNeeded(int,io.netty.channel.EventLoop)"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.resolver.dns.DefaultDnsCnameCache$1].equals(java.lang.Object,java.lang.Object)"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1].equals(java.lang.Object,java.lang.Object)"
    - "[io.netty.resolver.dns.DefaultDnsCache$1].equals(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache$1].sortEntries(java.lang.String,java.util.List)"
    - "[io.netty.resolver.dns.Cache].sortEntries(java.lang.String,java.util.List)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    - "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    - "[io.netty.resolver.dns.Cache].shouldReplaceAll(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    - "[java.util.List].size()"
    - "[io.netty.resolver.dns.Cache].equals(java.lang.Object,java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 72
    EdgeCount: 98
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.Cache$Entries:174"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:227"
        BranchSideFuncs:
        - "set(java.lang.Object)"
        - "singletonList(java.lang.Object)"
        - "scheduleCacheExpirationIfNeeded(int,io.netty.channel.EventLoop)"
    - Branch String: "io.netty.resolver.dns.Cache$Entries:177"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:176"
        BranchSideFuncs:
        - "shouldReplaceAll(java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:175"
        BranchSideFuncs:
        - "isEmpty()"
        - "get()"
    - Branch String: "io.netty.resolver.dns.Cache$Entries:179"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:192"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:191"
        BranchSideFuncs:
        - "<init>(int)"
    - Branch String: "io.netty.resolver.dns.Cache$Entries:180"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:181"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.Cache$Entries:180"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:181"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.Cache$Entries:182"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:176"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:175"
        BranchSideFuncs:
        - "isEmpty()"
        - "get()"
    - Branch String: "io.netty.resolver.dns.Cache$Entries:200"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:203"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:202"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.Cache$Entries:207"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:212"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.Cache$Entries:212"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:196"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:195"
        BranchSideFuncs:
        - "equals(java.lang.Object,java.lang.Object)"
    - Branch String: "io.netty.resolver.dns.Cache$Entries:213"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:216"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:215"
        BranchSideFuncs:
        - "unmodifiableList(java.util.List)"
        - "sortEntries(java.lang.String,java.util.List)"
        - "compareAndSet(java.lang.Object,java.lang.Object)"
    - Branch String: "io.netty.resolver.dns.Cache$Entries:218"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:222"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:221"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.Cache$Entries:177"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:226"
        BranchSideFuncs:
        - "shouldReplaceAll(java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:225"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.Cache$Entries:174,1"
      Dst: "[io.netty.resolver.dns.Cache].shouldReplaceAll(java.lang.Object)"
    - Src: "io.netty.resolver.dns.Cache$Entries:176,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].get()"
    - Src: "io.netty.resolver.dns.Cache$Entries:177,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.resolver.dns.Cache$Entries:178,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.resolver.dns.Cache$Entries:180,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.resolver.dns.Cache$Entries:180,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.resolver.dns.Cache$Entries:182,1"
      Dst: "[java.util.Collections].singletonList(java.lang.Object)"
    - Src: "io.netty.resolver.dns.Cache$Entries:182,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].compareAndSet(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.resolver.dns.Cache$Entries:183,1"
      Dst: "[io.netty.resolver.dns.Cache$Entries].scheduleCacheExpirationIfNeeded(int,io.netty.channel.EventLoop)"
    - Src: "io.netty.resolver.dns.Cache$Entries:192,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.resolver.dns.Cache$Entries:200,1"
      Dst: "[io.netty.resolver.dns.Cache].equals(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.resolver.dns.Cache$Entries:201,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.resolver.dns.Cache$Entries:216,1"
      Dst: "[io.netty.resolver.dns.Cache].sortEntries(java.lang.String,java.util.List)"
    - Src: "io.netty.resolver.dns.Cache$Entries:218,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    - Src: "io.netty.resolver.dns.Cache$Entries:228,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].set(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 24
    CyclomaticComplexity: 9
  - functionName: "[io.netty.resolver.dns.Cache$Entries].scheduleCacheExpirationIfNeeded(int,io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.resolver.dns.Cache$Entries"
    linkageType: ""
    functionLinenumber: 237
    functionLinenumberEnd: 261
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.Cache].access$000()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].getDelay(java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].getDelay(java.util.concurrent.TimeUnit)"
    - "[io.netty.resolver.dns.Cache$1].getDelay(java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.resolver.dns.Cache$1].cancel(boolean)"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].get(java.lang.Object)"
    - "[java.util.concurrent.Delayed].getDelay(java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.Future].cancel(boolean)"
    functionUses: 4
    ICount: 25
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.Cache$Entries:239"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:240"
        BranchSideFuncs:
        - "schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "access$000()"
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:239"
        BranchSideFuncs:
        - "schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "access$000()"
    - Branch String: "io.netty.resolver.dns.Cache$Entries:239"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:260"
        BranchSideFuncs:
        - "schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "access$000()"
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:259"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.Cache$Entries:247"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:254"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:253"
        BranchSideFuncs:
        - "cancel(boolean)"
    - Branch String: "io.netty.resolver.dns.Cache$Entries:248"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:260"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:259"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.Cache$Entries:238,1"
      Dst: "[io.netty.resolver.dns.Cache].access$000()"
    - Src: "io.netty.resolver.dns.Cache$Entries:238,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].get(java.lang.Object)"
    - Src: "io.netty.resolver.dns.Cache$Entries:239,1"
      Dst: "[java.util.concurrent.Delayed].getDelay(java.util.concurrent.TimeUnit)"
    - Src: "io.netty.resolver.dns.Cache$Entries:240,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - Src: "io.netty.resolver.dns.Cache$Entries:247,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].compareAndSet(java.lang.Object,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.resolver.dns.Cache$Entries:249,1"
      Dst: "[java.util.concurrent.Future].cancel(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 5
  - functionName: "[io.netty.resolver.dns.Cache$Entries].clearAndCancel()"
    functionSourceFile: "io.netty.resolver.dns.Cache$Entries"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 274
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].emptyList()"
    - "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - "[jaz.Zer].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[java.util.Vector].isEmpty()"
    - "[io.netty.resolver.dns.Cache].access$000()"
    - "[io.netty.resolver.dns.Cache].access$100()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].cancel(boolean)"
    - "[io.netty.util.concurrent.PromiseTask].cancel(boolean)"
    - "[io.netty.resolver.dns.Cache$1].cancel(boolean)"
    - "[java.util.List].isEmpty()"
    - "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].getAndSet(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.Future].cancel(boolean)"
    functionUses: 2
    ICount: 14
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.Cache$Entries:264"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:268"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:267"
        BranchSideFuncs:
        - "access$100()"
        - "access$000()"
    - Branch String: "io.netty.resolver.dns.Cache$Entries:269"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:273"
        BranchSideFuncs:
        - "cancel(boolean)"
      - BranchSide: "io.netty.resolver.dns.Cache$Entries:272"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.Cache$Entries:263,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.resolver.dns.Cache$Entries:263,1"
      Dst: "[java.util.concurrent.atomic.AtomicReference].getAndSet(java.lang.Object)"
    - Src: "io.netty.resolver.dns.Cache$Entries:264,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.resolver.dns.Cache$Entries:268,1"
      Dst: "[io.netty.resolver.dns.Cache].access$000()"
    - Src: "io.netty.resolver.dns.Cache$Entries:268,1"
      Dst: "[io.netty.resolver.dns.Cache].access$100()"
    - Src: "io.netty.resolver.dns.Cache$Entries:268,1"
      Dst: "[java.util.concurrent.atomic.AtomicReferenceFieldUpdater].getAndSet(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.resolver.dns.Cache$Entries:270,1"
      Dst: "[java.util.concurrent.Future].cancel(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.Cache$Entries].run()"
    functionSourceFile: "io.netty.resolver.dns.Cache$Entries"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 291
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.Cache].access$200(io.netty.resolver.dns.Cache)"
    - "[java.util.concurrent.ConcurrentHashMap].remove(java.lang.Object,java.lang.Object)"
    - "[io.netty.resolver.dns.Cache$Entries].clearAndCancel()"
    - "[java.util.concurrent.ConcurrentMap].remove(java.lang.Object,java.lang.Object)"
    functionUses: 49
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.Cache$Entries:287,1"
      Dst: "[io.netty.resolver.dns.Cache].access$200(io.netty.resolver.dns.Cache)"
    - Src: "io.netty.resolver.dns.Cache$Entries:287,1"
      Dst: "[java.util.concurrent.ConcurrentMap].remove(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.resolver.dns.Cache$Entries:289,1"
      Dst: "[io.netty.resolver.dns.Cache$Entries].clearAndCancel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].<init>(io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ComposedLastHttpContent:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].<init>(io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.DecoderResult)"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpHeaders"
    - "io.netty.handler.codec.DecoderResult"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].<init>(io.netty.handler.codec.http.HttpHeaders)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ComposedLastHttpContent:32,1"
      Dst: "[io.netty.handler.codec.http.ComposedLastHttpContent].<init>(io.netty.handler.codec.http.HttpHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].trailingHeaders()"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].copy()"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpHeaders].set(io.netty.handler.codec.http.HttpHeaders)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ComposedLastHttpContent:43,1"
      Dst: "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.ComposedLastHttpContent:44,1"
      Dst: "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - Src: "io.netty.handler.codec.http.ComposedLastHttpContent:44,1"
      Dst: "[io.netty.handler.codec.http.ComposedLastHttpContent].trailingHeaders()"
    - Src: "io.netty.handler.codec.http.ComposedLastHttpContent:44,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(io.netty.handler.codec.http.HttpHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].duplicate()"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].copy()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ComposedLastHttpContent:50,1"
      Dst: "[io.netty.handler.codec.http.ComposedLastHttpContent].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].copy()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ComposedLastHttpContent:55,1"
      Dst: "[io.netty.handler.codec.http.ComposedLastHttpContent].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpHeaders].setAll(io.netty.handler.codec.http.HttpHeaders)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ComposedLastHttpContent:60,1"
      Dst: "[io.netty.handler.codec.http.DefaultLastHttpContent].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.ComposedLastHttpContent:61,1"
      Dst: "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - Src: "io.netty.handler.codec.http.ComposedLastHttpContent:61,1"
      Dst: "[io.netty.handler.codec.http.ComposedLastHttpContent].trailingHeaders()"
    - Src: "io.netty.handler.codec.http.ComposedLastHttpContent:61,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].setAll(io.netty.handler.codec.http.HttpHeaders)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].retain()"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].touch()"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.LastHttpContent"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].content()"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].decoderResult()"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "io.netty.handler.codec.DecoderResult"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].getDecoderResult()"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.DecoderResult"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].decoderResult()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.ComposedLastHttpContent:97,1"
      Dst: "[io.netty.handler.codec.http.ComposedLastHttpContent].decoderResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.DecoderResult"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].refCnt()"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].release()"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.ComposedLastHttpContent].release(int)"
    functionSourceFile: "io.netty.handler.codec.http.ComposedLastHttpContent"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalAddress].<init>(java.lang.String)"
    functionSourceFile: "io.netty.channel.local.LocalAddress"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.SocketAddress].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNonEmptyAfterTrim(java.lang.String,java.lang.String)"
    - "[java.lang.String].toLowerCase()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 14
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalAddress:55,1"
      Dst: "[java.net.SocketAddress].<init>()"
    - Src: "io.netty.channel.local.LocalAddress:56,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNonEmptyAfterTrim(java.lang.String,java.lang.String)"
    - Src: "io.netty.channel.local.LocalAddress:56,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "io.netty.channel.local.LocalAddress:57,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.local.LocalAddress:57,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.local.LocalAddress:57,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalAddress].<init>(java.lang.Class)"
    functionSourceFile: "io.netty.channel.local.LocalAddress"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.util.UUID].randomUUID()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.local.LocalAddress].<init>(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalAddress:64,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.local.LocalAddress:64,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "io.netty.channel.local.LocalAddress:64,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.local.LocalAddress:64,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.channel.local.LocalAddress:64,1"
      Dst: "[java.util.UUID].randomUUID()"
    - Src: "io.netty.channel.local.LocalAddress:64,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.channel.local.LocalAddress:64,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.local.LocalAddress:64,1"
      Dst: "[io.netty.channel.local.LocalAddress].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalAddress].id()"
    functionSourceFile: "io.netty.channel.local.LocalAddress"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalAddress].hashCode()"
    functionSourceFile: "io.netty.channel.local.LocalAddress"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalAddress:76,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalAddress].compareTo(io.netty.channel.local.LocalAddress)"
    functionSourceFile: "io.netty.channel.local.LocalAddress"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.local.LocalAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].compareTo(java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalAddress:90,1"
      Dst: "[java.lang.String].compareTo(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalAddress].toString()"
    functionSourceFile: "io.netty.channel.local.LocalAddress"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalAddress].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.channel.local.LocalAddress"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalAddress].compareTo(io.netty.channel.local.LocalAddress)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalAddress:29,1"
      Dst: "[io.netty.channel.local.LocalAddress].compareTo(io.netty.channel.local.LocalAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackUtil$IndexType].values()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackUtil$IndexType"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.HpackUtil$IndexType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 2
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackUtil$IndexType:79,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackUtil$IndexType].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackUtil$IndexType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.HpackUtil$IndexType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackUtil$IndexType:79,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackUtil$IndexType].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackUtil$IndexType"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackUtil$IndexType:79,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthStatus].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksAuthStatus"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthStatus:19,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthStatus].<init>(java.lang.String,int,byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthStatus"
    linkageType: ""
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthStatus:25,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthStatus].fromByte(byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.socks.SocksAuthStatus"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksAuthStatus].valueOf(byte)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthStatus:34,1"
      Dst: "[io.netty.handler.codec.socks.SocksAuthStatus].valueOf(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtProvider].channelUDT(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.barchart.udt.nio.ChannelUDT"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].javaChannel()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].javaChannel()"
    functionUses: 0
    ICount: 38
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.udt.nio.NioUdtProvider:109"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.nio.NioUdtProvider:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.udt.nio.NioUdtProvider:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.nio.NioUdtProvider:112"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.nio.NioUdtProvider:115"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.udt.nio.NioUdtProvider:114"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.nio.NioUdtProvider:115"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.nio.NioUdtProvider:120"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.udt.nio.NioUdtProvider:119"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.nio.NioUdtProvider:120"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.nio.NioUdtProvider:123"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.udt.nio.NioUdtProvider:122"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.nio.NioUdtProvider:123"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.nio.NioUdtProvider:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.udt.nio.NioUdtProvider:125"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.nio.NioUdtProvider:126"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.nio.NioUdtProvider:130"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.udt.nio.NioUdtProvider:129"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:110,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].javaChannel()"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:113,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].javaChannel()"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:124,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].javaChannel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].javaChannel()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "com.barchart.udt.nio.SocketChannelUDT"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].javaChannel()"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel:211,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].javaChannel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtProvider].newAcceptorChannelUDT(com.barchart.udt.TypeUDT)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtProvider"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 142
    functionDepth: 1
    returnType: "com.barchart.udt.nio.ServerSocketChannelUDT"
    argCount: 1
    argTypes:
    - "com.barchart.udt.TypeUDT"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.barchart.udt.nio.SelectorProviderUDT].'from'(com.barchart.udt.TypeUDT)"
    - "[com.barchart.udt.nio.SelectorProviderUDT].openServerSocketChannel()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:139,1"
      Dst: "[com.barchart.udt.nio.SelectorProviderUDT].'from'(com.barchart.udt.TypeUDT)"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:139,1"
      Dst: "[com.barchart.udt.nio.SelectorProviderUDT].openServerSocketChannel()"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:141,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtProvider].newConnectorChannelUDT(com.barchart.udt.TypeUDT)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtProvider"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 153
    functionDepth: 1
    returnType: "com.barchart.udt.nio.SocketChannelUDT"
    argCount: 1
    argTypes:
    - "com.barchart.udt.TypeUDT"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.barchart.udt.nio.SelectorProviderUDT].'from'(com.barchart.udt.TypeUDT)"
    - "[com.barchart.udt.nio.SelectorProviderUDT].openSocketChannel()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:150,1"
      Dst: "[com.barchart.udt.nio.SelectorProviderUDT].'from'(com.barchart.udt.TypeUDT)"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:150,1"
      Dst: "[com.barchart.udt.nio.SelectorProviderUDT].openSocketChannel()"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:152,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtProvider].newRendezvousChannelUDT(com.barchart.udt.TypeUDT)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtProvider"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 165
    functionDepth: 1
    returnType: "com.barchart.udt.nio.RendezvousChannelUDT"
    argCount: 1
    argTypes:
    - "com.barchart.udt.TypeUDT"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.barchart.udt.nio.SelectorProviderUDT].'from'(com.barchart.udt.TypeUDT)"
    - "[com.barchart.udt.nio.SelectorProviderUDT].openRendezvousChannel()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:162,1"
      Dst: "[com.barchart.udt.nio.SelectorProviderUDT].'from'(com.barchart.udt.TypeUDT)"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:162,1"
      Dst: "[com.barchart.udt.nio.SelectorProviderUDT].openRendezvousChannel()"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:164,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtProvider].socketUDT(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "com.barchart.udt.SocketUDT"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtProvider].channelUDT(io.netty.channel.Channel)"
    - "[com.barchart.udt.nio.ChannelUDT].socketUDT()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.udt.nio.NioUdtProvider:176"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.nio.NioUdtProvider:179"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.udt.nio.NioUdtProvider:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:175,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtProvider].channelUDT(io.netty.channel.Channel)"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:179,1"
      Dst: "[com.barchart.udt.nio.ChannelUDT].socketUDT()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtProvider].<init>(com.barchart.udt.TypeUDT,com.barchart.udt.nio.KindUDT)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtProvider"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 193
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "com.barchart.udt.TypeUDT"
    - "com.barchart.udt.nio.KindUDT"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:189,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtProvider].kind()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.barchart.udt.nio.KindUDT"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtProvider].newChannel()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtProvider"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 238
    functionDepth: 10
    returnType: "io.netty.channel.udt.UdtChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.barchart.udt.nio.KindUDT].ordinal()"
    - "[com.barchart.udt.TypeUDT].ordinal()"
    - "[io.netty.channel.udt.nio.NioUdtMessageAcceptorChannel].<init>()"
    - "[io.netty.channel.udt.nio.NioUdtByteAcceptorChannel].<init>()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].<init>()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].<init>()"
    - "[io.netty.channel.udt.nio.NioUdtMessageRendezvousChannel].<init>()"
    - "[io.netty.channel.udt.nio.NioUdtByteRendezvousChannel].<init>()"
    functionUses: 1
    ICount: 75
    EdgeCount: 30
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:208,1"
      Dst: "[com.barchart.udt.nio.KindUDT].ordinal()"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:210,1"
      Dst: "[com.barchart.udt.TypeUDT].ordinal()"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:212,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtMessageAcceptorChannel].<init>()"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:214,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteAcceptorChannel].<init>()"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:216,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:216,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:216,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:216,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:216,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:221,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].<init>()"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:223,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].<init>()"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:230,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtMessageRendezvousChannel].<init>()"
    - Src: "io.netty.channel.udt.nio.NioUdtProvider:232,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtByteRendezvousChannel].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].<init>()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].<init>(com.barchart.udt.TypeUDT)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel:62,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].<init>(com.barchart.udt.TypeUDT)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].<init>(com.barchart.udt.TypeUDT)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.barchart.udt.TypeUDT"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].<init>(com.barchart.udt.nio.SocketChannelUDT)"
    - "[io.netty.channel.udt.nio.NioUdtProvider].newConnectorChannelUDT(com.barchart.udt.TypeUDT)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel:93,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtProvider].newConnectorChannelUDT(com.barchart.udt.TypeUDT)"
    - Src: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel:93,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].<init>(com.barchart.udt.nio.SocketChannelUDT)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].<init>(com.barchart.udt.nio.SocketChannelUDT)"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.barchart.udt.nio.SocketChannelUDT"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].<init>(io.netty.channel.Channel,com.barchart.udt.nio.SocketChannelUDT)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtMessageConnectorChannel:89,1"
      Dst: "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].<init>(io.netty.channel.Channel,com.barchart.udt.nio.SocketChannelUDT)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtProvider].type()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "com.barchart.udt.TypeUDT"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMethod].toString()"
    functionSourceFile: "io.netty.handler.codec.http.HttpMethod"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].toString()"
    functionUses: 39
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMethod:169,1"
      Dst: "[io.netty.util.AsciiString].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMethod].compareTo(io.netty.handler.codec.http.HttpMethod)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMethod"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMethod"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMethod].name()"
    - "[java.lang.String].compareTo(java.lang.String)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpMethod:174"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpMethod:177"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.HttpMethod:176"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMethod:177,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].name()"
    - Src: "io.netty.handler.codec.http.HttpMethod:177,1"
      Dst: "[java.lang.String].compareTo(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpMethod].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.HttpMethod"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpMethod].compareTo(io.netty.handler.codec.http.HttpMethod)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMethod:28,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].compareTo(io.netty.handler.codec.http.HttpMethod)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].digest(io.netty.util.concurrent.FastThreadLocal<MessageDigest>,byte[])"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketUtil"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionDepth: 5
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.FastThreadLocal<MessageDigest>"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].get()"
    - "[java.security.MessageDigest].reset()"
    - "[java.security.MessageDigest].digest(byte[])"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:87,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].get()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:88,1"
      Dst: "[java.security.MessageDigest].reset()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:89,1"
      Dst: "[java.security.MessageDigest].digest(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketUtil:166,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf$1].<init>()"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf$1"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf$1:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeHeapByteBuf$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeHeapByteBuf$1"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 3
    returnType: "io.netty.buffer.PooledUnsafeHeapByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int,io.netty.buffer.PooledUnsafeHeapByteBuf$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeHeapByteBuf$1:29,1"
      Dst: "[io.netty.buffer.PooledUnsafeHeapByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int,io.netty.buffer.PooledUnsafeHeapByteBuf$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 91
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    - "[io.netty.handler.codec.http.websocketx.Utf8Validator].isChecking()"
    - "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].checkUTF8String(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.handler.codec.http.websocketx.Utf8Validator].finish()"
    - "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException)"
    - "[io.netty.channel.ChannelInboundHandlerAdapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionUses: 2
    ICount: 46
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:43"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:89"
        BranchSideFuncs:
        - "isFinalFragment()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:88"
        BranchSideFuncs:
        - "channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:49"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:68"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:52"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:86"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:85"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:56"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:59"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:58"
        BranchSideFuncs:
        - "finish()"
    - Branch String: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:56"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:86"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:85"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:57"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:85"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:76"
        BranchSideFuncs:
        - "content()"
        - "isChecking()"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException)"
        - "checkUTF8String(io.netty.buffer.ByteBuf)"
        - "finish()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:75"
        BranchSideFuncs:
        - "isChecking()"
    - Branch String: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:71"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:82"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:81"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:82"
        BranchSideFuncs:
        - "content()"
        - "checkUTF8String(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:81"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:82"
        BranchSideFuncs:
        - "content()"
        - "checkUTF8String(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:81"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:49,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].isFinalFragment()"
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:57,1"
      Dst: "[io.netty.handler.codec.http.websocketx.Utf8Validator].isChecking()"
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:59,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:59,1"
      Dst: "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].checkUTF8String(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:63,1"
      Dst: "[io.netty.handler.codec.http.websocketx.Utf8Validator].finish()"
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:85,1"
      Dst: "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException)"
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:89,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 11
  - functionName: "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].checkUTF8String(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 98
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.Utf8Validator].<init>()"
    - "[io.netty.handler.codec.http.websocketx.Utf8Validator].check(io.netty.buffer.ByteBuf)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:93"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:96"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:95"
        BranchSideFuncs:
        - "check(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:94,1"
      Dst: "[io.netty.handler.codec.http.websocketx.Utf8Validator].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:96,1"
      Dst: "[io.netty.handler.codec.http.websocketx.Utf8Validator].check(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.websocketx.WebSocketFrame,io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 114
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    - "io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DefaultByteBufHolder].release()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isOpen()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isOpen()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isOpen()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isOpen()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isOpen()"
    - "[io.netty.channel.local.LocalChannel].isOpen()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isOpen()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isOpen()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isOpen()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isOpen()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isOpen()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isOpen()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isOpen()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isOpen()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isOpen()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isOpen()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isOpen()"
    - "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].closeStatus()"
    - "[java.lang.Throwable].getMessage()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].reasonText()"
    - "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].<init>(int,java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].code()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].isOpen()"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 22
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:102"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:113"
        BranchSideFuncs:
        - "closeStatus()"
        - "getMessage()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:112"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:102"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:113"
        BranchSideFuncs:
        - "closeStatus()"
        - "getMessage()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:112"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:105"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:109"
        BranchSideFuncs:
        - "reasonText()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:108"
        BranchSideFuncs:
        - "writeAndFlush(java.lang.Object)"
        - "<init>(int,java.lang.String)"
        - "code()"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:101,1"
      Dst: "[io.netty.buffer.DefaultByteBufHolder].release()"
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:102,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:102,1"
      Dst: "[io.netty.channel.Channel].isOpen()"
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:103,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].closeStatus()"
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:104,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:106,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].reasonText()"
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:109,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].code()"
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:109,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].<init>(int,java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:110,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:110,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].<init>(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].<init>(boolean,int,int,java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].requireValidStatusCode(int)"
    functionUses: 3
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:69,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].requireValidStatusCode(int)"
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:69,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].<init>(boolean,int,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].requireValidStatusCode(int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 203
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].isValidStatusCode(int)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 4
    ICount: 12
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:202"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:201"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:199,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].isValidStatusCode(int)"
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:202,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:202,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:202,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:202,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:202,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].<init>(boolean,int,int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean"
    - "int"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].newBinaryData(int,java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].requireValidStatusCode(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:98,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].requireValidStatusCode(int)"
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:98,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].newBinaryData(int,java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:98,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].newBinaryData(int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 112
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[java.lang.String].length()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[java.lang.String].isEmpty()"
    - "[io.netty.buffer.AbstractByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    functionUses: 1
    ICount: 13
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:102"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:106"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:105"
        BranchSideFuncs:
        - "writeShort(int)"
        - "isEmpty()"
        - "length()"
        - "buffer(int)"
    - Branch String: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:111"
        BranchSideFuncs:
        - "writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:106,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:106,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:107,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:108,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:109,1"
      Dst: "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.websocketx.Utf8FrameValidator].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelInboundHandlerAdapter].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.Utf8FrameValidator:118,1"
      Dst: "[io.netty.channel.ChannelInboundHandlerAdapter].exceptionCaught(io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksInitRequest].<init>(java.util.List)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksInitRequest"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksRequest].<init>(io.netty.handler.codec.socks.SocksRequestType)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksInitRequest:34,1"
      Dst: "[io.netty.handler.codec.socks.SocksRequest].<init>(io.netty.handler.codec.socks.SocksRequestType)"
    - Src: "io.netty.handler.codec.socks.SocksInitRequest:35,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksInitRequest].authSchemes()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksInitRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksInitRequest:44,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksInitRequest].encodeAsByteBuf(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksInitRequest"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksProtocolVersion].byteValue()"
    - "[io.netty.handler.codec.socks.SocksMessage].protocolVersion()"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.handler.codec.socks.SocksAuthScheme].byteValue()"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[java.util.List].size()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 20
    EdgeCount: 130
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksInitRequest:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksInitRequest:54"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "writeByte(int)"
        - "byteValue()"
        - "next()"
      - BranchSide: "io.netty.handler.codec.socks.SocksInitRequest:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksInitRequest:49,1"
      Dst: "[io.netty.handler.codec.socks.SocksMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.socks.SocksInitRequest:49,1"
      Dst: "[io.netty.handler.codec.socks.SocksProtocolVersion].byteValue()"
    - Src: "io.netty.handler.codec.socks.SocksInitRequest:49,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.socks.SocksInitRequest:50,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.socks.SocksInitRequest:51,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.socks.SocksInitRequest:51,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.socks.SocksInitRequest:51,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.socks.SocksInitRequest:52,1"
      Dst: "[io.netty.handler.codec.socks.SocksAuthScheme].byteValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].isTraceEnabled()"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.commons.logging.Log].isTraceEnabled()"
    functionUses: 12
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:70,1"
      Dst: "[org.apache.commons.logging.Log].isTraceEnabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].trace(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.commons.logging.Log].trace(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:81,1"
      Dst: "[org.apache.commons.logging.Log].trace(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].trace(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 105
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.commons.logging.Log].isTraceEnabled()"
    - "[org.apache.commons.logging.Log].trace(java.lang.Object,java.lang.Throwable)"
    functionUses: 4
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.CommonsLogger:100"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:104"
        BranchSideFuncs:
        - "getThrowable()"
        - "getMessage()"
        - "format(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:100,1"
      Dst: "[org.apache.commons.logging.Log].isTraceEnabled()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:101,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.CommonsLogger:102,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:102,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:102,1"
      Dst: "[org.apache.commons.logging.Log].trace(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 129
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.commons.logging.Log].isTraceEnabled()"
    - "[org.apache.commons.logging.Log].trace(java.lang.Object,java.lang.Throwable)"
    functionUses: 6
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.CommonsLogger:124"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:128"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object,java.lang.Object)"
        - "getThrowable()"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:127"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:124,1"
      Dst: "[org.apache.commons.logging.Log].isTraceEnabled()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:125,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.CommonsLogger:126,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:126,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:126,1"
      Dst: "[org.apache.commons.logging.Log].trace(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].trace(java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 149
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.commons.logging.Log].isTraceEnabled()"
    - "[org.apache.commons.logging.Log].trace(java.lang.Object,java.lang.Throwable)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.CommonsLogger:144"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:148"
        BranchSideFuncs:
        - "getThrowable()"
        - "arrayFormat(java.lang.String,java.lang.Object[])"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:147"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:144,1"
      Dst: "[org.apache.commons.logging.Log].isTraceEnabled()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:145,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.util.internal.logging.CommonsLogger:146,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:146,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:146,1"
      Dst: "[org.apache.commons.logging.Log].trace(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].trace(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.commons.logging.Log].trace(java.lang.Object,java.lang.Throwable)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:161,1"
      Dst: "[org.apache.commons.logging.Log].trace(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.commons.logging.Log].isDebugEnabled()"
    functionUses: 80
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:170,1"
      Dst: "[org.apache.commons.logging.Log].isDebugEnabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.commons.logging.Log].debug(java.lang.Object)"
    functionUses: 66
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:183,1"
      Dst: "[org.apache.commons.logging.Log].debug(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 201
    functionLinenumberEnd: 207
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.commons.logging.Log].isDebugEnabled()"
    - "[org.apache.commons.logging.Log].debug(java.lang.Object,java.lang.Throwable)"
    functionUses: 99
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.CommonsLogger:202"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:206"
        BranchSideFuncs:
        - "getThrowable()"
        - "getMessage()"
        - "format(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:205"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:202,1"
      Dst: "[org.apache.commons.logging.Log].isDebugEnabled()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:203,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.CommonsLogger:204,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:204,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:204,1"
      Dst: "[org.apache.commons.logging.Log].debug(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 231
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.commons.logging.Log].isDebugEnabled()"
    - "[org.apache.commons.logging.Log].debug(java.lang.Object,java.lang.Throwable)"
    functionUses: 56
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.CommonsLogger:226"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:230"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object,java.lang.Object)"
        - "getThrowable()"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:229"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:226,1"
      Dst: "[org.apache.commons.logging.Log].isDebugEnabled()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:227,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.CommonsLogger:228,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:228,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:228,1"
      Dst: "[org.apache.commons.logging.Log].debug(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 245
    functionLinenumberEnd: 251
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.commons.logging.Log].isDebugEnabled()"
    - "[org.apache.commons.logging.Log].debug(java.lang.Object,java.lang.Throwable)"
    functionUses: 21
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.CommonsLogger:246"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:250"
        BranchSideFuncs:
        - "getThrowable()"
        - "arrayFormat(java.lang.String,java.lang.Object[])"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:249"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:246,1"
      Dst: "[org.apache.commons.logging.Log].isDebugEnabled()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:247,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.util.internal.logging.CommonsLogger:248,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:248,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:248,1"
      Dst: "[org.apache.commons.logging.Log].debug(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 265
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.commons.logging.Log].debug(java.lang.Object,java.lang.Throwable)"
    functionUses: 32
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:263,1"
      Dst: "[org.apache.commons.logging.Log].debug(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].isInfoEnabled()"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 273
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.commons.logging.Log].isInfoEnabled()"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:272,1"
      Dst: "[org.apache.commons.logging.Log].isInfoEnabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].info(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 285
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.commons.logging.Log].info(java.lang.Object)"
    functionUses: 5
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:283,1"
      Dst: "[org.apache.commons.logging.Log].info(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].info(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 302
    functionLinenumberEnd: 308
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.commons.logging.Log].isInfoEnabled()"
    - "[org.apache.commons.logging.Log].info(java.lang.Object,java.lang.Throwable)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.CommonsLogger:303"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:307"
        BranchSideFuncs:
        - "getThrowable()"
        - "getMessage()"
        - "format(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:306"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:303,1"
      Dst: "[org.apache.commons.logging.Log].isInfoEnabled()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:304,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.CommonsLogger:305,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:305,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:305,1"
      Dst: "[org.apache.commons.logging.Log].info(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 325
    functionLinenumberEnd: 331
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.commons.logging.Log].isInfoEnabled()"
    - "[org.apache.commons.logging.Log].info(java.lang.Object,java.lang.Throwable)"
    functionUses: 13
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.CommonsLogger:326"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:330"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object,java.lang.Object)"
        - "getThrowable()"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:329"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:326,1"
      Dst: "[org.apache.commons.logging.Log].isInfoEnabled()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:327,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.CommonsLogger:328,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:328,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:328,1"
      Dst: "[org.apache.commons.logging.Log].info(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].info(java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 345
    functionLinenumberEnd: 351
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.commons.logging.Log].isInfoEnabled()"
    - "[org.apache.commons.logging.Log].info(java.lang.Object,java.lang.Throwable)"
    functionUses: 4
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.CommonsLogger:346"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:350"
        BranchSideFuncs:
        - "getThrowable()"
        - "arrayFormat(java.lang.String,java.lang.Object[])"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:349"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:346,1"
      Dst: "[org.apache.commons.logging.Log].isInfoEnabled()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:347,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.util.internal.logging.CommonsLogger:348,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:348,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:348,1"
      Dst: "[org.apache.commons.logging.Log].info(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].info(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 362
    functionLinenumberEnd: 365
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.commons.logging.Log].info(java.lang.Object,java.lang.Throwable)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:363,1"
      Dst: "[org.apache.commons.logging.Log].info(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].isWarnEnabled()"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 371
    functionLinenumberEnd: 373
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.commons.logging.Log].isWarnEnabled()"
    functionUses: 37
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:372,1"
      Dst: "[org.apache.commons.logging.Log].isWarnEnabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 382
    functionLinenumberEnd: 385
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.commons.logging.Log].warn(java.lang.Object)"
    functionUses: 22
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:383,1"
      Dst: "[org.apache.commons.logging.Log].warn(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 401
    functionLinenumberEnd: 407
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.commons.logging.Log].isWarnEnabled()"
    - "[org.apache.commons.logging.Log].warn(java.lang.Object,java.lang.Throwable)"
    functionUses: 17
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.CommonsLogger:402"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:406"
        BranchSideFuncs:
        - "getThrowable()"
        - "getMessage()"
        - "format(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:405"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:402,1"
      Dst: "[org.apache.commons.logging.Log].isWarnEnabled()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:403,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.CommonsLogger:404,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:404,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:404,1"
      Dst: "[org.apache.commons.logging.Log].warn(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 425
    functionLinenumberEnd: 431
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.commons.logging.Log].isWarnEnabled()"
    - "[org.apache.commons.logging.Log].warn(java.lang.Object,java.lang.Throwable)"
    functionUses: 26
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.CommonsLogger:426"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:430"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object,java.lang.Object)"
        - "getThrowable()"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:429"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:426,1"
      Dst: "[org.apache.commons.logging.Log].isWarnEnabled()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:427,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.CommonsLogger:428,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:428,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:428,1"
      Dst: "[org.apache.commons.logging.Log].warn(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 445
    functionLinenumberEnd: 451
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.commons.logging.Log].isWarnEnabled()"
    - "[org.apache.commons.logging.Log].warn(java.lang.Object,java.lang.Throwable)"
    functionUses: 13
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.CommonsLogger:446"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:450"
        BranchSideFuncs:
        - "getThrowable()"
        - "arrayFormat(java.lang.String,java.lang.Object[])"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:449"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:446,1"
      Dst: "[org.apache.commons.logging.Log].isWarnEnabled()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:447,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.util.internal.logging.CommonsLogger:448,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:448,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:448,1"
      Dst: "[org.apache.commons.logging.Log].warn(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 463
    functionLinenumberEnd: 466
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.commons.logging.Log].warn(java.lang.Object,java.lang.Throwable)"
    functionUses: 74
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:464,1"
      Dst: "[org.apache.commons.logging.Log].warn(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].isErrorEnabled()"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 472
    functionLinenumberEnd: 474
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.commons.logging.Log].isErrorEnabled()"
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:473,1"
      Dst: "[org.apache.commons.logging.Log].isErrorEnabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 483
    functionLinenumberEnd: 486
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.commons.logging.Log].error(java.lang.Object)"
    functionUses: 4
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:484,1"
      Dst: "[org.apache.commons.logging.Log].error(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 502
    functionLinenumberEnd: 508
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.commons.logging.Log].isErrorEnabled()"
    - "[org.apache.commons.logging.Log].error(java.lang.Object,java.lang.Throwable)"
    functionUses: 2
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.CommonsLogger:503"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:507"
        BranchSideFuncs:
        - "getThrowable()"
        - "getMessage()"
        - "format(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:506"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:503,1"
      Dst: "[org.apache.commons.logging.Log].isErrorEnabled()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:504,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.CommonsLogger:505,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:505,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:505,1"
      Dst: "[org.apache.commons.logging.Log].error(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 526
    functionLinenumberEnd: 532
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.commons.logging.Log].isErrorEnabled()"
    - "[org.apache.commons.logging.Log].error(java.lang.Object,java.lang.Throwable)"
    functionUses: 10
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.CommonsLogger:527"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:531"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object,java.lang.Object)"
        - "getThrowable()"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:530"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:527,1"
      Dst: "[org.apache.commons.logging.Log].isErrorEnabled()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:528,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].format(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.CommonsLogger:529,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:529,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:529,1"
      Dst: "[org.apache.commons.logging.Log].error(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 546
    functionLinenumberEnd: 552
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - "[org.apache.commons.logging.Log].isErrorEnabled()"
    - "[org.apache.commons.logging.Log].error(java.lang.Object,java.lang.Throwable)"
    functionUses: 4
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.CommonsLogger:547"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:551"
        BranchSideFuncs:
        - "getThrowable()"
        - "arrayFormat(java.lang.String,java.lang.Object[])"
        - "getMessage()"
      - BranchSide: "io.netty.util.internal.logging.CommonsLogger:550"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:547,1"
      Dst: "[org.apache.commons.logging.Log].isErrorEnabled()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:548,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].arrayFormat(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.util.internal.logging.CommonsLogger:549,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getMessage()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:549,1"
      Dst: "[io.netty.util.internal.logging.FormattingTuple].getThrowable()"
    - Src: "io.netty.util.internal.logging.CommonsLogger:549,1"
      Dst: "[org.apache.commons.logging.Log].error(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.CommonsLogger].error(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.logging.CommonsLogger"
    linkageType: ""
    functionLinenumber: 563
    functionLinenumberEnd: 566
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.apache.commons.logging.Log].error(java.lang.Object,java.lang.Throwable)"
    functionUses: 16
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.CommonsLogger:564,1"
      Dst: "[org.apache.commons.logging.Log].error(java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].wrap()"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].isSecure()"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].isHttpOnly()"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].name()"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:145,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].name()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:145,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 182
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].name()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].path()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].domain()"
    - "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.Cookie].name()"
    - "[io.netty.handler.codec.http.cookie.Cookie].path()"
    - "[io.netty.handler.codec.http.cookie.Cookie].domain()"
    functionUses: 9
    ICount: 36
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:154"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:153"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:154"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:158"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:157"
        BranchSideFuncs:
        - "name()"
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:159"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:163"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:162"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:167"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:166"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:164"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:173"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:169"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:168"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
        - "path()"
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:173"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:178"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:177"
        BranchSideFuncs:
        - "domain()"
        - "equalsIgnoreCase(java.lang.String)"
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:174"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:181"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:180"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:159,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].name()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:159,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].name()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:159,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:163,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].path()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:164,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].path()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:173,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].domain()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:174,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].domain()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:178,1"
      Dst: "[java.lang.String].equalsIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].compareTo(io.netty.handler.codec.http.cookie.Cookie)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.cookie.Cookie"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].name()"
    - "[io.netty.handler.codec.http.cookie.Cookie].name()"
    - "[java.lang.String].compareTo(java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].path()"
    - "[io.netty.handler.codec.http.cookie.Cookie].path()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].domain()"
    - "[io.netty.handler.codec.http.cookie.Cookie].domain()"
    - "[java.lang.String].compareToIgnoreCase(java.lang.String)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:191"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:190"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:191"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:195"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:194"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:192"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:195"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:198"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:197"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:204"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:203"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:204"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:208"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:207"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:205"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:215"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:214"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:208"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:211"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:210"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:186,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].name()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:186,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].name()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:186,1"
      Dst: "[java.lang.String].compareTo(java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:191,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].path()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:192,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].path()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:204,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].domain()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:205,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].domain()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:211,1"
      Dst: "[java.lang.String].compareToIgnoreCase(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].toString()"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: 232
    functionLinenumberEnd: 260
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.CookieUtil].stringBuilder()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].name()"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].value()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].domain()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].path()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].maxAge()"
    - "[java.lang.StringBuilder].append(long)"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].isSecure()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].isHttpOnly()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].sameSite()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 38
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:237"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:241"
        BranchSideFuncs:
        - "domain()"
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:240"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:241"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:245"
        BranchSideFuncs:
        - "path()"
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:244"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:245"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:250"
        BranchSideFuncs:
        - "append(long)"
        - "append(char)"
        - "maxAge()"
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:249"
        BranchSideFuncs:
        - "isSecure()"
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:250"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:253"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:252"
        BranchSideFuncs:
        - "isHttpOnly()"
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:253"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:256"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:255"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.cookie.DefaultCookie:256"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:259"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
        - "sameSite()"
      - BranchSide: "io.netty.handler.codec.http.cookie.DefaultCookie:258"
        BranchSideFuncs:
        - "toString()"
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:233,1"
      Dst: "[io.netty.handler.codec.http.cookie.CookieUtil].stringBuilder()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:234,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].name()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:234,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:235,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:236,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].value()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:237,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].domain()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:241,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].path()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:245,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].maxAge()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:247,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:250,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].isSecure()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:253,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].isHttpOnly()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:256,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].sameSite()"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:257,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:259,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http.cookie.DefaultCookie].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.DefaultCookie"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].compareTo(io.netty.handler.codec.http.cookie.Cookie)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.DefaultCookie:28,1"
      Dst: "[io.netty.handler.codec.http.cookie.DefaultCookie].compareTo(io.netty.handler.codec.http.cookie.Cookie)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse:47,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].status()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].retain()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].retain()"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse:74,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].retain(int)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse:80,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].touch()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].touch()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse:86,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.binary.BinaryMemcacheResponse"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].touch(java.lang.Object)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse:92,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].copyMeta(io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].copyMeta(io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse:102,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].copyMeta(io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf:io.netty.buffer.PooledHeapByteBuf:io.netty.buffer.PooledUnsafeDirectByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.ReadOnlyUnsafeDirectByteBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf:io.netty.buffer.UnpooledUnsafeDirectByteBuf:io.netty.handler.codec.ReplayingDecoderByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    functionUses: 36
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:50,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].isContiguous()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isContiguous()"
    - "[io.netty.buffer.SwappedByteBuf].isContiguous()"
    - "[io.netty.buffer.WrappedByteBuf].isContiguous()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].isContiguous()"
    - "[io.netty.buffer.ByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].isContiguous()"
    - "[io.netty.buffer.ByteBuf].isContiguous()"
    functionUses: 4
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:55,1"
      Dst: "[io.netty.buffer.ByteBuf].isContiguous()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    functionUses: 33
    ICount: 4
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:60,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].capacity()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.SlicedByteBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    functionUses: 53
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:65,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].capacity(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].capacity(int)"
    - "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].capacity(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.PooledByteBuf].capacity(int)"
    - "[io.netty.buffer.SwappedByteBuf].capacity(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].capacity(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity(int)"
    - "[io.netty.buffer.SlicedByteBuf].capacity(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].capacity(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.EmptyByteBuf].capacity(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity(int)"
    - "[io.netty.buffer.CompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.ByteBuf].capacity(int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:70,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].maxCapacity()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].maxCapacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].maxCapacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].maxCapacity()"
    - "[io.netty.buffer.SwappedByteBuf].maxCapacity()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf].maxCapacity()"
    - "[io.netty.buffer.ByteBuf].maxCapacity()"
    functionUses: 6
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:76,1"
      Dst: "[io.netty.buffer.ByteBuf].maxCapacity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].alloc()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBufAllocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].alloc()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].alloc()"
    - "[io.netty.buffer.DuplicatedByteBuf].alloc()"
    - "[io.netty.buffer.SwappedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].alloc()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.WrappedByteBuf].alloc()"
    - "[io.netty.buffer.SlicedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].alloc()"
    - "[io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.buffer.ByteBuf].alloc()"
    functionUses: 18
    ICount: 4
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:81,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].unwrap()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].isReadOnly()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].isReadOnly()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].isReadOnly()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isReadOnly()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].isReadOnly()"
    - "[io.netty.buffer.SwappedByteBuf].isReadOnly()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadOnly()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.ReadOnlyByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.handler.codec.ReplayingDecoderByteBuf].isReadOnly()"
    - "[io.netty.buffer.ByteBuf].isReadOnly()"
    functionUses: 6
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:106,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadOnly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].isDirect()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isDirect()"
    - "[io.netty.buffer.DuplicatedByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].isDirect()"
    - "[io.netty.buffer.CompositeByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBuf].isDirect()"
    - "[io.netty.buffer.SlicedByteBuf].isDirect()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedByteBuf].isDirect()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledDirectByteBuf:io.netty.buffer.PooledHeapByteBuf:io.netty.buffer.PooledUnsafeDirectByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.ByteBuf].isDirect()"
    functionUses: 15
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:111,1"
      Dst: "[io.netty.buffer.ByteBuf].isDirect()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    functionUses: 244
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:116,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 50
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:121,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 128
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    functionUses: 127
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:127,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 134
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    functionUses: 50
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:132,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setIndex(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setIndex(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIndex(int,int)"
    - "[io.netty.buffer.ByteBuf].setIndex(int,int)"
    functionUses: 14
    ICount: 6
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:138,1"
      Dst: "[io.netty.buffer.ByteBuf].setIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 427
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:144,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    functionUses: 49
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:149,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].maxWritableBytes()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].maxWritableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].maxWritableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].maxWritableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].maxWritableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].maxWritableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].maxWritableBytes()"
    - "[io.netty.buffer.ByteBuf].maxWritableBytes()"
    functionUses: 4
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:154,1"
      Dst: "[io.netty.buffer.ByteBuf].maxWritableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].maxFastWritableBytes()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].maxFastWritableBytes()"
    - "[io.netty.buffer.PooledByteBuf].maxFastWritableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].maxFastWritableBytes()"
    - "[io.netty.buffer.ByteBuf].maxFastWritableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].maxFastWritableBytes()"
    functionUses: 3
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:159,1"
      Dst: "[io.netty.buffer.ByteBuf].maxFastWritableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].isReadable()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    functionUses: 106
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:164,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].isWritable()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].isWritable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isWritable()"
    - "[io.netty.buffer.ReadOnlyByteBuf].isWritable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isWritable()"
    - "[io.netty.buffer.WrappedByteBuf].isWritable()"
    - "[io.netty.buffer.SwappedByteBuf].isWritable()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isWritable()"
    - "[io.netty.buffer.AbstractByteBuf].isWritable()"
    - "[io.netty.buffer.EmptyByteBuf].isWritable()"
    - "[io.netty.buffer.ByteBuf].isWritable()"
    functionUses: 7
    ICount: 4
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:169,1"
      Dst: "[io.netty.buffer.ByteBuf].isWritable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].clear()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].clear()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].clear()"
    - "[io.netty.buffer.WrappedByteBuf].clear()"
    - "[io.netty.buffer.SwappedByteBuf].clear()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].clear()"
    - "[io.netty.buffer.EmptyByteBuf].clear()"
    - "[io.netty.buffer.AbstractByteBuf].clear()"
    - "[io.netty.buffer.ByteBuf].clear()"
    functionUses: 9
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:174,1"
      Dst: "[io.netty.buffer.ByteBuf].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].markReaderIndex()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.CompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.SwappedByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedByteBuf].markReaderIndex()"
    - "[io.netty.buffer.EmptyByteBuf].markReaderIndex()"
    - "[io.netty.buffer.AbstractByteBuf].markReaderIndex()"
    - "[io.netty.buffer.ByteBuf].markReaderIndex()"
    functionUses: 11
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:180,1"
      Dst: "[io.netty.buffer.ByteBuf].markReaderIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].resetReaderIndex()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].resetReaderIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.AbstractByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.SwappedByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.CompositeByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.EmptyByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.ByteBuf].resetReaderIndex()"
    functionUses: 15
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:186,1"
      Dst: "[io.netty.buffer.ByteBuf].resetReaderIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].markWriterIndex()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].markWriterIndex()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:192,1"
      Dst: "[io.netty.buffer.ByteBuf].markWriterIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].resetWriterIndex()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].resetWriterIndex()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:198,1"
      Dst: "[io.netty.buffer.ByteBuf].resetWriterIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].discardReadBytes()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].discardReadBytes()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].discardReadBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].discardReadBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].discardReadBytes()"
    - "[io.netty.buffer.CompositeByteBuf].discardReadBytes()"
    - "[io.netty.buffer.ReadOnlyByteBuf].discardReadBytes()"
    - "[io.netty.buffer.AbstractByteBuf].discardReadBytes()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].discardReadBytes()"
    - "[io.netty.buffer.SwappedByteBuf].discardReadBytes()"
    - "[io.netty.buffer.WrappedByteBuf].discardReadBytes()"
    - "[io.netty.buffer.EmptyByteBuf].discardReadBytes()"
    - "[io.netty.buffer.ByteBuf].discardReadBytes()"
    functionUses: 5
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:204,1"
      Dst: "[io.netty.buffer.ByteBuf].discardReadBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].discardSomeReadBytes()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.SwappedByteBuf].discardSomeReadBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.CompositeByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.WrappedByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.EmptyByteBuf].discardSomeReadBytes()"
    - "[io.netty.buffer.ByteBuf].discardSomeReadBytes()"
    functionUses: 4
    ICount: 4
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:210,1"
      Dst: "[io.netty.buffer.ByteBuf].discardSomeReadBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 218
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    functionUses: 22
    ICount: 5
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:216,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].ensureWritable(int,boolean)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 223
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int,boolean)"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int,boolean)"
    functionUses: 5
    ICount: 6
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:222,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getBoolean(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].getBoolean(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:227,1"
      Dst: "[io.netty.buffer.ByteBuf].getBoolean(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 231
    functionLinenumberEnd: 233
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 134
    ICount: 5
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:232,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getUnsignedByte(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 236
    functionLinenumberEnd: 238
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    functionUses: 38
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:237,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getShort(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 241
    functionLinenumberEnd: 243
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].getShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].getShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.ByteBuf].getShort(int)"
    functionUses: 18
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:242,1"
      Dst: "[io.netty.buffer.ByteBuf].getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getShortLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 246
    functionLinenumberEnd: 248
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShortLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShortLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ByteBuf].getShortLE(int)"
    functionUses: 12
    ICount: 5
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:247,1"
      Dst: "[io.netty.buffer.ByteBuf].getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getUnsignedShort(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 251
    functionLinenumberEnd: 253
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedShort(int)"
    functionUses: 12
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:252,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getUnsignedShortLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].getUnsignedShortLE(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:257,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getMedium(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 263
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].getMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].getMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].getMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].getMedium(int)"
    - "[io.netty.buffer.ByteBuf].getMedium(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:262,1"
      Dst: "[io.netty.buffer.ByteBuf].getMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getMediumLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 268
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getMediumLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.ByteBuf].getMediumLE(int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:267,1"
      Dst: "[io.netty.buffer.ByteBuf].getMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 273
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.SlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedMedium(int)"
    functionUses: 13
    ICount: 5
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:272,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 278
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedMediumLE(int)"
    functionUses: 12
    ICount: 5
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:277,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getInt(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 281
    functionLinenumberEnd: 283
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.SlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.ByteBuf].getInt(int)"
    functionUses: 23
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:282,1"
      Dst: "[io.netty.buffer.ByteBuf].getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getIntLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 288
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getIntLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getIntLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getIntLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getIntLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ByteBuf].getIntLE(int)"
    functionUses: 12
    ICount: 5
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:287,1"
      Dst: "[io.netty.buffer.ByteBuf].getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getUnsignedInt(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 291
    functionLinenumberEnd: 293
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedInt(int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:292,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getUnsignedIntLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 296
    functionLinenumberEnd: 298
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedIntLE(int)"
    functionUses: 7
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:297,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getLong(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 301
    functionLinenumberEnd: 303
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLong(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLong(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLong(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.ByteBuf].getLong(int)"
    functionUses: 19
    ICount: 5
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:302,1"
      Dst: "[io.netty.buffer.ByteBuf].getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getLongLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 308
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLongLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLongLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ByteBuf].getLongLE(int)"
    functionUses: 12
    ICount: 5
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:307,1"
      Dst: "[io.netty.buffer.ByteBuf].getLongLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getChar(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].getChar(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:312,1"
      Dst: "[io.netty.buffer.ByteBuf].getChar(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getFloat(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "float"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].getFloat(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:317,1"
      Dst: "[io.netty.buffer.ByteBuf].getFloat(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getDouble(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].getDouble(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:322,1"
      Dst: "[io.netty.buffer.ByteBuf].getDouble(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:327,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:333,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 338
    functionLinenumberEnd: 341
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 13
    ICount: 8
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:339,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[])"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 344
    functionLinenumberEnd: 347
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AbstractByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    functionUses: 12
    ICount: 6
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:345,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 350
    functionLinenumberEnd: 353
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    functionUses: 14
    ICount: 8
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:351,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 356
    functionLinenumberEnd: 359
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionUses: 10
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:357,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 362
    functionLinenumberEnd: 365
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.io.OutputStream,int)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionUses: 8
    ICount: 7
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:363,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 368
    functionLinenumberEnd: 370
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:369,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:374,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].getCharSequence(int,int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].getCharSequence(int,int,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:379,1"
      Dst: "[io.netty.buffer.ByteBuf].getCharSequence(int,int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setBoolean(int,boolean)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].setBoolean(int,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:384,1"
      Dst: "[io.netty.buffer.ByteBuf].setBoolean(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setByte(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 389
    functionLinenumberEnd: 392
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.DuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setByte(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ByteBuf].setByte(int,int)"
    functionUses: 64
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:390,1"
      Dst: "[io.netty.buffer.ByteBuf].setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setShort(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 395
    functionLinenumberEnd: 398
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setShort(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShort(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setShort(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setShort(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShort(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShort(int,int)"
    - "[io.netty.buffer.ByteBuf].setShort(int,int)"
    functionUses: 17
    ICount: 6
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:396,1"
      Dst: "[io.netty.buffer.ByteBuf].setShort(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 401
    functionLinenumberEnd: 404
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].setShortLE(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setShortLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setShortLE(int,int)"
    - "[io.netty.buffer.ByteBuf].setShortLE(int,int)"
    functionUses: 8
    ICount: 6
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:402,1"
      Dst: "[io.netty.buffer.ByteBuf].setShortLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 407
    functionLinenumberEnd: 410
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.FixedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setMedium(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setMedium(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMedium(int,int)"
    - "[io.netty.buffer.ByteBuf].setMedium(int,int)"
    functionUses: 10
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:408,1"
      Dst: "[io.netty.buffer.ByteBuf].setMedium(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 413
    functionLinenumberEnd: 416
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setMediumLE(int,int)"
    - "[io.netty.buffer.ByteBuf].setMediumLE(int,int)"
    functionUses: 9
    ICount: 6
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:414,1"
      Dst: "[io.netty.buffer.ByteBuf].setMediumLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setInt(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 419
    functionLinenumberEnd: 422
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setInt(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ByteBuf].setInt(int,int)"
    functionUses: 25
    ICount: 6
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:420,1"
      Dst: "[io.netty.buffer.ByteBuf].setInt(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 425
    functionLinenumberEnd: 428
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setIntLE(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setIntLE(int,int)"
    - "[io.netty.buffer.ByteBuf].setIntLE(int,int)"
    functionUses: 11
    ICount: 6
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:426,1"
      Dst: "[io.netty.buffer.ByteBuf].setIntLE(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setLong(int,long)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 431
    functionLinenumberEnd: 434
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setLong(int,long)"
    - "[io.netty.buffer.DuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf].setLong(int,long)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.EmptyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ByteBuf].setLong(int,long)"
    functionUses: 13
    ICount: 6
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:432,1"
      Dst: "[io.netty.buffer.ByteBuf].setLong(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].setLongLE(int,long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:438,1"
      Dst: "[io.netty.buffer.ByteBuf].setLongLE(int,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setChar(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].setChar(int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:444,1"
      Dst: "[io.netty.buffer.ByteBuf].setChar(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setFloat(int,float)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].setFloat(int,float)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:450,1"
      Dst: "[io.netty.buffer.ByteBuf].setFloat(int,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setDouble(int,double)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].setDouble(int,double)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:456,1"
      Dst: "[io.netty.buffer.ByteBuf].setDouble(int,double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:462,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:468,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 473
    functionLinenumberEnd: 476
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 16
    ICount: 8
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:474,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setBytes(int,byte[])"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].setBytes(int,byte[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:480,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 485
    functionLinenumberEnd: 488
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,byte[],int,int)"
    functionUses: 9
    ICount: 8
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:486,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 491
    functionLinenumberEnd: 494
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.ByteBuffer)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionUses: 6
    ICount: 6
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:492,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 497
    functionLinenumberEnd: 499
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].setBytes(int,java.io.InputStream,int)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.io.InputStream,int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:498,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 502
    functionLinenumberEnd: 504
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionUses: 6
    ICount: 7
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:503,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 507
    functionLinenumberEnd: 509
    functionDepth: 0
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.SlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.SwappedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.WrappedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.CompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.PooledByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionUses: 6
    ICount: 8
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:508,1"
      Dst: "[io.netty.buffer.ByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setZero(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 512
    functionLinenumberEnd: 515
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf].setZero(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setZero(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setZero(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setZero(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setZero(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].setZero(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setZero(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setZero(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setZero(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setZero(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setZero(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setZero(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setZero(int,int)"
    - "[io.netty.buffer.ByteBuf].setZero(int,int)"
    functionUses: 4
    ICount: 6
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:513,1"
      Dst: "[io.netty.buffer.ByteBuf].setZero(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 518
    functionLinenumberEnd: 520
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    functionUses: 4
    ICount: 7
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:519,1"
      Dst: "[io.netty.buffer.ByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readBoolean()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readBoolean()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:524,1"
      Dst: "[io.netty.buffer.ByteBuf].readBoolean()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readByte()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 528
    functionLinenumberEnd: 530
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    functionUses: 84
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:529,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 533
    functionLinenumberEnd: 535
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    functionUses: 40
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:534,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readShort()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 538
    functionLinenumberEnd: 540
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readShort()"
    - "[io.netty.buffer.EmptyByteBuf].readShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readShort()"
    - "[io.netty.buffer.SwappedByteBuf].readShort()"
    - "[io.netty.buffer.WrappedByteBuf].readShort()"
    - "[io.netty.buffer.AbstractByteBuf].readShort()"
    - "[io.netty.buffer.ByteBuf].readShort()"
    functionUses: 9
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:539,1"
      Dst: "[io.netty.buffer.ByteBuf].readShort()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readShortLE()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 543
    functionLinenumberEnd: 545
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readShortLE()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readShortLE()"
    - "[io.netty.buffer.WrappedByteBuf].readShortLE()"
    - "[io.netty.buffer.SwappedByteBuf].readShortLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readShortLE()"
    - "[io.netty.buffer.EmptyByteBuf].readShortLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readShortLE()"
    - "[io.netty.buffer.AbstractByteBuf].readShortLE()"
    - "[io.netty.buffer.ByteBuf].readShortLE()"
    functionUses: 4
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:544,1"
      Dst: "[io.netty.buffer.ByteBuf].readShortLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readUnsignedShort()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 548
    functionLinenumberEnd: 550
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    functionUses: 43
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:549,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readUnsignedShortLE()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 553
    functionLinenumberEnd: 555
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShortLE()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.ByteBuf].readUnsignedShortLE()"
    functionUses: 5
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:554,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShortLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readMedium()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 558
    functionLinenumberEnd: 560
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readMedium()"
    - "[io.netty.buffer.WrappedByteBuf].readMedium()"
    - "[io.netty.buffer.SwappedByteBuf].readMedium()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readMedium()"
    - "[io.netty.buffer.AbstractByteBuf].readMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readMedium()"
    - "[io.netty.buffer.EmptyByteBuf].readMedium()"
    - "[io.netty.buffer.ByteBuf].readMedium()"
    functionUses: 4
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:559,1"
      Dst: "[io.netty.buffer.ByteBuf].readMedium()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readMediumLE()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 563
    functionLinenumberEnd: 565
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readMediumLE()"
    - "[io.netty.buffer.AbstractByteBuf].readMediumLE()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readMediumLE()"
    - "[io.netty.buffer.WrappedByteBuf].readMediumLE()"
    - "[io.netty.buffer.EmptyByteBuf].readMediumLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readMediumLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readMediumLE()"
    - "[io.netty.buffer.SwappedByteBuf].readMediumLE()"
    - "[io.netty.buffer.ByteBuf].readMediumLE()"
    functionUses: 4
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:564,1"
      Dst: "[io.netty.buffer.ByteBuf].readMediumLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readUnsignedMedium()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 568
    functionLinenumberEnd: 570
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedMedium()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.ByteBuf].readUnsignedMedium()"
    functionUses: 7
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:569,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedMedium()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readUnsignedMediumLE()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 573
    functionLinenumberEnd: 575
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedMediumLE()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.ByteBuf].readUnsignedMediumLE()"
    functionUses: 4
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:574,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedMediumLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readInt()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 578
    functionLinenumberEnd: 580
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readInt()"
    - "[io.netty.buffer.SwappedByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readInt()"
    - "[io.netty.buffer.EmptyByteBuf].readInt()"
    - "[io.netty.buffer.AbstractByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readInt()"
    - "[io.netty.buffer.WrappedByteBuf].readInt()"
    - "[io.netty.buffer.ByteBuf].readInt()"
    functionUses: 20
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:579,1"
      Dst: "[io.netty.buffer.ByteBuf].readInt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readIntLE()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 583
    functionLinenumberEnd: 585
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readIntLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readIntLE()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readIntLE()"
    - "[io.netty.buffer.AbstractByteBuf].readIntLE()"
    - "[io.netty.buffer.EmptyByteBuf].readIntLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readIntLE()"
    - "[io.netty.buffer.WrappedByteBuf].readIntLE()"
    - "[io.netty.buffer.SwappedByteBuf].readIntLE()"
    - "[io.netty.buffer.ByteBuf].readIntLE()"
    functionUses: 8
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:584,1"
      Dst: "[io.netty.buffer.ByteBuf].readIntLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readUnsignedInt()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 588
    functionLinenumberEnd: 590
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.ByteBuf].readUnsignedInt()"
    functionUses: 10
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:589,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedInt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readUnsignedIntLE()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readUnsignedIntLE()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:594,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedIntLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readLong()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 598
    functionLinenumberEnd: 600
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readLong()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readLong()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readLong()"
    - "[io.netty.buffer.WrappedByteBuf].readLong()"
    - "[io.netty.buffer.SwappedByteBuf].readLong()"
    - "[io.netty.buffer.EmptyByteBuf].readLong()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readLong()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readLong()"
    - "[io.netty.buffer.ByteBuf].readLong()"
    functionUses: 10
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:599,1"
      Dst: "[io.netty.buffer.ByteBuf].readLong()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readLongLE()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readLongLE()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:604,1"
      Dst: "[io.netty.buffer.ByteBuf].readLongLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readChar()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "char"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readChar()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:609,1"
      Dst: "[io.netty.buffer.ByteBuf].readChar()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readFloat()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readFloat()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:614,1"
      Dst: "[io.netty.buffer.ByteBuf].readFloat()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readDouble()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readDouble()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:619,1"
      Dst: "[io.netty.buffer.ByteBuf].readDouble()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readBytes(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 623
    functionLinenumberEnd: 625
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(int)"
    - "[io.netty.buffer.ByteBuf].readBytes(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:624,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 638
    functionLinenumberEnd: 641
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    functionUses: 5
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:639,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 644
    functionLinenumberEnd: 647
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    functionUses: 15
    ICount: 6
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:645,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:651,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readBytes(byte[])"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 656
    functionLinenumberEnd: 659
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    functionUses: 13
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:657,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readBytes(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 662
    functionLinenumberEnd: 665
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].readBytes(byte[],int,int)"
    functionUses: 5
    ICount: 7
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:663,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readBytes(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 668
    functionLinenumberEnd: 671
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledDirectByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.ByteBuf].readBytes(java.nio.ByteBuffer)"
    functionUses: 4
    ICount: 5
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:669,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readBytes(java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 674
    functionLinenumberEnd: 677
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(java.io.OutputStream,int)"
    - "[io.netty.buffer.ByteBuf].readBytes(java.io.OutputStream,int)"
    functionUses: 7
    ICount: 6
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:675,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(java.io.OutputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 680
    functionLinenumberEnd: 682
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.ByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:681,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readBytes(java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readBytes(java.nio.channels.FileChannel,long,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:686,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].readCharSequence(int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readCharSequence(int,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:691,1"
      Dst: "[io.netty.buffer.ByteBuf].readCharSequence(int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 695
    functionLinenumberEnd: 698
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 121
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:696,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeBoolean(boolean)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writeBoolean(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:702,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBoolean(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 707
    functionLinenumberEnd: 710
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    functionUses: 201
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:708,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 713
    functionLinenumberEnd: 716
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    functionUses: 96
    ICount: 5
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:714,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeShortLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writeShortLE(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:720,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeMedium(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 725
    functionLinenumberEnd: 728
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].writeMedium(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeMedium(int)"
    - "[io.netty.buffer.ByteBuf].writeMedium(int)"
    functionUses: 12
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:726,1"
      Dst: "[io.netty.buffer.ByteBuf].writeMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeMediumLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 731
    functionLinenumberEnd: 734
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeMediumLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeMediumLE(int)"
    - "[io.netty.buffer.ByteBuf].writeMediumLE(int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:732,1"
      Dst: "[io.netty.buffer.ByteBuf].writeMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 737
    functionLinenumberEnd: 740
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    functionUses: 55
    ICount: 5
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:738,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeIntLE(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 743
    functionLinenumberEnd: 746
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].writeIntLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeIntLE(int)"
    - "[io.netty.buffer.ByteBuf].writeIntLE(int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:744,1"
      Dst: "[io.netty.buffer.ByteBuf].writeIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeLong(long)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 749
    functionLinenumberEnd: 752
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].writeLong(long)"
    - "[io.netty.buffer.SwappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.CompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeLong(long)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeLong(long)"
    - "[io.netty.buffer.AbstractByteBuf].writeLong(long)"
    - "[io.netty.buffer.WrappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.ByteBuf].writeLong(long)"
    functionUses: 13
    ICount: 5
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:750,1"
      Dst: "[io.netty.buffer.ByteBuf].writeLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeLongLE(long)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writeLongLE(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:756,1"
      Dst: "[io.netty.buffer.ByteBuf].writeLongLE(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeChar(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 761
    functionLinenumberEnd: 764
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeChar(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeChar(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeChar(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeChar(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeChar(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeChar(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeChar(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeChar(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeChar(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeChar(int)"
    - "[io.netty.buffer.ByteBuf].writeChar(int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:762,1"
      Dst: "[io.netty.buffer.ByteBuf].writeChar(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeFloat(float)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writeFloat(float)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:768,1"
      Dst: "[io.netty.buffer.ByteBuf].writeFloat(float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeDouble(double)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writeDouble(double)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:774,1"
      Dst: "[io.netty.buffer.ByteBuf].writeDouble(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 779
    functionLinenumberEnd: 782
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionUses: 43
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:780,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 785
    functionLinenumberEnd: 788
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    functionUses: 11
    ICount: 6
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:786,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 791
    functionLinenumberEnd: 794
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 30
    ICount: 7
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:792,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 797
    functionLinenumberEnd: 800
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    functionUses: 43
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:798,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 803
    functionLinenumberEnd: 806
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    functionUses: 14
    ICount: 7
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:804,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeBytes(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 809
    functionLinenumberEnd: 812
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(java.nio.ByteBuffer)"
    - "[io.netty.buffer.ByteBuf].writeBytes(java.nio.ByteBuffer)"
    functionUses: 8
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:810,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeBytes(java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 815
    functionLinenumberEnd: 817
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(java.io.InputStream,int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(java.io.InputStream,int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:816,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(java.io.InputStream,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 820
    functionLinenumberEnd: 822
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:821,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 825
    functionLinenumberEnd: 827
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    functionUses: 4
    ICount: 7
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:826,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeZero(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 830
    functionLinenumberEnd: 833
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeZero(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeZero(int)"
    - "[io.netty.buffer.PooledUnsafeHeapByteBuf].writeZero(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeZero(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeZero(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeZero(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeZero(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].writeZero(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].writeZero(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeZero(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeZero(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeZero(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].writeZero(int)"
    - "[io.netty.buffer.ByteBuf].writeZero(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:831,1"
      Dst: "[io.netty.buffer.ByteBuf].writeZero(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 836
    functionLinenumberEnd: 838
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    functionUses: 25
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:837,1"
      Dst: "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].indexOf(int,int,byte)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 841
    functionLinenumberEnd: 843
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.AbstractByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.SwappedByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.WrappedByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.EmptyByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.ByteBuf].indexOf(int,int,byte)"
    functionUses: 8
    ICount: 7
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:842,1"
      Dst: "[io.netty.buffer.ByteBuf].indexOf(int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].bytesBefore(byte)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].bytesBefore(byte)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:847,1"
      Dst: "[io.netty.buffer.ByteBuf].bytesBefore(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].bytesBefore(int,byte)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 851
    functionLinenumberEnd: 853
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].bytesBefore(int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].bytesBefore(int,byte)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].bytesBefore(int,byte)"
    - "[io.netty.buffer.AbstractByteBuf].bytesBefore(int,byte)"
    - "[io.netty.buffer.SwappedByteBuf].bytesBefore(int,byte)"
    - "[io.netty.buffer.WrappedByteBuf].bytesBefore(int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].bytesBefore(int,byte)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].bytesBefore(int,byte)"
    - "[io.netty.buffer.ByteBuf].bytesBefore(int,byte)"
    functionUses: 4
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:852,1"
      Dst: "[io.netty.buffer.ByteBuf].bytesBefore(int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].bytesBefore(int,int,byte)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 856
    functionLinenumberEnd: 858
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.EmptyByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.WrappedByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.SwappedByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.ByteBuf].bytesBefore(int,int,byte)"
    functionUses: 5
    ICount: 7
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:857,1"
      Dst: "[io.netty.buffer.ByteBuf].bytesBefore(int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 861
    functionLinenumberEnd: 863
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    functionUses: 9
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:862,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 866
    functionLinenumberEnd: 868
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.DuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ReadOnlyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionUses: 18
    ICount: 7
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:867,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].forEachByteDesc(io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].forEachByteDesc(io.netty.util.ByteProcessor)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:872,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByteDesc(io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:877,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].copy()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].copy()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:882,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].copy(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 886
    functionLinenumberEnd: 888
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].copy(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].copy(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].copy(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].copy(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].copy(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].copy(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].copy(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.ByteBuf].copy(int,int)"
    functionUses: 9
    ICount: 6
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:887,1"
      Dst: "[io.netty.buffer.ByteBuf].copy(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 921
    functionLinenumberEnd: 923
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    functionUses: 43
    ICount: 4
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:922,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].nioBuffer()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 926
    functionLinenumberEnd: 928
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer()"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer()"
    - "[io.netty.buffer.AbstractByteBuf].nioBuffer()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer()"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer()"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer()"
    - "[io.netty.buffer.ByteBuf].nioBuffer()"
    functionUses: 10
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:927,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].nioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 931
    functionLinenumberEnd: 933
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].nioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    functionUses: 17
    ICount: 6
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:932,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].nioBuffers()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 936
    functionLinenumberEnd: 938
    functionDepth: 0
    returnType: "java.nio.ByteBuffer[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].nioBuffers()"
    - "[io.netty.buffer.AbstractByteBuf].nioBuffers()"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffers()"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffers()"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers()"
    - "[io.netty.buffer.ByteBuf].nioBuffers()"
    functionUses: 8
    ICount: 4
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:937,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].nioBuffers(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 941
    functionLinenumberEnd: 943
    functionDepth: 0
    returnType: "java.nio.ByteBuffer[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffers(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    functionUses: 17
    ICount: 6
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:942,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 946
    functionLinenumberEnd: 948
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    functionUses: 36
    ICount: 6
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:947,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].hasArray()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 951
    functionLinenumberEnd: 953
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.EmptyByteBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    functionUses: 41
    ICount: 4
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:952,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].array()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 956
    functionLinenumberEnd: 958
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.ByteBuf].array()"
    functionUses: 52
    ICount: 4
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:957,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 961
    functionLinenumberEnd: 963
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    functionUses: 52
    ICount: 4
    EdgeCount: 19
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:962,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].toString(java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 966
    functionLinenumberEnd: 968
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    functionUses: 20
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:967,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 971
    functionLinenumberEnd: 973
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    functionUses: 15
    ICount: 7
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:972,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].hashCode()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 976
    functionLinenumberEnd: 978
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].hashCode()"
    - "[io.netty.buffer.SwappedByteBuf].hashCode()"
    - "[io.netty.buffer.AbstractByteBuf].hashCode()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hashCode()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hashCode()"
    - "[io.netty.buffer.EmptyByteBuf].hashCode()"
    - "[io.netty.buffer.ByteBuf].hashCode()"
    functionUses: 13
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:977,1"
      Dst: "[io.netty.buffer.ByteBuf].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].equals(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 982
    functionLinenumberEnd: 984
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].equals(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].equals(java.lang.Object)"
    functionUses: 18
    ICount: 5
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:983,1"
      Dst: "[io.netty.buffer.ByteBuf].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:988,1"
      Dst: "[io.netty.buffer.ByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].toString()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 992
    functionLinenumberEnd: 994
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString()"
    - "[io.netty.buffer.AbstractByteBuf].toString()"
    - "[io.netty.buffer.FixedCompositeByteBuf].toString()"
    - "[io.netty.buffer.CompositeByteBuf].toString()"
    - "[io.netty.buffer.SwappedByteBuf].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString()"
    - "[io.netty.buffer.WrappedByteBuf].toString()"
    - "[io.netty.buffer.EmptyByteBuf].toString()"
    - "[io.netty.buffer.ByteBuf].toString()"
    functionUses: 21
    ICount: 12
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:993,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.WrappedByteBuf:993,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.buffer.WrappedByteBuf:993,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.WrappedByteBuf:993,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.buffer.WrappedByteBuf:993,1"
      Dst: "[io.netty.buffer.ByteBuf].toString()"
    - Src: "io.netty.buffer.WrappedByteBuf:993,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].retain(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:998,1"
      Dst: "[io.netty.buffer.ByteBuf].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].retain()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 1003
    functionLinenumberEnd: 1006
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 64
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:1004,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].touch()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 1009
    functionLinenumberEnd: 1012
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.SwappedByteBuf].touch()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch()"
    - "[io.netty.buffer.EmptyByteBuf].touch()"
    - "[io.netty.buffer.WrappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    - "[io.netty.buffer.UnreleasableByteBuf].touch()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.CompositeByteBuf].touch()"
    - "[io.netty.buffer.ByteBuf].touch()"
    functionUses: 20
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:1010,1"
      Dst: "[io.netty.buffer.ByteBuf].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 1015
    functionLinenumberEnd: 1018
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 27
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:1016,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].isReadable(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 1021
    functionLinenumberEnd: 1023
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable(int)"
    - "[io.netty.buffer.WrappedByteBuf].isReadable(int)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable(int)"
    - "[io.netty.buffer.AbstractByteBuf].isReadable(int)"
    - "[io.netty.buffer.EmptyByteBuf].isReadable(int)"
    - "[io.netty.buffer.ByteBuf].isReadable(int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:1022,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].isWritable(int)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 1026
    functionLinenumberEnd: 1028
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].isWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isWritable(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].isWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].isWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].isWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].isWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].isWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].isWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].isWritable(int)"
    - "[io.netty.buffer.ByteBuf].isWritable(int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:1027,1"
      Dst: "[io.netty.buffer.ByteBuf].isWritable(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].refCnt()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 1031
    functionLinenumberEnd: 1033
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.buffer.EmptyByteBuf].refCnt()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 25
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:1032,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].isAccessible()"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: 1046
    functionLinenumberEnd: 1048
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].isAccessible()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].isAccessible()"
    - "[io.netty.buffer.SwappedByteBuf].isAccessible()"
    - "[io.netty.buffer.ByteBuf].isAccessible()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].isAccessible()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isAccessible()"
    - "[io.netty.buffer.CompositeByteBuf].isAccessible()"
    functionUses: 8
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:1047,1"
      Dst: "[io.netty.buffer.ByteBuf].isAccessible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedByteBuf].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.WrappedByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedByteBuf:40,1"
      Dst: "[io.netty.buffer.WrappedByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufProcessor$9].<init>()"
    functionSourceFile: "io.netty.buffer.ByteBufProcessor$9"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufProcessor$9:119,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufProcessor$9].process(byte)"
    functionSourceFile: "io.netty.buffer.ByteBufProcessor$9"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.ByteBufProcessor$9:122"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufProcessor$9:121"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.ByteBufProcessor$9:122"
      Branch Sides:
      - BranchSide: "io.netty.buffer.ByteBufProcessor$9:121"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].toString()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty"
    linkageType: ""
    functionLinenumber: 280
    functionLinenumberEnd: 282
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 14
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty:281,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty:281,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty:281,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty:281,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttDecoder].<init>(int,int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:71,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttDecoder].<init>(int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:75,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].<init>(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].<init>(int,int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:79,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:80,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 149
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.ReplayingDecoder].state()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeFixedHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].remainingLength()"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].invalidMessage(java.lang.Throwable)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeVariableHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodePayload(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.mqtt.MqttMessageType,int,int,java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].messageType()"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.mqtt.MqttMessageFactory].newMessage(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.lang.Error].<init>()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 1
    ICount: 99
    EdgeCount: 73
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:100"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:104"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:103"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:122"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:127"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "messageType()"
        - "append(char)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:126"
        BranchSideFuncs:
        - "checkpoint(java.lang.Object)"
        - "newMessage(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
        - "access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:86,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].state()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:86,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:88,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeFixedHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:89,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].remainingLength()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:90,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:93,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].invalidMessage(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:93,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:98,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeVariableHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:99,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:101,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:101,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:102,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:102,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:102,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:102,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:102,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:104,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:117,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].messageType()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:114,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodePayload(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.mqtt.MqttMessageType,int,int,java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:125,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:125,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:125,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:128,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageFactory].newMessage(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:146,1"
      Dst: "[java.lang.Error].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeFixedHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 244
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttFixedHeader"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.mqtt.MqttMessageType].valueOf(int)"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - "[io.netty.handler.codec.mqtt.MqttQoS].valueOf(int)"
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].resetUnusedFields(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].validateFixedHeader(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    functionUses: 1
    ICount: 137
    EdgeCount: 73
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:166"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:165"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:-1"
        BranchSideFuncs:
        - "ordinal()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:226"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:225"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:188"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:187"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:192"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:191"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:192"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:226"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:225"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:209"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:213"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:212"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:213"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:217"
        BranchSideFuncs:
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:216"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:217"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:226"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:225"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:235"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:237"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:235"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:230"
        BranchSideFuncs:
        - "readUnsignedByte()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:238"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:241"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(java.lang.Object)"
        - "append(char)"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:240"
        BranchSideFuncs:
        - "validateFixedHeader(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttFixedHeader)"
        - "<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
        - "resetUnusedFields(io.netty.handler.codec.mqtt.MqttFixedHeader)"
        - "valueOf(int)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:238"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:241"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(java.lang.Object)"
        - "append(char)"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:240"
        BranchSideFuncs:
        - "validateFixedHeader(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttFixedHeader)"
        - "<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
        - "resetUnusedFields(io.netty.handler.codec.mqtt.MqttFixedHeader)"
        - "valueOf(int)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:166,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:168,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageType].valueOf(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:173,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:176,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:176,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:176,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:176,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:176,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:176,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:185,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:242,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttQoS].valueOf(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:242,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:243,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].resetUnusedFields(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:243,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].validateFixedHeader(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttFixedHeader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 29
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageType].valueOf(int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageType"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageType"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageType:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageType:67"
        BranchSideFuncs:
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageType:66"
        BranchSideFuncs:
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageType:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageType:69"
        BranchSideFuncs:
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageType:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageType:67,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageType:67,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageType:67,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageType:67,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageType:67,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttQoS].valueOf(int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttQoS"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttQoS"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 2
    ICount: 18
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttQoS:45,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttQoS:45,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttQoS:45,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttQoS:45,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttQoS:45,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttCodecUtil].resetUnusedFields(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttCodecUtil"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 129
    functionDepth: 2
    returnType: "io.netty.handler.codec.mqtt.MqttFixedHeader"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].messageType()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].isDup()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].qosLevel()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].isRetain()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].remainingLength()"
    functionUses: 1
    ICount: 31
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttCodecUtil:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:107"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttCodecUtil:105"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:107"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttCodecUtil:106"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:114"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttCodecUtil:118"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:93,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].messageType()"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:93,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:104,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].isDup()"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:105,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].qosLevel()"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:106,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].isRetain()"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:112,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].remainingLength()"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:112,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttCodecUtil].validateFixedHeader(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttFixedHeader)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttCodecUtil"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 89
    functionDepth: 2
    returnType: "io.netty.handler.codec.mqtt.MqttFixedHeader"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].messageType()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].qosLevel()"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Enum].name()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    functionUses: 1
    ICount: 29
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttCodecUtil:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:81"
        BranchSideFuncs:
        - "name()"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "messageType()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:80"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttCodecUtil:83"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:86"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:85"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:74,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].messageType()"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:74,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:78,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].qosLevel()"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:79,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:79,1"
      Dst: "[java.lang.Enum].name()"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:79,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:79,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:79,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:83,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].invalidMessage(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionDepth: 4
    returnType: "io.netty.handler.codec.mqtt.MqttMessage"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttMessageFactory].newInvalidMessage(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Throwable)"
    functionUses: 3
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:151,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:152,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageFactory].newInvalidMessage(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageFactory].newInvalidMessage(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageFactory"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttMessage"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "java.lang.Object"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object,io.netty.handler.codec.DecoderResult)"
    - "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:98,1"
      Dst: "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:98,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object,io.netty.handler.codec.DecoderResult)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeVariableHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.mqtt.MqttFixedHeader)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 252
    functionLinenumberEnd: 286
    functionDepth: 5
    returnType: "io.netty.handler.codec.mqtt.Result<?>"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].messageType()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeConnectionVariableHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeConnAckVariableHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMessageIdAndPropertiesVariableHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodePubReplyMessage(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodePublishVariableHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeReasonCodeAndPropertiesVariableHeader(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 33
    EdgeCount: 15
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:253,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].messageType()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:253,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:255,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeConnectionVariableHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:258,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeConnAckVariableHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:264,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMessageIdAndPropertiesVariableHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:270,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodePubReplyMessage(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:273,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodePublishVariableHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:277,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeReasonCodeAndPropertiesVariableHeader(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:282,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:285,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:285,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:285,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:285,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:285,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeConnectionVariableHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 291
    functionLinenumberEnd: 344
    functionDepth: 4
    returnType: "io.netty.handler.codec.mqtt.Result<MqttConnectVariableHeader>"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.mqtt.MqttVersion].fromProtocolNameAndLevel(java.lang.String,byte)"
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].setMqttVersion(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttVersion)"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMsbLsb(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeProperties(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttVersion].protocolName()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].<init>(java.lang.String,int,boolean,boolean,boolean,int,boolean,boolean,int,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.handler.codec.mqtt.MqttVersion].protocolLevel()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    functionUses: 1
    ICount: 82
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:307"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:292"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:291"
        BranchSideFuncs:
        - "fromProtocolNameAndLevel(java.lang.String,byte)"
        - "decodeString(io.netty.buffer.ByteBuf)"
        - "readByte()"
        - "readUnsignedByte()"
        - "setMqttVersion(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttVersion)"
        - "decodeMsbLsb(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:308"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:307"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:306"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:309"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:308"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:307"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:311"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:309"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:308"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:312"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:311"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:310"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:313"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:314"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:313"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:313"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:324"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:323"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:314"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:314"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:313"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:315"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:323"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:324"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:329"
        BranchSideFuncs:
        - "access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
        - "decodeProperties(io.netty.buffer.ByteBuf)"
        - "access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:328"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:292,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:293,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:295,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:298,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:298,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttVersion].fromProtocolNameAndLevel(java.lang.String,byte)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:299,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].setMqttVersion(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.mqtt.MqttVersion)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:301,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:304,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMsbLsb(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:319,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:325,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeProperties(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:333,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttVersion].protocolName()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:334,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttVersion].protocolLevel()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:334,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].<init>(java.lang.String,int,boolean,boolean,boolean,int,boolean,boolean,int,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:343,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 26
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 658
    functionLinenumberEnd: 660
    functionDepth: 2
    returnType: "io.netty.handler.codec.mqtt.Result<String>"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 9
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:659,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 662
    functionLinenumberEnd: 674
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.Result<String>"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMsbLsb(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    functionUses: 2
    ICount: 19
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:665"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:666"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:665"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:665"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:670"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:669"
        BranchSideFuncs:
        - "<init>(java.lang.Object,int)"
        - "readerIndex()"
        - "toString(int,int,java.nio.charset.Charset)"
        - "skipBytes(int)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:663,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMsbLsb(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:666,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:668,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:670,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:670,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMsbLsb(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 705
    functionLinenumberEnd: 713
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    functionUses: 5
    ICount: 13
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:709"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:709"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:712"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:711"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:706,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder$Result"
    linkageType: ""
    functionLinenumber: 744
    functionLinenumberEnd: 749
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 17
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder$Result:745,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder$Result"
    linkageType: ""
    functionLinenumber: 739
    functionLinenumberEnd: 741
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttDecoder$Result"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder$Result"
    linkageType: ""
    functionLinenumber: 739
    functionLinenumberEnd: 741
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttDecoder$Result"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 22
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeProperties(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 751
    functionLinenumberEnd: 827
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.Result<MqttProperties>"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeVariableByteInteger(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].unpackA(long)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].unpackB(long)"
    - "[io.netty.handler.codec.mqtt.MqttProperties].<init>()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType].valueOf(int)"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].<init>(int,java.lang.Integer)"
    - "[io.netty.handler.codec.mqtt.MqttProperties].add(io.netty.handler.codec.mqtt.MqttProperties$MqttProperty)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMsbLsb(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readInt()"
    - "[io.netty.buffer.EmptyByteBuf].readInt()"
    - "[io.netty.buffer.AbstractByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readInt()"
    - "[io.netty.buffer.WrappedByteBuf].readInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readInt()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].<init>(int,java.lang.String)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].<init>(java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeByteArray(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].<init>(int,byte[])"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.ByteBuf].readInt()"
    functionUses: 7
    ICount: 90
    EdgeCount: 63
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:757"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:826"
        BranchSideFuncs:
        - "ordinal()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:825"
        BranchSideFuncs:
        - "<init>(java.lang.Object,int)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:752,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeVariableByteInteger(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:753,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].unpackA(long)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:754,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].unpackB(long)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:756,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:761,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$MqttPropertyType].valueOf(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:762,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:771,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:773,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:773,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].<init>(int,java.lang.Integer)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:773,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties].add(io.netty.handler.codec.mqtt.MqttProperties$MqttProperty)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:779,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMsbLsb(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:787,1"
      Dst: "[io.netty.buffer.ByteBuf].readInt()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:803,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:804,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:805,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:805,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].<init>(int,java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:812,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].<init>(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:816,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeByteArray(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:818,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].<init>(int,byte[])"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:822,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:822,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:822,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:822,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:822,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:826,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeVariableByteInteger(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 722
    functionLinenumberEnd: 738
    functionDepth: 2
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].packInts(int,int)"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    functionUses: 3
    ICount: 23
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:732"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:733"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:732"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:727"
        BranchSideFuncs:
        - "readUnsignedByte()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:734"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:737"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:736"
        BranchSideFuncs:
        - "packInts(int,int)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:734"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:737"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:736"
        BranchSideFuncs:
        - "packInts(int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:728,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:735,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:737,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].packInts(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].packInts(int,int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 688
    functionLinenumberEnd: 690
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].unpackA(long)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 692
    functionLinenumberEnd: 694
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].unpackB(long)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 696
    functionLinenumberEnd: 698
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeByteArray(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 680
    functionLinenumberEnd: 685
    functionDepth: 1
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMsbLsb(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    functionUses: 3
    ICount: 5
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:681,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMsbLsb(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:683,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].<init>(java.lang.String,int,boolean,boolean,boolean,int,boolean,boolean,int,io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttConnectVariableHeader"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 81
    functionDepth: 1
    returnType: "void"
    argCount: 10
    argTypes:
    - "java.lang.String"
    - "int"
    - "boolean"
    - "boolean"
    - "boolean"
    - "int"
    - "boolean"
    - "boolean"
    - "int"
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.mqtt.MqttProperties].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttProperties)"
    functionUses: 1
    ICount: 24
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttConnectVariableHeader:69,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttConnectVariableHeader:79,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttProperties].withEmptyDefaults(io.netty.handler.codec.mqtt.MqttProperties)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeConnAckVariableHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 348
    functionLinenumberEnd: 366
    functionDepth: 4
    returnType: "io.netty.handler.codec.mqtt.Result<MqttConnAckVariableHeader>"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeProperties(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].<init>(io.netty.handler.codec.mqtt.MqttConnectReturnCode,boolean,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.handler.codec.mqtt.MqttConnectReturnCode].valueOf(byte)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    functionUses: 1
    ICount: 27
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:350"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:349"
        BranchSideFuncs:
        - "readByte()"
        - "readUnsignedByte()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:348"
        BranchSideFuncs:
        - "getMqttVersion(io.netty.channel.ChannelHandlerContext)"
        - "readUnsignedByte()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:355"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:360"
        BranchSideFuncs:
        - "decodeProperties(io.netty.buffer.ByteBuf)"
        - "access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
        - "access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:359"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:349,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:350,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:351,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:356,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeProperties(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:357,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:358,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:364,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectReturnCode].valueOf(byte)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:364,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].<init>(io.netty.handler.codec.mqtt.MqttConnectReturnCode,boolean,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:365,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMessageIdAndPropertiesVariableHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 370
    functionLinenumberEnd: 388
    functionDepth: 4
    returnType: "io.netty.handler.codec.mqtt.Result<MqttMessageIdAndPropertiesVariableHeader>"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMessageId(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeProperties(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].<init>(int,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    functionUses: 1
    ICount: 23
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:377"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:382"
        BranchSideFuncs:
        - "decodeProperties(io.netty.buffer.ByteBuf)"
        - "access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
        - "access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:381"
        BranchSideFuncs:
        - "<init>(int,io.netty.handler.codec.mqtt.MqttProperties)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:371,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:372,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMessageId(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:378,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeProperties(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:379,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:379,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].<init>(int,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:380,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:387,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMessageId(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 481
    functionLinenumberEnd: 487
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMsbLsb(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].isValidMessageId(int)"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 3
    ICount: 13
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:483"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:486"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:485"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:482,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMsbLsb(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:483,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].isValidMessageId(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:484,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:484,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:484,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:484,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:484,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttCodecUtil].isValidMessageId(int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttCodecUtil"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttCodecUtil:57"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:56"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodePubReplyMessage(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 391
    functionLinenumberEnd: 418
    functionDepth: 4
    returnType: "io.netty.handler.codec.mqtt.Result<MqttPubReplyMessageVariableHeader>"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMessageId(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeProperties(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].<init>(int,byte,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    functionUses: 1
    ICount: 32
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:397"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:392"
        BranchSideFuncs:
        - "decodeProperties(io.netty.buffer.ByteBuf)"
        - "access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
        - "access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:391"
        BranchSideFuncs:
        - "decodeMessageId(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:397"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:411"
        BranchSideFuncs:
        - "decodeProperties(io.netty.buffer.ByteBuf)"
        - "access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
        - "access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:410"
        BranchSideFuncs:
        - "<init>(int,byte,io.netty.handler.codec.mqtt.MqttProperties)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:392,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMessageId(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:398,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:399,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeProperties(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:402,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:402,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].<init>(int,byte,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:403,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:417,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodePublishVariableHeader(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.mqtt.MqttFixedHeader)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 450
    functionLinenumberEnd: 476
    functionDepth: 4
    returnType: "io.netty.handler.codec.mqtt.Result<MqttPublishVariableHeader>"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].isValidPublishTopicName(java.lang.String)"
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].qosLevel()"
    - "[io.netty.handler.codec.mqtt.MqttQoS].value()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMessageId(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeProperties(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].<init>(java.lang.String,int,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    functionUses: 1
    ICount: 46
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:453"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:456"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:455"
        BranchSideFuncs:
        - "qosLevel()"
        - "value()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:459"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:465"
        BranchSideFuncs:
        - "decodeMessageId(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:464"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:465"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:470"
        BranchSideFuncs:
        - "access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
        - "decodeProperties(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:469"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:451,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].getMqttVersion(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:452,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:453,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:453,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].isValidPublishTopicName(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:454,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:454,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:454,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:454,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:456,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:459,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].qosLevel()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:459,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttQoS].value()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:460,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeMessageId(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:466,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeProperties(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:474,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].<init>(java.lang.String,int,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:475,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttCodecUtil].isValidPublishTopicName(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttCodecUtil"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttCodecUtil:48"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:53"
        BranchSideFuncs:
        - "indexOf(int)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:52"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttCodecUtil:49"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttCodecUtil:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:49,1"
      Dst: "[java.lang.String].indexOf(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeReasonCodeAndPropertiesVariableHeader(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 424
    functionLinenumberEnd: 443
    functionDepth: 4
    returnType: "io.netty.handler.codec.mqtt.Result<MqttReasonCodeAndPropertiesVariableHeader>"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeProperties(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].<init>(byte,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    functionUses: 1
    ICount: 25
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:425"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:425"
        BranchSideFuncs:
        - "decodeProperties(io.netty.buffer.ByteBuf)"
        - "access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
        - "access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:424"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:425"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:435"
        BranchSideFuncs:
        - "decodeProperties(io.netty.buffer.ByteBuf)"
        - "access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
        - "access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:434"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:426,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:427,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeProperties(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:428,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:429,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:439,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].<init>(byte,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:442,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodePayload(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.mqtt.MqttMessageType,int,int,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 504
    functionLinenumberEnd: 527
    functionDepth: 5
    returnType: "io.netty.handler.codec.mqtt.Result<?>"
    argCount: 6
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.mqtt.MqttMessageType"
    - "int"
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeConnectionPayload(io.netty.buffer.ByteBuf,int,io.netty.handler.codec.mqtt.MqttConnectVariableHeader)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeSubscribePayload(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeSubackPayload(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeUnsubscribePayload(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeUnsubAckPayload(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodePublishPayload(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    functionUses: 1
    ICount: 26
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:505,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:507,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeConnectionPayload(io.netty.buffer.ByteBuf,int,io.netty.handler.codec.mqtt.MqttConnectVariableHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:510,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeSubscribePayload(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:513,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeSubackPayload(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:516,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeUnsubscribePayload(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:519,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeUnsubAckPayload(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:522,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodePublishPayload(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:526,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeConnectionPayload(io.netty.buffer.ByteBuf,int,io.netty.handler.codec.mqtt.MqttConnectVariableHeader)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 533
    functionLinenumberEnd: 582
    functionDepth: 4
    returnType: "io.netty.handler.codec.mqtt.Result<MqttConnectPayload>"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "io.netty.handler.codec.mqtt.MqttConnectVariableHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.mqtt.MqttVersion].fromProtocolNameAndLevel(java.lang.String,byte)"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].name()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].version()"
    - "[io.netty.handler.codec.mqtt.MqttCodecUtil].isValidClientId(io.netty.handler.codec.mqtt.MqttVersion,int,java.lang.String)"
    - "[io.netty.handler.codec.mqtt.MqttIdentifierRejectedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].isWillFlag()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeProperties(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeByteArray(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].hasUserName()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].hasPassword()"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttProperties,java.lang.String,byte[],java.lang.String,byte[])"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    functionUses: 1
    ICount: 80
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:538"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:541"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:540"
        BranchSideFuncs:
        - "isWillFlag()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:547"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:560"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:559"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:548"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:553"
        BranchSideFuncs:
        - "decodeProperties(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:552"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:564"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:568"
        BranchSideFuncs:
        - "decodeString(io.netty.buffer.ByteBuf)"
        - "access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:567"
        BranchSideFuncs:
        - "hasPassword()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:568"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:573"
        BranchSideFuncs:
        - "decodeByteArray(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:572"
        BranchSideFuncs:
        - "<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttProperties,java.lang.String,byte[],java.lang.String,byte[])"
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:575"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:579"
        BranchSideFuncs:
        - "<init>(java.lang.Object,int)"
        - "access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
        - "<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttProperties,java.lang.String,byte[],java.lang.String,byte[])"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:578"
        BranchSideFuncs:
        - "access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:575"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:-1"
        BranchSideFuncs:
        - "<init>(java.lang.Object,int)"
        - "access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
        - "<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttProperties,java.lang.String,byte[],java.lang.String,byte[])"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:534,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:535,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:536,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].name()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:537,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].version()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:536,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttVersion].fromProtocolNameAndLevel(java.lang.String,byte)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:538,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttCodecUtil].isValidClientId(io.netty.handler.codec.mqtt.MqttVersion,int,java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:539,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:539,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:539,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:539,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttIdentifierRejectedException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:541,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:547,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].isWillFlag()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:549,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeProperties(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:555,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:557,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeByteArray(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:564,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].hasUserName()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:568,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].hasPassword()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:575,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectPayload].<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttProperties,java.lang.String,byte[],java.lang.String,byte[])"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:581,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeSubscribePayload(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 586
    functionLinenumberEnd: 609
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.Result<MqttSubscribePayload>"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.mqtt.MqttQoS].valueOf(int)"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy].valueOf(int)"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].<init>(io.netty.handler.codec.mqtt.MqttQoS,boolean,boolean,io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy)"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttSubscriptionOption)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    - "[io.netty.handler.codec.mqtt.MqttSubscribePayload].<init>(java.util.List)"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 46
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:589"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:608"
        BranchSideFuncs:
        - "decodeString(io.netty.buffer.ByteBuf)"
        - "access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
        - "readUnsignedByte()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:607"
        BranchSideFuncs:
        - "<init>(java.lang.Object,int)"
        - "<init>(java.util.List)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:596"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:590"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:589"
        BranchSideFuncs:
        - "decodeString(io.netty.buffer.ByteBuf)"
        - "access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
        - "readUnsignedByte()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:597"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:596"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "valueOf(int)"
        - "<init>(io.netty.handler.codec.mqtt.MqttQoS,boolean,boolean,io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy)"
        - "<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttSubscriptionOption)"
        - "access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:595"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:587,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:590,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:591,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:593,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:595,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttQoS].valueOf(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:598,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy].valueOf(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:600,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].<init>(io.netty.handler.codec.mqtt.MqttQoS,boolean,boolean,io.netty.handler.codec.mqtt.MqttSubscriptionOption$RetainedHandlingPolicy)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:606,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:606,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttTopicSubscription].<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttSubscriptionOption)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:606,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:608,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscribePayload].<init>(java.util.List)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:608,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeSubackPayload(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 613
    functionLinenumberEnd: 622
    functionDepth: 2
    returnType: "io.netty.handler.codec.mqtt.Result<MqttSubAckPayload>"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    - "[io.netty.handler.codec.mqtt.MqttSubAckPayload].<init>(java.lang.Iterable)"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:616"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:621"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "valueOf(int)"
        - "readUnsignedByte()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:620"
        BranchSideFuncs:
        - "<init>(java.lang.Object,int)"
        - "<init>(java.lang.Iterable)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:614,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:617,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:619,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:619,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:621,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubAckPayload].<init>(java.lang.Iterable)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:621,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttSubAckPayload].<init>(java.lang.Iterable)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttSubAckPayload"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 54
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Iterable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].iterator()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.buffer.CompositeByteBuf].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.channel.pool.AbstractChannelPoolMap].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.channel.DefaultChannelPipeline].iterator()"
    - "[io.netty.channel.group.ChannelGroupException].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$1].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$1].iterator()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$1].iterator()"
    - "[io.netty.handler.codec.EmptyHeaders].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.buffer.PoolChunkList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 167
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttSubAckPayload:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubAckPayload:52"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubAckPayload:51"
        BranchSideFuncs:
        - "unmodifiableList(java.util.List)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttSubAckPayload:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubAckPayload:50"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttSubAckPayload:49"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:43,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:44,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:45,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:46,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:46,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:46,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:50,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttSubAckPayload:52,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeUnsubscribePayload(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 640
    functionLinenumberEnd: 649
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.Result<MqttUnsubscribePayload>"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>()"
    - "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].<init>(java.util.List)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:643"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:648"
        BranchSideFuncs:
        - "decodeString(io.netty.buffer.ByteBuf)"
        - "access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
        - "add(java.lang.Object)"
        - "access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:647"
        BranchSideFuncs:
        - "<init>(java.lang.Object,int)"
        - "<init>(java.util.List)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:641,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:644,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeString(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:645,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$100(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:646,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].access$000(io.netty.handler.codec.mqtt.MqttDecoder$Result)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:646,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:648,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].<init>(java.util.List)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:648,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodeUnsubAckPayload(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 627
    functionLinenumberEnd: 636
    functionDepth: 2
    returnType: "io.netty.handler.codec.mqtt.Result<MqttUnsubAckPayload>"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.lang.Short].valueOf(short)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].<init>(java.lang.Iterable)"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttDecoder:630"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:635"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "valueOf(short)"
        - "readUnsignedByte()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttDecoder:634"
        BranchSideFuncs:
        - "<init>(java.lang.Object,int)"
        - "<init>(java.lang.Iterable)"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:628,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:631,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:633,1"
      Dst: "[java.lang.Short].valueOf(short)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:633,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:635,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].<init>(java.lang.Iterable)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:635,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttDecoder].decodePublishPayload(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttDecoder"
    linkageType: ""
    functionLinenumber: 653
    functionLinenumberEnd: 656
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.Result<ByteBuf>"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:654,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.handler.codec.mqtt.MqttDecoder:655,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttDecoder$Result].<init>(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageFactory].newMessage(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageFactory"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 89
    functionDepth: 5
    returnType: "io.netty.handler.codec.mqtt.MqttMessage"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].messageType()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.mqtt.MqttConnectMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttConnectVariableHeader,io.netty.handler.codec.mqtt.MqttConnectPayload)"
    - "[io.netty.handler.codec.mqtt.MqttConnAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttConnAckVariableHeader)"
    - "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader,io.netty.handler.codec.mqtt.MqttSubscribePayload)"
    - "[io.netty.handler.codec.mqtt.MqttSubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader,io.netty.handler.codec.mqtt.MqttSubAckPayload)"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubAckPayload)"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubscribePayload)"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttPublishVariableHeader,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.mqtt.MqttPubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader)"
    - "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object)"
    - "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 64
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:28,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].messageType()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:28,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:30,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttConnectVariableHeader,io.netty.handler.codec.mqtt.MqttConnectPayload)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:36,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttConnAckVariableHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:39,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader,io.netty.handler.codec.mqtt.MqttSubscribePayload)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:45,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttSubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader,io.netty.handler.codec.mqtt.MqttSubAckPayload)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:51,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubAckPayload)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:57,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader,io.netty.handler.codec.mqtt.MqttUnsubscribePayload)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:63,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttPublishVariableHeader,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:70,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPubAckMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:75,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:79,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:88,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:88,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:88,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:88,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:88,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessage"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttFixedHeader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessage:44,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelPipeline$3].run()"
    functionSourceFile: "io.netty.channel.DefaultChannelPipeline$3"
    linkageType: ""
    functionLinenumber: 561
    functionLinenumberEnd: 565
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].access$100(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline].access$000(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 50
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelPipeline$3:562,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].access$100(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.DefaultChannelPipeline$3:563,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].access$000(io.netty.channel.DefaultChannelPipeline,io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslUtils].isTLSv13SupportedByJDK(java.security.Provider)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 150
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslUtils].isTLSv13SupportedByJDK0(java.security.Provider)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:146"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:149"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslUtils:148"
        BranchSideFuncs:
        - "isTLSv13SupportedByJDK0(java.security.Provider)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:149,1"
      Dst: "[io.netty.handler.ssl.SslUtils].isTLSv13SupportedByJDK0(java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslUtils].isTLSv13SupportedByJDK0(java.security.Provider)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 160
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslUtils].arrayContains(java.lang.String[],java.lang.String)"
    - "[io.netty.handler.ssl.SslUtils].newInitContext(java.security.Provider)"
    - "[javax.net.ssl.SSLParameters].getProtocols()"
    - "[javax.net.ssl.SSLContext].getSupportedSSLParameters()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 10
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:154,1"
      Dst: "[io.netty.handler.ssl.SslUtils].newInitContext(java.security.Provider)"
    - Src: "io.netty.handler.ssl.SslUtils:155,1"
      Dst: "[javax.net.ssl.SSLContext].getSupportedSSLParameters()"
    - Src: "io.netty.handler.ssl.SslUtils:155,1"
      Dst: "[javax.net.ssl.SSLParameters].getProtocols()"
    - Src: "io.netty.handler.ssl.SslUtils:154,1"
      Dst: "[io.netty.handler.ssl.SslUtils].arrayContains(java.lang.String[],java.lang.String)"
    - Src: "io.netty.handler.ssl.SslUtils:157,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslUtils].newInitContext(java.security.Provider)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 194
    functionDepth: 0
    returnType: "javax.net.ssl.SSLContext"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLContext].getInstance(java.lang.String)"
    - "[javax.net.ssl.SSLContext].getInstance(java.lang.String,java.security.Provider)"
    - "[javax.net.ssl.SSLContext].init(javax.net.ssl.KeyManager[],javax.net.ssl.TrustManager[],java.security.SecureRandom)"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:190"
        BranchSideFuncs:
        - "getInstance(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:189"
        BranchSideFuncs:
        - "getInstance(java.lang.String,java.security.Provider)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:188,1"
      Dst: "[javax.net.ssl.SSLContext].getInstance(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslUtils:190,1"
      Dst: "[javax.net.ssl.SSLContext].getInstance(java.lang.String,java.security.Provider)"
    - Src: "io.netty.handler.ssl.SslUtils:192,1"
      Dst: "[javax.net.ssl.SSLContext].init(javax.net.ssl.KeyManager[],javax.net.ssl.TrustManager[],java.security.SecureRandom)"
    JavaMethodInfo:
      exceptions:
      - "java.security.NoSuchAlgorithmException"
      - "java.security.KeyManagementException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslUtils].arrayContains(java.lang.String[],java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 219
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.String[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 2
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:213"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:218"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:217"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:214"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:213"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslUtils:212"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:214,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslUtils].isTLSv13EnabledByJDK(java.security.Provider)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslUtils].isTLSv13EnabledByJDK0(java.security.Provider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:170"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslUtils:169"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:170,1"
      Dst: "[io.netty.handler.ssl.SslUtils].isTLSv13EnabledByJDK0(java.security.Provider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslUtils].isTLSv13EnabledByJDK0(java.security.Provider)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 181
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.security.Provider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslUtils].arrayContains(java.lang.String[],java.lang.String)"
    - "[io.netty.handler.ssl.SslUtils].newInitContext(java.security.Provider)"
    - "[javax.net.ssl.SSLContext].getDefaultSSLParameters()"
    - "[javax.net.ssl.SSLParameters].getProtocols()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:175,1"
      Dst: "[io.netty.handler.ssl.SslUtils].newInitContext(java.security.Provider)"
    - Src: "io.netty.handler.ssl.SslUtils:176,1"
      Dst: "[javax.net.ssl.SSLContext].getDefaultSSLParameters()"
    - Src: "io.netty.handler.ssl.SslUtils:176,1"
      Dst: "[javax.net.ssl.SSLParameters].getProtocols()"
    - Src: "io.netty.handler.ssl.SslUtils:175,1"
      Dst: "[io.netty.handler.ssl.SslUtils].arrayContains(java.lang.String[],java.lang.String)"
    - Src: "io.netty.handler.ssl.SslUtils:178,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslUtils].getSSLContext(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 206
    functionDepth: 1
    returnType: "javax.net.ssl.SSLContext"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.StringUtil].isNullOrEmpty(java.lang.String)"
    - "[javax.net.ssl.SSLContext].getInstance(java.lang.String)"
    - "[io.netty.handler.ssl.SslUtils].getTlsVersion()"
    - "[javax.net.ssl.SSLContext].getInstance(java.lang.String,java.lang.String)"
    - "[javax.net.ssl.SSLContext].init(javax.net.ssl.KeyManager[],javax.net.ssl.TrustManager[],java.security.SecureRandom)"
    functionUses: 1
    ICount: 11
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:199"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:202"
        BranchSideFuncs:
        - "getInstance(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:201"
        BranchSideFuncs:
        - "getTlsVersion()"
        - "getInstance(java.lang.String,java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:199,1"
      Dst: "[io.netty.util.internal.StringUtil].isNullOrEmpty(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslUtils:200,1"
      Dst: "[io.netty.handler.ssl.SslUtils].getTlsVersion()"
    - Src: "io.netty.handler.ssl.SslUtils:200,1"
      Dst: "[javax.net.ssl.SSLContext].getInstance(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslUtils:202,1"
      Dst: "[javax.net.ssl.SSLContext].getInstance(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.ssl.SslUtils:204,1"
      Dst: "[javax.net.ssl.SSLContext].init(javax.net.ssl.KeyManager[],javax.net.ssl.TrustManager[],java.security.SecureRandom)"
    JavaMethodInfo:
      exceptions:
      - "java.security.NoSuchAlgorithmException"
      - "java.security.KeyManagementException"
      - "java.security.NoSuchProviderException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslUtils].getTlsVersion()"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:209"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:208"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslUtils].useFallbackCiphersIfDefaultIsEmpty(java.util.List<String>,java.lang.Iterable<String>)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 232
    functionLinenumberEnd: 242
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.List<String>"
    - "java.lang.Iterable<String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Vector].isEmpty()"
    - "[jaz.Zer].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[java.util.ArrayList].isEmpty()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].iterator()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.buffer.CompositeByteBuf].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.channel.pool.AbstractChannelPoolMap].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.channel.DefaultChannelPipeline].iterator()"
    - "[io.netty.channel.group.ChannelGroupException].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$1].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$1].iterator()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$1].iterator()"
    - "[io.netty.handler.codec.EmptyHeaders].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.buffer.PoolChunkList].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.lang.String].contains(java.lang.CharSequence)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[java.util.List].isEmpty()"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 214
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:233"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:241"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.handler.ssl.SslUtils:240"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:234"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:241"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "contains(java.lang.CharSequence)"
        - "next()"
        - "startsWith(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:240"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:235"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:234"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslUtils:233"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "io.netty.handler.ssl.SslUtils:235"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:238"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.SslUtils:237"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:233,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.handler.ssl.SslUtils:234,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.ssl.SslUtils:234,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ssl.SslUtils:234,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ssl.SslUtils:235,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslUtils:235,1"
      Dst: "[java.lang.String].contains(java.lang.CharSequence)"
    - Src: "io.netty.handler.ssl.SslUtils:238,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.ssl.SslUtils].isValidHostNameForSNI(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: 481
    functionLinenumberEnd: 489
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].endsWith(java.lang.String)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    functionUses: 1
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslUtils:482"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:-1"
        BranchSideFuncs:
        - "isValidIpV6Address(java.lang.String)"
        - "indexOf(int)"
        - "endsWith(java.lang.String)"
        - "isValidIpV4Address(java.lang.String)"
        - "startsWith(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:485"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:-1"
        BranchSideFuncs:
        - "endsWith(java.lang.String)"
        - "startsWith(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:486"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:-1"
        BranchSideFuncs:
        - "isValidIpV4Address(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:486"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:-1"
        BranchSideFuncs:
        - "isValidIpV4Address(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:487"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:-1"
        BranchSideFuncs:
        - "isValidIpV6Address(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.SslUtils:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslUtils:488"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslUtils:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:485,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "io.netty.handler.ssl.SslUtils:486,1"
      Dst: "[java.lang.String].endsWith(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslUtils:486,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslUtils:487,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslUtils:488,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.ssl.SslUtils].<init>()"
    functionSourceFile: "io.netty.handler.ssl.SslUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslUtils:499,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder].<init>()"
    functionSourceFile: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder:122,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.MessageFormatter].deeplyAppendParameter(java.lang.StringBuilder,java.lang.Object,java.util.Set<Object[]>)"
    functionSourceFile: "io.netty.util.internal.logging.MessageFormatter"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 273
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.Object"
    - "java.util.Set<Object[]>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isArray()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.Long].longValue()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.Double].intValue()"
    - "[java.lang.Long].intValue()"
    - "[java.lang.Float].intValue()"
    - "[java.lang.Integer].intValue()"
    - "[java.util.concurrent.atomic.AtomicInteger].intValue()"
    - "[java.util.concurrent.atomic.LongAdder].intValue()"
    - "[java.lang.Byte].intValue()"
    - "[java.lang.Short].intValue()"
    - "[java.util.concurrent.atomic.AtomicLong].intValue()"
    - "[java.math.BigDecimal].intValue()"
    - "[java.math.BigInteger].intValue()"
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.Double].doubleValue()"
    - "[java.lang.StringBuilder].append(float)"
    - "[java.lang.Float].floatValue()"
    - "[io.netty.util.internal.logging.MessageFormatter].safeObjectAppend(java.lang.StringBuilder,java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.util.internal.logging.MessageFormatter].booleanArrayAppend(java.lang.StringBuilder,boolean[])"
    - "[io.netty.util.internal.logging.MessageFormatter].byteArrayAppend(java.lang.StringBuilder,byte[])"
    - "[io.netty.util.internal.logging.MessageFormatter].charArrayAppend(java.lang.StringBuilder,char[])"
    - "[io.netty.util.internal.logging.MessageFormatter].shortArrayAppend(java.lang.StringBuilder,short[])"
    - "[io.netty.util.internal.logging.MessageFormatter].intArrayAppend(java.lang.StringBuilder,int[])"
    - "[io.netty.util.internal.logging.MessageFormatter].longArrayAppend(java.lang.StringBuilder,long[])"
    - "[io.netty.util.internal.logging.MessageFormatter].floatArrayAppend(java.lang.StringBuilder,float[])"
    - "[io.netty.util.internal.logging.MessageFormatter].doubleArrayAppend(java.lang.StringBuilder,double[])"
    - "[io.netty.util.internal.logging.MessageFormatter].objectArrayAppend(java.lang.StringBuilder,java.lang.Object[],java.util.Set)"
    - "[java.lang.Number].intValue()"
    functionUses: 3
    ICount: 84
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:225"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:229"
        BranchSideFuncs:
        - "append(java.lang.String)"
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:228"
        BranchSideFuncs:
        - "getClass()"
        - "isArray()"
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:230"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:250"
        BranchSideFuncs:
        - "isAssignableFrom(java.lang.Class)"
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:249"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:231"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:244"
        BranchSideFuncs:
        - "safeObjectAppend(java.lang.StringBuilder,java.lang.Object)"
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:233"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:235"
        BranchSideFuncs:
        - "append(long)"
        - "longValue()"
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:234"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:235"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:236"
        BranchSideFuncs:
        - "append(int)"
        - "intValue()"
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:235"
        BranchSideFuncs:
        - "append(int)"
        - "intValue()"
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:235"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:236"
        BranchSideFuncs:
        - "append(int)"
        - "intValue()"
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:235"
        BranchSideFuncs:
        - "append(int)"
        - "intValue()"
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:235"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:237"
        BranchSideFuncs:
        - "append(int)"
        - "intValue()"
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:236"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:237"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:239"
        BranchSideFuncs:
        - "append(double)"
        - "doubleValue()"
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:238"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:239"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:242"
        BranchSideFuncs:
        - "append(float)"
        - "floatValue()"
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:241"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:251"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:253"
        BranchSideFuncs:
        - "booleanArrayAppend(java.lang.StringBuilder,boolean[])"
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:252"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:253"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:255"
        BranchSideFuncs:
        - "byteArrayAppend(java.lang.StringBuilder,byte[])"
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:254"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:255"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:257"
        BranchSideFuncs:
        - "charArrayAppend(java.lang.StringBuilder,char[])"
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:256"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:257"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:259"
        BranchSideFuncs:
        - "shortArrayAppend(java.lang.StringBuilder,short[])"
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:258"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:259"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:261"
        BranchSideFuncs:
        - "intArrayAppend(java.lang.StringBuilder,int[])"
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:260"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:261"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:263"
        BranchSideFuncs:
        - "longArrayAppend(java.lang.StringBuilder,long[])"
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:262"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:263"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:265"
        BranchSideFuncs:
        - "floatArrayAppend(java.lang.StringBuilder,float[])"
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:264"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:265"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:268"
        BranchSideFuncs:
        - "doubleArrayAppend(java.lang.StringBuilder,double[])"
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:267"
        BranchSideFuncs:
        - "objectArrayAppend(java.lang.StringBuilder,java.lang.Object[],java.util.Set)"
    Callsites:
    - Src: "io.netty.util.internal.logging.MessageFormatter:226,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:229,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.util.internal.logging.MessageFormatter:230,1"
      Dst: "[java.lang.Class].isArray()"
    - Src: "io.netty.util.internal.logging.MessageFormatter:231,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:234,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "io.netty.util.internal.logging.MessageFormatter:234,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:236,1"
      Dst: "[java.lang.Number].intValue()"
    - Src: "io.netty.util.internal.logging.MessageFormatter:236,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:238,1"
      Dst: "[java.lang.Double].doubleValue()"
    - Src: "io.netty.util.internal.logging.MessageFormatter:238,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:240,1"
      Dst: "[java.lang.Float].floatValue()"
    - Src: "io.netty.util.internal.logging.MessageFormatter:240,1"
      Dst: "[java.lang.StringBuilder].append(float)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:242,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].safeObjectAppend(java.lang.StringBuilder,java.lang.Object)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:250,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:252,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].booleanArrayAppend(java.lang.StringBuilder,boolean[])"
    - Src: "io.netty.util.internal.logging.MessageFormatter:254,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].byteArrayAppend(java.lang.StringBuilder,byte[])"
    - Src: "io.netty.util.internal.logging.MessageFormatter:256,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].charArrayAppend(java.lang.StringBuilder,char[])"
    - Src: "io.netty.util.internal.logging.MessageFormatter:258,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].shortArrayAppend(java.lang.StringBuilder,short[])"
    - Src: "io.netty.util.internal.logging.MessageFormatter:260,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].intArrayAppend(java.lang.StringBuilder,int[])"
    - Src: "io.netty.util.internal.logging.MessageFormatter:262,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].longArrayAppend(java.lang.StringBuilder,long[])"
    - Src: "io.netty.util.internal.logging.MessageFormatter:264,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].floatArrayAppend(java.lang.StringBuilder,float[])"
    - Src: "io.netty.util.internal.logging.MessageFormatter:266,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].doubleArrayAppend(java.lang.StringBuilder,double[])"
    - Src: "io.netty.util.internal.logging.MessageFormatter:268,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].objectArrayAppend(java.lang.StringBuilder,java.lang.Object[],java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 35
    CyclomaticComplexity: 17
  - functionName: "[io.netty.util.internal.logging.MessageFormatter].safeObjectAppend(java.lang.StringBuilder,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.MessageFormatter"
    linkageType: ""
    functionLinenumber: 275
    functionLinenumberEnd: 286
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ReflectiveChannelFactory].toString()"
    - "[sun.security.x509.SerialNumber].toString()"
    - "[io.netty.util.Version].toString()"
    - "[javax.net.ssl.SSLEngineResult].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].toString()"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].toString()"
    - "[java.util.AbstractCollection].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[sun.security.x509.CertificateAlgorithmId].toString()"
    - "[io.netty.buffer.PoolSubpage].toString()"
    - "[java.net.InetSocketAddress].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[java.lang.ProcessBuilder$Redirect$3].toString()"
    - "[io.netty.util.Recycler$1].toString()"
    - "[sun.security.x509.PolicyConstraintsExtension].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].toString()"
    - "[java.nio.charset.Charset].toString()"
    - "[java.util.Properties].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].toString()"
    - "[sun.security.util.JarConstraintsParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].toString()"
    - "[java.lang.reflect.Constructor].toString()"
    - "[java.nio.DoubleBuffer].toString()"
    - "[io.netty.util.Signal].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Thread].toString()"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].toString()"
    - "[java.lang.Throwable].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$CompositePrinterParser].toString()"
    - "[io.netty.channel.embedded.EmbeddedSocketAddress].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].toString()"
    - "[java.util.regex.Matcher].toString()"
    - "[java.lang.reflect.Field].toString()"
    - "[java.lang.invoke.MethodHandles$Lookup].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.net.URL].toString()"
    - "[java.lang.invoke.LambdaForm$Name].toString()"
    - "[sun.security.x509.RDN].toString()"
    - "[java.util.concurrent.atomic.AtomicReference].toString()"
    - "[java.util.Currency].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].toString()"
    - "[io.netty.channel.kqueue.NativeLongArray].toString()"
    - "[io.netty.handler.proxy.ProxyConnectionEvent].toString()"
    - "[java.util.Formatter].toString()"
    - "[java.lang.ModuleLayer].toString()"
    - "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - "[io.netty.handler.ssl.SslCompletionEvent].toString()"
    - "[io.netty.bootstrap.BootstrapConfig].toString()"
    - "[java.lang.ProcessBuilder$Redirect$1].toString()"
    - "[io.netty.handler.codec.xml.XmlEntityReference].toString()"
    - "[java.net.Proxy].toString()"
    - "[sun.security.util.DerValue].toString()"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].toString()"
    - "[sun.security.x509.AlgorithmId].toString()"
    - "[java.text.AttributedCharacterIterator$Attribute].toString()"
    - "[java.lang.Runtime$Version].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$2].toString()"
    - "[java.lang.module.ModuleDescriptor$Exports].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].toString()"
    - "[io.netty.channel.kqueue.AcceptFilter].toString()"
    - "[sun.security.x509.SubjectKeyIdentifierExtension].toString()"
    - "[io.netty.buffer.DefaultByteBufHolder].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.time.temporal.ChronoField].toString()"
    - "[java.security.PermissionCollection].toString()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].toString()"
    - "[java.util.concurrent.ConcurrentHashMap].toString()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].toString()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].toString()"
    - "[java.util.Vector].toString()"
    - "[io.netty.handler.codec.http.HttpVersion].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].toString()"
    - "[java.text.CalendarBuilder].toString()"
    - "[java.net.URLConnection].toString()"
    - "[java.util.EventObject].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].toString()"
    - "[io.netty.util.AbstractConstant].toString()"
    - "[sun.reflect.annotation.TypeAnnotation].toString()"
    - "[java.security.SecureRandom].toString()"
    - "[java.util.concurrent.atomic.AtomicLong].toString()"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].toString()"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].toString()"
    - "[sun.util.calendar.Era].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].toString()"
    - "[java.lang.module.ModuleDescriptor$Requires].toString()"
    - "[java.time.ZonedDateTime].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache].toString()"
    - "[java.math.MutableBigInteger].toString()"
    - "[java.lang.module.ModuleDescriptor$Provides].toString()"
    - "[java.net.InetSocketAddress$InetSocketAddressHolder].toString()"
    - "[sun.security.x509.GeneralNames].toString()"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].toString()"
    - "[sun.security.x509.Extension].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].toString()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].toString()"
    - "[io.netty.handler.ssl.util.LazyX509Certificate].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].toString()"
    - "[sun.security.x509.ExtendedKeyUsageExtension].toString()"
    - "[io.netty.buffer.WrappedByteBuf].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].toString()"
    - "[java.security.MessageDigest].toString()"
    - "[io.netty.handler.codec.dns.DnsOpCode].toString()"
    - "[java.io.ObjectOutputStream$DebugTraceInfoStack].toString()"
    - "[java.util.TreeMap$Entry].toString()"
    - "[java.time.zone.ZoneOffsetTransition].toString()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].toString()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].toString()"
    - "[java.lang.Integer].toString()"
    - "[java.lang.ProcessBuilder$Redirect$6].toString()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].toString()"
    - "[java.util.OptionalInt].toString()"
    - "[javax.naming.NamingException].toString()"
    - "[java.time.LocalDate].toString()"
    - "[java.util.ServiceLoader].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache].toString()"
    - "[java.net.InetAddress].toString()"
    - "[java.util.jar.Attributes$Name].toString()"
    - "[java.lang.Boolean].toString()"
    - "[io.netty.handler.codec.DefaultHeaders].toString()"
    - "[jaz.Zer].toString()"
    - "[io.netty.util.concurrent.DefaultPromise].toString()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].toString()"
    - "[io.netty.handler.ssl.PemX509Certificate].toString()"
    - "[sun.security.x509.UniqueIdentity].toString()"
    - "[java.security.CodeSigner].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].toString()"
    - "[sun.security.x509.CertificateX509Key].toString()"
    - "[java.nio.IntBuffer].toString()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].toString()"
    - "[java.util.concurrent.CountDownLatch].toString()"
    - "[io.netty.handler.codec.redis.IntegerRedisMessage].toString()"
    - "[java.nio.ByteOrder].toString()"
    - "[java.util.OptionalLong].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].toString()"
    - "[io.netty.handler.codec.xml.XmlElementEnd].toString()"
    - "[java.io.ObjectStreamClass].toString()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].toString()"
    - "[java.util.concurrent.atomic.LongAdder].toString()"
    - "[java.util.Optional].toString()"
    - "[java.net.URI].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].toString()"
    - "[java.nio.FloatBuffer].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuestion].toString()"
    - "[io.netty.handler.ssl.OpenSslSessionId].toString()"
    - "[io.netty.channel.group.DefaultChannelGroup].toString()"
    - "[sun.security.x509.AuthorityKeyIdentifierExtension].toString()"
    - "[sun.security.util.ObjectIdentifier].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].toString()"
    - "[java.util.concurrent.LinkedBlockingDeque].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].toString()"
    - "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].toString()"
    - "[java.time.format.DateTimePrintContext].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].toString()"
    - "[sun.nio.fs.UnixPath].toString()"
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].toString()"
    - "[java.lang.Class].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].toString()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].toString()"
    - "[java.util.BitSet].toString()"
    - "[java.lang.StackFrameInfo].toString()"
    - "[javax.xml.namespace.QName].toString()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].toString()"
    - "[sun.security.x509.CertificateExtensions].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].toString()"
    - "[sun.security.x509.BasicConstraintsExtension].toString()"
    - "[java.util.concurrent.atomic.AtomicReferenceArray].toString()"
    - "[java.lang.invoke.Invokers].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].toString()"
    - "[java.time.LocalDateTime].toString()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].toString()"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[java.time.format.DateTimeFormatter].toString()"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].toString()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].toString()"
    - "[sun.security.x509.CertificateIssuerName].toString()"
    - "[java.lang.invoke.SerializedLambda].toString()"
    - "[sun.util.locale.LocaleExtensions].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].toString()"
    - "[sun.security.x509.NameConstraintsExtension].toString()"
    - "[java.net.NetworkInterface].toString()"
    - "[java.util.StringJoiner].toString()"
    - "[java.util.AbstractMap].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].toString()"
    - "[java.time.LocalTime].toString()"
    - "[java.security.ProtectionDomain].toString()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock].toString()"
    - "[io.netty.handler.codec.EmptyHeaders].toString()"
    - "[java.time.temporal.ValueRange].toString()"
    - "[java.time.Instant].toString()"
    - "[java.security.PrivilegedActionException].toString()"
    - "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].toString()"
    - "[sun.util.calendar.CalendarDate].toString()"
    - "[java.lang.module.Configuration].toString()"
    - "[java.security.AlgorithmParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].toString()"
    - "[java.lang.ThreadGroup].toString()"
    - "[io.netty.buffer.AbstractByteBufAllocator].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].toString()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].toString()"
    - "[java.nio.file.attribute.FileTime].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].toString()"
    - "[io.netty.handler.codec.xml.XmlNamespace].toString()"
    - "[io.netty.channel.unix.FileDescriptor].toString()"
    - "[java.lang.Double].toString()"
    - "[java.util.OptionalDouble].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].toString()"
    - "[io.netty.bootstrap.AbstractBootstrap].toString()"
    - "[io.netty.channel.WriteBufferWaterMark].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].toString()"
    - "[java.math.BigInteger].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].toString()"
    - "[java.time.format.Parsed].toString()"
    - "[java.time.OffsetDateTime].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString()"
    - "[java.time.OffsetTime].toString()"
    - "[java.util.WeakHashMap$Entry].toString()"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].toString()"
    - "[sun.security.x509.X509CertImpl].toString()"
    - "[java.time.ZoneOffset].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribePayload].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].toString()"
    - "[java.lang.reflect.Method].toString()"
    - "[io.netty.handler.codec.http2.Http2Flags].toString()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].toString()"
    - "[io.netty.buffer.CompositeByteBuf].toString()"
    - "[java.lang.Enum].toString()"
    - "[io.netty.handler.codec.http2.HpackHeaderField].toString()"
    - "[java.net.ServerSocket].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[java.time.zone.ZoneRules].toString()"
    - "[java.security.spec.PSSParameterSpec].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent].toString()"
    - "[sun.security.x509.X500Name].toString()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].toString()"
    - "[io.netty.channel.embedded.EmbeddedChannelId].toString()"
    - "[java.util.concurrent.locks.AbstractQueuedSynchronizer].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.util.regex.Pattern].toString()"
    - "[java.util.concurrent.atomic.AtomicLongArray].toString()"
    - "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].toString()"
    - "[sun.util.locale.Extension].toString()"
    - "[io.netty.handler.codec.smtp.SmtpCommand].toString()"
    - "[java.util.concurrent.ForkJoinPool].toString()"
    - "[sun.security.x509.CertificateVersion].toString()"
    - "[java.lang.ProcessHandleImpl].toString()"
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].toString()"
    - "[java.util.LongSummaryStatistics].toString()"
    - "[java.io.ObjectStreamField].toString()"
    - "[java.lang.ProcessImpl].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[io.netty.resolver.dns.InflightNameResolver].toString()"
    - "[java.nio.charset.CodingErrorAction].toString()"
    - "[java.lang.Float].toString()"
    - "[java.time.format.DecimalStyle].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].toString()"
    - "[sun.security.x509.IssuerAlternativeNameExtension].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[java.io.File].toString()"
    - "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].toString()"
    - "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].toString()"
    - "[java.util.Calendar].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].toString()"
    - "[java.nio.ByteBuffer].toString()"
    - "[io.netty.buffer.EmptyByteBuf].toString()"
    - "[io.netty.buffer.AbstractByteBuf].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock].toString()"
    - "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].toString()"
    - "[java.lang.Package].toString()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].toString()"
    - "[java.text.ParsePosition].toString()"
    - "[sun.util.locale.BaseLocale].toString()"
    - "[sun.reflect.annotation.AnnotationType].toString()"
    - "[java.lang.Character$Subset].toString()"
    - "[sun.security.util.LazyCodeSourcePermissionCollection].toString()"
    - "[java.lang.Object].toString()"
    - "[io.netty.handler.codec.xml.XmlElement].toString()"
    - "[java.lang.Character].toString()"
    - "[sun.net.www.MessageHeader].toString()"
    - "[java.lang.invoke.MethodType].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].toString()"
    - "[io.netty.handler.codec.http.QueryStringEncoder].toString()"
    - "[java.net.InterfaceAddress].toString()"
    - "[java.time.zone.ZoneOffsetTransitionRule].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].toString()"
    - "[io.netty.handler.codec.dns.DnsRecordType].toString()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].toString()"
    - "[java.lang.StackTraceElement].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toString()"
    - "[java.lang.ProcessBuilder$Redirect$4].toString()"
    - "[java.lang.invoke.LambdaForm].toString()"
    - "[io.netty.handler.codec.dns.DnsResponseCode].toString()"
    - "[io.netty.util.collection.LongObjectHashMap].toString()"
    - "[javax.naming.directory.ModificationItem].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].toString()"
    - "[sun.security.x509.PolicyMappingsExtension].toString()"
    - "[sun.security.x509.CertificatePoliciesExtension].toString()"
    - "[java.security.CodeSource].toString()"
    - "[java.security.Permission].toString()"
    - "[java.security.Timestamp].toString()"
    - "[io.netty.buffer.PoolArena].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].toString()"
    - "[java.nio.charset.CoderResult].toString()"
    - "[io.netty.channel.unix.PeerCredentials].toString()"
    - "[java.security.SecureRandomSpi].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[javax.security.auth.Subject].toString()"
    - "[javax.crypto.CryptoPermission].toString()"
    - "[java.util.Locale].toString()"
    - "[java.time.chrono.AbstractChronology].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsPtrRecord].toString()"
    - "[java.util.concurrent.locks.ReentrantLock].toString()"
    - "[java.lang.module.ResolvedModule].toString()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].toString()"
    - "[io.netty.handler.codec.http.HttpMethod].toString()"
    - "[java.lang.invoke.MemberName].toString()"
    - "[sun.security.x509.PrivateKeyUsageExtension].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].toString()"
    - "[io.netty.handler.traffic.TrafficCounter].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].toString()"
    - "[java.io.ByteArrayOutputStream].toString()"
    - "[sun.security.x509.CertificateValidity].toString()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].toString()"
    - "[java.time.Duration].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[sun.security.x509.X509CertInfo].toString()"
    - "[sun.security.x509.AVA].toString()"
    - "[java.lang.module.ModuleDescriptor$Opens].toString()"
    - "[java.math.BigDecimal].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].toString()"
    - "[java.lang.invoke.MethodHandleImpl$LoopClauses].toString()"
    - "[sun.security.x509.CertificateSerialNumber].toString()"
    - "[sun.nio.fs.UnixFileStore].toString()"
    - "[java.net.Socket].toString()"
    - "[javax.net.ssl.SNIHostName].toString()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].toString()"
    - "[java.util.Hashtable$Entry].toString()"
    - "[java.security.Signature].toString()"
    - "[java.lang.Short].toString()"
    - "[java.util.concurrent.CompletableFuture].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsOptPseudoRrRecord].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses].toString()"
    - "[java.util.concurrent.ThreadPoolExecutor].toString()"
    - "[java.util.concurrent.LinkedBlockingQueue].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].toString()"
    - "[java.time.ZoneId].toString()"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].toString()"
    - "[java.net.SocketImpl].toString()"
    - "[sun.security.x509.KeyIdentifier].toString()"
    - "[java.util.Hashtable].toString()"
    - "[sun.security.x509.GeneralSubtrees].toString()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].toString()"
    - "[java.text.FieldPosition].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent].toString()"
    - "[io.netty.util.DomainNameMapping].toString()"
    - "[sun.security.x509.AuthorityInfoAccessExtension].toString()"
    - "[java.util.concurrent.CopyOnWriteArrayList].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].toString()"
    - "[io.netty.buffer.PoolChunkList].toString()"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].toString()"
    - "[io.netty.buffer.PoolChunk].toString()"
    - "[io.netty.resolver.dns.DefaultDnsServerAddresses].toString()"
    - "[io.netty.util.internal.EmptyPriorityQueue].toString()"
    - "[io.netty.channel.unix.DomainSocketAddress].toString()"
    - "[javax.net.ssl.SNIServerName].toString()"
    - "[java.lang.ProcessBuilder$RedirectPipeImpl].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckPayload].toString()"
    - "[java.io.StringWriter].toString()"
    - "[io.netty.handler.codec.xml.XmlAttribute].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].toString()"
    - "[java.util.zip.ZipEntry].toString()"
    - "[java.util.UUID].toString()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].toString()"
    - "[java.security.Provider].toString()"
    - "[java.time.Period].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].toString()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].toString()"
    - "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].toString()"
    - "[java.lang.reflect.Parameter].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].toString()"
    - "[sun.security.x509.CertificateSubjectName].toString()"
    - "[io.netty.channel.DefaultChannelId].toString()"
    - "[java.util.Date].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame].toString()"
    - "[java.util.IntSummaryStatistics].toString()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[sun.security.x509.CRLDistributionPointsExtension].toString()"
    - "[io.netty.channel.DefaultAddressedEnvelope].toString()"
    - "[io.netty.channel.local.LocalAddress].toString()"
    - "[io.netty.util.collection.CharObjectHashMap].toString()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[io.netty.handler.codec.xml.XmlElementStart].toString()"
    - "[io.netty.handler.codec.DecoderResult].toString()"
    - "[io.netty.handler.ssl.SniCompletionEvent].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[io.netty.util.collection.ByteObjectHashMap].toString()"
    - "[java.util.AbstractMap$SimpleEntry].toString()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].toString()"
    - "[io.netty.util.collection.ShortObjectHashMap].toString()"
    - "[java.time.format.DateTimeParseContext].toString()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].toString()"
    - "[java.math.MathContext].toString()"
    - "[io.netty.handler.codec.http.QueryStringDecoder].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$NumberPrinterParser].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$1].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].toString()"
    - "[java.nio.LongBuffer].toString()"
    - "[java.util.DoubleSummaryStatistics].toString()"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].toString()"
    - "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].toString()"
    - "[java.lang.Long].toString()"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].toString()"
    - "[java.security.Provider$Service].toString()"
    - "[io.netty.channel.sctp.SctpMessage].toString()"
    - "[io.netty.util.collection.IntObjectHashMap].toString()"
    - "[io.netty.handler.codec.xml.XmlContent].toString()"
    - "[io.netty.handler.codec.http.HttpHeaders].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].toString()"
    - "[java.lang.invoke.MethodHandle].toString()"
    - "[java.lang.invoke.MethodTypeForm].toString()"
    - "[java.util.HashMap$Node].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].toString()"
    - "[java.lang.ProcessBuilder$Redirect$2].toString()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].toString()"
    - "[java.time.temporal.ChronoUnit].toString()"
    - "[io.netty.buffer.FixedCompositeByteBuf].toString()"
    - "[java.nio.channels.FileChannel$MapMode].toString()"
    - "[sun.security.x509.SubjectAlternativeNameExtension].toString()"
    - "[io.netty.channel.DefaultChannelPipeline].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].toString()"
    - "[java.nio.ShortBuffer].toString()"
    - "[io.netty.handler.codec.string.LineSeparator].toString()"
    - "[java.util.ResourceBundle$CacheKey].toString()"
    - "[io.netty.buffer.SwappedByteBuf].toString()"
    - "[java.security.cert.CertPath].toString()"
    - "[io.netty.channel.unix.Socket].toString()"
    - "[java.lang.module.ModuleDescriptor].toString()"
    - "[sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo].toString()"
    - "[java.lang.module.ModuleDescriptor$Version].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].toString()"
    - "[java.net.HttpCookie].toString()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].toString()"
    - "[sun.util.calendar.JulianCalendar$Date].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].toString()"
    - "[java.lang.ProcessBuilder$Redirect$5].toString()"
    - "[io.netty.channel.AbstractChannel].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].toString()"
    - "[sun.security.x509.GeneralSubtree].toString()"
    - "[sun.security.x509.GeneralName].toString()"
    - "[java.lang.Byte].toString()"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams].toString()"
    - "[io.netty.handler.codec.xml.XmlDTD].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].toString()"
    - "[io.netty.bootstrap.ServerBootstrapConfig].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandType].toString()"
    - "[java.lang.Module].toString()"
    - "[sun.security.util.BitArray].toString()"
    - "[io.netty.channel.AbstractChannelHandlerContext].toString()"
    - "[java.nio.channels.FileLock].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].toString()"
    - "[io.netty.handler.codec.http.HttpScheme].toString()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].toString()"
    - "[javax.security.auth.x500.X500Principal].toString()"
    - "[java.util.logging.Level].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.io.PrintStream].println(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[java.lang.Throwable].printStackTrace()"
    functionUses: 2
    ICount: 19
    EdgeCount: 537
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.MessageFormatter:276,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "io.netty.util.internal.logging.MessageFormatter:277,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:279,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.logging.MessageFormatter:281,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.util.internal.logging.MessageFormatter:281,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.util.internal.logging.MessageFormatter:281,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:281,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.logging.MessageFormatter:280,1"
      Dst: "[java.io.PrintStream].println(java.lang.String)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:282,1"
      Dst: "[java.lang.Throwable].printStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.MessageFormatter].booleanArrayAppend(java.lang.StringBuilder,boolean[])"
    functionSourceFile: "io.netty.util.internal.logging.MessageFormatter"
    linkageType: ""
    functionLinenumber: 307
    functionLinenumberEnd: 317
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "boolean[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(boolean)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:308"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:311"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:310"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:312"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:315"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.MessageFormatter:311,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:313,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.MessageFormatter].byteArrayAppend(java.lang.StringBuilder,byte[])"
    functionSourceFile: "io.netty.util.internal.logging.MessageFormatter"
    linkageType: ""
    functionLinenumber: 318
    functionLinenumberEnd: 328
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:319"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:322"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:321"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:323"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:326"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.MessageFormatter:322,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:324,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.MessageFormatter].charArrayAppend(java.lang.StringBuilder,char[])"
    functionSourceFile: "io.netty.util.internal.logging.MessageFormatter"
    linkageType: ""
    functionLinenumber: 329
    functionLinenumberEnd: 339
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:330"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:333"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:332"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:334"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:337"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.MessageFormatter:333,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:335,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.MessageFormatter].shortArrayAppend(java.lang.StringBuilder,short[])"
    functionSourceFile: "io.netty.util.internal.logging.MessageFormatter"
    linkageType: ""
    functionLinenumber: 340
    functionLinenumberEnd: 350
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:341"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:344"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:343"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:345"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:348"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.MessageFormatter:344,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:346,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.MessageFormatter].intArrayAppend(java.lang.StringBuilder,int[])"
    functionSourceFile: "io.netty.util.internal.logging.MessageFormatter"
    linkageType: ""
    functionLinenumber: 351
    functionLinenumberEnd: 361
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:352"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:355"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:354"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:356"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:359"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.MessageFormatter:355,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:357,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.MessageFormatter].longArrayAppend(java.lang.StringBuilder,long[])"
    functionSourceFile: "io.netty.util.internal.logging.MessageFormatter"
    linkageType: ""
    functionLinenumber: 362
    functionLinenumberEnd: 372
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:363"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:366"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:365"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:367"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:370"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.MessageFormatter:366,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:368,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.MessageFormatter].floatArrayAppend(java.lang.StringBuilder,float[])"
    functionSourceFile: "io.netty.util.internal.logging.MessageFormatter"
    linkageType: ""
    functionLinenumber: 373
    functionLinenumberEnd: 383
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "float[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(float)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:374"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:377"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:376"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:378"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:381"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.MessageFormatter:377,1"
      Dst: "[java.lang.StringBuilder].append(float)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:379,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.MessageFormatter].doubleArrayAppend(java.lang.StringBuilder,double[])"
    functionSourceFile: "io.netty.util.internal.logging.MessageFormatter"
    linkageType: ""
    functionLinenumber: 384
    functionLinenumberEnd: 394
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.StringBuilder"
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].append(double)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 16
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:385"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:388"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:387"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:389"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:392"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.logging.MessageFormatter:388,1"
      Dst: "[java.lang.StringBuilder].append(double)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:390,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.logging.MessageFormatter].objectArrayAppend(java.lang.StringBuilder,java.lang.Object[],java.util.Set<Object[]>)"
    functionSourceFile: "io.netty.util.internal.logging.MessageFormatter"
    linkageType: ""
    functionLinenumber: 287
    functionLinenumberEnd: 306
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "java.lang.Object[]"
    - "java.util.Set<Object[]>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.HashSet].<init>(int)"
    - "[io.netty.util.internal.ConcurrentSet].add(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].add(java.lang.Object)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].add(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].add(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].add(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.util.TreeSet].add(java.lang.Object)"
    - "[io.netty.util.internal.logging.MessageFormatter].deeplyAppendParameter(java.lang.StringBuilder,java.lang.Object,java.util.Set)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].remove(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.HashSet].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].remove(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].remove(java.lang.Object)"
    - "[java.util.TreeSet].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].remove(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.AbstractCollection].remove(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].remove(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].remove(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    - "[java.util.Set].remove(java.lang.Object)"
    functionUses: 1
    ICount: 31
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:288"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:291"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:290"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:291"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:null"
        BranchSideFuncs:
        - "<init>(int)"
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:294"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:303"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.logging.MessageFormatter:302"
        BranchSideFuncs:
        - "append(java.lang.String)"
    - Branch String: "io.netty.util.internal.logging.MessageFormatter:296"
      Branch Sides: []
    Callsites:
    - Src: "io.netty.util.internal.logging.MessageFormatter:292,1"
      Dst: "[java.util.HashSet].<init>(int)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:294,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:295,1"
      Dst: "[io.netty.util.internal.logging.MessageFormatter].deeplyAppendParameter(java.lang.StringBuilder,java.lang.Object,java.util.Set)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:297,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.logging.MessageFormatter:301,1"
      Dst: "[java.util.Set].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.internal.logging.MessageFormatter].<init>()"
    functionSourceFile: "io.netty.util.internal.logging.MessageFormatter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.MessageFormatter:395,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdRequest].<init>(io.netty.handler.codec.socks.SocksCmdType,io.netty.handler.codec.socks.SocksAddressType,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdRequest"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 72
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.socks.SocksCmdType"
    - "io.netty.handler.codec.socks.SocksAddressType"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksRequest].<init>(io.netty.handler.codec.socks.SocksRequestType)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.net.IDN].toASCII(java.lang.String)"
    - "[java.lang.String].length()"
    - "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - "[java.lang.AbstractStringBuilder:java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    functionUses: 3
    ICount: 64
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksCmdRequest:45"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdRequest:64"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdRequest:63"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socks.SocksCmdRequest:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdRequest:54"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdRequest:53"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socks.SocksCmdRequest:57"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdRequest:64"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdRequest:63"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socks.SocksCmdRequest:64"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdRequest:65"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdRequest:64"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.socks.SocksCmdRequest:64"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdRequest:67"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdRequest:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:38,1"
      Dst: "[io.netty.handler.codec.socks.SocksRequest].<init>(io.netty.handler.codec.socks.SocksRequestType)"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:39,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:43,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:45,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:46,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:46,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:46,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:46,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:50,1"
      Dst: "[java.net.IDN].toASCII(java.lang.String)"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:51,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:57,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:65,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.socks.SocksCmdRequest].cmdType()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksCmdType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdRequest].addressType()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksAddressType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdRequest].host()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.IDN].toUnicode(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksCmdRequest:97"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdRequest:96"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:97,1"
      Dst: "[java.net.IDN].toUnicode(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.socks.SocksCmdRequest].port()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdRequest].encodeAsByteBuf(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdRequest"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 136
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksProtocolVersion].byteValue()"
    - "[io.netty.handler.codec.socks.SocksMessage].protocolVersion()"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.socks.SocksCmdType].byteValue()"
    - "[io.netty.handler.codec.socks.SocksAddressType].byteValue()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.util.NetUtil].createByteArrayFromIpAddressString(java.lang.String)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[java.lang.String].length()"
    - "[io.netty.buffer.AbstractByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    functionUses: 1
    ICount: 41
    EdgeCount: 109
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:111,1"
      Dst: "[io.netty.handler.codec.socks.SocksMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:111,1"
      Dst: "[io.netty.handler.codec.socks.SocksProtocolVersion].byteValue()"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:111,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:112,1"
      Dst: "[io.netty.handler.codec.socks.SocksCmdType].byteValue()"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:114,1"
      Dst: "[io.netty.handler.codec.socks.SocksAddressType].byteValue()"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:115,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:117,1"
      Dst: "[io.netty.util.NetUtil].createByteArrayFromIpAddressString(java.lang.String)"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:117,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:118,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:123,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.socks.SocksCmdRequest:124,1"
      Dst: "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.socks.SocksCmdType].byteValue()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdType"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.bytes.ByteArrayEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.bytes.ByteArrayEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.bytes.ByteArrayEncoder:54,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.bytes.ByteArrayEncoder].encode(io.netty.channel.ChannelHandlerContext,byte[],java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.bytes.ByteArrayEncoder"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "byte[]"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.bytes.ByteArrayEncoder:57,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.handler.codec.bytes.ByteArrayEncoder:57,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.bytes.ByteArrayEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.bytes.ByteArrayEncoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.bytes.ByteArrayEncoder].encode(io.netty.channel.ChannelHandlerContext,byte[],java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.bytes.ByteArrayEncoder:53,1"
      Dst: "[io.netty.handler.codec.bytes.ByteArrayEncoder].encode(io.netty.channel.ChannelHandlerContext,byte[],java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ClassLoaderClassResolver].resolve(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.serialization.ClassLoaderClassResolver"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Class<?>"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ClassLoader].loadClass(java.lang.String)"
    - "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ClassLoaderClassResolver:29,1"
      Dst: "[java.lang.ClassLoader].loadClass(java.lang.String)"
    - Src: "io.netty.handler.codec.serialization.ClassLoaderClassResolver:31,1"
      Dst: "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.ClassNotFoundException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].<init>(io.netty.handler.codec.socksx.v4.Socks4CommandType,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.socksx.v4.Socks4CommandType"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].<init>(io.netty.handler.codec.socksx.v4.Socks4CommandType,java.lang.String,int,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:42,1"
      Dst: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].<init>(io.netty.handler.codec.socksx.v4.Socks4CommandType,java.lang.String,int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].type()"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.v4.Socks4CommandType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].dstAddr()"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].dstPort()"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].userId()"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].toString()"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 107
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.AbstractSocksMessage].decoderResult()"
    - "[io.netty.handler.codec.DecoderResult].isSuccess()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].type()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].dstAddr()"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].dstPort()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].userId()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 27
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:95"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:86,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:87,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:87,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:89,1"
      Dst: "[io.netty.handler.codec.socksx.AbstractSocksMessage].decoderResult()"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:90,1"
      Dst: "[io.netty.handler.codec.DecoderResult].isSuccess()"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:92,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:97,1"
      Dst: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].type()"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:99,1"
      Dst: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].dstAddr()"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:101,1"
      Dst: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].dstPort()"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:101,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:103,1"
      Dst: "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].userId()"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:104,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest:106,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultFileRegion].<init>(java.nio.channels.FileChannel,long,long)"
    functionSourceFile: "io.netty.channel.DefaultFileRegion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.nio.channels.FileChannel"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultFileRegion:54,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].<init>()"
    - Src: "io.netty.channel.DefaultFileRegion:55,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.DefaultFileRegion:56,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultFileRegion].<init>(java.io.File,long,long)"
    functionSourceFile: "io.netty.channel.DefaultFileRegion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultFileRegion:69,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].<init>()"
    - Src: "io.netty.channel.DefaultFileRegion:70,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.DefaultFileRegion:71,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(long,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultFileRegion].position()"
    functionSourceFile: "io.netty.channel.DefaultFileRegion"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultFileRegion].count()"
    functionSourceFile: "io.netty.channel.DefaultFileRegion"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultFileRegion].transfered()"
    functionSourceFile: "io.netty.channel.DefaultFileRegion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultFileRegion].transferred()"
    functionSourceFile: "io.netty.channel.DefaultFileRegion"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 17
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultFileRegion].transferTo(java.nio.channels.WritableByteChannel,long)"
    functionSourceFile: "io.netty.channel.DefaultFileRegion"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 141
    functionDepth: 2
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.nio.channels.WritableByteChannel"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - "[io.netty.util.IllegalReferenceCountException].<init>(int)"
    - "[io.netty.channel.DefaultFileRegion].open()"
    - "[sun.nio.ch.FileChannelImpl].transferTo(long,long,java.nio.channels.WritableByteChannel)"
    - "[io.netty.channel.DefaultFileRegion].validate(io.netty.channel.DefaultFileRegion,long)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.nio.channels.FileChannel].transferTo(long,long,java.nio.channels.WritableByteChannel)"
    functionUses: 4
    ICount: 48
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultFileRegion:116"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultFileRegion:117"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.DefaultFileRegion:116"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.DefaultFileRegion:116"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultFileRegion:121"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.DefaultFileRegion:120"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultFileRegion:121"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultFileRegion:124"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultFileRegion:123"
        BranchSideFuncs:
        - "refCnt()"
    - Branch String: "io.netty.channel.DefaultFileRegion:124"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultFileRegion:128"
        BranchSideFuncs:
        - "<init>(int)"
      - BranchSide: "io.netty.channel.DefaultFileRegion:127"
        BranchSideFuncs:
        - "transferTo(long,long,java.nio.channels.WritableByteChannel)"
        - "open()"
    - Branch String: "io.netty.channel.DefaultFileRegion:131"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultFileRegion:133"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultFileRegion:132"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultFileRegion:133"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultFileRegion:139"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultFileRegion:117,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.DefaultFileRegion:117,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.DefaultFileRegion:117,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.channel.DefaultFileRegion:117,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.channel.DefaultFileRegion:117,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.DefaultFileRegion:117,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.channel.DefaultFileRegion:124,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].refCnt()"
    - Src: "io.netty.channel.DefaultFileRegion:125,1"
      Dst: "[io.netty.util.IllegalReferenceCountException].<init>(int)"
    - Src: "io.netty.channel.DefaultFileRegion:128,1"
      Dst: "[io.netty.channel.DefaultFileRegion].open()"
    - Src: "io.netty.channel.DefaultFileRegion:130,1"
      Dst: "[java.nio.channels.FileChannel].transferTo(long,long,java.nio.channels.WritableByteChannel)"
    - Src: "io.netty.channel.DefaultFileRegion:138,1"
      Dst: "[io.netty.channel.DefaultFileRegion].validate(io.netty.channel.DefaultFileRegion,long)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.DefaultFileRegion].validate(io.netty.channel.DefaultFileRegion,long)"
    functionSourceFile: "io.netty.channel.DefaultFileRegion"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 192
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.DefaultFileRegion"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[sun.nio.ch.FileChannelImpl].size()"
    - "[java.io.IOException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.nio.channels.FileChannel].size()"
    functionUses: 2
    ICount: 24
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultFileRegion:188"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultFileRegion:191"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.DefaultFileRegion:190"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultFileRegion:186,1"
      Dst: "[java.nio.channels.FileChannel].size()"
    - Src: "io.netty.channel.DefaultFileRegion:189,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.DefaultFileRegion:189,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.DefaultFileRegion:189,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.channel.DefaultFileRegion:189,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.DefaultFileRegion:189,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultFileRegion].deallocate()"
    functionSourceFile: "io.netty.channel.DefaultFileRegion"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 158
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultFileRegion:147"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultFileRegion:150"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultFileRegion:149"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "close()"
    Callsites:
    - Src: "io.netty.channel.DefaultFileRegion:153,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    - Src: "io.netty.channel.DefaultFileRegion:155,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultFileRegion].retain()"
    functionSourceFile: "io.netty.channel.DefaultFileRegion"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionDepth: 0
    returnType: "io.netty.channel.FileRegion"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].retain()"
    functionUses: 7
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultFileRegion:161,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultFileRegion].retain(int)"
    functionSourceFile: "io.netty.channel.DefaultFileRegion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.FileRegion"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultFileRegion:167,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultFileRegion].touch()"
    functionSourceFile: "io.netty.channel.DefaultFileRegion"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionDepth: 0
    returnType: "io.netty.channel.FileRegion"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultFileRegion].touch(java.lang.Object)"
    functionSourceFile: "io.netty.channel.DefaultFileRegion"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionDepth: 0
    returnType: "io.netty.channel.FileRegion"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheEncoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder:25,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder].encodeHeader(io.netty.buffer.ByteBuf,io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 40
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].magic()"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].opcode()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].keyLength()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extrasLength()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].dataType()"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].reserved()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].totalBodyLength()"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].opaque()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].cas()"
    - "[io.netty.buffer.SwappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.CompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeLong(long)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeLong(long)"
    - "[io.netty.buffer.AbstractByteBuf].writeLong(long)"
    - "[io.netty.buffer.WrappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.EmptyByteBuf].writeLong(long)"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].magic()"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].opcode()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].keyLength()"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].extrasLength()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].dataType()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest].reserved()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].totalBodyLength()"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].opaque()"
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].cas()"
    - "[io.netty.buffer.ByteBuf].writeLong(long)"
    functionUses: 1
    ICount: 28
    EdgeCount: 95
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder:30,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].magic()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder:30,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder:31,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].opcode()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder:32,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].keyLength()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder:32,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder:33,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].extrasLength()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder:34,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].dataType()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder:35,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest].reserved()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder:36,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].totalBodyLength()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder:36,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder:37,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].opaque()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder:38,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage].cas()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder:38,1"
      Dst: "[io.netty.buffer.ByteBuf].writeLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder].encodeHeader(io.netty.buffer.ByteBuf,io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder"
    linkageType: ""
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder].encodeHeader(io.netty.buffer.ByteBuf,io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder:24,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestEncoder].encodeHeader(io.netty.buffer.ByteBuf,io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].<init>(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].<init>(io.netty.channel.ChannelPromise,boolean)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.DelegatingChannelPromiseNotifier:39"
      Branch Sides:
      - BranchSide: "io.netty.channel.DelegatingChannelPromiseNotifier:39"
        BranchSideFuncs:
        - "<init>(io.netty.channel.ChannelPromise,boolean)"
      - BranchSide: "io.netty.channel.DelegatingChannelPromiseNotifier:38"
        BranchSideFuncs:
        - "<init>(io.netty.channel.ChannelPromise,boolean)"
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:39,1"
      Dst: "[io.netty.channel.DelegatingChannelPromiseNotifier].<init>(io.netty.channel.ChannelPromise,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].<init>(io.netty.channel.ChannelPromise,boolean)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 46
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelPromise"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:42,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:43,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 60
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isCancelled()"
    - "[io.netty.util.concurrent.DefaultPromise].isCancelled()"
    - "[io.netty.util.concurrent.CompleteFuture].isCancelled()"
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].get()"
    - "[io.netty.util.concurrent.DefaultPromise].get()"
    - "[io.netty.util.concurrent.AbstractFuture].get()"
    - "[io.netty.util.internal.PromiseNotificationUtil].trySuccess(io.netty.util.concurrent.Promise,java.lang.Object,io.netty.util.internal.logging.InternalLogger)"
    - "[io.netty.util.internal.PromiseNotificationUtil].tryCancel(io.netty.util.concurrent.Promise,io.netty.util.internal.logging.InternalLogger)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.FailedChannelFuture:io.netty.channel.SucceededChannelFuture:io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.util.internal.PromiseNotificationUtil].tryFailure(io.netty.util.concurrent.Promise,java.lang.Throwable,io.netty.util.internal.logging.InternalLogger)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[java.util.concurrent.Future].get()"
    - "[java.util.concurrent.Future].isCancelled()"
    - "[io.netty.util.concurrent.Future].cause()"
    functionUses: 1
    ICount: 23
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.channel.DelegatingChannelPromiseNotifier:49"
      Branch Sides:
      - BranchSide: "io.netty.channel.DelegatingChannelPromiseNotifier:49"
        BranchSideFuncs:
        - "isSuccess()"
        - "isCancelled()"
      - BranchSide: "io.netty.channel.DelegatingChannelPromiseNotifier:48"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DelegatingChannelPromiseNotifier:50"
      Branch Sides:
      - BranchSide: "io.netty.channel.DelegatingChannelPromiseNotifier:50"
        BranchSideFuncs:
        - "trySuccess(io.netty.util.concurrent.Promise,java.lang.Object,io.netty.util.internal.logging.InternalLogger)"
        - "get()"
      - BranchSide: "io.netty.channel.DelegatingChannelPromiseNotifier:49"
        BranchSideFuncs:
        - "isSuccess()"
        - "isCancelled()"
    - Branch String: "io.netty.channel.DelegatingChannelPromiseNotifier:50"
      Branch Sides:
      - BranchSide: "io.netty.channel.DelegatingChannelPromiseNotifier:56"
        BranchSideFuncs:
        - "trySuccess(io.netty.util.concurrent.Promise,java.lang.Object,io.netty.util.internal.logging.InternalLogger)"
        - "get()"
      - BranchSide: "io.netty.channel.DelegatingChannelPromiseNotifier:55"
        BranchSideFuncs:
        - "tryFailure(io.netty.util.concurrent.Promise,java.lang.Throwable,io.netty.util.internal.logging.InternalLogger)"
        - "cause()"
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:50,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:51,1"
      Dst: "[java.util.concurrent.Future].get()"
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:52,1"
      Dst: "[io.netty.util.internal.PromiseNotificationUtil].trySuccess(io.netty.util.concurrent.Promise,java.lang.Object,io.netty.util.internal.logging.InternalLogger)"
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:50,1"
      Dst: "[java.util.concurrent.Future].isCancelled()"
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:54,1"
      Dst: "[io.netty.util.internal.PromiseNotificationUtil].tryCancel(io.netty.util.concurrent.Promise,io.netty.util.internal.logging.InternalLogger)"
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:56,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:57,1"
      Dst: "[io.netty.util.internal.PromiseNotificationUtil].tryFailure(io.netty.util.concurrent.Promise,java.lang.Throwable,io.netty.util.internal.logging.InternalLogger)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "io.netty.channel.Channel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].channel()"
    - "[io.netty.channel.DefaultChannelProgressivePromise:io.netty.channel.DefaultChannelPromise:io.netty.channel.VoidChannelPromise].channel()"
    - "[io.netty.channel.ChannelPromise].channel()"
    functionUses: 25
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:63,1"
      Dst: "[io.netty.channel.ChannelPromise].channel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Void)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "java.lang.Void"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Void)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Void)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Void)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Void)"
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Void)"
    - "[io.netty.channel.ChannelPromise].setSuccess(java.lang.Void)"
    functionUses: 2
    ICount: 5
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:68,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess(java.lang.Void)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    functionUses: 50
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:74,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess()"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$CloseFuture].trySuccess()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].trySuccess()"
    - "[io.netty.channel.DefaultChannelPromise].trySuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess()"
    - "[io.netty.channel.VoidChannelPromise].trySuccess()"
    - "[io.netty.channel.ChannelPromise].trySuccess()"
    functionUses: 12
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:80,1"
      Dst: "[io.netty.channel.ChannelPromise].trySuccess()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess(java.lang.Void)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Void"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].trySuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].trySuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:85,1"
      Dst: "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 126
    ICount: 5
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:90,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener<?\
      \ extends Future<? super Void>>)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener<? extends Future<? super Void>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 129
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:96,1"
      Dst: "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelPromise].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:102,1"
      Dst: "[io.netty.channel.ChannelPromise].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].removeListener(io.netty.util.concurrent.GenericFutureListener<?\
      \ extends Future<? super Void>>)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener<? extends Future<? super Void>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelProgressivePromise].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.ChannelPromise].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 3
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:108,1"
      Dst: "[io.netty.channel.ChannelPromise].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelPromise].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:114,1"
      Dst: "[io.netty.channel.ChannelPromise].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 64
    ICount: 5
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:120,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].setUncancellable()"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setUncancellable()"
    - "[io.netty.util.concurrent.DefaultPromise].setUncancellable()"
    - "[io.netty.channel.VoidChannelPromise].setUncancellable()"
    - "[io.netty.util.concurrent.Promise].setUncancellable()"
    functionUses: 21
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:125,1"
      Dst: "[io.netty.util.concurrent.Promise].setUncancellable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].await()"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPromise].await()"
    - "[io.netty.channel.VoidChannelPromise].await()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].await()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].await()"
    - "[io.netty.channel.ChannelPromise].await()"
    functionUses: 2
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:130,1"
      Dst: "[io.netty.channel.ChannelPromise].await()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].awaitUninterruptibly()"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].awaitUninterruptibly()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].awaitUninterruptibly()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].awaitUninterruptibly()"
    - "[io.netty.channel.DefaultChannelPromise].awaitUninterruptibly()"
    - "[io.netty.channel.ChannelPromise].awaitUninterruptibly()"
    functionUses: 2
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:136,1"
      Dst: "[io.netty.channel.ChannelPromise].awaitUninterruptibly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].isVoid()"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isVoid()"
    - "[io.netty.channel.DefaultChannelPromise].isVoid()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].isVoid()"
    - "[io.netty.channel.VoidChannelPromise].isVoid()"
    - "[io.netty.channel.ChannelFuture].isVoid()"
    functionUses: 6
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:142,1"
      Dst: "[io.netty.channel.ChannelFuture].isVoid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].unvoid()"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionDepth: 3
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].<init>(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isVoid()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].unvoid()"
    - "[io.netty.channel.DefaultChannelPromise].unvoid()"
    - "[io.netty.channel.VoidChannelPromise].unvoid()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].unvoid()"
    - "[io.netty.channel.ChannelPromise].unvoid()"
    functionUses: 14
    ICount: 10
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.DelegatingChannelPromiseNotifier:147"
      Branch Sides:
      - BranchSide: "io.netty.channel.DelegatingChannelPromiseNotifier:146"
        BranchSideFuncs:
        - "isVoid()"
        - "<init>(io.netty.channel.ChannelPromise)"
        - "unvoid()"
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:147,1"
      Dst: "[io.netty.channel.DelegatingChannelPromiseNotifier].isVoid()"
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:147,1"
      Dst: "[io.netty.channel.ChannelPromise].unvoid()"
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:147,1"
      Dst: "[io.netty.channel.DelegatingChannelPromiseNotifier].<init>(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].await(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.Future].await(long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:152,1"
      Dst: "[io.netty.util.concurrent.Future].await(long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].await(long)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.Future].await(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:157,1"
      Dst: "[io.netty.util.concurrent.Future].await(long)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].awaitUninterruptibly(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.Future].awaitUninterruptibly(long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:162,1"
      Dst: "[io.netty.util.concurrent.Future].awaitUninterruptibly(long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].awaitUninterruptibly(long)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.Future].awaitUninterruptibly(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:167,1"
      Dst: "[io.netty.util.concurrent.Future].awaitUninterruptibly(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].getNow()"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].getNow()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].getNow()"
    - "[io.netty.channel.VoidChannelPromise].getNow()"
    - "[io.netty.util.concurrent.Future].getNow()"
    functionUses: 24
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:172,1"
      Dst: "[io.netty.util.concurrent.Future].getNow()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].cancel(boolean)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cancel(boolean)"
    - "[io.netty.util.concurrent.DefaultPromise].cancel(boolean)"
    - "[io.netty.channel.VoidChannelPromise].cancel(boolean)"
    - "[io.netty.util.concurrent.Future].cancel(boolean)"
    functionUses: 38
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:177,1"
      Dst: "[io.netty.util.concurrent.Future].cancel(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].isCancelled()"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isCancelled()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isCancelled()"
    - "[io.netty.channel.VoidChannelPromise].isCancelled()"
    - "[java.util.concurrent.Future].isCancelled()"
    functionUses: 15
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:182,1"
      Dst: "[java.util.concurrent.Future].isCancelled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 188
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[java.util.concurrent.Future].isDone()"
    functionUses: 74
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:187,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].get()"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.AbstractFuture].get()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].get()"
    - "[io.netty.util.concurrent.DefaultPromise].get()"
    - "[java.util.concurrent.Future].get()"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:192,1"
      Dst: "[java.util.concurrent.Future].get()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      - "java.util.concurrent.ExecutionException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].get(long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 2
    argTypes:
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.Future].get(long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:197,1"
      Dst: "[java.util.concurrent.Future].get(long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      - "java.util.concurrent.ExecutionException"
      - "java.util.concurrent.TimeoutException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].sync()"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelPromise].sync()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:202,1"
      Dst: "[io.netty.channel.ChannelPromise].sync()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].syncUninterruptibly()"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 207
    functionLinenumberEnd: 210
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.VoidChannelPromise].syncUninterruptibly()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].syncUninterruptibly()"
    - "[io.netty.channel.DefaultChannelPromise].syncUninterruptibly()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].syncUninterruptibly()"
    - "[io.netty.channel.ChannelPromise].syncUninterruptibly()"
    functionUses: 2
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:208,1"
      Dst: "[io.netty.channel.ChannelPromise].syncUninterruptibly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 213
    functionLinenumberEnd: 215
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    functionUses: 66
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:214,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].isCancellable()"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.Future].isCancellable()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:219,1"
      Dst: "[io.netty.util.concurrent.Future].isCancellable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.util.concurrent.Future].cause()"
    functionUses: 86
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:224,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess(java.lang.Object)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess(java.lang.Void)"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:31,1"
      Dst: "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess(java.lang.Void)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Object)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Void)"
    functionUses: 40
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:31,1"
      Dst: "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Void)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DelegatingChannelPromiseNotifier].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.DelegatingChannelPromiseNotifier"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DelegatingChannelPromiseNotifier:31,1"
      Dst: "[io.netty.channel.DelegatingChannelPromiseNotifier].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpRequestDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.HttpRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectDecoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpRequestDecoder:84,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectDecoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpRequestDecoder].<init>(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectDecoder].<init>(int,int,int,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpRequestDecoder:92,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectDecoder].<init>(int,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpRequestDecoder].<init>(int,int,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectDecoder].<init>(int,int,int,boolean,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpRequestDecoder:97,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectDecoder].<init>(int,int,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpRequestDecoder].<init>(int,int,int,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http.HttpRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "int"
    - "int"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectDecoder].<init>(int,int,int,boolean,boolean,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpRequestDecoder:103,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectDecoder].<init>(int,int,int,boolean,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpRequestDecoder].<init>(int,int,int,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "int"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectDecoder].<init>(int,int,int,boolean,boolean,int,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpRequestDecoder:110,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectDecoder].<init>(int,int,int,boolean,boolean,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpRequestDecoder].<init>(int,int,int,boolean,int,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.HttpRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "int"
    - "int"
    - "int"
    - "boolean"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectDecoder].<init>(int,int,int,boolean,boolean,int,boolean,boolean)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpRequestDecoder:117,1"
      Dst: "[io.netty.handler.codec.http.HttpObjectDecoder].<init>(int,int,int,boolean,boolean,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpRequestDecoder].createMessage(java.lang.String[])"
    functionSourceFile: "io.netty.handler.codec.http.HttpRequestDecoder"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 126
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.HttpMessage"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpVersion].valueOf(java.lang.String)"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http.HttpMethod].valueOf(java.lang.String)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpRequestDecoder:124,1"
      Dst: "[io.netty.handler.codec.http.HttpVersion].valueOf(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpRequestDecoder:125,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod].valueOf(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpRequestDecoder:125,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpRequestDecoder].createInvalidMessage()"
    functionSourceFile: "io.netty.handler.codec.http.HttpRequestDecoder"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.HttpMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpRequestDecoder:130,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpRequestDecoder].isDecodingRequest()"
    functionSourceFile: "io.netty.handler.codec.http.HttpRequestDecoder"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NettyRuntime].setAvailableProcessors(int)"
    functionSourceFile: "io.netty.util.NettyRuntime"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.NettyRuntime$AvailableProcessorsHolder].setAvailableProcessors(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NettyRuntime:87,1"
      Dst: "[io.netty.util.NettyRuntime$AvailableProcessorsHolder].setAvailableProcessors(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NettyRuntime$AvailableProcessorsHolder].setAvailableProcessors(int)"
    functionSourceFile: "io.netty.util.NettyRuntime$AvailableProcessorsHolder"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[java.lang.String].format(java.util.Locale,java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.util.NettyRuntime$AvailableProcessorsHolder:45"
      Branch Sides:
      - BranchSide: "io.netty.util.NettyRuntime$AvailableProcessorsHolder:52"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.NettyRuntime$AvailableProcessorsHolder:44,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.util.NettyRuntime$AvailableProcessorsHolder:49,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.util.NettyRuntime$AvailableProcessorsHolder:46,1"
      Dst: "[java.lang.String].format(java.util.Locale,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.util.NettyRuntime$AvailableProcessorsHolder:51,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NettyRuntime].availableProcessors()"
    functionSourceFile: "io.netty.util.NettyRuntime"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 6
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.NettyRuntime$AvailableProcessorsHolder].availableProcessors()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NettyRuntime:98,1"
      Dst: "[io.netty.util.NettyRuntime$AvailableProcessorsHolder].availableProcessors()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NettyRuntime$AvailableProcessorsHolder].availableProcessors()"
    functionSourceFile: "io.netty.util.NettyRuntime$AvailableProcessorsHolder"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 73
    functionDepth: 5
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SystemPropertyUtil].getInt(java.lang.String,int)"
    - "[java.lang.Runtime].availableProcessors()"
    - "[java.lang.Runtime].getRuntime()"
    - "[io.netty.util.NettyRuntime$AvailableProcessorsHolder].setAvailableProcessors(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.NettyRuntime$AvailableProcessorsHolder:65"
      Branch Sides:
      - BranchSide: "io.netty.util.NettyRuntime$AvailableProcessorsHolder:71"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.NettyRuntime$AvailableProcessorsHolder:69,1"
      Dst: "[java.lang.Runtime].getRuntime()"
    - Src: "io.netty.util.NettyRuntime$AvailableProcessorsHolder:69,1"
      Dst: "[java.lang.Runtime].availableProcessors()"
    - Src: "io.netty.util.NettyRuntime$AvailableProcessorsHolder:67,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].getInt(java.lang.String,int)"
    - Src: "io.netty.util.NettyRuntime$AvailableProcessorsHolder:70,1"
      Dst: "[io.netty.util.NettyRuntime$AvailableProcessorsHolder].setAvailableProcessors(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.SystemPropertyUtil].getInt(java.lang.String,int)"
    functionSourceFile: "io.netty.util.internal.SystemPropertyUtil"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 150
    functionDepth: 4
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String)"
    - "[java.lang.String].trim()"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object[])"
    functionUses: 38
    ICount: 17
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.util.internal.SystemPropertyUtil:133"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:137"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.SystemPropertyUtil:136"
        BranchSideFuncs:
        - "parseInt(java.lang.String)"
        - "trim()"
    Callsites:
    - Src: "io.netty.util.internal.SystemPropertyUtil:132,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String)"
    - Src: "io.netty.util.internal.SystemPropertyUtil:137,1"
      Dst: "[java.lang.String].trim()"
    - Src: "io.netty.util.internal.SystemPropertyUtil:139,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "io.netty.util.internal.SystemPropertyUtil:146,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.util.internal.SystemPropertyUtil:144,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NettyRuntime].<init>()"
    functionSourceFile: "io.netty.util.NettyRuntime"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NettyRuntime:104,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise$3].run()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise$3"
    linkageType: ""
    functionLinenumber: 740
    functionLinenumberEnd: 743
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].access$400(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener[],long,long)"
    functionUses: 49
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise$3:741,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].access$400(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener[],long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].access$400(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener[],long,long)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 2
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.util.concurrent.ProgressiveFuture"
    - "io.netty.util.concurrent.GenericProgressiveFutureListener[]"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].notifyProgressiveListeners0(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener[],long,long)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:35,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].notifyProgressiveListeners0(io.netty.util.concurrent.ProgressiveFuture,io.netty.util.concurrent.GenericProgressiveFutureListener[],long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].<init>(io.netty.handler.codec.spdy.SpdyVersion)"
    - "[com.jcraft.jzlib.Deflater].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[com.jcraft.jzlib.Deflater].deflateInit(int,int,int,com.jcraft.jzlib.JZlib$WrapperType)"
    - "[io.netty.handler.codec.compression.CompressionException].<init>(java.lang.String)"
    - "[com.jcraft.jzlib.Deflater].deflateSetDictionary(byte[],int)"
    functionUses: 0
    ICount: 69
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:37"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:38"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:37"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:37"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:41"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:40"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:42"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:41"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:45"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:44"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:45"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:46"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:45"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:45"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:50"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:49"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:52"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:56"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:55"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:57"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:62"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:36,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].<init>(io.netty.handler.codec.spdy.SpdyVersion)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:30,1"
      Dst: "[com.jcraft.jzlib.Deflater].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:38,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:38,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:38,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:38,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:38,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:50,1"
      Dst: "[com.jcraft.jzlib.Deflater].deflateInit(int,int,int,com.jcraft.jzlib.JZlib$WrapperType)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:53,1"
      Dst: "[io.netty.handler.codec.compression.CompressionException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:56,1"
      Dst: "[com.jcraft.jzlib.Deflater].deflateSetDictionary(byte[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder].setInput(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.PooledHeapByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AbstractByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    functionUses: 1
    ICount: 21
    EdgeCount: 64
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:73"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:72"
        BranchSideFuncs:
        - "getBytes(int,byte[])"
        - "readerIndex()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:65,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:69,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:70,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:71,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:71,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:74,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder].encode(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 122
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].ceil(double)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[com.jcraft.jzlib.Deflater].deflate(int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.compression.CompressionException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 75
    EdgeCount: 95
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:105"
        BranchSideFuncs:
        - "toString()"
        - "append(int)"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:104"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:106"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:109"
        BranchSideFuncs:
        - "writerIndex()"
        - "writerIndex(int)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:108"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:118"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:109"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:108"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:118"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:109"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:108"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:118"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:121"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:120"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:118"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:121"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:120"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:89,1"
      Dst: "[java.lang.Math].ceil(double)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:90,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:91,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:92,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:92,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:97,1"
      Dst: "[com.jcraft.jzlib.Deflater].deflate(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:99,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:102,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:102,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:102,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:102,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:102,1"
      Dst: "[io.netty.handler.codec.compression.CompressionException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:107,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:119,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder].encode(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 144
    functionDepth: 6
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.handler.codec.spdy.SpdyHeadersFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].encode(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder].setInput(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder].encode(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    functionUses: 3
    ICount: 22
    EdgeCount: 50
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:129"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:133"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:132"
        BranchSideFuncs:
        - "encode(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
        - "isReadable()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:135"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:139"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:138"
        BranchSideFuncs:
        - "encode(io.netty.buffer.ByteBufAllocator)"
        - "setInput(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:126,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNullWithIAE(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:133,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawEncoder].encode(io.netty.buffer.ByteBufAllocator,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:135,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:142,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:139,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder].setInput(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:140,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder].encode(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder].end()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 156
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.jcraft.jzlib.Deflater].deflateEnd()"
    functionUses: 1
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:151"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:150"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockJZlibEncoder:152,1"
      Dst: "[com.jcraft.jzlib.Deflater].deflateEnd()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    functionSourceFile: "io.netty.util.internal.ReadOnlyIterator"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2].hasNext()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 227
    ICount: 4
    EdgeCount: 41
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ReadOnlyIterator:30,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ReadOnlyIterator].next()"
    functionSourceFile: "io.netty.util.internal.ReadOnlyIterator"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2].next()"
    - "[java.util.Iterator].next()"
    functionUses: 229
    ICount: 4
    EdgeCount: 54
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ReadOnlyIterator:35,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ReadOnlyIterator].remove()"
    functionSourceFile: "io.netty.util.internal.ReadOnlyIterator"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ReadOnlyIterator:40,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$AnnotatedNoRouteToHostException].<init>(java.net.NoRouteToHostException,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.AbstractChannel$AnnotatedNoRouteToHostException"
    linkageType: ""
    functionLinenumber: 1188
    functionLinenumberEnd: 1192
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.NoRouteToHostException"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.NoRouteToHostException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Throwable].getMessage()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 1
    ICount: 13
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$AnnotatedNoRouteToHostException:1189,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.AbstractChannel$AnnotatedNoRouteToHostException:1189,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.channel.AbstractChannel$AnnotatedNoRouteToHostException:1189,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.AbstractChannel$AnnotatedNoRouteToHostException:1189,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.channel.AbstractChannel$AnnotatedNoRouteToHostException:1189,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.AbstractChannel$AnnotatedNoRouteToHostException:1189,1"
      Dst: "[java.net.NoRouteToHostException].<init>(java.lang.String)"
    - Src: "io.netty.channel.AbstractChannel$AnnotatedNoRouteToHostException:1190,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$AnnotatedNoRouteToHostException].fillInStackTrace()"
    functionSourceFile: "io.netty.channel.AbstractChannel$AnnotatedNoRouteToHostException"
    linkageType: ""
    functionLinenumber: 1195
    functionLinenumberEnd: 1197
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.StacklessClosedChannelException].<init>()"
    functionSourceFile: "io.netty.channel.StacklessClosedChannelException"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.ClosedChannelException].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.StacklessClosedChannelException:29,1"
      Dst: "[java.nio.channels.ClosedChannelException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.StacklessClosedChannelException].fillInStackTrace()"
    functionSourceFile: "io.netty.channel.StacklessClosedChannelException"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.StacklessClosedChannelException].newInstance(java.lang.Class<?>,java.lang.String)"
    functionSourceFile: "io.netty.channel.StacklessClosedChannelException"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 1
    returnType: "io.netty.channel.StacklessClosedChannelException"
    argCount: 2
    argTypes:
    - "java.lang.Class<?>"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.StacklessClosedChannelException].<init>()"
    - "[io.netty.util.internal.ThrowableUtil].unknownStackTrace(java.lang.Throwable,java.lang.Class,java.lang.String)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.StacklessClosedChannelException:41,1"
      Dst: "[io.netty.channel.StacklessClosedChannelException].<init>()"
    - Src: "io.netty.channel.StacklessClosedChannelException:41,1"
      Dst: "[io.netty.util.internal.ThrowableUtil].unknownStackTrace(java.lang.Throwable,java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator"
    linkageType: ""
    functionLinenumber: 1470
    functionLinenumberEnd: 1473
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$700(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.Runnable)"
    functionUses: 49
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator:1471,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].access$700(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.SimpleTrustManagerFactory$1].<init>(java.lang.String,double,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.util.SimpleTrustManagerFactory$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "double"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.Provider].<init>(java.lang.String,double,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.SimpleTrustManagerFactory$1:40,1"
      Dst: "[java.security.Provider].<init>(java.lang.String,double,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoopGroup].<init>()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoopGroup].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoopGroup:45,1"
      Dst: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.Executor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoopGroup:53,1"
      Dst: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.Executor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoopGroup].<init>(java.util.concurrent.ThreadFactory)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.concurrent.ThreadFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.spi.SelectorProvider].provider()"
    - "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.nio.channels.spi.SelectorProvider)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoopGroup:61,1"
      Dst: "[java.nio.channels.spi.SelectorProvider].provider()"
    - Src: "io.netty.channel.nio.NioEventLoopGroup:61,1"
      Dst: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.nio.channels.spi.SelectorProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.concurrent.ThreadFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.spi.SelectorProvider].provider()"
    - "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.nio.channels.spi.SelectorProvider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoopGroup:69,1"
      Dst: "[java.nio.channels.spi.SelectorProvider].provider()"
    - Src: "io.netty.channel.nio.NioEventLoopGroup:69,1"
      Dst: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.nio.channels.spi.SelectorProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.Executor)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.concurrent.Executor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.spi.SelectorProvider].provider()"
    - "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.Executor,java.nio.channels.spi.SelectorProvider)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoopGroup:73,1"
      Dst: "[java.nio.channels.spi.SelectorProvider].provider()"
    - Src: "io.netty.channel.nio.NioEventLoopGroup:73,1"
      Dst: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.Executor,java.nio.channels.spi.SelectorProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.nio.channels.spi.SelectorProvider)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.util.concurrent.ThreadFactory"
    - "java.nio.channels.spi.SelectorProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.nio.channels.spi.SelectorProvider,io.netty.channel.SelectStrategyFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoopGroup:82,1"
      Dst: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.nio.channels.spi.SelectorProvider,io.netty.channel.SelectStrategyFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.nio.channels.spi.SelectorProvider,io.netty.channel.SelectStrategyFactory)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.util.concurrent.ThreadFactory"
    - "java.nio.channels.spi.SelectorProvider"
    - "io.netty.channel.SelectStrategyFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.RejectedExecutionHandlers].reject()"
    - "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.lang.Object[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoopGroup:87,1"
      Dst: "[io.netty.util.concurrent.RejectedExecutionHandlers].reject()"
    - Src: "io.netty.channel.nio.NioEventLoopGroup:87,1"
      Dst: "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.ThreadFactory,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.Executor,java.nio.channels.spi.SelectorProvider)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.util.concurrent.Executor"
    - "java.nio.channels.spi.SelectorProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.Executor,java.nio.channels.spi.SelectorProvider,io.netty.channel.SelectStrategyFactory)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoopGroup:92,1"
      Dst: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.Executor,java.nio.channels.spi.SelectorProvider,io.netty.channel.SelectStrategyFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.Executor,java.nio.channels.spi.SelectorProvider,io.netty.channel.SelectStrategyFactory)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "java.util.concurrent.Executor"
    - "java.nio.channels.spi.SelectorProvider"
    - "io.netty.channel.SelectStrategyFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.RejectedExecutionHandlers].reject()"
    - "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,java.lang.Object[])"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoopGroup:97,1"
      Dst: "[io.netty.util.concurrent.RejectedExecutionHandlers].reject()"
    - Src: "io.netty.channel.nio.NioEventLoopGroup:97,1"
      Dst: "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.nio.channels.spi.SelectorProvider,io.netty.channel.SelectStrategyFactory)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "int"
    - "java.util.concurrent.Executor"
    - "io.netty.util.concurrent.EventExecutorChooserFactory"
    - "java.nio.channels.spi.SelectorProvider"
    - "io.netty.channel.SelectStrategyFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.RejectedExecutionHandlers].reject()"
    - "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.lang.Object[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoopGroup:104,1"
      Dst: "[io.netty.util.concurrent.RejectedExecutionHandlers].reject()"
    - Src: "io.netty.channel.nio.NioEventLoopGroup:103,1"
      Dst: "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.nio.channels.spi.SelectorProvider,io.netty.channel.SelectStrategyFactory,io.netty.util.concurrent.RejectedExecutionHandler)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "java.util.concurrent.Executor"
    - "io.netty.util.concurrent.EventExecutorChooserFactory"
    - "java.nio.channels.spi.SelectorProvider"
    - "io.netty.channel.SelectStrategyFactory"
    - "io.netty.util.concurrent.RejectedExecutionHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.lang.Object[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoopGroup:111,1"
      Dst: "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.nio.channels.spi.SelectorProvider,io.netty.channel.SelectStrategyFactory,io.netty.util.concurrent.RejectedExecutionHandler,io.netty.channel.EventLoopTaskQueueFactory)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "int"
    - "java.util.concurrent.Executor"
    - "io.netty.util.concurrent.EventExecutorChooserFactory"
    - "java.nio.channels.spi.SelectorProvider"
    - "io.netty.channel.SelectStrategyFactory"
    - "io.netty.util.concurrent.RejectedExecutionHandler"
    - "io.netty.channel.EventLoopTaskQueueFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.lang.Object[])"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoopGroup:119,1"
      Dst: "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.nio.channels.spi.SelectorProvider,io.netty.channel.SelectStrategyFactory,io.netty.util.concurrent.RejectedExecutionHandler,io.netty.channel.EventLoopTaskQueueFactory,io.netty.channel.EventLoopTaskQueueFactory)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "int"
    - "java.util.concurrent.Executor"
    - "io.netty.util.concurrent.EventExecutorChooserFactory"
    - "java.nio.channels.spi.SelectorProvider"
    - "io.netty.channel.SelectStrategyFactory"
    - "io.netty.util.concurrent.RejectedExecutionHandler"
    - "io.netty.channel.EventLoopTaskQueueFactory"
    - "io.netty.channel.EventLoopTaskQueueFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.lang.Object[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoopGroup:143,1"
      Dst: "[io.netty.channel.MultithreadEventLoopGroup].<init>(int,java.util.concurrent.Executor,io.netty.util.concurrent.EventExecutorChooserFactory,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoopGroup].setIoRatio(int)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.nio.NioEventLoop].setIoRatio(int)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoopGroup:152"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoopGroup:155"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoopGroup:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoopGroup:152,1"
      Dst: "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - Src: "io.netty.channel.nio.NioEventLoopGroup:152,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.nio.NioEventLoopGroup:152,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.nio.NioEventLoopGroup:153,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].setIoRatio(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.nio.NioEventLoop].setIoRatio(int)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:348"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:349"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:348"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:348"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:351"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:350"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:349,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.nio.NioEventLoop:349,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.nio.NioEventLoop:349,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.nio.NioEventLoop:349,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.nio.NioEventLoop:349,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.nio.NioEventLoopGroup].rebuildSelectors()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.nio.NioEventLoop].rebuildSelector()"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoopGroup:162"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoopGroup:165"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoopGroup:164"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoopGroup:162,1"
      Dst: "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - Src: "io.netty.channel.nio.NioEventLoopGroup:162,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.nio.NioEventLoopGroup:162,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.nio.NioEventLoopGroup:163,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].rebuildSelector()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.nio.NioEventLoop].rebuildSelector()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 358
    functionLinenumberEnd: 370
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.nio.NioEventLoop$6].<init>(io.netty.channel.nio.NioEventLoop)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.nio.NioEventLoop].rebuildSelector0()"
    functionUses: 1
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:359"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:368"
        BranchSideFuncs:
        - "run()"
        - "<init>(io.netty.channel.nio.NioEventLoop)"
        - "execute(java.lang.Runnable)"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:367"
        BranchSideFuncs:
        - "rebuildSelector0()"
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:359,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - Src: "io.netty.channel.nio.NioEventLoop:360,1"
      Dst: "[io.netty.channel.nio.NioEventLoop$6].<init>(io.netty.channel.nio.NioEventLoop)"
    - Src: "io.netty.channel.nio.NioEventLoop:360,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - Src: "io.netty.channel.nio.NioEventLoop:368,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].rebuildSelector0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoopGroup].newChild(java.util.concurrent.Executor,java.lang.Object[])"
    functionSourceFile: "io.netty.channel.nio.NioEventLoopGroup"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.EventLoop"
    argCount: 2
    argTypes:
    - "java.util.concurrent.Executor"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.SelectStrategyFactory].newSelectStrategy()"
    - "[io.netty.channel.nio.NioEventLoop].<init>(io.netty.channel.nio.NioEventLoopGroup,java.util.concurrent.Executor,java.nio.channels.spi.SelectorProvider,io.netty.channel.SelectStrategy,io.netty.util.concurrent.RejectedExecutionHandler,io.netty.channel.EventLoopTaskQueueFactory,io.netty.channel.EventLoopTaskQueueFactory)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoopGroup:176"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoopGroup:179"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoopGroup:178"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoopGroup:179"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoopGroup:182"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoopGroup:181"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoopGroup:183,1"
      Dst: "[io.netty.channel.SelectStrategyFactory].newSelectStrategy()"
    - Src: "io.netty.channel.nio.NioEventLoopGroup:183,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].<init>(io.netty.channel.nio.NioEventLoopGroup,java.util.concurrent.Executor,java.nio.channels.spi.SelectorProvider,io.netty.channel.SelectStrategy,io.netty.util.concurrent.RejectedExecutionHandler,io.netty.channel.EventLoopTaskQueueFactory,io.netty.channel.EventLoopTaskQueueFactory)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.nio.NioEventLoop].<init>(io.netty.channel.nio.NioEventLoopGroup,java.util.concurrent.Executor,java.nio.channels.spi.SelectorProvider,io.netty.channel.SelectStrategy,io.netty.util.concurrent.RejectedExecutionHandler,io.netty.channel.EventLoopTaskQueueFactory,io.netty.channel.EventLoopTaskQueueFactory)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 7
    argTypes:
    - "io.netty.channel.nio.NioEventLoopGroup"
    - "java.util.concurrent.Executor"
    - "java.nio.channels.spi.SelectorProvider"
    - "io.netty.channel.SelectStrategy"
    - "io.netty.util.concurrent.RejectedExecutionHandler"
    - "io.netty.channel.EventLoopTaskQueueFactory"
    - "io.netty.channel.EventLoopTaskQueueFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoop].newTaskQueue(io.netty.channel.EventLoopTaskQueueFactory)"
    - "[io.netty.channel.SingleThreadEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor,boolean,java.util.Queue,java.util.Queue,io.netty.util.concurrent.RejectedExecutionHandler)"
    - "[io.netty.channel.nio.NioEventLoop$1].<init>(io.netty.channel.nio.NioEventLoop)"
    - "[java.util.concurrent.atomic.AtomicLong].<init>(long)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.nio.NioEventLoop].openSelector()"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:142,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].newTaskQueue(io.netty.channel.EventLoopTaskQueueFactory)"
    - Src: "io.netty.channel.nio.NioEventLoop:142,1"
      Dst: "[io.netty.channel.SingleThreadEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor,boolean,java.util.Queue,java.util.Queue,io.netty.util.concurrent.RejectedExecutionHandler)"
    - Src: "io.netty.channel.nio.NioEventLoop:70,1"
      Dst: "[io.netty.channel.nio.NioEventLoop$1].<init>(io.netty.channel.nio.NioEventLoop)"
    - Src: "io.netty.channel.nio.NioEventLoop:131,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].<init>(long)"
    - Src: "io.netty.channel.nio.NioEventLoop:144,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.nio.NioEventLoop:146,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].openSelector()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop].newTaskQueue(io.netty.channel.EventLoopTaskQueueFactory)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.util.Queue"
    argCount: 1
    argTypes:
    - "io.netty.channel.EventLoopTaskQueueFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoop].newTaskQueue0(int)"
    - "[io.netty.channel.EventLoopTaskQueueFactory].newTaskQueue(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:153"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:156"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:155"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:154,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].newTaskQueue0(int)"
    - Src: "io.netty.channel.nio.NioEventLoop:156,1"
      Dst: "[io.netty.channel.EventLoopTaskQueueFactory].newTaskQueue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop].newTaskQueue0(int)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 285
    functionDepth: 3
    returnType: "java.util.Queue"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].newMpscQueue()"
    - "[io.netty.util.internal.PlatformDependent].newMpscQueue(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:283"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:284"
        BranchSideFuncs:
        - "newMpscQueue(int)"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:283"
        BranchSideFuncs:
        - "newMpscQueue(int)"
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:283,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newMpscQueue()"
    - Src: "io.netty.channel.nio.NioEventLoop:284,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newMpscQueue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2DataChunkedInput].<init>(io.netty.handler.stream.ChunkedInput,io.netty.handler.codec.http2.Http2FrameStream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2DataChunkedInput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.stream.ChunkedInput"
    - "io.netty.handler.codec.http2.Http2FrameStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2DataChunkedInput:58,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2DataChunkedInput:59,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2DataChunkedInput].isEndOfInput()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2DataChunkedInput"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.stream.ChunkedNioFile].isEndOfInput()"
    - "[io.netty.handler.stream.ChunkedNioStream].isEndOfInput()"
    - "[io.netty.handler.codec.http2.Http2DataChunkedInput].isEndOfInput()"
    - "[io.netty.handler.stream.ChunkedStream].isEndOfInput()"
    - "[io.netty.handler.codec.http.HttpChunkedInput].isEndOfInput()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketChunkedInput].isEndOfInput()"
    - "[io.netty.handler.stream.ChunkedFile].isEndOfInput()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].isEndOfInput()"
    - "[io.netty.handler.stream.ChunkedInput].isEndOfInput()"
    functionUses: 9
    ICount: 7
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2DataChunkedInput:65"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2DataChunkedInput:68"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2DataChunkedInput:65,1"
      Dst: "[io.netty.handler.stream.ChunkedInput].isEndOfInput()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2DataChunkedInput].close()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2DataChunkedInput"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.stream.ChunkedNioStream].close()"
    - "[io.netty.handler.codec.http2.Http2DataChunkedInput].close()"
    - "[io.netty.handler.stream.ChunkedNioFile].close()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketChunkedInput].close()"
    - "[io.netty.handler.codec.http.HttpChunkedInput].close()"
    - "[io.netty.handler.stream.ChunkedFile].close()"
    - "[io.netty.handler.stream.ChunkedStream].close()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].close()"
    - "[io.netty.handler.stream.ChunkedInput].close()"
    functionUses: 4
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2DataChunkedInput:74,1"
      Dst: "[io.netty.handler.stream.ChunkedInput].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2DataChunkedInput].readChunk(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2DataChunkedInput"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.handler.codec.http2.Http2DataFrame"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.handler.codec.http2.Http2DataChunkedInput].readChunk(io.netty.buffer.ByteBufAllocator)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2DataChunkedInput:80,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.http2.Http2DataChunkedInput:80,1"
      Dst: "[io.netty.handler.codec.http2.Http2DataChunkedInput].readChunk(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2DataChunkedInput].readChunk(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2DataChunkedInput"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 105
    functionDepth: 7
    returnType: "io.netty.handler.codec.http2.Http2DataFrame"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.stream.ChunkedNioStream].isEndOfInput()"
    - "[io.netty.handler.codec.http2.Http2DataChunkedInput].isEndOfInput()"
    - "[io.netty.handler.stream.ChunkedStream].isEndOfInput()"
    - "[io.netty.handler.codec.http.HttpChunkedInput].isEndOfInput()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketChunkedInput].isEndOfInput()"
    - "[io.netty.handler.stream.ChunkedFile].isEndOfInput()"
    - "[io.netty.handler.stream.ChunkedNioFile].isEndOfInput()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].isEndOfInput()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http.HttpChunkedInput].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.stream.ChunkedStream].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.stream.ChunkedFile].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.codec.http2.Http2DataChunkedInput].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.stream.ChunkedNioStream].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.stream.ChunkedNioFile].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketChunkedInput].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].isEndStream()"
    - "[io.netty.handler.stream.ChunkedInput].isEndOfInput()"
    - "[io.netty.handler.stream.ChunkedInput].readChunk(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.handler.codec.http2.Http2DataFrame].isEndStream()"
    functionUses: 4
    ICount: 29
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2DataChunkedInput:85"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2DataChunkedInput:89"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2DataChunkedInput:88"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2DataChunkedInput:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2DataChunkedInput:94"
        BranchSideFuncs:
        - "<init>(boolean)"
      - BranchSide: "io.netty.handler.codec.http2.Http2DataChunkedInput:93"
        BranchSideFuncs:
        - "readChunk(io.netty.buffer.ByteBufAllocator)"
    - Branch String: "io.netty.handler.codec.http2.Http2DataChunkedInput:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2DataChunkedInput:99"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2DataChunkedInput:98"
        BranchSideFuncs:
        - "isEndStream()"
        - "<init>(io.netty.buffer.ByteBuf,boolean)"
        - "isEndOfInput()"
        - "stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - Branch String: "io.netty.handler.codec.http2.Http2DataChunkedInput:100"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2DataChunkedInput:104"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2DataChunkedInput:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2DataChunkedInput:89,1"
      Dst: "[io.netty.handler.stream.ChunkedInput].isEndOfInput()"
    - Src: "io.netty.handler.codec.http2.Http2DataChunkedInput:91,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(boolean)"
    - Src: "io.netty.handler.codec.http2.Http2DataChunkedInput:91,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - Src: "io.netty.handler.codec.http2.Http2DataChunkedInput:94,1"
      Dst: "[io.netty.handler.stream.ChunkedInput].readChunk(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.handler.codec.http2.Http2DataChunkedInput:99,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2DataChunkedInput:100,1"
      Dst: "[io.netty.handler.codec.http2.Http2DataFrame].isEndStream()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:52,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2DataChunkedInput].length()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2DataChunkedInput"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpChunkedInput].length()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketChunkedInput].length()"
    - "[io.netty.handler.codec.http2.Http2DataChunkedInput].length()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:io.netty.handler.stream.ChunkedFile:io.netty.handler.stream.ChunkedNioFile:io.netty.handler.stream.ChunkedNioStream:io.netty.handler.stream.ChunkedStream].length()"
    - "[io.netty.handler.stream.ChunkedInput].length()"
    functionUses: 6
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2DataChunkedInput:109,1"
      Dst: "[io.netty.handler.stream.ChunkedInput].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2DataChunkedInput].progress()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2DataChunkedInput"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketChunkedInput].progress()"
    - "[io.netty.handler.codec.http.HttpChunkedInput].progress()"
    - "[io.netty.handler.codec.http2.Http2DataChunkedInput].progress()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder:io.netty.handler.stream.ChunkedFile:io.netty.handler.stream.ChunkedNioFile:io.netty.handler.stream.ChunkedNioStream:io.netty.handler.stream.ChunkedStream].progress()"
    - "[io.netty.handler.stream.ChunkedInput].progress()"
    functionUses: 5
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2DataChunkedInput:114,1"
      Dst: "[io.netty.handler.stream.ChunkedInput].progress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.ChannelMatchers$ClassMatcher].<init>(java.lang.Class)"
    functionSourceFile: "io.netty.channel.group.ChannelMatchers$ClassMatcher"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Class"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.ChannelMatchers$ClassMatcher:160,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.ChannelMatchers$ClassMatcher].matches(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.group.ChannelMatchers$ClassMatcher"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].isInstance(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.ChannelMatchers$ClassMatcher:166,1"
      Dst: "[java.lang.Class].isInstance(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 126
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].getProtocolReceiveBufferSize()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].getProtocolSendBufferSize()"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].getSystemReceiveBufferSize()"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].getSystemSendBufferSize()"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].getReceiveBufferSize()"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].getSendBufferSize()"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].isReuseAddress()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.udt.DefaultUdtChannelConfig].getSoLinger()"
    - "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 6
    ICount: 44
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:101"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:104"
        BranchSideFuncs:
        - "getProtocolReceiveBufferSize()"
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:103"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:104"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:107"
        BranchSideFuncs:
        - "getProtocolSendBufferSize()"
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:106"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:107"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:110"
        BranchSideFuncs:
        - "getSystemReceiveBufferSize()"
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:109"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:110"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:113"
        BranchSideFuncs:
        - "getSystemSendBufferSize()"
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:112"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:113"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:116"
        BranchSideFuncs:
        - "getReceiveBufferSize()"
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:115"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:116"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:119"
        BranchSideFuncs:
        - "getSendBufferSize()"
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:118"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:119"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:122"
        BranchSideFuncs:
        - "isReuseAddress()"
        - "valueOf(boolean)"
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:121"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.udt.DefaultUdtChannelConfig:122"
      Branch Sides:
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:125"
        BranchSideFuncs:
        - "getSoLinger()"
        - "valueOf(int)"
      - BranchSide: "io.netty.channel.udt.DefaultUdtChannelConfig:124"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:102,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].getProtocolReceiveBufferSize()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:102,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:105,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].getProtocolSendBufferSize()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:108,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].getSystemReceiveBufferSize()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:111,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].getSystemSendBufferSize()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:114,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].getReceiveBufferSize()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:117,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].getSendBufferSize()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:120,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].isReuseAddress()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:120,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:123,1"
      Dst: "[io.netty.channel.udt.DefaultUdtChannelConfig].getSoLinger()"
    - Src: "io.netty.channel.udt.DefaultUdtChannelConfig:125,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.DefaultUdtChannelConfig].getReceiveBufferSize()"
    functionSourceFile: "io.netty.channel.udt.DefaultUdtChannelConfig"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 139
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadExecutorMap$1].execute(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.internal.ThreadExecutorMap$1"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ThreadExecutorMap].apply(java.lang.Runnable,io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.util.concurrent.ThreadPerTaskExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.internal.ThreadExecutorMap$1].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.AbstractEventExecutorGroup].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.oio.AbstractOioChannel$2:io.netty.channel.oio.AbstractOioChannel$3:io.netty.util.concurrent.AbstractScheduledEventExecutor$2:io.netty.util.concurrent.GlobalEventExecutor$1:io.netty.util.concurrent.PromiseTask$SentinelRunnable:io.netty.util.concurrent.SingleThreadEventExecutor$1:java.lang.invoke.MethodHandleNatives$CallSiteContext:java.lang.ref.Finalizer$2:java.lang.ref.Finalizer$FinalizerThread:java.util.concurrent.CompletableFuture$Completion:java.util.concurrent.ForkJoinPool:java.util.concurrent.ForkJoinWorkerThread:java.util.concurrent.ScheduledThreadPoolExecutor:java.util.concurrent.ThreadPoolExecutor:java.util.concurrent.ThreadPoolExecutor$Worker:java.util.zip.Deflater$DeflaterZStreamRef:java.util.zip.Inflater$InflaterZStreamRef:java.util.zip.ZipFile$CleanableResource].execute(java.lang.Runnable)"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 6
    ICount: 7
    EdgeCount: 181
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadExecutorMap$1:57,1"
      Dst: "[io.netty.util.internal.ThreadExecutorMap].apply(java.lang.Runnable,io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.util.internal.ThreadExecutorMap$1:57,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl$2].<init>(io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl)"
    functionSourceFile: "io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl$2"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl$2:80,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl$2].escape(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl$2"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 3
    returnType: "java.lang.CharSequence"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.StringUtil].escapeCsv(java.lang.CharSequence,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl$2:83,1"
      Dst: "[io.netty.util.internal.StringUtil].escapeCsv(java.lang.CharSequence,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl$2].escape(java.lang.CharSequence,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl$2"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 4
    returnType: "java.lang.CharSequence"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl$2].escape(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl$2:80,1"
      Dst: "[io.netty.handler.codec.http.CombinedHttpHeaders$CombinedHttpHeadersImpl$2].escape(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:39,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:39,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].content()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].retain()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionDepth: 1
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].retain()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:63,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].retain(int)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheResponse"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:69,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].touch()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionDepth: 1
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].touch()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:75,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionDepth: 1
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheResponse"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.SimpleLeakAwareByteBuf:io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 4
    ICount: 6
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:81,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].touch(java.lang.Object)"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:82,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].deallocate()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].deallocate()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.util.ReferenceCounted].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:88,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].deallocate()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:89,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].copy()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].key()"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extras()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].content()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].newInstance(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:95"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:98"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:97"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:99"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:101"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:94,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].key()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:96,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:98,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extras()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:102,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].content()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:102,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].newInstance(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].newInstance(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheResponse"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].copyMeta(io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:137,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:138,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse].copyMeta(io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheResponse)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].duplicate()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].key()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extras()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].content()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].newInstance(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:111"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:112"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:115"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:114"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:107,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].key()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:109,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:111,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extras()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:115,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].content()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:115,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].newInstance(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].content()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:120,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].content()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:120,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:120,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.memcache.binary.FullBinaryMemcacheResponse"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].key()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extras()"
    - "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].newInstance(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:126"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:129"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:128"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:130"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:133"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:125,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].key()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:127,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:129,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].extras()"
    - Src: "io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse:133,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultFullBinaryMemcacheResponse].newInstance(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.HttpMethod$EnumNameMap].<init>(io.netty.handler.codec.http.HttpMethod$EnumNameMap$Node[])"
    functionSourceFile: "io.netty.handler.codec.http.HttpMethod$EnumNameMap"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 196
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMethod$EnumNameMap$Node[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.MathUtil].findNextPositivePowerOfTwo(int)"
    - "[io.netty.handler.codec.http.HttpMethod$EnumNameMap].hashCode(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 45
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:195"
        BranchSideFuncs:
        - "hashCode(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:194"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:189"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:null"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:184,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:185,1"
      Dst: "[io.netty.util.internal.MathUtil].findNextPositivePowerOfTwo(int)"
    - Src: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:188,1"
      Dst: "[io.netty.handler.codec.http.HttpMethod$EnumNameMap].hashCode(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:190,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:190,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:190,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:190,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:190,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.HttpMethod$EnumNameMap:190,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler$3].run()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$3"
    linkageType: ""
    functionLinenumber: 1480
    functionLinenumberEnd: 1483
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].access$700(io.netty.handler.ssl.SslHandler,java.lang.Throwable)"
    functionUses: 50
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$3:1481,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$700(io.netty.handler.ssl.SslHandler,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].<init>()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent$AtomicLongCounter"
    linkageType: ""
    functionLinenumber: 1613
    functionLinenumberEnd: 1615
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent$AtomicLongCounter:1614,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].add(long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent$AtomicLongCounter"
    linkageType: ""
    functionLinenumber: 1618
    functionLinenumberEnd: 1621
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].addAndGet(long)"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent$AtomicLongCounter:1619,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].addAndGet(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].increment()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent$AtomicLongCounter"
    linkageType: ""
    functionLinenumber: 1623
    functionLinenumberEnd: 1626
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].incrementAndGet()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent$AtomicLongCounter:1624,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].incrementAndGet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].decrement()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent$AtomicLongCounter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].decrementAndGet()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent$AtomicLongCounter:1629,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].decrementAndGet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].value()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent$AtomicLongCounter"
    linkageType: ""
    functionLinenumber: 1633
    functionLinenumberEnd: 1635
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].get()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent$AtomicLongCounter:1634,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].<init>(io.netty.util.internal.PlatformDependent$1)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent$AtomicLongCounter"
    linkageType: ""
    functionLinenumber: 1613
    functionLinenumberEnd: 1615
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.PlatformDependent$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent$AtomicLongCounter:1614,1"
      Dst: "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.FailedChannelFuture].cause()"
    functionSourceFile: "io.netty.channel.FailedChannelFuture"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 80
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.FailedChannelFuture].isSuccess()"
    functionSourceFile: "io.netty.channel.FailedChannelFuture"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 64
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.FailedChannelFuture].sync()"
    functionSourceFile: "io.netty.channel.FailedChannelFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.FailedChannelFuture:54,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.FailedChannelFuture].syncUninterruptibly()"
    functionSourceFile: "io.netty.channel.FailedChannelFuture"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionDepth: 3
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.FailedChannelFuture:60,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler].<init>()"
    functionSourceFile: "io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslMasterKeyHandler].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler:180,1"
      Dst: "[io.netty.handler.ssl.SslMasterKeyHandler].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler].accept(javax.crypto.SecretKey,javax.net.ssl.SSLSession)"
    functionSourceFile: "io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 195
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.crypto.SecretKey"
    - "javax.net.ssl.SSLSession"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.crypto.spec.SecretKeySpec].getEncoded()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].getId()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].getId()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getId()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.buffer.ByteBufUtil].hexDump(byte[])"
    - "[java.lang.String].toLowerCase()"
    - "[java.security.Key].getEncoded()"
    - "[javax.net.ssl.SSLSession].getId()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 2
    ICount: 18
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler:187"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler:190"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler:189"
        BranchSideFuncs:
        - "getId()"
        - "warn(java.lang.String,java.lang.Object,java.lang.Object)"
        - "toLowerCase()"
        - "getEncoded()"
        - "hexDump(byte[])"
    Callsites:
    - Src: "io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler:187,1"
      Dst: "[java.security.Key].getEncoded()"
    - Src: "io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler:188,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler:190,1"
      Dst: "[javax.net.ssl.SSLSession].getId()"
    - Src: "io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler:192,1"
      Dst: "[io.netty.buffer.ByteBufUtil].hexDump(byte[])"
    - Src: "io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler:192,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler:191,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler].<init>(io.netty.handler.ssl.SslMasterKeyHandler$1)"
    functionSourceFile: "io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.SslMasterKeyHandler$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler:180,1"
      Dst: "[io.netty.handler.ssl.SslMasterKeyHandler$WiresharkSslMasterKeyHandler].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].<init>(io.netty.channel.epoll.EpollDomainDatagramChannel)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.EpollDomainDatagramChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    - "[io.netty.channel.FixedRecvByteBufAllocator].<init>(int)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:40,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:41,1"
      Dst: "[io.netty.channel.FixedRecvByteBufAllocator].<init>(int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:41,1"
      Dst: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:48,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].getOptions()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:47,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 62
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].getSendBufferSize()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.epoll.EpollChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 5
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:55"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:58"
        BranchSideFuncs:
        - "valueOf(boolean)"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:57"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:58"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:61"
        BranchSideFuncs:
        - "getSendBufferSize()"
        - "valueOf(int)"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:60"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:56,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:59,1"
      Dst: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].getSendBufferSize()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:59,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:61,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].getSendBufferSize()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 162
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getSendBufferSize()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:159,1"
      Dst: "[io.netty.channel.unix.Socket].getSendBufferSize()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:161,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 78
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setActiveOnOpen(boolean)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setSendBufferSize(int)"
    - "[io.netty.channel.epoll.EpollChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 2
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:69"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:71"
        BranchSideFuncs:
        - "booleanValue()"
        - "setActiveOnOpen(boolean)"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:70"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:71"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:74"
        BranchSideFuncs:
        - "intValue()"
        - "setSendBufferSize(int)"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:73"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:67,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:70,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:70,1"
      Dst: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setActiveOnOpen(boolean)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:72,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:72,1"
      Dst: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setSendBufferSize(int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:74,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setActiveOnOpen(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel:io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isRegistered()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.channel.Channel].isRegistered()"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:81"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:84"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:83"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:81,1"
      Dst: "[io.netty.channel.Channel].isRegistered()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:82,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 153
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setSendBufferSize(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:149,1"
      Dst: "[io.netty.channel.unix.Socket].setSendBufferSize(int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:152,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:93,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setAutoClose(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionDepth: 1
    returnType: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:99,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setAutoRead(boolean)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:105,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:111,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setEpollMode(io.netty.channel.epoll.EpollMode)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.EpollMode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setEpollMode(io.netty.channel.epoll.EpollMode)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:117,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setEpollMode(io.netty.channel.epoll.EpollMode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:124,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setMaxMessagesPerWrite(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 132
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerWrite(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:130,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerWrite(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:136,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 144
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:142,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 169
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:167,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollChannelConfig].setWriteSpinCount(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannelConfig:173,1"
      Dst: "[io.netty.channel.epoll.EpollChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$1].run()"
    functionSourceFile: "io.netty.util.internal.SocketUtils$1"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].connect(java.net.SocketAddress,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$1:62,1"
      Dst: "[java.net.Socket].connect(java.net.SocketAddress,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].<init>(io.netty.handler.codec.socksx.v5.Socks5AddressEncoder)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:41,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].<init>(io.netty.handler.codec.socksx.v5.Socks5AddressEncoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].<init>(io.netty.handler.codec.socksx.v5.Socks5AddressEncoder)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:47,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:48,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].addressEncoder()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.socksx.v5.Socks5Message,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 70
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.socksx.v5.Socks5Message"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].encodeAuthMethodResponse(io.netty.handler.codec.socksx.v5.Socks5InitialResponse,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].encodePasswordAuthResponse(io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponse,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].encodeCommandResponse(io.netty.handler.codec.socksx.v5.Socks5CommandResponse,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 29
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:62"
        BranchSideFuncs:
        - "encodeAuthMethodResponse(io.netty.handler.codec.socksx.v5.Socks5InitialResponse,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:61"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:62"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:64"
        BranchSideFuncs:
        - "encodePasswordAuthResponse(io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponse,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:63"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:64"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:67"
        BranchSideFuncs:
        - "encodeCommandResponse(io.netty.handler.codec.socksx.v5.Socks5CommandResponse,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:66"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:61,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].encodeAuthMethodResponse(io.netty.handler.codec.socksx.v5.Socks5InitialResponse,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:63,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].encodePasswordAuthResponse(io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponse,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:65,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].encodeCommandResponse(io.netty.handler.codec.socksx.v5.Socks5CommandResponse,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:67,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:67,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:67,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:67,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:67,1"
      Dst: "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].encodeAuthMethodResponse(io.netty.handler.codec.socksx.v5.Socks5InitialResponse,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 75
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.socksx.v5.Socks5InitialResponse"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.SocksVersion].byteValue()"
    - "[io.netty.handler.codec.socksx.v5.AbstractSocks5Message].version()"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].authMethod()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].byteValue()"
    - "[io.netty.handler.codec.socksx.SocksMessage].version()"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.socksx.v5.Socks5InitialResponse].authMethod()"
    functionUses: 1
    ICount: 11
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:72,1"
      Dst: "[io.netty.handler.codec.socksx.SocksMessage].version()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:72,1"
      Dst: "[io.netty.handler.codec.socksx.SocksVersion].byteValue()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:72,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:73,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5InitialResponse].authMethod()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:73,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].byteValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].encodePasswordAuthResponse(io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponse,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 80
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponse"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].byteValue()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].status()"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponse].status()"
    functionUses: 1
    ICount: 8
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:77,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:78,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthResponse].status()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:78,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].byteValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].byteValue()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].encodeCommandResponse(io.netty.handler.codec.socksx.v5.Socks5CommandResponse,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 92
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.socksx.v5.Socks5CommandResponse"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.SocksVersion].byteValue()"
    - "[io.netty.handler.codec.socksx.v5.AbstractSocks5Message].version()"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].byteValue()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].status()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].bndAddrType()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].byteValue()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].bndAddr()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1].encodeAddress(io.netty.handler.codec.socksx.v5.Socks5AddressType,java.lang.String,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].bndPort()"
    - "[io.netty.buffer.CompositeByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeShort(int)"
    - "[io.netty.handler.codec.socksx.SocksMessage].version()"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandResponse].status()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandResponse].bndAddrType()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandResponse].bndAddr()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressEncoder].encodeAddress(io.netty.handler.codec.socksx.v5.Socks5AddressType,java.lang.String,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandResponse].bndPort()"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    functionUses: 1
    ICount: 22
    EdgeCount: 55
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:82,1"
      Dst: "[io.netty.handler.codec.socksx.SocksMessage].version()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:82,1"
      Dst: "[io.netty.handler.codec.socksx.SocksVersion].byteValue()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:82,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:83,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5CommandResponse].status()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:83,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].byteValue()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:86,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5CommandResponse].bndAddrType()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:87,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5AddressType].byteValue()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:88,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5CommandResponse].bndAddr()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:88,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5AddressEncoder].encodeAddress(io.netty.handler.codec.socksx.v5.Socks5AddressType,java.lang.String,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:90,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5CommandResponse].bndPort()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:90,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.socksx.v5.Socks5Message,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5ServerEncoder:30,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5ServerEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.socksx.v5.Socks5Message,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel$1].run()"
    functionSourceFile: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel$1"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.barchart.udt.nio.SocketChannelUDT].bind(java.net.SocketAddress)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.nio.NioUdtByteConnectorChannel$1:204,1"
      Dst: "[com.barchart.udt.nio.SocketChannelUDT].bind(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ByteProcessor$4].<init>()"
    functionSourceFile: "io.netty.util.ByteProcessor$4"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 137
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ByteProcessor$4:136,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ByteProcessor$4].process(byte)"
    functionSourceFile: "io.netty.util.ByteProcessor$4"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.ByteProcessor$4:139"
      Branch Sides:
      - BranchSide: "io.netty.util.ByteProcessor$4:138"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.ByteProcessor$4:139"
      Branch Sides:
      - BranchSide: "io.netty.util.ByteProcessor$4:138"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].streamId()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].deltaWindowSize()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].toString()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 77
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].streamId()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].deltaWindowSize()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 17
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame:68,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame:69,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame:69,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame:72,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].streamId()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame:72,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame:75,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].deltaWindowSize()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame:76,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.search.KmpSearchProcessorFactory].<init>(byte[])"
    functionSourceFile: "io.netty.buffer.search.KmpSearchProcessorFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.search.AbstractSearchProcessorFactory].<init>()"
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.search.KmpSearchProcessorFactory:72"
      Branch Sides:
      - BranchSide: "io.netty.buffer.search.KmpSearchProcessorFactory:81"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.search.KmpSearchProcessorFactory:80"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.search.KmpSearchProcessorFactory:73"
      Branch Sides:
      - BranchSide: "io.netty.buffer.search.KmpSearchProcessorFactory:76"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.search.KmpSearchProcessorFactory:75"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.search.KmpSearchProcessorFactory:73"
      Branch Sides:
      - BranchSide: "io.netty.buffer.search.KmpSearchProcessorFactory:76"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.search.KmpSearchProcessorFactory:75"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.search.KmpSearchProcessorFactory:76"
      Branch Sides:
      - BranchSide: "io.netty.buffer.search.KmpSearchProcessorFactory:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.search.KmpSearchProcessorFactory:67,1"
      Dst: "[io.netty.buffer.search.AbstractSearchProcessorFactory].<init>()"
    - Src: "io.netty.buffer.search.KmpSearchProcessorFactory:68,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.buffer.search.KmpSearchProcessorFactory].newSearchProcessor()"
    functionSourceFile: "io.netty.buffer.search.KmpSearchProcessorFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.search.KmpSearchProcessorFactory$Processor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.search.KmpSearchProcessorFactory$Processor].<init>(byte[],int[])"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.search.KmpSearchProcessorFactory:88,1"
      Dst: "[io.netty.buffer.search.KmpSearchProcessorFactory$Processor].<init>(byte[],int[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.search.KmpSearchProcessorFactory$Processor].<init>(byte[],int[])"
    functionSourceFile: "io.netty.buffer.search.KmpSearchProcessorFactory$Processor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "byte[]"
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.search.KmpSearchProcessorFactory$Processor:40,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder].<init>(io.netty.handler.codec.dns.DnsRecordDecoder)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder:41,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder].<init>(io.netty.handler.codec.dns.DnsRecordDecoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder].<init>(io.netty.handler.codec.dns.DnsRecordDecoder)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecordDecoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    - "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder$1].<init>(io.netty.handler.codec.dns.DatagramDnsResponseDecoder,io.netty.handler.codec.dns.DnsRecordDecoder)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder:47,1"
      Dst: "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder:48,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder$1].<init>(io.netty.handler.codec.dns.DatagramDnsResponseDecoder,io.netty.handler.codec.dns.DnsRecordDecoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.channel.socket.DatagramPacket,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 65
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.socket.DatagramPacket"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.resolver.dns.DnsNameResolver$1].decodeResponse(io.netty.channel.ChannelHandlerContext,io.netty.channel.socket.DatagramPacket)"
    - "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder].decodeResponse(io.netty.channel.ChannelHandlerContext,io.netty.channel.socket.DatagramPacket)"
    - "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder:60,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder].decodeResponse(io.netty.channel.ChannelHandlerContext,io.netty.channel.socket.DatagramPacket)"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder:60,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder:62,1"
      Dst: "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.channel.socket.DatagramPacket,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsResponseDecoder:31,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsResponseDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.channel.socket.DatagramPacket,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$ExtendedTrustManagerVerifyCallback].<init>(io.netty.handler.ssl.OpenSslEngineMap,javax.net.ssl.X509ExtendedTrustManager)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$ExtendedTrustManagerVerifyCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.OpenSslEngineMap"
    - "javax.net.ssl.X509ExtendedTrustManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$AbstractCertificateVerifier].<init>(io.netty.handler.ssl.OpenSslEngineMap)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$ExtendedTrustManagerVerifyCallback:269,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$AbstractCertificateVerifier].<init>(io.netty.handler.ssl.OpenSslEngineMap)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$ExtendedTrustManagerVerifyCallback].verify(io.netty.handler.ssl.ReferenceCountedOpenSslEngine,java.security.cert.X509Certificate[],java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$ExtendedTrustManagerVerifyCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.ReferenceCountedOpenSslEngine"
    - "java.security.cert.X509Certificate[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.X509ExtendedTrustManager].checkClientTrusted(java.security.cert.X509Certificate[],java.lang.String,javax.net.ssl.SSLEngine)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$ExtendedTrustManagerVerifyCallback:276,1"
      Dst: "[javax.net.ssl.X509ExtendedTrustManager].checkClientTrusted(java.security.cert.X509Certificate[],java.lang.String,javax.net.ssl.SSLEngine)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils$8].invoke(java.lang.Object,java.lang.reflect.Method,java.lang.Object[])"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$8"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "java.lang.reflect.Method"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.reflect.Method].getName()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.util.function.BiFunction].apply(java.lang.Object,java.lang.Object)"
    - "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$8:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$8:213"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$8:206,1"
      Dst: "[java.lang.reflect.Method].getName()"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$8:206,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$8:208,1"
      Dst: "[java.util.function.BiFunction].apply(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$8:210,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$8:214,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslUtils$8:214,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Throwable"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslClientContext].<init>()"
    functionSourceFile: "io.netty.handler.ssl.JdkSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslClientContext:48,1"
      Dst: "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslClientContext:60,1"
      Dst: "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslClientContext].<init>(javax.net.ssl.TrustManagerFactory)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.TrustManagerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslClientContext:73,1"
      Dst: "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "javax.net.ssl.TrustManagerFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslClientContext:88,1"
      Dst: "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.lang.Iterable,java.lang.Iterable,long,long)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.io.File"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.lang.Iterable"
    - "java.lang.Iterable"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].toApplicationProtocolConfig(java.lang.Iterable)"
    - "[io.netty.handler.ssl.JdkSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig,boolean)"
    - "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslClientContext:116,1"
      Dst: "[io.netty.handler.ssl.SslContext].toApplicationProtocolConfig(java.lang.Iterable)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:116,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig,boolean)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:115,1"
      Dst: "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,long,long)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.io.File"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.ApplicationProtocolConfig"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig,boolean)"
    - "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslClientContext:143,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig,boolean)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:142,1"
      Dst: "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.io.File"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.security.Provider,java.io.File,javax.net.ssl.TrustManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslClientContext:169,1"
      Dst: "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.security.Provider,java.io.File,javax.net.ssl.TrustManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.security.Provider,java.io.File,javax.net.ssl.TrustManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.security.Provider"
    - "java.io.File"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].toX509CertificatesInternal(java.io.File)"
    - "[java.security.KeyStore].getDefaultType()"
    - "[io.netty.handler.ssl.JdkSslClientContext].newSSLContext(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,long,long,java.lang.String)"
    - "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslClientContext:176,1"
      Dst: "[io.netty.handler.ssl.SslContext].toX509CertificatesInternal(java.io.File)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:178,1"
      Dst: "[java.security.KeyStore].getDefaultType()"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:176,1"
      Dst: "[io.netty.handler.ssl.JdkSslClientContext].newSSLContext(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,long,long,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:176,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,long,long)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 11
    argTypes:
    - "java.io.File"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.io.File"
    - "java.io.File"
    - "java.lang.String"
    - "javax.net.ssl.KeyManagerFactory"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.ApplicationProtocolConfig"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig,boolean)"
    - "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslClientContext:219,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig,boolean)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:218,1"
      Dst: "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 11
    argTypes:
    - "java.io.File"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.io.File"
    - "java.io.File"
    - "java.lang.String"
    - "javax.net.ssl.KeyManagerFactory"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].toX509CertificatesInternal(java.io.File)"
    - "[io.netty.handler.ssl.SslContext].toPrivateKeyInternal(java.io.File,java.lang.String)"
    - "[java.security.KeyStore].getDefaultType()"
    - "[io.netty.handler.ssl.JdkSslClientContext].newSSLContext(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,long,long,java.lang.String)"
    - "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslClientContext:258,1"
      Dst: "[io.netty.handler.ssl.SslContext].toX509CertificatesInternal(java.io.File)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:260,1"
      Dst: "[io.netty.handler.ssl.SslContext].toPrivateKeyInternal(java.io.File,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:261,1"
      Dst: "[java.security.KeyStore].getDefaultType()"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:258,1"
      Dst: "[io.netty.handler.ssl.JdkSslClientContext].newSSLContext(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,long,long,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:258,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslClientContext].<init>(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,java.lang.String[],long,long,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 14
    argTypes:
    - "java.security.Provider"
    - "java.security.cert.X509Certificate[]"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.security.cert.X509Certificate[]"
    - "java.security.PrivateKey"
    - "java.lang.String"
    - "javax.net.ssl.KeyManagerFactory"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.ApplicationProtocolConfig"
    - "java.lang.String[]"
    - "long"
    - "long"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslClientContext].newSSLContext(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,long,long,java.lang.String)"
    - "[io.netty.handler.ssl.JdkSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig,boolean)"
    - "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslClientContext:272,1"
      Dst: "[io.netty.handler.ssl.JdkSslClientContext].newSSLContext(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,long,long,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:275,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig,boolean)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:272,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslClientContext].newSSLContext(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,long,long,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslClientContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.SSLContext"
    argCount: 10
    argTypes:
    - "java.security.Provider"
    - "java.security.cert.X509Certificate[]"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.security.cert.X509Certificate[]"
    - "java.security.PrivateKey"
    - "java.lang.String"
    - "javax.net.ssl.KeyManagerFactory"
    - "long"
    - "long"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].buildTrustManagerFactory(java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.lang.String)"
    - "[io.netty.handler.ssl.SslContext].buildKeyManagerFactory(java.security.cert.X509Certificate[],java.lang.String,java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String)"
    - "[javax.net.ssl.SSLContext].getInstance(java.lang.String)"
    - "[javax.net.ssl.SSLContext].getInstance(java.lang.String,java.security.Provider)"
    - "[javax.net.ssl.KeyManagerFactory].getKeyManagers()"
    - "[javax.net.ssl.TrustManagerFactory].getTrustManagers()"
    - "[javax.net.ssl.SSLContext].init(javax.net.ssl.KeyManager[],javax.net.ssl.TrustManager[],java.security.SecureRandom)"
    - "[javax.net.ssl.SSLContext].getClientSessionContext()"
    - "[java.lang.Math].min(long,long)"
    - "[javax.net.ssl.SSLSessionContext].setSessionCacheSize(int)"
    - "[javax.net.ssl.SSLSessionContext].setSessionTimeout(int)"
    - "[javax.net.ssl.SSLException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkSslClientContext:285"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslClientContext:288"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslClientContext:287"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslClientContext:288"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslClientContext:292"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslClientContext:291"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslClientContext:292"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslClientContext:293"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslClientContext:292"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslClientContext:294"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslClientContext:293"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslClientContext:292"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslClientContext:294"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslClientContext:295"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslClientContext:294"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslClientContext:299"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslClientContext:302"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslClientContext:301"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslClientContext:302"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslClientContext:305"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslClientContext:304"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslClientContext:307"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslClientContext:310"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslClientContext:309"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslClientContext:286,1"
      Dst: "[io.netty.handler.ssl.SslContext].buildTrustManagerFactory(java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:289,1"
      Dst: "[io.netty.handler.ssl.SslContext].buildKeyManagerFactory(java.security.cert.X509Certificate[],java.lang.String,java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:292,1"
      Dst: "[javax.net.ssl.SSLContext].getInstance(java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:293,1"
      Dst: "[javax.net.ssl.SSLContext].getInstance(java.lang.String,java.security.Provider)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:294,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].getKeyManagers()"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:295,1"
      Dst: "[javax.net.ssl.TrustManagerFactory].getTrustManagers()"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:294,1"
      Dst: "[javax.net.ssl.SSLContext].init(javax.net.ssl.KeyManager[],javax.net.ssl.TrustManager[],java.security.SecureRandom)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:298,1"
      Dst: "[javax.net.ssl.SSLContext].getClientSessionContext()"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:300,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:300,1"
      Dst: "[javax.net.ssl.SSLSessionContext].setSessionCacheSize(int)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:303,1"
      Dst: "[javax.net.ssl.SSLSessionContext].setSessionTimeout(int)"
    - Src: "io.netty.handler.ssl.JdkSslClientContext:310,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 7
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].newInstance(io.netty.channel.AbstractChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise,boolean)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$WriteTask"
    linkageType: ""
    functionLinenumber: 1199
    functionLinenumberEnd: 1203
    functionDepth: 7
    returnType: "io.netty.channel.AbstractChannelHandlerContext$WriteTask"
    argCount: 4
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectPool$RecyclerObjectPool].get()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].init(io.netty.channel.AbstractChannelHandlerContext$WriteTask,io.netty.channel.AbstractChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise,boolean)"
    - "[io.netty.util.internal.ObjectPool].get()"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1200,1"
      Dst: "[io.netty.util.internal.ObjectPool].get()"
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1201,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].init(io.netty.channel.AbstractChannelHandlerContext$WriteTask,io.netty.channel.AbstractChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].init(io.netty.channel.AbstractChannelHandlerContext$WriteTask,io.netty.channel.AbstractChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise,boolean)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$WriteTask"
    linkageType: ""
    functionLinenumber: 1224
    functionLinenumberEnd: 1239
    functionDepth: 6
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext$WriteTask"
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].access$1700(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline].estimatorHandle()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator$1].size(java.lang.Object)"
    - "[io.netty.channel.PendingBytesTracker].size(java.lang.Object)"
    - "[io.netty.channel.DefaultMessageSizeEstimator$HandleImpl].size(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPipeline].incrementPendingOutboundBytes(long)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$3].incrementPendingOutboundBytes(long)"
    - "[io.netty.channel.MessageSizeEstimator$Handle].size(java.lang.Object)"
    functionUses: 1
    ICount: 27
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1229"
      Branch Sides:
      - BranchSide: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1233"
        BranchSideFuncs:
        - "size(java.lang.Object)"
        - "access$1700(io.netty.channel.AbstractChannelHandlerContext)"
        - "incrementPendingOutboundBytes(long)"
        - "estimatorHandle()"
      - BranchSide: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1232"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1235"
      Branch Sides:
      - BranchSide: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1238"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1237"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1230,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].access$1700(io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1230,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].estimatorHandle()"
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1230,1"
      Dst: "[io.netty.channel.MessageSizeEstimator$Handle].size(java.lang.Object)"
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1231,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].incrementPendingOutboundBytes(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$WriteTask"
    linkageType: ""
    functionLinenumber: 1218
    functionLinenumberEnd: 1222
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1219,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$WriteTask"
    linkageType: ""
    functionLinenumber: 1242
    functionLinenumberEnd: 1253
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].decrementPendingOutboundBytes()"
    - "[io.netty.channel.AbstractChannelHandlerContext].invokeWrite(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].invokeWriteAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].recycle()"
    functionUses: 49
    ICount: 19
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1244"
      Branch Sides:
      - BranchSide: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1247"
        BranchSideFuncs:
        - "invokeWrite(java.lang.Object,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1246"
        BranchSideFuncs:
        - "invokeWriteAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1243,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].decrementPendingOutboundBytes()"
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1245,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].invokeWrite(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1247,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].invokeWriteAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1250,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].recycle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].decrementPendingOutboundBytes()"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$WriteTask"
    linkageType: ""
    functionLinenumber: 1262
    functionLinenumberEnd: 1267
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].access$1700(io.netty.channel.AbstractChannelHandlerContext)"
    - "[io.netty.channel.DefaultChannelPipeline].decrementPendingOutboundBytes(long)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$3].decrementPendingOutboundBytes(long)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1263"
      Branch Sides:
      - BranchSide: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1266"
        BranchSideFuncs:
        - "decrementPendingOutboundBytes(long)"
        - "access$1700(io.netty.channel.AbstractChannelHandlerContext)"
      - BranchSide: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1265"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1264,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].access$1700(io.netty.channel.AbstractChannelHandlerContext)"
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1264,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].decrementPendingOutboundBytes(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].recycle()"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$WriteTask"
    linkageType: ""
    functionLinenumber: 1269
    functionLinenumberEnd: 1275
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.Recycler$DefaultHandle].recycle(java.lang.Object)"
    - "[io.netty.util.Recycler$1].recycle(java.lang.Object)"
    - "[io.netty.util.internal.ObjectPool$Handle].recycle(java.lang.Object)"
    functionUses: 4
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1273,1"
      Dst: "[io.netty.util.internal.ObjectPool$Handle].recycle(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].cancel()"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$WriteTask"
    linkageType: ""
    functionLinenumber: 1255
    functionLinenumberEnd: 1261
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].decrementPendingOutboundBytes()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].recycle()"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1256,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].decrementPendingOutboundBytes()"
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1258,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].recycle()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.channel.AbstractChannelHandlerContext$1)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$WriteTask"
    linkageType: ""
    functionLinenumber: 1189
    functionLinenumberEnd: 1191
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    - "io.netty.channel.AbstractChannelHandlerContext$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].<init>(io.netty.util.internal.ObjectPool$Handle)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask:1190,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].<init>(io.netty.util.internal.ObjectPool$Handle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].addFilesystemOsClassifiers(java.util.Set<String>,java.util.Set<String>)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 284
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.util.Set<String>"
    - "java.util.Set<String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].<init>(java.lang.String)"
    - "[io.netty.util.internal.PlatformDependent$4].<init>(java.io.File,java.util.Set,java.util.Set,java.lang.String)"
    - "[java.lang.Boolean].booleanValue()"
    - "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - "[io.netty.util.internal.PlatformDependent$4].run()"
    functionUses: 1
    ICount: 19
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:231"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:283"
        BranchSideFuncs:
        - "doPrivileged(java.security.PrivilegedAction)"
        - "run()"
        - "booleanValue()"
        - "<init>(java.lang.String)"
        - "<init>(java.io.File,java.util.Set,java.util.Set,java.lang.String)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:282"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:279"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:231"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:230"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:232,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:233,1"
      Dst: "[io.netty.util.internal.PlatformDependent$4].<init>(java.io.File,java.util.Set,java.util.Set,java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:233,1"
      Dst: "[java.security.AccessController].doPrivileged(java.security.PrivilegedAction)"
    - Src: "io.netty.util.internal.PlatformDependent:233,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent$4].<init>(java.io.File,java.util.Set,java.util.Set,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent$4"
    linkageType: ""
    functionLinenumber: 232
    functionLinenumberEnd: 234
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.io.File"
    - "java.util.Set"
    - "java.util.Set"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent$4:233,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].addPropertyOsClassifiers(java.util.Set<String>,java.util.Set<String>)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 314
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.Set<String>"
    - "java.util.Set<String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String)"
    - "[java.lang.String].isEmpty()"
    - "[java.lang.String].split(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.internal.PlatformDependent].addClassifier(java.util.Set,java.util.Set,java.lang.String[])"
    functionUses: 1
    ICount: 41
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:292"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:295"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:294"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.util.internal.PlatformDependent:295"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:298"
        BranchSideFuncs:
        - "split(java.lang.String)"
    - Branch String: "io.netty.util.internal.PlatformDependent:300"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:306"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:305"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:306"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:310"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:309"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:310"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:312"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:291,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:295,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.util.internal.PlatformDependent:299,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:301,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.PlatformDependent:301,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:301,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.PlatformDependent:301,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:311,1"
      Dst: "[io.netty.util.internal.PlatformDependent].addClassifier(java.util.Set,java.util.Set,java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].addClassifier(java.util.Set,java.util.Set,java.lang.String[])"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1513
    functionLinenumberEnd: 1520
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Set"
    - "java.util.Set"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].contains(java.lang.Object)"
    - "[java.util.TreeMap$EntrySet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].contains(java.lang.Object)"
    - "[java.util.TreeMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[java.util.HashSet].contains(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[java.util.AbstractCollection].contains(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].contains(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].contains(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].contains(java.lang.Object)"
    - "[java.util.TreeSet].contains(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].contains(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].contains(java.lang.Object)"
    - "[io.netty.util.internal.ConcurrentSet].add(java.lang.Object)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].add(java.lang.Object)"
    - "[java.util.AbstractCollection].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].add(java.lang.Object)"
    - "[io.netty.handler.codec.HeadersUtils$CharSequenceDelegatingStringSet].add(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroup].add(java.lang.Object)"
    - "[java.util.HashSet].add(java.lang.Object)"
    - "[java.util.TreeSet].add(java.lang.Object)"
    - "[java.util.Set].contains(java.lang.Object)"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 2
    ICount: 13
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1514"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1519"
        BranchSideFuncs:
        - "contains(java.lang.Object)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:1518"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1515"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1514"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:1513"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1515,1"
      Dst: "[java.util.Set].contains(java.lang.Object)"
    - Src: "io.netty.util.internal.PlatformDependent:1516,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent].hasDirectBufferNoCleanerConstructor()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 320
    functionLinenumberEnd: 322
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].hasDirectBufferNoCleanerConstructor()"
    functionUses: 1
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:321,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].hasDirectBufferNoCleanerConstructor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].isAndroid()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 332
    functionLinenumberEnd: 334
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].isAndroid()"
    functionUses: 7
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:333,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].isAndroid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].getUnsafeUnavailabilityCause()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].directBufferPreferred()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 400
    functionLinenumberEnd: 402
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].maxDirectMemory()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 407
    functionLinenumberEnd: 409
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].usedDirectMemory()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].get()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:418"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:417"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:418,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].tmpdir()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 424
    functionLinenumberEnd: 426
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].bitMode()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].allocateMemory(long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].allocateMemory(long)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:444,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].allocateMemory(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].freeMemory(long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 447
    functionLinenumberEnd: 450
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].freeMemory(long)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:448,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].freeMemory(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].reallocateMemory(long,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].reallocateMemory(long,long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:452,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].reallocateMemory(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].newLongCounter()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 481
    functionLinenumberEnd: 486
    functionDepth: 2
    returnType: "io.netty.util.internal.LongCounter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.util.internal.LongAdderCounter].<init>()"
    - "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].<init>(io.netty.util.internal.PlatformDependent$1)"
    functionUses: 8
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:482"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:485"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.util.internal.PlatformDependent:484"
        BranchSideFuncs:
        - "<init>(io.netty.util.internal.PlatformDependent$1)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:482,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.util.internal.PlatformDependent:483,1"
      Dst: "[io.netty.util.internal.LongAdderCounter].<init>()"
    - Src: "io.netty.util.internal.PlatformDependent:485,1"
      Dst: "[io.netty.util.internal.PlatformDependent$AtomicLongCounter].<init>(io.netty.util.internal.PlatformDependent$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap(int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.concurrent.ConcurrentMap<K,V>"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:493,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap(int,float)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.concurrent.ConcurrentMap<K,V>"
    argCount: 2
    argTypes:
    - "int"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].<init>(int,float)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:500,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>(int,float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap(int,float,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.concurrent.ConcurrentMap<K,V>"
    argCount: 3
    argTypes:
    - "int"
    - "float"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].<init>(int,float,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:508,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>(int,float,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap(java.util.Map<?\
      \ extends K,? extends V>)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.concurrent.ConcurrentMap<K,V>"
    argCount: 1
    argTypes:
    - "java.util.Map<? extends K,? extends V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].<init>(java.util.Map)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:515,1"
      Dst: "[java.util.concurrent.ConcurrentHashMap].<init>(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].directBuffer(long,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].hasDirectBufferNoCleanerConstructor()"
    - "[io.netty.util.internal.PlatformDependent0].newDirectBuffer(long,int)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:531"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:534"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:533"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:531,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].hasDirectBufferNoCleanerConstructor()"
    - Src: "io.netty.util.internal.PlatformDependent:532,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].newDirectBuffer(long,int)"
    - Src: "io.netty.util.internal.PlatformDependent:534,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].getInt(java.lang.Object,long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 542
    functionLinenumberEnd: 544
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getInt(java.lang.Object,long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:543,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getInt(java.lang.Object,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].safeConstructPutInt(java.lang.Object,long,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 546
    functionLinenumberEnd: 549
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].safeConstructPutInt(java.lang.Object,long,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:547,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].safeConstructPutInt(java.lang.Object,long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].getIntVolatile(long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getIntVolatile(long)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:551,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getIntVolatile(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].putIntOrdered(long,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].putIntOrdered(long,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:555,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].putIntOrdered(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].getByte(byte[],long)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 578
    functionLinenumberEnd: 580
    functionDepth: 1
    returnType: "byte"
    argCount: 2
    argTypes:
    - "byte[]"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getByte(byte[],long)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:579,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getByte(byte[],long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].allocateDirectNoCleaner(int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 771
    functionLinenumberEnd: 781
    functionDepth: 3
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.internal.PlatformDependent].incrementMemoryCounter(int)"
    - "[io.netty.util.internal.PlatformDependent0].allocateDirectNoCleaner(int)"
    - "[io.netty.util.internal.PlatformDependent].decrementMemoryCounter(int)"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    functionUses: 2
    ICount: 15
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:772"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:774"
        BranchSideFuncs:
        - "<init>()"
        - "allocateDirectNoCleaner(int)"
        - "throwException(java.lang.Throwable)"
        - "decrementMemoryCounter(int)"
        - "incrementMemoryCounter(int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:773"
        BranchSideFuncs:
        - "allocateDirectNoCleaner(int)"
        - "incrementMemoryCounter(int)"
    - Branch String: "io.netty.util.internal.PlatformDependent:772"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:774"
        BranchSideFuncs:
        - "<init>()"
        - "allocateDirectNoCleaner(int)"
        - "throwException(java.lang.Throwable)"
        - "decrementMemoryCounter(int)"
        - "incrementMemoryCounter(int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:773"
        BranchSideFuncs:
        - "allocateDirectNoCleaner(int)"
        - "incrementMemoryCounter(int)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:772,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.util.internal.PlatformDependent:774,1"
      Dst: "[io.netty.util.internal.PlatformDependent].incrementMemoryCounter(int)"
    - Src: "io.netty.util.internal.PlatformDependent:776,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].allocateDirectNoCleaner(int)"
    - Src: "io.netty.util.internal.PlatformDependent:778,1"
      Dst: "[io.netty.util.internal.PlatformDependent].decrementMemoryCounter(int)"
    - Src: "io.netty.util.internal.PlatformDependent:779,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].incrementMemoryCounter(int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 840
    functionLinenumberEnd: 851
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].addAndGet(long)"
    - "[io.netty.util.internal.OutOfDirectMemoryError].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 31
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:841"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:850"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:849"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:843"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:850"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "addAndGet(long)"
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:849"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:842,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].addAndGet(long)"
    - Src: "io.netty.util.internal.PlatformDependent:845,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.PlatformDependent:845,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:845,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.internal.PlatformDependent:845,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.util.internal.PlatformDependent:845,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.internal.PlatformDependent:845,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.PlatformDependent:845,1"
      Dst: "[io.netty.util.internal.OutOfDirectMemoryError].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.OutOfDirectMemoryError].<init>(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.OutOfDirectMemoryError"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.OutOfMemoryError].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.OutOfDirectMemoryError:28,1"
      Dst: "[java.lang.OutOfMemoryError].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].decrementMemoryCounter(int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 852
    functionLinenumberEnd: 858
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].addAndGet(long)"
    - "[java.lang.AssertionError].<init>()"
    functionUses: 3
    ICount: 16
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:853"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:857"
        BranchSideFuncs:
        - "<init>()"
        - "addAndGet(long)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:856"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:855"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:856"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:855"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:856"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:854,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].addAndGet(long)"
    - Src: "io.netty.util.internal.PlatformDependent:855,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent].reallocateDirectNoCleaner(java.nio.ByteBuffer,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 788
    functionLinenumberEnd: 799
    functionDepth: 3
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.internal.PlatformDependent].incrementMemoryCounter(int)"
    - "[io.netty.util.internal.PlatformDependent0].reallocateDirectNoCleaner(java.nio.ByteBuffer,int)"
    - "[io.netty.util.internal.PlatformDependent].decrementMemoryCounter(int)"
    - "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    - "[java.nio.Buffer].capacity()"
    functionUses: 1
    ICount: 18
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:789"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:791"
        BranchSideFuncs:
        - "<init>()"
        - "throwException(java.lang.Throwable)"
        - "reallocateDirectNoCleaner(java.nio.ByteBuffer,int)"
        - "decrementMemoryCounter(int)"
        - "incrementMemoryCounter(int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:790"
        BranchSideFuncs:
        - "reallocateDirectNoCleaner(java.nio.ByteBuffer,int)"
        - "incrementMemoryCounter(int)"
    - Branch String: "io.netty.util.internal.PlatformDependent:789"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:791"
        BranchSideFuncs:
        - "<init>()"
        - "throwException(java.lang.Throwable)"
        - "reallocateDirectNoCleaner(java.nio.ByteBuffer,int)"
        - "decrementMemoryCounter(int)"
        - "incrementMemoryCounter(int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:790"
        BranchSideFuncs:
        - "reallocateDirectNoCleaner(java.nio.ByteBuffer,int)"
        - "incrementMemoryCounter(int)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:789,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.util.internal.PlatformDependent:791,1"
      Dst: "[java.nio.Buffer].capacity()"
    - Src: "io.netty.util.internal.PlatformDependent:792,1"
      Dst: "[io.netty.util.internal.PlatformDependent].incrementMemoryCounter(int)"
    - Src: "io.netty.util.internal.PlatformDependent:794,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].reallocateDirectNoCleaner(java.nio.ByteBuffer,int)"
    - Src: "io.netty.util.internal.PlatformDependent:796,1"
      Dst: "[io.netty.util.internal.PlatformDependent].decrementMemoryCounter(int)"
    - Src: "io.netty.util.internal.PlatformDependent:797,1"
      Dst: "[io.netty.util.internal.PlatformDependent].throwException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].freeDirectNoCleaner(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 806
    functionLinenumberEnd: 813
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.internal.PlatformDependent0].directBufferAddress(java.nio.ByteBuffer)"
    - "[io.netty.util.internal.PlatformDependent0].freeMemory(long)"
    - "[io.netty.util.internal.PlatformDependent].decrementMemoryCounter(int)"
    - "[java.nio.Buffer].capacity()"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:807"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:808"
        BranchSideFuncs:
        - "freeMemory(long)"
        - "directBufferAddress(java.nio.ByteBuffer)"
        - "decrementMemoryCounter(int)"
    - Branch String: "io.netty.util.internal.PlatformDependent:807"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:808"
        BranchSideFuncs:
        - "freeMemory(long)"
        - "directBufferAddress(java.nio.ByteBuffer)"
        - "decrementMemoryCounter(int)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:807,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.util.internal.PlatformDependent:809,1"
      Dst: "[java.nio.Buffer].capacity()"
    - Src: "io.netty.util.internal.PlatformDependent:810,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].directBufferAddress(java.nio.ByteBuffer)"
    - Src: "io.netty.util.internal.PlatformDependent:810,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].freeMemory(long)"
    - Src: "io.netty.util.internal.PlatformDependent:811,1"
      Dst: "[io.netty.util.internal.PlatformDependent].decrementMemoryCounter(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].hasAlignDirectByteBuffer()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 814
    functionLinenumberEnd: 816
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].hasAlignSliceMethod()"
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:815"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:814"
        BranchSideFuncs:
        - "hasAlignSliceMethod()"
        - "hasUnsafe()"
    - Branch String: "io.netty.util.internal.PlatformDependent:815"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:814"
        BranchSideFuncs:
        - "hasAlignSliceMethod()"
        - "hasUnsafe()"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:815,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.util.internal.PlatformDependent:815,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].hasAlignSliceMethod()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent].alignDirectBuffer(java.nio.ByteBuffer,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 818
    functionLinenumberEnd: 833
    functionDepth: 3
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.internal.PlatformDependent0].hasAlignSliceMethod()"
    - "[io.netty.util.internal.PlatformDependent0].alignSlice(java.nio.ByteBuffer,int)"
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.util.internal.PlatformDependent].directBufferAddress(java.nio.ByteBuffer)"
    - "[io.netty.util.internal.PlatformDependent].align(long,int)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].isDirect()"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.ByteBuffer].slice()"
    functionUses: 2
    ICount: 23
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:819"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:822"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:821"
        BranchSideFuncs:
        - "hasAlignSliceMethod()"
    - Branch String: "io.netty.util.internal.PlatformDependent:822"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:825"
        BranchSideFuncs:
        - "alignSlice(java.nio.ByteBuffer,int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:824"
        BranchSideFuncs:
        - "hasUnsafe()"
    - Branch String: "io.netty.util.internal.PlatformDependent:825"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:832"
        BranchSideFuncs:
        - "directBufferAddress(java.nio.ByteBuffer)"
        - "align(long,int)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:831"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:819,1"
      Dst: "[java.nio.ByteBuffer].isDirect()"
    - Src: "io.netty.util.internal.PlatformDependent:820,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:822,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].hasAlignSliceMethod()"
    - Src: "io.netty.util.internal.PlatformDependent:823,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].alignSlice(java.nio.ByteBuffer,int)"
    - Src: "io.netty.util.internal.PlatformDependent:825,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.util.internal.PlatformDependent:826,1"
      Dst: "[io.netty.util.internal.PlatformDependent].directBufferAddress(java.nio.ByteBuffer)"
    - Src: "io.netty.util.internal.PlatformDependent:827,1"
      Dst: "[io.netty.util.internal.PlatformDependent].align(long,int)"
    - Src: "io.netty.util.internal.PlatformDependent:828,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "io.netty.util.internal.PlatformDependent:829,1"
      Dst: "[java.nio.ByteBuffer].slice()"
    - Src: "io.netty.util.internal.PlatformDependent:832,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].align(long,int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 836
    functionLinenumberEnd: 838
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.util.Pow2].align(long,int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:837,1"
      Dst: "[io.netty.util.internal.shaded.org.jctools.util.Pow2].align(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].newSpscQueue()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1064
    functionLinenumberEnd: 1066
    functionDepth: 1
    returnType: "java.util.Queue"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].<init>()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].<init>()"
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1065"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1064"
        BranchSideFuncs:
        - "<init>()"
        - "hasUnsafe()"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1065,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.util.internal.PlatformDependent:1065,1"
      Dst: "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].<init>()"
    - Src: "io.netty.util.internal.PlatformDependent:1065,1"
      Dst: "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].newFixedMpscQueue(int)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1072
    functionLinenumberEnd: 1074
    functionDepth: 1
    returnType: "java.util.Queue<T>"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].<init>(int)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].<init>(int)"
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1073"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1072"
        BranchSideFuncs:
        - "<init>(int)"
        - "hasUnsafe()"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1073,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.util.internal.PlatformDependent:1073,1"
      Dst: "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].<init>(int)"
    - Src: "io.netty.util.internal.PlatformDependent:1073,1"
      Dst: "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].getClassLoader(java.lang.Class<?>)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1079
    functionLinenumberEnd: 1081
    functionDepth: 0
    returnType: "java.lang.ClassLoader"
    argCount: 1
    argTypes:
    - "java.lang.Class<?>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getClassLoader(java.lang.Class)"
    functionUses: 12
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1080,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getClassLoader(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].getSystemClassLoader()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1093
    functionLinenumberEnd: 1095
    functionDepth: 2
    returnType: "java.lang.ClassLoader"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getSystemClassLoader()"
    functionUses: 4
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1094,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getSystemClassLoader()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].newConcurrentDeque()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.Deque"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[java.util.concurrent.LinkedBlockingDeque].<init>()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1102"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1105"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1104"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1102,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.util.internal.PlatformDependent:1103,1"
      Dst: "[java.util.concurrent.LinkedBlockingDeque].<init>()"
    - Src: "io.netty.util.internal.PlatformDependent:1105,1"
      Dst: "[java.util.concurrent.ConcurrentLinkedDeque].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].isWindows0()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1116
    functionLinenumberEnd: 1122
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1118"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1121"
        BranchSideFuncs:
        - "debug(java.lang.String)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:1120"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1117,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.util.internal.PlatformDependent:1119,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].isOsx0()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1124
    functionLinenumberEnd: 1130
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1126"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1129"
        BranchSideFuncs:
        - "debug(java.lang.String)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:1128"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1125,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.util.internal.PlatformDependent:1127,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].maybeSuperUser0()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1132
    functionLinenumberEnd: 1139
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String)"
    - "[io.netty.util.internal.PlatformDependent].isWindows()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1134"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1138"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1137"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.util.internal.PlatformDependent:1138"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1137"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.util.internal.PlatformDependent:1138"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1137"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1133,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1134,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isWindows()"
    - Src: "io.netty.util.internal.PlatformDependent:1135,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent].unsafeUnavailabilityCause0()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1141
    functionLinenumberEnd: 1165
    functionDepth: 2
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].isAndroid()"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.util.internal.PlatformDependent].isIkvmDotNet()"
    - "[io.netty.util.internal.PlatformDependent0].getUnsafeUnavailabilityCause()"
    - "[io.netty.util.internal.PlatformDependent0].hasUnsafe()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].trace(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].trace(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].trace(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].trace(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].trace(java.lang.String,java.lang.Throwable)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].trace(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 35
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1142"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1147"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1146"
        BranchSideFuncs:
        - "isIkvmDotNet()"
    - Branch String: "io.netty.util.internal.PlatformDependent:1147"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1152"
        BranchSideFuncs:
        - "debug(java.lang.String)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:1151"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1153"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1158"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1157"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object)"
        - "hasUnsafe()"
    - Branch String: "io.netty.util.internal.PlatformDependent:1159"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1158"
        BranchSideFuncs:
        - "getUnsafeUnavailabilityCause()"
        - "debug(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:1157"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object)"
        - "hasUnsafe()"
    - Branch String: "io.netty.util.internal.PlatformDependent:1160"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1159"
        BranchSideFuncs:
        - "trace(java.lang.String,java.lang.Throwable)"
        - "getUnsafeUnavailabilityCause()"
        - "debug(java.lang.String,java.lang.Object)"
        - "debug(java.lang.String)"
        - "isIkvmDotNet()"
        - "<init>(java.lang.String)"
        - "hasUnsafe()"
        - "<init>(java.lang.String,java.lang.Throwable)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:1158"
        BranchSideFuncs:
        - "getUnsafeUnavailabilityCause()"
        - "debug(java.lang.String,java.lang.Object)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1142,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isAndroid()"
    - Src: "io.netty.util.internal.PlatformDependent:1143,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1144,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1147,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isIkvmDotNet()"
    - Src: "io.netty.util.internal.PlatformDependent:1152,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getUnsafeUnavailabilityCause()"
    - Src: "io.netty.util.internal.PlatformDependent:1158,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].hasUnsafe()"
    - Src: "io.netty.util.internal.PlatformDependent:1159,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.PlatformDependent:1162,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].trace(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.util.internal.PlatformDependent:1164,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.PlatformDependent].isIkvmDotNet()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1184
    functionLinenumberEnd: 1186
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].isJ9Jvm()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].isJ9Jvm0()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1176
    functionLinenumberEnd: 1179
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String,java.lang.String)"
    - "[java.lang.String].toLowerCase()"
    - "[java.lang.String].startsWith(java.lang.String)"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1178"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1176"
        BranchSideFuncs:
        - "toLowerCase()"
        - "get(java.lang.String,java.lang.String)"
        - "startsWith(java.lang.String)"
    - Branch String: "io.netty.util.internal.PlatformDependent:1178"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1176"
        BranchSideFuncs:
        - "toLowerCase()"
        - "get(java.lang.String,java.lang.String)"
        - "startsWith(java.lang.String)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1177,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String,java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1177,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "io.netty.util.internal.PlatformDependent:1178,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.internal.PlatformDependent].isIkvmDotNet0()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1188
    functionLinenumberEnd: 1191
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String,java.lang.String)"
    - "[java.lang.String].toUpperCase(java.util.Locale)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1189,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String,java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1189,1"
      Dst: "[java.lang.String].toUpperCase(java.util.Locale)"
    - Src: "io.netty.util.internal.PlatformDependent:1190,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].estimateMaxDirectMemory()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1202
    functionLinenumberEnd: 1276
    functionDepth: 3
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getSystemClassLoader()"
    - "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String,java.lang.String)"
    - "[java.lang.String].toLowerCase()"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    - "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[java.util.concurrent.atomic.LongAdder].longValue()"
    - "[java.lang.Float].longValue()"
    - "[java.lang.Double].longValue()"
    - "[java.util.concurrent.atomic.AtomicInteger].longValue()"
    - "[java.math.BigInteger].longValue()"
    - "[java.util.concurrent.atomic.AtomicLong].longValue()"
    - "[java.lang.Long].longValue()"
    - "[java.lang.Integer].longValue()"
    - "[java.math.BigDecimal].longValue()"
    - "[java.lang.Byte].longValue()"
    - "[java.lang.Short].longValue()"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].matches()"
    - "[java.util.regex.Matcher].group(int)"
    - "[java.lang.Long].parseLong(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Runtime].getRuntime()"
    - "[java.lang.Runtime].maxMemory()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.lang.Number].longValue()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    functionUses: 1
    ICount: 77
    EdgeCount: 62
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1214"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1223"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1216"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1223"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1226"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1233"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1232"
        BranchSideFuncs:
        - "invoke(java.lang.Object,java.lang.Object[])"
        - "forName(java.lang.String,boolean,java.lang.ClassLoader)"
        - "getDeclaredMethod(java.lang.String,java.lang.Class[])"
        - "size()"
    - Branch String: "io.netty.util.internal.PlatformDependent:1242"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1266"
        BranchSideFuncs:
        - "get(int)"
        - "matcher(java.lang.CharSequence)"
        - "matches()"
      - BranchSide: "io.netty.util.internal.PlatformDependent:1265"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1244"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1248"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1247"
        BranchSideFuncs:
        - "group(int)"
        - "parseLong(java.lang.String)"
        - "charAt(int)"
    - Branch String: "io.netty.util.internal.PlatformDependent:1268"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1272"
        BranchSideFuncs:
        - "getRuntime()"
        - "maxMemory()"
      - BranchSide: "io.netty.util.internal.PlatformDependent:1271"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object)"
        - "valueOf(long)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1207,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getSystemClassLoader()"
    - Src: "io.netty.util.internal.PlatformDependent:1213,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String,java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1213,1"
      Dst: "[java.lang.String].toLowerCase()"
    - Src: "io.netty.util.internal.PlatformDependent:1214,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1218,1"
      Dst: "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    - Src: "io.netty.util.internal.PlatformDependent:1219,1"
      Dst: "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - Src: "io.netty.util.internal.PlatformDependent:1220,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.util.internal.PlatformDependent:1220,1"
      Dst: "[java.lang.Number].longValue()"
    - Src: "io.netty.util.internal.PlatformDependent:1242,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.util.internal.PlatformDependent:1243,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.util.internal.PlatformDependent:1243,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "io.netty.util.internal.PlatformDependent:1244,1"
      Dst: "[java.util.regex.Matcher].matches()"
    - Src: "io.netty.util.internal.PlatformDependent:1248,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "io.netty.util.internal.PlatformDependent:1248,1"
      Dst: "[java.lang.Long].parseLong(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1249,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.util.internal.PlatformDependent:1269,1"
      Dst: "[java.lang.Runtime].getRuntime()"
    - Src: "io.netty.util.internal.PlatformDependent:1269,1"
      Dst: "[java.lang.Runtime].maxMemory()"
    - Src: "io.netty.util.internal.PlatformDependent:1270,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.util.internal.PlatformDependent:1270,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 23
    CyclomaticComplexity: 9
  - functionName: "[io.netty.util.internal.PlatformDependent].tmpdir0()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1280
    functionLinenumberEnd: 1335
    functionDepth: 4
    returnType: "java.io.File"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String)"
    - "[io.netty.util.internal.PlatformDependent].toDirectory(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.PlatformDependent].isWindows()"
    - "[java.lang.System].getenv(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.File].<init>(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    functionUses: 1
    ICount: 63
    EdgeCount: 58
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1282"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1287"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1286"
        BranchSideFuncs:
        - "get(java.lang.String)"
    - Branch String: "io.netty.util.internal.PlatformDependent:1288"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1294"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1293"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1294"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1316"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1315"
        BranchSideFuncs:
        - "toDirectory(java.lang.String)"
        - "getenv(java.lang.String)"
    - Branch String: "io.netty.util.internal.PlatformDependent:1296"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1301"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1300"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1302"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1315"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1314"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1304"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1309"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1308"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
    - Branch String: "io.netty.util.internal.PlatformDependent:1310"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1315"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1314"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1317"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1324"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:1323"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1327"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1330"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1329"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1281,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1281,1"
      Dst: "[io.netty.util.internal.PlatformDependent].toDirectory(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1283,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.PlatformDependent:1294,1"
      Dst: "[io.netty.util.internal.PlatformDependent].isWindows()"
    - Src: "io.netty.util.internal.PlatformDependent:1295,1"
      Dst: "[java.lang.System].getenv(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1303,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.internal.PlatformDependent:1303,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1303,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.internal.PlatformDependent:1328,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1333,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.internal.PlatformDependent].toDirectory(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1338
    functionLinenumberEnd: 1354
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.File].<init>(java.lang.String)"
    - "[java.io.File].mkdirs()"
    - "[java.io.File].isDirectory()"
    - "[java.io.File].getAbsoluteFile()"
    functionUses: 6
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1339"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1343"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1342"
        BranchSideFuncs:
        - "isDirectory()"
        - "mkdirs()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.util.internal.PlatformDependent:1346"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1351"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1350"
        BranchSideFuncs:
        - "getAbsoluteFile()"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1343,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1344,1"
      Dst: "[java.io.File].mkdirs()"
    - Src: "io.netty.util.internal.PlatformDependent:1346,1"
      Dst: "[java.io.File].isDirectory()"
    - Src: "io.netty.util.internal.PlatformDependent:1351,1"
      Dst: "[java.io.File].getAbsoluteFile()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].bitMode0()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1358
    functionLinenumberEnd: 1397
    functionDepth: 5
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.SystemPropertyUtil].getInt(java.lang.String,int)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String,java.lang.String)"
    - "[java.lang.String].toLowerCase(java.util.Locale)"
    - "[java.lang.String].trim()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.util.regex.Pattern].compile(java.lang.String)"
    - "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - "[java.util.regex.Matcher].find()"
    - "[java.util.regex.Matcher].group(int)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 59
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1360"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1366"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1365"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1367"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1371"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1370"
        BranchSideFuncs:
        - "getInt(java.lang.String,int)"
    - Branch String: "io.netty.util.internal.PlatformDependent:1372"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1378"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:1377"
        BranchSideFuncs:
        - "trim()"
    - Branch String: "io.netty.util.internal.PlatformDependent:1379"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1380"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1379"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1379"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1381"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1380"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.util.internal.PlatformDependent:1381"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1382"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1381"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1381"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1382"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1381"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1381"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1382"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1381"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1381"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1385"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1384"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1385"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1390"
        BranchSideFuncs:
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:1389"
        BranchSideFuncs:
        - "compile(java.lang.String)"
        - "get(java.lang.String,java.lang.String)"
        - "matcher(java.lang.CharSequence)"
        - "toLowerCase(java.util.Locale)"
        - "find()"
    - Branch String: "io.netty.util.internal.PlatformDependent:1393"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1396"
        BranchSideFuncs:
        - "group(int)"
        - "parseInt(java.lang.String)"
      - BranchSide: "io.netty.util.internal.PlatformDependent:1395"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1359,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].getInt(java.lang.String,int)"
    - Src: "io.netty.util.internal.PlatformDependent:1361,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.util.internal.PlatformDependent:1361,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object)"
    - Src: "io.netty.util.internal.PlatformDependent:1378,1"
      Dst: "[io.netty.util.internal.SystemPropertyUtil].get(java.lang.String,java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1378,1"
      Dst: "[java.lang.String].toLowerCase(java.util.Locale)"
    - Src: "io.netty.util.internal.PlatformDependent:1378,1"
      Dst: "[java.lang.String].trim()"
    - Src: "io.netty.util.internal.PlatformDependent:1379,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.util.internal.PlatformDependent:1386,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.util.internal.PlatformDependent:1391,1"
      Dst: "[java.util.regex.Pattern].compile(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1392,1"
      Dst: "[java.util.regex.Pattern].matcher(java.lang.CharSequence)"
    - Src: "io.netty.util.internal.PlatformDependent:1393,1"
      Dst: "[java.util.regex.Matcher].find()"
    - Src: "io.netty.util.internal.PlatformDependent:1394,1"
      Dst: "[java.util.regex.Matcher].group(int)"
    - Src: "io.netty.util.internal.PlatformDependent:1394,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 8
  - functionName: "[io.netty.util.internal.PlatformDependent].addressSize0()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1400
    functionLinenumberEnd: 1405
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.util.internal.PlatformDependent0].addressSize()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1401"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1404"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1403"
        BranchSideFuncs:
        - "addressSize()"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1401,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.util.internal.PlatformDependent:1404,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].addressSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].byteArrayBaseOffset0()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1407
    functionLinenumberEnd: 1412
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.util.internal.PlatformDependent0].byteArrayBaseOffset()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1408"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1411"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1410"
        BranchSideFuncs:
        - "byteArrayBaseOffset()"
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1408,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.util.internal.PlatformDependent:1411,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].byteArrayBaseOffset()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].normalizeOsReleaseVariableValue(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1522
    functionLinenumberEnd: 1524
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    - "[java.lang.String].trim()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1523,1"
      Dst: "[java.lang.String].trim()"
    - Src: "io.netty.util.internal.PlatformDependent:1523,1"
      Dst: "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].normalize(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1526
    functionLinenumberEnd: 1528
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    - "[java.lang.String].toLowerCase(java.util.Locale)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1527,1"
      Dst: "[java.lang.String].toLowerCase(java.util.Locale)"
    - Src: "io.netty.util.internal.PlatformDependent:1527,1"
      Dst: "[java.lang.String].replaceAll(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].normalizeArch(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1530
    functionLinenumberEnd: 1573
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].normalize(java.lang.String)"
    - "[java.lang.String].matches(java.lang.String)"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 1
    ICount: 48
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1532"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1535"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1534"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1535"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1538"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1537"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1538"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1541"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1540"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1541"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1544"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1543"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1544"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1547"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1546"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1547"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1550"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1549"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1550"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1553"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1552"
        BranchSideFuncs:
        - "matches(java.lang.String)"
    - Branch String: "io.netty.util.internal.PlatformDependent:1553"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1556"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1555"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1556"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1559"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1558"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1559"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1562"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1561"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1562"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1565"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1564"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1565"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1568"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1567"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.util.internal.PlatformDependent:1568"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1572"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1571"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1531,1"
      Dst: "[io.netty.util.internal.PlatformDependent].normalize(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1532,1"
      Dst: "[java.lang.String].matches(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1550,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 27
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].normalizeOs(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 1575
    functionLinenumberEnd: 1612
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].normalize(java.lang.String)"
    - "[java.lang.String].startsWith(java.lang.String)"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.Character].isDigit(char)"
    - "[java.lang.String].length()"
    functionUses: 1
    ICount: 44
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.util.internal.PlatformDependent:1577"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1580"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1579"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1580"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1583"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1582"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1583"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1588"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1585"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1586"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1585"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1585"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1589"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1588"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1589"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1592"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1591"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1592"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1593"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1592"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1592"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1593"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1592"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1592"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1595"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1594"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1595"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1598"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1597"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1598"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1601"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1600"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1601"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1604"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1603"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1604"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1605"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1604"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.internal.PlatformDependent:1604"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1607"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1606"
        BranchSideFuncs:
        - "startsWith(java.lang.String)"
    - Branch String: "io.netty.util.internal.PlatformDependent:1607"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.PlatformDependent:1611"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.internal.PlatformDependent:1610"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1576,1"
      Dst: "[io.netty.util.internal.PlatformDependent].normalize(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1577,1"
      Dst: "[java.lang.String].startsWith(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent:1585,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.util.internal.PlatformDependent:1585,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.util.internal.PlatformDependent:1585,1"
      Dst: "[java.lang.Character].isDigit(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 26
    CyclomaticComplexity: 6
  - functionName: "[io.netty.util.internal.PlatformDependent].<init>()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:1642,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].access$000(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].normalizeOsReleaseVariableValue(java.lang.String)"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:79,1"
      Dst: "[io.netty.util.internal.PlatformDependent].normalizeOsReleaseVariableValue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].access$100(java.util.Set,java.util.Set,java.lang.String[])"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.Set"
    - "java.util.Set"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].addClassifier(java.util.Set,java.util.Set,java.lang.String[])"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent:79,1"
      Dst: "[io.netty.util.internal.PlatformDependent].addClassifier(java.util.Set,java.util.Set,java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent].access$200()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.oio.AbstractOioChannel$1].<init>(io.netty.channel.oio.AbstractOioChannel)"
    functionSourceFile: "io.netty.channel.oio.AbstractOioChannel$1"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.oio.AbstractOioChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.oio.AbstractOioChannel$1:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    functionSourceFile: "io.netty.channel.oio.AbstractOioChannel$1"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.oio.AbstractOioMessageChannel].doRead()"
    - "[io.netty.channel.oio.AbstractOioByteChannel].doRead()"
    - "[io.netty.channel.oio.AbstractOioChannel].doRead()"
    functionUses: 49
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.oio.AbstractOioChannel$1:41,1"
      Dst: "[io.netty.channel.oio.AbstractOioChannel].doRead()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].allocateDirect(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 4
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].allocateDirectNoCleaner(int)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf:30,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateDirectNoCleaner(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].reallocateDirect(java.nio.ByteBuffer,int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 4
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].reallocateDirectNoCleaner(java.nio.ByteBuffer,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf:34,1"
      Dst: "[io.netty.util.internal.PlatformDependent].reallocateDirectNoCleaner(java.nio.ByteBuffer,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].freeDirectNoCleaner(java.nio.ByteBuffer)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf:39,1"
      Dst: "[io.netty.util.internal.PlatformDependent].freeDirectNoCleaner(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].capacity(int)"
    functionSourceFile: "io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 54
    functionDepth: 5
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBuf].checkNewCapacity(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.AbstractByteBuf].trimIndicesToCapacity(int)"
    - "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf].reallocateDirect(java.nio.ByteBuffer,int)"
    - "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].reallocateDirect(java.nio.ByteBuffer,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByteBuffer(java.nio.ByteBuffer,boolean)"
    functionUses: 8
    ICount: 11
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf:47"
      Branch Sides:
      - BranchSide: "io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf:51"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf:50"
        BranchSideFuncs:
        - "setByteBuffer(java.nio.ByteBuffer,boolean)"
        - "trimIndicesToCapacity(int)"
        - "reallocateDirect(java.nio.ByteBuffer,int)"
    Callsites:
    - Src: "io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf:44,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].checkNewCapacity(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf:46,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - Src: "io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf:51,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].trimIndicesToCapacity(int)"
    - Src: "io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf:52,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].reallocateDirect(java.nio.ByteBuffer,int)"
    - Src: "io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf:52,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByteBuffer(java.nio.ByteBuffer,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException].response()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].<init>()"
    functionSourceFile: "io.netty.handler.codec.redis.RedisBulkStringAggregator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageAggregator].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisBulkStringAggregator:50,1"
      Dst: "[io.netty.handler.codec.MessageAggregator].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isStartMessage(io.netty.handler.codec.redis.RedisMessage)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisBulkStringAggregator"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.redis.RedisMessage"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isAggregated(io.netty.handler.codec.redis.RedisMessage)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.RedisBulkStringAggregator:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisBulkStringAggregator:54"
        BranchSideFuncs:
        - "isAggregated(io.netty.handler.codec.redis.RedisMessage)"
    - Branch String: "io.netty.handler.codec.redis.RedisBulkStringAggregator:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisBulkStringAggregator:54"
        BranchSideFuncs:
        - "isAggregated(io.netty.handler.codec.redis.RedisMessage)"
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisBulkStringAggregator:55,1"
      Dst: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isAggregated(io.netty.handler.codec.redis.RedisMessage)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isAggregated(io.netty.handler.codec.redis.RedisMessage)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisBulkStringAggregator"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.redis.RedisMessage"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isContentMessage(io.netty.handler.codec.redis.RedisMessage)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisBulkStringAggregator"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.redis.RedisMessage"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isLastContentMessage(io.netty.handler.codec.redis.BulkStringRedisContent)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisBulkStringAggregator"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.redis.BulkStringRedisContent"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isContentLengthInvalid(io.netty.handler.codec.redis.BulkStringHeaderRedisMessage,int)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisBulkStringAggregator"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.BulkStringHeaderRedisMessage].bulkStringLength()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.RedisBulkStringAggregator:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisBulkStringAggregator:75"
        BranchSideFuncs:
        - "bulkStringLength()"
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisBulkStringAggregator:76,1"
      Dst: "[io.netty.handler.codec.redis.BulkStringHeaderRedisMessage].bulkStringLength()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].newContinueResponse(io.netty.handler.codec.redis.BulkStringHeaderRedisMessage,int,io.netty.channel.ChannelPipeline)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisBulkStringAggregator"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage"
    - "int"
    - "io.netty.channel.ChannelPipeline"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].closeAfterContinueResponse(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisBulkStringAggregator"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisBulkStringAggregator:87,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].ignoreContentAfterContinueResponse(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisBulkStringAggregator"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisBulkStringAggregator:92,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].beginAggregation(io.netty.handler.codec.redis.BulkStringHeaderRedisMessage,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisBulkStringAggregator"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 3
    returnType: "io.netty.handler.codec.redis.FullBulkStringRedisMessage"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.redis.BulkStringHeaderRedisMessage"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisBulkStringAggregator:98,1"
      Dst: "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].beginAggregation(java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisBulkStringAggregator"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBufHolder"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.RedisBulkStringAggregator].beginAggregation(io.netty.handler.codec.redis.BulkStringHeaderRedisMessage,io.netty.buffer.ByteBuf)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisBulkStringAggregator:42,1"
      Dst: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].beginAggregation(io.netty.handler.codec.redis.BulkStringHeaderRedisMessage,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].newContinueResponse(java.lang.Object,int,io.netty.channel.ChannelPipeline)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisBulkStringAggregator"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "int"
    - "io.netty.channel.ChannelPipeline"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.RedisBulkStringAggregator].newContinueResponse(io.netty.handler.codec.redis.BulkStringHeaderRedisMessage,int,io.netty.channel.ChannelPipeline)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisBulkStringAggregator:42,1"
      Dst: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].newContinueResponse(io.netty.handler.codec.redis.BulkStringHeaderRedisMessage,int,io.netty.channel.ChannelPipeline)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isContentLengthInvalid(java.lang.Object,int)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisBulkStringAggregator"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isContentLengthInvalid(io.netty.handler.codec.redis.BulkStringHeaderRedisMessage,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisBulkStringAggregator:42,1"
      Dst: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isContentLengthInvalid(io.netty.handler.codec.redis.BulkStringHeaderRedisMessage,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isAggregated(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisBulkStringAggregator"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isAggregated(io.netty.handler.codec.redis.RedisMessage)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisBulkStringAggregator:42,1"
      Dst: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isAggregated(io.netty.handler.codec.redis.RedisMessage)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isLastContentMessage(io.netty.buffer.ByteBufHolder)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisBulkStringAggregator"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isLastContentMessage(io.netty.handler.codec.redis.BulkStringRedisContent)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisBulkStringAggregator:42,1"
      Dst: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isLastContentMessage(io.netty.handler.codec.redis.BulkStringRedisContent)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isContentMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisBulkStringAggregator"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isContentMessage(io.netty.handler.codec.redis.RedisMessage)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisBulkStringAggregator:42,1"
      Dst: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isContentMessage(io.netty.handler.codec.redis.RedisMessage)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isStartMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisBulkStringAggregator"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isStartMessage(io.netty.handler.codec.redis.RedisMessage)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisBulkStringAggregator:42,1"
      Dst: "[io.netty.handler.codec.redis.RedisBulkStringAggregator].isStartMessage(io.netty.handler.codec.redis.RedisMessage)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf$1].<init>()"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf$1"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf$1:35,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDuplicatedByteBuf$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.buffer.PooledDuplicatedByteBuf$1"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 2
    returnType: "io.netty.buffer.PooledDuplicatedByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.buffer.PooledDuplicatedByteBuf$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDuplicatedByteBuf$1:38,1"
      Dst: "[io.netty.buffer.PooledDuplicatedByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.buffer.PooledDuplicatedByteBuf$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.SoftReferenceMap].fold(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.serialization.SoftReferenceMap"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "java.lang.ref.Reference"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ref.SoftReference].<init>(java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.SoftReferenceMap:30,1"
      Dst: "[java.lang.ref.SoftReference].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.TcpDnsQueryDecoder$1].newQuery(int,io.netty.handler.codec.dns.DnsOpCode)"
    functionSourceFile: "io.netty.handler.codec.dns.TcpDnsQueryDecoder$1"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 1
    returnType: "io.netty.handler.codec.dns.DnsQuery"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.dns.DnsOpCode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].<init>(int,io.netty.handler.codec.dns.DnsOpCode)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.TcpDnsQueryDecoder$1:53,1"
      Dst: "[io.netty.handler.codec.dns.DefaultDnsQuery].<init>(int,io.netty.handler.codec.dns.DnsOpCode)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolArena$DirectArena].<init>(io.netty.buffer.PooledByteBufAllocator,int,int,int,int)"
    functionSourceFile: "io.netty.buffer.PoolArena$DirectArena"
    linkageType: ""
    functionLinenumber: 662
    functionLinenumberEnd: 666
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.buffer.PooledByteBufAllocator"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena].<init>(io.netty.buffer.PooledByteBufAllocator,int,int,int,int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolArena$DirectArena:663,1"
      Dst: "[io.netty.buffer.PoolArena].<init>(io.netty.buffer.PooledByteBufAllocator,int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolArena$DirectArena].isDirect()"
    functionSourceFile: "io.netty.buffer.PoolArena$DirectArena"
    linkageType: ""
    functionLinenumber: 668
    functionLinenumberEnd: 670
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolArena$DirectArena].newChunk(int,int,int,int)"
    functionSourceFile: "io.netty.buffer.PoolArena$DirectArena"
    linkageType: ""
    functionLinenumber: 674
    functionLinenumberEnd: 684
    functionDepth: 6
    returnType: "io.netty.buffer.PoolChunk"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena$DirectArena].allocateDirect(int)"
    - "[io.netty.buffer.PoolChunk].<init>(io.netty.buffer.PoolArena,java.lang.Object,java.lang.Object,int,int,int,int)"
    - "[io.netty.util.internal.PlatformDependent].alignDirectBuffer(java.nio.ByteBuffer,int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolArena$DirectArena:675"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolArena$DirectArena:681"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolArena$DirectArena:680"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.PoolArena,java.lang.Object,java.lang.Object,int,int,int,int)"
        - "allocateDirect(int)"
        - "alignDirectBuffer(java.nio.ByteBuffer,int)"
    Callsites:
    - Src: "io.netty.buffer.PoolArena$DirectArena:676,1"
      Dst: "[io.netty.buffer.PoolArena$DirectArena].allocateDirect(int)"
    - Src: "io.netty.buffer.PoolArena$DirectArena:677,1"
      Dst: "[io.netty.buffer.PoolChunk].<init>(io.netty.buffer.PoolArena,java.lang.Object,java.lang.Object,int,int,int,int)"
    - Src: "io.netty.buffer.PoolArena$DirectArena:682,1"
      Dst: "[io.netty.util.internal.PlatformDependent].alignDirectBuffer(java.nio.ByteBuffer,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolArena$DirectArena].allocateDirect(int)"
    functionSourceFile: "io.netty.buffer.PoolArena$DirectArena"
    linkageType: ""
    functionLinenumber: 699
    functionLinenumberEnd: 702
    functionDepth: 4
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ByteBuffer].allocateDirect(int)"
    - "[io.netty.util.internal.PlatformDependent].useDirectBufferNoCleaner()"
    - "[io.netty.util.internal.PlatformDependent].allocateDirectNoCleaner(int)"
    functionUses: 4
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolArena$DirectArena:700"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolArena$DirectArena:700"
        BranchSideFuncs:
        - "allocateDirectNoCleaner(int)"
      - BranchSide: "io.netty.buffer.PoolArena$DirectArena:699"
        BranchSideFuncs:
        - "useDirectBufferNoCleaner()"
        - "allocateDirect(int)"
    Callsites:
    - Src: "io.netty.buffer.PoolArena$DirectArena:700,1"
      Dst: "[io.netty.util.internal.PlatformDependent].useDirectBufferNoCleaner()"
    - Src: "io.netty.buffer.PoolArena$DirectArena:701,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateDirectNoCleaner(int)"
    - Src: "io.netty.buffer.PoolArena$DirectArena:700,1"
      Dst: "[java.nio.ByteBuffer].allocateDirect(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolArena$DirectArena].newUnpooledChunk(int)"
    functionSourceFile: "io.netty.buffer.PoolArena$DirectArena"
    linkageType: ""
    functionLinenumber: 688
    functionLinenumberEnd: 697
    functionDepth: 5
    returnType: "io.netty.buffer.PoolChunk"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena$DirectArena].allocateDirect(int)"
    - "[io.netty.buffer.PoolChunk].<init>(io.netty.buffer.PoolArena,java.lang.Object,java.lang.Object,int)"
    - "[io.netty.util.internal.PlatformDependent].alignDirectBuffer(java.nio.ByteBuffer,int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolArena$DirectArena:689"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolArena$DirectArena:694"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolArena$DirectArena:693"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.PoolArena,java.lang.Object,java.lang.Object,int)"
        - "allocateDirect(int)"
        - "alignDirectBuffer(java.nio.ByteBuffer,int)"
    Callsites:
    - Src: "io.netty.buffer.PoolArena$DirectArena:690,1"
      Dst: "[io.netty.buffer.PoolArena$DirectArena].allocateDirect(int)"
    - Src: "io.netty.buffer.PoolArena$DirectArena:691,1"
      Dst: "[io.netty.buffer.PoolChunk].<init>(io.netty.buffer.PoolArena,java.lang.Object,java.lang.Object,int)"
    - Src: "io.netty.buffer.PoolArena$DirectArena:695,1"
      Dst: "[io.netty.util.internal.PlatformDependent].alignDirectBuffer(java.nio.ByteBuffer,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolArena$DirectArena].destroyChunk(io.netty.buffer.PoolChunk)"
    functionSourceFile: "io.netty.buffer.PoolArena$DirectArena"
    linkageType: ""
    functionLinenumber: 705
    functionLinenumberEnd: 712
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PoolChunk"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].useDirectBufferNoCleaner()"
    - "[io.netty.util.internal.PlatformDependent].freeDirectNoCleaner(java.nio.ByteBuffer)"
    - "[io.netty.util.internal.PlatformDependent].freeDirectBuffer(java.nio.ByteBuffer)"
    functionUses: 4
    ICount: 12
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolArena$DirectArena:706"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolArena$DirectArena:709"
        BranchSideFuncs:
        - "freeDirectNoCleaner(java.nio.ByteBuffer)"
      - BranchSide: "io.netty.buffer.PoolArena$DirectArena:708"
        BranchSideFuncs:
        - "freeDirectBuffer(java.nio.ByteBuffer)"
    Callsites:
    - Src: "io.netty.buffer.PoolArena$DirectArena:706,1"
      Dst: "[io.netty.util.internal.PlatformDependent].useDirectBufferNoCleaner()"
    - Src: "io.netty.buffer.PoolArena$DirectArena:707,1"
      Dst: "[io.netty.util.internal.PlatformDependent].freeDirectNoCleaner(java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.PoolArena$DirectArena:709,1"
      Dst: "[io.netty.util.internal.PlatformDependent].freeDirectBuffer(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolArena$DirectArena].newByteBuf(int)"
    functionSourceFile: "io.netty.buffer.PoolArena$DirectArena"
    linkageType: ""
    functionLinenumber: 714
    functionLinenumberEnd: 719
    functionDepth: 1
    returnType: "io.netty.buffer.PooledByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].newInstance(int)"
    - "[io.netty.buffer.PooledDirectByteBuf].newInstance(int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolArena$DirectArena:715"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolArena$DirectArena:718"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolArena$DirectArena:717"
        BranchSideFuncs:
        - "newInstance(int)"
    Callsites:
    - Src: "io.netty.buffer.PoolArena$DirectArena:716,1"
      Dst: "[io.netty.buffer.PooledUnsafeDirectByteBuf].newInstance(int)"
    - Src: "io.netty.buffer.PoolArena$DirectArena:718,1"
      Dst: "[io.netty.buffer.PooledDirectByteBuf].newInstance(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledUnsafeDirectByteBuf].newInstance(int)"
    functionSourceFile: "io.netty.buffer.PooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "io.netty.buffer.PooledUnsafeDirectByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectPool$RecyclerObjectPool].get()"
    - "[io.netty.buffer.PooledByteBuf].reuse(int)"
    - "[io.netty.util.internal.ObjectPool].get()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledUnsafeDirectByteBuf:39,1"
      Dst: "[io.netty.util.internal.ObjectPool].get()"
    - Src: "io.netty.buffer.PooledUnsafeDirectByteBuf:40,1"
      Dst: "[io.netty.buffer.PooledByteBuf].reuse(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PoolArena$DirectArena].memoryCopy(java.nio.ByteBuffer,int,io.netty.buffer.PooledByteBuf,int)"
    functionSourceFile: "io.netty.buffer.PoolArena$DirectArena"
    linkageType: ""
    functionLinenumber: 723
    functionLinenumberEnd: 741
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    - "io.netty.buffer.PooledByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].copyMemory(long,long,long)"
    - "[io.netty.util.internal.PlatformDependent].directBufferAddress(java.nio.ByteBuffer)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer()"
    - "[java.nio.ByteBuffer].duplicate()"
    - "[java.nio.ByteBuffer].position(int)"
    - "[java.nio.Buffer].limit(int)"
    - "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    functionUses: 1
    ICount: 30
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.PoolArena$DirectArena:724"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolArena$DirectArena:728"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PoolArena$DirectArena:727"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PoolArena$DirectArena:728"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PoolArena$DirectArena:733"
        BranchSideFuncs:
        - "internalNioBuffer()"
    Callsites:
    - Src: "io.netty.buffer.PoolArena$DirectArena:730,1"
      Dst: "[io.netty.util.internal.PlatformDependent].directBufferAddress(java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.PoolArena$DirectArena:729,1"
      Dst: "[io.netty.util.internal.PlatformDependent].copyMemory(long,long,long)"
    - Src: "io.netty.buffer.PoolArena$DirectArena:734,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    - Src: "io.netty.buffer.PoolArena$DirectArena:735,1"
      Dst: "[io.netty.buffer.PooledByteBuf].internalNioBuffer()"
    - Src: "io.netty.buffer.PoolArena$DirectArena:736,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    - Src: "io.netty.buffer.PoolArena$DirectArena:736,1"
      Dst: "[java.nio.Buffer].limit(int)"
    - Src: "io.netty.buffer.PoolArena$DirectArena:738,1"
      Dst: "[java.nio.ByteBuffer].put(java.nio.ByteBuffer)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PoolArena$DirectArena].memoryCopy(java.lang.Object,int,io.netty.buffer.PooledByteBuf,int)"
    functionSourceFile: "io.netty.buffer.PoolArena$DirectArena"
    linkageType: ""
    functionLinenumber: 658
    functionLinenumberEnd: 660
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.Object"
    - "int"
    - "io.netty.buffer.PooledByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolArena$DirectArena].memoryCopy(java.nio.ByteBuffer,int,io.netty.buffer.PooledByteBuf,int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PoolArena$DirectArena:659,1"
      Dst: "[io.netty.buffer.PoolArena$DirectArena].memoryCopy(java.nio.ByteBuffer,int,io.netty.buffer.PooledByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1].checkClientTrusted(java.security.cert.X509Certificate[],java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.cert.X509Certificate[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1].checkTrusted(java.lang.String,java.security.cert.X509Certificate[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:103,1"
      Dst: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1].checkTrusted(java.lang.String,java.security.cert.X509Certificate[])"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1].checkTrusted(java.lang.String,java.security.cert.X509Certificate[])"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.security.cert.X509Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1].fingerprint(java.security.cert.X509Certificate)"
    - "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].access$000(io.netty.handler.ssl.util.FingerprintTrustManagerFactory)"
    - "[java.util.Arrays].equals(byte[],byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.security.cert.X509Certificate].getSubjectDN()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.security.cert.CertificateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 30
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:115"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:122"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:121"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:116"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:122"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:125"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:113,1"
      Dst: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1].fingerprint(java.security.cert.X509Certificate)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:115,1"
      Dst: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].access$000(io.netty.handler.ssl.util.FingerprintTrustManagerFactory)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:116,1"
      Dst: "[java.util.Arrays].equals(byte[],byte[])"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:123,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:123,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:124,1"
      Dst: "[java.security.cert.X509Certificate].getSubjectDN()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:124,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:124,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:124,1"
      Dst: "[java.security.cert.CertificateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1].fingerprint(java.security.cert.X509Certificate)"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "java.security.cert.X509Certificate"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].access$100(io.netty.handler.ssl.util.FingerprintTrustManagerFactory)"
    - "[io.netty.util.concurrent.FastThreadLocal].get()"
    - "[java.security.MessageDigest].reset()"
    - "[java.security.cert.Certificate].getEncoded()"
    - "[java.security.MessageDigest].digest(byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:129,1"
      Dst: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory].access$100(io.netty.handler.ssl.util.FingerprintTrustManagerFactory)"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:129,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].get()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:130,1"
      Dst: "[java.security.MessageDigest].reset()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:131,1"
      Dst: "[java.security.cert.Certificate].getEncoded()"
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:131,1"
      Dst: "[java.security.MessageDigest].digest(byte[])"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateEncodingException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1].checkServerTrusted(java.security.cert.X509Certificate[],java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.cert.X509Certificate[]"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1].checkTrusted(java.lang.String,java.security.cert.X509Certificate[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1:108,1"
      Dst: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1].checkTrusted(java.lang.String,java.security.cert.X509Certificate[])"
    JavaMethodInfo:
      exceptions:
      - "java.security.cert.CertificateException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1].getAcceptedIssuers()"
    functionSourceFile: "io.netty.handler.ssl.util.FingerprintTrustManagerFactory$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.cert.X509Certificate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop$2].<init>()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$2"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$2:89,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop$2].run()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$2"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "java.lang.Void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.System].setProperty(java.lang.String,java.lang.String)"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$2:92,1"
      Dst: "[java.lang.System].setProperty(java.lang.String,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspVersions].<init>()"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspVersions"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspVersions:48,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].allocate(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].guess()"
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    functionUses: 9
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl:49,1"
      Dst: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].guess()"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl:49,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].guess()"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl:54,1"
      Dst: "[java.lang.Math].min(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].reset(io.netty.channel.ChannelConfig)"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 62
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelConfig"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].maxBytesPerRead()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].maxBytesPerIndividualRead()"
    functionUses: 10
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl:59,1"
      Dst: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].maxBytesPerRead()"
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl:60,1"
      Dst: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].maxBytesPerIndividualRead()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].incMessagesRead(int)"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].lastBytesRead(int)"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].lastBytesRead()"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].continueReading()"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl:82,1"
      Dst: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.util.UncheckedBooleanSupplier"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl$1].get()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle$1].get()"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle$1].get()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle$1].get()"
    - "[io.netty.util.UncheckedBooleanSupplier$1:io.netty.util.UncheckedBooleanSupplier$2].get()"
    - "[io.netty.util.UncheckedBooleanSupplier].get()"
    functionUses: 4
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl:88"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl:87"
        BranchSideFuncs:
        - "get()"
    - Branch String: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl:88"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl:87"
        BranchSideFuncs:
        - "get()"
    Callsites:
    - Src: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl:88,1"
      Dst: "[io.netty.util.UncheckedBooleanSupplier].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].readComplete()"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].attemptedBytesRead(int)"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].attemptedBytesRead()"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].access$000(io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl)"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].access$100(io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl)"
    functionSourceFile: "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseNotifier$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.util.concurrent.PromiseNotifier$2"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 111
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isCancelled()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isCancelled()"
    - "[io.netty.channel.VoidChannelPromise:io.netty.channel.group.VoidChannelGroupFuture:io.netty.util.concurrent.CompleteFuture].isCancelled()"
    - "[io.netty.util.concurrent.PromiseNotifier].operationComplete(io.netty.util.concurrent.Future)"
    - "[java.util.concurrent.Future].isCancelled()"
    functionUses: 1
    ICount: 11
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.PromiseNotifier$2:105"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseNotifier$2:108"
        BranchSideFuncs:
        - "operationComplete(io.netty.util.concurrent.Future)"
    - Branch String: "io.netty.util.concurrent.PromiseNotifier$2:105"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseNotifier$2:108"
        BranchSideFuncs:
        - "operationComplete(io.netty.util.concurrent.Future)"
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseNotifier$2:105,1"
      Dst: "[java.util.concurrent.Future].isCancelled()"
    - Src: "io.netty.util.concurrent.PromiseNotifier$2:109,1"
      Dst: "[io.netty.util.concurrent.PromiseNotifier].operationComplete(io.netty.util.concurrent.Future)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.logging.LogLevel].values()"
    functionSourceFile: "io.netty.handler.logging.LogLevel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.logging.LogLevel[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.logging.LogLevel:23,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LogLevel].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.logging.LogLevel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.logging.LogLevel"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.logging.LogLevel:23,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.logging.LogLevel].<init>(java.lang.String,int,io.netty.util.internal.logging.InternalLogLevel)"
    functionSourceFile: "io.netty.handler.logging.LogLevel"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "io.netty.util.internal.logging.InternalLogLevel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.logging.LogLevel:32,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator].call()"
    functionSourceFile: "io.netty.handler.codec.http.cors.CorsConfigBuilder$ConstantValueGenerator"
    linkageType: ""
    functionLinenumber: 401
    functionLinenumberEnd: 403
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$8].<init>(io.netty.channel.AbstractChannelHandlerContext,io.netty.channel.AbstractChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$8"
    linkageType: ""
    functionLinenumber: 580
    functionLinenumberEnd: 582
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "io.netty.channel.AbstractChannelHandlerContext"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$8:581,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$8"
    linkageType: ""
    functionLinenumber: 583
    functionLinenumberEnd: 586
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].access$900(io.netty.channel.AbstractChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionUses: 49
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$8:584,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].access$900(io.netty.channel.AbstractChannelHandlerContext,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV$Type].values()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV$Type"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "io.netty.handler.codec.haproxy.HAProxyTLV$Type[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV$Type:51,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV$Type].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV$Type"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.haproxy.HAProxyTLV$Type"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV$Type:51,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV$Type].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV$Type"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV$Type:51,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV$Type].typeForByteValue(byte)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV$Type"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "io.netty.handler.codec.haproxy.HAProxyTLV$Type"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyTLV$Type].byteValueForType(io.netty.handler.codec.haproxy.HAProxyTLV$Type)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyTLV$Type"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.haproxy.HAProxyTLV$Type"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV$Type:99,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV$Type:113,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV$Type:113,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV$Type:113,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV$Type:113,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyTLV$Type:113,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.AbstractKQueueChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ServerChannelRecvByteBufAllocator].<init>()"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel,io.netty.channel.RecvByteBufAllocator)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:44,1"
      Dst: "[io.netty.channel.ServerChannelRecvByteBufAllocator].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:44,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel,io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 68
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].getReceiveBufferSize()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].isReuseAddress()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].getBacklog()"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].isTcpFastOpen()"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 6
    ICount: 27
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueServerChannelConfig:55"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:58"
        BranchSideFuncs:
        - "getReceiveBufferSize()"
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:57"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueServerChannelConfig:58"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:61"
        BranchSideFuncs:
        - "isReuseAddress()"
        - "valueOf(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:60"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueServerChannelConfig:61"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:64"
        BranchSideFuncs:
        - "getBacklog()"
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:63"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueServerChannelConfig:64"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:67"
        BranchSideFuncs:
        - "valueOf(int)"
        - "isTcpFastOpen()"
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:66"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    - Branch String: "io.netty.channel.kqueue.KQueueServerChannelConfig:65"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerChannelConfig:64"
        BranchSideFuncs:
        - "valueOf(int)"
        - "isTcpFastOpen()"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:56,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].getReceiveBufferSize()"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:56,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:59,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].isReuseAddress()"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:59,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:62,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].getBacklog()"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:65,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].isTcpFastOpen()"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:67,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].getReceiveBufferSize()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getReceiveBufferSize()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:111,1"
      Dst: "[io.netty.channel.unix.Socket].getReceiveBufferSize()"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:113,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].isReuseAddress()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 95
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isReuseAddress()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:92,1"
      Dst: "[io.netty.channel.unix.Socket].isReuseAddress()"
    - Src: "io.netty.channel.kqueue.KQueueServerChannelConfig:94,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].isTcpFastOpen()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerChannelConfig].setPerformancePreferences(int,int,int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.kqueue.KQueueServerChannelConfig"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].newChannel(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.nio.channels.SocketChannel"
    argCount: 2
    argTypes:
    - "java.nio.channels.spi.SelectorProvider"
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.SelectorProviderUtil].newChannel(java.lang.reflect.Method,java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    - "[java.nio.channels.spi.SelectorProvider].openSocketChannel()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:71"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:70"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:69"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:70,1"
      Dst: "[io.netty.channel.socket.nio.SelectorProviderUtil].newChannel(java.lang.reflect.Method,java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:71,1"
      Dst: "[java.nio.channels.spi.SelectorProvider].openSocketChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:73,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].<init>()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].<init>(java.nio.channels.spi.SelectorProvider)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:81,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].<init>(java.nio.channels.spi.SelectorProvider)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].<init>(java.nio.channels.spi.SelectorProvider)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.spi.SelectorProvider"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].<init>(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:88,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].<init>(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].<init>(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.spi.SelectorProvider"
    - "io.netty.channel.socket.InternetProtocolFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].newChannel(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    - "[io.netty.channel.socket.nio.NioSocketChannel].<init>(java.nio.channels.SocketChannel)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:95,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].newChannel(java.nio.channels.spi.SelectorProvider,io.netty.channel.socket.InternetProtocolFamily)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:95,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].<init>(java.nio.channels.SocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].<init>(java.nio.channels.SocketChannel)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SocketChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].<init>(io.netty.channel.Channel,java.nio.channels.SocketChannel)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:102,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].<init>(io.netty.channel.Channel,java.nio.channels.SocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].parent()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionDepth: 0
    returnType: "io.netty.channel.socket.ServerSocketChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].parent()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:118,1"
      Dst: "[io.netty.channel.AbstractChannel].parent()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "io.netty.channel.socket.SocketChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 57
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].isOpen()"
    - "[java.nio.channels.SocketChannel].isConnected()"
    functionUses: 36
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:134"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:132"
        BranchSideFuncs:
        - "javaChannel()"
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:134"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:132"
        BranchSideFuncs:
        - "javaChannel()"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:133,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:134,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].isOpen()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:134,1"
      Dst: "[java.nio.channels.SocketChannel].isConnected()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].isOutputShutdown()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - "[java.nio.channels.SocketChannel].socket()"
    - "[java.net.Socket].isOutputShutdown()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:139"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:138"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:139"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:138"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:139,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:139,1"
      Dst: "[java.nio.channels.SocketChannel].socket()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:139,1"
      Dst: "[java.net.Socket].isOutputShutdown()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:139,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].isInputShutdown()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 145
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[java.net.Socket].isInputShutdown()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - "[java.nio.channels.SocketChannel].socket()"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:144"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:143"
        BranchSideFuncs:
        - "isInputShutdown()"
        - "isActive()"
        - "javaChannel()"
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:144"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:143"
        BranchSideFuncs:
        - "isInputShutdown()"
        - "isActive()"
        - "javaChannel()"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:144,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:144,1"
      Dst: "[java.nio.channels.SocketChannel].socket()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:144,1"
      Dst: "[java.net.Socket].isInputShutdown()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:144,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].isShutdown()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - "[java.nio.channels.SocketChannel].socket()"
    - "[java.net.Socket].isInputShutdown()"
    - "[java.net.Socket].isOutputShutdown()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:150"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:150"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:150"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:148"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:149,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:149,1"
      Dst: "[java.nio.channels.SocketChannel].socket()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:150,1"
      Dst: "[java.net.Socket].isInputShutdown()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:150,1"
      Dst: "[java.net.Socket].isOutputShutdown()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:150,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].localAddress()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 156
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:155,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 161
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:160,1"
      Dst: "[io.netty.channel.AbstractChannel].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].doShutdownOutput()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 173
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - "[java.net.Socket].shutdownOutput()"
    - "[java.nio.channels.SocketChannel].shutdownOutput()"
    - "[java.nio.channels.SocketChannel].socket()"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:167"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:170"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:169"
        BranchSideFuncs:
        - "shutdownOutput()"
        - "javaChannel()"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:167,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:168,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:168,1"
      Dst: "[java.nio.channels.SocketChannel].shutdownOutput()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:170,1"
      Dst: "[java.nio.channels.SocketChannel].socket()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:170,1"
      Dst: "[java.net.Socket].shutdownOutput()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownOutput()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].shutdownOutput(io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:176,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:176,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownOutput(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownOutput(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].shutdownOutput(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelPromise)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:182"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:185"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:184"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:181,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:182,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:183,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:183,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].shutdownOutput(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:185,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel$1].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:185,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$1].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.nio.NioSocketChannel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$1:185,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownInput()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 198
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].shutdownInput(io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:197,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:197,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownInput(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownInput(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 219
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].shutdownInput0(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:208"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:211"
        BranchSideFuncs:
        - "shutdownInput0(io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:210"
        BranchSideFuncs:
        - "run()"
        - "execute(java.lang.Runnable)"
        - "<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:207,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:208,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:209,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownInput0(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:211,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel$2].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:211,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].isInputShutdown0()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].isInputShutdown()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:202,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].isInputShutdown()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].shutdown()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].shutdown(io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:223,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:223,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].shutdown(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].shutdown(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].shutdownOutput()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].shutdownOutputDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$3].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:229"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:232"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:228,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownOutput()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:229,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:230,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownOutputDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:232,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel$3].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:232,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownOutputDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 242
    functionLinenumberEnd: 255
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].shutdownInput()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].shutdownDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.socket.nio.NioSocketChannel$4].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 12
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:244"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:247"
        BranchSideFuncs:
        - "shutdownDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:246"
        BranchSideFuncs:
        - "<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:243,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownInput()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:244,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:245,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:247,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel$4].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:247,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$3].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$3"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.nio.NioSocketChannel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$3:232,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 292
    functionLinenumberEnd: 294
    functionDepth: 1
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].getLocalSocketAddress()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - "[java.nio.channels.SocketChannel].socket()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:293,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:293,1"
      Dst: "[java.nio.channels.SocketChannel].socket()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:293,1"
      Dst: "[java.net.Socket].getLocalSocketAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].remoteAddress0()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 297
    functionLinenumberEnd: 299
    functionDepth: 1
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Socket].getRemoteSocketAddress()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - "[java.nio.channels.SocketChannel].socket()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:298,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:298,1"
      Dst: "[java.nio.channels.SocketChannel].socket()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:298,1"
      Dst: "[java.net.Socket].getRemoteSocketAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 302
    functionLinenumberEnd: 305
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].doBind0(java.net.SocketAddress)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:303,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].doBind0(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].doBind0(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 313
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.util.internal.SocketUtils].bind(java.nio.channels.SocketChannel,java.net.SocketAddress)"
    - "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - "[io.netty.util.internal.SocketUtils].bind(java.net.Socket,java.net.SocketAddress)"
    - "[java.nio.channels.SocketChannel].socket()"
    functionUses: 2
    ICount: 11
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:307"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:310"
        BranchSideFuncs:
        - "bind(java.nio.channels.SocketChannel,java.net.SocketAddress)"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:309"
        BranchSideFuncs:
        - "bind(java.net.Socket,java.net.SocketAddress)"
        - "javaChannel()"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:307,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:308,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:308,1"
      Dst: "[io.netty.util.internal.SocketUtils].bind(java.nio.channels.SocketChannel,java.net.SocketAddress)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:310,1"
      Dst: "[java.nio.channels.SocketChannel].socket()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:310,1"
      Dst: "[io.netty.util.internal.SocketUtils].bind(java.net.Socket,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 315
    functionLinenumberEnd: 333
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].doBind0(java.net.SocketAddress)"
    - "[io.netty.util.internal.SocketUtils].connect(java.nio.channels.SocketChannel,java.net.SocketAddress)"
    - "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - "[io.netty.channel.nio.AbstractNioChannel].selectionKey()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].doClose()"
    - "[java.nio.channels.SelectionKey].interestOps(int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:316"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:320"
        BranchSideFuncs:
        - "doBind0(java.net.SocketAddress)"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:319"
        BranchSideFuncs:
        - "connect(java.nio.channels.SocketChannel,java.net.SocketAddress)"
        - "javaChannel()"
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:323"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:326"
        BranchSideFuncs:
        - "selectionKey()"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:325"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:329"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:326"
        BranchSideFuncs:
        - "doClose()"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:325"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:329"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:332"
        BranchSideFuncs:
        - "doClose()"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:331"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:317,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].doBind0(java.net.SocketAddress)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:322,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:322,1"
      Dst: "[io.netty.util.internal.SocketUtils].connect(java.nio.channels.SocketChannel,java.net.SocketAddress)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:324,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].selectionKey()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:324,1"
      Dst: "[java.nio.channels.SelectionKey].interestOps(int)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:330,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].doClose()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].doClose()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 348
    functionLinenumberEnd: 352
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].doClose()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    functionUses: 6
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:349,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].doClose()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:350,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:350,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].doFinishConnect()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 336
    functionLinenumberEnd: 341
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - "[java.lang.Error].<init>()"
    - "[java.nio.channels.SocketChannel].finishConnect()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:337"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:340"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:339"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:337,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:337,1"
      Dst: "[java.nio.channels.SocketChannel].finishConnect()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:338,1"
      Dst: "[java.lang.Error].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].doDisconnect()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 343
    functionLinenumberEnd: 346
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].doClose()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:344,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].doClose()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 354
    functionLinenumberEnd: 358
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].attemptedBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].attemptedBytesRead(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].attemptedBytesRead()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].attemptedBytesRead()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    - "[io.netty.channel.Channel$Unsafe].recvBufAllocHandle()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].attemptedBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].attemptedBytesRead()"
    - "[io.netty.buffer.ByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:355,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:355,1"
      Dst: "[io.netty.channel.Channel$Unsafe].recvBufAllocHandle()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:356,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:356,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].attemptedBytesRead(int)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:357,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:357,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].attemptedBytesRead()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:357,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].doWriteBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 361
    functionLinenumberEnd: 364
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.PooledByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:362,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:363,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:363,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].doWriteFileRegion(io.netty.channel.FileRegion)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 367
    functionLinenumberEnd: 370
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "io.netty.channel.FileRegion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultFileRegion].transferred()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - "[io.netty.channel.DefaultFileRegion].transferTo(java.nio.channels.WritableByteChannel,long)"
    - "[io.netty.channel.FileRegion].transferred()"
    - "[io.netty.channel.FileRegion].transferTo(java.nio.channels.WritableByteChannel,long)"
    functionUses: 1
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:368,1"
      Dst: "[io.netty.channel.FileRegion].transferred()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:369,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:369,1"
      Dst: "[io.netty.channel.FileRegion].transferTo(java.nio.channels.WritableByteChannel,long)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].adjustMaxBytesPerGatheringWrite(int,int,int)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 375
    functionLinenumberEnd: 384
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].setMaxBytesPerGatheringWrite(int)"
    functionUses: 2
    ICount: 20
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:376"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:380"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:379"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:377"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:383"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:382"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:380"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:383"
        BranchSideFuncs:
        - "setMaxBytesPerGatheringWrite(int)"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:382"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:380"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:383"
        BranchSideFuncs:
        - "setMaxBytesPerGatheringWrite(int)"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:382"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:378,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].setMaxBytesPerGatheringWrite(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].doWrite(io.netty.channel.ChannelOutboundBuffer)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 386
    functionLinenumberEnd: 447
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].getWriteSpinCount()"
    - "[io.netty.channel.ChannelOutboundBuffer].isEmpty()"
    - "[io.netty.channel.nio.AbstractNioByteChannel].clearOpWrite()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].getMaxBytesPerGatheringWrite()"
    - "[io.netty.channel.ChannelOutboundBuffer].nioBuffers(int,long)"
    - "[io.netty.channel.ChannelOutboundBuffer].nioBufferCount()"
    - "[io.netty.channel.nio.AbstractNioByteChannel].doWrite0(io.netty.channel.ChannelOutboundBuffer)"
    - "[io.netty.channel.nio.AbstractNioByteChannel].incompleteWrite(boolean)"
    - "[io.netty.channel.socket.nio.NioSocketChannel].adjustMaxBytesPerGatheringWrite(int,int,int)"
    - "[io.netty.channel.ChannelOutboundBuffer].removeBytes(long)"
    - "[io.netty.channel.ChannelOutboundBuffer].nioBufferSize()"
    - "[io.netty.channel.ChannelConfig].getWriteSpinCount()"
    - "[java.nio.Buffer].remaining()"
    - "[java.nio.channels.SocketChannel].write(java.nio.ByteBuffer)"
    - "[java.nio.channels.SocketChannel].write(java.nio.ByteBuffer[],int,int)"
    functionUses: 1
    ICount: 52
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:390"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:397"
        BranchSideFuncs:
        - "nioBuffers(int,long)"
        - "nioBufferCount()"
        - "getMaxBytesPerGatheringWrite()"
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:416"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:420"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:419"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:431"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:436"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:435"
        BranchSideFuncs:
        - "removeBytes(long)"
        - "adjustMaxBytesPerGatheringWrite(int,int,int)"
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:443"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:389"
        BranchSideFuncs:
        - "isEmpty()"
    - Branch String: "io.netty.channel.socket.nio.NioSocketChannel:445"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:445"
        BranchSideFuncs:
        - "incompleteWrite(boolean)"
      - BranchSide: "io.netty.channel.socket.nio.NioSocketChannel:444"
        BranchSideFuncs:
        - "incompleteWrite(boolean)"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:387,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].javaChannel()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:388,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:388,1"
      Dst: "[io.netty.channel.ChannelConfig].getWriteSpinCount()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:390,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].isEmpty()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:392,1"
      Dst: "[io.netty.channel.nio.AbstractNioByteChannel].clearOpWrite()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:398,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelConfig].getMaxBytesPerGatheringWrite()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:399,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].nioBuffers(int,long)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:400,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].nioBufferCount()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:407,1"
      Dst: "[io.netty.channel.nio.AbstractNioByteChannel].doWrite0(io.netty.channel.ChannelOutboundBuffer)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:414,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:415,1"
      Dst: "[java.nio.channels.SocketChannel].write(java.nio.ByteBuffer)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:417,1"
      Dst: "[io.netty.channel.nio.AbstractNioByteChannel].incompleteWrite(boolean)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:420,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].adjustMaxBytesPerGatheringWrite(int,int,int)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:421,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].removeBytes(long)"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:429,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].nioBufferSize()"
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:430,1"
      Dst: "[java.nio.channels.SocketChannel].write(java.nio.ByteBuffer[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].nioBuffers(int,long)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 402
    functionLinenumberEnd: 466
    functionDepth: 5
    returnType: "java.nio.ByteBuffer[]"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - "[io.netty.util.concurrent.FastThreadLocal].get(io.netty.util.internal.InternalThreadLocalMap)"
    - "[io.netty.channel.ChannelOutboundBuffer].isFlushedEntry(io.netty.channel.ChannelOutboundBuffer$Entry)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.channel.ChannelOutboundBuffer].expandNioBufferArray(java.nio.ByteBuffer[],int,int)"
    - "[io.netty.util.concurrent.FastThreadLocal].set(io.netty.util.internal.InternalThreadLocalMap,java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.channel.ChannelOutboundBuffer].nioBuffers(io.netty.channel.ChannelOutboundBuffer$Entry,io.netty.buffer.ByteBuf,java.nio.ByteBuffer[],int,int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    functionUses: 1
    ICount: 79
    EdgeCount: 54
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:403"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:404"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:403"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:403"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:404"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:403"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:404"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:405"
        BranchSideFuncs:
        - "get(io.netty.util.internal.InternalThreadLocalMap)"
        - "get()"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:404"
        BranchSideFuncs:
        - "get(io.netty.util.internal.InternalThreadLocalMap)"
        - "get()"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:404"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:405"
        BranchSideFuncs:
        - "get(io.netty.util.internal.InternalThreadLocalMap)"
        - "get()"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:404"
        BranchSideFuncs:
        - "get(io.netty.util.internal.InternalThreadLocalMap)"
        - "get()"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:410"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:462"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:461"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:410"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:462"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:461"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:411"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:460"
        BranchSideFuncs:
        - "readerIndex()"
        - "writerIndex()"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:459"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:416"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:460"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:459"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:417"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:430"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:417"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:430"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:433"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:436"
        BranchSideFuncs:
        - "min(int,int)"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:438"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:442"
        BranchSideFuncs:
        - "expandNioBufferArray(java.nio.ByteBuffer[],int,int)"
        - "set(io.netty.util.internal.InternalThreadLocalMap,java.lang.Object)"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:441"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:442"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:453"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:452"
        BranchSideFuncs:
        - "nioBuffers(io.netty.channel.ChannelOutboundBuffer$Entry,io.netty.buffer.ByteBuf,java.nio.ByteBuffer[],int,int)"
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:444"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:448"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:455"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:460"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:459"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:403,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:407,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:408,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].get(io.netty.util.internal.InternalThreadLocalMap)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:410,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].isFlushedEntry(io.netty.channel.ChannelOutboundBuffer$Entry)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:413,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:414,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:435,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:437,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:439,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].expandNioBufferArray(java.nio.ByteBuffer[],int,int)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:440,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].set(io.netty.util.internal.InternalThreadLocalMap,java.lang.Object)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:447,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.channel.ChannelOutboundBuffer:453,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].nioBuffers(io.netty.channel.ChannelOutboundBuffer$Entry,io.netty.buffer.ByteBuf,java.nio.ByteBuffer[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 27
    CyclomaticComplexity: 14
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].expandNioBufferArray(java.nio.ByteBuffer[],int,int)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 487
    functionLinenumberEnd: 504
    functionDepth: 0
    returnType: "java.nio.ByteBuffer[]"
    argCount: 3
    argTypes:
    - "java.nio.ByteBuffer[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:494"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:498"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:497"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:498"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:491"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:495,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:501,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].nioBuffers(io.netty.channel.ChannelOutboundBuffer$Entry,io.netty.buffer.ByteBuf,java.nio.ByteBuffer[],int,int)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 468
    functionLinenumberEnd: 485
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer$Entry"
    - "io.netty.buffer.ByteBuf"
    - "java.nio.ByteBuffer[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].nioBuffers()"
    - "[io.netty.buffer.AbstractByteBuf].nioBuffers()"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffers()"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffers()"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers()"
    - "[io.netty.buffer.ByteBuf].nioBuffers()"
    - "[java.nio.Buffer].hasRemaining()"
    functionUses: 1
    ICount: 26
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:470"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:474"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:475"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:484"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:483"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:475"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:484"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:483"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:477"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:479"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:478"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.ChannelOutboundBuffer:479"
      Branch Sides:
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:482"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.ChannelOutboundBuffer:481"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer:473,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers()"
    - Src: "io.netty.channel.ChannelOutboundBuffer:479,1"
      Dst: "[java.nio.Buffer].hasRemaining()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].nioBufferCount()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 511
    functionLinenumberEnd: 513
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer].nioBufferSize()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer"
    linkageType: ""
    functionLinenumber: 520
    functionLinenumberEnd: 522
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].newUnsafe()"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 449
    functionLinenumberEnd: 451
    functionDepth: 3
    returnType: "io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelUnsafe].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.socket.nio.NioSocketChannel$1)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:450,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelUnsafe].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.socket.nio.NioSocketChannel$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelUnsafe].<init>(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.socket.nio.NioSocketChannel$1)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelUnsafe"
    linkageType: ""
    functionLinenumber: 452
    functionLinenumberEnd: 454
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.socket.nio.NioSocketChannel"
    - "io.netty.channel.socket.nio.NioSocketChannel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelUnsafe].<init>(io.netty.channel.socket.nio.NioSocketChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelUnsafe:453,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelUnsafe].<init>(io.netty.channel.socket.nio.NioSocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelUnsafe].<init>(io.netty.channel.socket.nio.NioSocketChannel)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelUnsafe"
    linkageType: ""
    functionLinenumber: 452
    functionLinenumberEnd: 454
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.socket.nio.NioSocketChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe].<init>(io.netty.channel.nio.AbstractNioByteChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel$NioSocketChannelUnsafe:453,1"
      Dst: "[io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe].<init>(io.netty.channel.nio.AbstractNioByteChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe].<init>(io.netty.channel.nio.AbstractNioByteChannel)"
    functionSourceFile: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.nio.AbstractNioByteChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe].<init>(io.netty.channel.nio.AbstractNioChannel)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:97,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe].<init>(io.netty.channel.nio.AbstractNioChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].access$200(io.netty.channel.socket.nio.NioSocketChannel,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.socket.nio.NioSocketChannel"
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].shutdownOutputDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:59,1"
      Dst: "[io.netty.channel.socket.nio.NioSocketChannel].shutdownOutputDone(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioSocketChannel].access$500(io.netty.channel.socket.nio.NioSocketChannel)"
    functionSourceFile: "io.netty.channel.socket.nio.NioSocketChannel"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.socket.nio.NioSocketChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].doDeregister()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioSocketChannel:59,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].doDeregister()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ServerChannelRecvByteBufAllocator$1].guess()"
    functionSourceFile: "io.netty.channel.ServerChannelRecvByteBufAllocator$1"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilter].<init>(io.netty.handler.ipfilter.IpSubnetFilterRule[])"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ipfilter.IpSubnetFilterRule[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[io.netty.handler.ipfilter.IpSubnetFilter].<init>(boolean,java.util.List)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:70,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:70,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:70,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilter].<init>(boolean,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilter].<init>(boolean,io.netty.handler.ipfilter.IpSubnetFilterRule[])"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.handler.ipfilter.IpSubnetFilterRule[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Arrays].asList(java.lang.Object[])"
    - "[io.netty.handler.ipfilter.IpSubnetFilter].<init>(boolean,java.util.List)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:81,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:81,1"
      Dst: "[java.util.Arrays].asList(java.lang.Object[])"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:81,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilter].<init>(boolean,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilter].<init>(java.util.List)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ipfilter.IpSubnetFilter].<init>(boolean,java.util.List)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:91,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilter].<init>(boolean,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilter].<init>(boolean,java.util.List)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ipfilter.AbstractRemoteAddressFilter].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule].getFilterRule()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule].ruleType()"
    - "[io.netty.handler.ipfilter.IpSubnetFilter].sortAndFilter(java.util.List)"
    functionUses: 0
    ICount: 66
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:114"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:147"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:146"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:117"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:125"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:120"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:123"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:122"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:131"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:130"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:147"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:149"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:147"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:149"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:152"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:151"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:152"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:151"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:155"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:156"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:155"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:157"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:156"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:160"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:159"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:157"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:160"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:159"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:101,1"
      Dst: "[io.netty.handler.ipfilter.AbstractRemoteAddressFilter].<init>()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:102,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:110,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:114,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:114,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:114,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:117,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilterRule].getFilterRule()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:118,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:120,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilterRule].ruleType()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:163,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilter].sortAndFilter(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 25
    CyclomaticComplexity: 13
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilter].accept(io.netty.channel.ChannelHandlerContext,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilter"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 190
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].getAddress()"
    - "[java.util.Collections].binarySearch(java.util.List,java.lang.Object,java.util.Comparator)"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[java.util.AbstractSequentialList].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[java.util.Vector].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.concurrent.CopyOnWriteArrayList].get(int)"
    - "[java.util.LinkedList].get(int)"
    - "[java.util.ArrayList].get(int)"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule].ruleType()"
    - "[java.util.List].get(int)"
    functionUses: 1
    ICount: 55
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:179"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:178"
        BranchSideFuncs:
        - "binarySearch(java.util.List,java.lang.Object,java.util.Comparator)"
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:178"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:177"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:172"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:175"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:174"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:172"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:174"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:180"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:189"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:188"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:184"
        BranchSideFuncs:
        - "ruleType()"
        - "get(int)"
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:183"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:182"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:181"
        BranchSideFuncs:
        - "ruleType()"
        - "get(int)"
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:183"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:169,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:170,1"
      Dst: "[java.util.Collections].binarySearch(java.util.List,java.lang.Object,java.util.Comparator)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:173,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:173,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilterRule].ruleType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 23
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilterRule].ruleType()"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilterRule"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "io.netty.handler.ipfilter.IpFilterRuleType"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule].ruleType()"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule:io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule].ruleType()"
    - "[io.netty.handler.ipfilter.IpFilterRule].ruleType()"
    functionUses: 4
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule:72,1"
      Dst: "[io.netty.handler.ipfilter.IpFilterRule].ruleType()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilter].sortAndFilter(java.util.List<IpSubnetFilterRule>)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.util.List<IpSubnetFilterRule>"
    argCount: 1
    argTypes:
    - "java.util.List<IpSubnetFilterRule>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Collections].sort(java.util.List)"
    - "[java.util.List].iterator()"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule].getIpAddress()"
    - "[java.net.InetSocketAddress].<init>(java.lang.String,int)"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule].matches(java.net.InetSocketAddress)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:205"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:201"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:200"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:210"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:209"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:210"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:223"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ipfilter.IpSubnetFilter:217"
      Branch Sides:
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:222"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ipfilter.IpSubnetFilter:221"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:201,1"
      Dst: "[java.util.Collections].sort(java.util.List)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:202,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:203,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:205,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:205,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:207,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:217,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilterRule].getIpAddress()"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:217,1"
      Dst: "[java.net.InetSocketAddress].<init>(java.lang.String,int)"
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:217,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilterRule].matches(java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilterRule].getIpAddress()"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilterRule"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilterRule].matches(java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilterRule"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule].matches(java.net.InetSocketAddress)"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip6SubnetFilterRule].matches(java.net.InetSocketAddress)"
    - "[io.netty.handler.ipfilter.IpSubnetFilterRule$Ip4SubnetFilterRule].matches(java.net.InetSocketAddress)"
    - "[io.netty.handler.ipfilter.IpFilterRule].matches(java.net.InetSocketAddress)"
    functionUses: 2
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpSubnetFilterRule:67,1"
      Dst: "[io.netty.handler.ipfilter.IpFilterRule].matches(java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpSubnetFilter].accept(io.netty.channel.ChannelHandlerContext,java.net.SocketAddress)"
    functionSourceFile: "io.netty.handler.ipfilter.IpSubnetFilter"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ipfilter.IpSubnetFilter].accept(io.netty.channel.ChannelHandlerContext,java.net.InetSocketAddress)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpSubnetFilter:54,1"
      Dst: "[io.netty.handler.ipfilter.IpSubnetFilter].accept(io.netty.channel.ChannelHandlerContext,java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine$1].<init>(io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine)"
    functionSourceFile: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine$1"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.conscrypt.HandshakeListener].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine$1:133,1"
      Dst: "[org.conscrypt.HandshakeListener].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine$1].onHandshakeFinished()"
    functionSourceFile: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine].access$200(io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine$1:136,1"
      Dst: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine].access$200(io.netty.handler.ssl.ConscryptAlpnSslEngine$ServerEngine)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultSelectStrategyFactory].<init>()"
    functionSourceFile: "io.netty.channel.DefaultSelectStrategyFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultSelectStrategyFactory:24,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultSelectStrategyFactory].newSelectStrategy()"
    functionSourceFile: "io.netty.channel.DefaultSelectStrategyFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.SelectStrategy"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ReflectionUtil].<init>()"
    functionSourceFile: "io.netty.util.internal.ReflectionUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ReflectionUtil:22,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeAggregator].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeAggregator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageAggregator].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeAggregator:42,1"
      Dst: "[io.netty.handler.codec.MessageAggregator].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeAggregator].isStartMessage(io.netty.handler.codec.stomp.StompSubframe)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeAggregator"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.stomp.StompSubframe"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeAggregator].isContentMessage(io.netty.handler.codec.stomp.StompSubframe)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeAggregator"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.stomp.StompSubframe"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeAggregator].isLastContentMessage(io.netty.handler.codec.stomp.StompContentSubframe)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeAggregator"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.stomp.StompContentSubframe"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeAggregator].isAggregated(io.netty.handler.codec.stomp.StompSubframe)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeAggregator"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.stomp.StompSubframe"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeAggregator].isContentLengthInvalid(io.netty.handler.codec.stomp.StompHeadersSubframe,int)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeAggregator"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.stomp.StompHeadersSubframe"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders].getLong(java.lang.Object,long)"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].headers()"
    - "[java.lang.Math].min(long,long)"
    - "[io.netty.handler.codec.stomp.StompHeadersSubframe].headers()"
    - "[io.netty.handler.codec.Headers].getLong(java.lang.Object,long)"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.stomp.StompSubframeAggregator:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.stomp.StompSubframeAggregator:66"
        BranchSideFuncs:
        - "min(long,long)"
        - "getLong(java.lang.Object,long)"
        - "headers()"
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeAggregator:67,1"
      Dst: "[io.netty.handler.codec.stomp.StompHeadersSubframe].headers()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeAggregator:67,1"
      Dst: "[io.netty.handler.codec.Headers].getLong(java.lang.Object,long)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeAggregator:67,1"
      Dst: "[java.lang.Math].min(long,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeAggregator].newContinueResponse(io.netty.handler.codec.stomp.StompHeadersSubframe,int,io.netty.channel.ChannelPipeline)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeAggregator"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.stomp.StompHeadersSubframe"
    - "int"
    - "io.netty.channel.ChannelPipeline"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeAggregator].closeAfterContinueResponse(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeAggregator"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeAggregator:78,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeAggregator].ignoreContentAfterContinueResponse(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeAggregator"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeAggregator:83,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeAggregator].beginAggregation(io.netty.handler.codec.stomp.StompHeadersSubframe,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeAggregator"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 91
    functionDepth: 9
    returnType: "io.netty.handler.codec.stomp.StompFrame"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.stomp.StompHeadersSubframe"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].<init>(io.netty.handler.codec.stomp.StompCommand,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].command()"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].headers()"
    - "[io.netty.handler.codec.DefaultHeaders].set(io.netty.handler.codec.Headers)"
    - "[io.netty.handler.codec.stomp.StompHeadersSubframe].command()"
    - "[io.netty.handler.codec.stomp.StompHeadersSubframe].headers()"
    - "[io.netty.handler.codec.Headers].set(io.netty.handler.codec.Headers)"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeAggregator:88,1"
      Dst: "[io.netty.handler.codec.stomp.StompHeadersSubframe].command()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeAggregator:88,1"
      Dst: "[io.netty.handler.codec.stomp.DefaultStompFrame].<init>(io.netty.handler.codec.stomp.StompCommand,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.stomp.StompSubframeAggregator:89,1"
      Dst: "[io.netty.handler.codec.stomp.StompHeadersSubframe].headers()"
    - Src: "io.netty.handler.codec.stomp.StompSubframeAggregator:89,1"
      Dst: "[io.netty.handler.codec.Headers].set(io.netty.handler.codec.Headers)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeAggregator].beginAggregation(java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeAggregator"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 10
    returnType: "io.netty.buffer.ByteBufHolder"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeAggregator].beginAggregation(io.netty.handler.codec.stomp.StompHeadersSubframe,io.netty.buffer.ByteBuf)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeAggregator:30,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeAggregator].beginAggregation(io.netty.handler.codec.stomp.StompHeadersSubframe,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeAggregator].newContinueResponse(java.lang.Object,int,io.netty.channel.ChannelPipeline)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeAggregator"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 3
    argTypes:
    - "java.lang.Object"
    - "int"
    - "io.netty.channel.ChannelPipeline"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeAggregator].newContinueResponse(io.netty.handler.codec.stomp.StompHeadersSubframe,int,io.netty.channel.ChannelPipeline)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeAggregator:30,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeAggregator].newContinueResponse(io.netty.handler.codec.stomp.StompHeadersSubframe,int,io.netty.channel.ChannelPipeline)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeAggregator].isContentLengthInvalid(java.lang.Object,int)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeAggregator"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeAggregator].isContentLengthInvalid(io.netty.handler.codec.stomp.StompHeadersSubframe,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeAggregator:30,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeAggregator].isContentLengthInvalid(io.netty.handler.codec.stomp.StompHeadersSubframe,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeAggregator].isAggregated(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeAggregator"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeAggregator].isAggregated(io.netty.handler.codec.stomp.StompSubframe)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeAggregator:30,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeAggregator].isAggregated(io.netty.handler.codec.stomp.StompSubframe)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeAggregator].isLastContentMessage(io.netty.buffer.ByteBufHolder)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeAggregator"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufHolder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeAggregator].isLastContentMessage(io.netty.handler.codec.stomp.StompContentSubframe)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeAggregator:30,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeAggregator].isLastContentMessage(io.netty.handler.codec.stomp.StompContentSubframe)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeAggregator].isContentMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeAggregator"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeAggregator].isContentMessage(io.netty.handler.codec.stomp.StompSubframe)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeAggregator:30,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeAggregator].isContentMessage(io.netty.handler.codec.stomp.StompSubframe)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.stomp.StompSubframeAggregator].isStartMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.stomp.StompSubframeAggregator"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.stomp.StompSubframeAggregator].isStartMessage(io.netty.handler.codec.stomp.StompSubframe)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.stomp.StompSubframeAggregator:30,1"
      Dst: "[io.netty.handler.codec.stomp.StompSubframeAggregator].isStartMessage(io.netty.handler.codec.stomp.StompSubframe)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadLocalRandom$1].<init>(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom$1"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadLocalRandom$1:86,1"
      Dst: "[java.lang.Thread].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    functionSourceFile: "io.netty.util.internal.ThreadLocalRandom$1"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 102
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.SecureRandom].<init>()"
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].generateSeed(int)"
    - "[io.netty.util.internal.ThreadLocalRandom].access$002(long)"
    - "[java.lang.System].nanoTime()"
    - "[io.netty.util.internal.ThreadLocalRandom].access$100()"
    - "[java.util.AbstractQueue:java.util.concurrent.LinkedBlockingDeque].add(java.lang.Object)"
    - "[java.lang.Long].valueOf(long)"
    - "[java.security.SecureRandom].generateSeed(int)"
    - "[java.util.concurrent.BlockingQueue].add(java.lang.Object)"
    functionUses: 52
    ICount: 48
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ThreadLocalRandom$1:89,1"
      Dst: "[java.security.SecureRandom].<init>()"
    - Src: "io.netty.util.internal.ThreadLocalRandom$1:90,1"
      Dst: "[java.security.SecureRandom].generateSeed(int)"
    - Src: "io.netty.util.internal.ThreadLocalRandom$1:91,1"
      Dst: "[java.lang.System].nanoTime()"
    - Src: "io.netty.util.internal.ThreadLocalRandom$1:91,1"
      Dst: "[io.netty.util.internal.ThreadLocalRandom].access$002(long)"
    - Src: "io.netty.util.internal.ThreadLocalRandom$1:100,1"
      Dst: "[io.netty.util.internal.ThreadLocalRandom].access$100()"
    - Src: "io.netty.util.internal.ThreadLocalRandom$1:100,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.util.internal.ThreadLocalRandom$1:100,1"
      Dst: "[java.util.concurrent.BlockingQueue].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString$2].<init>()"
    functionSourceFile: "io.netty.util.AsciiString$2"
    linkageType: ""
    functionLinenumber: 1373
    functionLinenumberEnd: 1375
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString$2:1374,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString$2].hashCode(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString$2"
    linkageType: ""
    functionLinenumber: 1376
    functionLinenumberEnd: 1378
    functionDepth: 4
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString$2:1377,1"
      Dst: "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString$2].equals(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString$2"
    linkageType: ""
    functionLinenumber: 1381
    functionLinenumberEnd: 1383
    functionDepth: 8
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].contentEquals(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString$2:1382,1"
      Dst: "[io.netty.util.AsciiString].contentEquals(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString$2].equals(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.AsciiString$2"
    linkageType: ""
    functionLinenumber: 1373
    functionLinenumberEnd: 1375
    functionDepth: 9
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString$2].equals(java.lang.CharSequence,java.lang.CharSequence)"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString$2:1374,1"
      Dst: "[io.netty.util.AsciiString$2].equals(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString$2].hashCode(java.lang.Object)"
    functionSourceFile: "io.netty.util.AsciiString$2"
    linkageType: ""
    functionLinenumber: 1373
    functionLinenumberEnd: 1375
    functionDepth: 5
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString$2].hashCode(java.lang.CharSequence)"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString$2:1374,1"
      Dst: "[io.netty.util.AsciiString$2].hashCode(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.NetUtilSubstitutions].<init>()"
    functionSourceFile: "io.netty.util.NetUtilSubstitutions"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.NetUtilSubstitutions:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].<init>(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable"
    linkageType: ""
    functionLinenumber: 285
    functionLinenumberEnd: 289
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable:286,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable"
    linkageType: ""
    functionLinenumber: 291
    functionLinenumberEnd: 294
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[java.util.zip.Inflater$InflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$3].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[java.util.concurrent.CompletableFuture$Completion].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[java.util.zip.Deflater$DeflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[java.util.concurrent.ThreadPoolExecutor$Worker].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[java.util.zip.ZipFile$CleanableResource].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[java.lang.invoke.MethodHandleNatives$CallSiteContext].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor$2].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[java.util.concurrent.ForkJoinWorkerThread].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[java.lang.ref.Finalizer$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$2].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[java.lang.ref.Finalizer$FinalizerThread].run()"
    - "[java.lang.Runnable].run()"
    functionUses: 49
    ICount: 4
    EdgeCount: 183
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable:292,1"
      Dst: "[java.lang.Runnable].run()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.Bootstrap$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.bootstrap.Bootstrap$2"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 233
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.util.concurrent.FailedFuture].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.util.concurrent.SucceededFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.channel.AbstractChannel].close()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].close()"
    - "[io.netty.channel.embedded.EmbeddedChannel].close()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.bootstrap.Bootstrap].access$100(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].getNow()"
    - "[io.netty.channel.VoidChannelPromise].getNow()"
    - "[io.netty.util.concurrent.SucceededFuture].getNow()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].getNow()"
    - "[io.netty.util.concurrent.DefaultPromise].getNow()"
    - "[io.netty.util.concurrent.FailedFuture].getNow()"
    - "[io.netty.channel.CompleteChannelFuture].getNow()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].getNow()"
    functionUses: 1
    ICount: 16
    EdgeCount: 35
    BranchProfiles:
    - Branch String: "io.netty.bootstrap.Bootstrap$2:226"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.Bootstrap$2:230"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "cause()"
        - "close()"
      - BranchSide: "io.netty.bootstrap.Bootstrap$2:229"
        BranchSideFuncs:
        - "access$100(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
        - "getNow()"
    Callsites:
    - Src: "io.netty.bootstrap.Bootstrap$2:226,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.bootstrap.Bootstrap$2:227,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    - Src: "io.netty.bootstrap.Bootstrap$2:228,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.bootstrap.Bootstrap$2:230,1"
      Dst: "[io.netty.util.concurrent.Future].getNow()"
    - Src: "io.netty.bootstrap.Bootstrap$2:230,1"
      Dst: "[io.netty.bootstrap.Bootstrap].access$100(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].<init>(io.netty.channel.RecvByteBufAllocator$ExtendedHandle)"
    functionSourceFile: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator$ExtendedHandle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].<init>()"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle$1].<init>(io.netty.channel.epoll.EpollRecvByteAllocatorHandle)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].<init>(io.netty.channel.RecvByteBufAllocator$Handle)"
    functionUses: 2
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:38,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].<init>(io.netty.channel.RecvByteBufAllocator$Handle)"
    - Src: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:26,1"
      Dst: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].<init>()"
    - Src: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle:28,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle$1].<init>(io.netty.channel.epoll.EpollRecvByteAllocatorHandle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].receivedRdHup()"
    functionSourceFile: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].isEdgeTriggered()"
    functionSourceFile: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$9].<init>()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$9"
    linkageType: ""
    functionLinenumber: 465
    functionLinenumberEnd: 467
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$9:466,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$9].run()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$9"
    linkageType: ""
    functionLinenumber: 469
    functionLinenumberEnd: 473
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    functionUses: 4
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$9:470,1"
      Dst: "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksInitRequestDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksInitRequestDecoder$State"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksInitRequestDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksInitRequestDecoder$State:69,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksInitRequestDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksInitRequestDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksInitRequestDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksInitRequestDecoder$State:69,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksInitRequestDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksInitRequestDecoder$State"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksInitRequestDecoder$State:70,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$BufferAdapter].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.ssl.ConscryptAlpnSslEngine$BufferAdapter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.conscrypt.AllocatedBuffer].<init>()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$BufferAdapter:174,1"
      Dst: "[org.conscrypt.AllocatedBuffer].<init>()"
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$BufferAdapter:176,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$BufferAdapter:176,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$BufferAdapter].nioBuffer()"
    functionSourceFile: "io.netty.handler.ssl.ConscryptAlpnSslEngine$BufferAdapter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$BufferAdapter].retain()"
    functionSourceFile: "io.netty.handler.ssl.ConscryptAlpnSslEngine$BufferAdapter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "org.conscrypt.AllocatedBuffer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$BufferAdapter:186,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ConscryptAlpnSslEngine$BufferAdapter].release()"
    functionSourceFile: "io.netty.handler.ssl.ConscryptAlpnSslEngine$BufferAdapter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "org.conscrypt.AllocatedBuffer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ConscryptAlpnSslEngine$BufferAdapter:192,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzfDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.LzfDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.LzfDecoder].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzfDecoder:91,1"
      Dst: "[io.netty.handler.codec.compression.LzfDecoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzfDecoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.LzfDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - "[com.ning.compress.lzf.util.ChunkDecoderFactory].safeInstance()"
    - "[com.ning.compress.lzf.util.ChunkDecoderFactory].optimalInstance()"
    - "[com.ning.compress.BufferRecycler].instance()"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.LzfDecoder:104"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:106"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzfDecoder:103,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:105,1"
      Dst: "[com.ning.compress.lzf.util.ChunkDecoderFactory].safeInstance()"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:106,1"
      Dst: "[com.ning.compress.lzf.util.ChunkDecoderFactory].optimalInstance()"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:108,1"
      Dst: "[com.ning.compress.BufferRecycler].instance()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.LzfDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.compression.LzfDecoder"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 242
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:java.lang.Enum].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.SlicedByteBuf].hasArray()"
    - "[io.netty.buffer.CompositeByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasArray()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasArray()"
    - "[io.netty.buffer.WrappedByteBuf].hasArray()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasArray()"
    - "[io.netty.buffer.SwappedByteBuf].hasArray()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasArray()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasArray()"
    - "[io.netty.buffer.EmptyByteBuf].hasArray()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasArray()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasArray()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBuf].array()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    - "[io.netty.buffer.FixedCompositeByteBuf].array()"
    - "[io.netty.buffer.EmptyByteBuf].array()"
    - "[io.netty.buffer.SlicedByteBuf].array()"
    - "[io.netty.buffer.DuplicatedByteBuf].array()"
    - "[io.netty.buffer.PooledDirectByteBuf].array()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].array()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].array()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].array()"
    - "[io.netty.buffer.WrappedByteBuf].array()"
    - "[io.netty.buffer.PooledHeapByteBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].array()"
    - "[io.netty.buffer.SwappedByteBuf].array()"
    - "[io.netty.buffer.CompositeByteBuf].array()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].array()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.DuplicatedByteBuf].arrayOffset()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    - "[io.netty.buffer.SwappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.WrappedByteBuf].arrayOffset()"
    - "[io.netty.buffer.SlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledHeapByteBuf].arrayOffset()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].arrayOffset()"
    - "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    - "[io.netty.buffer.PooledDirectByteBuf].arrayOffset()"
    - "[io.netty.buffer.FixedCompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBuf].arrayOffset()"
    - "[io.netty.buffer.CompositeByteBuf].arrayOffset()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].arrayOffset()"
    - "[com.ning.compress.BufferRecycler].allocInputBuffer(int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[com.ning.compress.lzf.ChunkDecoder].decodeChunk(byte[],int,byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[com.ning.compress.BufferRecycler].releaseInputBuffer(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[java.lang.IllegalStateException].<init>()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].hasArray()"
    - "[io.netty.buffer.ByteBuf].array()"
    - "[io.netty.buffer.ByteBuf].arrayOffset()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    functionUses: 1
    ICount: 153
    EdgeCount: 349
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.LzfDecoder:116"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:119"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:118"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzfDecoder:120"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:124"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:123"
        BranchSideFuncs:
        - "readByte()"
    - Branch String: "io.netty.handler.codec.compression.LzfDecoder:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:150"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:149"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzfDecoder:150"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:155"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:154"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzfDecoder:155"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:158"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:157"
        BranchSideFuncs:
        - "readUnsignedShort()"
    - Branch String: "io.netty.handler.codec.compression.LzfDecoder:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:169"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:168"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzfDecoder:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:176"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:175"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzfDecoder:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:176"
        BranchSideFuncs:
        - "readerIndex()"
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:175"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzfDecoder:183"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:187"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:186"
        BranchSideFuncs:
        - "allocInputBuffer(int)"
        - "getBytes(int,byte[],int,int)"
    - Branch String: "io.netty.handler.codec.compression.LzfDecoder:195"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:199"
        BranchSideFuncs:
        - "arrayOffset()"
        - "array()"
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:198"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzfDecoder:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:209"
        BranchSideFuncs:
        - "writerIndex()"
        - "writerIndex(int)"
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:208"
        BranchSideFuncs:
        - "writeBytes(byte[])"
    - Branch String: "io.netty.handler.codec.compression.LzfDecoder:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:220"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:219"
        BranchSideFuncs:
        - "hasArray()"
    - Branch String: "io.netty.handler.codec.compression.LzfDecoder:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:218"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:217"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzfDecoder:220"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:223"
        BranchSideFuncs:
        - "releaseInputBuffer(byte[])"
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:222"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzfDecoder:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:227"
        BranchSideFuncs:
        - "readerIndex()"
      - BranchSide: "io.netty.handler.codec.compression.LzfDecoder:226"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzfDecoder:114,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:116,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:119,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:121,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:124,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:137,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:135,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:179,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:183,1"
      Dst: "[io.netty.buffer.ByteBuf].hasArray()"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:184,1"
      Dst: "[io.netty.buffer.ByteBuf].array()"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:185,1"
      Dst: "[io.netty.buffer.ByteBuf].arrayOffset()"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:187,1"
      Dst: "[com.ning.compress.BufferRecycler].allocInputBuffer(int)"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:188,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:192,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:192,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int,int)"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:197,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:205,1"
      Dst: "[com.ning.compress.lzf.ChunkDecoder].decodeChunk(byte[],int,byte[],int,int)"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:207,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:209,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:211,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:212,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:216,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:221,1"
      Dst: "[com.ning.compress.BufferRecycler].releaseInputBuffer(byte[])"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:224,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.handler.codec.compression.LzfDecoder:233,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 46
    CyclomaticComplexity: 15
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame$Setting].<init>(int,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySettingsFrame$Setting"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 159
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdySettingsFrame$Setting:154,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame$Setting].getValue()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySettingsFrame$Setting"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame$Setting].setValue(int)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySettingsFrame$Setting"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 167
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame$Setting].isPersist()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySettingsFrame$Setting"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 170
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame$Setting].setPersist(boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySettingsFrame$Setting"
    linkageType: ""
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame$Setting].isPersisted()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySettingsFrame$Setting"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame$Setting].setPersisted(boolean)"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdySettingsFrame$Setting"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.ErrorRedisMessage].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.redis.ErrorRedisMessage"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.ErrorRedisMessage:32,1"
      Dst: "[io.netty.handler.codec.redis.AbstractStringRedisMessage].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].<init>()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:54,1"
      Dst: "[io.netty.buffer.ByteBuf].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].<init>()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setCumulation(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:56,1"
      Dst: "[io.netty.buffer.ByteBuf].<init>()"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:57,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setCumulation(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setCumulation(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].terminate()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 74
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.SlicedByteBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    functionUses: 54
    ICount: 7
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:73"
        BranchSideFuncs:
        - "capacity()"
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:72"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:71,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:79,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1144
    functionLinenumberEnd: 1146
    functionDepth: 0
    returnType: "java.lang.UnsupportedOperationException"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 62
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1145,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].maxCapacity()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    functionUses: 6
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:84,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].alloc()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBufAllocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].alloc()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].alloc()"
    - "[io.netty.buffer.DuplicatedByteBuf].alloc()"
    - "[io.netty.buffer.SwappedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].alloc()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].alloc()"
    - "[io.netty.buffer.WrappedByteBuf].alloc()"
    - "[io.netty.buffer.SlicedByteBuf].alloc()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].alloc()"
    - "[io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].alloc()"
    - "[io.netty.buffer.ByteBuf].alloc()"
    functionUses: 18
    ICount: 4
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:89,1"
      Dst: "[io.netty.buffer.ByteBuf].alloc()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadOnly()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].asReadOnly()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].unmodifiableBuffer(io.netty.buffer.ByteBuf)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:100,1"
      Dst: "[io.netty.buffer.Unpooled].unmodifiableBuffer(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].isDirect()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isDirect()"
    - "[io.netty.buffer.DuplicatedByteBuf].isDirect()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].isDirect()"
    - "[io.netty.buffer.CompositeByteBuf].isDirect()"
    - "[io.netty.buffer.ReadOnlyByteBuf].isDirect()"
    - "[io.netty.buffer.SlicedByteBuf].isDirect()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isDirect()"
    - "[io.netty.buffer.WrappedByteBuf].isDirect()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.FixedCompositeByteBuf:io.netty.buffer.PooledDirectByteBuf:io.netty.buffer.PooledHeapByteBuf:io.netty.buffer.PooledUnsafeDirectByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf].isDirect()"
    - "[io.netty.buffer.ByteBuf].isDirect()"
    functionUses: 15
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:105,1"
      Dst: "[io.netty.buffer.ByteBuf].isDirect()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasArray()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 41
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].array()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 52
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:115,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].arrayOffset()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 52
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:120,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasMemoryAddress()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 36
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 33
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:130,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].clear()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 9
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:135,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:140"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:139"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:145,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].copy()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:150,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].copy(int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].copy(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].copy(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].copy(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].copy(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].copy(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].copy(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].copy(int,int)"
    - "[io.netty.buffer.ByteBuf].copy(int,int)"
    functionUses: 8
    ICount: 7
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:155,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:156,1"
      Dst: "[io.netty.buffer.ByteBuf].copy(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1085
    functionLinenumberEnd: 1090
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    functionUses: 25
    ICount: 10
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:1086"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:1089"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:1088"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1086,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].discardReadBytes()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:161,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 21
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:166,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:171,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].duplicate()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 177
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 22
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:176,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 8
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:181,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBoolean(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.ByteBuf].getBoolean(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:186,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:187,1"
      Dst: "[io.netty.buffer.ByteBuf].getBoolean(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 133
    ICount: 6
    EdgeCount: 22
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:192,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:193,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedByte(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedByte(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    functionUses: 37
    ICount: 6
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:198,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:199,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 203
    functionLinenumberEnd: 207
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    functionUses: 13
    ICount: 9
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:204,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:205,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[])"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 214
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.AbstractByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[])"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    functionUses: 11
    ICount: 8
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:211,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:212,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 217
    functionLinenumberEnd: 219
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:218,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 222
    functionLinenumberEnd: 226
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionUses: 12
    ICount: 9
    EdgeCount: 24
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:223,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:224,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:230,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:235,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 239
    functionLinenumberEnd: 241
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:240,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:245,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 249
    functionLinenumberEnd: 251
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 7
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:250,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getInt(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 254
    functionLinenumberEnd: 257
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.SlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.ByteBuf].getInt(int)"
    functionUses: 22
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:255,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:256,1"
      Dst: "[io.netty.buffer.ByteBuf].getInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getIntLE(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 260
    functionLinenumberEnd: 263
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getIntLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getIntLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getIntLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getIntLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getIntLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getIntLE(int)"
    - "[io.netty.buffer.ByteBuf].getIntLE(int)"
    functionUses: 11
    ICount: 6
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:261,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:262,1"
      Dst: "[io.netty.buffer.ByteBuf].getIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedInt(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 269
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedInt(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedInt(int)"
    functionUses: 7
    ICount: 6
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:267,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:268,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedIntLE(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 272
    functionLinenumberEnd: 275
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedIntLE(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedIntLE(int)"
    functionUses: 6
    ICount: 6
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:273,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:274,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedIntLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLong(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 278
    functionLinenumberEnd: 281
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLong(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLong(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLong(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.ByteBuf].getLong(int)"
    functionUses: 18
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:279,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:280,1"
      Dst: "[io.netty.buffer.ByteBuf].getLong(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLongLE(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 284
    functionLinenumberEnd: 287
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLongLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLongLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLongLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLongLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLongLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLongLE(int)"
    - "[io.netty.buffer.ByteBuf].getLongLE(int)"
    functionUses: 11
    ICount: 6
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:285,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:286,1"
      Dst: "[io.netty.buffer.ByteBuf].getLongLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getMedium(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 293
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].getMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].getMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].getMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].getMedium(int)"
    - "[io.netty.buffer.ByteBuf].getMedium(int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:291,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:292,1"
      Dst: "[io.netty.buffer.ByteBuf].getMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getMediumLE(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 296
    functionLinenumberEnd: 299
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getMediumLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getMediumLE(int)"
    - "[io.netty.buffer.ByteBuf].getMediumLE(int)"
    functionUses: 3
    ICount: 6
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:297,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:298,1"
      Dst: "[io.netty.buffer.ByteBuf].getMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedMedium(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 302
    functionLinenumberEnd: 305
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.SlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedMedium(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedMedium(int)"
    functionUses: 12
    ICount: 6
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:303,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:304,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 308
    functionLinenumberEnd: 311
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getUnsignedMediumLE(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedMediumLE(int)"
    functionUses: 11
    ICount: 6
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:309,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:310,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedMediumLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShort(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 314
    functionLinenumberEnd: 317
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].getShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShort(int)"
    - "[io.netty.buffer.ByteBuf].getShort(int)"
    functionUses: 17
    ICount: 6
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:315,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:316,1"
      Dst: "[io.netty.buffer.ByteBuf].getShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShortLE(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 320
    functionLinenumberEnd: 323
    functionDepth: 1
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.SwappedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShortLE(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShortLE(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShortLE(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShortLE(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShortLE(int)"
    - "[io.netty.buffer.ByteBuf].getShortLE(int)"
    functionUses: 11
    ICount: 6
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:321,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:322,1"
      Dst: "[io.netty.buffer.ByteBuf].getShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedShort(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 326
    functionLinenumberEnd: 329
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].getUnsignedShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.SwappedByteBuf].getUnsignedShort(int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedShort(int)"
    functionUses: 11
    ICount: 6
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:327,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:328,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getUnsignedShortLE(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.ByteBuf].getUnsignedShortLE(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:333,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:334,1"
      Dst: "[io.netty.buffer.ByteBuf].getUnsignedShortLE(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getChar(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "char"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.ByteBuf].getChar(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:339,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:340,1"
      Dst: "[io.netty.buffer.ByteBuf].getChar(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getFloat(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "float"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.ByteBuf].getFloat(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:345,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:346,1"
      Dst: "[io.netty.buffer.ByteBuf].getFloat(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getDouble(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.ByteBuf].getDouble(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:351,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:352,1"
      Dst: "[io.netty.buffer.ByteBuf].getDouble(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].getCharSequence(int,int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.CharSequence"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.ByteBuf].getCharSequence(int,int,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:357,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:358,1"
      Dst: "[io.netty.buffer.ByteBuf].getCharSequence(int,int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].hashCode()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 362
    functionLinenumberEnd: 364
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 13
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:363,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].indexOf(int,int,byte)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 367
    functionLinenumberEnd: 377
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].max(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.AbstractByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.SwappedByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.WrappedByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.EmptyByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].indexOf(int,int,byte)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].indexOf(int,int,byte)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].indexOf(int,int,byte)"
    functionUses: 7
    ICount: 16
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:368"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:372"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:371"
        BranchSideFuncs:
        - "max(int,int)"
        - "writerIndex()"
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:372"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:376"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:375"
        BranchSideFuncs:
        - "indexOf(int,int,byte)"
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:372,1"
      Dst: "[java.lang.Math].max(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:372,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:376,1"
      Dst: "[io.netty.buffer.ByteBuf].indexOf(int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].bytesBefore(byte)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].bytesBefore(byte)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:382"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:385"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:384"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:381,1"
      Dst: "[io.netty.buffer.ByteBuf].bytesBefore(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].bytesBefore(int,byte)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 389
    functionLinenumberEnd: 391
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    functionUses: 3
    ICount: 7
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:390,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:390,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].bytesBefore(int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].bytesBefore(int,int,byte)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 394
    functionLinenumberEnd: 409
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.WrappedByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.SwappedByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.AbstractByteBuf].bytesBefore(int,int,byte)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].bytesBefore(int,int,byte)"
    functionUses: 5
    ICount: 21
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:396"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:400"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:399"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:400"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:404"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:403"
        BranchSideFuncs:
        - "bytesBefore(int,int,byte)"
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:405"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:408"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:407"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:395,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:401,1"
      Dst: "[io.netty.buffer.ByteBuf].bytesBefore(int,int,byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 413
    functionLinenumberEnd: 419
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    functionUses: 8
    ICount: 8
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:415"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:418"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:417"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:414,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 423
    functionLinenumberEnd: 438
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.SlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.DuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ReadOnlyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionUses: 17
    ICount: 21
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:425"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:429"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:428"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:429"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:433"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:432"
        BranchSideFuncs:
        - "forEachByte(int,int,io.netty.util.ByteProcessor)"
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:434"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:437"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:436"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:424,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:430,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByteDesc(io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].forEachByteDesc(io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:443"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:446"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:445"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:444,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByteDesc(io.netty.util.ByteProcessor)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:446,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:452"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:456"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:455"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:452,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:456,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].markReaderIndex()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 460
    functionLinenumberEnd: 463
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.CompositeByteBuf].markReaderIndex()"
    - "[io.netty.buffer.SwappedByteBuf].markReaderIndex()"
    - "[io.netty.buffer.WrappedByteBuf].markReaderIndex()"
    - "[io.netty.buffer.EmptyByteBuf].markReaderIndex()"
    - "[io.netty.buffer.AbstractByteBuf].markReaderIndex()"
    - "[io.netty.buffer.ByteBuf].markReaderIndex()"
    functionUses: 11
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:461,1"
      Dst: "[io.netty.buffer.ByteBuf].markReaderIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].markWriterIndex()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:467,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 471
    functionLinenumberEnd: 473
    functionDepth: 0
    returnType: "java.nio.ByteOrder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.SwappedByteBuf].order()"
    - "[io.netty.buffer.EmptyByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[io.netty.buffer.ByteBuf].order()"
    functionUses: 27
    ICount: 4
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:472,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].order(java.nio.ByteOrder)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 476
    functionLinenumberEnd: 486
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteOrder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.SwappedByteBuf].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 34
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:477"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:481"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:480"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:482"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:485"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:484"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:477,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:477,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:483,1"
      Dst: "[io.netty.buffer.SwappedByteBuf].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 489
    functionLinenumberEnd: 491
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    functionUses: 106
    ICount: 10
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:490"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:489"
        BranchSideFuncs:
        - "isReadable()"
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:490"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:489"
        BranchSideFuncs:
        - "isReadable()"
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:490,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 494
    functionLinenumberEnd: 496
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable(int)"
    - "[io.netty.buffer.WrappedByteBuf].isReadable(int)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable(int)"
    - "[io.netty.buffer.AbstractByteBuf].isReadable(int)"
    - "[io.netty.buffer.EmptyByteBuf].isReadable(int)"
    - "[io.netty.buffer.ByteBuf].isReadable(int)"
    functionUses: 5
    ICount: 11
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:495"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:494"
        BranchSideFuncs:
        - "isReadable(int)"
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:495"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:494"
        BranchSideFuncs:
        - "isReadable(int)"
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:495,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 499
    functionLinenumberEnd: 504
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    functionUses: 427
    ICount: 10
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:500"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:503"
        BranchSideFuncs:
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:502"
        BranchSideFuncs:
        - "readerIndex()"
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:501,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:503,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBoolean()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.ByteBuf].readBoolean()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:509,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:510,1"
      Dst: "[io.netty.buffer.ByteBuf].readBoolean()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1091
    functionLinenumberEnd: 1096
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 21
    ICount: 8
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.ReplayingDecoderByteBuf:1092"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:1095"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.ReplayingDecoderByteBuf:1094"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1092,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 514
    functionLinenumberEnd: 517
    functionDepth: 1
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    functionUses: 83
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:515,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:516,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 520
    functionLinenumberEnd: 523
    functionDepth: 1
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedByte()"
    - "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    functionUses: 39
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:521,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:522,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedByte()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(byte[],int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 526
    functionLinenumberEnd: 530
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(byte[],int,int)"
    - "[io.netty.buffer.ByteBuf].readBytes(byte[],int,int)"
    functionUses: 4
    ICount: 8
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:527,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:528,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(byte[])"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 533
    functionLinenumberEnd: 537
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    functionUses: 12
    ICount: 7
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:534,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:535,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 540
    functionLinenumberEnd: 542
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:541,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:546,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:547,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 552
    functionLinenumberEnd: 554
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:553,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 557
    functionLinenumberEnd: 561
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    functionUses: 4
    ICount: 7
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:558,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:558,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:559,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 564
    functionLinenumberEnd: 566
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:565,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:570,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 574
    functionLinenumberEnd: 577
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(int)"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(int)"
    - "[io.netty.buffer.ByteBuf].readBytes(int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:575,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:576,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readSlice(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 580
    functionLinenumberEnd: 583
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readSlice(int)"
    - "[io.netty.buffer.SwappedByteBuf].readSlice(int)"
    - "[io.netty.buffer.ByteBuf].readSlice(int)"
    functionUses: 21
    ICount: 6
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:581,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:582,1"
      Dst: "[io.netty.buffer.ByteBuf].readSlice(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 586
    functionLinenumberEnd: 589
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    functionUses: 40
    ICount: 6
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:587,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:588,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(java.io.OutputStream,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 592
    functionLinenumberEnd: 594
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:593,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 597
    functionLinenumberEnd: 599
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    functionUses: 245
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:598,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 602
    functionLinenumberEnd: 605
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 50
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:603,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readInt()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 608
    functionLinenumberEnd: 611
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readInt()"
    - "[io.netty.buffer.EmptyByteBuf].readInt()"
    - "[io.netty.buffer.AbstractByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readInt()"
    - "[io.netty.buffer.WrappedByteBuf].readInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readInt()"
    - "[io.netty.buffer.ByteBuf].readInt()"
    functionUses: 19
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:609,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:610,1"
      Dst: "[io.netty.buffer.ByteBuf].readInt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readIntLE()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 614
    functionLinenumberEnd: 617
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readIntLE()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readIntLE()"
    - "[io.netty.buffer.AbstractByteBuf].readIntLE()"
    - "[io.netty.buffer.EmptyByteBuf].readIntLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readIntLE()"
    - "[io.netty.buffer.WrappedByteBuf].readIntLE()"
    - "[io.netty.buffer.SwappedByteBuf].readIntLE()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readIntLE()"
    - "[io.netty.buffer.ByteBuf].readIntLE()"
    functionUses: 7
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:615,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:616,1"
      Dst: "[io.netty.buffer.ByteBuf].readIntLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedInt()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 620
    functionLinenumberEnd: 623
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedInt()"
    - "[io.netty.buffer.ByteBuf].readUnsignedInt()"
    functionUses: 9
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:621,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:622,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedInt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedIntLE()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.ByteBuf].readUnsignedIntLE()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:627,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:628,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedIntLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readLong()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 632
    functionLinenumberEnd: 635
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readLong()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readLong()"
    - "[io.netty.buffer.WrappedByteBuf].readLong()"
    - "[io.netty.buffer.SwappedByteBuf].readLong()"
    - "[io.netty.buffer.EmptyByteBuf].readLong()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readLong()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readLong()"
    - "[io.netty.buffer.AbstractByteBuf].readLong()"
    - "[io.netty.buffer.ByteBuf].readLong()"
    functionUses: 9
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:633,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:634,1"
      Dst: "[io.netty.buffer.ByteBuf].readLong()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readLongLE()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.ByteBuf].readLongLE()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:639,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:640,1"
      Dst: "[io.netty.buffer.ByteBuf].readLongLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readMedium()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 644
    functionLinenumberEnd: 647
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].readMedium()"
    - "[io.netty.buffer.SwappedByteBuf].readMedium()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readMedium()"
    - "[io.netty.buffer.AbstractByteBuf].readMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readMedium()"
    - "[io.netty.buffer.EmptyByteBuf].readMedium()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readMedium()"
    - "[io.netty.buffer.ByteBuf].readMedium()"
    functionUses: 3
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:645,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:646,1"
      Dst: "[io.netty.buffer.ByteBuf].readMedium()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readMediumLE()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 650
    functionLinenumberEnd: 653
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].readMediumLE()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readMediumLE()"
    - "[io.netty.buffer.WrappedByteBuf].readMediumLE()"
    - "[io.netty.buffer.EmptyByteBuf].readMediumLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readMediumLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readMediumLE()"
    - "[io.netty.buffer.SwappedByteBuf].readMediumLE()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readMediumLE()"
    - "[io.netty.buffer.ByteBuf].readMediumLE()"
    functionUses: 3
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:651,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:652,1"
      Dst: "[io.netty.buffer.ByteBuf].readMediumLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedMedium()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 656
    functionLinenumberEnd: 659
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedMedium()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedMedium()"
    - "[io.netty.buffer.ByteBuf].readUnsignedMedium()"
    functionUses: 6
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:657,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:658,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedMedium()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedMediumLE()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 662
    functionLinenumberEnd: 665
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedMediumLE()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedMediumLE()"
    - "[io.netty.buffer.ByteBuf].readUnsignedMediumLE()"
    functionUses: 3
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:663,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:664,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedMediumLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readShort()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 668
    functionLinenumberEnd: 671
    functionDepth: 1
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readShort()"
    - "[io.netty.buffer.EmptyByteBuf].readShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readShort()"
    - "[io.netty.buffer.SwappedByteBuf].readShort()"
    - "[io.netty.buffer.WrappedByteBuf].readShort()"
    - "[io.netty.buffer.AbstractByteBuf].readShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readShort()"
    - "[io.netty.buffer.ByteBuf].readShort()"
    functionUses: 8
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:669,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:670,1"
      Dst: "[io.netty.buffer.ByteBuf].readShort()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readShortLE()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 674
    functionLinenumberEnd: 677
    functionDepth: 1
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readShortLE()"
    - "[io.netty.buffer.WrappedByteBuf].readShortLE()"
    - "[io.netty.buffer.SwappedByteBuf].readShortLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readShortLE()"
    - "[io.netty.buffer.EmptyByteBuf].readShortLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readShortLE()"
    - "[io.netty.buffer.AbstractByteBuf].readShortLE()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readShortLE()"
    - "[io.netty.buffer.ByteBuf].readShortLE()"
    functionUses: 3
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:675,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:676,1"
      Dst: "[io.netty.buffer.ByteBuf].readShortLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShort()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 680
    functionLinenumberEnd: 683
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    functionUses: 42
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:681,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:682,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShortLE()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 686
    functionLinenumberEnd: 689
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShortLE()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShortLE()"
    - "[io.netty.buffer.ByteBuf].readUnsignedShortLE()"
    functionUses: 4
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:687,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:688,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShortLE()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readChar()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "char"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.ByteBuf].readChar()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:693,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:694,1"
      Dst: "[io.netty.buffer.ByteBuf].readChar()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readFloat()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.ByteBuf].readFloat()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:699,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:700,1"
      Dst: "[io.netty.buffer.ByteBuf].readFloat()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readDouble()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.ByteBuf].readDouble()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:705,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:706,1"
      Dst: "[io.netty.buffer.ByteBuf].readDouble()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readCharSequence(int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.CharSequence"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.ByteBuf].readCharSequence(int,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:711,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:712,1"
      Dst: "[io.netty.buffer.ByteBuf].readCharSequence(int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].resetReaderIndex()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 716
    functionLinenumberEnd: 719
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].resetReaderIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.AbstractByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.SwappedByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.CompositeByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.EmptyByteBuf].resetReaderIndex()"
    - "[io.netty.buffer.ByteBuf].resetReaderIndex()"
    functionUses: 15
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:717,1"
      Dst: "[io.netty.buffer.ByteBuf].resetReaderIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].resetWriterIndex()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:723,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBoolean(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:728,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setByte(int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 732
    functionLinenumberEnd: 734
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 63
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:733,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 737
    functionLinenumberEnd: 739
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:738,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,byte[])"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:743,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 747
    functionLinenumberEnd: 749
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:748,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 752
    functionLinenumberEnd: 754
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 15
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:753,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:758,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:763,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.io.InputStream,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 767
    functionLinenumberEnd: 769
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:768,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setZero(int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 772
    functionLinenumberEnd: 774
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:773,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 777
    functionLinenumberEnd: 779
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:778,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 782
    functionLinenumberEnd: 784
    functionDepth: 1
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:783,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setIndex(int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 787
    functionLinenumberEnd: 789
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:788,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setInt(int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 792
    functionLinenumberEnd: 794
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 24
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:793,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setIntLE(int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 797
    functionLinenumberEnd: 799
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:798,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setLong(int,long)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 802
    functionLinenumberEnd: 804
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:803,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setLongLE(int,long)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:808,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setMedium(int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 812
    functionLinenumberEnd: 814
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:813,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setMediumLE(int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 817
    functionLinenumberEnd: 819
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:818,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShort(int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 822
    functionLinenumberEnd: 824
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 16
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:823,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setShortLE(int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 827
    functionLinenumberEnd: 829
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:828,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setChar(int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:833,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setFloat(int,float)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:838,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setDouble(int,double)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:843,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 847
    functionLinenumberEnd: 851
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 120
    ICount: 6
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:848,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkReadableBytes(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:849,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 854
    functionLinenumberEnd: 856
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 8
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:855,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedSlice()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 859
    functionLinenumberEnd: 861
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:860,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice(int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 864
    functionLinenumberEnd: 867
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].slice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].slice(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].slice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].slice(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.ByteBuf].slice(int,int)"
    functionUses: 19
    ICount: 7
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:865,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:866,1"
      Dst: "[io.netty.buffer.ByteBuf].slice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedSlice(int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 870
    functionLinenumberEnd: 873
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].slice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].slice(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].slice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].slice(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].slice(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].slice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice(int,int)"
    - "[io.netty.buffer.ByteBuf].slice(int,int)"
    functionUses: 9
    ICount: 7
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:871,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:872,1"
      Dst: "[io.netty.buffer.ByteBuf].slice(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 876
    functionLinenumberEnd: 878
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.WrappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    - "[io.netty.buffer.CompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBufferCount()"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SwappedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBufferCount()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBufferCount()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBufferCount()"
    - "[io.netty.buffer.SlicedByteBuf].nioBufferCount()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBufferCount()"
    - "[io.netty.buffer.PooledByteBuf].nioBufferCount()"
    - "[io.netty.buffer.ByteBuf].nioBufferCount()"
    functionUses: 42
    ICount: 4
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:877,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBufferCount()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 881
    functionLinenumberEnd: 883
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 9
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:882,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer(int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 886
    functionLinenumberEnd: 889
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].nioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    functionUses: 16
    ICount: 7
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:887,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:888,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 892
    functionLinenumberEnd: 894
    functionDepth: 1
    returnType: "java.nio.ByteBuffer[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 7
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:893,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers(int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 897
    functionLinenumberEnd: 900
    functionDepth: 1
    returnType: "java.nio.ByteBuffer[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].nioBuffers(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.PooledByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers(int,int)"
    - "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    functionUses: 16
    ICount: 7
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:898,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:899,1"
      Dst: "[io.netty.buffer.ByteBuf].nioBuffers(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 903
    functionLinenumberEnd: 906
    functionDepth: 1
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    functionUses: 35
    ICount: 7
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:904,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:905,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(int,int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 909
    functionLinenumberEnd: 912
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    functionUses: 14
    ICount: 8
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:910,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].checkIndex(int,int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:911,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 915
    functionLinenumberEnd: 917
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:916,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 920
    functionLinenumberEnd: 927
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    functionUses: 21
    ICount: 15
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:921,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:921,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:921,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:921,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:923,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:923,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:926,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:926,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1041
    functionLinenumberEnd: 1043
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    functionUses: 128
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1042,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].isWritable()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 931
    functionLinenumberEnd: 933
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].isWritable(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 936
    functionLinenumberEnd: 938
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 941
    functionLinenumberEnd: 943
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 49
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].maxWritableBytes()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 946
    functionLinenumberEnd: 948
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBoolean(boolean)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:952,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 956
    functionLinenumberEnd: 958
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 200
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:957,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[],int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 961
    functionLinenumberEnd: 963
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 13
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:962,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 966
    functionLinenumberEnd: 968
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:967,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 971
    functionLinenumberEnd: 973
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:972,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 976
    functionLinenumberEnd: 978
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:977,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 981
    functionLinenumberEnd: 983
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:982,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 986
    functionLinenumberEnd: 988
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:987,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.io.InputStream,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 991
    functionLinenumberEnd: 993
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:992,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 996
    functionLinenumberEnd: 998
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:997,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1001
    functionLinenumberEnd: 1003
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1002,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1006
    functionLinenumberEnd: 1008
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 54
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1007,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeIntLE(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1011
    functionLinenumberEnd: 1013
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1012,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeLong(long)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1016
    functionLinenumberEnd: 1018
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1017,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeLongLE(long)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1022,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeMedium(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1026
    functionLinenumberEnd: 1028
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1027,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeMediumLE(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1031
    functionLinenumberEnd: 1033
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1032,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeZero(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1036
    functionLinenumberEnd: 1038
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1037,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1046
    functionLinenumberEnd: 1048
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 50
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1047,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShort(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1051
    functionLinenumberEnd: 1053
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 95
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1052,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeShortLE(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1057,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeChar(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1061
    functionLinenumberEnd: 1063
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1062,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeFloat(float)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1067,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeDouble(double)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1072,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1076
    functionLinenumberEnd: 1078
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1077,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1081
    functionLinenumberEnd: 1083
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 24
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1082,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].discardSomeReadBytes()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1098
    functionLinenumberEnd: 1100
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1099,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1103
    functionLinenumberEnd: 1105
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.buffer.EmptyByteBuf].refCnt()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 25
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1104,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1108
    functionLinenumberEnd: 1110
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 63
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1109,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1114,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1118
    functionLinenumberEnd: 1121
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.SwappedByteBuf].touch()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch()"
    - "[io.netty.buffer.EmptyByteBuf].touch()"
    - "[io.netty.buffer.WrappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    - "[io.netty.buffer.UnreleasableByteBuf].touch()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.CompositeByteBuf].touch()"
    - "[io.netty.buffer.ByteBuf].touch()"
    functionUses: 20
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1119,1"
      Dst: "[io.netty.buffer.ByteBuf].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1124
    functionLinenumberEnd: 1127
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 27
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1125,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1130
    functionLinenumberEnd: 1132
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 346
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1131,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].release(int)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1135
    functionLinenumberEnd: 1137
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 18
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1136,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].unwrap()"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: 1140
    functionLinenumberEnd: 1142
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:1141,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].reject()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ReplayingDecoderByteBuf].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.ReplayingDecoderByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ReplayingDecoderByteBuf:39,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoderByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttCodecUtil].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttCodecUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttCodecUtil:132,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString$AsciiCaseInsensitiveCharEqualityComparator].<init>()"
    functionSourceFile: "io.netty.util.AsciiString$AsciiCaseInsensitiveCharEqualityComparator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString$AsciiCaseInsensitiveCharEqualityComparator:1551,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString$AsciiCaseInsensitiveCharEqualityComparator].equals(char,char)"
    functionSourceFile: "io.netty.util.AsciiString$AsciiCaseInsensitiveCharEqualityComparator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "char"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].access$000(char,char)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString$AsciiCaseInsensitiveCharEqualityComparator:1555,1"
      Dst: "[io.netty.util.AsciiString].access$000(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].access$000(char,char)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "char"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].equalsIgnoreCase(char,char)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:47,1"
      Dst: "[io.netty.util.AsciiString].equalsIgnoreCase(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslCloseCompletionEvent].<init>()"
    functionSourceFile: "io.netty.handler.ssl.SslCloseCompletionEvent"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslCompletionEvent].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslCloseCompletionEvent:28,1"
      Dst: "[io.netty.handler.ssl.SslCompletionEvent].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$2].<init>(io.netty.channel.AbstractChannelHandlerContext)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$2"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 198
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$2:197,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$2"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].access$100(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 50
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$2:200,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].access$100(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].<init>(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$Tasks$2"
    linkageType: ""
    functionLinenumber: 1284
    functionLinenumberEnd: 1286
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.AbstractChannelHandlerContext$Tasks"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$Tasks$2:1285,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$Tasks$2"
    linkageType: ""
    functionLinenumber: 1287
    functionLinenumberEnd: 1290
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks].access$1800(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    - "[io.netty.channel.AbstractChannelHandlerContext].access$2000(io.netty.channel.AbstractChannelHandlerContext)"
    functionUses: 49
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$Tasks$2:1288,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext$Tasks].access$1800(io.netty.channel.AbstractChannelHandlerContext$Tasks)"
    - Src: "io.netty.channel.AbstractChannelHandlerContext$Tasks$2:1288,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext].access$2000(io.netty.channel.AbstractChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.PrematureChannelClosureException].<init>()"
    functionSourceFile: "io.netty.handler.codec.PrematureChannelClosureException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.PrematureChannelClosureException:32,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.PrematureChannelClosureException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.PrematureChannelClosureException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.PrematureChannelClosureException:38,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.PrematureChannelClosureException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.PrematureChannelClosureException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.PrematureChannelClosureException:52,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise$2].<init>(io.netty.util.concurrent.Future,io.netty.util.concurrent.GenericFutureListener)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise$2"
    linkageType: ""
    functionLinenumber: 528
    functionLinenumberEnd: 530
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.Future"
    - "io.netty.util.concurrent.GenericFutureListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise$2:529,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise$2].run()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise$2"
    linkageType: ""
    functionLinenumber: 531
    functionLinenumberEnd: 534
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].access$300(io.netty.util.concurrent.Future,io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 49
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise$2:532,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].access$300(io.netty.util.concurrent.Future,io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].access$300(io.netty.util.concurrent.Future,io.netty.util.concurrent.GenericFutureListener)"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.Future"
    - "io.netty.util.concurrent.GenericFutureListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].notifyListener0(io.netty.util.concurrent.Future,io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise:35,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].notifyListener0(io.netty.util.concurrent.Future,io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator"
    linkageType: ""
    functionLinenumber: 394
    functionLinenumberEnd: 396
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator:395,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator"
    linkageType: ""
    functionLinenumber: 394
    functionLinenumberEnd: 396
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator].compare(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator:395,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$StateOnlyComparator].compare(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State,io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf].allocateDirect(int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf"
    linkageType: ""
    functionLinenumber: 185
    functionLinenumberEnd: 189
    functionDepth: 5
    returnType: "java.nio.ByteBuffer"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].allocateDirect(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledByteBufAllocator].incrementDirect(int)"
    - "[java.nio.Buffer].capacity()"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf:186,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].allocateDirect(int)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf:187,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf:187,1"
      Dst: "[java.nio.Buffer].capacity()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf:187,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator].incrementDirect(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf].reallocateDirect(java.nio.ByteBuffer,int)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf"
    linkageType: ""
    functionLinenumber: 192
    functionLinenumberEnd: 197
    functionDepth: 5
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].reallocateDirect(java.nio.ByteBuffer,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledByteBufAllocator].incrementDirect(int)"
    - "[java.nio.Buffer].capacity()"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf:193,1"
      Dst: "[java.nio.Buffer].capacity()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf:194,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].reallocateDirect(java.nio.ByteBuffer,int)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf:195,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf:195,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator].incrementDirect(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 205
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - "[io.netty.buffer.UnpooledByteBufAllocator].decrementDirect(int)"
    - "[java.nio.Buffer].capacity()"
    functionUses: 2
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf:201,1"
      Dst: "[java.nio.Buffer].capacity()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf:202,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf].freeDirect(java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf:203,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].alloc()"
    - Src: "io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf:203,1"
      Dst: "[io.netty.buffer.UnpooledByteBufAllocator].decrementDirect(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].<init>(io.netty.buffer.CompositeByteBuf,io.netty.util.ResourceLeakTracker)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.CompositeByteBuf"
    - "io.netty.util.ResourceLeakTracker"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].<init>(io.netty.buffer.CompositeByteBuf)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:29,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].<init>(io.netty.buffer.CompositeByteBuf)"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:30,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].unwrap()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].closeLeak(io.netty.buffer.ByteBuf)"
    functionUses: 354
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:38"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:42"
        BranchSideFuncs:
        - "closeLeak(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:41"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:37,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].unwrap()"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:38,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:39,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].closeLeak(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].closeLeak(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].close(java.lang.Object)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.ResourceLeakTracker].close(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:61"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:62"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:61"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:61"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:62"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:61"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:60,1"
      Dst: "[io.netty.util.ResourceLeakTracker].close(java.lang.Object)"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:61,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release(int)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].unwrap()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].closeLeak(io.netty.buffer.ByteBuf)"
    functionUses: 20
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:50"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:54"
        BranchSideFuncs:
        - "closeLeak(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:53"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:49,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].unwrap()"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:50,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:51,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].closeLeak(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].order(java.nio.ByteOrder)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 70
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteOrder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    functionUses: 36
    ICount: 8
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:66"
      Branch Sides:
      - BranchSide: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:69"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:68"
        BranchSideFuncs:
        - "newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
        - "order(java.nio.ByteOrder)"
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:66,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:69,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].order(java.nio.ByteOrder)"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:69,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 120
    functionDepth: 1
    returnType: "io.netty.buffer.SimpleLeakAwareByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].unwrap()"
    functionUses: 10
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:119,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].unwrap()"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:119,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice()"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice()"
    functionUses: 11
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:75,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].slice()"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:75,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedSlice()"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedSlice()"
    functionUses: 7
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:80,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].retainedSlice()"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:80,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].slice(int,int)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].slice(int,int)"
    functionUses: 25
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:85,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].slice(int,int)"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:85,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedSlice(int,int)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedSlice(int,int)"
    functionUses: 12
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:90,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].retainedSlice(int,int)"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:90,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].duplicate()"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].duplicate()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    functionUses: 25
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:95,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].duplicate()"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:95,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedDuplicate()"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedDuplicate()"
    functionUses: 10
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:100,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].retainedDuplicate()"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:100,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readSlice(int)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readSlice(int)"
    functionUses: 23
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:105,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].readSlice(int)"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:105,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    functionUses: 42
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:110,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:110,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].asReadOnly()"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].asReadOnly()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    functionUses: 16
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:115,1"
      Dst: "[io.netty.buffer.WrappedCompositeByteBuf].asReadOnly()"
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:115,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].newLeakAwareByteBuf(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker<ByteBuf>)"
    functionSourceFile: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionDepth: 3
    returnType: "io.netty.buffer.SimpleLeakAwareByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.util.ResourceLeakTracker<ByteBuf>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.SimpleLeakAwareCompositeByteBuf:124,1"
      Dst: "[io.netty.buffer.SimpleLeakAwareByteBuf].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,io.netty.util.ResourceLeakTracker)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].values()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:34,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:34,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName].<init>(java.lang.String,int,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    - "[io.netty.util.AsciiString].cached(java.lang.String)"
    functionUses: 6
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:79,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    - Src: "io.netty.handler.codec.http2.Http2Headers$PseudoHeaderName:80,1"
      Dst: "[io.netty.util.AsciiString].cached(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].values()"
    functionSourceFile: "io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey:38,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey:38,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].<init>(java.lang.String,int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey:61,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].toString()"
    functionSourceFile: "io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsServerAddressStreamProviders].<init>()"
    functionSourceFile: "io.netty.resolver.dns.DnsServerAddressStreamProviders"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsServerAddressStreamProviders:91,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsNameResolverTimeoutException].<init>(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.DnsNameResolverTimeoutException"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.InetSocketAddress"
    - "io.netty.handler.codec.dns.DnsQuestion"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolverException].<init>(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsNameResolverTimeoutException:31,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolverException].<init>(java.net.InetSocketAddress,io.netty.handler.codec.dns.DnsQuestion,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageFactory].newInvalidMessage(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttMessage"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    - "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object,io.netty.handler.codec.DecoderResult)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:93,1"
      Dst: "[io.netty.handler.codec.DecoderResult].failure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:93,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,java.lang.Object,java.lang.Object,io.netty.handler.codec.DecoderResult)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageFactory].<init>()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageFactory:101,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockCompressor$1].<init>(io.netty.handler.codec.compression.Bzip2BlockCompressor)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockCompressor$1"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.compression.Bzip2BlockCompressor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor$1:38,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2BlockCompressor$1].process(byte)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2BlockCompressor$1"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2BlockCompressor].write(int)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2BlockCompressor$1:41,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].write(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Context].<init>()"
    functionSourceFile: "io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Context"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Context:41,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Context].<init>(io.netty.buffer.search.AhoCorasicSearchProcessorFactory$1)"
    functionSourceFile: "io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Context"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.search.AhoCorasicSearchProcessorFactory$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Context].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Context:41,1"
      Dst: "[io.netty.buffer.search.AhoCorasicSearchProcessorFactory$Context].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelId].newInstance()"
    functionSourceFile: "io.netty.channel.DefaultChannelId"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionDepth: 2
    returnType: "io.netty.channel.DefaultChannelId"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelId].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelId:55,1"
      Dst: "[io.netty.channel.DefaultChannelId].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelId].<init>()"
    functionSourceFile: "io.netty.channel.DefaultChannelId"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 215
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[io.netty.channel.DefaultChannelId].writeInt(int,int)"
    - "[java.util.concurrent.atomic.AtomicInteger].getAndIncrement()"
    - "[java.lang.System].currentTimeMillis()"
    - "[java.lang.System].nanoTime()"
    - "[java.lang.Long].reverse(long)"
    - "[io.netty.channel.DefaultChannelId].writeLong(int,long)"
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextInt()"
    - "[java.util.concurrent.ThreadLocalRandom].nextInt()"
    - "[java.util.Random].nextInt()"
    - "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.util.Arrays].hashCode(byte[])"
    functionUses: 1
    ICount: 43
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelId:211"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:212"
        BranchSideFuncs:
        - "hashCode(byte[])"
    - Branch String: "io.netty.channel.DefaultChannelId:211"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:212"
        BranchSideFuncs:
        - "hashCode(byte[])"
    Callsites:
    - Src: "io.netty.channel.DefaultChannelId:191,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.DefaultChannelId:196,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "io.netty.channel.DefaultChannelId:200,1"
      Dst: "[io.netty.channel.DefaultChannelId].writeInt(int,int)"
    - Src: "io.netty.channel.DefaultChannelId:203,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].getAndIncrement()"
    - Src: "io.netty.channel.DefaultChannelId:206,1"
      Dst: "[java.lang.System].nanoTime()"
    - Src: "io.netty.channel.DefaultChannelId:206,1"
      Dst: "[java.lang.Long].reverse(long)"
    - Src: "io.netty.channel.DefaultChannelId:206,1"
      Dst: "[java.lang.System].currentTimeMillis()"
    - Src: "io.netty.channel.DefaultChannelId:206,1"
      Dst: "[io.netty.channel.DefaultChannelId].writeLong(int,long)"
    - Src: "io.netty.channel.DefaultChannelId:209,1"
      Dst: "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - Src: "io.netty.channel.DefaultChannelId:209,1"
      Dst: "[java.util.Random].nextInt()"
    - Src: "io.netty.channel.DefaultChannelId:211,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.DefaultChannelId:213,1"
      Dst: "[java.util.Arrays].hashCode(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelId].writeInt(int,int)"
    functionSourceFile: "io.netty.channel.DefaultChannelId"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 222
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 23
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelId].writeLong(int,long)"
    functionSourceFile: "io.netty.channel.DefaultChannelId"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 234
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 51
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelId].processHandlePid(java.lang.ClassLoader)"
    functionSourceFile: "io.netty.channel.DefaultChannelId"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 129
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[java.lang.Long].longValue()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Long].intValue()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 39
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelId:111"
      Branch Sides: []
    - Branch String: "io.netty.channel.DefaultChannelId:123"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:124"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.DefaultChannelId:123"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.channel.DefaultChannelId:123"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:126"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.DefaultChannelId:125"
        BranchSideFuncs:
        - "intValue()"
    Callsites:
    - Src: "io.netty.channel.DefaultChannelId:111,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.DefaultChannelId:114,1"
      Dst: "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    - Src: "io.netty.channel.DefaultChannelId:115,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "io.netty.channel.DefaultChannelId:116,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.channel.DefaultChannelId:120,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.DefaultChannelId:123,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "io.netty.channel.DefaultChannelId:124,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.DefaultChannelId:124,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelId:124,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.channel.DefaultChannelId:124,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.DefaultChannelId:124,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelId:126,1"
      Dst: "[java.lang.Long].intValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelId].jmxPid(java.lang.ClassLoader)"
    functionSourceFile: "io.netty.channel.DefaultChannelId"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 174
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.ReflectiveChannelFactory].toString()"
    - "[sun.security.x509.SerialNumber].toString()"
    - "[io.netty.util.Version].toString()"
    - "[javax.net.ssl.SSLEngineResult].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].toString()"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].toString()"
    - "[java.util.AbstractCollection].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[sun.security.x509.CertificateAlgorithmId].toString()"
    - "[io.netty.buffer.PoolSubpage].toString()"
    - "[java.net.InetSocketAddress].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[java.lang.ProcessBuilder$Redirect$3].toString()"
    - "[io.netty.util.Recycler$1].toString()"
    - "[sun.security.x509.PolicyConstraintsExtension].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].toString()"
    - "[java.nio.charset.Charset].toString()"
    - "[java.util.Properties].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].toString()"
    - "[sun.security.util.JarConstraintsParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].toString()"
    - "[java.lang.reflect.Constructor].toString()"
    - "[java.nio.DoubleBuffer].toString()"
    - "[io.netty.util.Signal].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Thread].toString()"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].toString()"
    - "[java.lang.Throwable].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$CompositePrinterParser].toString()"
    - "[io.netty.channel.embedded.EmbeddedSocketAddress].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].toString()"
    - "[java.util.regex.Matcher].toString()"
    - "[java.lang.reflect.Field].toString()"
    - "[java.lang.invoke.MethodHandles$Lookup].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.net.URL].toString()"
    - "[java.lang.invoke.LambdaForm$Name].toString()"
    - "[sun.security.x509.RDN].toString()"
    - "[java.util.concurrent.atomic.AtomicReference].toString()"
    - "[java.util.Currency].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].toString()"
    - "[io.netty.channel.kqueue.NativeLongArray].toString()"
    - "[io.netty.handler.proxy.ProxyConnectionEvent].toString()"
    - "[java.util.Formatter].toString()"
    - "[java.lang.ModuleLayer].toString()"
    - "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - "[io.netty.handler.ssl.SslCompletionEvent].toString()"
    - "[io.netty.bootstrap.BootstrapConfig].toString()"
    - "[java.lang.ProcessBuilder$Redirect$1].toString()"
    - "[io.netty.handler.codec.xml.XmlEntityReference].toString()"
    - "[java.net.Proxy].toString()"
    - "[sun.security.util.DerValue].toString()"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].toString()"
    - "[sun.security.x509.AlgorithmId].toString()"
    - "[java.text.AttributedCharacterIterator$Attribute].toString()"
    - "[java.lang.Runtime$Version].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$2].toString()"
    - "[java.lang.module.ModuleDescriptor$Exports].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].toString()"
    - "[io.netty.channel.kqueue.AcceptFilter].toString()"
    - "[sun.security.x509.SubjectKeyIdentifierExtension].toString()"
    - "[io.netty.buffer.DefaultByteBufHolder].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.time.temporal.ChronoField].toString()"
    - "[java.security.PermissionCollection].toString()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].toString()"
    - "[java.util.concurrent.ConcurrentHashMap].toString()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].toString()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].toString()"
    - "[java.util.Vector].toString()"
    - "[io.netty.handler.codec.http.HttpVersion].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].toString()"
    - "[java.text.CalendarBuilder].toString()"
    - "[java.net.URLConnection].toString()"
    - "[java.util.EventObject].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].toString()"
    - "[io.netty.util.AbstractConstant].toString()"
    - "[sun.reflect.annotation.TypeAnnotation].toString()"
    - "[java.security.SecureRandom].toString()"
    - "[java.util.concurrent.atomic.AtomicLong].toString()"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].toString()"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].toString()"
    - "[sun.util.calendar.Era].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].toString()"
    - "[java.lang.module.ModuleDescriptor$Requires].toString()"
    - "[java.time.ZonedDateTime].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache].toString()"
    - "[java.math.MutableBigInteger].toString()"
    - "[java.lang.module.ModuleDescriptor$Provides].toString()"
    - "[java.net.InetSocketAddress$InetSocketAddressHolder].toString()"
    - "[sun.security.x509.GeneralNames].toString()"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].toString()"
    - "[sun.security.x509.Extension].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].toString()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].toString()"
    - "[io.netty.handler.ssl.util.LazyX509Certificate].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].toString()"
    - "[sun.security.x509.ExtendedKeyUsageExtension].toString()"
    - "[io.netty.buffer.WrappedByteBuf].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].toString()"
    - "[java.security.MessageDigest].toString()"
    - "[io.netty.handler.codec.dns.DnsOpCode].toString()"
    - "[java.io.ObjectOutputStream$DebugTraceInfoStack].toString()"
    - "[java.util.TreeMap$Entry].toString()"
    - "[java.time.zone.ZoneOffsetTransition].toString()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].toString()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].toString()"
    - "[java.lang.Integer].toString()"
    - "[java.lang.ProcessBuilder$Redirect$6].toString()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].toString()"
    - "[java.util.OptionalInt].toString()"
    - "[javax.naming.NamingException].toString()"
    - "[java.time.LocalDate].toString()"
    - "[java.util.ServiceLoader].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache].toString()"
    - "[java.net.InetAddress].toString()"
    - "[java.util.jar.Attributes$Name].toString()"
    - "[java.lang.Boolean].toString()"
    - "[io.netty.handler.codec.DefaultHeaders].toString()"
    - "[jaz.Zer].toString()"
    - "[io.netty.util.concurrent.DefaultPromise].toString()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].toString()"
    - "[io.netty.handler.ssl.PemX509Certificate].toString()"
    - "[sun.security.x509.UniqueIdentity].toString()"
    - "[java.security.CodeSigner].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].toString()"
    - "[sun.security.x509.CertificateX509Key].toString()"
    - "[java.nio.IntBuffer].toString()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].toString()"
    - "[java.util.concurrent.CountDownLatch].toString()"
    - "[io.netty.handler.codec.redis.IntegerRedisMessage].toString()"
    - "[java.nio.ByteOrder].toString()"
    - "[java.util.OptionalLong].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].toString()"
    - "[io.netty.handler.codec.xml.XmlElementEnd].toString()"
    - "[java.io.ObjectStreamClass].toString()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].toString()"
    - "[java.util.concurrent.atomic.LongAdder].toString()"
    - "[java.util.Optional].toString()"
    - "[java.net.URI].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].toString()"
    - "[java.nio.FloatBuffer].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuestion].toString()"
    - "[io.netty.handler.ssl.OpenSslSessionId].toString()"
    - "[io.netty.channel.group.DefaultChannelGroup].toString()"
    - "[sun.security.x509.AuthorityKeyIdentifierExtension].toString()"
    - "[sun.security.util.ObjectIdentifier].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].toString()"
    - "[java.util.concurrent.LinkedBlockingDeque].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].toString()"
    - "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].toString()"
    - "[java.time.format.DateTimePrintContext].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].toString()"
    - "[sun.nio.fs.UnixPath].toString()"
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].toString()"
    - "[java.lang.Class].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].toString()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].toString()"
    - "[java.util.BitSet].toString()"
    - "[java.lang.StackFrameInfo].toString()"
    - "[javax.xml.namespace.QName].toString()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].toString()"
    - "[sun.security.x509.CertificateExtensions].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].toString()"
    - "[sun.security.x509.BasicConstraintsExtension].toString()"
    - "[java.util.concurrent.atomic.AtomicReferenceArray].toString()"
    - "[java.lang.invoke.Invokers].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].toString()"
    - "[java.time.LocalDateTime].toString()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].toString()"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[java.time.format.DateTimeFormatter].toString()"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].toString()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].toString()"
    - "[sun.security.x509.CertificateIssuerName].toString()"
    - "[java.lang.invoke.SerializedLambda].toString()"
    - "[sun.util.locale.LocaleExtensions].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].toString()"
    - "[sun.security.x509.NameConstraintsExtension].toString()"
    - "[java.net.NetworkInterface].toString()"
    - "[java.util.StringJoiner].toString()"
    - "[java.util.AbstractMap].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].toString()"
    - "[java.time.LocalTime].toString()"
    - "[java.security.ProtectionDomain].toString()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock].toString()"
    - "[io.netty.handler.codec.EmptyHeaders].toString()"
    - "[java.time.temporal.ValueRange].toString()"
    - "[java.time.Instant].toString()"
    - "[java.security.PrivilegedActionException].toString()"
    - "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].toString()"
    - "[sun.util.calendar.CalendarDate].toString()"
    - "[java.lang.module.Configuration].toString()"
    - "[java.security.AlgorithmParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].toString()"
    - "[java.lang.ThreadGroup].toString()"
    - "[io.netty.buffer.AbstractByteBufAllocator].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].toString()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].toString()"
    - "[java.nio.file.attribute.FileTime].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].toString()"
    - "[io.netty.handler.codec.xml.XmlNamespace].toString()"
    - "[io.netty.channel.unix.FileDescriptor].toString()"
    - "[java.lang.Double].toString()"
    - "[java.util.OptionalDouble].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].toString()"
    - "[io.netty.bootstrap.AbstractBootstrap].toString()"
    - "[io.netty.channel.WriteBufferWaterMark].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].toString()"
    - "[java.math.BigInteger].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].toString()"
    - "[java.time.format.Parsed].toString()"
    - "[java.time.OffsetDateTime].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString()"
    - "[java.time.OffsetTime].toString()"
    - "[java.util.WeakHashMap$Entry].toString()"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].toString()"
    - "[sun.security.x509.X509CertImpl].toString()"
    - "[java.time.ZoneOffset].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribePayload].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].toString()"
    - "[java.lang.reflect.Method].toString()"
    - "[io.netty.handler.codec.http2.Http2Flags].toString()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].toString()"
    - "[io.netty.buffer.CompositeByteBuf].toString()"
    - "[java.lang.Enum].toString()"
    - "[io.netty.handler.codec.http2.HpackHeaderField].toString()"
    - "[java.net.ServerSocket].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[java.time.zone.ZoneRules].toString()"
    - "[java.security.spec.PSSParameterSpec].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent].toString()"
    - "[sun.security.x509.X500Name].toString()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].toString()"
    - "[io.netty.channel.embedded.EmbeddedChannelId].toString()"
    - "[java.util.concurrent.locks.AbstractQueuedSynchronizer].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.util.regex.Pattern].toString()"
    - "[java.util.concurrent.atomic.AtomicLongArray].toString()"
    - "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].toString()"
    - "[sun.util.locale.Extension].toString()"
    - "[io.netty.handler.codec.smtp.SmtpCommand].toString()"
    - "[java.util.concurrent.ForkJoinPool].toString()"
    - "[sun.security.x509.CertificateVersion].toString()"
    - "[java.lang.ProcessHandleImpl].toString()"
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].toString()"
    - "[java.util.LongSummaryStatistics].toString()"
    - "[java.io.ObjectStreamField].toString()"
    - "[java.lang.ProcessImpl].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[io.netty.resolver.dns.InflightNameResolver].toString()"
    - "[java.nio.charset.CodingErrorAction].toString()"
    - "[java.lang.Float].toString()"
    - "[java.time.format.DecimalStyle].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].toString()"
    - "[sun.security.x509.IssuerAlternativeNameExtension].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[java.io.File].toString()"
    - "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].toString()"
    - "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].toString()"
    - "[java.util.Calendar].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].toString()"
    - "[java.nio.ByteBuffer].toString()"
    - "[io.netty.buffer.EmptyByteBuf].toString()"
    - "[io.netty.buffer.AbstractByteBuf].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock].toString()"
    - "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].toString()"
    - "[java.lang.Package].toString()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].toString()"
    - "[java.text.ParsePosition].toString()"
    - "[sun.util.locale.BaseLocale].toString()"
    - "[sun.reflect.annotation.AnnotationType].toString()"
    - "[java.lang.Character$Subset].toString()"
    - "[sun.security.util.LazyCodeSourcePermissionCollection].toString()"
    - "[java.lang.Object].toString()"
    - "[io.netty.handler.codec.xml.XmlElement].toString()"
    - "[java.lang.Character].toString()"
    - "[sun.net.www.MessageHeader].toString()"
    - "[java.lang.invoke.MethodType].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].toString()"
    - "[io.netty.handler.codec.http.QueryStringEncoder].toString()"
    - "[java.net.InterfaceAddress].toString()"
    - "[java.time.zone.ZoneOffsetTransitionRule].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].toString()"
    - "[io.netty.handler.codec.dns.DnsRecordType].toString()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].toString()"
    - "[java.lang.StackTraceElement].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toString()"
    - "[java.lang.ProcessBuilder$Redirect$4].toString()"
    - "[java.lang.invoke.LambdaForm].toString()"
    - "[io.netty.handler.codec.dns.DnsResponseCode].toString()"
    - "[io.netty.util.collection.LongObjectHashMap].toString()"
    - "[javax.naming.directory.ModificationItem].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].toString()"
    - "[sun.security.x509.PolicyMappingsExtension].toString()"
    - "[sun.security.x509.CertificatePoliciesExtension].toString()"
    - "[java.security.CodeSource].toString()"
    - "[java.security.Permission].toString()"
    - "[java.security.Timestamp].toString()"
    - "[io.netty.buffer.PoolArena].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].toString()"
    - "[java.nio.charset.CoderResult].toString()"
    - "[io.netty.channel.unix.PeerCredentials].toString()"
    - "[java.security.SecureRandomSpi].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[javax.security.auth.Subject].toString()"
    - "[javax.crypto.CryptoPermission].toString()"
    - "[java.util.Locale].toString()"
    - "[java.time.chrono.AbstractChronology].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsPtrRecord].toString()"
    - "[java.util.concurrent.locks.ReentrantLock].toString()"
    - "[java.lang.module.ResolvedModule].toString()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].toString()"
    - "[io.netty.handler.codec.http.HttpMethod].toString()"
    - "[java.lang.invoke.MemberName].toString()"
    - "[sun.security.x509.PrivateKeyUsageExtension].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].toString()"
    - "[io.netty.handler.traffic.TrafficCounter].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].toString()"
    - "[java.io.ByteArrayOutputStream].toString()"
    - "[sun.security.x509.CertificateValidity].toString()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].toString()"
    - "[java.time.Duration].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[sun.security.x509.X509CertInfo].toString()"
    - "[sun.security.x509.AVA].toString()"
    - "[java.lang.module.ModuleDescriptor$Opens].toString()"
    - "[java.math.BigDecimal].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].toString()"
    - "[java.lang.invoke.MethodHandleImpl$LoopClauses].toString()"
    - "[sun.security.x509.CertificateSerialNumber].toString()"
    - "[sun.nio.fs.UnixFileStore].toString()"
    - "[java.net.Socket].toString()"
    - "[javax.net.ssl.SNIHostName].toString()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].toString()"
    - "[java.util.Hashtable$Entry].toString()"
    - "[java.security.Signature].toString()"
    - "[java.lang.Short].toString()"
    - "[java.util.concurrent.CompletableFuture].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsOptPseudoRrRecord].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses].toString()"
    - "[java.util.concurrent.ThreadPoolExecutor].toString()"
    - "[java.util.concurrent.LinkedBlockingQueue].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].toString()"
    - "[java.time.ZoneId].toString()"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].toString()"
    - "[java.net.SocketImpl].toString()"
    - "[sun.security.x509.KeyIdentifier].toString()"
    - "[java.util.Hashtable].toString()"
    - "[sun.security.x509.GeneralSubtrees].toString()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].toString()"
    - "[java.text.FieldPosition].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent].toString()"
    - "[io.netty.util.DomainNameMapping].toString()"
    - "[sun.security.x509.AuthorityInfoAccessExtension].toString()"
    - "[java.util.concurrent.CopyOnWriteArrayList].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].toString()"
    - "[io.netty.buffer.PoolChunkList].toString()"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].toString()"
    - "[io.netty.buffer.PoolChunk].toString()"
    - "[io.netty.resolver.dns.DefaultDnsServerAddresses].toString()"
    - "[io.netty.util.internal.EmptyPriorityQueue].toString()"
    - "[io.netty.channel.unix.DomainSocketAddress].toString()"
    - "[javax.net.ssl.SNIServerName].toString()"
    - "[java.lang.ProcessBuilder$RedirectPipeImpl].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckPayload].toString()"
    - "[java.io.StringWriter].toString()"
    - "[io.netty.handler.codec.xml.XmlAttribute].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].toString()"
    - "[java.util.zip.ZipEntry].toString()"
    - "[java.util.UUID].toString()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].toString()"
    - "[java.security.Provider].toString()"
    - "[java.time.Period].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].toString()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].toString()"
    - "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].toString()"
    - "[java.lang.reflect.Parameter].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].toString()"
    - "[sun.security.x509.CertificateSubjectName].toString()"
    - "[io.netty.channel.DefaultChannelId].toString()"
    - "[java.util.Date].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame].toString()"
    - "[java.util.IntSummaryStatistics].toString()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[sun.security.x509.CRLDistributionPointsExtension].toString()"
    - "[io.netty.channel.DefaultAddressedEnvelope].toString()"
    - "[io.netty.channel.local.LocalAddress].toString()"
    - "[io.netty.util.collection.CharObjectHashMap].toString()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[io.netty.handler.codec.xml.XmlElementStart].toString()"
    - "[io.netty.handler.codec.DecoderResult].toString()"
    - "[io.netty.handler.ssl.SniCompletionEvent].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[io.netty.util.collection.ByteObjectHashMap].toString()"
    - "[java.util.AbstractMap$SimpleEntry].toString()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].toString()"
    - "[io.netty.util.collection.ShortObjectHashMap].toString()"
    - "[java.time.format.DateTimeParseContext].toString()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].toString()"
    - "[java.math.MathContext].toString()"
    - "[io.netty.handler.codec.http.QueryStringDecoder].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$NumberPrinterParser].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$1].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].toString()"
    - "[java.nio.LongBuffer].toString()"
    - "[java.util.DoubleSummaryStatistics].toString()"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].toString()"
    - "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].toString()"
    - "[java.lang.Long].toString()"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].toString()"
    - "[java.security.Provider$Service].toString()"
    - "[io.netty.channel.sctp.SctpMessage].toString()"
    - "[io.netty.util.collection.IntObjectHashMap].toString()"
    - "[io.netty.handler.codec.xml.XmlContent].toString()"
    - "[io.netty.handler.codec.http.HttpHeaders].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].toString()"
    - "[java.lang.invoke.MethodHandle].toString()"
    - "[java.lang.invoke.MethodTypeForm].toString()"
    - "[java.util.HashMap$Node].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].toString()"
    - "[java.lang.ProcessBuilder$Redirect$2].toString()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].toString()"
    - "[java.time.temporal.ChronoUnit].toString()"
    - "[io.netty.buffer.FixedCompositeByteBuf].toString()"
    - "[java.nio.channels.FileChannel$MapMode].toString()"
    - "[sun.security.x509.SubjectAlternativeNameExtension].toString()"
    - "[io.netty.channel.DefaultChannelPipeline].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].toString()"
    - "[java.nio.ShortBuffer].toString()"
    - "[io.netty.handler.codec.string.LineSeparator].toString()"
    - "[java.util.ResourceBundle$CacheKey].toString()"
    - "[io.netty.buffer.SwappedByteBuf].toString()"
    - "[java.security.cert.CertPath].toString()"
    - "[io.netty.channel.unix.Socket].toString()"
    - "[java.lang.module.ModuleDescriptor].toString()"
    - "[sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo].toString()"
    - "[java.lang.module.ModuleDescriptor$Version].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].toString()"
    - "[java.net.HttpCookie].toString()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].toString()"
    - "[sun.util.calendar.JulianCalendar$Date].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].toString()"
    - "[java.lang.ProcessBuilder$Redirect$5].toString()"
    - "[io.netty.channel.AbstractChannel].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].toString()"
    - "[sun.security.x509.GeneralSubtree].toString()"
    - "[sun.security.x509.GeneralName].toString()"
    - "[java.lang.Byte].toString()"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams].toString()"
    - "[io.netty.handler.codec.xml.XmlDTD].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].toString()"
    - "[io.netty.bootstrap.ServerBootstrapConfig].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandType].toString()"
    - "[java.lang.Module].toString()"
    - "[sun.security.util.BitArray].toString()"
    - "[io.netty.channel.AbstractChannelHandlerContext].toString()"
    - "[java.nio.channels.FileLock].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].toString()"
    - "[io.netty.handler.codec.http.HttpScheme].toString()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].toString()"
    - "[javax.security.auth.x500.X500Principal].toString()"
    - "[java.util.logging.Level].toString()"
    - "[java.lang.String].indexOf(int)"
    - "[java.lang.String].substring(int,int)"
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextInt()"
    - "[java.util.concurrent.ThreadLocalRandom].nextInt()"
    - "[java.util.Random].nextInt()"
    - "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 43
    EdgeCount: 558
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelId:156"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:162"
        BranchSideFuncs:
        - "substring(int,int)"
      - BranchSide: "io.netty.channel.DefaultChannelId:161"
        BranchSideFuncs:
        - "parseInt(java.lang.String)"
    - Branch String: "io.netty.channel.DefaultChannelId:168"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:173"
        BranchSideFuncs:
        - "threadLocalRandom()"
        - "warn(java.lang.String,java.lang.Object,java.lang.Object)"
        - "valueOf(int)"
        - "nextInt()"
      - BranchSide: "io.netty.channel.DefaultChannelId:172"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelId:135,1"
      Dst: "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    - Src: "io.netty.channel.DefaultChannelId:138,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    - Src: "io.netty.channel.DefaultChannelId:139,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    - Src: "io.netty.channel.DefaultChannelId:143,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.DefaultChannelId:148,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "io.netty.channel.DefaultChannelId:155,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "io.netty.channel.DefaultChannelId:157,1"
      Dst: "[java.lang.String].substring(int,int)"
    - Src: "io.netty.channel.DefaultChannelId:162,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelId:169,1"
      Dst: "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - Src: "io.netty.channel.DefaultChannelId:169,1"
      Dst: "[java.util.Random].nextInt()"
    - Src: "io.netty.channel.DefaultChannelId:170,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.DefaultChannelId:170,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.DefaultChannelId].defaultProcessId()"
    functionSourceFile: "io.netty.channel.DefaultChannelId"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 183
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].getClassLoader(java.lang.Class)"
    - "[io.netty.channel.DefaultChannelId].processHandlePid(java.lang.ClassLoader)"
    - "[io.netty.channel.DefaultChannelId].jmxPid(java.lang.ClassLoader)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelId:179"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:182"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelId:181"
        BranchSideFuncs:
        - "jmxPid(java.lang.ClassLoader)"
    Callsites:
    - Src: "io.netty.channel.DefaultChannelId:177,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getClassLoader(java.lang.Class)"
    - Src: "io.netty.channel.DefaultChannelId:178,1"
      Dst: "[io.netty.channel.DefaultChannelId].processHandlePid(java.lang.ClassLoader)"
    - Src: "io.netty.channel.DefaultChannelId:182,1"
      Dst: "[io.netty.channel.DefaultChannelId].jmxPid(java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelId].asShortText()"
    functionSourceFile: "io.netty.channel.DefaultChannelId"
    linkageType: ""
    functionLinenumber: 237
    functionLinenumberEnd: 243
    functionDepth: 4
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].hexDump(byte[],int,int)"
    functionUses: 5
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelId:239"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:242"
        BranchSideFuncs:
        - "hexDump(byte[],int,int)"
      - BranchSide: "io.netty.channel.DefaultChannelId:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelId:240,1"
      Dst: "[io.netty.buffer.ByteBufUtil].hexDump(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelId].asLongText()"
    functionSourceFile: "io.netty.channel.DefaultChannelId"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelId].newLongValue()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelId:248"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:251"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelId:250"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelId:249,1"
      Dst: "[io.netty.channel.DefaultChannelId].newLongValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelId].newLongValue()"
    functionSourceFile: "io.netty.channel.DefaultChannelId"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[io.netty.channel.DefaultChannelId].appendHexDumpField(java.lang.StringBuilder,int,int)"
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].substring(int,int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelId:262"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:263"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelId:262"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelId:262"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:263"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelId:262"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelId:255,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.channel.DefaultChannelId:257,1"
      Dst: "[io.netty.channel.DefaultChannelId].appendHexDumpField(java.lang.StringBuilder,int,int)"
    - Src: "io.netty.channel.DefaultChannelId:262,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.DefaultChannelId:263,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.channel.DefaultChannelId:263,1"
      Dst: "[java.lang.StringBuilder].substring(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelId].appendHexDumpField(java.lang.StringBuilder,int,int)"
    functionSourceFile: "io.netty.channel.DefaultChannelId"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.StringBuilder"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufUtil].hexDump(byte[],int,int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelId:267,1"
      Dst: "[io.netty.buffer.ByteBufUtil].hexDump(byte[],int,int)"
    - Src: "io.netty.channel.DefaultChannelId:267,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.DefaultChannelId:268,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelId].hashCode()"
    functionSourceFile: "io.netty.channel.DefaultChannelId"
    linkageType: ""
    functionLinenumber: 274
    functionLinenumberEnd: 276
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelId].compareTo(io.netty.channel.ChannelId)"
    functionSourceFile: "io.netty.channel.DefaultChannelId"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.channel.DefaultChannelId].asLongText()"
    - "[io.netty.channel.ChannelId].asLongText()"
    - "[java.lang.String].compareTo(java.lang.String)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelId:280"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:283"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelId:284"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:301"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelId:291"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:299"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelId:298"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelId:294"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:285"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelId:289,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.channel.DefaultChannelId:302,1"
      Dst: "[io.netty.channel.DefaultChannelId].asLongText()"
    - Src: "io.netty.channel.DefaultChannelId:302,1"
      Dst: "[io.netty.channel.ChannelId].asLongText()"
    - Src: "io.netty.channel.DefaultChannelId:302,1"
      Dst: "[java.lang.String].compareTo(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultChannelId].equals(java.lang.Object)"
    functionSourceFile: "io.netty.channel.DefaultChannelId"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 315
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(byte[],byte[])"
    functionUses: 10
    ICount: 19
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultChannelId:307"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:310"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelId:309"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.DefaultChannelId:310"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:313"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultChannelId:312"
        BranchSideFuncs:
        - "equals(byte[],byte[])"
    - Branch String: "io.netty.channel.DefaultChannelId:314"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:312"
        BranchSideFuncs:
        - "equals(byte[],byte[])"
    - Branch String: "io.netty.channel.DefaultChannelId:314"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultChannelId:312"
        BranchSideFuncs:
        - "equals(byte[],byte[])"
    Callsites:
    - Src: "io.netty.channel.DefaultChannelId:314,1"
      Dst: "[java.util.Arrays].equals(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.DefaultChannelId].toString()"
    functionSourceFile: "io.netty.channel.DefaultChannelId"
    linkageType: ""
    functionLinenumber: 318
    functionLinenumberEnd: 320
    functionDepth: 5
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelId].asShortText()"
    functionUses: 19
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelId:319,1"
      Dst: "[io.netty.channel.DefaultChannelId].asShortText()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultChannelId].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.channel.DefaultChannelId"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelId].compareTo(io.netty.channel.ChannelId)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultChannelId:37,1"
      Dst: "[io.netty.channel.DefaultChannelId].compareTo(io.netty.channel.ChannelId)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.MessageAggregator$1].<init>(io.netty.handler.codec.MessageAggregator,io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.MessageAggregator$1"
    linkageType: ""
    functionLinenumber: 226
    functionLinenumberEnd: 228
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.MessageAggregator"
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.MessageAggregator$1:227,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.MessageAggregator$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.MessageAggregator$1"
    linkageType: ""
    functionLinenumber: 229
    functionLinenumberEnd: 234
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 1
    ICount: 8
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.MessageAggregator$1:230"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.MessageAggregator$1:233"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
        - "cause()"
      - BranchSide: "io.netty.handler.codec.MessageAggregator$1:232"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.MessageAggregator$1:230,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.codec.MessageAggregator$1:231,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.codec.MessageAggregator$1:231,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.MessageAggregator$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.MessageAggregator$1"
    linkageType: ""
    functionLinenumber: 226
    functionLinenumberEnd: 228
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageAggregator$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.MessageAggregator$1:227,1"
      Dst: "[io.netty.handler.codec.MessageAggregator$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpMethod"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:37,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:37,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 61
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpMethod"
    - "java.lang.String"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 3
    ICount: 15
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:57,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:58,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].trailingHeaders()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 26
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 50
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].refCnt()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.buffer.EmptyByteBuf].refCnt()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 5
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:74,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].retain()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.FullHttpRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 6
    ICount: 4
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:79,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.FullHttpRequest"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:85,1"
      Dst: "[io.netty.buffer.ByteBuf].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].touch()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.FullHttpRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.SwappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.SimpleLeakAwareByteBuf:io.netty.buffer.UnreleasableByteBuf].touch()"
    - "[io.netty.buffer.ByteBuf].touch()"
    functionUses: 3
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:91,1"
      Dst: "[io.netty.buffer.ByteBuf].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.FullHttpRequest"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.SimpleLeakAwareByteBuf:io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 3
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:97,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].release()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.util.ReferenceCounted].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 25
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:103,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].release(int)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release(int)"
    - "[io.netty.buffer.WrappedByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release(int)"
    - "[io.netty.buffer.SwappedByteBuf].release(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release(int)"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf].release(int)"
    - "[io.netty.util.ReferenceCounted].release(int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:108,1"
      Dst: "[io.netty.util.ReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].setProtocolVersion(io.netty.handler.codec.http.HttpVersion)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.FullHttpRequest"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpRequest].setProtocolVersion(io.netty.handler.codec.http.HttpVersion)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:113,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].setProtocolVersion(io.netty.handler.codec.http.HttpVersion)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].setMethod(io.netty.handler.codec.http.HttpMethod)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.FullHttpRequest"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpMethod"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpRequest].setMethod(io.netty.handler.codec.http.HttpMethod)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:119,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].setMethod(io.netty.handler.codec.http.HttpMethod)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].setUri(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.FullHttpRequest"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpRequest].setUri(java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:125,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].setUri(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].copy()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.FullHttpRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:131,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:131,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:131,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 150
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.FullHttpRequest"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpRequest].method()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].uri()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpHeaders].copy()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].copy()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultHttpObject].decoderResult()"
    - "[io.netty.handler.codec.http.DefaultHttpObject].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    functionUses: 1
    ICount: 14
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:146,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:146,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].method()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:146,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].uri()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:147,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:147,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].copy()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:147,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].trailingHeaders()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:147,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:148,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpObject].decoderResult()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:148,1"
      Dst: "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].duplicate()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.FullHttpRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:136,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:136,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:136,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.FullHttpRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:141,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:141,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:141,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 171
    functionDepth: 7
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.buffer.ByteBufUtil].isAccessible(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].hashCode()"
    - "[io.netty.buffer.AbstractByteBuf].hashCode()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hashCode()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hashCode()"
    - "[io.netty.buffer.WrappedByteBuf].hashCode()"
    - "[io.netty.buffer.EmptyByteBuf].hashCode()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].hashCode()"
    - "[java.lang.Object].hashCode()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].hashCode()"
    - "[io.netty.buffer.ByteBuf].hashCode()"
    functionUses: 5
    ICount: 24
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultFullHttpRequest:155"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpRequest:170"
        BranchSideFuncs:
        - "isAccessible(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpRequest:169"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultFullHttpRequest:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpRequest:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:156,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:156,1"
      Dst: "[io.netty.buffer.ByteBufUtil].isAccessible(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:158,1"
      Dst: "[io.netty.buffer.ByteBuf].hashCode()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:166,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].trailingHeaders()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:166,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:167,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.ByteBufUtil].isAccessible(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.ByteBufUtil"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].isAccessible()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].isAccessible()"
    - "[io.netty.buffer.SwappedByteBuf].isAccessible()"
    - "[io.netty.buffer.ByteBuf].isAccessible()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].isAccessible()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isAccessible()"
    - "[io.netty.buffer.CompositeByteBuf].isAccessible()"
    functionUses: 2
    ICount: 3
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufUtil:116,1"
      Dst: "[io.netty.buffer.ByteBuf].isAccessible()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 184
    functionDepth: 7
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpRequest].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.AbstractByteBuf].equals(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].trailingHeaders()"
    - "[io.netty.buffer.ByteBuf].equals(java.lang.Object)"
    functionUses: 9
    ICount: 20
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultFullHttpRequest:175"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpRequest:179"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpRequest:178"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultFullHttpRequest:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpRequest:-1"
        BranchSideFuncs:
        - "content()"
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpRequest:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultFullHttpRequest:182"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpRequest:-1"
        BranchSideFuncs:
        - "trailingHeaders()"
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpRequest:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultFullHttpRequest:183"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpRequest:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:181,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpRequest].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:182,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:182,1"
      Dst: "[io.netty.buffer.ByteBuf].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:183,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].trailingHeaders()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:183,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpRequest].toString()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpRequest"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 189
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[io.netty.handler.codec.http.HttpMessageUtil].appendFullRequest(java.lang.StringBuilder,io.netty.handler.codec.http.FullHttpRequest)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 20
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:188,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:188,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].appendFullRequest(java.lang.StringBuilder,io.netty.handler.codec.http.FullHttpRequest)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpRequest:188,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils$2].<init>()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils$2"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils$2:61,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils$2].run()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils$2"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "java.lang.reflect.Method"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils$2:64,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].directBuffer()"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufAllocator].directBuffer()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:110,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].directBuffer(int)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:128,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].buffer(int,int)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufAllocator].heapBuffer(int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:138,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].heapBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].directBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].directBuffer(int,int)"
    - "[io.netty.buffer.ByteBufAllocator].directBuffer(int,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:148,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].directBuffer(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].wrappedBuffer(long,int,boolean)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "long"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedUnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,long,int,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:218,1"
      Dst: "[io.netty.buffer.WrappedUnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,long,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.WrappedUnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,long,int,boolean)"
    functionSourceFile: "io.netty.buffer.WrappedUnpooledUnsafeDirectByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "long"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].directBuffer(long,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,boolean)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.WrappedUnpooledUnsafeDirectByteBuf:25,1"
      Dst: "[io.netty.util.internal.PlatformDependent].directBuffer(long,int)"
    - Src: "io.netty.buffer.WrappedUnpooledUnsafeDirectByteBuf:25,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteBuffer,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[][])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "byte[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].wrappedBuffer(int,byte[][])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:244,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(int,byte[][])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].wrappedBuffer(int,byte[][])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "byte[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].wrappedBuffer(int,io.netty.buffer.CompositeByteBuf$ByteWrapper,java.lang.Object[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:297,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(int,io.netty.buffer.CompositeByteBuf$ByteWrapper,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].wrappedBuffer(int,io.netty.buffer.CompositeByteBuf$ByteWrapper,java.lang.Object[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.buffer.CompositeByteBuf$ByteWrapper"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf$ByteWrapper].isEmpty(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf$ByteWrapper].wrap(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int,io.netty.buffer.CompositeByteBuf$ByteWrapper,java.lang.Object[],int)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:272"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:288"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:287"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:277"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:288"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:287"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:279"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:282"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:281"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:282"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:277"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:276"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:272,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$ByteWrapper].isEmpty(java.lang.Object)"
    - Src: "io.netty.buffer.Unpooled:273,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$ByteWrapper].wrap(java.lang.Object)"
    - Src: "io.netty.buffer.Unpooled:283,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int,io.netty.buffer.CompositeByteBuf$ByteWrapper,java.lang.Object[],int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int,io.netty.buffer.CompositeByteBuf$ByteWrapper,java.lang.Object[],int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "boolean"
    - "int"
    - "io.netty.buffer.CompositeByteBuf$ByteWrapper"
    - "java.lang.Object[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].addComponents0(boolean,int,io.netty.buffer.CompositeByteBuf$ByteWrapper,java.lang.Object[],int)"
    - "[io.netty.buffer.CompositeByteBuf].consolidateIfNeeded()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].setIndex(int,int)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:133,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,boolean,int,int)"
    - Src: "io.netty.buffer.CompositeByteBuf:135,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponents0(boolean,int,io.netty.buffer.CompositeByteBuf$ByteWrapper,java.lang.Object[],int)"
    - Src: "io.netty.buffer.CompositeByteBuf:136,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].consolidateIfNeeded()"
    - Src: "io.netty.buffer.CompositeByteBuf:137,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].capacity()"
    - Src: "io.netty.buffer.CompositeByteBuf:137,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].setIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.CompositeByteBuf].addComponents0(boolean,int,io.netty.buffer.CompositeByteBuf$ByteWrapper,java.lang.Object[],int)"
    functionSourceFile: "io.netty.buffer.CompositeByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "int"
    argCount: 5
    argTypes:
    - "boolean"
    - "int"
    - "io.netty.buffer.CompositeByteBuf$ByteWrapper"
    - "java.lang.Object[]"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf$ByteWrapper].isEmpty(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf$ByteWrapper].wrap(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf].addComponent0(boolean,int,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.CompositeByteBuf:427"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:440"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:439"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:429"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:432"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:431"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:432"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:424"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:423"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.CompositeByteBuf:435"
      Branch Sides:
      - BranchSide: "io.netty.buffer.CompositeByteBuf:424"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.CompositeByteBuf:423"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.CompositeByteBuf:424,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].checkComponentIndex(int)"
    - Src: "io.netty.buffer.CompositeByteBuf:432,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$ByteWrapper].isEmpty(java.lang.Object)"
    - Src: "io.netty.buffer.CompositeByteBuf:433,1"
      Dst: "[io.netty.buffer.CompositeByteBuf$ByteWrapper].wrap(java.lang.Object)"
    - Src: "io.netty.buffer.CompositeByteBuf:433,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addComponent0(boolean,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.buffer.Unpooled].wrappedBuffer(java.nio.ByteBuffer[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].wrappedBuffer(int,java.nio.ByteBuffer[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:264,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(int,java.nio.ByteBuffer[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].wrappedBuffer(int,java.nio.ByteBuffer[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].wrappedBuffer(int,io.netty.buffer.CompositeByteBuf$ByteWrapper,java.lang.Object[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:340,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(int,io.netty.buffer.CompositeByteBuf$ByteWrapper,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].copiedBuffer(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:376"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:379"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:378"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:379,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - Src: "io.netty.buffer.Unpooled:380,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "io.netty.buffer.Unpooled:381,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].copiedBuffer(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.Buffer].remaining()"
    - "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - "[java.nio.ByteBuffer].duplicate()"
    - "[java.nio.ByteBuffer].get(byte[])"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[java.nio.ByteBuffer].order()"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:392"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:395"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:394"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:391,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.Unpooled:395,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - Src: "io.netty.buffer.Unpooled:398,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    - Src: "io.netty.buffer.Unpooled:399,1"
      Dst: "[java.nio.ByteBuffer].get(byte[])"
    - Src: "io.netty.buffer.Unpooled:400,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.buffer.Unpooled:400,1"
      Dst: "[java.nio.ByteBuffer].order()"
    - Src: "io.netty.buffer.Unpooled:400,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].copiedBuffer(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:411"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:416"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:415"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:410,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.Unpooled:412,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.buffer.Unpooled:413,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.Unpooled:413,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].copiedBuffer(byte[][])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "byte[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].copiedBuffer(byte[])"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:431"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:434"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:433"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:440"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:448"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:447"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:441"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:448"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:452"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:451"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:453"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:458"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:434,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBuffer(byte[])"
    - Src: "io.netty.buffer.Unpooled:442,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.Unpooled:452,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - Src: "io.netty.buffer.Unpooled:455,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "io.netty.buffer.Unpooled:459,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.Unpooled].copiedBuffer(io.netty.buffer.ByteBuf[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].copiedBuffer(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.buffer.ByteBuf].order()"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:483"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:502"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:501"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:485"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:488"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:487"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:488"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:492"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:491"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:493"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:498"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:497"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:494"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:481"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:480"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:502"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:506"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:505"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:507"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:513"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:477,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBuffer(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.buffer.Unpooled:484,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.Unpooled:489,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.Unpooled:494,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    - Src: "io.netty.buffer.Unpooled:494,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "io.netty.buffer.Unpooled:506,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - Src: "io.netty.buffer.Unpooled:510,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.buffer.Unpooled:510,1"
      Dst: "[io.netty.buffer.ByteBuf].getBytes(int,byte[],int,int)"
    - Src: "io.netty.buffer.Unpooled:514,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.buffer.Unpooled:514,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 20
    CyclomaticComplexity: 5
  - functionName: "[io.netty.buffer.Unpooled].copiedBuffer(java.nio.ByteBuffer[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].copiedBuffer(java.nio.ByteBuffer)"
    - "[java.nio.Buffer].remaining()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].order()"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - "[java.nio.ByteBuffer].duplicate()"
    - "[java.nio.ByteBuffer].get(byte[],int,int)"
    - "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    functionUses: 0
    ICount: 51
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:538"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:557"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:556"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:540"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:543"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:542"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:543"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:547"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:546"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:548"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:553"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:552"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:549"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:536"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:535"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:557"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:561"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:560"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:562"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:570"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:532,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBuffer(java.nio.ByteBuffer)"
    - Src: "io.netty.buffer.Unpooled:539,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.Unpooled:544,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.Unpooled:549,1"
      Dst: "[java.nio.ByteBuffer].order()"
    - Src: "io.netty.buffer.Unpooled:549,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "io.netty.buffer.Unpooled:561,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - Src: "io.netty.buffer.Unpooled:565,1"
      Dst: "[java.nio.ByteBuffer].duplicate()"
    - Src: "io.netty.buffer.Unpooled:567,1"
      Dst: "[java.nio.ByteBuffer].get(byte[],int,int)"
    - Src: "io.netty.buffer.Unpooled:571,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedBuffer(byte[])"
    - Src: "io.netty.buffer.Unpooled:571,1"
      Dst: "[io.netty.buffer.ByteBuf].order(java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 20
    CyclomaticComplexity: 5
  - functionName: "[io.netty.buffer.Unpooled].copiedBuffer(java.lang.CharSequence,int,int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.nio.CharBuffer].hasArray()"
    - "[java.nio.CharBuffer].array()"
    - "[java.nio.CharBuffer].arrayOffset()"
    - "[java.nio.Buffer].position()"
    - "[io.netty.buffer.Unpooled].copiedBuffer(char[],int,int,java.nio.charset.Charset)"
    - "[java.nio.CharBuffer].slice()"
    - "[java.nio.CharBuffer].limit(int)"
    - "[java.nio.CharBuffer].position(int)"
    - "[io.netty.buffer.Unpooled].copiedBuffer(java.nio.CharBuffer,java.nio.charset.Charset)"
    - "[java.nio.CharBuffer].wrap(java.lang.CharSequence,int,int)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:634"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:638"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:637"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:638"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:653"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:652"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:640"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:646"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:633,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.Unpooled:640,1"
      Dst: "[java.nio.CharBuffer].hasArray()"
    - Src: "io.netty.buffer.Unpooled:642,1"
      Dst: "[java.nio.CharBuffer].array()"
    - Src: "io.netty.buffer.Unpooled:643,1"
      Dst: "[java.nio.CharBuffer].arrayOffset()"
    - Src: "io.netty.buffer.Unpooled:643,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.buffer.Unpooled:641,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBuffer(char[],int,int,java.nio.charset.Charset)"
    - Src: "io.netty.buffer.Unpooled:647,1"
      Dst: "[java.nio.CharBuffer].slice()"
    - Src: "io.netty.buffer.Unpooled:648,1"
      Dst: "[java.nio.CharBuffer].limit(int)"
    - Src: "io.netty.buffer.Unpooled:649,1"
      Dst: "[java.nio.CharBuffer].position(int)"
    - Src: "io.netty.buffer.Unpooled:650,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBuffer(java.nio.CharBuffer,java.nio.charset.Charset)"
    - Src: "io.netty.buffer.Unpooled:653,1"
      Dst: "[java.nio.CharBuffer].wrap(java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].copiedBuffer(char[],int,int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "char[]"
    - "int"
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.nio.CharBuffer].wrap(char[],int,int)"
    - "[io.netty.buffer.Unpooled].copiedBuffer(java.nio.CharBuffer,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:675"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:678"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:677"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:674,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.Unpooled:678,1"
      Dst: "[java.nio.CharBuffer].wrap(char[],int,int)"
    - Src: "io.netty.buffer.Unpooled:678,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBuffer(java.nio.CharBuffer,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].copiedBuffer(char[],java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 8
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "char[]"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.Unpooled].copiedBuffer(char[],int,int,java.nio.charset.Charset)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:663,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.Unpooled:664,1"
      Dst: "[io.netty.buffer.Unpooled].copiedBuffer(char[],int,int,java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].copyInt(int)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:707,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.buffer.Unpooled:708,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].copyInt(int[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:716"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:717"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:716"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:716"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:719"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:718"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:720"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:722"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:719,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.buffer.Unpooled:721,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.Unpooled].copyShort(int)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:730,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.buffer.Unpooled:731,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].copyShort(short[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "short[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:739"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:740"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:739"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:739"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:742"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:741"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:743"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:745"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:742,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.buffer.Unpooled:744,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.Unpooled].copyShort(int[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeShort(int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:753"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:754"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:753"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:753"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:756"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:755"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:757"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:759"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:756,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.buffer.Unpooled:758,1"
      Dst: "[io.netty.buffer.ByteBuf].writeShort(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.Unpooled].copyMedium(int)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeMedium(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:767,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.buffer.Unpooled:768,1"
      Dst: "[io.netty.buffer.ByteBuf].writeMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].copyMedium(int[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeMedium(int)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:776"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:777"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:776"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:776"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:779"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:778"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:780"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:782"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:779,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.buffer.Unpooled:781,1"
      Dst: "[io.netty.buffer.ByteBuf].writeMedium(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.Unpooled].copyLong(long)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeLong(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:790,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.buffer.Unpooled:791,1"
      Dst: "[io.netty.buffer.ByteBuf].writeLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].copyLong(long[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "long[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeLong(long)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:799"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:800"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:799"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:799"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:802"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:801"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:803"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:805"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:802,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.buffer.Unpooled:804,1"
      Dst: "[io.netty.buffer.ByteBuf].writeLong(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.Unpooled].copyBoolean(boolean)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBoolean(boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:813,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.buffer.Unpooled:814,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBoolean(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].copyBoolean(boolean[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "boolean[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBoolean(boolean)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:822"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:823"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:822"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:822"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:825"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:824"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:826"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:828"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:825,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.buffer.Unpooled:827,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBoolean(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.Unpooled].copyFloat(float)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeFloat(float)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:836,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.buffer.Unpooled:837,1"
      Dst: "[io.netty.buffer.ByteBuf].writeFloat(float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].copyFloat(float[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "float[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeFloat(float)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:845"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:846"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:845"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:845"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:848"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:847"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:849"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:851"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:848,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.buffer.Unpooled:850,1"
      Dst: "[io.netty.buffer.ByteBuf].writeFloat(float)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.Unpooled].copyDouble(double)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeDouble(double)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:859,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.buffer.Unpooled:860,1"
      Dst: "[io.netty.buffer.ByteBuf].writeDouble(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].copyDouble(double[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "double[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeDouble(double)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:868"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:869"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:868"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:868"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:871"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:870"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.Unpooled:872"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:874"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:871,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.buffer.Unpooled:873,1"
      Dst: "[io.netty.buffer.ByteBuf].writeDouble(double)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.Unpooled].unreleasableBuffer(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: 881
    functionLinenumberEnd: 883
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.UnreleasableByteBuf].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 12
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:882,1"
      Dst: "[io.netty.buffer.UnreleasableByteBuf].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].unmodifiableBuffer(io.netty.buffer.ByteBuf[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].wrappedUnmodifiableBuffer(boolean,io.netty.buffer.ByteBuf[])"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:893,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedUnmodifiableBuffer(boolean,io.netty.buffer.ByteBuf[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].wrappedUnmodifiableBuffer(boolean,io.netty.buffer.ByteBuf[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.buffer.ByteBuf[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].asReadOnly()"
    - "[java.util.Arrays].copyOf(java.lang.Object[],int,java.lang.Class)"
    - "[io.netty.buffer.FixedCompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf[])"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.Unpooled:913"
      Branch Sides:
      - BranchSide: "io.netty.buffer.Unpooled:916"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.Unpooled:915"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:911,1"
      Dst: "[io.netty.buffer.ByteBuf].asReadOnly()"
    - Src: "io.netty.buffer.Unpooled:914,1"
      Dst: "[java.util.Arrays].copyOf(java.lang.Object[],int,java.lang.Class)"
    - Src: "io.netty.buffer.Unpooled:916,1"
      Dst: "[io.netty.buffer.FixedCompositeByteBuf].<init>(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.Unpooled].wrappedUnmodifiableBuffer(io.netty.buffer.ByteBuf[])"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].wrappedUnmodifiableBuffer(boolean,io.netty.buffer.ByteBuf[])"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:903,1"
      Dst: "[io.netty.buffer.Unpooled].wrappedUnmodifiableBuffer(boolean,io.netty.buffer.ByteBuf[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.Unpooled].<init>()"
    functionSourceFile: "io.netty.buffer.Unpooled"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.Unpooled:920,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibEncoder$2].<init>(io.netty.handler.codec.compression.JdkZlibEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibEncoder$2"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 308
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.compression.JdkZlibEncoder"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder$2:307,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibEncoder$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibEncoder$2"
    linkageType: ""
    functionLinenumber: 309
    functionLinenumberEnd: 312
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder$2:310,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibEncoder$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibEncoder$2"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 308
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder$2:307,1"
      Dst: "[io.netty.handler.codec.compression.JdkZlibEncoder$2].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibEncoder$3].<init>(io.netty.handler.codec.compression.JdkZlibEncoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibEncoder$3"
    linkageType: ""
    functionLinenumber: 315
    functionLinenumberEnd: 317
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.compression.JdkZlibEncoder"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder$3:316,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    functionSourceFile: "io.netty.handler.codec.compression.JdkZlibEncoder$3"
    linkageType: ""
    functionLinenumber: 318
    functionLinenumberEnd: 321
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 49
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.JdkZlibEncoder$3:319,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslServerCertificateCallback].<init>(io.netty.handler.ssl.OpenSslEngineMap,io.netty.handler.ssl.OpenSslKeyMaterialManager)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslServerCertificateCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.OpenSslEngineMap"
    - "io.netty.handler.ssl.OpenSslKeyMaterialManager"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslServerCertificateCallback:222,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslServerCertificateCallback].handle(long,byte[],byte[][])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslServerCertificateCallback"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "byte[]"
    - "byte[][]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslEngineMap].get(long)"
    - "[io.netty.handler.ssl.OpenSslKeyMaterialManager].setKeyMaterialServerSide(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].initHandshakeException(java.lang.Throwable)"
    - "[javax.net.ssl.SSLException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslServerCertificateCallback:230"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslServerCertificateCallback:236"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslServerCertificateCallback:241"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslServerCertificateCallback:237"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslServerCertificateCallback:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslServerCertificateCallback:229,1"
      Dst: "[io.netty.handler.ssl.OpenSslEngineMap].get(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslServerCertificateCallback:237,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterialManager].setKeyMaterialServerSide(io.netty.handler.ssl.ReferenceCountedOpenSslEngine)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslServerCertificateCallback:239,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].initHandshakeException(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslServerCertificateCallback:244,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameAdapter].onDataRead(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameAdapter"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "int"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 9
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameAdapter:30,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameAdapter"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameAdapter].onHeadersRead(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameAdapter"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "short"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameAdapter].onPriorityRead(io.netty.channel.ChannelHandlerContext,int,int,short,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameAdapter"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    - "short"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameAdapter].onRstStreamRead(io.netty.channel.ChannelHandlerContext,int,long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameAdapter"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameAdapter].onSettingsAckRead(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameAdapter"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameAdapter].onSettingsRead(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameAdapter"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameAdapter].onPingRead(io.netty.channel.ChannelHandlerContext,long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameAdapter"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameAdapter].onPingAckRead(io.netty.channel.ChannelHandlerContext,long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameAdapter"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameAdapter].onPushPromiseRead(io.netty.channel.ChannelHandlerContext,int,int,io.netty.handler.codec.http2.Http2Headers,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameAdapter"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameAdapter].onGoAwayRead(io.netty.channel.ChannelHandlerContext,int,long,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameAdapter"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameAdapter].onWindowUpdateRead(io.netty.channel.ChannelHandlerContext,int,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameAdapter"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameAdapter].onUnknownFrame(io.netty.channel.ChannelHandlerContext,byte,int,io.netty.handler.codec.http2.Http2Flags,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameAdapter"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "byte"
    - "int"
    - "io.netty.handler.codec.http2.Http2Flags"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ByteToMessageCodec$1].<init>(io.netty.handler.codec.ByteToMessageCodec)"
    functionSourceFile: "io.netty.handler.codec.ByteToMessageCodec$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.ByteToMessageCodec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ByteToMessageCodec$1:39,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ByteToMessageCodec$1].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.ByteToMessageCodec$1"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageCodec].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    functionUses: 1
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ByteToMessageCodec$1:42,1"
      Dst: "[io.netty.handler.codec.ByteToMessageCodec].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ByteToMessageCodec$1].decodeLast(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.ByteToMessageCodec$1"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageCodec].decodeLast(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ByteToMessageCodec$1:47,1"
      Dst: "[io.netty.handler.codec.ByteToMessageCodec].decodeLast(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension].rsv()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension].newExtensionEncoder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateEncoder].<init>(int,int,boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider$1].encoderFilter()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider].encoderFilter()"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension:115,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider].encoderFilter()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension:115,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateEncoder].<init>(int,int,boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension].newExtensionDecoder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionDecoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder].<init>(boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider$1].decoderFilter()"
    - "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider].decoderFilter()"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension:120,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilterProvider].decoderFilter()"
    - Src: "io.netty.handler.codec.http.websocketx.extensions.compression.DeflateFrameClientExtensionHandshaker$DeflateFrameClientExtension:120,1"
      Dst: "[io.netty.handler.codec.http.websocketx.extensions.compression.PerFrameDeflateDecoder].<init>(boolean,io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop].selectorProvider()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.nio.channels.spi.SelectorProvider"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop].newTaskQueue(int)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 277
    functionLinenumberEnd: 279
    functionDepth: 4
    returnType: "java.util.Queue"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoop].newTaskQueue0(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:278,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].newTaskQueue0(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop].register(java.nio.channels.SelectableChannel,int,io.netty.channel.nio.NioTask)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.nio.channels.SelectableChannel"
    - "int"
    - "io.netty.channel.nio.NioTask"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.nio.channels.SelectableChannel].validOps()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].isShutdown()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.nio.NioEventLoop].register0(java.nio.channels.SelectableChannel,int,io.netty.channel.nio.NioTask)"
    - "[io.netty.channel.nio.NioEventLoop$5].<init>(io.netty.channel.nio.NioEventLoop,java.nio.channels.SelectableChannel,int,io.netty.channel.nio.NioTask)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].submit(java.lang.Runnable)"
    - "[io.netty.util.concurrent.Future].sync()"
    - "[java.lang.Thread].currentThread()"
    - "[java.lang.Thread].interrupt()"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:294"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:297"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:296"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:297"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:301"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:300"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:303"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:307"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:306"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:307"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:313"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:312"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:293,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.nio.NioEventLoop:295,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.channel.nio.NioEventLoop:297,1"
      Dst: "[java.nio.channels.SelectableChannel].validOps()"
    - Src: "io.netty.channel.nio.NioEventLoop:298,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.nio.NioEventLoop:298,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.nio.NioEventLoop:298,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.nio.NioEventLoop:299,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.channel.nio.NioEventLoop:299,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.nio.NioEventLoop:303,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].isShutdown()"
    - Src: "io.netty.channel.nio.NioEventLoop:304,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.channel.nio.NioEventLoop:307,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - Src: "io.netty.channel.nio.NioEventLoop:308,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].register0(java.nio.channels.SelectableChannel,int,io.netty.channel.nio.NioTask)"
    - Src: "io.netty.channel.nio.NioEventLoop:313,1"
      Dst: "[io.netty.channel.nio.NioEventLoop$5].<init>(io.netty.channel.nio.NioEventLoop,java.nio.channels.SelectableChannel,int,io.netty.channel.nio.NioTask)"
    - Src: "io.netty.channel.nio.NioEventLoop:313,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].submit(java.lang.Runnable)"
    - Src: "io.netty.channel.nio.NioEventLoop:318,1"
      Dst: "[io.netty.util.concurrent.Future].sync()"
    - Src: "io.netty.channel.nio.NioEventLoop:321,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "io.netty.channel.nio.NioEventLoop:321,1"
      Dst: "[java.lang.Thread].interrupt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.nio.NioEventLoop].register0(java.nio.channels.SelectableChannel,int,io.netty.channel.nio.NioTask)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 327
    functionLinenumberEnd: 333
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.nio.channels.SelectableChannel"
    - "int"
    - "io.netty.channel.nio.NioTask"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.EventLoopException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.nio.channels.SelectableChannel].register(java.nio.channels.Selector,int,java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:328,1"
      Dst: "[java.nio.channels.SelectableChannel].register(java.nio.channels.Selector,int,java.lang.Object)"
    - Src: "io.netty.channel.nio.NioEventLoop:330,1"
      Dst: "[io.netty.channel.EventLoopException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.EventLoopException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.EventLoopException"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.EventLoopException:30,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop$5].<init>(io.netty.channel.nio.NioEventLoop,java.nio.channels.SelectableChannel,int,io.netty.channel.nio.NioTask)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$5"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.nio.NioEventLoop"
    - "java.nio.channels.SelectableChannel"
    - "int"
    - "io.netty.channel.nio.NioTask"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$5:313,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop].getIoRatio()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop].registeredChannels()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.Selector].keys()"
    - "[java.util.Set].size()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:373,1"
      Dst: "[java.nio.channels.Selector].keys()"
    - Src: "io.netty.channel.nio.NioEventLoop:373,1"
      Dst: "[java.util.Set].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop].registeredChannelsIterator()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.nio.channels.Selector].keys()"
    - "[java.util.Set].isEmpty()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].empty()"
    - "[io.netty.channel.nio.NioEventLoop$7].<init>(io.netty.channel.nio.NioEventLoop,java.util.Set)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:378"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:379"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:378"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:378"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:379"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:378"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:380"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:383"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:382"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:378,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - Src: "io.netty.channel.nio.NioEventLoop:378,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.nio.NioEventLoop:379,1"
      Dst: "[java.nio.channels.Selector].keys()"
    - Src: "io.netty.channel.nio.NioEventLoop:380,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "io.netty.channel.nio.NioEventLoop:381,1"
      Dst: "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].empty()"
    - Src: "io.netty.channel.nio.NioEventLoop:383,1"
      Dst: "[io.netty.channel.nio.NioEventLoop$7].<init>(io.netty.channel.nio.NioEventLoop,java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.nio.NioEventLoop$7].<init>(io.netty.channel.nio.NioEventLoop,java.util.Set)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$7"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.nio.NioEventLoop"
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.Set].iterator()"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$7:383,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.nio.NioEventLoop$7:385,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.nio.NioEventLoop$7:386,1"
      Dst: "[java.util.Set].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop].run()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 504
    functionLinenumberEnd: 606
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultSelectStrategy].calculateStrategy(io.netty.util.IntSupplier,boolean)"
    - "[io.netty.channel.SingleThreadEventLoop].hasTasks()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].nextScheduledTaskDeadlineNanos()"
    - "[java.util.concurrent.atomic.AtomicLong].set(long)"
    - "[io.netty.channel.nio.NioEventLoop].select(long)"
    - "[java.util.concurrent.atomic.AtomicLong].lazySet(long)"
    - "[io.netty.channel.nio.NioEventLoop].rebuildSelector0()"
    - "[io.netty.channel.nio.NioEventLoop].handleLoopException(java.lang.Throwable)"
    - "[io.netty.channel.nio.NioEventLoop].processSelectedKeys()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].runAllTasks()"
    - "[java.lang.System].nanoTime()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].runAllTasks(long)"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.nio.NioEventLoop].unexpectedSelectorWakeup(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].isShuttingDown()"
    - "[io.netty.channel.nio.NioEventLoop].closeAll()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].confirmShutdown()"
    - "[io.netty.channel.SelectStrategy].calculateStrategy(io.netty.util.IntSupplier,boolean)"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 175
    EdgeCount: 72
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:594"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:604"
        BranchSideFuncs:
        - "confirmShutdown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:603"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:596"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:604"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:603"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:520"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:511"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:510"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:525"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:511"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:510"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:594"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:604"
        BranchSideFuncs:
        - "confirmShutdown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:603"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:596"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:604"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:603"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:550"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:511"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:510"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:552"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:511"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:510"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:559"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:511"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:510"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:572"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:511"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:510"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:572"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:511"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:510"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:573"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:511"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:510"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:573"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:511"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:510"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:578"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:594"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:593"
        BranchSideFuncs:
        - "isShuttingDown()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:594"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:604"
        BranchSideFuncs:
        - "confirmShutdown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:603"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:596"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:604"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:603"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:583"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:594"
        BranchSideFuncs:
        - "nanoTime()"
        - "processSelectedKeys()"
        - "isDebugEnabled()"
        - "append(java.lang.String)"
        - "toString()"
        - "set(long)"
        - "rebuildSelector0()"
        - "getSimpleName()"
        - "select(long)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "unexpectedSelectorWakeup(int)"
        - "<init>()"
        - "hasTasks()"
        - "nextScheduledTaskDeadlineNanos()"
        - "confirmShutdown()"
        - "lazySet(long)"
        - "valueOf(int)"
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:593"
        BranchSideFuncs:
        - "isShuttingDown()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:594"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:604"
        BranchSideFuncs:
        - "confirmShutdown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:603"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:596"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:604"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:603"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:594"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:604"
        BranchSideFuncs:
        - "confirmShutdown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:603"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:596"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:604"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:603"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:594"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:604"
        BranchSideFuncs:
        - "confirmShutdown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:603"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:596"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:604"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:603"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:510,1"
      Dst: "[io.netty.channel.SingleThreadEventLoop].hasTasks()"
    - Src: "io.netty.channel.nio.NioEventLoop:510,1"
      Dst: "[io.netty.channel.SelectStrategy].calculateStrategy(io.netty.util.IntSupplier,boolean)"
    - Src: "io.netty.channel.nio.NioEventLoop:594,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].isShuttingDown()"
    - Src: "io.netty.channel.nio.NioEventLoop:595,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].closeAll()"
    - Src: "io.netty.channel.nio.NioEventLoop:596,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].confirmShutdown()"
    - Src: "io.netty.channel.nio.NioEventLoop:603,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].handleLoopException(java.lang.Throwable)"
    - Src: "io.netty.channel.nio.NioEventLoop:519,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].nextScheduledTaskDeadlineNanos()"
    - Src: "io.netty.channel.nio.NioEventLoop:523,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].set(long)"
    - Src: "io.netty.channel.nio.NioEventLoop:526,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].select(long)"
    - Src: "io.netty.channel.nio.NioEventLoop:531,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].lazySet(long)"
    - Src: "io.netty.channel.nio.NioEventLoop:539,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].rebuildSelector0()"
    - Src: "io.netty.channel.nio.NioEventLoop:553,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].processSelectedKeys()"
    - Src: "io.netty.channel.nio.NioEventLoop:557,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].runAllTasks()"
    - Src: "io.netty.channel.nio.NioEventLoop:560,1"
      Dst: "[java.lang.System].nanoTime()"
    - Src: "io.netty.channel.nio.NioEventLoop:566,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].runAllTasks(long)"
    - Src: "io.netty.channel.nio.NioEventLoop:573,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.channel.nio.NioEventLoop:575,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.nio.NioEventLoop:574,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.nio.NioEventLoop:578,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].unexpectedSelectorWakeup(int)"
    - Src: "io.netty.channel.nio.NioEventLoop:584,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.nio.NioEventLoop:584,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "io.netty.channel.nio.NioEventLoop:584,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.nio.NioEventLoop:584,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 69
    CyclomaticComplexity: 10
  - functionName: "[io.netty.channel.nio.NioEventLoop].closeAll()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 821
    functionLinenumberEnd: 841
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoop].selectAgain()"
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].keys()"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.channel.group.DefaultChannelGroup].size()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].size()"
    - "[io.netty.util.internal.ConcurrentSet].size()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].size()"
    - "[java.util.HashSet].size()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].size()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].size()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].size()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].size()"
    - "[java.util.TreeSet].size()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].size()"
    - "[java.util.TreeMap$EntrySet].size()"
    - "[java.util.TreeMap$KeySet].size()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[io.netty.channel.nio.NioEventLoop].invokeChannelUnregistered(io.netty.channel.nio.NioTask,java.nio.channels.SelectionKey,java.lang.Throwable)"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - "[java.nio.channels.Selector].keys()"
    - "[java.util.Set].size()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.nio.channels.SelectionKey].attachment()"
    - "[java.util.Collection].add(java.lang.Object)"
    - "[java.nio.channels.SelectionKey].cancel()"
    - "[java.util.Collection].iterator()"
    - "[io.netty.channel.Channel$Unsafe].voidPromise()"
    - "[io.netty.channel.Channel$Unsafe].close(io.netty.channel.ChannelPromise)"
    functionUses: 6
    ICount: 33
    EdgeCount: 274
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:825"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:837"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:836"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:827"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:830"
        BranchSideFuncs:
        - "add(java.lang.Object)"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:829"
        BranchSideFuncs:
        - "invokeChannelUnregistered(io.netty.channel.nio.NioTask,java.nio.channels.SelectionKey,java.lang.Throwable)"
    - Branch String: "io.netty.channel.nio.NioEventLoop:837"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:840"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "close(io.netty.channel.ChannelPromise)"
        - "next()"
        - "voidPromise()"
        - "unsafe()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:839"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:822,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].selectAgain()"
    - Src: "io.netty.channel.nio.NioEventLoop:823,1"
      Dst: "[java.nio.channels.Selector].keys()"
    - Src: "io.netty.channel.nio.NioEventLoop:824,1"
      Dst: "[java.util.Set].size()"
    - Src: "io.netty.channel.nio.NioEventLoop:824,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.channel.nio.NioEventLoop:825,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.nio.NioEventLoop:825,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.nio.NioEventLoop:825,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.nio.NioEventLoop:826,1"
      Dst: "[java.nio.channels.SelectionKey].attachment()"
    - Src: "io.netty.channel.nio.NioEventLoop:828,1"
      Dst: "[java.util.Collection].add(java.lang.Object)"
    - Src: "io.netty.channel.nio.NioEventLoop:830,1"
      Dst: "[java.nio.channels.SelectionKey].cancel()"
    - Src: "io.netty.channel.nio.NioEventLoop:833,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].invokeChannelUnregistered(io.netty.channel.nio.NioTask,java.nio.channels.SelectionKey,java.lang.Throwable)"
    - Src: "io.netty.channel.nio.NioEventLoop:837,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.channel.nio.NioEventLoop:838,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - Src: "io.netty.channel.nio.NioEventLoop:838,1"
      Dst: "[io.netty.channel.Channel$Unsafe].voidPromise()"
    - Src: "io.netty.channel.nio.NioEventLoop:838,1"
      Dst: "[io.netty.channel.Channel$Unsafe].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.nio.NioEventLoop].selectAgain()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 886
    functionLinenumberEnd: 894
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].selectNow()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.nio.channels.Selector].selectNow()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 3
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:889,1"
      Dst: "[java.nio.channels.Selector].selectNow()"
    - Src: "io.netty.channel.nio.NioEventLoop:891,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop].handleLoopException(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 636
    functionLinenumberEnd: 647
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.lang.Thread].sleep(long)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 8
    ICount: 7
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:637,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.nio.NioEventLoop:642,1"
      Dst: "[java.lang.Thread].sleep(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop].select(long)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 877
    functionLinenumberEnd: 884
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].select()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].deadlineToDelayNanos(long)"
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].select(long)"
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].selectNow()"
    - "[java.nio.channels.Selector].select()"
    - "[java.nio.channels.Selector].selectNow()"
    - "[java.nio.channels.Selector].select(long)"
    functionUses: 1
    ICount: 19
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:878"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:882"
        BranchSideFuncs:
        - "select()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:881"
        BranchSideFuncs:
        - "deadlineToDelayNanos(long)"
        - "select(long)"
        - "selectNow()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:883"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:881"
        BranchSideFuncs:
        - "deadlineToDelayNanos(long)"
        - "select(long)"
        - "selectNow()"
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:879,1"
      Dst: "[java.nio.channels.Selector].select()"
    - Src: "io.netty.channel.nio.NioEventLoop:882,1"
      Dst: "[io.netty.util.concurrent.AbstractScheduledEventExecutor].deadlineToDelayNanos(long)"
    - Src: "io.netty.channel.nio.NioEventLoop:883,1"
      Dst: "[java.nio.channels.Selector].selectNow()"
    - Src: "io.netty.channel.nio.NioEventLoop:883,1"
      Dst: "[java.nio.channels.Selector].select(long)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.nio.NioEventLoop].processSelectedKeys()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 648
    functionLinenumberEnd: 655
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoop].processSelectedKeysOptimized()"
    - "[io.netty.channel.nio.NioEventLoop].processSelectedKeysPlain(java.util.Set)"
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].selectedKeys()"
    - "[java.nio.channels.Selector].selectedKeys()"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:649"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:652"
        BranchSideFuncs:
        - "processSelectedKeysOptimized()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:651"
        BranchSideFuncs:
        - "selectedKeys()"
        - "processSelectedKeysPlain(java.util.Set)"
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:650,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].processSelectedKeysOptimized()"
    - Src: "io.netty.channel.nio.NioEventLoop:652,1"
      Dst: "[java.nio.channels.Selector].selectedKeys()"
    - Src: "io.netty.channel.nio.NioEventLoop:652,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].processSelectedKeysPlain(java.util.Set)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.nio.NioEventLoop].processSelectedKeysOptimized()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 714
    functionLinenumberEnd: 741
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoop].processSelectedKey(java.nio.channels.SelectionKey,io.netty.channel.nio.AbstractNioChannel)"
    - "[io.netty.channel.nio.NioEventLoop].processSelectedKey(java.nio.channels.SelectionKey,io.netty.channel.nio.NioTask)"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].reset(int)"
    - "[io.netty.channel.nio.NioEventLoop].selectAgain()"
    - "[java.nio.channels.SelectionKey].attachment()"
    functionUses: 1
    ICount: 30
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:715"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:740"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:739"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:723"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:727"
        BranchSideFuncs:
        - "processSelectedKey(java.nio.channels.SelectionKey,io.netty.channel.nio.AbstractNioChannel)"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:726"
        BranchSideFuncs:
        - "processSelectedKey(java.nio.channels.SelectionKey,io.netty.channel.nio.NioTask)"
    - Branch String: "io.netty.channel.nio.NioEventLoop:731"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:714"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:721,1"
      Dst: "[java.nio.channels.SelectionKey].attachment()"
    - Src: "io.netty.channel.nio.NioEventLoop:724,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].processSelectedKey(java.nio.channels.SelectionKey,io.netty.channel.nio.AbstractNioChannel)"
    - Src: "io.netty.channel.nio.NioEventLoop:728,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].processSelectedKey(java.nio.channels.SelectionKey,io.netty.channel.nio.NioTask)"
    - Src: "io.netty.channel.nio.NioEventLoop:734,1"
      Dst: "[io.netty.channel.nio.SelectedSelectionKeySet].reset(int)"
    - Src: "io.netty.channel.nio.NioEventLoop:736,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].selectAgain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.nio.NioEventLoop].processSelectedKey(java.nio.channels.SelectionKey,io.netty.channel.nio.AbstractNioChannel)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 742
    functionLinenumberEnd: 794
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.SelectionKey"
    - "io.netty.channel.nio.AbstractNioChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe].finishConnect()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe].forceFlush()"
    - "[io.netty.channel.nio.AbstractNioMessageChannel$NioMessageUnsafe].read()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe].read()"
    - "[java.nio.channels.SelectionKey].isValid()"
    - "[io.netty.channel.Channel$Unsafe].voidPromise()"
    - "[io.netty.channel.Channel$Unsafe].close(io.netty.channel.ChannelPromise)"
    - "[java.nio.channels.SelectionKey].readyOps()"
    - "[java.nio.channels.SelectionKey].interestOps()"
    - "[java.nio.channels.SelectionKey].interestOps(int)"
    - "[io.netty.channel.nio.AbstractNioChannel$NioUnsafe].finishConnect()"
    - "[io.netty.channel.nio.AbstractNioChannel$NioUnsafe].forceFlush()"
    - "[io.netty.channel.nio.AbstractNioChannel$NioUnsafe].read()"
    functionUses: 2
    ICount: 34
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:744"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:765"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:758"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:761"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:769"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:780"
        BranchSideFuncs:
        - "read()"
        - "finishConnect()"
        - "forceFlush()"
        - "close(io.netty.channel.ChannelPromise)"
        - "voidPromise()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:779"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:780"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:787"
        BranchSideFuncs:
        - "read()"
        - "finishConnect()"
        - "forceFlush()"
        - "close(io.netty.channel.ChannelPromise)"
        - "voidPromise()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:786"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:787"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:788"
        BranchSideFuncs:
        - "read()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:787"
        BranchSideFuncs:
        - "read()"
    - Branch String: "io.netty.channel.nio.NioEventLoop:787"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:792"
        BranchSideFuncs:
        - "read()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:791"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:743,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - Src: "io.netty.channel.nio.NioEventLoop:744,1"
      Dst: "[java.nio.channels.SelectionKey].isValid()"
    - Src: "io.netty.channel.nio.NioEventLoop:747,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - Src: "io.netty.channel.nio.NioEventLoop:760,1"
      Dst: "[io.netty.channel.Channel$Unsafe].voidPromise()"
    - Src: "io.netty.channel.nio.NioEventLoop:760,1"
      Dst: "[io.netty.channel.Channel$Unsafe].close(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.nio.NioEventLoop:766,1"
      Dst: "[java.nio.channels.SelectionKey].readyOps()"
    - Src: "io.netty.channel.nio.NioEventLoop:772,1"
      Dst: "[java.nio.channels.SelectionKey].interestOps()"
    - Src: "io.netty.channel.nio.NioEventLoop:774,1"
      Dst: "[java.nio.channels.SelectionKey].interestOps(int)"
    - Src: "io.netty.channel.nio.NioEventLoop:776,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel$NioUnsafe].finishConnect()"
    - Src: "io.netty.channel.nio.NioEventLoop:782,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel$NioUnsafe].forceFlush()"
    - Src: "io.netty.channel.nio.NioEventLoop:788,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel$NioUnsafe].read()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.nio.NioEventLoop].processSelectedKey(java.nio.channels.SelectionKey,io.netty.channel.nio.NioTask)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 797
    functionLinenumberEnd: 820
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.channels.SelectionKey"
    - "io.netty.channel.nio.NioTask"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoop].invokeChannelUnregistered(io.netty.channel.nio.NioTask,java.nio.channels.SelectionKey,java.lang.Throwable)"
    - "[java.nio.channels.SelectionKey].channel()"
    - "[io.netty.channel.nio.NioTask].channelReady(java.nio.channels.SelectableChannel,java.nio.channels.SelectionKey)"
    - "[java.nio.channels.SelectionKey].cancel()"
    - "[java.nio.channels.SelectionKey].isValid()"
    functionUses: 2
    ICount: 36
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:811"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:819"
        BranchSideFuncs:
        - "invokeChannelUnregistered(io.netty.channel.nio.NioTask,java.nio.channels.SelectionKey,java.lang.Throwable)"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:818"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:811"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:819"
        BranchSideFuncs:
        - "invokeChannelUnregistered(io.netty.channel.nio.NioTask,java.nio.channels.SelectionKey,java.lang.Throwable)"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:818"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:811"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:818"
        BranchSideFuncs:
        - "invokeChannelUnregistered(io.netty.channel.nio.NioTask,java.nio.channels.SelectionKey,java.lang.Throwable)"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:817"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:798,1"
      Dst: "[java.nio.channels.SelectionKey].channel()"
    - Src: "io.netty.channel.nio.NioEventLoop:798,1"
      Dst: "[io.netty.channel.nio.NioTask].channelReady(java.nio.channels.SelectableChannel,java.nio.channels.SelectionKey)"
    - Src: "io.netty.channel.nio.NioEventLoop:807,1"
      Dst: "[java.nio.channels.SelectionKey].cancel()"
    - Src: "io.netty.channel.nio.NioEventLoop:808,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].invokeChannelUnregistered(io.netty.channel.nio.NioTask,java.nio.channels.SelectionKey,java.lang.Throwable)"
    - Src: "io.netty.channel.nio.NioEventLoop:811,1"
      Dst: "[java.nio.channels.SelectionKey].isValid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 9
  - functionName: "[io.netty.channel.nio.NioEventLoop].processSelectedKeysPlain(java.util.Set)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 677
    functionLinenumberEnd: 713
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Set"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].isEmpty()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].isEmpty()"
    - "[java.util.TreeSet].isEmpty()"
    - "[java.util.TreeMap$KeySet].isEmpty()"
    - "[java.util.AbstractCollection].isEmpty()"
    - "[io.netty.channel.group.DefaultChannelGroup].isEmpty()"
    - "[java.util.HashSet].isEmpty()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].remove()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].remove()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].remove()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].remove()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].remove()"
    - "[io.netty.channel.nio.NioEventLoop$7].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].remove()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].remove()"
    - "[io.netty.util.internal.ReadOnlyIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].remove()"
    - "[io.netty.channel.group.CombinedIterator].remove()"
    - "[java.util.Iterator].remove()"
    - "[io.netty.channel.nio.NioEventLoop].processSelectedKey(java.nio.channels.SelectionKey,io.netty.channel.nio.AbstractNioChannel)"
    - "[io.netty.channel.nio.NioEventLoop].processSelectedKey(java.nio.channels.SelectionKey,io.netty.channel.nio.NioTask)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop].selectAgain()"
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].selectedKeys()"
    - "[java.util.Set].isEmpty()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.nio.channels.SelectionKey].attachment()"
    - "[java.util.Iterator].hasNext()"
    - "[java.nio.channels.Selector].selectedKeys()"
    functionUses: 1
    ICount: 31
    EdgeCount: 222
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:678"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:682"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:681"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:688"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:692"
        BranchSideFuncs:
        - "processSelectedKey(java.nio.channels.SelectionKey,io.netty.channel.nio.AbstractNioChannel)"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:691"
        BranchSideFuncs:
        - "processSelectedKey(java.nio.channels.SelectionKey,io.netty.channel.nio.NioTask)"
    - Branch String: "io.netty.channel.nio.NioEventLoop:696"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:700"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:699"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:700"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:711"
        BranchSideFuncs:
        - "selectedKeys()"
        - "isEmpty()"
        - "selectAgain()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:710"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:705"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:708"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:707"
        BranchSideFuncs:
        - "iterator()"
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:678,1"
      Dst: "[java.util.Set].isEmpty()"
    - Src: "io.netty.channel.nio.NioEventLoop:682,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.nio.NioEventLoop:684,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.nio.NioEventLoop:685,1"
      Dst: "[java.nio.channels.SelectionKey].attachment()"
    - Src: "io.netty.channel.nio.NioEventLoop:686,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "io.netty.channel.nio.NioEventLoop:689,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].processSelectedKey(java.nio.channels.SelectionKey,io.netty.channel.nio.AbstractNioChannel)"
    - Src: "io.netty.channel.nio.NioEventLoop:693,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].processSelectedKey(java.nio.channels.SelectionKey,io.netty.channel.nio.NioTask)"
    - Src: "io.netty.channel.nio.NioEventLoop:696,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.nio.NioEventLoop:701,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].selectAgain()"
    - Src: "io.netty.channel.nio.NioEventLoop:702,1"
      Dst: "[java.nio.channels.Selector].selectedKeys()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.nio.NioEventLoop].unexpectedSelectorWakeup(int)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 610
    functionLinenumberEnd: 634
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].interrupted()"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.nio.NioEventLoop].rebuildSelector()"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 21
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:611"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:623"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:617"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:622"
        BranchSideFuncs:
        - "debug(java.lang.String)"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:621"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:624"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:632"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:624"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:632"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:611,1"
      Dst: "[java.lang.Thread].interrupted()"
    - Src: "io.netty.channel.nio.NioEventLoop:617,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.channel.nio.NioEventLoop:618,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String)"
    - Src: "io.netty.channel.nio.NioEventLoop:629,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.nio.NioEventLoop:628,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.nio.NioEventLoop:630,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].rebuildSelector()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.nio.NioEventLoop].cleanup()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 658
    functionLinenumberEnd: 664
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].close()"
    - "[java.nio.channels.spi.AbstractSelector].close()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.nio.channels.Selector].close()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 6
    ICount: 8
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:659,1"
      Dst: "[java.nio.channels.Selector].close()"
    - Src: "io.netty.channel.nio.NioEventLoop:661,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop].cancel(java.nio.channels.SelectionKey)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 665
    functionLinenumberEnd: 673
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.channels.SelectionKey"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.channels.SelectionKey].cancel()"
    functionUses: 1
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:668"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:672"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop:671"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:666,1"
      Dst: "[java.nio.channels.SelectionKey].cancel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.nio.NioEventLoop].wakeup(boolean)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 851
    functionLinenumberEnd: 856
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].getAndSet(long)"
    - "[io.netty.channel.nio.SelectedSelectionKeySetSelector].wakeup()"
    - "[java.nio.channels.Selector].wakeup()"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:852"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:855"
        BranchSideFuncs:
        - "wakeup()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:854"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop:852"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:855"
        BranchSideFuncs:
        - "wakeup()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop:854"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:852,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].getAndSet(long)"
    - Src: "io.netty.channel.nio.NioEventLoop:853,1"
      Dst: "[java.nio.channels.Selector].wakeup()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.nio.NioEventLoop].beforeScheduledTaskSubmitted(long)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 859
    functionLinenumberEnd: 861
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].get()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:860"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:859"
        BranchSideFuncs:
        - "get()"
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:860,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.nio.NioEventLoop].afterScheduledTaskSubmitted(long)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 865
    functionLinenumberEnd: 867
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicLong].get()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop:866"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop:865"
        BranchSideFuncs:
        - "get()"
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:866,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.nio.NioEventLoop].unwrappedSelector()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 869
    functionLinenumberEnd: 871
    functionDepth: 0
    returnType: "java.nio.channels.Selector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop].access$000(io.netty.channel.nio.NioEventLoop,java.nio.channels.SelectableChannel,int,io.netty.channel.nio.NioTask)"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.nio.NioEventLoop"
    - "java.nio.channels.SelectableChannel"
    - "int"
    - "io.netty.channel.nio.NioTask"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoop].register0(java.nio.channels.SelectableChannel,int,io.netty.channel.nio.NioTask)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop:58,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].register0(java.nio.channels.SelectableChannel,int,io.netty.channel.nio.NioTask)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.SingletonDnsServerAddresses].<init>(java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.resolver.dns.SingletonDnsServerAddresses"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].<init>(io.netty.resolver.dns.SingletonDnsServerAddresses)"
    - "[io.netty.resolver.dns.DnsServerAddresses].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.SingletonDnsServerAddresses:47,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddresses].<init>()"
    - Src: "io.netty.resolver.dns.SingletonDnsServerAddresses:25,1"
      Dst: "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].<init>(io.netty.resolver.dns.SingletonDnsServerAddresses)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.SingletonDnsServerAddresses].stream()"
    functionSourceFile: "io.netty.resolver.dns.SingletonDnsServerAddresses"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsServerAddressStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequestEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:33,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequestEncoder].acceptOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequestEncoder"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequestEncoder:43"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:42"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequestEncoder:43"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:42"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequestEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequestEncoder"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 88
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].command()"
    - "[io.netty.handler.codec.smtp.SmtpCommand].equals(java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer()"
    - "[io.netty.handler.codec.smtp.SmtpCommand].encode(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].parameters()"
    - "[io.netty.handler.codec.smtp.SmtpRequestEncoder].writeParameters(java.util.List,io.netty.buffer.ByteBuf,boolean)"
    - "[io.netty.buffer.ByteBufUtil].writeShortBE(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.smtp.SmtpCommand].isContentExpected()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.handler.codec.smtp.LastSmtpContent$1].content()"
    - "[io.netty.buffer.DefaultByteBufHolder].content()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf:java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledSlicedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.WrappedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.UnreleasableByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AbstractByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.smtp.SmtpRequest].command()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer()"
    - "[io.netty.handler.codec.smtp.SmtpRequest].parameters()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].retain()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    functionUses: 2
    ICount: 63
    EdgeCount: 75
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequestEncoder:48"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:76"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:75"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequestEncoder:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:57"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:56"
        BranchSideFuncs:
        - "buffer()"
        - "encode(io.netty.buffer.ByteBuf)"
        - "alloc()"
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequestEncoder:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:54"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:53"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequestEncoder:61"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:57"
        BranchSideFuncs:
        - "parameters()"
        - "command()"
        - "writeShortBE(io.netty.buffer.ByteBuf,int)"
        - "isContentExpected()"
        - "writeParameters(java.util.List,io.netty.buffer.ByteBuf,boolean)"
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:56"
        BranchSideFuncs:
        - "buffer()"
        - "encode(io.netty.buffer.ByteBuf)"
        - "alloc()"
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequestEncoder:66"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:70"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:69"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequestEncoder:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:76"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:75"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequestEncoder:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:73"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:72"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequestEncoder:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:87"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:86"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequestEncoder:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:80"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:79"
        BranchSideFuncs:
        - "content()"
        - "retain()"
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequestEncoder:82"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:87"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "retainedDuplicate()"
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:86"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:51,1"
      Dst: "[io.netty.handler.codec.smtp.SmtpRequest].command()"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:51,1"
      Dst: "[io.netty.handler.codec.smtp.SmtpCommand].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:54,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:58,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:58,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer()"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:60,1"
      Dst: "[io.netty.handler.codec.smtp.SmtpCommand].encode(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:62,1"
      Dst: "[io.netty.handler.codec.smtp.SmtpRequest].parameters()"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:62,1"
      Dst: "[io.netty.handler.codec.smtp.SmtpRequestEncoder].writeParameters(java.util.List,io.netty.buffer.ByteBuf,boolean)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:63,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeShortBE(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:64,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:66,1"
      Dst: "[io.netty.handler.codec.smtp.SmtpCommand].isContentExpected()"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:71,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:80,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:81,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:83,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.smtp.SmtpRequestEncoder].writeParameters(java.util.List<CharSequence>,io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.codec.smtp.SmtpRequestEncoder"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 115
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.util.List<CharSequence>"
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jaz.Zer].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.AbstractCollection:java.util.ArrayList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[io.netty.buffer.ByteBufUtil].writeAscii(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    - "[jaz.Zer].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2].hasNext()"
    - "[java.util.List].isEmpty()"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 1
    ICount: 33
    EdgeCount: 140
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequestEncoder:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:93"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:92"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequestEncoder:93"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:96"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:95"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequestEncoder:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:104"
        BranchSideFuncs:
        - "size()"
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:103"
        BranchSideFuncs:
        - "iterator()"
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequestEncoder:98"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:101"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "io.netty.handler.codec.smtp.SmtpRequestEncoder:107"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:114"
        BranchSideFuncs:
        - "writeByte(int)"
      - BranchSide: "io.netty.handler.codec.smtp.SmtpRequestEncoder:113"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:90,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:94,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:97,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:99,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:99,1"
      Dst: "[io.netty.buffer.ByteBufUtil].writeAscii(io.netty.buffer.ByteBuf,java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:104,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:106,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.smtp.SmtpRequestEncoder:107,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQueryDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQueryDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsQueryDecoder].<init>(io.netty.handler.codec.dns.DnsRecordDecoder)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryDecoder:41,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsQueryDecoder].<init>(io.netty.handler.codec.dns.DnsRecordDecoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQueryDecoder].<init>(io.netty.handler.codec.dns.DnsRecordDecoder)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQueryDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.dns.DnsRecordDecoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryDecoder:47,1"
      Dst: "[io.netty.handler.codec.MessageToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryDecoder:48,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQueryDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.channel.socket.DatagramPacket,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQueryDecoder"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 62
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.socket.DatagramPacket"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsQueryDecoder$1].<init>(io.netty.handler.codec.dns.DatagramDnsQueryDecoder,io.netty.channel.socket.DatagramPacket)"
    - "[io.netty.channel.socket.DatagramPacket].content()"
    - "[io.netty.handler.codec.dns.DnsMessageUtil].decodeDnsQuery(io.netty.handler.codec.dns.DnsRecordDecoder,io.netty.buffer.ByteBuf,io.netty.handler.codec.dns.DnsMessageUtil$DnsQueryFactory)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryDecoder:53,1"
      Dst: "[io.netty.channel.socket.DatagramPacket].content()"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryDecoder:53,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsQueryDecoder$1].<init>(io.netty.handler.codec.dns.DatagramDnsQueryDecoder,io.netty.channel.socket.DatagramPacket)"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryDecoder:53,1"
      Dst: "[io.netty.handler.codec.dns.DnsMessageUtil].decodeDnsQuery(io.netty.handler.codec.dns.DnsRecordDecoder,io.netty.buffer.ByteBuf,io.netty.handler.codec.dns.DnsMessageUtil$DnsQueryFactory)"
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryDecoder:60,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQueryDecoder$1].<init>(io.netty.handler.codec.dns.DatagramDnsQueryDecoder,io.netty.channel.socket.DatagramPacket)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQueryDecoder$1"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.dns.DatagramDnsQueryDecoder"
    - "io.netty.channel.socket.DatagramPacket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryDecoder$1:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.dns.DatagramDnsQueryDecoder].decode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.dns.DatagramDnsQueryDecoder"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.dns.DatagramDnsQueryDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.channel.socket.DatagramPacket,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.dns.DatagramDnsQueryDecoder:31,1"
      Dst: "[io.netty.handler.codec.dns.DatagramDnsQueryDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.channel.socket.DatagramPacket,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache].<init>(io.netty.buffer.PooledByteBufAllocator,boolean)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache"
    linkageType: ""
    functionLinenumber: 505
    functionLinenumberEnd: 509
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.PooledByteBufAllocator"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:506,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache].initialValue()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache"
    linkageType: ""
    functionLinenumber: 511
    functionLinenumberEnd: 538
    functionDepth: 6
    returnType: "io.netty.buffer.PoolThreadCache"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].access$000(io.netty.buffer.PooledByteBufAllocator)"
    - "[io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache].leastUsedArena(io.netty.buffer.PoolArena[])"
    - "[io.netty.buffer.PooledByteBufAllocator].access$100(io.netty.buffer.PooledByteBufAllocator)"
    - "[java.lang.Thread].currentThread()"
    - "[io.netty.util.internal.ThreadExecutorMap].currentExecutor()"
    - "[io.netty.buffer.PooledByteBufAllocator].access$200(io.netty.buffer.PooledByteBufAllocator)"
    - "[io.netty.buffer.PooledByteBufAllocator].access$300(io.netty.buffer.PooledByteBufAllocator)"
    - "[io.netty.buffer.PoolThreadCache].<init>(io.netty.buffer.PoolArena,io.netty.buffer.PoolArena,int,int,int,int)"
    - "[io.netty.buffer.PooledByteBufAllocator].access$400()"
    - "[io.netty.buffer.PooledByteBufAllocator].access$500()"
    - "[io.netty.buffer.PooledByteBufAllocator].access$600(io.netty.buffer.PooledByteBufAllocator)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.EventExecutorGroup].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    functionUses: 1
    ICount: 37
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:518"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:523"
        BranchSideFuncs:
        - "access$300(io.netty.buffer.PooledByteBufAllocator)"
        - "access$200(io.netty.buffer.PooledByteBufAllocator)"
        - "access$400()"
    - Branch String: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:518"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:523"
        BranchSideFuncs:
        - "access$300(io.netty.buffer.PooledByteBufAllocator)"
        - "access$200(io.netty.buffer.PooledByteBufAllocator)"
        - "access$400()"
    - Branch String: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:518"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:536"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.PoolArena,io.netty.buffer.PoolArena,int,int,int,int)"
    - Branch String: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:528"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:534"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:533"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:529"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:534"
        BranchSideFuncs:
        - "access$600(io.netty.buffer.PooledByteBufAllocator)"
        - "scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:533"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:512,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].access$000(io.netty.buffer.PooledByteBufAllocator)"
    - Src: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:512,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache].leastUsedArena(io.netty.buffer.PoolArena[])"
    - Src: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:513,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].access$100(io.netty.buffer.PooledByteBufAllocator)"
    - Src: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:515,1"
      Dst: "[java.lang.Thread].currentThread()"
    - Src: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:516,1"
      Dst: "[io.netty.util.internal.ThreadExecutorMap].currentExecutor()"
    - Src: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:525,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].access$200(io.netty.buffer.PooledByteBufAllocator)"
    - Src: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:525,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].access$300(io.netty.buffer.PooledByteBufAllocator)"
    - Src: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:526,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].access$400()"
    - Src: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:526,1"
      Dst: "[io.netty.buffer.PoolThreadCache].<init>(io.netty.buffer.PoolArena,io.netty.buffer.PoolArena,int,int,int,int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:528,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].access$500()"
    - Src: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:530,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].access$600(io.netty.buffer.PooledByteBufAllocator)"
    - Src: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:530,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 5
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].access$000(io.netty.buffer.PooledByteBufAllocator)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "io.netty.buffer.PoolArena[]"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PooledByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache].leastUsedArena(io.netty.buffer.PoolArena[])"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache"
    linkageType: ""
    functionLinenumber: 545
    functionLinenumberEnd: 564
    functionDepth: 0
    returnType: "io.netty.buffer.PoolArena"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PoolArena[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.atomic.AtomicInteger].get()"
    functionUses: 2
    ICount: 24
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:546"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:547"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:546"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:546"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:550"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:549"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:553"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:556"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:555"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:556"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:563"
        BranchSideFuncs:
        - "get()"
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:562"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:558"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:556"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:555"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:553,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].get()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].access$100(io.netty.buffer.PooledByteBufAllocator)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "io.netty.buffer.PoolArena[]"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PooledByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].access$200(io.netty.buffer.PooledByteBufAllocator)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PooledByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].access$300(io.netty.buffer.PooledByteBufAllocator)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PooledByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].access$400()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].access$500()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].access$600(io.netty.buffer.PooledByteBufAllocator)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "java.lang.Runnable"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PooledByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache].onRemoval(io.netty.buffer.PoolThreadCache)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache"
    linkageType: ""
    functionLinenumber: 541
    functionLinenumberEnd: 544
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.PoolThreadCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PoolThreadCache].free(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:542,1"
      Dst: "[io.netty.buffer.PoolThreadCache].free(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache].onRemoval(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache"
    linkageType: ""
    functionLinenumber: 502
    functionLinenumberEnd: 504
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache].onRemoval(io.netty.buffer.PoolThreadCache)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache:503,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache].onRemoval(io.netty.buffer.PoolThreadCache)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].map(java.lang.String)"
    functionSourceFile: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 136
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].normalize(java.lang.String)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.lang.String].indexOf(int)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap:io.netty.util.collection.CharCollections$EmptyMap:io.netty.util.collection.IntCollections$EmptyMap:io.netty.util.collection.LongCollections$EmptyMap:io.netty.util.collection.ShortCollections$EmptyMap:java.security.Provider:java.util.AbstractMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.LinkedHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].get(java.lang.Object)"
    - "[java.lang.String].substring(int)"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 42
    BranchProfiles:
    - Branch String: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:116"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:135"
        BranchSideFuncs:
        - "normalize(java.lang.String)"
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:134"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:121"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:126"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:125"
        BranchSideFuncs:
        - "indexOf(int)"
    - Branch String: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:127"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:135"
        BranchSideFuncs:
        - "substring(int)"
        - "get(java.lang.Object)"
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:134"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:129"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:135"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:134"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:117,1"
      Dst: "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].normalize(java.lang.String)"
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:120,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:126,1"
      Dst: "[java.lang.String].indexOf(int)"
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:128,1"
      Dst: "[java.lang.String].substring(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].toString()"
    functionSourceFile: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.security.Provider].entrySet()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].entrySet()"
    - "[java.util.concurrent.ConcurrentHashMap].entrySet()"
    - "[io.netty.util.collection.ShortObjectHashMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].entrySet()"
    - "[java.util.TreeMap].entrySet()"
    - "[java.util.stream.Collectors$Partition].entrySet()"
    - "[java.util.Properties].entrySet()"
    - "[java.util.WeakHashMap].entrySet()"
    - "[java.util.LinkedHashMap].entrySet()"
    - "[io.netty.util.collection.IntObjectHashMap].entrySet()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].entrySet()"
    - "[java.util.jar.Attributes].entrySet()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].entrySet()"
    - "[java.util.IdentityHashMap].entrySet()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].entrySet()"
    - "[io.netty.util.collection.ByteObjectHashMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].entrySet()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].entrySet()"
    - "[java.util.HashMap].entrySet()"
    - "[io.netty.util.collection.CharObjectHashMap].entrySet()"
    - "[java.util.Hashtable].entrySet()"
    - "[io.netty.util.collection.LongObjectHashMap].entrySet()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    - "[java.util.AbstractMap$SimpleEntry].getKey()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[java.lang.String].charAt(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.util.Map$Entry].getValue()"
    functionUses: 19
    ICount: 38
    EdgeCount: 214
    BranchProfiles:
    - Branch String: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:148"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:155"
        BranchSideFuncs:
        - "hasNext()"
        - "next()"
        - "iterator()"
        - "entrySet()"
        - "getKey()"
        - "charAt(int)"
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:154"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "length()"
        - "append(char)"
        - "setLength(int)"
    - Branch String: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:150"
      Branch Sides:
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:153"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:152"
        BranchSideFuncs:
        - "append(java.lang.Object)"
        - "getValue()"
    Callsites:
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:145,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:146,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:146,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:146,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:148,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:148,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:148,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:148,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:149,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:150,1"
      Dst: "[java.lang.String].charAt(int)"
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:151,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:153,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:155,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:155,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].map(java.lang.Object)"
    functionSourceFile: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 4
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].map(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping:101,1"
      Dst: "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].map(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder].<init>(io.netty.handler.codec.http2.DefaultHttp2FrameReader)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder"
    linkageType: ""
    functionLinenumber: 674
    functionLinenumberEnd: 676
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2FrameReader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2FrameReader$HeadersBlockBuilder:675,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider].chooseKeyMaterial(io.netty.buffer.ByteBufAllocator,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.OpenSslKeyMaterial"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslKeyMaterial].retain()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:216"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:219"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:220"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:223"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:215,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslX509KeyManagerFactory$OpenSslKeyManagerFactorySpi$ProviderFactory$OpenSslPopulatedKeyMaterialProvider:221,1"
      Dst: "[io.netty.handler.ssl.OpenSslKeyMaterial].retain()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.UnknownSocksRequest].<init>()"
    functionSourceFile: "io.netty.handler.codec.socks.UnknownSocksRequest"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksRequest].<init>(io.netty.handler.codec.socks.SocksRequestType)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.UnknownSocksRequest:30,1"
      Dst: "[io.netty.handler.codec.socks.SocksRequest].<init>(io.netty.handler.codec.socks.SocksRequestType)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.UnknownSocksRequest].encodeAsByteBuf(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.socks.UnknownSocksRequest"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ResourcesUtil].getFile(java.lang.Class,java.lang.String)"
    functionSourceFile: "io.netty.util.internal.ResourcesUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.io.File"
    argCount: 2
    argTypes:
    - "java.lang.Class"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getResource(java.lang.String)"
    - "[java.net.URL].getFile()"
    - "[java.net.URLDecoder].decode(java.lang.String,java.lang.String)"
    - "[java.io.File].<init>(java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ResourcesUtil:36,1"
      Dst: "[java.lang.Class].getResource(java.lang.String)"
    - Src: "io.netty.util.internal.ResourcesUtil:36,1"
      Dst: "[java.net.URL].getFile()"
    - Src: "io.netty.util.internal.ResourcesUtil:36,1"
      Dst: "[java.net.URLDecoder].decode(java.lang.String,java.lang.String)"
    - Src: "io.netty.util.internal.ResourcesUtil:36,1"
      Dst: "[java.io.File].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ResourcesUtil].<init>()"
    functionSourceFile: "io.netty.util.internal.ResourcesUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ResourcesUtil:42,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspRequestEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspRequestEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.rtsp.RtspEncoder].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspRequestEncoder:22,1"
      Dst: "[io.netty.handler.codec.rtsp.RtspEncoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].<init>(io.netty.util.concurrent.EventExecutor,java.util.concurrent.RunnableScheduledFuture,boolean)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    - "java.util.concurrent.RunnableScheduledFuture"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseTask].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:219,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].runTask()"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 241
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseTask].runTask()"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.DefaultPromise].get()"
    - "[java.lang.Throwable].getCause()"
    - "[java.util.concurrent.Future].isDone()"
    - "[java.util.concurrent.Future].get()"
    functionUses: 2
    ICount: 21
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:227"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:239"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:227"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:239"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:232"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:234"
        BranchSideFuncs:
        - "<init>()"
        - "getCause()"
        - "isDone()"
        - "get()"
      - BranchSide: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:233"
        BranchSideFuncs:
        - "get()"
    - Branch String: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:232"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:234"
        BranchSideFuncs:
        - "<init>()"
        - "getCause()"
        - "isDone()"
        - "get()"
      - BranchSide: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:233"
        BranchSideFuncs:
        - "get()"
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:226,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].runTask()"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:232,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:232,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:234,1"
      Dst: "[java.util.concurrent.Future].get()"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:237,1"
      Dst: "[java.lang.Throwable].getCause()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Throwable"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 244
    functionLinenumberEnd: 258
    functionDepth: 10
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].isPeriodic()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].runTask()"
    - "[io.netty.util.concurrent.PromiseTask].tryFailureInternal(java.lang.Throwable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].access$000()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 49
    ICount: 15
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:245"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:247"
        BranchSideFuncs:
        - "run()"
      - BranchSide: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:246"
        BranchSideFuncs:
        - "isDone()"
    - Branch String: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:247"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:256"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:252"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:257"
        BranchSideFuncs:
        - "warn(java.lang.String,java.lang.Throwable)"
        - "runTask()"
        - "access$000()"
        - "tryFailureInternal(java.lang.Throwable)"
      - BranchSide: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:256"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:245,1"
      Dst: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].isPeriodic()"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:246,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].run()"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:247,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:250,1"
      Dst: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].runTask()"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:252,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].tryFailureInternal(java.lang.Throwable)"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:253,1"
      Dst: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].access$000()"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:253,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].isPeriodic()"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 260
    functionLinenumberEnd: 262
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].isPeriodic()"
    - "[java.util.concurrent.RunnableScheduledFuture].isPeriodic()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:261,1"
      Dst: "[java.util.concurrent.RunnableScheduledFuture].isPeriodic()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseTask].run()"
    functionSourceFile: "io.netty.util.concurrent.PromiseTask"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 113
    functionDepth: 9
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseTask].setUncancellableInternal()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].runTask()"
    - "[io.netty.util.concurrent.PromiseTask].runTask()"
    - "[io.netty.util.concurrent.PromiseTask].setSuccessInternal(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setFailureInternal(java.lang.Throwable)"
    functionUses: 50
    ICount: 9
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.PromiseTask:105"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.PromiseTask:111"
        BranchSideFuncs:
        - "runTask()"
        - "setSuccessInternal(java.lang.Object)"
      - BranchSide: "io.netty.util.concurrent.PromiseTask:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseTask:105,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].setUncancellableInternal()"
    - Src: "io.netty.util.concurrent.PromiseTask:106,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].runTask()"
    - Src: "io.netty.util.concurrent.PromiseTask:107,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].setSuccessInternal(java.lang.Object)"
    - Src: "io.netty.util.concurrent.PromiseTask:110,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].setFailureInternal(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.PromiseTask].tryFailureInternal(java.lang.Throwable)"
    functionSourceFile: "io.netty.util.concurrent.PromiseTask"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionDepth: 8
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.PromiseTask].clearTaskAfterCompletion(boolean,java.lang.Runnable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseTask:142,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.util.concurrent.PromiseTask:142,1"
      Dst: "[io.netty.util.concurrent.PromiseTask].clearTaskAfterCompletion(boolean,java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].access$000()"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].getDelay(java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask"
    linkageType: ""
    functionLinenumber: 265
    functionLinenumberEnd: 267
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].getDelay(java.util.concurrent.TimeUnit)"
    - "[java.util.concurrent.Delayed].getDelay(java.util.concurrent.TimeUnit)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:266,1"
      Dst: "[java.util.concurrent.Delayed].getDelay(java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].compareTo(java.util.concurrent.Delayed)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.concurrent.Delayed"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Comparable].compareTo(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:271,1"
      Dst: "[java.lang.Comparable].compareTo(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].compareTo(java.util.concurrent.Delayed)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask:213,1"
      Dst: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].compareTo(java.util.concurrent.Delayed)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.BrotliEncoder].<init>(io.netty.handler.codec.compression.BrotliOptions)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliEncoder:44,1"
      Dst: "[io.netty.handler.codec.compression.BrotliEncoder].<init>(io.netty.handler.codec.compression.BrotliOptions)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliEncoder].<init>(com.aayushatharva.brotli4j.encoder.Encoder$Parameters)"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliEncoder"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.aayushatharva.brotli4j.encoder.Encoder$Parameters"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliEncoder:52,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    - Src: "io.netty.handler.codec.compression.BrotliEncoder:53,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliEncoder].<init>(io.netty.handler.codec.compression.BrotliOptions)"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.compression.BrotliOptions"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.BrotliOptions].parameters()"
    - "[io.netty.handler.codec.compression.BrotliEncoder].<init>(com.aayushatharva.brotli4j.encoder.Encoder$Parameters)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliEncoder:62,1"
      Dst: "[io.netty.handler.codec.compression.BrotliOptions].parameters()"
    - Src: "io.netty.handler.codec.compression.BrotliEncoder:62,1"
      Dst: "[io.netty.handler.codec.compression.BrotliEncoder].<init>(com.aayushatharva.brotli4j.encoder.Encoder$Parameters)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliEncoder"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliEncoder"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 89
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer()"
    - "[com.aayushatharva.brotli4j.encoder.Encoders].compress(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,com.aayushatharva.brotli4j.encoder.Encoder$Parameters)"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer()"
    - "[io.netty.buffer.ByteBufAllocator].buffer()"
    functionUses: 1
    ICount: 20
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.BrotliEncoder:73"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.BrotliEncoder:79"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.BrotliEncoder:78"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.BrotliEncoder:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.BrotliEncoder:82"
        BranchSideFuncs:
        - "ioBuffer()"
      - BranchSide: "io.netty.handler.codec.compression.BrotliEncoder:81"
        BranchSideFuncs:
        - "buffer()"
        - "alloc()"
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliEncoder:73,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.compression.BrotliEncoder:80,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.compression.BrotliEncoder:80,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer()"
    - Src: "io.netty.handler.codec.compression.BrotliEncoder:82,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer()"
    - Src: "io.netty.handler.codec.compression.BrotliEncoder:84,1"
      Dst: "[com.aayushatharva.brotli4j.encoder.Encoders].compress(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf,com.aayushatharva.brotli4j.encoder.Encoder$Parameters)"
    - Src: "io.netty.handler.codec.compression.BrotliEncoder:87,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliEncoder"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.BrotliEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliEncoder:33,1"
      Dst: "[io.netty.handler.codec.compression.BrotliEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,java.lang.Object,boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliEncoder"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.BrotliEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliEncoder:33,1"
      Dst: "[io.netty.handler.codec.compression.BrotliEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].<init>(java.lang.String,java.net.InetAddress)"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry"
    linkageType: ""
    functionLinenumber: 178
    functionLinenumberEnd: 184
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry:179,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 190
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry:185,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].hostname()"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].toString()"
    functionSourceFile: "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry"
    linkageType: ""
    functionLinenumber: 206
    functionLinenumberEnd: 211
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.net.InetAddress].toString()"
    functionUses: 19
    ICount: 15
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry:207"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry:210"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
      - BranchSide: "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry:209"
        BranchSideFuncs:
        - "toString()"
    Callsites:
    - Src: "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry:208,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry:208,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry:208,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry:208,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry:208,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry:210,1"
      Dst: "[java.net.InetAddress].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.KeyManagerFactoryWrapper].engineInit(java.security.KeyStore,char[])"
    functionSourceFile: "io.netty.handler.ssl.util.KeyManagerFactoryWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.security.KeyStore"
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.KeyManagerFactoryWrapper].engineInit(javax.net.ssl.ManagerFactoryParameters)"
    functionSourceFile: "io.netty.handler.ssl.util.KeyManagerFactoryWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.ManagerFactoryParameters"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.util.KeyManagerFactoryWrapper].engineGetKeyManagers()"
    functionSourceFile: "io.netty.handler.ssl.util.KeyManagerFactoryWrapper"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.KeyManager[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.SucceededFuture].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.SucceededFuture"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.CompleteFuture].<init>(io.netty.util.concurrent.EventExecutor)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.SucceededFuture:32,1"
      Dst: "[io.netty.util.concurrent.CompleteFuture].<init>(io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.SucceededFuture].cause()"
    functionSourceFile: "io.netty.util.concurrent.SucceededFuture"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 29
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.SucceededFuture].isSuccess()"
    functionSourceFile: "io.netty.util.concurrent.SucceededFuture"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 22
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.SucceededFuture].getNow()"
    functionSourceFile: "io.netty.util.concurrent.SucceededFuture"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 24
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlAttribute].type()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlAttribute].name()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlAttribute].prefix()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlAttribute].namespace()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlAttribute].value()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlAttribute"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlAttribute].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlAttribute"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].getClass()"
    - "[java.lang.String].equals(java.lang.Object)"
    functionUses: 9
    ICount: 56
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:63"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:62"
        BranchSideFuncs:
        - "getClass()"
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:64"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:63"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:63"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:67"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:66"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:71"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:72"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:71"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:75"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:74"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:72"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:75"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:74"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:75"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:75"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:74"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:75"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:78"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:77"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:75"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:78"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:77"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:78"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:77"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:81"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:80"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:78"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:81"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:80"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:81"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:81"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:80"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:81"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:85"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:84"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:81"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:85"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlAttribute:63,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.codec.xml.XmlAttribute:69,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 28
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.codec.xml.XmlAttribute].hashCode()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlAttribute"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].hashCode()"
    functionUses: 5
    ICount: 36
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:90"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:92"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:91"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:90"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:93"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:92"
        BranchSideFuncs:
        - "hashCode()"
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:91"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlAttribute:94"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:93"
        BranchSideFuncs:
        - "hashCode()"
      - BranchSide: "io.netty.handler.codec.xml.XmlAttribute:92"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlAttribute:90,1"
      Dst: "[java.lang.String].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.xml.XmlAttribute].toString()"
    functionSourceFile: "io.netty.handler.codec.xml.XmlAttribute"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 19
    ICount: 26
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlAttribute:100,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.xml.XmlAttribute:100,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlAttribute:100,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.xml.XmlAttribute:100,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator"
    linkageType: ""
    functionLinenumber: 301
    functionLinenumberEnd: 313
    functionDepth: 9
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].allowFailure()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setAggregateFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].allPromisesDone()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryPromise()"
    functionUses: 64
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:302"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:312"
        BranchSideFuncs:
        - "setAggregateFailure(java.lang.Throwable)"
        - "allPromisesDone()"
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:311"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:305"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:310"
        BranchSideFuncs:
        - "tryPromise()"
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:309"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:302,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].allowFailure()"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:304,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setAggregateFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:305,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].allPromisesDone()"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:306,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryPromise()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].allowFailure()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator"
    linkageType: ""
    functionLinenumber: 358
    functionLinenumberEnd: 360
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].awaitingPromises()"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:359"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:358"
        BranchSideFuncs:
        - "awaitingPromises()"
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:359"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:358"
        BranchSideFuncs:
        - "awaitingPromises()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:359,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].awaitingPromises()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].awaitingPromises()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator"
    linkageType: ""
    functionLinenumber: 362
    functionLinenumberEnd: 364
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:363"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:362"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setAggregateFailure(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator"
    linkageType: ""
    functionLinenumber: 390
    functionLinenumberEnd: 395
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:391"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:394"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:393"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].allPromisesDone()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator"
    linkageType: ""
    functionLinenumber: 366
    functionLinenumberEnd: 368
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:367"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:366"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:367"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:366"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryPromise()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator"
    linkageType: ""
    functionLinenumber: 380
    functionLinenumberEnd: 387
    functionDepth: 8
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$CloseFuture].trySuccess()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].trySuccess()"
    - "[io.netty.channel.DefaultChannelPromise].trySuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].trySuccess()"
    - "[io.netty.channel.VoidChannelPromise].trySuccess()"
    - "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].trySuccess()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 2
    ICount: 13
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:381"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:385"
        BranchSideFuncs:
        - "trySuccess(java.lang.Object)"
        - "trySuccess()"
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:384"
        BranchSideFuncs:
        - "tryFailure(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:382,1"
      Dst: "[io.netty.channel.ChannelPromise].trySuccess()"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:383,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].trySuccess(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:385,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:386,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator"
    linkageType: ""
    functionLinenumber: 322
    functionLinenumberEnd: 331
    functionDepth: 10
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].allowFailure()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setAggregateFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].allPromisesDone()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setPromise()"
    functionUses: 141
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:323"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:330"
        BranchSideFuncs:
        - "setAggregateFailure(java.lang.Throwable)"
        - "allPromisesDone()"
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:329"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:326"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:330"
        BranchSideFuncs:
        - "setPromise()"
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:329"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:323,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].allowFailure()"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:325,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setAggregateFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:326,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].allPromisesDone()"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:327,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setPromise()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Void)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator"
    linkageType: ""
    functionLinenumber: 334
    functionLinenumberEnd: 342
    functionDepth: 10
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 1
    argTypes:
    - "java.lang.Void"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].awaitingPromises()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].allPromisesDone()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setPromise()"
    functionUses: 4
    ICount: 11
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:335"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:341"
        BranchSideFuncs:
        - "allPromisesDone()"
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:340"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:337"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:341"
        BranchSideFuncs:
        - "setPromise()"
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:340"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:335,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].awaitingPromises()"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:337,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].allPromisesDone()"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:338,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setPromise()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].trySuccess(java.lang.Void)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator"
    linkageType: ""
    functionLinenumber: 345
    functionLinenumberEnd: 356
    functionDepth: 9
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Void"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].awaitingPromises()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].allPromisesDone()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryPromise()"
    functionUses: 1
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:346"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:355"
        BranchSideFuncs:
        - "allPromisesDone()"
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:354"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:348"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:353"
        BranchSideFuncs:
        - "tryPromise()"
      - BranchSide: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:352"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:346,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].awaitingPromises()"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:348,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].allPromisesDone()"
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:349,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryPromise()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].trySuccess(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator"
    linkageType: ""
    functionLinenumber: 260
    functionLinenumberEnd: 262
    functionDepth: 10
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].trySuccess(java.lang.Void)"
    functionUses: 15
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:261,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].trySuccess(java.lang.Void)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator"
    linkageType: ""
    functionLinenumber: 260
    functionLinenumberEnd: 262
    functionDepth: 11
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Void)"
    functionUses: 40
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator:261,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Void)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder:30,1"
      Dst: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder].<init>(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder:34,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder].decodeHeader(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 50
    functionDepth: 2
    returnType: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].<init>()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setMagic(byte)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setOpcode(byte)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readShort()"
    - "[io.netty.buffer.EmptyByteBuf].readShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readShort()"
    - "[io.netty.buffer.SwappedByteBuf].readShort()"
    - "[io.netty.buffer.WrappedByteBuf].readShort()"
    - "[io.netty.buffer.AbstractByteBuf].readShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readShort()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setKeyLength(short)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setExtrasLength(byte)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setDataType(byte)"
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].setReserved(short)"
    - "[io.netty.buffer.SwappedByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readInt()"
    - "[io.netty.buffer.EmptyByteBuf].readInt()"
    - "[io.netty.buffer.AbstractByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readInt()"
    - "[io.netty.buffer.WrappedByteBuf].readInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readInt()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setTotalBodyLength(int)"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setOpaque(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readLong()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readLong()"
    - "[io.netty.buffer.WrappedByteBuf].readLong()"
    - "[io.netty.buffer.SwappedByteBuf].readLong()"
    - "[io.netty.buffer.EmptyByteBuf].readLong()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readLong()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readLong()"
    - "[io.netty.buffer.AbstractByteBuf].readLong()"
    - "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setCas(long)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readShort()"
    - "[io.netty.buffer.ByteBuf].readInt()"
    - "[io.netty.buffer.ByteBuf].readLong()"
    functionUses: 1
    ICount: 23
    EdgeCount: 82
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder:39,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].<init>()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder:40,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder:40,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setMagic(byte)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder:41,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setOpcode(byte)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder:42,1"
      Dst: "[io.netty.buffer.ByteBuf].readShort()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder:42,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setKeyLength(short)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder:43,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setExtrasLength(byte)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder:44,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setDataType(byte)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder:45,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].setReserved(short)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder:46,1"
      Dst: "[io.netty.buffer.ByteBuf].readInt()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder:46,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setTotalBodyLength(int)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder:47,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setOpaque(int)"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder:48,1"
      Dst: "[io.netty.buffer.ByteBuf].readLong()"
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder:48,1"
      Dst: "[io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheMessage].setCas(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].<init>()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest:38,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder].buildInvalidMessage()"
    functionSourceFile: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.binary.BinaryMemcacheRequestDecoder:54,1"
      Dst: "[io.netty.handler.codec.memcache.binary.DefaultBinaryMemcacheRequest].<init>(io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].<init>(org.slf4j.Logger)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "org.slf4j.Logger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.AbstractInternalLogger].<init>(java.lang.String)"
    - "[org.slf4j.Logger].getName()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:30,1"
      Dst: "[org.slf4j.Logger].getName()"
    - Src: "io.netty.util.internal.logging.Slf4JLogger:30,1"
      Dst: "[io.netty.util.internal.logging.AbstractInternalLogger].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].isTraceEnabled()"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].isTraceEnabled()"
    functionUses: 12
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:36,1"
      Dst: "[org.slf4j.Logger].isTraceEnabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].trace(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].trace(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:41,1"
      Dst: "[org.slf4j.Logger].trace(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].trace(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].trace(java.lang.String,java.lang.Object)"
    functionUses: 4
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:46,1"
      Dst: "[org.slf4j.Logger].trace(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 6
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:51,1"
      Dst: "[org.slf4j.Logger].trace(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].trace(java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].trace(java.lang.String,java.lang.Object[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:56,1"
      Dst: "[org.slf4j.Logger].trace(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].trace(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].trace(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:61,1"
      Dst: "[org.slf4j.Logger].trace(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].isDebugEnabled()"
    functionUses: 80
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:66,1"
      Dst: "[org.slf4j.Logger].isDebugEnabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].debug(java.lang.String)"
    functionUses: 66
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:71,1"
      Dst: "[org.slf4j.Logger].debug(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].debug(java.lang.String,java.lang.Object)"
    functionUses: 99
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:76,1"
      Dst: "[org.slf4j.Logger].debug(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 56
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:81,1"
      Dst: "[org.slf4j.Logger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].debug(java.lang.String,java.lang.Object[])"
    functionUses: 21
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:86,1"
      Dst: "[org.slf4j.Logger].debug(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].debug(java.lang.String,java.lang.Throwable)"
    functionUses: 32
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:91,1"
      Dst: "[org.slf4j.Logger].debug(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].isInfoEnabled()"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].isInfoEnabled()"
    functionUses: 4
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:96,1"
      Dst: "[org.slf4j.Logger].isInfoEnabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].info(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].info(java.lang.String)"
    functionUses: 5
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:101,1"
      Dst: "[org.slf4j.Logger].info(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].info(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 108
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].info(java.lang.String,java.lang.Object)"
    functionUses: 1
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:106,1"
      Dst: "[org.slf4j.Logger].info(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 13
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:111,1"
      Dst: "[org.slf4j.Logger].info(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].info(java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].info(java.lang.String,java.lang.Object[])"
    functionUses: 4
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:116,1"
      Dst: "[org.slf4j.Logger].info(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].info(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].info(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:121,1"
      Dst: "[org.slf4j.Logger].info(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].isWarnEnabled()"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].isWarnEnabled()"
    functionUses: 37
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:126,1"
      Dst: "[org.slf4j.Logger].isWarnEnabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].warn(java.lang.String)"
    functionUses: 22
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:131,1"
      Dst: "[org.slf4j.Logger].warn(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].warn(java.lang.String,java.lang.Object)"
    functionUses: 17
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:136,1"
      Dst: "[org.slf4j.Logger].warn(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].warn(java.lang.String,java.lang.Object[])"
    functionUses: 13
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:141,1"
      Dst: "[org.slf4j.Logger].warn(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 26
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:146,1"
      Dst: "[org.slf4j.Logger].warn(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 153
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 74
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:151,1"
      Dst: "[org.slf4j.Logger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].isErrorEnabled()"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].isErrorEnabled()"
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:156,1"
      Dst: "[org.slf4j.Logger].isErrorEnabled()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].error(java.lang.String)"
    functionUses: 4
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:161,1"
      Dst: "[org.slf4j.Logger].error(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].error(java.lang.String,java.lang.Object)"
    functionUses: 2
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:166,1"
      Dst: "[org.slf4j.Logger].error(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 173
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    functionUses: 10
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:171,1"
      Dst: "[org.slf4j.Logger].error(java.lang.String,java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Object[])"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].error(java.lang.String,java.lang.Object[])"
    functionUses: 4
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:176,1"
      Dst: "[org.slf4j.Logger].error(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.logging.Slf4JLogger].error(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.util.internal.logging.Slf4JLogger"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[org.slf4j.Logger].error(java.lang.String,java.lang.Throwable)"
    functionUses: 16
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.logging.Slf4JLogger:181,1"
      Dst: "[org.slf4j.Logger].error(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].<init>(int)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].<init>(int,java.util.concurrent.ThreadFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:55,1"
      Dst: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class)"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:55,1"
      Dst: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].<init>(int,java.util.concurrent.ThreadFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].<init>(int,java.util.concurrent.ThreadFactory)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.concurrent.ThreadFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ScheduledThreadPoolExecutor].<init>(int,java.util.concurrent.ThreadFactory)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].newPromise()"
    - "[java.util.Collections].singleton(java.lang.Object)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:62,1"
      Dst: "[java.util.concurrent.ScheduledThreadPoolExecutor].<init>(int,java.util.concurrent.ThreadFactory)"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:47,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].newPromise()"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:48,1"
      Dst: "[java.util.Collections].singleton(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].<init>(int,java.util.concurrent.RejectedExecutionHandler)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.util.concurrent.RejectedExecutionHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].<init>(int,java.util.concurrent.ThreadFactory,java.util.concurrent.RejectedExecutionHandler)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:70,1"
      Dst: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class)"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:70,1"
      Dst: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].<init>(int,java.util.concurrent.ThreadFactory,java.util.concurrent.RejectedExecutionHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].<init>(int,java.util.concurrent.ThreadFactory,java.util.concurrent.RejectedExecutionHandler)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "java.util.concurrent.ThreadFactory"
    - "java.util.concurrent.RejectedExecutionHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ScheduledThreadPoolExecutor].<init>(int,java.util.concurrent.ThreadFactory,java.util.concurrent.RejectedExecutionHandler)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].newPromise()"
    - "[java.util.Collections].singleton(java.lang.Object)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:78,1"
      Dst: "[java.util.concurrent.ScheduledThreadPoolExecutor].<init>(int,java.util.concurrent.ThreadFactory,java.util.concurrent.RejectedExecutionHandler)"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:47,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].newPromise()"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:48,1"
      Dst: "[java.util.Collections].singleton(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].next()"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionDepth: 0
    returnType: "io.netty.util.concurrent.EventExecutor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].parent()"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.EventExecutorGroup"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: 92
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 63
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop(java.lang.Thread)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Thread"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].newPromise()"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionDepth: 2
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].<init>(io.netty.util.concurrent.EventExecutor)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:103,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].<init>(io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].newProgressivePromise()"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.util.concurrent.ProgressivePromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultProgressivePromise].<init>(io.netty.util.concurrent.EventExecutor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:108,1"
      Dst: "[io.netty.util.concurrent.DefaultProgressivePromise].<init>(io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].newSucceededFuture(java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 114
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.SucceededFuture].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:113,1"
      Dst: "[io.netty.util.concurrent.SucceededFuture].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].newFailedFuture(java.lang.Throwable)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionDepth: 2
    returnType: "io.netty.util.concurrent.Future<V>"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FailedFuture].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Throwable)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:118,1"
      Dst: "[io.netty.util.concurrent.FailedFuture].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].isShuttingDown()"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 124
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ThreadPoolExecutor].isShutdown()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:123,1"
      Dst: "[java.util.concurrent.ThreadPoolExecutor].isShutdown()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].shutdownNow()"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ScheduledThreadPoolExecutor].shutdownNow()"
    - "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:128,1"
      Dst: "[java.util.concurrent.ScheduledThreadPoolExecutor].shutdownNow()"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:129,1"
      Dst: "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].shutdown()"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ScheduledThreadPoolExecutor].shutdown()"
    - "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:135,1"
      Dst: "[java.util.concurrent.ScheduledThreadPoolExecutor].shutdown()"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:136,1"
      Dst: "[io.netty.util.concurrent.Promise].trySuccess(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].shutdownGracefully()"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].shutdownGracefully(long,long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:141,1"
      Dst: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].shutdownGracefully(long,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].shutdownGracefully(long,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Future<?>"
    argCount: 3
    argTypes:
    - "long"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].shutdown()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].terminationFuture()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:148,1"
      Dst: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].shutdown()"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:149,1"
      Dst: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].terminationFuture()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].terminationFuture()"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].iterator()"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[java.util.Set].iterator()"
    functionUses: 25
    ICount: 4
    EdgeCount: 20
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:159,1"
      Dst: "[java.util.Set].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].decorateTask(java.lang.Runnable,java.util.concurrent.RunnableScheduledFuture<V>)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.util.concurrent.RunnableScheduledFuture<V>"
    argCount: 2
    argTypes:
    - "java.lang.Runnable"
    - "java.util.concurrent.RunnableScheduledFuture<V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].<init>(io.netty.util.concurrent.EventExecutor,java.util.concurrent.RunnableScheduledFuture,boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:164"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:164,1"
      Dst: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].<init>(io.netty.util.concurrent.EventExecutor,java.util.concurrent.RunnableScheduledFuture,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.PromiseTask].<init>(io.netty.util.concurrent.EventExecutor,java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.PromiseTask"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 76
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.util.concurrent.EventExecutor"
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].<init>(io.netty.util.concurrent.EventExecutor)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseTask:73,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].<init>(io.netty.util.concurrent.EventExecutor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].decorateTask(java.util.concurrent.Callable<V>,java.util.concurrent.RunnableScheduledFuture<V>)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.util.concurrent.RunnableScheduledFuture<V>"
    argCount: 2
    argTypes:
    - "java.util.concurrent.Callable<V>"
    - "java.util.concurrent.RunnableScheduledFuture<V>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].<init>(io.netty.util.concurrent.EventExecutor,java.util.concurrent.RunnableScheduledFuture,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:170,1"
      Dst: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].<init>(io.netty.util.concurrent.EventExecutor,java.util.concurrent.RunnableScheduledFuture,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionDepth: 0
    returnType: "io.netty.util.concurrent.ScheduledFuture<?>"
    argCount: 3
    argTypes:
    - "java.lang.Runnable"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ScheduledThreadPoolExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    functionUses: 20
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:175,1"
      Dst: "[java.util.concurrent.ScheduledThreadPoolExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].schedule(java.util.concurrent.Callable<V>,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.ScheduledFuture<V>"
    argCount: 3
    argTypes:
    - "java.util.concurrent.Callable<V>"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ScheduledThreadPoolExecutor].schedule(java.util.concurrent.Callable,long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:180,1"
      Dst: "[java.util.concurrent.ScheduledThreadPoolExecutor].schedule(java.util.concurrent.Callable,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionDepth: 0
    returnType: "io.netty.util.concurrent.ScheduledFuture<?>"
    argCount: 4
    argTypes:
    - "java.lang.Runnable"
    - "long"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ScheduledThreadPoolExecutor].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    functionUses: 5
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:185,1"
      Dst: "[java.util.concurrent.ScheduledThreadPoolExecutor].scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].scheduleWithFixedDelay(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.ScheduledFuture<?>"
    argCount: 4
    argTypes:
    - "java.lang.Runnable"
    - "long"
    - "long"
    - "java.util.concurrent.TimeUnit"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ScheduledThreadPoolExecutor].scheduleWithFixedDelay(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:190,1"
      Dst: "[java.util.concurrent.ScheduledThreadPoolExecutor].scheduleWithFixedDelay(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].submit(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future<?>"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ScheduledThreadPoolExecutor].submit(java.lang.Runnable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:195,1"
      Dst: "[java.util.concurrent.ScheduledThreadPoolExecutor].submit(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].submit(java.lang.Runnable,java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 2
    argTypes:
    - "java.lang.Runnable"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ScheduledThreadPoolExecutor].submit(java.lang.Runnable,java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:200,1"
      Dst: "[java.util.concurrent.ScheduledThreadPoolExecutor].submit(java.lang.Runnable,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].submit(java.util.concurrent.Callable<T>)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future<T>"
    argCount: 1
    argTypes:
    - "java.util.concurrent.Callable<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ScheduledThreadPoolExecutor].submit(java.util.concurrent.Callable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:205,1"
      Dst: "[java.util.concurrent.ScheduledThreadPoolExecutor].submit(java.util.concurrent.Callable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 212
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].<init>(java.lang.Runnable)"
    - "[java.util.concurrent.ScheduledThreadPoolExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    functionUses: 41
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:210,1"
      Dst: "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].<init>(java.lang.Runnable)"
    - Src: "io.netty.util.concurrent.UnorderedThreadPoolEventExecutor:210,1"
      Dst: "[java.util.concurrent.ScheduledThreadPoolExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$TraceRecord].<init>()"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$TraceRecord"
    linkageType: ""
    functionLinenumber: 642
    functionLinenumberEnd: 648
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Throwable].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$TraceRecord:643,1"
      Dst: "[java.lang.Throwable].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ResourceLeakDetector$TraceRecord].<init>(io.netty.util.ResourceLeakDetector$1)"
    functionSourceFile: "io.netty.util.ResourceLeakDetector$TraceRecord"
    linkageType: ""
    functionLinenumber: 609
    functionLinenumberEnd: 611
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.ResourceLeakDetector$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ResourceLeakDetector$TraceRecord:610,1"
      Dst: "[io.netty.util.ResourceLeakDetector$TraceRecord].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:49,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].getOptions()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:49,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 68
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].getReadMode()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].isAllowHalfClosure()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].getSendBufferSize()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].getReceiveBufferSize()"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 5
    ICount: 23
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:55"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:58"
        BranchSideFuncs:
        - "getReadMode()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:57"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:58"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:61"
        BranchSideFuncs:
        - "isAllowHalfClosure()"
        - "valueOf(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:60"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:61"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:64"
        BranchSideFuncs:
        - "getSendBufferSize()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:63"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:64"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:67"
        BranchSideFuncs:
        - "getReceiveBufferSize()"
        - "valueOf(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:66"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:56,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].getReadMode()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:59,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].isAllowHalfClosure()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:59,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:62,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].getSendBufferSize()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:62,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:65,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].getReceiveBufferSize()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:67,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].isAllowHalfClosure()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].getSendBufferSize()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 180
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getSendBufferSize()"
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:177,1"
      Dst: "[io.netty.channel.unix.Socket].getSendBufferSize()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:179,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].getReceiveBufferSize()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 197
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getReceiveBufferSize()"
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:194,1"
      Dst: "[io.netty.channel.unix.Socket].getReceiveBufferSize()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:196,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 87
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setReadMode(io.netty.channel.unix.DomainSocketReadMode)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setAllowHalfClosure(boolean)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setSendBufferSize(int)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setReceiveBufferSize(int)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 2
    ICount: 30
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:74"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:76"
        BranchSideFuncs:
        - "setReadMode(io.netty.channel.unix.DomainSocketReadMode)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:75"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:76"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:78"
        BranchSideFuncs:
        - "booleanValue()"
        - "setAllowHalfClosure(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:77"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:78"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:80"
        BranchSideFuncs:
        - "setSendBufferSize(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:79"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:80"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:83"
        BranchSideFuncs:
        - "setReceiveBufferSize(int)"
        - "intValue()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:82"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:72,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:75,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setReadMode(io.netty.channel.unix.DomainSocketReadMode)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:77,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:77,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setAllowHalfClosure(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:79,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:79,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setSendBufferSize(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:81,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:83,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setReadMode(io.netty.channel.unix.DomainSocketReadMode)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionDepth: 1
    returnType: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.unix.DomainSocketReadMode"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:166,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setAllowHalfClosure(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 218
    functionDepth: 0
    returnType: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 189
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setSendBufferSize(int)"
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:185,1"
      Dst: "[io.netty.channel.unix.Socket].setSendBufferSize(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:188,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 201
    functionLinenumberEnd: 206
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setReceiveBufferSize(int)"
    - "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:202,1"
      Dst: "[io.netty.channel.unix.Socket].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:205,1"
      Dst: "[java.lang.RuntimeException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionDepth: 1
    returnType: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:91,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:98,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:104,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteSpinCount(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:110,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:116,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 121
    functionLinenumberEnd: 124
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:122,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setAutoClose(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionDepth: 1
    returnType: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:128,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:134,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionDepth: 4
    returnType: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:141,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionDepth: 4
    returnType: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:148,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:154,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setAutoRead(boolean)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannelConfig:160,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:44,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean,long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:52,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean,boolean,long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:64,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean,long)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackDecoder].<init>(long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean,boolean,io.netty.handler.codec.http2.HpackDecoder)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:76,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].<init>(long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:76,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean,boolean,io.netty.handler.codec.http2.HpackDecoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean,boolean,long)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "boolean"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackDecoder].<init>(long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean,boolean,io.netty.handler.codec.http2.HpackDecoder)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:91,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].<init>(long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:91,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean,boolean,io.netty.handler.codec.http2.HpackDecoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean,long,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackDecoder].<init>(long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean,boolean,io.netty.handler.codec.http2.HpackDecoder)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:106,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].<init>(long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:106,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean,boolean,io.netty.handler.codec.http2.HpackDecoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean,boolean,io.netty.handler.codec.http2.HpackDecoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "boolean"
    - "io.netty.handler.codec.http2.HpackDecoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http2.HpackDecoder].getMaxHeaderListSize()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil].calculateMaxHeaderListSizeGoAway(long)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:113,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:114,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:118,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].getMaxHeaderListSize()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:118,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].calculateMaxHeaderListSizeGoAway(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].maxHeaderTableSize(long)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: 122
    functionLinenumberEnd: 125
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackDecoder].setMaxHeaderTableSize(long)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:123,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].setMaxHeaderTableSize(long)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].setMaxHeaderTableSize(long)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: 315
    functionLinenumberEnd: 328
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Long].valueOf(long)"
    - "[io.netty.handler.codec.http2.HpackDynamicTable].setCapacity(long)"
    functionUses: 1
    ICount: 29
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:316"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:316"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:319"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:321"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:326"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder:318,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:317,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:325,1"
      Dst: "[io.netty.handler.codec.http2.HpackDynamicTable].setCapacity(long)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].maxHeaderTableSize()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionDepth: 2
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackDecoder].getMaxHeaderTableSize()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:128,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].getMaxHeaderTableSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].getMaxHeaderTableSize()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: 345
    functionLinenumberEnd: 347
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackDynamicTable].capacity()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder:346,1"
      Dst: "[io.netty.handler.codec.http2.HpackDynamicTable].capacity()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].maxHeaderListSize(long,long)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 140
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Long].valueOf(long)"
    - "[io.netty.handler.codec.http2.HpackDecoder].setMaxHeaderListSize(long)"
    functionUses: 1
    ICount: 21
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:133"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:136"
        BranchSideFuncs:
        - "setMaxHeaderListSize(long)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:135,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:134,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:137,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].setMaxHeaderListSize(long)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].setMaxHeaderListSize(long)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: 329
    functionLinenumberEnd: 336
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[java.lang.Long].valueOf(long)"
    functionUses: 1
    ICount: 20
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:330"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:330"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:333"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder:332,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:331,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].maxHeaderListSize()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackDecoder].getMaxHeaderListSize()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:143,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].getMaxHeaderListSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].getMaxHeaderListSize()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: 337
    functionLinenumberEnd: 339
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].maxHeaderListSizeGoAway()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].configuration()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2HeadersDecoder$Configuration"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].decodeHeaders(int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 171
    functionDepth: 12
    returnType: "io.netty.handler.codec.http2.Http2Headers"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].newHeaders()"
    - "[io.netty.handler.codec.http2.HpackDecoder].decode(int,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2Headers,boolean)"
    - "[io.netty.handler.codec.EmptyHeaders].size()"
    - "[io.netty.handler.codec.DefaultHeaders].size()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].size()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    - "[java.io.InvalidClassException].getMessage()"
    - "[java.nio.file.InvalidPathException].getMessage()"
    - "[java.lang.Throwable].getMessage()"
    - "[sun.nio.fs.UnixException].getMessage()"
    - "[java.net.URISyntaxException].getMessage()"
    - "[java.util.regex.PatternSyntaxException].getMessage()"
    - "[java.nio.file.FileSystemException].getMessage()"
    - "[java.security.cert.CertificateRevokedException].getMessage()"
    - "[io.netty.handler.codec.Headers].size()"
    functionUses: 1
    ICount: 24
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:159,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].newHeaders()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:160,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].decode(int,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2Headers,boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:161,1"
      Dst: "[io.netty.handler.codec.Headers].size()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:170,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:170,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.Throwable,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].newHeaders()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionDepth: 3
    returnType: "io.netty.handler.codec.http2.Http2Headers"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Headers].<init>(boolean,boolean,int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder:211,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Headers].<init>(boolean,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].decode(int,io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.Http2Headers,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: 127
    functionLinenumberEnd: 136
    functionDepth: 11
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink].<init>(int,io.netty.handler.codec.http2.Http2Headers,long,boolean)"
    - "[io.netty.handler.codec.http2.HpackDecoder].decode(io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink)"
    - "[io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink].finish()"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder:128,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink].<init>(int,io.netty.handler.codec.http2.Http2Headers,long,boolean)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:130,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].decode(io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:134,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink].finish()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].decode(io.netty.buffer.ByteBuf,io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 310
    functionDepth: 10
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.http2.HpackDecoder].getIndexedHeader(int)"
    - "[io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink].appendToHeaderList(io.netty.util.AsciiString,io.netty.util.AsciiString)"
    - "[io.netty.handler.codec.http2.HpackDecoder].readName(int)"
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.handler.codec.http2.HpackDecoder].setDynamicTableSize(long)"
    - "[io.netty.handler.codec.http2.HpackDecoder].decodeULE128(io.netty.buffer.ByteBuf,long)"
    - "[io.netty.handler.codec.http2.HpackDecoder].decodeULE128(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http2.HpackDecoder].notEnoughDataException(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http2.HpackDecoder].readStringLiteral(io.netty.buffer.ByteBuf,int,boolean)"
    - "[io.netty.handler.codec.http2.HpackDecoder].insertHeader(io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink,io.netty.util.AsciiString,io.netty.util.AsciiString,io.netty.handler.codec.http2.HpackUtil$IndexType)"
    - "[java.lang.Error].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 1
    ICount: 247
    EdgeCount: 71
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:145"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:306"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:305"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:149"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:149"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:153"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:167"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:168"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:184"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:185"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:195"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:191"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:190"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:196"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:195"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:236"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:235"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:234"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:238"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:255"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:259"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:258"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:266"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:265"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:264"
        BranchSideFuncs:
        - "readByte()"
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:292"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:296"
        BranchSideFuncs:
        - "notEnoughDataException(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:295"
        BranchSideFuncs:
        - "insertHeader(io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink,io.netty.util.AsciiString,io.netty.util.AsciiString,io.netty.handler.codec.http2.HpackUtil$IndexType)"
        - "readStringLiteral(io.netty.buffer.ByteBuf,int,boolean)"
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:306"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:309"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:308"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder:145,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:148,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:163,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].getIndexedHeader(int)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:164,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink].appendToHeaderList(io.netty.util.AsciiString,io.netty.util.AsciiString)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:181,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].readName(int)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:182,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:191,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].setDynamicTableSize(long)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:215,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].decodeULE128(io.netty.buffer.ByteBuf,long)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:220,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].decodeULE128(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:255,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:256,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].notEnoughDataException(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:259,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].readStringLiteral(io.netty.buffer.ByteBuf,int,boolean)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:273,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].insertHeader(io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink,io.netty.util.AsciiString,io.netty.util.AsciiString,io.netty.handler.codec.http2.HpackUtil$IndexType)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:302,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:302,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:302,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:302,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:302,1"
      Dst: "[java.lang.Error].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:307,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 56
    CyclomaticComplexity: 27
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].getIndexedHeader(int)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: 417
    functionLinenumberEnd: 425
    functionDepth: 2
    returnType: "io.netty.handler.codec.http2.HpackHeaderField"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackStaticTable].getEntry(int)"
    - "[io.netty.handler.codec.http2.HpackDynamicTable].length()"
    - "[io.netty.handler.codec.http2.HpackDynamicTable].getEntry(int)"
    functionUses: 2
    ICount: 18
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:418"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:421"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:420"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:421"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:424"
        BranchSideFuncs:
        - "getEntry(int)"
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:423"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder:419,1"
      Dst: "[io.netty.handler.codec.http2.HpackStaticTable].getEntry(int)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:421,1"
      Dst: "[io.netty.handler.codec.http2.HpackDynamicTable].length()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:422,1"
      Dst: "[io.netty.handler.codec.http2.HpackDynamicTable].getEntry(int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].readName(int)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: 405
    functionLinenumberEnd: 415
    functionDepth: 2
    returnType: "io.netty.util.AsciiString"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackStaticTable].getEntry(int)"
    - "[io.netty.handler.codec.http2.HpackDynamicTable].length()"
    - "[io.netty.handler.codec.http2.HpackDynamicTable].getEntry(int)"
    functionUses: 3
    ICount: 22
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:406"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:410"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:409"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:410"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:414"
        BranchSideFuncs:
        - "getEntry(int)"
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:413"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder:407,1"
      Dst: "[io.netty.handler.codec.http2.HpackStaticTable].getEntry(int)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:410,1"
      Dst: "[io.netty.handler.codec.http2.HpackDynamicTable].length()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:411,1"
      Dst: "[io.netty.handler.codec.http2.HpackDynamicTable].getEntry(int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].setDynamicTableSize(long)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: 370
    functionLinenumberEnd: 378
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackDynamicTable].setCapacity(long)"
    functionUses: 2
    ICount: 13
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:371"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:374"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:373"
        BranchSideFuncs:
        - "setCapacity(long)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder:376,1"
      Dst: "[io.netty.handler.codec.http2.HpackDynamicTable].setCapacity(long)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].decodeULE128(io.netty.buffer.ByteBuf,long)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: 482
    functionLinenumberEnd: 507
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 2
    ICount: 52
    EdgeCount: 41
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:483"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:484"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:483"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:483"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:483"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:482"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:483"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:484"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:483"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:484"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:484"
        BranchSideFuncs:
        - "readerIndex()"
        - "writerIndex()"
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:483"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:486"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:506"
        BranchSideFuncs:
        - "getByte(int)"
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:505"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:488"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:488"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:495"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:488"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:488"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:499"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:null"
        BranchSideFuncs:
        - "readerIndex(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder:483,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:485,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:486,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:487,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:500,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].decodeULE128(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: 462
    functionLinenumberEnd: 475
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.handler.codec.http2.HpackDecoder].decodeULE128(io.netty.buffer.ByteBuf,long)"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 4
    ICount: 13
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:465"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:473"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder:463,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:464,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].decodeULE128(io.netty.buffer.ByteBuf,long)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:471,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].notEnoughDataException(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: 453
    functionLinenumberEnd: 455
    functionDepth: 0
    returnType: "java.lang.IllegalArgumentException"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder:454,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:454,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:454,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:454,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:454,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].readStringLiteral(io.netty.buffer.ByteBuf,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: 444
    functionLinenumberEnd: 451
    functionDepth: 3
    returnType: "io.netty.util.AsciiString"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackHuffmanDecoder].decode(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(byte[])"
    - "[io.netty.util.AsciiString].<init>(byte[],boolean)"
    - "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    functionUses: 2
    ICount: 13
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HpackDecoder:445"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:448"
        BranchSideFuncs:
        - "decode(io.netty.buffer.ByteBuf,int)"
      - BranchSide: "io.netty.handler.codec.http2.HpackDecoder:447"
        BranchSideFuncs:
        - "readBytes(byte[])"
        - "<init>(byte[],boolean)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder:446,1"
      Dst: "[io.netty.handler.codec.http2.HpackHuffmanDecoder].decode(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:449,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:450,1"
      Dst: "[io.netty.util.AsciiString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].insertHeader(io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink,io.netty.util.AsciiString,io.netty.util.AsciiString,io.netty.handler.codec.http2.HpackUtil$IndexType)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: 427
    functionLinenumberEnd: 443
    functionDepth: 9
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink"
    - "io.netty.util.AsciiString"
    - "io.netty.util.AsciiString"
    - "io.netty.handler.codec.http2.HpackUtil$IndexType"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink].appendToHeaderList(io.netty.util.AsciiString,io.netty.util.AsciiString)"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.http2.HpackHeaderField].<init>(java.lang.CharSequence,java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.HpackDynamicTable].add(io.netty.handler.codec.http2.HpackHeaderField)"
    - "[java.lang.Error].<init>(java.lang.String)"
    functionUses: 2
    ICount: 20
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder:428,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder$Http2HeadersSink].appendToHeaderList(io.netty.util.AsciiString,io.netty.util.AsciiString)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:430,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:436,1"
      Dst: "[io.netty.handler.codec.http2.HpackHeaderField].<init>(java.lang.CharSequence,java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:436,1"
      Dst: "[io.netty.handler.codec.http2.HpackDynamicTable].add(io.netty.handler.codec.http2.HpackHeaderField)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:440,1"
      Dst: "[java.lang.Error].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].numberOfHeadersGuess()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].validateHeaders()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].validateHeaderValues()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1].<init>()"
    functionSourceFile: "io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1:47,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1].compare(io.netty.resolver.dns.macos.DnsResolver,io.netty.resolver.dns.macos.DnsResolver)"
    functionSourceFile: "io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.resolver.dns.macos.DnsResolver"
    - "io.netty.resolver.dns.macos.DnsResolver"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.macos.DnsResolver].searchOrder()"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1:52"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1:51"
        BranchSideFuncs:
        - "searchOrder()"
    - Branch String: "io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1:52"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1:51"
        BranchSideFuncs:
        - "searchOrder()"
    Callsites:
    - Src: "io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1:52,1"
      Dst: "[io.netty.resolver.dns.macos.DnsResolver].searchOrder()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1].compare(io.netty.resolver.dns.macos.DnsResolver,io.netty.resolver.dns.macos.DnsResolver)"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1:47,1"
      Dst: "[io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider$1].compare(io.netty.resolver.dns.macos.DnsResolver,io.netty.resolver.dns.macos.DnsResolver)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel$NioSctpServerChannelConfig].<init>(io.netty.channel.sctp.nio.NioSctpServerChannel,io.netty.channel.sctp.nio.NioSctpServerChannel,com.sun.nio.sctp.SctpServerChannel)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel$NioSctpServerChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.sctp.nio.NioSctpServerChannel"
    - "io.netty.channel.sctp.nio.NioSctpServerChannel"
    - "com.sun.nio.sctp.SctpServerChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].<init>(io.netty.channel.sctp.SctpServerChannel,com.sun.nio.sctp.SctpServerChannel)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel$NioSctpServerChannelConfig:231,1"
      Dst: "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].<init>(io.netty.channel.sctp.SctpServerChannel,com.sun.nio.sctp.SctpServerChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel$NioSctpServerChannelConfig].autoReadCleared()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel$NioSctpServerChannelConfig"
    linkageType: ""
    functionLinenumber: 235
    functionLinenumberEnd: 238
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].access$100(io.netty.channel.sctp.nio.NioSctpServerChannel)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel$NioSctpServerChannelConfig:236,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel].access$100(io.netty.channel.sctp.nio.NioSctpServerChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].access$100(io.netty.channel.sctp.nio.NioSctpServerChannel)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.sctp.nio.NioSctpServerChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].clearReadPending()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:47,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].clearReadPending()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel$NioSctpServerChannelConfig].<init>(io.netty.channel.sctp.nio.NioSctpServerChannel,io.netty.channel.sctp.nio.NioSctpServerChannel,com.sun.nio.sctp.SctpServerChannel,io.netty.channel.sctp.nio.NioSctpServerChannel$1)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel$NioSctpServerChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.sctp.nio.NioSctpServerChannel"
    - "io.netty.channel.sctp.nio.NioSctpServerChannel"
    - "com.sun.nio.sctp.SctpServerChannel"
    - "io.netty.channel.sctp.nio.NioSctpServerChannel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$NioSctpServerChannelConfig].<init>(io.netty.channel.sctp.nio.NioSctpServerChannel,io.netty.channel.sctp.nio.NioSctpServerChannel,com.sun.nio.sctp.SctpServerChannel)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel$NioSctpServerChannelConfig:229,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel$NioSctpServerChannelConfig].<init>(io.netty.channel.sctp.nio.NioSctpServerChannel,io.netty.channel.sctp.nio.NioSctpServerChannel,com.sun.nio.sctp.SctpServerChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer$Entry$1].<init>()"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer$Entry$1"
    linkageType: ""
    functionLinenumber: 800
    functionLinenumberEnd: 802
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer$Entry$1:801,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundBuffer$Entry$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.channel.ChannelOutboundBuffer$Entry$1"
    linkageType: ""
    functionLinenumber: 803
    functionLinenumberEnd: 805
    functionDepth: 2
    returnType: "io.netty.channel.ChannelOutboundBuffer$Entry"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer$Entry].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.channel.ChannelOutboundBuffer$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundBuffer$Entry$1:804,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer$Entry].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.channel.ChannelOutboundBuffer$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyStreamStatus].statusPhrase()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyStreamStatus"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 160
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyStreamStatus].hashCode()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyStreamStatus"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].code()"
    functionUses: 5
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyStreamStatus:164,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamStatus].code()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyStreamStatus].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyStreamStatus"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 174
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].code()"
    functionUses: 9
    ICount: 13
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyStreamStatus:169"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyStreamStatus:173"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyStreamStatus:172"
        BranchSideFuncs:
        - "code()"
    - Branch String: "io.netty.handler.codec.spdy.SpdyStreamStatus:173"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyStreamStatus:172"
        BranchSideFuncs:
        - "code()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyStreamStatus:173,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamStatus].code()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdyStreamStatus].toString()"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyStreamStatus"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].statusPhrase()"
    functionUses: 19
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyStreamStatus:178,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamStatus].statusPhrase()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyStreamStatus].compareTo(io.netty.handler.codec.spdy.SpdyStreamStatus)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyStreamStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyStreamStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].code()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyStreamStatus:183,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamStatus].code()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyStreamStatus].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyStreamStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].compareTo(io.netty.handler.codec.spdy.SpdyStreamStatus)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyStreamStatus:23,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyStreamStatus].compareTo(io.netty.handler.codec.spdy.SpdyStreamStatus)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.FixedChannelPool$6].call()"
    functionSourceFile: "io.netty.channel.pool.FixedChannelPool$6"
    linkageType: ""
    functionLinenumber: 511
    functionLinenumberEnd: 514
    functionDepth: 3
    returnType: "java.lang.Void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.pool.FixedChannelPool].access$1301(io.netty.channel.pool.FixedChannelPool)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.FixedChannelPool$6:512,1"
      Dst: "[io.netty.channel.pool.FixedChannelPool].access$1301(io.netty.channel.pool.FixedChannelPool)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.IdentityCipherSuiteFilter].<init>(boolean)"
    functionSourceFile: "io.netty.handler.ssl.IdentityCipherSuiteFilter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.IdentityCipherSuiteFilter:40,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.IdentityCipherSuiteFilter].filterCipherSuites(java.lang.Iterable<String>,java.util.List<String>,java.util.Set<String>)"
    functionSourceFile: "io.netty.handler.ssl.IdentityCipherSuiteFilter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 3
    argTypes:
    - "java.lang.Iterable<String>"
    - "java.util.List<String>"
    - "java.util.Set<String>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.List].toArray(java.lang.Object[])"
    - "[java.util.Set].toArray(java.lang.Object[])"
    - "[java.util.Set].size()"
    - "[java.util.ArrayList].<init>(int)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.IdentityCipherSuiteFilter:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.IdentityCipherSuiteFilter:52"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.IdentityCipherSuiteFilter:51"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.IdentityCipherSuiteFilter:48"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.IdentityCipherSuiteFilter:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.IdentityCipherSuiteFilter:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.IdentityCipherSuiteFilter:59"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.IdentityCipherSuiteFilter:58"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.IdentityCipherSuiteFilter:54"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.IdentityCipherSuiteFilter:57"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.IdentityCipherSuiteFilter:56"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.IdentityCipherSuiteFilter:49,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.IdentityCipherSuiteFilter:50,1"
      Dst: "[java.util.Set].toArray(java.lang.Object[])"
    - Src: "io.netty.handler.ssl.IdentityCipherSuiteFilter:52,1"
      Dst: "[java.util.Set].size()"
    - Src: "io.netty.handler.ssl.IdentityCipherSuiteFilter:52,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.ssl.IdentityCipherSuiteFilter:53,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.ssl.IdentityCipherSuiteFilter:53,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.ssl.IdentityCipherSuiteFilter:53,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.ssl.IdentityCipherSuiteFilter:57,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.Recycler$1].<init>()"
    functionSourceFile: "io.netty.util.Recycler$1"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.Recycler$1:41,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$1].recycle(java.lang.Object)"
    functionSourceFile: "io.netty.util.Recycler$1"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.Recycler$1].toString()"
    functionSourceFile: "io.netty.util.Recycler$1"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle$1].<init>(io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle)"
    functionSourceFile: "io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle$1"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle$1:101,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle$1].get()"
    functionSourceFile: "io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle$1"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].access$100(io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].access$200(io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle)"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle$1:104"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle$1:103"
        BranchSideFuncs:
        - "access$200(io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle)"
        - "access$100(io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle)"
    Callsites:
    - Src: "io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle$1:104,1"
      Dst: "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].access$100(io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle)"
    - Src: "io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle$1:104,1"
      Dst: "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].access$200(io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$CompressionAlgorithm].<init>(io.netty.handler.ssl.OpenSslEngineMap,io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$CompressionAlgorithm"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.OpenSslEngineMap"
    - "io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$CompressionAlgorithm:1107,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$CompressionAlgorithm].compress(long,byte[])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$CompressionAlgorithm"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "long"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$400(io.netty.handler.ssl.OpenSslEngineMap,long)"
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm].compress(javax.net.ssl.SSLEngine,byte[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$CompressionAlgorithm:1114,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$400(io.netty.handler.ssl.OpenSslEngineMap,long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$CompressionAlgorithm:1115,1"
      Dst: "[io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm].compress(javax.net.ssl.SSLEngine,byte[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$CompressionAlgorithm].decompress(long,int,byte[])"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$CompressionAlgorithm"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 3
    argTypes:
    - "long"
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$400(io.netty.handler.ssl.OpenSslEngineMap,long)"
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm].decompress(javax.net.ssl.SSLEngine,int,byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$CompressionAlgorithm:1120,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext].access$400(io.netty.handler.ssl.OpenSslEngineMap,long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$CompressionAlgorithm:1121,1"
      Dst: "[io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm].decompress(javax.net.ssl.SSLEngine,int,byte[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslContext$CompressionAlgorithm].algorithmId()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$CompressionAlgorithm"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm].algorithmId()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslContext$CompressionAlgorithm:1126,1"
      Dst: "[io.netty.handler.ssl.OpenSslCertificateCompressionAlgorithm].algorithmId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils$1].<init>()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils$1"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils$1:54,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils$1].run()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils$1"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "java.lang.reflect.Method"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils$1:57,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].<init>(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteOrder)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:64,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteOrder)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 72
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "java.nio.ByteOrder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 21
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.EmptyByteBuf:70"
      Branch Sides:
      - BranchSide: "io.netty.buffer.EmptyByteBuf:67"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
      - BranchSide: "io.netty.buffer.EmptyByteBuf:66"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "checkNotNull(java.lang.Object,java.lang.String)"
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:67,1"
      Dst: "[io.netty.buffer.ByteBuf].<init>()"
    - Src: "io.netty.buffer.EmptyByteBuf:68,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.EmptyByteBuf:70,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.EmptyByteBuf:70,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.buffer.EmptyByteBuf:70,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.EmptyByteBuf:70,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.EmptyByteBuf].capacity()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 53
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].capacity(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 81
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.ReadOnlyBufferException].<init>()"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:80,1"
      Dst: "[java.nio.ReadOnlyBufferException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].alloc()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBufAllocator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].order()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "java.nio.ByteOrder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].unwrap()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].asReadOnly()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].unmodifiableBuffer(io.netty.buffer.ByteBuf)"
    functionUses: 14
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:100,1"
      Dst: "[io.netty.buffer.Unpooled].unmodifiableBuffer(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].isReadOnly()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].isDirect()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].maxCapacity()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].order(java.nio.ByteOrder)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 119
    functionLinenumberEnd: 131
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteOrder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.EmptyByteBuf].order()"
    - "[io.netty.buffer.EmptyByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteOrder)"
    - "[io.netty.buffer.EmptyByteBuf].alloc()"
    functionUses: 34
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.buffer.EmptyByteBuf:120"
      Branch Sides:
      - BranchSide: "io.netty.buffer.EmptyByteBuf:124"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.EmptyByteBuf:123"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.EmptyByteBuf:125"
      Branch Sides:
      - BranchSide: "io.netty.buffer.EmptyByteBuf:129"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.EmptyByteBuf:128"
        BranchSideFuncs:
        - "alloc()"
        - "<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteOrder)"
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:120,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.buffer.EmptyByteBuf:120,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].order()"
    - Src: "io.netty.buffer.EmptyByteBuf:129,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].alloc()"
    - Src: "io.netty.buffer.EmptyByteBuf:129,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].<init>(io.netty.buffer.ByteBufAllocator,java.nio.ByteOrder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 244
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int)"
    functionUses: 50
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:140,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].checkIndex(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 1040
    functionLinenumberEnd: 1045
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 6
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.EmptyByteBuf:1041"
      Branch Sides:
      - BranchSide: "io.netty.buffer.EmptyByteBuf:1044"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.buffer.EmptyByteBuf:1043"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:1042,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 127
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 149
    functionLinenumberEnd: 151
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int)"
    functionUses: 50
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:150,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setIndex(int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 158
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int)"
    functionUses: 14
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:155,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 427
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 49
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].maxWritableBytes()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 173
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].isReadable()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 106
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].isWritable()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 183
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 7
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].clear()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 186
    functionLinenumberEnd: 188
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 9
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].markReaderIndex()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].resetReaderIndex()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 198
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].markWriterIndex()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].resetWriterIndex()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].discardReadBytes()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 213
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].discardSomeReadBytes()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 216
    functionLinenumberEnd: 218
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 227
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 21
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.EmptyByteBuf:223"
      Branch Sides:
      - BranchSide: "io.netty.buffer.EmptyByteBuf:226"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.buffer.EmptyByteBuf:225"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:222,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.buffer.EmptyByteBuf:224,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].ensureWritable(int,boolean)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 238
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.buffer.EmptyByteBuf:233"
      Branch Sides:
      - BranchSide: "io.netty.buffer.EmptyByteBuf:237"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.EmptyByteBuf:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:231,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getBoolean(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:242,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 246
    functionLinenumberEnd: 248
    functionDepth: 0
    returnType: "byte"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 133
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:247,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getUnsignedByte(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 251
    functionLinenumberEnd: 253
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 37
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:252,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getShort(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 256
    functionLinenumberEnd: 258
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 17
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:257,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getShortLE(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 263
    functionDepth: 0
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:262,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getUnsignedShort(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 266
    functionLinenumberEnd: 268
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:267,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getUnsignedShortLE(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:272,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getMedium(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 276
    functionLinenumberEnd: 278
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:277,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getMediumLE(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 281
    functionLinenumberEnd: 283
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:282,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getUnsignedMedium(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 286
    functionLinenumberEnd: 288
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:287,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getUnsignedMediumLE(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 291
    functionLinenumberEnd: 293
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:292,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getInt(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 296
    functionLinenumberEnd: 298
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 22
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:297,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getIntLE(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 301
    functionLinenumberEnd: 303
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:302,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getUnsignedInt(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 308
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:307,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getUnsignedIntLE(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 311
    functionLinenumberEnd: 313
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:312,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getLong(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 316
    functionLinenumberEnd: 318
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 18
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:317,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getLongLE(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 321
    functionLinenumberEnd: 323
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:322,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getChar(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "char"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:327,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getFloat(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "float"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:332,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getDouble(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:337,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getBytes(int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:342,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.buffer.EmptyByteBuf:342,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 1047
    functionLinenumberEnd: 1053
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 21
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.EmptyByteBuf:1049"
      Branch Sides:
      - BranchSide: "io.netty.buffer.EmptyByteBuf:1050"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.buffer.EmptyByteBuf:1049"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.buffer.EmptyByteBuf:1049"
      Branch Sides:
      - BranchSide: "io.netty.buffer.EmptyByteBuf:1052"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.buffer.EmptyByteBuf:1051"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:1048,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.buffer.EmptyByteBuf:1050,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.EmptyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:347,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 351
    functionLinenumberEnd: 353
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 12
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:352,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[])"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 356
    functionLinenumberEnd: 358
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 11
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:357,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 361
    functionLinenumberEnd: 363
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 13
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:362,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 366
    functionLinenumberEnd: 368
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    - "[java.nio.Buffer].remaining()"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:367,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.EmptyByteBuf:367,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 371
    functionLinenumberEnd: 373
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 7
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:372,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 376
    functionLinenumberEnd: 379
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:377,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:383,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].getCharSequence(int,int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.CharSequence"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:389,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setBoolean(int,boolean)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:395,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setByte(int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 399
    functionLinenumberEnd: 401
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 63
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:400,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setShort(int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 404
    functionLinenumberEnd: 406
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 16
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:405,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setShortLE(int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 409
    functionLinenumberEnd: 411
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 7
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:410,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setMedium(int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 414
    functionLinenumberEnd: 416
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 9
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:415,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setMediumLE(int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 419
    functionLinenumberEnd: 421
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 8
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:420,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setInt(int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 424
    functionLinenumberEnd: 426
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 24
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:425,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setIntLE(int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 429
    functionLinenumberEnd: 431
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 10
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:430,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setLong(int,long)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 434
    functionLinenumberEnd: 436
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 12
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:435,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setLongLE(int,long)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:440,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setChar(int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:445,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setFloat(int,float)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:450,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setDouble(int,double)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:455,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setBytes(int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:460,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:465,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setBytes(int,io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 469
    functionLinenumberEnd: 471
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 15
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:470,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setBytes(int,byte[])"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:475,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setBytes(int,byte[],int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 479
    functionLinenumberEnd: 481
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 8
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:480,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 484
    functionLinenumberEnd: 486
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    - "[java.nio.Buffer].remaining()"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:485,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.EmptyByteBuf:485,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 489
    functionLinenumberEnd: 492
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:490,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 495
    functionLinenumberEnd: 498
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 5
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:496,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setBytes(int,java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 501
    functionLinenumberEnd: 504
    functionDepth: 2
    returnType: "int"
    argCount: 4
    argTypes:
    - "int"
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:502,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setZero(int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 507
    functionLinenumberEnd: 509
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:508,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].setCharSequence(int,java.lang.CharSequence,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 512
    functionLinenumberEnd: 514
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 3
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:513,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readBoolean()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:518,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readByte()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 522
    functionLinenumberEnd: 524
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 83
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:523,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readUnsignedByte()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 527
    functionLinenumberEnd: 529
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 39
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:528,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readShort()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 532
    functionLinenumberEnd: 534
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:533,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readShortLE()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 537
    functionLinenumberEnd: 539
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:538,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readUnsignedShort()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 542
    functionLinenumberEnd: 544
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 42
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:543,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readUnsignedShortLE()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 547
    functionLinenumberEnd: 549
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:548,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readMedium()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 552
    functionLinenumberEnd: 554
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:553,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readMediumLE()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 557
    functionLinenumberEnd: 559
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:558,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readUnsignedMedium()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 562
    functionLinenumberEnd: 564
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 6
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:563,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readUnsignedMediumLE()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 567
    functionLinenumberEnd: 569
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:568,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readInt()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 572
    functionLinenumberEnd: 574
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 19
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:573,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readIntLE()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 577
    functionLinenumberEnd: 579
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:578,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readUnsignedInt()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 582
    functionLinenumberEnd: 584
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:583,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readUnsignedIntLE()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:588,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readLong()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 592
    functionLinenumberEnd: 594
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:593,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readLongLE()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:598,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readChar()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "char"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:603,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readFloat()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:608,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readDouble()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:613,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readBytes(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 617
    functionLinenumberEnd: 619
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:618,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 1055
    functionLinenumberEnd: 1061
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 22
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.EmptyByteBuf:1057"
      Branch Sides:
      - BranchSide: "io.netty.buffer.EmptyByteBuf:1060"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.buffer.EmptyByteBuf:1059"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:1056,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.buffer.EmptyByteBuf:1058,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readSlice(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 622
    functionLinenumberEnd: 624
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 21
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:623,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 627
    functionLinenumberEnd: 629
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 40
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:628,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 632
    functionLinenumberEnd: 634
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    functionUses: 4
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:633,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.buffer.EmptyByteBuf:633,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readBytes(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 637
    functionLinenumberEnd: 639
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:638,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readBytes(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:643,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readBytes(byte[])"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 647
    functionLinenumberEnd: 649
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:648,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readBytes(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 652
    functionLinenumberEnd: 654
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 4
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:653,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readBytes(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 657
    functionLinenumberEnd: 659
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    - "[java.nio.Buffer].remaining()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:658,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.EmptyByteBuf:658,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readBytes(java.io.OutputStream,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 662
    functionLinenumberEnd: 664
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "java.io.OutputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:663,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readBytes(java.nio.channels.GatheringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 667
    functionLinenumberEnd: 670
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.channels.GatheringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:668,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readBytes(java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:674,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].readCharSequence(int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.CharSequence"
    argCount: 2
    argTypes:
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:680,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 685
    functionLinenumberEnd: 687
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 120
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:686,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeBoolean(boolean)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:691,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 695
    functionLinenumberEnd: 697
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 200
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:696,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeShort(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 700
    functionLinenumberEnd: 702
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 95
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:701,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeShortLE(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:706,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeMedium(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 710
    functionLinenumberEnd: 712
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 11
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:711,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeMediumLE(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 715
    functionLinenumberEnd: 717
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:716,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 720
    functionLinenumberEnd: 722
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 54
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:721,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeIntLE(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 725
    functionLinenumberEnd: 727
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:726,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeLong(long)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 730
    functionLinenumberEnd: 732
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 12
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:731,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeLongLE(long)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:736,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeChar(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 740
    functionLinenumberEnd: 742
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:741,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeFloat(float)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "float"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:746,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeDouble(double)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "double"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:751,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 755
    functionLinenumberEnd: 757
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 42
    ICount: 5
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:756,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.EmptyByteBuf:756,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 760
    functionLinenumberEnd: 762
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:761,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 765
    functionLinenumberEnd: 767
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 29
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:766,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 770
    functionLinenumberEnd: 772
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 42
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:771,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[],int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 775
    functionLinenumberEnd: 777
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 13
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:776,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeBytes(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 780
    functionLinenumberEnd: 782
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    - "[java.nio.Buffer].remaining()"
    functionUses: 7
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:781,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.buffer.EmptyByteBuf:781,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeBytes(java.io.InputStream,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 785
    functionLinenumberEnd: 788
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:786,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeBytes(java.nio.channels.ScatteringByteChannel,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 791
    functionLinenumberEnd: 794
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.nio.channels.ScatteringByteChannel"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 5
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:792,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeBytes(java.nio.channels.FileChannel,long,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 797
    functionLinenumberEnd: 800
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.nio.channels.FileChannel"
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:798,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeZero(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 803
    functionLinenumberEnd: 805
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:804,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 808
    functionLinenumberEnd: 810
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IndexOutOfBoundsException].<init>()"
    functionUses: 24
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:809,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].indexOf(int,int,byte)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 813
    functionLinenumberEnd: 817
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int)"
    functionUses: 7
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:814,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].bytesBefore(byte)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].bytesBefore(int,byte)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 825
    functionLinenumberEnd: 828
    functionDepth: 2
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:826,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkLength(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].bytesBefore(int,int,byte)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 831
    functionLinenumberEnd: 834
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:832,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].forEachByte(io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 837
    functionLinenumberEnd: 839
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 842
    functionLinenumberEnd: 845
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 17
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:843,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].forEachByteDesc(io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:854,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].copy()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].copy(int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 864
    functionLinenumberEnd: 866
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 8
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:865,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].slice()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 869
    functionLinenumberEnd: 871
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].retainedSlice()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 874
    functionLinenumberEnd: 876
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].slice(int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 879
    functionLinenumberEnd: 881
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 19
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:880,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].retainedSlice(int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 884
    functionLinenumberEnd: 886
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    functionUses: 9
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:885,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].duplicate()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 889
    functionLinenumberEnd: 891
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 22
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].retainedDuplicate()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 894
    functionLinenumberEnd: 896
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].nioBufferCount()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 899
    functionLinenumberEnd: 901
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 42
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].nioBuffer()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 904
    functionLinenumberEnd: 906
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].nioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 909
    functionLinenumberEnd: 912
    functionDepth: 2
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffer()"
    functionUses: 16
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:910,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.EmptyByteBuf:911,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].nioBuffer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].nioBuffers()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 915
    functionLinenumberEnd: 917
    functionDepth: 0
    returnType: "java.nio.ByteBuffer[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].nioBuffers(int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 920
    functionLinenumberEnd: 923
    functionDepth: 2
    returnType: "java.nio.ByteBuffer[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].nioBuffers()"
    functionUses: 16
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:921,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.EmptyByteBuf:922,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].nioBuffers()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 926
    functionLinenumberEnd: 928
    functionDepth: 0
    returnType: "java.nio.ByteBuffer"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 35
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].hasArray()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 931
    functionLinenumberEnd: 933
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 41
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].array()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 936
    functionLinenumberEnd: 938
    functionDepth: 0
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 52
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].arrayOffset()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 941
    functionLinenumberEnd: 943
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 52
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 946
    functionLinenumberEnd: 948
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 37
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.EmptyByteBuf:947"
      Branch Sides:
      - BranchSide: "io.netty.buffer.EmptyByteBuf:946"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 951
    functionLinenumberEnd: 956
    functionDepth: 1
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 33
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.buffer.EmptyByteBuf:952"
      Branch Sides:
      - BranchSide: "io.netty.buffer.EmptyByteBuf:955"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.EmptyByteBuf:954"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:952,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - Src: "io.netty.buffer.EmptyByteBuf:955,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].isContiguous()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 960
    functionLinenumberEnd: 962
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].toString(java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 965
    functionLinenumberEnd: 967
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].toString(int,int,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 970
    functionLinenumberEnd: 973
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].toString(java.nio.charset.Charset)"
    functionUses: 14
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:971,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].checkIndex(int,int)"
    - Src: "io.netty.buffer.EmptyByteBuf:972,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].toString(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].hashCode()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 976
    functionLinenumberEnd: 978
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 13
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].equals(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 981
    functionLinenumberEnd: 983
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    functionUses: 18
    ICount: 11
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.EmptyByteBuf:982"
      Branch Sides:
      - BranchSide: "io.netty.buffer.EmptyByteBuf:981"
        BranchSideFuncs:
        - "isReadable()"
    - Branch String: "io.netty.buffer.EmptyByteBuf:982"
      Branch Sides:
      - BranchSide: "io.netty.buffer.EmptyByteBuf:981"
        BranchSideFuncs:
        - "isReadable()"
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:982,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.EmptyByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].isReadable()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.EmptyByteBuf:987"
      Branch Sides:
      - BranchSide: "io.netty.buffer.EmptyByteBuf:986"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:987,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.EmptyByteBuf].toString()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 991
    functionLinenumberEnd: 993
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 21
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].isReadable(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 996
    functionLinenumberEnd: 998
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].isWritable(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 1001
    functionLinenumberEnd: 1003
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].refCnt()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 1006
    functionLinenumberEnd: 1008
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 25
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].retain()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 1011
    functionLinenumberEnd: 1013
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 63
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].retain(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].touch()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 1021
    functionLinenumberEnd: 1023
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].touch(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 1026
    functionLinenumberEnd: 1028
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 27
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].release()"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 1031
    functionLinenumberEnd: 1033
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 346
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].release(int)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: 1036
    functionLinenumberEnd: 1038
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 18
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.EmptyByteBuf].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.buffer.EmptyByteBuf"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.EmptyByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.EmptyByteBuf:40,1"
      Dst: "[io.netty.buffer.EmptyByteBuf].compareTo(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus].values()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus:129,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus:129,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostRequestDecoder$MultiPartStatus:129,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.MultithreadEventExecutorGroup$1].<init>(io.netty.util.concurrent.MultithreadEventExecutorGroup)"
    functionSourceFile: "io.netty.util.concurrent.MultithreadEventExecutorGroup$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.MultithreadEventExecutorGroup"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.MultithreadEventExecutorGroup$1:113,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.MultithreadEventExecutorGroup$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.util.concurrent.MultithreadEventExecutorGroup$1"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 120
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].access$000(io.netty.util.concurrent.MultithreadEventExecutorGroup)"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].access$100(io.netty.util.concurrent.MultithreadEventExecutorGroup)"
    - "[java.util.concurrent.atomic.AtomicInteger].incrementAndGet()"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].access$200(io.netty.util.concurrent.MultithreadEventExecutorGroup)"
    - "[io.netty.util.concurrent.DefaultPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.VoidChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.PromiseTask].setSuccess(java.lang.Object)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess(java.lang.Object)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultProgressivePromise].setSuccess(java.lang.Object)"
    - "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.MultithreadEventExecutorGroup$1:116"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.MultithreadEventExecutorGroup$1:119"
        BranchSideFuncs:
        - "setSuccess(java.lang.Object)"
        - "access$200(io.netty.util.concurrent.MultithreadEventExecutorGroup)"
      - BranchSide: "io.netty.util.concurrent.MultithreadEventExecutorGroup$1:118"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.MultithreadEventExecutorGroup$1:116,1"
      Dst: "[io.netty.util.concurrent.MultithreadEventExecutorGroup].access$000(io.netty.util.concurrent.MultithreadEventExecutorGroup)"
    - Src: "io.netty.util.concurrent.MultithreadEventExecutorGroup$1:116,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].incrementAndGet()"
    - Src: "io.netty.util.concurrent.MultithreadEventExecutorGroup$1:116,1"
      Dst: "[io.netty.util.concurrent.MultithreadEventExecutorGroup].access$100(io.netty.util.concurrent.MultithreadEventExecutorGroup)"
    - Src: "io.netty.util.concurrent.MultithreadEventExecutorGroup$1:117,1"
      Dst: "[io.netty.util.concurrent.MultithreadEventExecutorGroup].access$200(io.netty.util.concurrent.MultithreadEventExecutorGroup)"
    - Src: "io.netty.util.concurrent.MultithreadEventExecutorGroup$1:117,1"
      Dst: "[io.netty.util.concurrent.Promise].setSuccess(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.NameServerComparator].compare(java.net.InetSocketAddress,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.resolver.dns.NameServerComparator"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.net.InetSocketAddress"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].equals(java.lang.Object)"
    - "[java.net.InetSocketAddress].isUnresolved()"
    - "[java.net.InetSocketAddress].getAddress()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    functionUses: 1
    ICount: 36
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.NameServerComparator:47"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.NameServerComparator:50"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.NameServerComparator:49"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.NameServerComparator:50"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.NameServerComparator:56"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.NameServerComparator:55"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.NameServerComparator:50"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.NameServerComparator:56"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.NameServerComparator:55"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.NameServerComparator:51"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.NameServerComparator:54"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.NameServerComparator:53"
        BranchSideFuncs:
        - "getAddress()"
        - "getClass()"
        - "isAssignableFrom(java.lang.Class)"
    - Branch String: "io.netty.resolver.dns.NameServerComparator:54"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.NameServerComparator:53"
        BranchSideFuncs:
        - "getAddress()"
        - "getClass()"
        - "isAssignableFrom(java.lang.Class)"
    - Branch String: "io.netty.resolver.dns.NameServerComparator:56"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.NameServerComparator:59"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.NameServerComparator:58"
        BranchSideFuncs:
        - "isUnresolved()"
    - Branch String: "io.netty.resolver.dns.NameServerComparator:56"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.NameServerComparator:59"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.NameServerComparator:58"
        BranchSideFuncs:
        - "isUnresolved()"
    - Branch String: "io.netty.resolver.dns.NameServerComparator:59"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.NameServerComparator:58"
        BranchSideFuncs:
        - "isUnresolved()"
    Callsites:
    - Src: "io.netty.resolver.dns.NameServerComparator:47,1"
      Dst: "[java.net.InetSocketAddress].equals(java.lang.Object)"
    - Src: "io.netty.resolver.dns.NameServerComparator:50,1"
      Dst: "[java.net.InetSocketAddress].isUnresolved()"
    - Src: "io.netty.resolver.dns.NameServerComparator:51,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.resolver.dns.NameServerComparator:51,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.resolver.dns.NameServerComparator:54,1"
      Dst: "[java.lang.Class].isAssignableFrom(java.lang.Class)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 5
  - functionName: "[io.netty.resolver.dns.NameServerComparator].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.resolver.dns.NameServerComparator"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.NameServerComparator].compare(java.net.InetSocketAddress,java.net.InetSocketAddress)"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.NameServerComparator:35,1"
      Dst: "[io.netty.resolver.dns.NameServerComparator].compare(java.net.InetSocketAddress,java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$2"
    linkageType: ""
    functionLinenumber: 635
    functionLinenumberEnd: 638
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$900(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelFuture)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$2:636,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].access$900(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ConnectionHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ConnectionHandler$2"
    linkageType: ""
    functionLinenumber: 632
    functionLinenumberEnd: 634
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ConnectionHandler$2:633,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler$2].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.EmptyArrays].<init>()"
    functionSourceFile: "io.netty.util.internal.EmptyArrays"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.EmptyArrays:40,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:62,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions()"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:61,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 82
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].getReceiveBufferSize()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].getSendBufferSize()"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].isSctpNoDelay()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].getInitMaxStreams()"
    - "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 5
    ICount: 23
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.DefaultSctpChannelConfig:69"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.DefaultSctpChannelConfig:72"
        BranchSideFuncs:
        - "getReceiveBufferSize()"
      - BranchSide: "io.netty.channel.sctp.DefaultSctpChannelConfig:71"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.DefaultSctpChannelConfig:72"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.DefaultSctpChannelConfig:75"
        BranchSideFuncs:
        - "getSendBufferSize()"
        - "valueOf(int)"
      - BranchSide: "io.netty.channel.sctp.DefaultSctpChannelConfig:74"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.DefaultSctpChannelConfig:75"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.DefaultSctpChannelConfig:78"
        BranchSideFuncs:
        - "isSctpNoDelay()"
        - "valueOf(boolean)"
      - BranchSide: "io.netty.channel.sctp.DefaultSctpChannelConfig:77"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.DefaultSctpChannelConfig:78"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.DefaultSctpChannelConfig:81"
        BranchSideFuncs:
        - "getInitMaxStreams()"
      - BranchSide: "io.netty.channel.sctp.DefaultSctpChannelConfig:80"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:70,1"
      Dst: "[io.netty.channel.sctp.DefaultSctpChannelConfig].getReceiveBufferSize()"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:70,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:73,1"
      Dst: "[io.netty.channel.sctp.DefaultSctpChannelConfig].getSendBufferSize()"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:76,1"
      Dst: "[io.netty.channel.sctp.DefaultSctpChannelConfig].isSctpNoDelay()"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:76,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:79,1"
      Dst: "[io.netty.channel.sctp.DefaultSctpChannelConfig].getInitMaxStreams()"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:81,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].getReceiveBufferSize()"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 147
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[com.sun.nio.sctp.SctpChannel].getOption(com.sun.nio.sctp.SctpSocketOption)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:144,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].getOption(com.sun.nio.sctp.SctpSocketOption)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:144,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:146,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].getSendBufferSize()"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[com.sun.nio.sctp.SctpChannel].getOption(com.sun.nio.sctp.SctpSocketOption)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:125,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].getOption(com.sun.nio.sctp.SctpSocketOption)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:125,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:127,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].isSctpNoDelay()"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 109
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[com.sun.nio.sctp.SctpChannel].getOption(com.sun.nio.sctp.SctpSocketOption)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:106,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].getOption(com.sun.nio.sctp.SctpSocketOption)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:106,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:108,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].getInitMaxStreams()"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 166
    functionDepth: 1
    returnType: "com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[com.sun.nio.sctp.SctpChannel].getOption(com.sun.nio.sctp.SctpSocketOption)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:163,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].getOption(com.sun.nio.sctp.SctpSocketOption)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:165,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 101
    functionDepth: 4
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setReceiveBufferSize(int)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setSendBufferSize(int)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setSctpNoDelay(boolean)"
    - "[io.netty.channel.sctp.DefaultSctpChannelConfig].setInitMaxStreams(com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams)"
    - "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 2
    ICount: 30
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.DefaultSctpChannelConfig:88"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.DefaultSctpChannelConfig:90"
        BranchSideFuncs:
        - "setReceiveBufferSize(int)"
      - BranchSide: "io.netty.channel.sctp.DefaultSctpChannelConfig:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.DefaultSctpChannelConfig:90"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.DefaultSctpChannelConfig:92"
        BranchSideFuncs:
        - "intValue()"
        - "setSendBufferSize(int)"
      - BranchSide: "io.netty.channel.sctp.DefaultSctpChannelConfig:91"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.DefaultSctpChannelConfig:92"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.DefaultSctpChannelConfig:94"
        BranchSideFuncs:
        - "setSctpNoDelay(boolean)"
        - "booleanValue()"
      - BranchSide: "io.netty.channel.sctp.DefaultSctpChannelConfig:93"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.sctp.DefaultSctpChannelConfig:94"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.DefaultSctpChannelConfig:97"
        BranchSideFuncs:
        - "setInitMaxStreams(com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams)"
      - BranchSide: "io.netty.channel.sctp.DefaultSctpChannelConfig:96"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:86,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:89,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:89,1"
      Dst: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:91,1"
      Dst: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setSendBufferSize(int)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:93,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:93,1"
      Dst: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setSctpNoDelay(boolean)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:95,1"
      Dst: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setInitMaxStreams(com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:97,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 158
    functionDepth: 1
    returnType: "io.netty.channel.sctp.SctpChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[com.sun.nio.sctp.SctpChannel].setOption(com.sun.nio.sctp.SctpSocketOption,java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:153,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:153,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].setOption(com.sun.nio.sctp.SctpSocketOption,java.lang.Object)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:155,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 139
    functionDepth: 1
    returnType: "io.netty.channel.sctp.SctpChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[com.sun.nio.sctp.SctpChannel].setOption(com.sun.nio.sctp.SctpSocketOption,java.lang.Object)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:134,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:134,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].setOption(com.sun.nio.sctp.SctpSocketOption,java.lang.Object)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:136,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setInitMaxStreams(com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 177
    functionDepth: 1
    returnType: "io.netty.channel.sctp.SctpChannelConfig"
    argCount: 1
    argTypes:
    - "com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    - "[com.sun.nio.sctp.SctpChannel].setOption(com.sun.nio.sctp.SctpSocketOption,java.lang.Object)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:172,1"
      Dst: "[com.sun.nio.sctp.SctpChannel].setOption(com.sun.nio.sctp.SctpSocketOption,java.lang.Object)"
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:174,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 180
    functionLinenumberEnd: 183
    functionDepth: 2
    returnType: "io.netty.channel.sctp.SctpChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:181,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionDepth: 2
    returnType: "io.netty.channel.sctp.SctpChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:188,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 196
    functionDepth: 2
    returnType: "io.netty.channel.sctp.SctpChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:194,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionDepth: 2
    returnType: "io.netty.channel.sctp.SctpChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:200,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionDepth: 2
    returnType: "io.netty.channel.sctp.SctpChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:206,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 211
    functionLinenumberEnd: 214
    functionDepth: 2
    returnType: "io.netty.channel.sctp.SctpChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:212,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setAutoClose(boolean)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 217
    functionLinenumberEnd: 220
    functionDepth: 1
    returnType: "io.netty.channel.sctp.SctpChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:218,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 223
    functionLinenumberEnd: 226
    functionDepth: 3
    returnType: "io.netty.channel.sctp.SctpChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:224,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 229
    functionLinenumberEnd: 232
    functionDepth: 3
    returnType: "io.netty.channel.sctp.SctpChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:230,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 235
    functionLinenumberEnd: 238
    functionDepth: 2
    returnType: "io.netty.channel.sctp.SctpChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:236,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.DefaultSctpChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.sctp.DefaultSctpChannelConfig"
    linkageType: ""
    functionLinenumber: 241
    functionLinenumberEnd: 244
    functionDepth: 2
    returnType: "io.netty.channel.sctp.SctpChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.DefaultSctpChannelConfig:242,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].<init>(boolean,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].<init>()"
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].server(boolean)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].checkSharable(io.netty.channel.ChannelHandler)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].gracefulShutdownTimeoutMillis(long)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:38,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:39,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].server(boolean)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:40,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:40,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].checkSharable(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:42,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].gracefulShutdownTimeoutMillis(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].checkSharable(io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandler"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerAdapter].isSharable()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].isAnnotationPresent(java.lang.Class)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:50"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:49"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:50"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:49"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:50"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:46,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].isSharable()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:47,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:47,1"
      Dst: "[java.lang.Class].isAnnotationPresent(java.lang.Class)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:48,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].frameWriter(io.netty.handler.codec.http2.Http2FrameWriter)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:55,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].forClient(io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].<init>(boolean,io.netty.channel.ChannelHandler)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:66,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].<init>(boolean,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].gracefulShutdownTimeoutMillis(long)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].gracefulShutdownTimeoutMillis(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:104,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].gracefulShutdownTimeoutMillis(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].forServer(io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].<init>(boolean,io.netty.channel.ChannelHandler)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:76,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].<init>(boolean,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].withUpgradeStreamHandler(io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].isServer()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:80"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:83"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:80,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].isServer()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:81,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].isServer()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].isServer()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:109,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].isServer()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].initialSettings()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2Settings"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].initialSettings()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:89,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].initialSettings()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].initialSettings(io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].initialSettings(io.netty.handler.codec.http2.Http2Settings)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:94,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].initialSettings(io.netty.handler.codec.http2.Http2Settings)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].gracefulShutdownTimeoutMillis()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].gracefulShutdownTimeoutMillis()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:99,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].gracefulShutdownTimeoutMillis()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].maxReservedStreams()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].maxReservedStreams()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:114,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].maxReservedStreams()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].maxReservedStreams(int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].maxReservedStreams(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:119,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].maxReservedStreams(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].isValidateHeaders()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].isValidateHeaders()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:124,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].isValidateHeaders()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].validateHeaders(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].validateHeaders(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:129,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].validateHeaders(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].frameLogger()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2FrameLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].frameLogger()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:134,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].frameLogger()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].frameLogger(io.netty.handler.codec.http2.Http2FrameLogger)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameLogger"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].frameLogger(io.netty.handler.codec.http2.Http2FrameLogger)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:139,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].frameLogger(io.netty.handler.codec.http2.Http2FrameLogger)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].encoderEnforceMaxConcurrentStreams()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].encoderEnforceMaxConcurrentStreams()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:144,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].encoderEnforceMaxConcurrentStreams()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].encoderEnforceMaxConcurrentStreams(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].encoderEnforceMaxConcurrentStreams(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:149,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].encoderEnforceMaxConcurrentStreams(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].encoderEnforceMaxQueuedControlFrames()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].encoderEnforceMaxQueuedControlFrames()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:154,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].encoderEnforceMaxQueuedControlFrames()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].encoderEnforceMaxQueuedControlFrames(int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].encoderEnforceMaxQueuedControlFrames(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:159,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].encoderEnforceMaxQueuedControlFrames(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].headerSensitivityDetector()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2HeadersEncoder$SensitivityDetector"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].headerSensitivityDetector()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:164,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].headerSensitivityDetector()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].headerSensitivityDetector(io.netty.handler.codec.http2.Http2HeadersEncoder$SensitivityDetector)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2HeadersEncoder$SensitivityDetector"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].headerSensitivityDetector(io.netty.handler.codec.http2.Http2HeadersEncoder$SensitivityDetector)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:170,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].headerSensitivityDetector(io.netty.handler.codec.http2.Http2HeadersEncoder$SensitivityDetector)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].encoderIgnoreMaxHeaderListSize(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].encoderIgnoreMaxHeaderListSize(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:175,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].encoderIgnoreMaxHeaderListSize(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].initialHuffmanDecodeCapacity(int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].initialHuffmanDecodeCapacity(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:181,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].initialHuffmanDecodeCapacity(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].autoAckSettingsFrame(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].autoAckSettingsFrame(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:186,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].autoAckSettingsFrame(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].autoAckPingFrame(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].autoAckPingFrame(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:191,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].autoAckPingFrame(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].decoupleCloseAndGoAway(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].decoupleCloseAndGoAway(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:196,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].decoupleCloseAndGoAway(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].flushPreface(boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].flushPreface(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:201,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].flushPreface(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].decoderEnforceMaxConsecutiveEmptyDataFrames()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].decoderEnforceMaxConsecutiveEmptyDataFrames()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:206,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].decoderEnforceMaxConsecutiveEmptyDataFrames()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].decoderEnforceMaxConsecutiveEmptyDataFrames(int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].decoderEnforceMaxConsecutiveEmptyDataFrames(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:211,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].decoderEnforceMaxConsecutiveEmptyDataFrames(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].build()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 9
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].isServer()"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].maxReservedStreams()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].<init>(boolean,int)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].initialSettings()"
    - "[io.netty.handler.codec.http2.Http2Settings].maxHeaderListSize()"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].isValidateHeaders()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean)"
    - "[java.lang.Long].longValue()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean,long)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].<init>(io.netty.handler.codec.http2.Http2HeadersDecoder)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].frameLogger()"
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].<init>(io.netty.handler.codec.http2.Http2FrameWriter,io.netty.handler.codec.http2.Http2FrameLogger)"
    - "[io.netty.handler.codec.http2.Http2InboundFrameLogger].<init>(io.netty.handler.codec.http2.Http2FrameReader,io.netty.handler.codec.http2.Http2FrameLogger)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2FrameWriter)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].encoderEnforceMaxConcurrentStreams()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].<init>(io.netty.handler.codec.http2.Http2ConnectionEncoder)"
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].promisedRequestVerifier()"
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].isAutoAckSettingsFrame()"
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].isAutoAckPingFrame()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2FrameReader,io.netty.handler.codec.http2.Http2PromisedRequestVerifier,boolean,boolean)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].decoderEnforceMaxConsecutiveEmptyDataFrames()"
    - "[io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,int)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].build(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].build()"
    functionUses: 0
    ICount: 60
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:217"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:243"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:222"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:220"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:219"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:226"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:230"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:231"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:234"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:233"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:238"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:242"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:220,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].isServer()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:220,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].maxReservedStreams()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:220,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection].<init>(boolean,int)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:221,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].initialSettings()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:221,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].maxHeaderListSize()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:223,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].isValidateHeaders()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:223,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:224,1"
      Dst: "[java.lang.Long].longValue()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:224,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2HeadersDecoder].<init>(boolean,long)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:224,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2FrameReader].<init>(io.netty.handler.codec.http2.Http2HeadersDecoder)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:226,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].frameLogger()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:227,1"
      Dst: "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].<init>(io.netty.handler.codec.http2.Http2FrameWriter,io.netty.handler.codec.http2.Http2FrameLogger)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:228,1"
      Dst: "[io.netty.handler.codec.http2.Http2InboundFrameLogger].<init>(io.netty.handler.codec.http2.Http2FrameReader,io.netty.handler.codec.http2.Http2FrameLogger)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:230,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2FrameWriter)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:231,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].encoderEnforceMaxConcurrentStreams()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:232,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder].<init>(io.netty.handler.codec.http2.Http2ConnectionEncoder)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:235,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].promisedRequestVerifier()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:235,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].isAutoAckSettingsFrame()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:235,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].isAutoAckPingFrame()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:235,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2Connection,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2FrameReader,io.netty.handler.codec.http2.Http2PromisedRequestVerifier,boolean,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:237,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].decoderEnforceMaxConsecutiveEmptyDataFrames()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:239,1"
      Dst: "[io.netty.handler.codec.http2.Http2EmptyDataFrameConnectionDecoder].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,int)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:242,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].build(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:244,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].build()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].<init>(long)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HpackDecoder].<init>(long,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder:107,1"
      Dst: "[io.netty.handler.codec.http2.HpackDecoder].<init>(long,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder].<init>(long,int)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.http2.HpackHuffmanDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(long,java.lang.String)"
    - "[io.netty.handler.codec.http2.HpackDynamicTable].<init>(long)"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder:114,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:92,1"
      Dst: "[io.netty.handler.codec.http2.HpackHuffmanDecoder].<init>()"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:115,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(long,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.HpackDecoder:119,1"
      Dst: "[io.netty.handler.codec.http2.HpackDynamicTable].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].<init>(io.netty.handler.codec.http2.Http2Connection)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].<init>(io.netty.handler.codec.http2.Http2Connection,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:97,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].<init>(io.netty.handler.codec.http2.Http2Connection,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor].<init>(io.netty.handler.codec.http2.Http2Connection,int)"
    functionSourceFile: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Connection"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[io.netty.util.collection.IntCollections].emptyMap()"
    - "[io.netty.util.internal.EmptyPriorityQueue].instance()"
    - "[io.netty.util.collection.IntObjectHashMap].<init>(int)"
    - "[io.netty.util.internal.DefaultPriorityQueue].<init>(java.util.Comparator,int)"
    - "[io.netty.handler.codec.http2.Http2Connection].newKey()"
    - "[io.netty.handler.codec.http2.Http2Connection].connectionStream()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,io.netty.handler.codec.http2.Http2Stream,int)"
    - "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    - "[io.netty.handler.codec.http2.Http2Connection].addListener(io.netty.handler.codec.http2.Http2Connection$Listener)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:102"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:106"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:105"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:100,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:101,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:103,1"
      Dst: "[io.netty.util.collection.IntCollections].emptyMap()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:104,1"
      Dst: "[io.netty.util.internal.EmptyPriorityQueue].instance()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:106,1"
      Dst: "[io.netty.util.collection.IntObjectHashMap].<init>(int)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:109,1"
      Dst: "[io.netty.util.internal.DefaultPriorityQueue].<init>(java.util.Comparator,int)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:114,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].newKey()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:115,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].connectionStream()"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:116,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor,io.netty.handler.codec.http2.Http2Stream,int)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:116,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].setProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:119,1"
      Dst: "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$1].<init>(io.netty.handler.codec.http2.WeightedFairQueueByteDistributor)"
    - Src: "io.netty.handler.codec.http2.WeightedFairQueueByteDistributor:119,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].addListener(io.netty.handler.codec.http2.Http2Connection$Listener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$1].<init>(io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController$1:86,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder].<init>(io.netty.handler.codec.http2.Http2ConnectionEncoder)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].<init>(io.netty.handler.codec.http2.Http2ConnectionEncoder,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:124,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder].<init>(io.netty.handler.codec.http2.Http2ConnectionEncoder,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder].<init>(io.netty.handler.codec.http2.Http2ConnectionEncoder,int)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].<init>(io.netty.handler.codec.http2.Http2ConnectionEncoder)"
    - "[java.util.TreeMap].<init>()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].connection()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$1].<init>(io.netty.handler.codec.http2.StreamBufferingEncoder)"
    - "[io.netty.handler.codec.http2.Http2Connection].addListener(io.netty.handler.codec.http2.Http2Connection$Listener)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:128,1"
      Dst: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].<init>(io.netty.handler.codec.http2.Http2ConnectionEncoder)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:118,1"
      Dst: "[java.util.TreeMap].<init>()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:130,1"
      Dst: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].connection()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:130,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$1].<init>(io.netty.handler.codec.http2.StreamBufferingEncoder)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:130,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].addListener(io.netty.handler.codec.http2.Http2Connection$Listener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].<init>(io.netty.handler.codec.http2.Http2FrameWriter)"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2FrameWriter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameWriter"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2FrameWriter:32,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2FrameWriter:33,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$1].<init>(io.netty.handler.codec.http2.StreamBufferingEncoder)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.StreamBufferingEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$1:130,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder,io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$1)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener:674,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener].<init>(io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$PrefaceFrameListener:674,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$AutoRefillState].<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.Http2Stream,int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$AutoRefillState"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController"
    - "io.netty.handler.codec.http2.Http2Stream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.Http2Stream,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$AutoRefillState:304,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2LocalFlowController$DefaultState].<init>(io.netty.handler.codec.http2.DefaultHttp2LocalFlowController,io.netty.handler.codec.http2.Http2Stream,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].build(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.http2.Http2MultiplexCodec"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionDecoder"
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].decoupleCloseAndGoAway()"
    - "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].flushPreface()"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].<init>(io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelHandler,io.netty.channel.ChannelHandler,boolean,boolean)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].gracefulShutdownTimeoutMillis()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].gracefulShutdownTimeoutMillis(long)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:251,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].decoupleCloseAndGoAway()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:251,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder].flushPreface()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:251,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodec].<init>(io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2Settings,io.netty.channel.ChannelHandler,io.netty.channel.ChannelHandler,boolean,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:252,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexCodecBuilder].gracefulShutdownTimeoutMillis()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexCodecBuilder:252,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].gracefulShutdownTimeoutMillis(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec].<init>(io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2Settings,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    - "io.netty.handler.codec.http2.Http2ConnectionDecoder"
    - "io.netty.handler.codec.http2.Http2Settings"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean,boolean)"
    - "[io.netty.util.collection.IntObjectHashMap].<init>(int)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.handler.codec.http2.Http2FrameCodec$1)"
    - "[io.netty.handler.codec.http2.Http2ConnectionDecoder].frameListener(io.netty.handler.codec.http2.Http2FrameListener)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.handler.codec.http2.Http2FrameCodec$1)"
    - "[io.netty.handler.codec.http2.Http2Connection].addListener(io.netty.handler.codec.http2.Http2Connection$Listener)"
    - "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.handler.codec.http2.Http2FrameCodec$1)"
    - "[io.netty.handler.codec.http2.Http2RemoteFlowController].listener(io.netty.handler.codec.http2.Http2RemoteFlowController$Listener)"
    - "[io.netty.handler.codec.http2.Http2Connection].newKey()"
    - "[io.netty.handler.codec.http2.Http2Settings].initialWindowSize()"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:168,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean,boolean)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:163,1"
      Dst: "[io.netty.util.collection.IntObjectHashMap].<init>(int)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:170,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$FrameListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.handler.codec.http2.Http2FrameCodec$1)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:170,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionDecoder].frameListener(io.netty.handler.codec.http2.Http2FrameListener)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:171,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:171,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$ConnectionListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.handler.codec.http2.Http2FrameCodec$1)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:171,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].addListener(io.netty.handler.codec.http2.Http2Connection$Listener)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:172,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:172,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:172,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.handler.codec.http2.Http2FrameCodec$1)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:172,1"
      Dst: "[io.netty.handler.codec.http2.Http2RemoteFlowController].listener(io.netty.handler.codec.http2.Http2RemoteFlowController$Listener)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:173,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].newKey()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:175,1"
      Dst: "[io.netty.handler.codec.http2.Http2Settings].initialWindowSize()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.handler.codec.http2.Http2FrameCodec$1)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameCodec"
    - "io.netty.handler.codec.http2.Http2FrameCodec$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener:714,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener].<init>(io.netty.handler.codec.http2.Http2FrameCodec)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameCodec"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener:714,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].<init>(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$4"
    linkageType: ""
    functionLinenumber: 592
    functionLinenumberEnd: 594
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.epoll.AbstractEpollStreamChannel"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$4:593,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$4"
    linkageType: ""
    functionLinenumber: 595
    functionLinenumberEnd: 598
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].access$100(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.ChannelPromise)"
    functionUses: 50
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$4:596,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].access$100(io.netty.channel.epoll.AbstractEpollStreamChannel,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ByteToMessageDecoder$2].<init>()"
    functionSourceFile: "io.netty.handler.codec.ByteToMessageDecoder$2"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$2:121,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ByteToMessageDecoder$2].cumulate(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.ByteToMessageDecoder$2"
    linkageType: ""
    functionLinenumber: 123
    functionLinenumberEnd: 158
    functionDepth: 5
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.util.ReferenceCounted].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.buffer.EmptyByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.CompositeByteBuf].capacity(int)"
    - "[io.netty.buffer.CompositeByteBuf].addFlattenedComponents(boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].addFlattenedComponents(boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].addFlattenedComponents(boolean,io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].compositeBuffer(int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].compositeBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].compositeBuffer(int)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBufAllocator].compositeBuffer(int)"
    functionUses: 1
    ICount: 41
    EdgeCount: 90
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$2:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:128"
        BranchSideFuncs:
        - "isReadable()"
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$2:129"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:133"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:132"
        BranchSideFuncs:
        - "refCnt()"
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$2:135"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:143"
        BranchSideFuncs:
        - "capacity()"
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:142"
        BranchSideFuncs:
        - "compositeBuffer(int)"
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$2:135"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:143"
        BranchSideFuncs:
        - "capacity()"
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:142"
        BranchSideFuncs:
        - "compositeBuffer(int)"
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$2:139"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:145"
        BranchSideFuncs:
        - "capacity(int)"
        - "writerIndex()"
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:144"
        BranchSideFuncs:
        - "addFlattenedComponents(boolean,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$2:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:144"
        BranchSideFuncs:
        - "addFlattenedComponents(boolean,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$2:153"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:145"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:144"
        BranchSideFuncs:
        - "addFlattenedComponents(boolean,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$2:153"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:145"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:144"
        BranchSideFuncs:
        - "addFlattenedComponents(boolean,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$2:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:156"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$2:153"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:157"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:156"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$2:153"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:157"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$2:156"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$2:126,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$2:129,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$2:135,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$2:139,1"
      Dst: "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$2:139,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].capacity()"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$2:140,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].capacity(int)"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$2:143,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].compositeBuffer(int)"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$2:143,1"
      Dst: "[io.netty.buffer.CompositeByteBuf].addFlattenedComponents(boolean,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$2:154,1"
      Dst: "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 19
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.AsciiHeadersEncoder$SeparatorType].values()"
    functionSourceFile: "io.netty.handler.codec.AsciiHeadersEncoder$SeparatorType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.AsciiHeadersEncoder$SeparatorType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder$SeparatorType:33,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.AsciiHeadersEncoder$SeparatorType].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.AsciiHeadersEncoder$SeparatorType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.AsciiHeadersEncoder$SeparatorType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder$SeparatorType:33,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.AsciiHeadersEncoder$SeparatorType].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.AsciiHeadersEncoder$SeparatorType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.AsciiHeadersEncoder$SeparatorType:33,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisCodecUtil].<init>()"
    functionSourceFile: "io.netty.handler.codec.redis.RedisCodecUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.RedisCodecUtil:26,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.RedisCodecUtil].makeShort(char,char)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisCodecUtil"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "short"
    argCount: 2
    argTypes:
    - "char"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.RedisCodecUtil:37"
      Branch Sides: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.redis.RedisCodecUtil].shortToBytes(short)"
    functionSourceFile: "io.netty.handler.codec.redis.RedisCodecUtil"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "byte[]"
    argCount: 1
    argTypes:
    - "short"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.redis.RedisCodecUtil:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.redis.RedisCodecUtil:null"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine$2].accept(javax.net.ssl.SSLEngine,java.util.List)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine$2"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "javax.net.ssl.SSLEngine"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].setApplicationProtocols(javax.net.ssl.SSLEngine,java.util.List)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine$2:41,1"
      Dst: "[io.netty.handler.ssl.BouncyCastleAlpnSslUtils].setApplicationProtocols(javax.net.ssl.SSLEngine,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine$2].accept(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine$2"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine$2].accept(javax.net.ssl.SSLEngine,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.BouncyCastleAlpnSslEngine$2:38,1"
      Dst: "[io.netty.handler.ssl.BouncyCastleAlpnSslEngine$2].accept(javax.net.ssl.SSLEngine,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$LineHeaderExtractor].<init>(io.netty.handler.codec.haproxy.HAProxyMessageDecoder,int)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder$LineHeaderExtractor"
    linkageType: ""
    functionLinenumber: 431
    functionLinenumberEnd: 435
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$HeaderExtractor].<init>(io.netty.handler.codec.haproxy.HAProxyMessageDecoder,int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder$LineHeaderExtractor:433,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$HeaderExtractor].<init>(io.netty.handler.codec.haproxy.HAProxyMessageDecoder,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$LineHeaderExtractor].findEndOfHeader(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder$LineHeaderExtractor"
    linkageType: ""
    functionLinenumber: 437
    functionLinenumberEnd: 439
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].access$500(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder$LineHeaderExtractor:438,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].access$500(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].access$500(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].findEndOfLine(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:33,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].findEndOfLine(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].findEndOfLine(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 217
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 1
    ICount: 18
    EdgeCount: 54
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:210"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:null"
        BranchSideFuncs:
        - "getByte(int)"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:212"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:209"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:208"
        BranchSideFuncs:
        - "readerIndex()"
        - "writerIndex()"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:212"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:209"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:208"
        BranchSideFuncs:
        - "readerIndex()"
        - "writerIndex()"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:212"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:209"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:208"
        BranchSideFuncs:
        - "readerIndex()"
        - "writerIndex()"
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:209,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:210,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:211,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$LineHeaderExtractor].delimiterLength(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder$LineHeaderExtractor"
    linkageType: ""
    functionLinenumber: 442
    functionLinenumberEnd: 444
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 3
    ICount: 10
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder$LineHeaderExtractor:443"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder$LineHeaderExtractor:442"
        BranchSideFuncs:
        - "getByte(int)"
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder$LineHeaderExtractor:443,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:43,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].name()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].isEndStream()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].padding()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].initialFlowControlledBytes()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].copy()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].content()"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:117,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].content()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:117,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:117,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:132,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].<init>(io.netty.buffer.ByteBuf,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].duplicate()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].content()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:122,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].content()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:122,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:122,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].content()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:127,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].content()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:127,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:127,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].refCnt()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 136
    functionLinenumberEnd: 138
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.buffer.EmptyByteBuf].refCnt()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 3
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:137,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].release()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 143
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    functionUses: 4
    ICount: 4
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:142,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].release(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release(int)"
    - "[io.netty.buffer.WrappedByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release(int)"
    - "[io.netty.buffer.EmptyByteBuf].release(int)"
    - "[io.netty.buffer.SwappedByteBuf].release(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].release(int)"
    - "[io.netty.util.ReferenceCounted].release(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:147,1"
      Dst: "[io.netty.util.ReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:158,1"
      Dst: "[io.netty.buffer.ByteBuf].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].toString()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(boolean)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 21
    ICount: 20
    EdgeCount: 14
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:164,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:164,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:164,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:164,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:164,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:164,1"
      Dst: "[java.lang.StringBuilder].append(boolean)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:164,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:164,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:164,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].touch()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 172
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.SwappedByteBuf].touch()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch()"
    - "[io.netty.buffer.EmptyByteBuf].touch()"
    - "[io.netty.buffer.WrappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    - "[io.netty.buffer.UnreleasableByteBuf].touch()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.CompositeByteBuf].touch()"
    - "[io.netty.buffer.ByteBuf].touch()"
    functionUses: 1
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:170,1"
      Dst: "[io.netty.buffer.ByteBuf].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.CompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:176,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 187
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].content()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].equals(java.lang.Object)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.AbstractByteBuf].equals(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].equals(java.lang.Object)"
    functionUses: 9
    ICount: 22
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:182"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:185"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:184"
        BranchSideFuncs:
        - "content()"
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:186,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:186,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].content()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:186,1"
      Dst: "[io.netty.buffer.ByteBuf].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2DataFrame"
    linkageType: ""
    functionLinenumber: 191
    functionLinenumberEnd: 197
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].hashCode()"
    - "[io.netty.buffer.SwappedByteBuf].hashCode()"
    - "[io.netty.buffer.AbstractByteBuf].hashCode()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hashCode()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hashCode()"
    - "[io.netty.buffer.WrappedByteBuf].hashCode()"
    - "[io.netty.buffer.EmptyByteBuf].hashCode()"
    - "[io.netty.buffer.ByteBuf].hashCode()"
    functionUses: 5
    ICount: 17
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:194"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:192"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:191"
        BranchSideFuncs:
        - "hashCode()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:192,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].hashCode()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2DataFrame:193,1"
      Dst: "[io.netty.buffer.ByteBuf].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.ProtocolDetectionState].values()"
    functionSourceFile: "io.netty.handler.codec.ProtocolDetectionState"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.ProtocolDetectionState[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ProtocolDetectionState:21,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ProtocolDetectionState].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.ProtocolDetectionState"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.ProtocolDetectionState"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ProtocolDetectionState:21,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ProtocolDetectionState].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.ProtocolDetectionState"
    linkageType: ""
    functionLinenumber: 20
    functionLinenumberEnd: 22
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ProtocolDetectionState:21,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.string.StringEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.string.StringEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.charset.Charset].defaultCharset()"
    - "[io.netty.handler.codec.string.StringEncoder].<init>(java.nio.charset.Charset)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.string.StringEncoder:61,1"
      Dst: "[java.nio.charset.Charset].defaultCharset()"
    - Src: "io.netty.handler.codec.string.StringEncoder:61,1"
      Dst: "[io.netty.handler.codec.string.StringEncoder].<init>(java.nio.charset.Charset)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.string.StringEncoder].<init>(java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.string.StringEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.string.StringEncoder:67,1"
      Dst: "[io.netty.handler.codec.MessageToMessageEncoder].<init>()"
    - Src: "io.netty.handler.codec.string.StringEncoder:68,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.string.StringEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.CharSequence,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.string.StringEncoder"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 79
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.CharSequence"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].length()"
    - "[io.netty.util.internal.AppendableCharSequence].length()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufUtil].encodeString(io.netty.buffer.ByteBufAllocator,java.nio.CharBuffer,java.nio.charset.Charset)"
    - "[java.nio.CharBuffer].wrap(java.lang.CharSequence)"
    - "[java.lang.CharSequence].length()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 13
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.string.StringEncoder:73"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.string.StringEncoder:77"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.string.StringEncoder:76"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "encodeString(io.netty.buffer.ByteBufAllocator,java.nio.CharBuffer,java.nio.charset.Charset)"
        - "alloc()"
        - "wrap(java.lang.CharSequence)"
    Callsites:
    - Src: "io.netty.handler.codec.string.StringEncoder:73,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.handler.codec.string.StringEncoder:77,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.string.StringEncoder:77,1"
      Dst: "[java.nio.CharBuffer].wrap(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.string.StringEncoder:77,1"
      Dst: "[io.netty.buffer.ByteBufUtil].encodeString(io.netty.buffer.ByteBufAllocator,java.nio.CharBuffer,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.string.StringEncoder:77,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.string.StringEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.string.StringEncoder"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.string.StringEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.CharSequence,java.util.List)"
    functionUses: 2
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.string.StringEncoder:52,1"
      Dst: "[io.netty.handler.codec.string.StringEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.CharSequence,java.util.List)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ConcurrentSet].<init>()"
    functionSourceFile: "io.netty.util.internal.ConcurrentSet"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractSet].<init>()"
    - "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ConcurrentSet:36,1"
      Dst: "[java.util.AbstractSet].<init>()"
    - Src: "io.netty.util.internal.ConcurrentSet:37,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newConcurrentHashMap()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ConcurrentSet].size()"
    functionSourceFile: "io.netty.util.internal.ConcurrentSet"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].size()"
    - "[java.util.Map].size()"
    functionUses: 13
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ConcurrentSet:42,1"
      Dst: "[java.util.Map].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ConcurrentSet].contains(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.ConcurrentSet"
    linkageType: ""
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].containsKey(java.lang.Object)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    functionUses: 14
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ConcurrentSet:47,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ConcurrentSet].add(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.ConcurrentSet"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    - "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    functionUses: 21
    ICount: 10
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ConcurrentSet:52"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ConcurrentSet:51"
        BranchSideFuncs:
        - "putIfAbsent(java.lang.Object,java.lang.Object)"
    Callsites:
    - Src: "io.netty.util.internal.ConcurrentSet:52,1"
      Dst: "[java.util.concurrent.ConcurrentMap].putIfAbsent(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.ConcurrentSet].remove(java.lang.Object)"
    functionSourceFile: "io.netty.util.internal.ConcurrentSet"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].remove(java.lang.Object)"
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 20
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.util.internal.ConcurrentSet:57"
      Branch Sides:
      - BranchSide: "io.netty.util.internal.ConcurrentSet:56"
        BranchSideFuncs:
        - "remove(java.lang.Object)"
    Callsites:
    - Src: "io.netty.util.internal.ConcurrentSet:57,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.internal.ConcurrentSet].clear()"
    functionSourceFile: "io.netty.util.internal.ConcurrentSet"
    linkageType: ""
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].clear()"
    - "[java.util.Map].clear()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ConcurrentSet:62,1"
      Dst: "[java.util.Map].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.ConcurrentSet].iterator()"
    functionSourceFile: "io.netty.util.internal.ConcurrentSet"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap].keySet()"
    - "[java.util.Map].keySet()"
    - "[java.util.Set].iterator()"
    functionUses: 119
    ICount: 5
    EdgeCount: 16
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.ConcurrentSet:67,1"
      Dst: "[java.util.Map].keySet()"
    - Src: "io.netty.util.internal.ConcurrentSet:67,1"
      Dst: "[java.util.Set].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].<init>(io.netty.channel.socket.nio.NioServerSocketChannel,io.netty.channel.socket.nio.NioServerSocketChannel,java.net.ServerSocket)"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.socket.nio.NioServerSocketChannel"
    - "io.netty.channel.socket.nio.NioServerSocketChannel"
    - "java.net.ServerSocket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].<init>(io.netty.channel.socket.ServerSocketChannel,java.net.ServerSocket)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:208,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].<init>(io.netty.channel.socket.ServerSocketChannel,java.net.ServerSocket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].autoReadCleared()"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 212
    functionLinenumberEnd: 215
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].access$100(io.netty.channel.socket.nio.NioServerSocketChannel)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:213,1"
      Dst: "[io.netty.channel.socket.nio.NioServerSocketChannel].access$100(io.netty.channel.socket.nio.NioServerSocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 217
    functionLinenumberEnd: 222
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].jdkChannel()"
    - "[io.netty.channel.socket.nio.NioChannelOption].setOption(java.nio.channels.Channel,io.netty.channel.socket.nio.NioChannelOption,java.lang.Object)"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 2
    ICount: 13
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:218"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:221"
        BranchSideFuncs:
        - "setOption(java.nio.channels.Channel,io.netty.channel.socket.nio.NioChannelOption,java.lang.Object)"
        - "jdkChannel()"
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:220"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    - Branch String: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:218"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:221"
        BranchSideFuncs:
        - "setOption(java.nio.channels.Channel,io.netty.channel.socket.nio.NioChannelOption,java.lang.Object)"
        - "jdkChannel()"
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:220"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:218,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:219,1"
      Dst: "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].jdkChannel()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:219,1"
      Dst: "[io.netty.channel.socket.nio.NioChannelOption].setOption(java.nio.channels.Channel,io.netty.channel.socket.nio.NioChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:221,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].jdkChannel()"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 240
    functionLinenumberEnd: 242
    functionDepth: 1
    returnType: "java.nio.channels.ServerSocketChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].javaChannel()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:241,1"
      Dst: "[io.netty.channel.socket.nio.NioServerSocketChannel].javaChannel()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 230
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.channel.socket.nio.NioChannelOption].getOption(java.nio.channels.Channel,io.netty.channel.socket.nio.NioChannelOption)"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].jdkChannel()"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 5
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:226"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:229"
        BranchSideFuncs:
        - "getOption(java.nio.channels.Channel,io.netty.channel.socket.nio.NioChannelOption)"
        - "jdkChannel()"
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:228"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    - Branch String: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:226"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:229"
        BranchSideFuncs:
        - "getOption(java.nio.channels.Channel,io.netty.channel.socket.nio.NioChannelOption)"
        - "jdkChannel()"
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:228"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:226,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:227,1"
      Dst: "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].jdkChannel()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:227,1"
      Dst: "[io.netty.channel.socket.nio.NioChannelOption].getOption(java.nio.channels.Channel,io.netty.channel.socket.nio.NioChannelOption)"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:229,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getOptions()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].jdkChannel()"
    - "[io.netty.channel.socket.nio.NioChannelOption].getOptions(java.nio.channels.Channel)"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:234"
      Branch Sides:
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:237"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:236"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:234,1"
      Dst: "[io.netty.util.internal.PlatformDependent].javaVersion()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:235,1"
      Dst: "[io.netty.channel.socket.DefaultServerSocketChannelConfig].getOptions()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:235,1"
      Dst: "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].jdkChannel()"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:235,1"
      Dst: "[io.netty.channel.socket.nio.NioChannelOption].getOptions(java.nio.channels.Channel)"
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:235,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].<init>(io.netty.channel.socket.nio.NioServerSocketChannel,io.netty.channel.socket.nio.NioServerSocketChannel,java.net.ServerSocket,io.netty.channel.socket.nio.NioServerSocketChannel$1)"
    functionSourceFile: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.socket.nio.NioServerSocketChannel"
    - "io.netty.channel.socket.nio.NioServerSocketChannel"
    - "java.net.ServerSocket"
    - "io.netty.channel.socket.nio.NioServerSocketChannel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].<init>(io.netty.channel.socket.nio.NioServerSocketChannel,io.netty.channel.socket.nio.NioServerSocketChannel,java.net.ServerSocket)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig:206,1"
      Dst: "[io.netty.channel.socket.nio.NioServerSocketChannel$NioServerSocketChannelConfig].<init>(io.netty.channel.socket.nio.NioServerSocketChannel,io.netty.channel.socket.nio.NioServerSocketChannel,java.net.ServerSocket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ThreadPerTaskExecutor].<init>(java.util.concurrent.ThreadFactory)"
    functionSourceFile: "io.netty.util.concurrent.ThreadPerTaskExecutor"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.concurrent.ThreadFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ThreadPerTaskExecutor:26,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.concurrent.ThreadPerTaskExecutor:27,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ThreadPerTaskExecutor].execute(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.ThreadPerTaskExecutor"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ThreadExecutorMap$3].newThread(java.lang.Runnable)"
    - "[jdk.internal.ref.CleanerImpl$InnocuousThreadFactory].newThread(java.lang.Runnable)"
    - "[io.netty.util.concurrent.DefaultThreadFactory].newThread(java.lang.Runnable)"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors].newThread(java.lang.Runnable)"
    - "[jdk.internal.ref.CleanerFactory$1].newThread(java.lang.Runnable)"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[java.lang.ref.Finalizer$FinalizerThread:java.util.concurrent.ForkJoinWorkerThread].run()"
    - "[java.lang.Thread].start()"
    - "[java.util.concurrent.ThreadFactory].newThread(java.lang.Runnable)"
    functionUses: 6
    ICount: 6
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ThreadPerTaskExecutor:32,1"
      Dst: "[java.util.concurrent.ThreadFactory].newThread(java.lang.Runnable)"
    - Src: "io.netty.util.concurrent.ThreadPerTaskExecutor:32,1"
      Dst: "[java.lang.Thread].start()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ByteProcessor$IndexNotOfProcessor].<init>(byte)"
    functionSourceFile: "io.netty.util.ByteProcessor$IndexNotOfProcessor"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ByteProcessor$IndexNotOfProcessor:48,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ByteProcessor$IndexNotOfProcessor].process(byte)"
    functionSourceFile: "io.netty.util.ByteProcessor$IndexNotOfProcessor"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.ByteProcessor$IndexNotOfProcessor:54"
      Branch Sides:
      - BranchSide: "io.netty.util.ByteProcessor$IndexNotOfProcessor:53"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.socket.ChannelOutputShutdownException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.channel.socket.ChannelOutputShutdownException"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.ChannelOutputShutdownException:32,1"
      Dst: "[java.io.IOException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.ChannelOutputShutdownException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.socket.ChannelOutputShutdownException"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.ChannelOutputShutdownException:36,1"
      Dst: "[java.io.IOException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].newSocket()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.sun.nio.sctp.SctpServerChannel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[com.sun.nio.sctp.SctpServerChannel].open()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:53,1"
      Dst: "[com.sun.nio.sctp.SctpServerChannel].open()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:55,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].<init>()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].newSocket()"
    - "[io.netty.channel.nio.AbstractNioMessageChannel].<init>(io.netty.channel.Channel,java.nio.channels.SelectableChannel,int)"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].javaChannel()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$NioSctpServerChannelConfig].<init>(io.netty.channel.sctp.nio.NioSctpServerChannel,io.netty.channel.sctp.nio.NioSctpServerChannel,com.sun.nio.sctp.SctpServerChannel,io.netty.channel.sctp.nio.NioSctpServerChannel$1)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:66,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel].newSocket()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:66,1"
      Dst: "[io.netty.channel.nio.AbstractNioMessageChannel].<init>(io.netty.channel.Channel,java.nio.channels.SelectableChannel,int)"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:67,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:67,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel$NioSctpServerChannelConfig].<init>(io.netty.channel.sctp.nio.NioSctpServerChannel,io.netty.channel.sctp.nio.NioSctpServerChannel,com.sun.nio.sctp.SctpServerChannel,io.netty.channel.sctp.nio.NioSctpServerChannel$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].metadata()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "io.netty.channel.ChannelMetadata"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 15
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].allLocalAddresses()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 86
    functionDepth: 1
    returnType: "java.util.Set"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].javaChannel()"
    - "[java.util.LinkedHashSet].<init>(int)"
    - "[io.netty.channel.group.DefaultChannelGroup].size()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].size()"
    - "[io.netty.util.internal.ConcurrentSet].size()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].size()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].size()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].size()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].size()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2:java.util.HashSet:java.util.TreeMap$EntrySet:java.util.TreeMap$KeySet:java.util.TreeSet:java.util.concurrent.ConcurrentHashMap$EntrySetView:java.util.concurrent.ConcurrentHashMap$KeySetView].add(java.lang.Object)"
    - "[java.util.Collections].emptySet()"
    - "[com.sun.nio.sctp.SctpServerChannel].getAllLocalAddresses()"
    - "[java.util.Set].size()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Set].add(java.lang.Object)"
    functionUses: 1
    ICount: 18
    EdgeCount: 125
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpServerChannel:80"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpServerChannel:83"
        BranchSideFuncs:
        - "hasNext()"
        - "add(java.lang.Object)"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpServerChannel:82"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:78,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:78,1"
      Dst: "[com.sun.nio.sctp.SctpServerChannel].getAllLocalAddresses()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:79,1"
      Dst: "[java.util.Set].size()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:79,1"
      Dst: "[java.util.LinkedHashSet].<init>(int)"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:80,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:80,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:80,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:81,1"
      Dst: "[java.util.Set].add(java.lang.Object)"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:85,1"
      Dst: "[java.util.Collections].emptySet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].config()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 92
    functionDepth: 0
    returnType: "io.netty.channel.sctp.SctpServerChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 54
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].allLocalAddresses()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].isEmpty()"
    - "[io.netty.channel.group.DefaultChannelGroup].isEmpty()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].isEmpty()"
    - "[io.netty.channel.nio.AbstractNioChannel].isOpen()"
    - "[java.util.Set].isEmpty()"
    functionUses: 36
    ICount: 10
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpServerChannel:96"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpServerChannel:95"
        BranchSideFuncs:
        - "allLocalAddresses()"
        - "isEmpty()"
        - "isOpen()"
    - Branch String: "io.netty.channel.sctp.nio.NioSctpServerChannel:96"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpServerChannel:95"
        BranchSideFuncs:
        - "allLocalAddresses()"
        - "isEmpty()"
        - "isOpen()"
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:96,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].isOpen()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:96,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel].allLocalAddresses()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:96,1"
      Dst: "[java.util.Set].isEmpty()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].localAddress()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:106,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 116
    functionLinenumberEnd: 125
    functionDepth: 1
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].javaChannel()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator:io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1:io.netty.channel.nio.SelectedSelectionKeySet$1:io.netty.handler.codec.DefaultHeaders$HeaderIterator:io.netty.handler.codec.DefaultHeaders$ValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator:io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator:io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator:io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator:io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator:java.io.BufferedReader$1:java.nio.file.FileTreeIterator:java.nio.file.Files$2].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[com.sun.nio.sctp.SctpServerChannel].getAllLocalAddresses()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 110
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpServerChannel:118"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpServerChannel:123"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpServerChannel:122"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:117,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:117,1"
      Dst: "[com.sun.nio.sctp.SctpServerChannel].getAllLocalAddresses()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:117,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:118,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:119,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 128
    functionLinenumberEnd: 131
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.DefaultSctpServerChannelConfig].getBacklog()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].javaChannel()"
    - "[io.netty.channel.sctp.SctpServerChannelConfig].getBacklog()"
    - "[com.sun.nio.sctp.SctpServerChannel].bind(java.net.SocketAddress,int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:129,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:129,1"
      Dst: "[io.netty.channel.sctp.SctpServerChannelConfig].getBacklog()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:129,1"
      Dst: "[com.sun.nio.sctp.SctpServerChannel].bind(java.net.SocketAddress,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].doClose()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 133
    functionLinenumberEnd: 136
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].javaChannel()"
    - "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:134,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:134,1"
      Dst: "[java.nio.channels.spi.AbstractInterruptibleChannel].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].doReadMessages(java.util.List<Object>)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 145
    functionDepth: 9
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].javaChannel()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].<init>(io.netty.channel.Channel,com.sun.nio.sctp.SctpChannel)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[com.sun.nio.sctp.SctpServerChannel].accept()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 10
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.channel.sctp.nio.NioSctpServerChannel:140"
      Branch Sides:
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpServerChannel:143"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.sctp.nio.NioSctpServerChannel:142"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(io.netty.channel.Channel,com.sun.nio.sctp.SctpChannel)"
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:139,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel].javaChannel()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:139,1"
      Dst: "[com.sun.nio.sctp.SctpServerChannel].accept()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:143,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].<init>(io.netty.channel.Channel,com.sun.nio.sctp.SctpChannel)"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:143,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].bindAddress(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:149,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:149,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel].bindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].unbindAddress(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].newPromise()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:174,1"
      Dst: "[io.netty.channel.AbstractChannel].newPromise()"
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:174,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpServerChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 202
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:201,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].doFinishConnect()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 207
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:206,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].remoteAddress0()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].doDisconnect()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 217
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:216,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].doWriteMessage(java.lang.Object,io.netty.channel.ChannelOutboundBuffer)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 220
    functionLinenumberEnd: 222
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.channel.ChannelOutboundBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:221,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpServerChannel].filterOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpServerChannel"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 227
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpServerChannel:226,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe].epollInReady()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe"
    linkageType: ""
    functionLinenumber: 292
    functionLinenumberEnd: 381
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].clearEpollIn0()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].edgeTriggered(boolean)"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isFlagSet(int)"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInBefore()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isConnected()"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].writableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].writableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].writableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].writableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writableBytes()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].localAddress()"
    - "[io.netty.channel.unix.DomainDatagramPacket].<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress,io.netty.channel.unix.DomainSocketAddress)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].remoteAddress()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].hasMemoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.PooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].memoryAddress()"
    - "[io.netty.buffer.EmptyByteBuf].memoryAddress()"
    - "[io.netty.buffer.SlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.FixedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.CompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.SwappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].memoryAddress()"
    - "[io.netty.buffer.DuplicatedByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].memoryAddress()"
    - "[io.netty.buffer.WrappedByteBuf].memoryAddress()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].memoryAddress()"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyByteBuf].memoryAddress()"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].memoryAddress()"
    - "[io.netty.channel.unix.Socket].recvFromAddressDomainSocket(long,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].capacity()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].capacity()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.CompositeByteBuf].capacity()"
    - "[io.netty.buffer.DuplicatedByteBuf].capacity()"
    - "[io.netty.buffer.SlicedByteBuf].capacity()"
    - "[io.netty.buffer.PooledSlicedByteBuf].capacity()"
    - "[io.netty.buffer.WrappedByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].capacity()"
    - "[io.netty.buffer.PooledByteBuf].capacity()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].capacity()"
    - "[io.netty.buffer.ReadOnlyByteBuf].capacity()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].capacity()"
    - "[io.netty.buffer.FixedCompositeByteBuf].capacity()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.channel.unix.Socket].recvFromDomainSocket(java.nio.ByteBuffer,int,int)"
    - "[io.netty.channel.unix.DomainDatagramSocketAddress].localAddress()"
    - "[io.netty.channel.unix.DomainDatagramSocketAddress].receivedAmount()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInFinally(io.netty.channel.ChannelConfig)"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.channel.ChannelConfig].getAllocator()"
    - "[io.netty.buffer.ByteBuf].writableBytes()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - "[io.netty.buffer.ByteBuf].memoryAddress()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].capacity()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.Buffer].limit()"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 3
    ICount: 109
    EdgeCount: 186
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:293"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:294"
        BranchSideFuncs:
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
        - "config()"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:293"
        BranchSideFuncs:
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
        - "config()"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:293"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:294"
        BranchSideFuncs:
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
        - "config()"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:293"
        BranchSideFuncs:
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
        - "config()"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:295"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:299"
        BranchSideFuncs:
        - "clearEpollIn0()"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:298"
        BranchSideFuncs:
        - "reset(io.netty.channel.ChannelConfig)"
        - "isFlagSet(int)"
        - "edgeTriggered(boolean)"
        - "recvBufAllocHandle()"
        - "pipeline()"
        - "getAllocator()"
        - "epollInBefore()"
        - "isConnected()"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:317"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:328"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:327"
        BranchSideFuncs:
        - "hasMemoryAddress()"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:319"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:324"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "localAddress()"
        - "writerIndex()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "attemptedBytesRead(int)"
        - "writableBytes()"
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
        - "fireChannelRead(java.lang.Object)"
        - "clearEpollIn0()"
        - "<init>()"
        - "writerIndex(int)"
        - "isFlagSet(int)"
        - "readComplete()"
        - "epollInFinally(io.netty.channel.ChannelConfig)"
        - "inEventLoop()"
        - "release()"
        - "continueReading(io.netty.util.UncheckedBooleanSupplier)"
        - "receivedAmount()"
        - "edgeTriggered(boolean)"
        - "hasMemoryAddress()"
        - "recvFromAddressDomainSocket(long,int,int)"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "config()"
        - "memoryAddress()"
        - "recvBufAllocHandle()"
        - "internalNioBuffer(int,int)"
        - "pipeline()"
        - "recvFromDomainSocket(java.nio.ByteBuffer,int,int)"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress,io.netty.channel.unix.DomainSocketAddress)"
        - "incMessagesRead(int)"
        - "eventLoop()"
        - "getAllocator()"
        - "epollInBefore()"
        - "capacity()"
        - "remoteAddress()"
        - "isConnected()"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:323"
        BranchSideFuncs:
        - "remoteAddress()"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:328"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:334"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "localAddress()"
        - "writerIndex()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "attemptedBytesRead(int)"
        - "writableBytes()"
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
        - "fireChannelRead(java.lang.Object)"
        - "clearEpollIn0()"
        - "<init>()"
        - "writerIndex(int)"
        - "isFlagSet(int)"
        - "readComplete()"
        - "epollInFinally(io.netty.channel.ChannelConfig)"
        - "inEventLoop()"
        - "release()"
        - "continueReading(io.netty.util.UncheckedBooleanSupplier)"
        - "receivedAmount()"
        - "edgeTriggered(boolean)"
        - "hasMemoryAddress()"
        - "recvFromAddressDomainSocket(long,int,int)"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "config()"
        - "memoryAddress()"
        - "recvBufAllocHandle()"
        - "internalNioBuffer(int,int)"
        - "pipeline()"
        - "recvFromDomainSocket(java.nio.ByteBuffer,int,int)"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress,io.netty.channel.unix.DomainSocketAddress)"
        - "incMessagesRead(int)"
        - "eventLoop()"
        - "getAllocator()"
        - "epollInBefore()"
        - "capacity()"
        - "remoteAddress()"
        - "isConnected()"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:333"
        BranchSideFuncs:
        - "writableBytes()"
        - "recvFromDomainSocket(java.nio.ByteBuffer,int,int)"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:339"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:344"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:343"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:345"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:348"
        BranchSideFuncs:
        - "localAddress()"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:347"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "writerIndex()"
        - "writerIndex(int)"
        - "receivedAmount()"
        - "<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress,io.netty.channel.unix.DomainSocketAddress)"
        - "lastBytesRead()"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:363"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:313"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "localAddress()"
        - "writerIndex()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "attemptedBytesRead(int)"
        - "writableBytes()"
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
        - "fireChannelRead(java.lang.Object)"
        - "clearEpollIn0()"
        - "<init>()"
        - "writerIndex(int)"
        - "isFlagSet(int)"
        - "readComplete()"
        - "epollInFinally(io.netty.channel.ChannelConfig)"
        - "inEventLoop()"
        - "release()"
        - "continueReading(io.netty.util.UncheckedBooleanSupplier)"
        - "receivedAmount()"
        - "edgeTriggered(boolean)"
        - "hasMemoryAddress()"
        - "recvFromAddressDomainSocket(long,int,int)"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "config()"
        - "memoryAddress()"
        - "recvBufAllocHandle()"
        - "internalNioBuffer(int,int)"
        - "pipeline()"
        - "recvFromDomainSocket(java.nio.ByteBuffer,int,int)"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress,io.netty.channel.unix.DomainSocketAddress)"
        - "incMessagesRead(int)"
        - "eventLoop()"
        - "getAllocator()"
        - "epollInBefore()"
        - "capacity()"
        - "remoteAddress()"
        - "isConnected()"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:312"
        BranchSideFuncs:
        - "attemptedBytesRead(int)"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:365"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:368"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:367"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:374"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:378"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:377"
        BranchSideFuncs:
        - "epollInFinally(io.netty.channel.ChannelConfig)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:293,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:293,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:293,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:294,1"
      Dst: "[io.netty.channel.epoll.EpollDomainDatagramChannel].config()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:295,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:296,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].clearEpollIn0()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:299,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].recvBufAllocHandle()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:300,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].isFlagSet(int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:300,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].edgeTriggered(boolean)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:302,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:303,1"
      Dst: "[io.netty.channel.ChannelConfig].getAllocator()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:304,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:305,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInBefore()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:311,1"
      Dst: "[io.netty.channel.epoll.EpollDomainDatagramChannel].isConnected()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:313,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:314,1"
      Dst: "[io.netty.buffer.ByteBuf].writableBytes()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:314,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:318,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:318,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:319,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:321,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:324,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].localAddress()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:325,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].remoteAddress()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:325,1"
      Dst: "[io.netty.channel.unix.DomainDatagramPacket].<init>(io.netty.buffer.ByteBuf,io.netty.channel.unix.DomainSocketAddress,io.netty.channel.unix.DomainSocketAddress)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:328,1"
      Dst: "[io.netty.buffer.ByteBuf].hasMemoryAddress()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:330,1"
      Dst: "[io.netty.buffer.ByteBuf].memoryAddress()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:331,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:331,1"
      Dst: "[io.netty.buffer.ByteBuf].capacity()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:330,1"
      Dst: "[io.netty.channel.unix.Socket].recvFromAddressDomainSocket(long,int,int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:333,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:336,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:336,1"
      Dst: "[java.nio.Buffer].limit()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:336,1"
      Dst: "[io.netty.channel.unix.Socket].recvFromDomainSocket(java.nio.ByteBuffer,int,int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:344,1"
      Dst: "[io.netty.channel.unix.DomainDatagramSocketAddress].localAddress()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:348,1"
      Dst: "[io.netty.channel.unix.DomainDatagramSocketAddress].receivedAmount()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:349,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:354,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:357,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:363,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading(io.netty.util.UncheckedBooleanSupplier)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:371,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:372,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:375,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.channel.epoll.EpollDomainDatagramChannel$EpollDomainDatagramChannelUnsafe:378,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInFinally(io.netty.channel.ChannelConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 28
    CyclomaticComplexity: 9
  - functionName: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].<init>(io.netty.channel.RecvByteBufAllocator$ExtendedHandle)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator$ExtendedHandle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].<init>()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle$1].<init>(io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].<init>(io.netty.channel.RecvByteBufAllocator$Handle)"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:44,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].<init>(io.netty.channel.RecvByteBufAllocator$Handle)"
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:30,1"
      Dst: "[io.netty.channel.unix.PreferredDirectByteBufAllocator].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:33,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle$1].<init>(io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].guess()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl:io.netty.channel.FixedRecvByteBufAllocator$HandleImpl:io.netty.channel.RecvByteBufAllocator$DelegatingHandle:io.netty.channel.ServerChannelRecvByteBufAllocator$1].delegate()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].guess()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].guess()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].guess()"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].guess0()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].delegate()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].guess()"
    functionUses: 4
    ICount: 8
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:49"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:48"
        BranchSideFuncs:
        - "delegate()"
        - "guess()"
        - "guess0()"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:49,1"
      Dst: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].guess0()"
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:49,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].delegate()"
    - Src: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle:49,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].guess()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].readEOF()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].isReadEOF()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].numberBytesPending(long)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$7].<init>()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$7"
    linkageType: ""
    functionLinenumber: 400
    functionLinenumberEnd: 402
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$7:401,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.PlatformDependent0$7].run()"
    functionSourceFile: "io.netty.util.internal.PlatformDependent0$7"
    linkageType: ""
    functionLinenumber: 406
    functionLinenumberEnd: 413
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent0].getClassLoader(java.lang.Class)"
    - "[java.lang.ClassLoader].loadClass(java.lang.String)"
    - "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    functionUses: 4
    ICount: 10
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.PlatformDependent0$7:407,1"
      Dst: "[io.netty.util.internal.PlatformDependent0].getClassLoader(java.lang.Class)"
    - Src: "io.netty.util.internal.PlatformDependent0$7:408,1"
      Dst: "[java.lang.ClassLoader].loadClass(java.lang.String)"
    - Src: "io.netty.util.internal.PlatformDependent0$7:409,1"
      Dst: "[java.lang.Class].getDeclaredMethod(java.lang.String,java.lang.Class[])"
    - Src: "io.netty.util.internal.PlatformDependent0$7:410,1"
      Dst: "[java.lang.reflect.Method].invoke(java.lang.Object,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor,int,io.netty.channel.SelectStrategy,io.netty.util.concurrent.RejectedExecutionHandler,io.netty.channel.EventLoopTaskQueueFactory,io.netty.channel.EventLoopTaskQueueFactory)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "void"
    argCount: 7
    argTypes:
    - "io.netty.channel.EventLoopGroup"
    - "java.util.concurrent.Executor"
    - "int"
    - "io.netty.channel.SelectStrategy"
    - "io.netty.util.concurrent.RejectedExecutionHandler"
    - "io.netty.channel.EventLoopTaskQueueFactory"
    - "io.netty.channel.EventLoopTaskQueueFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueEventLoop].newTaskQueue(io.netty.channel.EventLoopTaskQueueFactory)"
    - "[io.netty.channel.SingleThreadEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor,boolean,java.util.Queue,java.util.Queue,io.netty.util.concurrent.RejectedExecutionHandler)"
    - "[io.netty.channel.unix.IovArray].<init>()"
    - "[io.netty.channel.kqueue.KQueueEventLoop$1].<init>(io.netty.channel.kqueue.KQueueEventLoop)"
    - "[io.netty.util.collection.IntObjectHashMap].<init>(int)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.kqueue.Native].newKQueue()"
    - "[io.netty.channel.kqueue.KQueueEventArray].<init>(int)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.kqueue.Native].keventAddUserEvent(int,int)"
    - "[io.netty.channel.kqueue.KQueueEventLoop].cleanup()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 52
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:83"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:87"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:86"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:92"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:96"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:95"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:79,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].newTaskQueue(io.netty.channel.EventLoopTaskQueueFactory)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:79,1"
      Dst: "[io.netty.channel.SingleThreadEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor,boolean,java.util.Queue,java.util.Queue,io.netty.util.concurrent.RejectedExecutionHandler)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:64,1"
      Dst: "[io.netty.channel.unix.IovArray].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:65,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop$1].<init>(io.netty.channel.kqueue.KQueueEventLoop)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:71,1"
      Dst: "[io.netty.util.collection.IntObjectHashMap].<init>(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:81,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:82,1"
      Dst: "[io.netty.channel.kqueue.Native].newKQueue()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:89,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].<init>(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:91,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:91,1"
      Dst: "[io.netty.channel.kqueue.Native].keventAddUserEvent(int,int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:93,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].cleanup()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:94,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:94,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:94,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:94,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:94,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].newTaskQueue(io.netty.channel.EventLoopTaskQueueFactory)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.util.Queue"
    argCount: 1
    argTypes:
    - "io.netty.channel.EventLoopTaskQueueFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueEventLoop].newTaskQueue0(int)"
    - "[io.netty.channel.EventLoopTaskQueueFactory].newTaskQueue(int)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:100"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:102"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:101,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].newTaskQueue0(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:103,1"
      Dst: "[io.netty.channel.EventLoopTaskQueueFactory].newTaskQueue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].newTaskQueue0(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: 330
    functionLinenumberEnd: 333
    functionDepth: 3
    returnType: "java.util.Queue"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].newMpscQueue()"
    - "[io.netty.util.internal.PlatformDependent].newMpscQueue(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:331"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:332"
        BranchSideFuncs:
        - "newMpscQueue(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:331"
        BranchSideFuncs:
        - "newMpscQueue(int)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:331,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newMpscQueue()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:332,1"
      Dst: "[io.netty.util.internal.PlatformDependent].newMpscQueue(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].add(io.netty.channel.kqueue.AbstractKQueueChannel)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: 106
    functionLinenumberEnd: 113
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.AbstractKQueueChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].fd()"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].put(int,java.lang.Object)"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isOpen()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isOpen()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isOpen()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isOpen()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isOpen()"
    - "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    functionUses: 1
    ICount: 23
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:107"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:108"
        BranchSideFuncs:
        - "fd()"
        - "<init>()"
        - "intValue()"
        - "isOpen()"
        - "put(int,java.lang.Object)"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:107"
        BranchSideFuncs:
        - "fd()"
        - "<init>()"
        - "intValue()"
        - "isOpen()"
        - "put(int,java.lang.Object)"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:107"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:108"
        BranchSideFuncs:
        - "fd()"
        - "<init>()"
        - "intValue()"
        - "isOpen()"
        - "put(int,java.lang.Object)"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:107"
        BranchSideFuncs:
        - "fd()"
        - "<init>()"
        - "intValue()"
        - "isOpen()"
        - "put(int,java.lang.Object)"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:111"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:111"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:111"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:112"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:111"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:107,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:107,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:108,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].fd()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:108,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:108,1"
      Dst: "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:111,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].isOpen()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].evSet(io.netty.channel.kqueue.AbstractKQueueChannel,short,short,int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 118
    functionDepth: 7
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.kqueue.AbstractKQueueChannel"
    - "short"
    - "short"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.channel.kqueue.KQueueEventArray].evSet(io.netty.channel.kqueue.AbstractKQueueChannel,short,short,int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:115"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:116"
        BranchSideFuncs:
        - "evSet(io.netty.channel.kqueue.AbstractKQueueChannel,short,short,int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:115"
        BranchSideFuncs:
        - "evSet(io.netty.channel.kqueue.AbstractKQueueChannel,short,short,int)"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:115"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:116"
        BranchSideFuncs:
        - "evSet(io.netty.channel.kqueue.AbstractKQueueChannel,short,short,int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:115"
        BranchSideFuncs:
        - "evSet(io.netty.channel.kqueue.AbstractKQueueChannel,short,short,int)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:115,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:115,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:116,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].evSet(io.netty.channel.kqueue.AbstractKQueueChannel,short,short,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].wakeup(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 153
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueEventLoop].wakeup()"
    - "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:149"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:152"
        BranchSideFuncs:
        - "wakeup()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:151"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:149"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:152"
        BranchSideFuncs:
        - "wakeup()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:151"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:149,1"
      Dst: "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].compareAndSet(java.lang.Object,int,int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:150,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].wakeup()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].wakeup()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: 154
    functionLinenumberEnd: 159
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.kqueue.Native].keventTriggerUserEvent(int,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:155,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:155,1"
      Dst: "[io.netty.channel.kqueue.Native].keventTriggerUserEvent(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].kqueueWait(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 172
    functionDepth: 7
    returnType: "int"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.SingleThreadEventLoop].hasTasks()"
    - "[io.netty.channel.kqueue.KQueueEventLoop].kqueueWaitNow()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].delayNanos(long)"
    - "[java.lang.System].nanoTime()"
    - "[java.lang.Math].min(long,long)"
    - "[io.netty.channel.kqueue.KQueueEventLoop].kqueueWait(int,int)"
    functionUses: 1
    ICount: 19
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:165"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:169"
        BranchSideFuncs:
        - "kqueueWaitNow()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:168"
        BranchSideFuncs:
        - "min(long,long)"
        - "nanoTime()"
        - "delayNanos(long)"
        - "kqueueWait(int,int)"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:165"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:169"
        BranchSideFuncs:
        - "kqueueWaitNow()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:168"
        BranchSideFuncs:
        - "min(long,long)"
        - "nanoTime()"
        - "delayNanos(long)"
        - "kqueueWait(int,int)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:165,1"
      Dst: "[io.netty.channel.SingleThreadEventLoop].hasTasks()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:166,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].kqueueWaitNow()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:169,1"
      Dst: "[java.lang.System].nanoTime()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:169,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].delayNanos(long)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:170,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:171,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].kqueueWait(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].processReady(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 226
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueEventArray].filter(int)"
    - "[io.netty.channel.kqueue.KQueueEventArray].flags(int)"
    - "[io.netty.channel.kqueue.KQueueEventArray].fd(int)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.util.collection.IntObjectHashMap].get(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(int)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].get(int)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.Short].valueOf(short)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Object[])"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].writeReady()"
    - "[io.netty.channel.kqueue.KQueueEventArray].data(int)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReady(long)"
    - "[io.netty.channel.kqueue.KQueueEventArray].fflags(int)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readEOF()"
    - "[io.netty.util.collection.IntObjectMap].get(int)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object[])"
    functionUses: 2
    ICount: 81
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:185"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:225"
        BranchSideFuncs:
        - "filter(int)"
        - "flags(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:224"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:189"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:191"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:189"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:196"
        BranchSideFuncs:
        - "get(int)"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:192"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:184"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:192"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:184"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:192"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:191"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:192"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:184"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:198"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:205"
        BranchSideFuncs:
        - "unsafe()"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:209"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:211"
        BranchSideFuncs:
        - "writeReady()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:210"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:211"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:213"
        BranchSideFuncs:
        - "fflags(int)"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:214"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:221"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:220"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:214"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:221"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:220"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:221"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:185"
        BranchSideFuncs:
        - "readEOF()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:184"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:186,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].filter(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:187,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].flags(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:188,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].fd(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:192,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:197,1"
      Dst: "[io.netty.util.collection.IntObjectMap].get(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:202,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:202,1"
      Dst: "[java.lang.Short].valueOf(short)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:202,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:206,1"
      Dst: "[io.netty.channel.AbstractChannel].unsafe()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:210,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].writeReady()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:213,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].data(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:213,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readReady(long)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:214,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].fflags(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:215,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].readEOF()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 22
    CyclomaticComplexity: 13
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].run()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: 230
    functionLinenumberEnd: 323
    functionDepth: 8
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultSelectStrategy].calculateStrategy(io.netty.util.IntSupplier,boolean)"
    - "[io.netty.channel.SingleThreadEventLoop].hasTasks()"
    - "[io.netty.channel.kqueue.KQueueEventLoop].kqueueWait(boolean)"
    - "[io.netty.channel.kqueue.KQueueEventLoop].wakeup()"
    - "[io.netty.channel.kqueue.KQueueEventLoop].processReady(int)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].runAllTasks()"
    - "[java.lang.System].nanoTime()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].runAllTasks(long)"
    - "[io.netty.channel.kqueue.KQueueEventArray].capacity()"
    - "[io.netty.channel.kqueue.KQueueEventArray].realloc(boolean)"
    - "[io.netty.channel.kqueue.KQueueEventLoop].handleLoopException(java.lang.Throwable)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].isShuttingDown()"
    - "[io.netty.channel.kqueue.KQueueEventLoop].closeAll()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].confirmShutdown()"
    - "[io.netty.channel.SelectStrategy].calculateStrategy(io.netty.util.IntSupplier,boolean)"
    - "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].getAndSet(java.lang.Object,int)"
    functionUses: 1
    ICount: 111
    EdgeCount: 32
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:309"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:319"
        BranchSideFuncs:
        - "confirmShutdown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:318"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:311"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:319"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:318"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:240"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:232"
        BranchSideFuncs:
        - "processReady(int)"
        - "nanoTime()"
        - "wakeup()"
        - "kqueueWait(boolean)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "confirmShutdown()"
        - "capacity()"
        - "realloc(boolean)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:231"
        BranchSideFuncs:
        - "processReady(int)"
        - "nanoTime()"
        - "wakeup()"
        - "kqueueWait(boolean)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "confirmShutdown()"
        - "capacity()"
        - "realloc(boolean)"
        - "isShuttingDown()"
        - "closeAll()"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:270"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:232"
        BranchSideFuncs:
        - "processReady(int)"
        - "nanoTime()"
        - "wakeup()"
        - "kqueueWait(boolean)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "confirmShutdown()"
        - "capacity()"
        - "realloc(boolean)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:231"
        BranchSideFuncs:
        - "processReady(int)"
        - "nanoTime()"
        - "wakeup()"
        - "kqueueWait(boolean)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "confirmShutdown()"
        - "capacity()"
        - "realloc(boolean)"
        - "isShuttingDown()"
        - "closeAll()"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:278"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:232"
        BranchSideFuncs:
        - "processReady(int)"
        - "nanoTime()"
        - "wakeup()"
        - "kqueueWait(boolean)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "confirmShutdown()"
        - "capacity()"
        - "realloc(boolean)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:231"
        BranchSideFuncs:
        - "processReady(int)"
        - "nanoTime()"
        - "wakeup()"
        - "kqueueWait(boolean)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "confirmShutdown()"
        - "capacity()"
        - "realloc(boolean)"
        - "isShuttingDown()"
        - "closeAll()"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:280"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:232"
        BranchSideFuncs:
        - "processReady(int)"
        - "nanoTime()"
        - "wakeup()"
        - "kqueueWait(boolean)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "confirmShutdown()"
        - "capacity()"
        - "realloc(boolean)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:231"
        BranchSideFuncs:
        - "processReady(int)"
        - "nanoTime()"
        - "wakeup()"
        - "kqueueWait(boolean)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "confirmShutdown()"
        - "capacity()"
        - "realloc(boolean)"
        - "isShuttingDown()"
        - "closeAll()"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:290"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:232"
        BranchSideFuncs:
        - "processReady(int)"
        - "nanoTime()"
        - "wakeup()"
        - "kqueueWait(boolean)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "confirmShutdown()"
        - "capacity()"
        - "realloc(boolean)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:231"
        BranchSideFuncs:
        - "processReady(int)"
        - "nanoTime()"
        - "wakeup()"
        - "kqueueWait(boolean)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "confirmShutdown()"
        - "capacity()"
        - "realloc(boolean)"
        - "isShuttingDown()"
        - "closeAll()"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:298"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:309"
        BranchSideFuncs:
        - "processReady(int)"
        - "nanoTime()"
        - "wakeup()"
        - "kqueueWait(boolean)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "confirmShutdown()"
        - "capacity()"
        - "realloc(boolean)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:308"
        BranchSideFuncs:
        - "isShuttingDown()"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:298"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:309"
        BranchSideFuncs:
        - "processReady(int)"
        - "nanoTime()"
        - "wakeup()"
        - "kqueueWait(boolean)"
        - "runAllTasks()"
        - "runAllTasks(long)"
        - "confirmShutdown()"
        - "capacity()"
        - "realloc(boolean)"
        - "isShuttingDown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:308"
        BranchSideFuncs:
        - "isShuttingDown()"
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:309"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:319"
        BranchSideFuncs:
        - "confirmShutdown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:318"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:311"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:319"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:318"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:309"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:319"
        BranchSideFuncs:
        - "confirmShutdown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:318"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:311"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:319"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:318"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:309"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:319"
        BranchSideFuncs:
        - "confirmShutdown()"
        - "closeAll()"
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:318"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:311"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:319"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:318"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:231,1"
      Dst: "[io.netty.channel.SingleThreadEventLoop].hasTasks()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:231,1"
      Dst: "[io.netty.channel.SelectStrategy].calculateStrategy(io.netty.util.IntSupplier,boolean)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:309,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].isShuttingDown()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:310,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].closeAll()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:311,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].confirmShutdown()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:318,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].handleLoopException(java.lang.Throwable)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:240,1"
      Dst: "[java.util.concurrent.atomic.AtomicIntegerFieldUpdater].getAndSet(java.lang.Object,int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:240,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].kqueueWait(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:271,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].wakeup()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:281,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].processReady(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:284,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].runAllTasks()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:287,1"
      Dst: "[java.lang.System].nanoTime()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:295,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].runAllTasks(long)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:298,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].capacity()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:300,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].realloc(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 48
    CyclomaticComplexity: 10
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].closeAll()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: 384
    functionLinenumberEnd: 398
    functionDepth: 7
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueEventLoop].kqueueWaitNow()"
    - "[io.netty.channel.group.DefaultChannelGroup].toArray(java.lang.Object[])"
    - "[jaz.Zer].toArray(java.lang.Object[])"
    - "[io.netty.util.internal.EmptyPriorityQueue].toArray(java.lang.Object[])"
    - "[java.util.concurrent.ConcurrentLinkedDeque].toArray(java.lang.Object[])"
    - "[io.netty.util.internal.DefaultPriorityQueue].toArray(java.lang.Object[])"
    - "[java.util.ArrayDeque].toArray(java.lang.Object[])"
    - "[java.util.concurrent.LinkedBlockingQueue].toArray(java.lang.Object[])"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].toArray(java.lang.Object[])"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toArray(java.lang.Object[])"
    - "[java.util.concurrent.ConcurrentLinkedQueue].toArray(java.lang.Object[])"
    - "[java.util.AbstractCollection].toArray(java.lang.Object[])"
    - "[java.util.Vector].toArray(java.lang.Object[])"
    - "[java.util.LinkedList].toArray(java.lang.Object[])"
    - "[java.util.ArrayList].toArray(java.lang.Object[])"
    - "[java.util.concurrent.LinkedBlockingDeque].toArray(java.lang.Object[])"
    - "[java.util.concurrent.CopyOnWriteArrayList].toArray(java.lang.Object[])"
    - "[io.netty.util.collection.IntObjectHashMap].values()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].values()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].values()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].voidPromise()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].voidPromise()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].toArray(java.lang.Object[])"
    - "[io.netty.channel.Channel$Unsafe].voidPromise()"
    - "[io.netty.channel.Channel$Unsafe].close(io.netty.channel.ChannelPromise)"
    functionUses: 4
    ICount: 20
    EdgeCount: 29
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:394"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:396"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:385,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].kqueueWaitNow()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:392,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:392,1"
      Dst: "[java.util.Collection].toArray(java.lang.Object[])"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:395,1"
      Dst: "[io.netty.channel.AbstractChannel].unsafe()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:395,1"
      Dst: "[io.netty.channel.Channel$Unsafe].voidPromise()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:395,1"
      Dst: "[io.netty.channel.Channel$Unsafe].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].handleLoopException(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: 399
    functionLinenumberEnd: 410
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.lang.Thread].sleep(long)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 5
    ICount: 7
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:400,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:405,1"
      Dst: "[java.lang.Thread].sleep(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].newTaskQueue(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: 325
    functionLinenumberEnd: 327
    functionDepth: 4
    returnType: "java.util.Queue"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueEventLoop].newTaskQueue0(int)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:326,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventLoop].newTaskQueue0(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].getIoRatio()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].setIoRatio(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:347"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:348"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:347"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:347"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:350"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:349"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:348,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:348,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:348,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:348,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:348,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].registeredChannels()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].size()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:355,1"
      Dst: "[java.util.Map].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].registeredChannelsIterator()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[java.lang.AssertionError].<init>()"
    - "[java.util.Map].isEmpty()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].empty()"
    - "[java.util.Map].values()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].<init>(java.lang.Iterable)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:360"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:361"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:360"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:360"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:361"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:360"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueEventLoop:362"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:365"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueEventLoop:364"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:360,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:360,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:362,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:363,1"
      Dst: "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].empty()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:365,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:365,1"
      Dst: "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].<init>(java.lang.Iterable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueEventLoop].cleanup()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueEventLoop"
    linkageType: ""
    functionLinenumber: 371
    functionLinenumberEnd: 382
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].close()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.channel.kqueue.KQueueEventArray].free()"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 6
    ICount: 19
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:372,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].close()"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:374,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.channel.kqueue.KQueueEventLoop:378,1"
      Dst: "[io.netty.channel.kqueue.KQueueEventArray].free()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelId].<init>(io.netty.channel.ChannelId,int)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelId"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelId"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:29,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelId].asShortText()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelId"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].asShortText()"
    - "[io.netty.channel.DefaultChannelId].asShortText()"
    - "[io.netty.channel.embedded.EmbeddedChannelId].asShortText()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.channel.ChannelId].asShortText()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    functionUses: 5
    ICount: 11
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:36,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:36,1"
      Dst: "[io.netty.channel.ChannelId].asShortText()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:36,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:36,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:36,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:36,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelId].asLongText()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelId"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[io.netty.channel.ChannelId].asLongText()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:41,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:41,1"
      Dst: "[io.netty.channel.ChannelId].asLongText()"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:41,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:41,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:41,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:41,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelId].compareTo(io.netty.channel.ChannelId)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelId"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Comparable].compareTo(java.lang.Object)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelId:46"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelId:55"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelId:54"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelId:49"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelId:52"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelId:51"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:48,1"
      Dst: "[java.lang.Comparable].compareTo(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelId].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelId"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].hashCode()"
    - "[io.netty.channel.DefaultChannelId:io.netty.channel.embedded.EmbeddedChannelId].hashCode()"
    - "[java.lang.Object].hashCode()"
    functionUses: 8
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:60,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelId].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelId"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelId].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].equals(java.lang.Object)"
    - "[io.netty.channel.embedded.EmbeddedChannelId].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 10
    ICount: 17
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelId:65"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelId:68"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelId:67"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelId:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelId:67"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.Http2StreamChannelId:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2StreamChannelId:67"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:69,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelId].toString()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelId"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].asShortText()"
    functionUses: 19
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:74,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamChannelId].asShortText()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2StreamChannelId].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2StreamChannelId"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].compareTo(io.netty.channel.ChannelId)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2StreamChannelId:23,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamChannelId].compareTo(io.netty.channel.ChannelId)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$7"
    linkageType: ""
    functionLinenumber: 391
    functionLinenumberEnd: 401
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoop$7].nextOrDone()"
    functionUses: 227
    ICount: 14
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop$7:392"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop$7:395"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop$7:394"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop$7:396"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop$7:400"
        BranchSideFuncs:
        - "nextOrDone()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop$7:399"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop$7:398"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop$7:396"
        BranchSideFuncs:
        - "nextOrDone()"
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$7:397,1"
      Dst: "[io.netty.channel.nio.NioEventLoop$7].nextOrDone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.nio.NioEventLoop$7].nextOrDone()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$7"
    linkageType: ""
    functionLinenumber: 424
    functionLinenumberEnd: 437
    functionDepth: 0
    returnType: "io.netty.channel.Channel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.nio.channels.SelectionKey].isValid()"
    - "[java.nio.channels.SelectionKey].attachment()"
    functionUses: 3
    ICount: 16
    EdgeCount: 112
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop$7:426"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop$7:435"
        BranchSideFuncs:
        - "next()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop$7:434"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop$7:428"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop$7:434"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop$7:433"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop$7:430"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop$7:434"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop$7:433"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$7:426,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.nio.NioEventLoop$7:427,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.nio.NioEventLoop$7:428,1"
      Dst: "[java.nio.channels.SelectionKey].isValid()"
    - Src: "io.netty.channel.nio.NioEventLoop$7:429,1"
      Dst: "[java.nio.channels.SelectionKey].attachment()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.nio.NioEventLoop$7].next()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$7"
    linkageType: ""
    functionLinenumber: 404
    functionLinenumberEnd: 417
    functionDepth: 1
    returnType: "io.netty.channel.Channel"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.NoSuchElementException].<init>()"
    - "[io.netty.channel.nio.NioEventLoop$7].nextOrDone()"
    functionUses: 229
    ICount: 17
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.NioEventLoop$7:405"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop$7:408"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop$7:407"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.NioEventLoop$7:409"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop$7:415"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.nio.NioEventLoop$7:414"
        BranchSideFuncs:
        - "nextOrDone()"
    - Branch String: "io.netty.channel.nio.NioEventLoop$7:411"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.NioEventLoop$7:415"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.channel.nio.NioEventLoop$7:414"
        BranchSideFuncs:
        - "nextOrDone()"
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$7:406,1"
      Dst: "[java.util.NoSuchElementException].<init>()"
    - Src: "io.netty.channel.nio.NioEventLoop$7:410,1"
      Dst: "[io.netty.channel.nio.NioEventLoop$7].nextOrDone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.nio.NioEventLoop$7].remove()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$7"
    linkageType: ""
    functionLinenumber: 420
    functionLinenumberEnd: 422
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 21
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$7:421,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].<init>(java.io.InputStream)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.io.InputStream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].<init>(java.io.InputStream,java.lang.ClassLoader)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:46,1"
      Dst: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].<init>(java.io.InputStream,java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].<init>(java.io.InputStream,java.lang.ClassLoader)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "java.lang.ClassLoader"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].<init>(java.io.InputStream,java.lang.ClassLoader,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:60,1"
      Dst: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].<init>(java.io.InputStream,java.lang.ClassLoader,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].<init>(java.io.InputStream,int)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.InputStream"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].<init>(java.io.InputStream,java.lang.ClassLoader,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:75,1"
      Dst: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].<init>(java.io.InputStream,java.lang.ClassLoader,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].<init>(java.io.InputStream,java.lang.ClassLoader,int)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.InputStream"
    - "java.lang.ClassLoader"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.InputStream].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - "[java.io.DataInputStream].<init>(java.io.InputStream)"
    - "[io.netty.handler.codec.serialization.ClassResolvers].weakCachingResolver(java.lang.ClassLoader)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:99"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:98"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:92,1"
      Dst: "[java.io.InputStream].<init>()"
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:93,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:94,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:99,1"
      Dst: "[java.io.DataInputStream].<init>(java.io.InputStream)"
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:101,1"
      Dst: "[io.netty.handler.codec.serialization.ClassResolvers].weakCachingResolver(java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].readObject()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].readInt()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.io.StreamCorruptedException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.serialization.CompactObjectInputStream].<init>(java.io.InputStream,io.netty.handler.codec.serialization.ClassResolver)"
    - "[java.io.ObjectInputStream].readObject()"
    functionUses: 0
    ICount: 31
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:111"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:110"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:111"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:116"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:115"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:107,1"
      Dst: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].readInt()"
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:109,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:109,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:109,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:109,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:109,1"
      Dst: "[java.io.StreamCorruptedException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:112,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:116,1"
      Dst: "[io.netty.handler.codec.serialization.CompactObjectInputStream].<init>(java.io.InputStream,io.netty.handler.codec.serialization.ClassResolver)"
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:116,1"
      Dst: "[java.io.ObjectInputStream].readObject()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.ClassNotFoundException"
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].readInt()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readInt()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:193,1"
      Dst: "[java.io.DataInputStream].readInt()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].available()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FilterInputStream].available()"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:121,1"
      Dst: "[java.io.FilterInputStream].available()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].close()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FilterInputStream].close()"
    functionUses: 9
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:126,1"
      Dst: "[java.io.FilterInputStream].close()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].mark(int)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FilterInputStream].mark(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:132,1"
      Dst: "[java.io.FilterInputStream].mark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].markSupported()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FilterInputStream].markSupported()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:137,1"
      Dst: "[java.io.FilterInputStream].markSupported()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].read()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FilterInputStream].read()"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:143,1"
      Dst: "[java.io.FilterInputStream].read()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].read(byte[],int,int)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].read(byte[],int,int)"
    functionUses: 10
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:148,1"
      Dst: "[java.io.DataInputStream].read(byte[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].read(byte[])"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 154
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].read(byte[])"
    functionUses: 4
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:153,1"
      Dst: "[java.io.DataInputStream].read(byte[])"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].readBoolean()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readBoolean()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:158,1"
      Dst: "[java.io.DataInputStream].readBoolean()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].readByte()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readByte()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:163,1"
      Dst: "[java.io.DataInputStream].readByte()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].readChar()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "char"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readChar()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:168,1"
      Dst: "[java.io.DataInputStream].readChar()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].readDouble()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "double"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readDouble()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:173,1"
      Dst: "[java.io.DataInputStream].readDouble()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].readFloat()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "float"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readFloat()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:178,1"
      Dst: "[java.io.DataInputStream].readFloat()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].readFully(byte[],int,int)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readFully(byte[],int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:183,1"
      Dst: "[java.io.DataInputStream].readFully(byte[],int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].readFully(byte[])"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readFully(byte[])"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:188,1"
      Dst: "[java.io.DataInputStream].readFully(byte[])"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].readLine()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readLine()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:202,1"
      Dst: "[java.io.DataInputStream].readLine()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].readLong()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readLong()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:207,1"
      Dst: "[java.io.DataInputStream].readLong()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].readShort()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "short"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readShort()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:212,1"
      Dst: "[java.io.DataInputStream].readShort()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].readUnsignedByte()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readUnsignedByte()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:217,1"
      Dst: "[java.io.DataInputStream].readUnsignedByte()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].readUnsignedShort()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readUnsignedShort()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:222,1"
      Dst: "[java.io.DataInputStream].readUnsignedShort()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].readUTF()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].readUTF()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:227,1"
      Dst: "[java.io.DataInputStream].readUTF()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].reset()"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FilterInputStream].reset()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:232,1"
      Dst: "[java.io.FilterInputStream].reset()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].skip(long)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.FilterInputStream].skip(long)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:237,1"
      Dst: "[java.io.FilterInputStream].skip(long)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.serialization.ObjectDecoderInputStream].skipBytes(int)"
    functionSourceFile: "io.netty.handler.codec.serialization.ObjectDecoderInputStream"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.io.DataInputStream].skipBytes(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.ObjectDecoderInputStream:242,1"
      Dst: "[java.io.DataInputStream].skipBytes(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].<init>()"
    functionSourceFile: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent:30,1"
      Dst: "[io.netty.buffer.Unpooled].buffer()"
    - Src: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent:30,1"
      Dst: "[io.netty.handler.codec.memcache.DefaultMemcacheContent].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].retain()"
    functionSourceFile: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionDepth: 1
    returnType: "io.netty.handler.codec.memcache.LastMemcacheContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].retain()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent:39,1"
      Dst: "[io.netty.handler.codec.memcache.DefaultMemcacheContent].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.DefaultMemcacheContent].retain()"
    functionSourceFile: "io.netty.handler.codec.memcache.DefaultMemcacheContent"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.MemcacheContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].retain()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.DefaultMemcacheContent:65,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].retain(int)"
    functionSourceFile: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.memcache.LastMemcacheContent"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent:45,1"
      Dst: "[io.netty.handler.codec.memcache.DefaultMemcacheContent].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.DefaultMemcacheContent].retain(int)"
    functionSourceFile: "io.netty.handler.codec.memcache.DefaultMemcacheContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.MemcacheContent"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].retain(int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.DefaultMemcacheContent:71,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].touch()"
    functionSourceFile: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionDepth: 1
    returnType: "io.netty.handler.codec.memcache.LastMemcacheContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].touch()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent:51,1"
      Dst: "[io.netty.handler.codec.memcache.DefaultMemcacheContent].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.DefaultMemcacheContent].touch()"
    functionSourceFile: "io.netty.handler.codec.memcache.DefaultMemcacheContent"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.MemcacheContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].touch()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.DefaultMemcacheContent:77,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent"
    linkageType: ""
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionDepth: 1
    returnType: "io.netty.handler.codec.memcache.LastMemcacheContent"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].touch(java.lang.Object)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent:57,1"
      Dst: "[io.netty.handler.codec.memcache.DefaultMemcacheContent].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.DefaultMemcacheContent].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.memcache.DefaultMemcacheContent"
    linkageType: ""
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionDepth: 0
    returnType: "io.netty.handler.codec.memcache.MemcacheContent"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.SimpleLeakAwareByteBuf:io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 5
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.DefaultMemcacheContent:83,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].copy()"
    functionSourceFile: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.memcache.LastMemcacheContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].content()"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent:63,1"
      Dst: "[io.netty.handler.codec.memcache.DefaultMemcacheContent].content()"
    - Src: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent:63,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent:63,1"
      Dst: "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.DefaultMemcacheContent].content()"
    functionSourceFile: "io.netty.handler.codec.memcache.DefaultMemcacheContent"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 16
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.memcache.LastMemcacheContent"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].<init>(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent:78,1"
      Dst: "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].<init>(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].duplicate()"
    functionSourceFile: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.memcache.LastMemcacheContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].content()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent:68,1"
      Dst: "[io.netty.handler.codec.memcache.DefaultMemcacheContent].content()"
    - Src: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent:68,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent:68,1"
      Dst: "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.memcache.LastMemcacheContent"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].content()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent:73,1"
      Dst: "[io.netty.handler.codec.memcache.DefaultMemcacheContent].content()"
    - Src: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent:73,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.codec.memcache.DefaultLastMemcacheContent:73,1"
      Dst: "[io.netty.handler.codec.memcache.DefaultLastMemcacheContent].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.lang.String[])"
    functionSourceFile: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory"
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ApplicationProtocolUtil].toList(java.lang.String[])"
    - "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.util.List)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator:60,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolUtil].toList(java.lang.String[])"
    - Src: "io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator:60,1"
      Dst: "[io.netty.handler.ssl.JdkBaseApplicationProtocolNegotiator].<init>(io.netty.handler.ssl.JdkApplicationProtocolNegotiator$SslEngineWrapperFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectorFactory,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListenerFactory,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder$3].<init>(io.netty.handler.codec.compression.Bzip2Encoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder$3"
    linkageType: ""
    functionLinenumber: 215
    functionLinenumberEnd: 217
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.compression.Bzip2Encoder"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder$3:216,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder$3"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 221
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    functionUses: 49
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder$3:219,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].setSessionId(io.netty.handler.ssl.OpenSslSessionId)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslSessionId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:309,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].setLocalCertificate(java.security.cert.Certificate[])"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 351
    functionLinenumberEnd: 353
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.security.cert.Certificate[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:352,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getSessionContext()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ssl.OpenSslSessionContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].tryExpandApplicationBufferSize(int)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 361
    functionLinenumberEnd: 363
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:362,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].handshakeFinished(byte[],java.lang.String,java.lang.String,byte[],byte[][],long,long)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 367
    functionLinenumberEnd: 369
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "byte[]"
    - "java.lang.String"
    - "java.lang.String"
    - "byte[]"
    - "byte[][]"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 2
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:368,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getId()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 372
    functionLinenumberEnd: 374
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslSessionId].cloneBytes()"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:373,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionId].cloneBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getCreationTime()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getLastAccessedTime()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].putValue(java.lang.String,java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:402,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getValue(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].removeValue(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getValueNames()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getPeerCertificates()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.cert.Certificate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:422,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getLocalCertificates()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.cert.Certificate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:427,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getPeerCertificateChain()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.security.cert.X509Certificate[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:432,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getPeerPrincipal()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.Principal"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:437,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getLocalPrincipal()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.security.Principal"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:442,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getCipherSuite()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 446
    functionLinenumberEnd: 448
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getProtocol()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 451
    functionLinenumberEnd: 453
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getPeerHost()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 456
    functionLinenumberEnd: 458
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getPeerPort()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 461
    functionLinenumberEnd: 463
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getPacketBufferSize()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 466
    functionLinenumberEnd: 468
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getApplicationBufferSize()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 471
    functionLinenumberEnd: 473
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].hashCode()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 476
    functionLinenumberEnd: 478
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslSessionId].hashCode()"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:477,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionId].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionId].hashCode()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionId"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 6
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    linkageType: ""
    functionLinenumber: 481
    functionLinenumberEnd: 490
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslSessionId].equals(java.lang.Object)"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].sessionId()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].sessionId()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].sessionId()"
    - "[io.netty.handler.ssl.OpenSslSession].sessionId()"
    functionUses: 9
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:482"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:485"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:484"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:485"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:488"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:487"
        BranchSideFuncs:
        - "sessionId()"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:489,1"
      Dst: "[io.netty.handler.ssl.OpenSslSession].sessionId()"
    - Src: "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession:489,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionId].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslSessionId].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslSessionId"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 49
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].equals(byte[],byte[])"
    functionUses: 10
    ICount: 12
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslSessionId:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionId:44"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionId:43"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslSessionId:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionId:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslSessionId:47"
        BranchSideFuncs:
        - "equals(byte[],byte[])"
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslSessionId:48,1"
      Dst: "[java.util.Arrays].equals(byte[],byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxySSLTLV].<init>(int,byte,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxySSLTLV"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "byte"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].<init>(int,byte,java.util.List,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:45,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxySSLTLV].<init>(int,byte,java.util.List,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxySSLTLV].<init>(int,byte,java.util.List,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxySSLTLV"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionDepth: 3
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "byte"
    - "java.util.List"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].<init>(io.netty.handler.codec.haproxy.HAProxyTLV$Type,byte,io.netty.buffer.ByteBuf)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    functionUses: 2
    ICount: 12
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:58,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyTLV].<init>(io.netty.handler.codec.haproxy.HAProxyTLV$Type,byte,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:61,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxySSLTLV].isPP2ClientCertConn()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxySSLTLV"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxySSLTLV:69"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxySSLTLV:68"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.haproxy.HAProxySSLTLV].isPP2ClientSSL()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxySSLTLV"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxySSLTLV:76"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxySSLTLV:75"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.haproxy.HAProxySSLTLV].isPP2ClientCertSess()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxySSLTLV"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxySSLTLV:83"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxySSLTLV:82"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.haproxy.HAProxySSLTLV].client()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxySSLTLV"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "byte"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxySSLTLV].verify()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxySSLTLV"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxySSLTLV].encapsulatedTLVs()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxySSLTLV"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxySSLTLV].contentNumBytes()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxySSLTLV"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 114
    functionDepth: 6
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[io.netty.handler.codec.CodecOutputList:java.util.AbstractSequentialList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].totalNumBytes()"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    functionUses: 2
    ICount: 15
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxySSLTLV:110"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxySSLTLV:112"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:110,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:111,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:111,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyTLV].totalNumBytes()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.haproxy.HAProxySSLTLV].toString()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxySSLTLV"
    linkageType: ""
    functionLinenumber: 117
    functionLinenumberEnd: 124
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].type()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].typeByteValue()"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].client()"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].verify()"
    - "[java.lang.StringBuilder].append(char)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.util.List].size()"
    functionUses: 20
    ICount: 26
    EdgeCount: 17
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:118,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:118,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:118,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:119,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyTLV].type()"
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:119,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:120,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyTLV].typeByteValue()"
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:120,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:121,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxySSLTLV].client()"
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:122,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxySSLTLV].verify()"
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:123,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:123,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.haproxy.HAProxySSLTLV:123,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:32,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1].encodeAddress(io.netty.handler.codec.socksx.v5.Socks5AddressType,java.lang.String,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 60
    functionDepth: 8
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.socksx.v5.Socks5AddressType"
    - "java.lang.String"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].byteValue()"
    - "[io.netty.util.NetUtil].createByteArrayFromIpAddressString(java.lang.String)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[java.lang.String].length()"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.CompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeLong(long)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeLong(long)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeLong(long)"
    - "[io.netty.buffer.AbstractByteBuf].writeLong(long)"
    - "[io.netty.buffer.WrappedByteBuf].writeLong(long)"
    - "[io.netty.buffer.EmptyByteBuf].writeLong(long)"
    - "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].writeLong(long)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 2
    ICount: 54
    EdgeCount: 86
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:36"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:42"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:41"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:37"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:40"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:39"
        BranchSideFuncs:
        - "writeInt(int)"
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:42"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:49"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:48"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:43"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:47"
        BranchSideFuncs:
        - "writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
        - "length()"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:46"
        BranchSideFuncs:
        - "writeByte(int)"
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:49"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:57"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:56"
        BranchSideFuncs:
        - "<init>()"
        - "toString()"
        - "byteValue()"
        - "<init>(java.lang.String)"
        - "append(int)"
    - Branch String: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:50"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:53"
        BranchSideFuncs:
        - "writeBytes(byte[])"
        - "createByteArrayFromIpAddressString(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:52"
        BranchSideFuncs:
        - "writeLong(long)"
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:35,1"
      Dst: "[io.netty.handler.codec.socksx.v5.Socks5AddressType].byteValue()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:38,1"
      Dst: "[io.netty.util.NetUtil].createByteArrayFromIpAddressString(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:38,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(byte[])"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:40,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:44,1"
      Dst: "[java.lang.String].length()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:44,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:45,1"
      Dst: "[io.netty.buffer.ByteBuf].writeCharSequence(java.lang.CharSequence,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:53,1"
      Dst: "[io.netty.buffer.ByteBuf].writeLong(long)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:57,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:57,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:57,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:57,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.socksx.v5.Socks5AddressEncoder$1:57,1"
      Dst: "[io.netty.handler.codec.EncoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].<init>()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.BsdSocket].newSocketDomain()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].<init>(io.netty.channel.Channel,io.netty.channel.kqueue.BsdSocket,boolean)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:41,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].newSocketDomain()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:41,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].<init>(io.netty.channel.Channel,io.netty.channel.kqueue.BsdSocket,boolean)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:35,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].<init>(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel].<init>(io.netty.channel.Channel,io.netty.channel.kqueue.BsdSocket)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:45,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:45,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].<init>(io.netty.channel.Channel,io.netty.channel.kqueue.BsdSocket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].newUnsafe()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe].<init>(io.netty.channel.kqueue.KQueueDomainSocketChannel,io.netty.channel.kqueue.KQueueDomainSocketChannel$1)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:54,1"
      Dst: "[io.netty.channel.kqueue.KQueueDomainSocketChannel$KQueueDomainUnsafe].<init>(io.netty.channel.kqueue.KQueueDomainSocketChannel,io.netty.channel.kqueue.KQueueDomainSocketChannel$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].localAddress0()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].remoteAddress0()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 72
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].bind(java.net.SocketAddress)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:69,1"
      Dst: "[io.netty.channel.unix.Socket].bind(java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 86
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDomainSocketChannel:80"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannel:85"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannel:84"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:80,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:90,1"
      Dst: "[io.netty.channel.AbstractChannel].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].localAddress()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:95,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].doWriteSingle(io.netty.channel.ChannelOutboundBuffer)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 107
    functionDepth: 7
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].current()"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.unix.Socket].sendFd(int)"
    - "[io.netty.channel.ChannelOutboundBuffer].remove()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].doWriteSingle(io.netty.channel.ChannelOutboundBuffer)"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDomainSocketChannel:101"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannel:105"
        BranchSideFuncs:
        - "doWriteSingle(io.netty.channel.ChannelOutboundBuffer)"
    - Branch String: "io.netty.channel.kqueue.KQueueDomainSocketChannel:101"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannel:105"
        BranchSideFuncs:
        - "doWriteSingle(io.netty.channel.ChannelOutboundBuffer)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:100,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].current()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:101,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:101,1"
      Dst: "[io.netty.channel.unix.Socket].sendFd(int)"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:103,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].remove()"
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:106,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].doWriteSingle(io.netty.channel.ChannelOutboundBuffer)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].filterOutboundMessage(java.lang.Object)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel"
    linkageType: ""
    functionLinenumber: 110
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].filterOutboundMessage(java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDomainSocketChannel:111"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannel:114"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueDomainSocketChannel:113"
        BranchSideFuncs:
        - "filterOutboundMessage(java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:114,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].filterOutboundMessage(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDomainSocketChannel].peerCredentials()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDomainSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.unix.PeerCredentials"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.BsdSocket].getPeerCredentials()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDomainSocketChannel:123,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].getPeerCredentials()"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$2"
    linkageType: ""
    functionLinenumber: 931
    functionLinenumberEnd: 937
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.handler.ssl.SslHandler].access$600(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].cause()"
    functionUses: 1
    ICount: 8
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler$2:933"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$2:936"
        BranchSideFuncs:
        - "access$600(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
      - BranchSide: "io.netty.handler.ssl.SslHandler$2:935"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$2:932,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.ssl.SslHandler$2:934,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$600(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler$2].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$2"
    linkageType: ""
    functionLinenumber: 928
    functionLinenumberEnd: 930
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler$2].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$2:929,1"
      Dst: "[io.netty.handler.ssl.SslHandler$2].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameCodec"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2FrameCodec,io.netty.channel.ChannelHandler)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:53,1"
      Dst: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2FrameCodec,io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2FrameCodec,io.netty.channel.ChannelHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.http2.Http2FrameCodec"
    - "io.netty.channel.ChannelHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler,io.netty.handler.codec.http2.Http2MultiplexHandler)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:57,1"
      Dst: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler,io.netty.handler.codec.http2.Http2MultiplexHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:67,1"
      Dst: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.handler.codec.http2.Http2MultiplexHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    - "io.netty.handler.codec.http2.Http2MultiplexHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.handler.codec.http2.Http2MultiplexHandler)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:79,1"
      Dst: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.handler.codec.http2.Http2MultiplexHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler,io.netty.handler.codec.http2.Http2MultiplexHandler)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:90,1"
      Dst: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler,io.netty.handler.codec.http2.Http2MultiplexHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.handler.codec.http2.Http2MultiplexHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    - "io.netty.handler.codec.http2.Http2MultiplexHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler,io.netty.handler.codec.http2.Http2MultiplexHandler)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:102,1"
      Dst: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler,io.netty.handler.codec.http2.Http2MultiplexHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].<init>(java.lang.String,io.netty.handler.codec.http2.Http2ConnectionHandler,io.netty.channel.ChannelHandler,io.netty.handler.codec.http2.Http2MultiplexHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.http2.Http2ConnectionHandler"
    - "io.netty.channel.ChannelHandler"
    - "io.netty.handler.codec.http2.Http2MultiplexHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 15
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:106,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:108,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].protocol()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "java.lang.CharSequence"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].setUpgradeHeaders(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 124
    functionDepth: 7
    returnType: "java.util.Collection<CharSequence>"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].getSettingsHeaderValue(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 9
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:121,1"
      Dst: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].getSettingsHeaderValue(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:122,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:122,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].getSettingsHeaderValue(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 174
    functionDepth: 6
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].decoder()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionDecoder].localSettings()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder].localSettings()"
    - "[io.netty.util.collection.CharObjectHashMap].size()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.util.collection.CharObjectHashMap].entries()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.handler.codec.http2.Http2Exception$CompositeStreamException].iterator()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].iterator()"
    - "[java.util.ServiceLoader].iterator()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[io.netty.buffer.CompositeByteBuf].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.channel.pool.AbstractChannelPoolMap].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.nio.file.Path].iterator()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.channel.DefaultChannelPipeline].iterator()"
    - "[io.netty.channel.group.ChannelGroupException].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.channel.ThreadPerChannelEventLoopGroup].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$1].iterator()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$1].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.handler.ssl.OpenSslCertificateCompressionConfig].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$1].iterator()"
    - "[io.netty.util.concurrent.MultithreadEventExecutorGroup].iterator()"
    - "[io.netty.handler.codec.DefaultHeaders].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$1].iterator()"
    - "[io.netty.channel.group.VoidChannelGroupFuture].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$1].iterator()"
    - "[io.netty.handler.codec.EmptyHeaders].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.buffer.PoolChunkList].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$1].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].key()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$EntryImpl].key()"
    - "[io.netty.buffer.CompositeByteBuf].writeChar(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeChar(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeChar(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeChar(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeChar(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeChar(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeChar(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeChar(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeChar(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeChar(int)"
    - "[java.lang.Long].intValue()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].value()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$EntryImpl].value()"
    - "[io.netty.buffer.CompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].writeInt(int)"
    - "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,io.netty.handler.codec.base64.Base64Dialect)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2ConnectionDecoder].localSettings()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[java.lang.Iterable].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.util.collection.CharObjectMap$PrimitiveEntry].key()"
    - "[io.netty.buffer.ByteBuf].writeChar(int)"
    - "[io.netty.util.collection.CharObjectMap$PrimitiveEntry].value()"
    - "[io.netty.buffer.ByteBuf].writeInt(int)"
    - "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    functionUses: 1
    ICount: 38
    EdgeCount: 247
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:162"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:168"
        BranchSideFuncs:
        - "writeInt(int)"
        - "entries()"
        - "hasNext()"
        - "next()"
        - "key()"
        - "iterator()"
        - "intValue()"
        - "writeChar(int)"
        - "value()"
      - BranchSide: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:167"
        BranchSideFuncs:
        - "toString(java.nio.charset.Charset)"
        - "encode(io.netty.buffer.ByteBuf,io.netty.handler.codec.base64.Base64Dialect)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:157,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].decoder()"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:157,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionDecoder].localSettings()"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:160,1"
      Dst: "[io.netty.util.collection.CharObjectHashMap].size()"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:161,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:161,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:162,1"
      Dst: "[io.netty.util.collection.CharObjectHashMap].entries()"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:162,1"
      Dst: "[java.lang.Iterable].iterator()"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:162,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:162,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:163,1"
      Dst: "[io.netty.util.collection.CharObjectMap$PrimitiveEntry].key()"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:163,1"
      Dst: "[io.netty.buffer.ByteBuf].writeChar(int)"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:164,1"
      Dst: "[io.netty.util.collection.CharObjectMap$PrimitiveEntry].value()"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:164,1"
      Dst: "[java.lang.Long].intValue()"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:164,1"
      Dst: "[io.netty.buffer.ByteBuf].writeInt(int)"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:168,1"
      Dst: "[io.netty.handler.codec.base64.Base64].encode(io.netty.buffer.ByteBuf,io.netty.handler.codec.base64.Base64Dialect)"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:169,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:171,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2ClientUpgradeCodec].upgradeTo(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http.FullHttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec"
    linkageType: ""
    functionLinenumber: 130
    functionLinenumberEnd: 147
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http.FullHttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].name()"
    - "[io.netty.channel.AbstractChannelHandlerContext].name()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].context(io.netty.channel.ChannelHandler)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onHttpClientUpgrade()"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec].onHttpClientUpgrade()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close()"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelHandlerContext].name()"
    - "[io.netty.channel.ChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.ChannelPipeline].context(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 1
    ICount: 24
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:135"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:141"
        BranchSideFuncs:
        - "pipeline()"
        - "name()"
        - "context(io.netty.channel.ChannelHandler)"
        - "addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
      - BranchSide: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:140"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
        - "onHttpClientUpgrade()"
        - "close()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:131,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:131,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].name()"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:131,1"
      Dst: "[io.netty.channel.ChannelPipeline].addAfter(java.lang.String,java.lang.String,io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:136,1"
      Dst: "[io.netty.channel.ChannelPipeline].context(io.netty.channel.ChannelHandler)"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:141,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].onHttpClientUpgrade()"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:143,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.Http2ClientUpgradeCodec:144,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].<init>(io.netty.handler.ssl.SslHandler,boolean)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    linkageType: ""
    functionLinenumber: 1617
    functionLinenumberEnd: 1621
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.ssl.SslHandler"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].<init>(io.netty.handler.ssl.SslHandler$SslTasksRunner)"
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1618,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1611,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].<init>(io.netty.handler.ssl.SslHandler$SslTasksRunner)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].taskError(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    linkageType: ""
    functionLinenumber: 1623
    functionLinenumberEnd: 1639
    functionDepth: 8
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].access$1000(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandler].access$900(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].safeExceptionCaught(java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandler].access$1100(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandler].access$1200(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
    functionUses: 2
    ICount: 21
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1624"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1634"
        BranchSideFuncs:
        - "access$900(io.netty.handler.ssl.SslHandler)"
        - "access$1100(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "access$1200(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1630,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$900(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1630,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$1000(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1632,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].safeExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1635,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$1100(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1636,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$1200(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].tryDecodeAgain()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    linkageType: ""
    functionLinenumber: 1660
    functionLinenumberEnd: 1671
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].access$900(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].safeExceptionCaught(java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandler].access$1300(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
    functionUses: 3
    ICount: 25
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1661,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$900(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1661,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1668,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$1300(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1663,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].safeExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].resumeOnEventExecutor()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    linkageType: ""
    functionLinenumber: 1676
    functionLinenumberEnd: 1757
    functionDepth: 14
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.ssl.SslHandler].access$900(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.handler.ssl.SslHandler].access$1400(io.netty.handler.ssl.SslHandler,int)"
    - "[io.netty.handler.ssl.SslHandler].access$100(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getHandshakeStatus()"
    - "[io.netty.handler.ssl.JdkSslEngine].getHandshakeStatus()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.ssl.SslHandler].access$1500(io.netty.handler.ssl.SslHandler,io.netty.handler.ssl.SslHandler$SslTasksRunner)"
    - "[io.netty.handler.ssl.SslHandler].access$1600(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.handler.ssl.SslHandler].access$1700(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,boolean)"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].taskError(java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandler].access$1800(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.SslHandler].access$1200(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].tryDecodeAgain()"
    - "[io.netty.handler.ssl.SslHandler].access$1000(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandler].access$1900(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,boolean)"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].safeExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[javax.net.ssl.SSLEngine].getHandshakeStatus()"
    functionUses: 1
    ICount: 87
    EdgeCount: 39
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1677"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1678"
        BranchSideFuncs:
        - "access$100(io.netty.handler.ssl.SslHandler)"
        - "getHandshakeStatus()"
        - "ordinal()"
        - "access$1400(io.netty.handler.ssl.SslHandler,int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1677"
        BranchSideFuncs:
        - "access$100(io.netty.handler.ssl.SslHandler)"
        - "getHandshakeStatus()"
        - "ordinal()"
        - "access$1400(io.netty.handler.ssl.SslHandler,int)"
    - Branch String: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1677"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1678"
        BranchSideFuncs:
        - "access$100(io.netty.handler.ssl.SslHandler)"
        - "getHandshakeStatus()"
        - "ordinal()"
        - "access$1400(io.netty.handler.ssl.SslHandler,int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1677"
        BranchSideFuncs:
        - "access$100(io.netty.handler.ssl.SslHandler)"
        - "getHandshakeStatus()"
        - "ordinal()"
        - "access$1400(io.netty.handler.ssl.SslHandler,int)"
    - Branch String: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1702"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1709"
        BranchSideFuncs:
        - "access$100(io.netty.handler.ssl.SslHandler)"
        - "access$900(io.netty.handler.ssl.SslHandler)"
        - "access$1500(io.netty.handler.ssl.SslHandler,io.netty.handler.ssl.SslHandler$SslTasksRunner)"
        - "access$1700(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,boolean)"
        - "access$1800(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
        - "getHandshakeStatus()"
        - "access$1900(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,boolean)"
        - "access$1600(io.netty.handler.ssl.SslHandler)"
        - "access$1000(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "safeExceptionCaught(java.lang.Throwable)"
        - "<init>()"
        - "access$1200(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
        - "tryDecodeAgain()"
        - "ordinal()"
        - "taskError(java.lang.Throwable)"
        - "executor()"
        - "inEventLoop()"
        - "access$1400(io.netty.handler.ssl.SslHandler,int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1708"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1730"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1739"
        BranchSideFuncs:
        - "access$100(io.netty.handler.ssl.SslHandler)"
        - "access$900(io.netty.handler.ssl.SslHandler)"
        - "access$1500(io.netty.handler.ssl.SslHandler,io.netty.handler.ssl.SslHandler$SslTasksRunner)"
        - "access$1700(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,boolean)"
        - "access$1800(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
        - "getHandshakeStatus()"
        - "access$1900(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,boolean)"
        - "access$1600(io.netty.handler.ssl.SslHandler)"
        - "access$1000(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "safeExceptionCaught(java.lang.Throwable)"
        - "<init>()"
        - "access$1200(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
        - "tryDecodeAgain()"
        - "ordinal()"
        - "taskError(java.lang.Throwable)"
        - "executor()"
        - "inEventLoop()"
        - "access$1400(io.netty.handler.ssl.SslHandler,int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1738"
        BranchSideFuncs:
        - "access$900(io.netty.handler.ssl.SslHandler)"
        - "access$1200(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
        - "taskError(java.lang.Throwable)"
    - Branch String: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1730"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1739"
        BranchSideFuncs:
        - "access$100(io.netty.handler.ssl.SslHandler)"
        - "access$900(io.netty.handler.ssl.SslHandler)"
        - "access$1500(io.netty.handler.ssl.SslHandler,io.netty.handler.ssl.SslHandler$SslTasksRunner)"
        - "access$1700(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,boolean)"
        - "access$1800(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
        - "getHandshakeStatus()"
        - "access$1900(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,boolean)"
        - "access$1600(io.netty.handler.ssl.SslHandler)"
        - "access$1000(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
        - "safeExceptionCaught(java.lang.Throwable)"
        - "<init>()"
        - "access$1200(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
        - "tryDecodeAgain()"
        - "ordinal()"
        - "taskError(java.lang.Throwable)"
        - "executor()"
        - "inEventLoop()"
        - "access$1400(io.netty.handler.ssl.SslHandler,int)"
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1738"
        BranchSideFuncs:
        - "access$900(io.netty.handler.ssl.SslHandler)"
        - "access$1200(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
        - "taskError(java.lang.Throwable)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1677,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$900(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1677,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1677,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1677,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1678,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$1400(io.netty.handler.ssl.SslHandler,int)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1680,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$100(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1680,1"
      Dst: "[javax.net.ssl.SSLEngine].getHandshakeStatus()"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1681,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1685,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$1500(io.netty.handler.ssl.SslHandler,io.netty.handler.ssl.SslHandler$SslTasksRunner)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1693,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$1600(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1697,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$1700(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,boolean)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1699,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].taskError(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1705,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$1800(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1709,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$1200(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1711,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].tryDecodeAgain()"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1720,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$1000(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1730,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$1900(io.netty.handler.ssl.SslHandler,io.netty.channel.ChannelHandlerContext,boolean)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1754,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].safeExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 23
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    linkageType: ""
    functionLinenumber: 1777
    functionLinenumberEnd: 1794
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].access$100(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.handler.ssl.JdkSslEngine].getDelegatedTask()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].getDelegatedTask()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$AsyncTaskDecorator].run(java.lang.Runnable)"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[java.util.zip.Inflater$InflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$3].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[java.util.concurrent.CompletableFuture$Completion].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[java.util.zip.Deflater$DeflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[java.util.concurrent.ThreadPoolExecutor$Worker].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[java.util.zip.ZipFile$CleanableResource].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[java.lang.invoke.MethodHandleNatives$CallSiteContext].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor$2].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[java.util.concurrent.ForkJoinWorkerThread].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[java.lang.ref.Finalizer$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$2].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[java.lang.ref.Finalizer$FinalizerThread].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].runComplete()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].handleException(java.lang.Throwable)"
    - "[javax.net.ssl.SSLEngine].getDelegatedTask()"
    - "[io.netty.handler.ssl.AsyncRunnable].run(java.lang.Runnable)"
    - "[java.lang.Runnable].run()"
    functionUses: 50
    ICount: 18
    EdgeCount: 189
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1779"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1782"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1783"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1787"
        BranchSideFuncs:
        - "run(java.lang.Runnable)"
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1786"
        BranchSideFuncs:
        - "run()"
        - "runComplete()"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1778,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$100(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1778,1"
      Dst: "[javax.net.ssl.SSLEngine].getDelegatedTask()"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1785,1"
      Dst: "[io.netty.handler.ssl.AsyncRunnable].run(java.lang.Runnable)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1787,1"
      Dst: "[java.lang.Runnable].run()"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1788,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].runComplete()"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1791,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].handleException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].handleException(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    linkageType: ""
    functionLinenumber: 1795
    functionLinenumberEnd: 1817
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler].access$900(io.netty.handler.ssl.SslHandler)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.handler.ssl.SslHandler].access$1400(io.netty.handler.ssl.SslHandler,int)"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].safeExceptionCaught(java.lang.Throwable)"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].<init>(io.netty.handler.ssl.SslHandler$SslTasksRunner,java.lang.Throwable)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.util.concurrent.GlobalEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 1
    ICount: 22
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1797"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1802"
        BranchSideFuncs:
        - "safeExceptionCaught(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1801"
        BranchSideFuncs:
        - "access$900(io.netty.handler.ssl.SslHandler)"
        - "run()"
        - "<init>(io.netty.handler.ssl.SslHandler$SslTasksRunner,java.lang.Throwable)"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "execute(java.lang.Runnable)"
        - "access$1400(io.netty.handler.ssl.SslHandler,int)"
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1796,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$900(io.netty.handler.ssl.SslHandler)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1796,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1797,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1798,1"
      Dst: "[io.netty.handler.ssl.SslHandler].access$1400(io.netty.handler.ssl.SslHandler,int)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1799,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].safeExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1802,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].<init>(io.netty.handler.ssl.SslHandler$SslTasksRunner,java.lang.Throwable)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1802,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1813,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].access$2000(io.netty.handler.ssl.SslHandler$SslTasksRunner)"
    functionSourceFile: "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    linkageType: ""
    functionLinenumber: 1608
    functionLinenumberEnd: 1610
    functionDepth: 15
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.SslHandler$SslTasksRunner"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].resumeOnEventExecutor()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.SslHandler$SslTasksRunner:1609,1"
      Dst: "[io.netty.handler.ssl.SslHandler$SslTasksRunner].resumeOnEventExecutor()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ByteToMessageDecoder$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.ByteToMessageDecoder$1"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$1:81,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ByteToMessageDecoder$1].cumulate(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.ByteToMessageDecoder$1"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 113
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isContiguous()"
    - "[io.netty.buffer.SwappedByteBuf].isContiguous()"
    - "[io.netty.buffer.WrappedByteBuf].isContiguous()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].isContiguous()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.PooledByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnpooledDirectByteBuf:io.netty.buffer.UnpooledHeapByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.util.ReferenceCounted].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].maxWritableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.util.ReferenceCounted].maxWritableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].maxWritableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].maxWritableBytes()"
    - "[io.netty.buffer.PooledByteBuf].maxFastWritableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].maxFastWritableBytes()"
    - "[io.netty.buffer.ByteBuf].maxFastWritableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].maxFastWritableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].maxFastWritableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].isReadOnly()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].isReadOnly()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].isReadOnly()"
    - "[io.netty.buffer.SwappedByteBuf].isReadOnly()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadOnly()"
    - "[io.netty.buffer.WrappedByteBuf].isReadOnly()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.ReadOnlyByteBuf:io.netty.buffer.ReadOnlyByteBufferBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.handler.codec.ReplayingDecoderByteBuf:io.netty.util.ReferenceCounted].isReadOnly()"
    - "[io.netty.handler.codec.ByteToMessageDecoder].expandCumulation(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].isContiguous()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].maxWritableBytes()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    - "[io.netty.buffer.ByteBuf].isReadOnly()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 1
    ICount: 34
    EdgeCount: 112
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$1:84"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$1:88"
        BranchSideFuncs:
        - "isReadable()"
        - "isContiguous()"
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$1:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$1:95"
        BranchSideFuncs:
        - "isReadable()"
        - "maxWritableBytes()"
        - "readerIndex()"
        - "readerIndex(int)"
        - "writerIndex()"
        - "expandCumulation(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
        - "isContiguous()"
        - "maxFastWritableBytes()"
        - "refCnt()"
        - "isReadOnly()"
        - "readableBytes()"
        - "writeBytes(io.netty.buffer.ByteBuf,int,int)"
        - "release()"
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$1:94"
        BranchSideFuncs:
        - "maxWritableBytes()"
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$1:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$1:95"
        BranchSideFuncs:
        - "isReadable()"
        - "maxWritableBytes()"
        - "readerIndex()"
        - "readerIndex(int)"
        - "writerIndex()"
        - "expandCumulation(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
        - "isContiguous()"
        - "maxFastWritableBytes()"
        - "refCnt()"
        - "isReadOnly()"
        - "readableBytes()"
        - "writeBytes(io.netty.buffer.ByteBuf,int,int)"
        - "release()"
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$1:94"
        BranchSideFuncs:
        - "maxWritableBytes()"
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$1:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$1:103"
        BranchSideFuncs:
        - "maxFastWritableBytes()"
        - "refCnt()"
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$1:102"
        BranchSideFuncs:
        - "expandCumulation(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$1:97"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$1:98"
        BranchSideFuncs:
        - "isReadOnly()"
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$1:97"
        BranchSideFuncs:
        - "isReadOnly()"
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$1:97"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$1:103"
        BranchSideFuncs:
        - "isReadOnly()"
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$1:102"
        BranchSideFuncs:
        - "expandCumulation(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.ByteToMessageDecoder$1:98"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$1:105"
        BranchSideFuncs:
        - "isReadable()"
        - "maxWritableBytes()"
        - "readerIndex()"
        - "readerIndex(int)"
        - "writerIndex()"
        - "expandCumulation(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
        - "isContiguous()"
        - "maxFastWritableBytes()"
        - "refCnt()"
        - "isReadOnly()"
        - "readableBytes()"
        - "writeBytes(io.netty.buffer.ByteBuf,int,int)"
        - "release()"
      - BranchSide: "io.netty.handler.codec.ByteToMessageDecoder$1:104"
        BranchSideFuncs:
        - "readerIndex()"
        - "readerIndex(int)"
        - "writerIndex()"
        - "writeBytes(io.netty.buffer.ByteBuf,int,int)"
    Callsites:
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$1:86,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$1:89,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$1:89,1"
      Dst: "[io.netty.buffer.ByteBuf].isContiguous()"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$1:95,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$1:96,1"
      Dst: "[io.netty.buffer.ByteBuf].maxWritableBytes()"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$1:97,1"
      Dst: "[io.netty.buffer.ByteBuf].maxFastWritableBytes()"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$1:97,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$1:98,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadOnly()"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$1:103,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].expandCumulation(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$1:105,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$1:105,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$1:106,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.ByteToMessageDecoder$1:106,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3].<init>(javax.net.ssl.SSLContext)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "javax.net.ssl.SSLContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3:100,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3].run()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 131
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getDeclaredField(java.lang.String)"
    - "[io.netty.util.internal.PlatformDependent].objectFieldOffset(java.lang.reflect.Field)"
    - "[io.netty.util.internal.PlatformDependent].getObject(java.lang.Object,long)"
    - "[java.lang.Object].getClass()"
    - "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper].<init>(long,long)"
    - "[java.lang.Class].getSuperclass()"
    - "[java.lang.NoSuchFieldException].<init>()"
    functionUses: 3
    ICount: 28
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3:107"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3:126"
        BranchSideFuncs:
        - "getClass()"
      - BranchSide: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3:125"
        BranchSideFuncs:
        - "<init>()"
    - Branch String: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3:117"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3:122"
        BranchSideFuncs:
        - "<init>(long,long)"
      - BranchSide: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3:121"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3:124"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3:114"
        BranchSideFuncs:
        - "<init>()"
        - "<init>(long,long)"
        - "getSuperclass()"
      - BranchSide: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3:113"
        BranchSideFuncs:
        - "getObject(java.lang.Object,long)"
        - "getDeclaredField(java.lang.String)"
        - "objectFieldOffset(java.lang.reflect.Field)"
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3:104,1"
      Dst: "[java.lang.Class].getDeclaredField(java.lang.String)"
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3:105,1"
      Dst: "[io.netty.util.internal.PlatformDependent].objectFieldOffset(java.lang.reflect.Field)"
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3:106,1"
      Dst: "[io.netty.util.internal.PlatformDependent].getObject(java.lang.Object,long)"
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3:108,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3:118,1"
      Dst: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$UnsafeTrustManagerWrapper].<init>(long,long)"
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3:123,1"
      Dst: "[java.lang.Class].getSuperclass()"
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$3:126,1"
      Dst: "[java.lang.NoSuchFieldException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Lz4FrameDecoder].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:106,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameDecoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameDecoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[net.jpountz.lz4.LZ4Factory].fastestInstance()"
    - "[io.netty.handler.codec.compression.Lz4FrameDecoder].<init>(net.jpountz.lz4.LZ4Factory,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:117,1"
      Dst: "[net.jpountz.lz4.LZ4Factory].fastestInstance()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:117,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameDecoder].<init>(net.jpountz.lz4.LZ4Factory,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameDecoder].<init>(net.jpountz.lz4.LZ4Factory,boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jpountz.lz4.LZ4Factory"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Lz4XXHash32].<init>(int)"
    - "[io.netty.handler.codec.compression.Lz4FrameDecoder].<init>(net.jpountz.lz4.LZ4Factory,java.util.zip.Checksum)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:133"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:133"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:132"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:133,1"
      Dst: "[io.netty.handler.codec.compression.Lz4XXHash32].<init>(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:133,1"
      Dst: "[io.netty.handler.codec.compression.Lz4FrameDecoder].<init>(net.jpountz.lz4.LZ4Factory,java.util.zip.Checksum)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameDecoder].<init>(net.jpountz.lz4.LZ4Factory,java.util.zip.Checksum)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "net.jpountz.lz4.LZ4Factory"
    - "java.util.zip.Checksum"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[net.jpountz.lz4.LZ4Factory].fastDecompressor()"
    - "[io.netty.handler.codec.compression.ByteBufChecksum].wrapChecksum(java.util.zip.Checksum)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:147"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:145"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:144"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:145,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:146,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:146,1"
      Dst: "[net.jpountz.lz4.LZ4Factory].fastDecompressor()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:147,1"
      Dst: "[io.netty.handler.codec.compression.ByteBufChecksum].wrapChecksum(java.util.zip.Checksum)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameDecoder"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 269
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readLong()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readLong()"
    - "[io.netty.buffer.WrappedByteBuf].readLong()"
    - "[io.netty.buffer.SwappedByteBuf].readLong()"
    - "[io.netty.buffer.EmptyByteBuf].readLong()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readLong()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readLong()"
    - "[io.netty.buffer.AbstractByteBuf].readLong()"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readInt()"
    - "[io.netty.buffer.EmptyByteBuf].readInt()"
    - "[io.netty.buffer.AbstractByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readInt()"
    - "[io.netty.buffer.WrappedByteBuf].readInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readInt()"
    - "[java.lang.Integer].reverseBytes(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedSlice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].retainedSlice(int,int)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int,int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int,int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int,int)"
    - "[net.jpountz.lz4.LZ4FastDecompressor].decompress(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    - "[io.netty.handler.codec.compression.CompressionUtil].safeNioBuffer(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.PooledByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].writerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.compression.CompressionUtil].checkChecksum(io.netty.handler.codec.compression.ByteBufChecksum,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.Throwable)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[java.lang.IllegalStateException].<init>()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readLong()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readInt()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int,int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 154
    EdgeCount: 197
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:155"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:158"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:157"
        BranchSideFuncs:
        - "readLong()"
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:159"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:163"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:162"
        BranchSideFuncs:
        - "readByte()"
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:168"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:169"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:168"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:168"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:174"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:176"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:177"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:176"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:181"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:180"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:180"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:183"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:181"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:183"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:188"
        BranchSideFuncs:
        - "reverseBytes(int)"
        - "readInt()"
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:188"
        BranchSideFuncs:
        - "reverseBytes(int)"
        - "readInt()"
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:190"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:190"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:191"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:194"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:193"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:213"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:217"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:216"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:243"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:246"
        BranchSideFuncs:
        - "checkChecksum(io.netty.handler.codec.compression.ByteBufChecksum,io.netty.buffer.ByteBuf,int)"
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:245"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "<init>(java.lang.Throwable)"
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:252"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:256"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:255"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:252"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:255"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:254"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:153,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:155,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:158,1"
      Dst: "[io.netty.buffer.ByteBuf].readLong()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:160,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:163,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:167,1"
      Dst: "[io.netty.buffer.ByteBuf].readInt()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:167,1"
      Dst: "[java.lang.Integer].reverseBytes(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:171,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:169,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:225,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:225,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:228,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:228,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int,int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:230,1"
      Dst: "[io.netty.handler.codec.compression.CompressionUtil].safeNioBuffer(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:231,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:231,1"
      Dst: "[io.netty.buffer.ByteBuf].internalNioBuffer(int,int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:230,1"
      Dst: "[net.jpountz.lz4.LZ4FastDecompressor].decompress(java.nio.ByteBuffer,java.nio.ByteBuffer)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:233,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:241,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:244,1"
      Dst: "[io.netty.handler.codec.compression.CompressionUtil].checkChecksum(io.netty.handler.codec.compression.ByteBufChecksum,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:246,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:253,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:250,1"
      Dst: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.compression.Lz4FrameDecoder:262,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 44
    CyclomaticComplexity: 15
  - functionName: "[io.netty.handler.codec.compression.DecompressionException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.compression.DecompressionException"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.DecompressionException:51,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Lz4FrameDecoder].isClosed()"
    functionSourceFile: "io.netty.handler.codec.compression.Lz4FrameDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Lz4FrameDecoder:275"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Lz4FrameDecoder:274"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.DefaultMessageSizeEstimator].<init>(int)"
    functionSourceFile: "io.netty.channel.DefaultMessageSizeEstimator"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[io.netty.channel.DefaultMessageSizeEstimator$HandleImpl].<init>(int,io.netty.channel.DefaultMessageSizeEstimator$1)"
    functionUses: 1
    ICount: 8
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultMessageSizeEstimator:63,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.DefaultMessageSizeEstimator:64,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.channel.DefaultMessageSizeEstimator:65,1"
      Dst: "[io.netty.channel.DefaultMessageSizeEstimator$HandleImpl].<init>(int,io.netty.channel.DefaultMessageSizeEstimator$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultMessageSizeEstimator].newHandle()"
    functionSourceFile: "io.netty.channel.DefaultMessageSizeEstimator"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionDepth: 0
    returnType: "io.netty.channel.MessageSizeEstimator$Handle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel].isParentReadInProgress()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel"
    linkageType: ""
    functionLinenumber: 363
    functionLinenumberEnd: 365
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler].access$100(io.netty.handler.codec.http2.Http2MultiplexHandler)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel:364,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexHandler].access$100(io.netty.handler.codec.http2.Http2MultiplexHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexHandler].access$100(io.netty.handler.codec.http2.Http2MultiplexHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexHandler"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2MultiplexHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel].addChannelToReadCompletePendingQueue()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel"
    linkageType: ""
    functionLinenumber: 370
    functionLinenumberEnd: 375
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler].access$200(io.netty.handler.codec.http2.Http2MultiplexHandler)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.EmptyPriorityQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.DefaultPriorityQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].offer(java.lang.Object)"
    - "[java.util.LinkedList].offer(java.lang.Object)"
    - "[java.util.ArrayDeque].offer(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].offer(java.lang.Object)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].offer(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].offer(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler].access$300(io.netty.handler.codec.http2.Http2MultiplexHandler)"
    - "[java.util.Queue].offer(java.lang.Object)"
    functionUses: 1
    ICount: 9
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel:371"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel:374"
        BranchSideFuncs:
        - "access$300(io.netty.handler.codec.http2.Http2MultiplexHandler)"
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel:373"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel:371,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexHandler].access$200(io.netty.handler.codec.http2.Http2MultiplexHandler)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel:371,1"
      Dst: "[java.util.Queue].offer(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel:372,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexHandler].access$300(io.netty.handler.codec.http2.Http2MultiplexHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexHandler].access$200(io.netty.handler.codec.http2.Http2MultiplexHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexHandler"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "java.util.Queue"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2MultiplexHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexHandler].access$300(io.netty.handler.codec.http2.Http2MultiplexHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexHandler"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2MultiplexHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler].processPendingReadCompleteQueue()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler:87,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexHandler].processPendingReadCompleteQueue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexHandler].processPendingReadCompleteQueue()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexHandler"
    linkageType: ""
    functionLinenumber: 334
    functionLinenumberEnd: 355
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].fireChildReadComplete()"
    - "[java.util.LinkedList].clear()"
    - "[java.util.AbstractQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].clear()"
    - "[java.util.ArrayDeque].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].clear()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].clear()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].clear()"
    - "[io.netty.util.internal.EmptyPriorityQueue].clear()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].clear()"
    - "[io.netty.util.internal.DefaultPriorityQueue].clear()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].clear()"
    - "[java.util.concurrent.LinkedBlockingQueue].clear()"
    - "[java.util.concurrent.LinkedBlockingDeque].clear()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].flush()"
    - "[io.netty.channel.AbstractChannelHandlerContext].flush()"
    - "[java.util.Queue].poll()"
    - "[java.util.Collection].clear()"
    - "[io.netty.channel.ChannelHandlerContext].flush()"
    functionUses: 2
    ICount: 28
    EdgeCount: 75
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexHandler:340"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexHandler:351"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.Http2MultiplexHandler:345"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2MultiplexHandler:342"
        BranchSideFuncs:
        - "poll()"
        - "fireChildReadComplete()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler:339,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler:343,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].fireChildReadComplete()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler:348,1"
      Dst: "[java.util.Collection].clear()"
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler:349,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].flush()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel].parentContext()"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel"
    linkageType: ""
    functionLinenumber: 377
    functionLinenumberEnd: 379
    functionDepth: 1
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler].access$400(io.netty.handler.codec.http2.Http2MultiplexHandler)"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel:378,1"
      Dst: "[io.netty.handler.codec.http2.Http2MultiplexHandler].access$400(io.netty.handler.codec.http2.Http2MultiplexHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2MultiplexHandler].access$400(io.netty.handler.codec.http2.Http2MultiplexHandler)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2MultiplexHandler"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2MultiplexHandler"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$1].<init>()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$1:52,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$1].wrapIfNeeded(javax.net.ssl.X509TrustManager)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslX509TrustManagerWrapper$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.X509TrustManager"
    argCount: 1
    argTypes:
    - "javax.net.ssl.X509TrustManager"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.udt.UdtChannelOption].<init>()"
    functionSourceFile: "io.netty.channel.udt.UdtChannelOption"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOption].<init>(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.udt.UdtChannelOption:55,1"
      Dst: "[io.netty.channel.ChannelOption].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.BooleanSupplier$1].<init>()"
    functionSourceFile: "io.netty.util.BooleanSupplier$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.BooleanSupplier$1:32,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.BooleanSupplier$1].get()"
    functionSourceFile: "io.netty.util.BooleanSupplier$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].<init>(io.netty.handler.codec.spdy.SpdyVersion,int)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.spdy.SpdyVersion"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:51,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockDecoder].<init>()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:52,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].decode(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 84
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.spdy.SpdyHeadersFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].decodeHeaderBlock(io.netty.buffer.ByteBuf,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].discardReadBytes()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].discardReadBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].discardReadBytes()"
    - "[io.netty.buffer.CompositeByteBuf].discardReadBytes()"
    - "[io.netty.buffer.ReadOnlyByteBuf].discardReadBytes()"
    - "[io.netty.buffer.AbstractByteBuf].discardReadBytes()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].discardReadBytes()"
    - "[io.netty.buffer.SwappedByteBuf].discardReadBytes()"
    - "[io.netty.buffer.WrappedByteBuf].discardReadBytes()"
    - "[io.netty.buffer.FixedCompositeByteBuf].discardReadBytes()"
    - "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].releaseBuffer()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].discardReadBytes()"
    functionUses: 1
    ICount: 29
    EdgeCount: 50
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:68"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:75"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:74"
        BranchSideFuncs:
        - "isReadable()"
        - "writeBytes(io.netty.buffer.ByteBuf)"
        - "decodeHeaderBlock(io.netty.buffer.ByteBuf,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:83"
        BranchSideFuncs:
        - "buffer(int)"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:82"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:77"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:80"
        BranchSideFuncs:
        - "discardReadBytes()"
      - BranchSide: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:79"
        BranchSideFuncs:
        - "releaseBuffer()"
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:65,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:69,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].decodeHeaderBlock(io.netty.buffer.ByteBuf,io.netty.handler.codec.spdy.SpdyHeadersFrame)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:70,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:71,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:71,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer(int)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:72,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:78,1"
      Dst: "[io.netty.buffer.ByteBuf].discardReadBytes()"
    - Src: "io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder:80,1"
      Dst: "[io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder].releaseBuffer()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].values()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism:46,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism:46,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].<init>(java.lang.String,int,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism:62,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].toString()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 19
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.MultiDnsServerAddressStreamProvider].<init>(java.util.List)"
    functionSourceFile: "io.netty.resolver.dns.MultiDnsServerAddressStreamProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.MultiDnsServerAddressStreamProvider:31,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.MultiDnsServerAddressStreamProvider:32,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.MultiDnsServerAddressStreamProvider].<init>(io.netty.resolver.dns.DnsServerAddressStreamProvider[])"
    functionSourceFile: "io.netty.resolver.dns.MultiDnsServerAddressStreamProvider"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsServerAddressStreamProvider[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.MultiDnsServerAddressStreamProvider:39,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.resolver.dns.MultiDnsServerAddressStreamProvider:40,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.MultiDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.MultiDnsServerAddressStreamProvider"
    linkageType: ""
    functionLinenumber: 44
    functionLinenumberEnd: 52
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsServerAddressStream"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.UniSequentialDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.MultiDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.DnsServerAddressStreamProviders$DefaultProviderHolder$1].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.DefaultDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.UnixResolverDnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    - "[io.netty.resolver.dns.DnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    functionUses: 6
    ICount: 13
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.MultiDnsServerAddressStreamProvider:45"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.MultiDnsServerAddressStreamProvider:51"
        BranchSideFuncs:
        - "nameServerAddressStream(java.lang.String)"
      - BranchSide: "io.netty.resolver.dns.MultiDnsServerAddressStreamProvider:50"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.MultiDnsServerAddressStreamProvider:47"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.MultiDnsServerAddressStreamProvider:45"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.MultiDnsServerAddressStreamProvider:44"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.MultiDnsServerAddressStreamProvider:46,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStreamProvider].nameServerAddressStream(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.nio.AbstractNioChannel$2].<init>(io.netty.channel.nio.AbstractNioChannel,boolean)"
    functionSourceFile: "io.netty.channel.nio.AbstractNioChannel$2"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.nio.AbstractNioChannel"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.AbstractNioChannel$2:144,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    functionSourceFile: "io.netty.channel.nio.AbstractNioChannel$2"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].access$100(io.netty.channel.nio.AbstractNioChannel,boolean)"
    functionUses: 49
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.AbstractNioChannel$2:147,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].access$100(io.netty.channel.nio.AbstractNioChannel,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].next()"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream"
    linkageType: ""
    functionLinenumber: 1136
    functionLinenumberEnd: 1146
    functionDepth: 2
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].nextResolved0()"
    - "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].next()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].next()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].next()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].next()"
    - "[java.net.InetSocketAddress].equals(java.lang.Object)"
    - "[jaz.Zer].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[io.netty.resolver.dns.DnsServerAddressStream].next()"
    - "[java.util.List].iterator()"
    functionUses: 5
    ICount: 17
    EdgeCount: 70
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1137"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1140"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1139"
        BranchSideFuncs:
        - "next()"
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1141"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1145"
        BranchSideFuncs:
        - "nextResolved0()"
        - "iterator()"
      - BranchSide: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1144"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1137,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1138,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].nextResolved0()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1140,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStream].next()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1141,1"
      Dst: "[java.net.InetSocketAddress].equals(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1142,1"
      Dst: "[java.util.List].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].nextResolved0()"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream"
    linkageType: ""
    functionLinenumber: 1148
    functionLinenumberEnd: 1150
    functionDepth: 1
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsNameResolver].newRedirectServerAddress(java.net.InetAddress)"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 8
    EdgeCount: 57
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1149,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1149,1"
      Dst: "[io.netty.resolver.dns.DnsNameResolver].newRedirectServerAddress(java.net.InetAddress)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].size()"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream"
    linkageType: ""
    functionLinenumber: 1153
    functionLinenumberEnd: 1155
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].size()"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.handler.codec.CodecOutputList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.LinkedList].size()"
    - "[java.util.ArrayList].size()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].size()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].size()"
    - "[java.util.Vector].size()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].size()"
    - "[io.netty.resolver.dns.DnsServerAddressStream].size()"
    - "[java.util.List].size()"
    functionUses: 7
    ICount: 8
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1154,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStream].size()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1154,1"
      Dst: "[java.util.List].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].duplicate()"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream"
    linkageType: ""
    functionLinenumber: 1158
    functionLinenumberEnd: 1160
    functionDepth: 1
    returnType: "io.netty.resolver.dns.DnsServerAddressStream"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].<init>(io.netty.resolver.dns.DnsResolveContext,java.net.InetSocketAddress,java.util.List,io.netty.resolver.dns.DnsServerAddressStream)"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].duplicate()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].duplicate()"
    - "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].duplicate()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].duplicate()"
    - "[io.netty.resolver.dns.DnsServerAddressStream].duplicate()"
    functionUses: 6
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1159,1"
      Dst: "[io.netty.resolver.dns.DnsServerAddressStream].duplicate()"
    - Src: "io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream:1159,1"
      Dst: "[io.netty.resolver.dns.DnsResolveContext$CombinedDnsServerAddressStream].<init>(io.netty.resolver.dns.DnsResolveContext,java.net.InetSocketAddress,java.util.List,io.netty.resolver.dns.DnsServerAddressStream)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzmaFrameEncoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.LzmaFrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.LzmaFrameEncoder].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:88,1"
      Dst: "[io.netty.handler.codec.compression.LzmaFrameEncoder].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzmaFrameEncoder].<init>(int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.LzmaFrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.LzmaFrameEncoder].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:96,1"
      Dst: "[io.netty.handler.codec.compression.LzmaFrameEncoder].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzmaFrameEncoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.compression.LzmaFrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.LzmaFrameEncoder].<init>(int,int,int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:106,1"
      Dst: "[io.netty.handler.codec.compression.LzmaFrameEncoder].<init>(int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzmaFrameEncoder].<init>(int,int,int,int)"
    functionSourceFile: "io.netty.handler.codec.compression.LzmaFrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.LzmaFrameEncoder].<init>(int,int,int,int,boolean,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:113,1"
      Dst: "[io.netty.handler.codec.compression.LzmaFrameEncoder].<init>(int,int,int,int,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzmaFrameEncoder].<init>(int,int,int,int,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.compression.LzmaFrameEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String)"
    - "[java.lang.Integer].valueOf(int)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[lzma.sdk.lzma.Encoder].<init>()"
    - "[lzma.sdk.lzma.Encoder].setDictionarySize(int)"
    - "[lzma.sdk.lzma.Encoder].setEndMarkerMode(boolean)"
    - "[lzma.sdk.lzma.Encoder].setMatchFinder(int)"
    - "[lzma.sdk.lzma.Encoder].setNumFastBytes(int)"
    - "[lzma.sdk.lzma.Encoder].setLcLpPb(int,int,int)"
    - "[java.lang.Integer].reverseBytes(int)"
    functionUses: 0
    ICount: 93
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:139"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:138"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:141"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:140"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:141"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:142"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:141"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:141"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:144"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:143"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:145"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:144"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:147"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:146"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:147"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:155"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:154"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:155"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:154"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:155"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:158"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:157"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:158"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:159"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:158"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:158"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:164"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:137,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:139,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:139,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:139,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:139,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:139,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:149,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:160,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:159,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:164,1"
      Dst: "[lzma.sdk.lzma.Encoder].<init>()"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:165,1"
      Dst: "[lzma.sdk.lzma.Encoder].setDictionarySize(int)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:166,1"
      Dst: "[lzma.sdk.lzma.Encoder].setEndMarkerMode(boolean)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:167,1"
      Dst: "[lzma.sdk.lzma.Encoder].setMatchFinder(int)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:168,1"
      Dst: "[lzma.sdk.lzma.Encoder].setNumFastBytes(int)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:169,1"
      Dst: "[lzma.sdk.lzma.Encoder].setLcLpPb(int,int,int)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:172,1"
      Dst: "[java.lang.Integer].reverseBytes(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.compression.LzmaFrameEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.LzmaFrameEncoder"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 196
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBufInputStream].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBufOutputStream].<init>(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBufOutputStream].writeByte(int)"
    - "[io.netty.buffer.ByteBufOutputStream].writeInt(int)"
    - "[java.lang.Long].reverseBytes(long)"
    - "[io.netty.buffer.ByteBufOutputStream].writeLong(long)"
    - "[lzma.sdk.lzma.Encoder].code(java.io.InputStream,java.io.OutputStream,long,long,lzma.sdk.ICodeProgress)"
    - "[io.netty.buffer.ByteBufInputStream].close()"
    - "[io.netty.buffer.ByteBufOutputStream].close()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[java.io.InputStream].close()"
    functionUses: 1
    ICount: 35
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:191"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:190"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:191"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:195"
        BranchSideFuncs:
        - "close()"
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:194"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:191"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:190"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:191"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:194"
        BranchSideFuncs:
        - "close()"
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:193"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:177,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:181,1"
      Dst: "[io.netty.buffer.ByteBufInputStream].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:182,1"
      Dst: "[io.netty.buffer.ByteBufOutputStream].<init>(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:183,1"
      Dst: "[io.netty.buffer.ByteBufOutputStream].writeByte(int)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:184,1"
      Dst: "[io.netty.buffer.ByteBufOutputStream].writeInt(int)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:185,1"
      Dst: "[java.lang.Long].reverseBytes(long)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:185,1"
      Dst: "[io.netty.buffer.ByteBufOutputStream].writeLong(long)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:186,1"
      Dst: "[lzma.sdk.lzma.Encoder].code(java.io.InputStream,java.io.OutputStream,long,long,lzma.sdk.ICodeProgress)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:189,1"
      Dst: "[java.io.InputStream].close()"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:192,1"
      Dst: "[io.netty.buffer.ByteBufOutputStream].close()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.buffer.ByteBufInputStream].<init>(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.buffer.ByteBufInputStream"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufInputStream].<init>(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf:io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    functionUses: 1
    ICount: 5
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufInputStream:66,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.buffer.ByteBufInputStream:66,1"
      Dst: "[io.netty.buffer.ByteBufInputStream].<init>(io.netty.buffer.ByteBuf,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.ByteBufInputStream].<init>(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.buffer.ByteBufInputStream"
    linkageType: ""
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBufInputStream].<init>(io.netty.buffer.ByteBuf,int,boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.ByteBufInputStream:80,1"
      Dst: "[io.netty.buffer.ByteBufInputStream].<init>(io.netty.buffer.ByteBuf,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzmaFrameEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.LzmaFrameEncoder"
    linkageType: ""
    functionLinenumber: 198
    functionLinenumberEnd: 202
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.compression.LzmaFrameEncoder].maxOutputBufferLength(int)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.AbstractByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.PreferHeapByteBufAllocator].ioBuffer(int)"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].ioBuffer(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:199,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:200,1"
      Dst: "[io.netty.handler.codec.compression.LzmaFrameEncoder].maxOutputBufferLength(int)"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:201,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:201,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].ioBuffer(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzmaFrameEncoder].maxOutputBufferLength(int)"
    functionSourceFile: "io.netty.handler.codec.compression.LzmaFrameEncoder"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 221
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 19
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:209"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:211"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:210"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:211"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:213"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:212"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:213"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:215"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:214"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.LzmaFrameEncoder:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:218"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.LzmaFrameEncoder:217"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.compression.LzmaFrameEncoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.LzmaFrameEncoder"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.LzmaFrameEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:39,1"
      Dst: "[io.netty.handler.codec.compression.LzmaFrameEncoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.LzmaFrameEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,java.lang.Object,boolean)"
    functionSourceFile: "io.netty.handler.codec.compression.LzmaFrameEncoder"
    linkageType: ""
    functionLinenumber: 38
    functionLinenumberEnd: 40
    functionDepth: 2
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.LzmaFrameEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.LzmaFrameEncoder:39,1"
      Dst: "[io.netty.handler.codec.compression.LzmaFrameEncoder].allocateBuffer(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$5].<init>(io.netty.channel.kqueue.AbstractKQueueStreamChannel,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$5"
    linkageType: ""
    functionLinenumber: 476
    functionLinenumberEnd: 478
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.kqueue.AbstractKQueueStreamChannel"
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$5:477,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$5].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$5"
    linkageType: ""
    functionLinenumber: 479
    functionLinenumberEnd: 482
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].access$200(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$5:480,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].access$200(io.netty.channel.ChannelFuture,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$5].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$5"
    linkageType: ""
    functionLinenumber: 476
    functionLinenumberEnd: 478
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$5].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$5:477,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$5].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe].epollInReady()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 147
    functionDepth: 6
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].getReadMode()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe].epollInReady()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe].epollInReadFd()"
    - "[java.lang.Error].<init>()"
    functionUses: 3
    ICount: 16
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:136,1"
      Dst: "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:136,1"
      Dst: "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].getReadMode()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:136,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:138,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe].epollInReady()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:141,1"
      Dst: "[io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe].epollInReadFd()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:144,1"
      Dst: "[java.lang.Error].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannelConfig].getReadMode()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionDepth: 0
    returnType: "io.netty.channel.unix.DomainSocketReadMode"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe].epollInReady()"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe"
    linkageType: ""
    functionLinenumber: 743
    functionLinenumberEnd: 837
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.EpollSocketChannel].config()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].clearEpollIn0()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].edgeTriggered(boolean)"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isFlagSet(int)"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInBefore()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].access$400(io.netty.channel.epoll.AbstractEpollStreamChannel)"
    - "[java.util.LinkedList].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].peek()"
    - "[java.util.concurrent.LinkedBlockingDeque].peek()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].peek()"
    - "[io.netty.util.internal.EmptyPriorityQueue].peek()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].peek()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].peek()"
    - "[java.util.ArrayDeque].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].peek()"
    - "[io.netty.util.internal.DefaultPriorityQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].peek()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].peek()"
    - "[java.util.concurrent.LinkedBlockingQueue].peek()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceFdTask].spliceIn(io.netty.channel.RecvByteBufAllocator$Handle)"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInChannelTask].spliceIn(io.netty.channel.RecvByteBufAllocator$Handle)"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].isReceivedRdHup()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].shutdownInput(boolean)"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].remove()"
    - "[java.util.AbstractQueue].remove()"
    - "[java.util.LinkedList].remove()"
    - "[io.netty.util.internal.EmptyPriorityQueue].remove()"
    - "[java.util.ArrayDeque].remove()"
    - "[java.util.concurrent.LinkedBlockingDeque].remove()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].remove()"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.AbstractEpollChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe].handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.epoll.EpollRecvByteAllocatorHandle)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInFinally(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.DefaultChannelConfig].isAutoRead()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].clearEpollIn()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].config()"
    - "[io.netty.channel.ChannelConfig].getAllocator()"
    - "[java.util.Queue].peek()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInTask].spliceIn(io.netty.channel.RecvByteBufAllocator$Handle)"
    - "[java.util.Queue].remove()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelConfig].isAutoRead()"
    functionUses: 4
    ICount: 101
    EdgeCount: 79
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:745"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:749"
        BranchSideFuncs:
        - "clearEpollIn0()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:748"
        BranchSideFuncs:
        - "reset(io.netty.channel.ChannelConfig)"
        - "isFlagSet(int)"
        - "edgeTriggered(boolean)"
        - "recvBufAllocHandle()"
        - "pipeline()"
        - "getAllocator()"
        - "epollInBefore()"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:762"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:763"
        BranchSideFuncs:
        - "peek()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:762"
        BranchSideFuncs:
        - "peek()"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:762"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:785"
        BranchSideFuncs:
        - "peek()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:784"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:764"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:785"
        BranchSideFuncs:
        - "isReceivedRdHup()"
        - "spliceIn(io.netty.channel.RecvByteBufAllocator$Handle)"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:784"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:767"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:770"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:769"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:770"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:819"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "peek()"
        - "continueReading()"
        - "handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.epoll.EpollRecvByteAllocatorHandle)"
        - "reset(io.netty.channel.ChannelConfig)"
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
        - "fireChannelRead(java.lang.Object)"
        - "isActive()"
        - "access$400(io.netty.channel.epoll.AbstractEpollStreamChannel)"
        - "isFlagSet(int)"
        - "readComplete()"
        - "release()"
        - "edgeTriggered(boolean)"
        - "remove()"
        - "recvBufAllocHandle()"
        - "isReceivedRdHup()"
        - "spliceIn(io.netty.channel.RecvByteBufAllocator$Handle)"
        - "pipeline()"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "incMessagesRead(int)"
        - "getAllocator()"
        - "epollInBefore()"
        - "shutdownInput(boolean)"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:818"
        BranchSideFuncs:
        - "readComplete()"
        - "fireChannelReadComplete()"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:773"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:817"
        BranchSideFuncs:
        - "remove()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:816"
        BranchSideFuncs:
        - "continueReading()"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:787"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:798"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "peek()"
        - "continueReading()"
        - "handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.epoll.EpollRecvByteAllocatorHandle)"
        - "reset(io.netty.channel.ChannelConfig)"
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
        - "fireChannelRead(java.lang.Object)"
        - "isActive()"
        - "access$400(io.netty.channel.epoll.AbstractEpollStreamChannel)"
        - "isFlagSet(int)"
        - "readComplete()"
        - "release()"
        - "edgeTriggered(boolean)"
        - "remove()"
        - "recvBufAllocHandle()"
        - "isReceivedRdHup()"
        - "spliceIn(io.netty.channel.RecvByteBufAllocator$Handle)"
        - "pipeline()"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "incMessagesRead(int)"
        - "getAllocator()"
        - "epollInBefore()"
        - "shutdownInput(boolean)"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:797"
        BranchSideFuncs:
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
        - "fireChannelRead(java.lang.Object)"
        - "incMessagesRead(int)"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:791"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:-1"
        BranchSideFuncs:
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:792"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:819"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "peek()"
        - "continueReading()"
        - "handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.epoll.EpollRecvByteAllocatorHandle)"
        - "reset(io.netty.channel.ChannelConfig)"
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
        - "fireChannelRead(java.lang.Object)"
        - "isActive()"
        - "access$400(io.netty.channel.epoll.AbstractEpollStreamChannel)"
        - "isFlagSet(int)"
        - "readComplete()"
        - "release()"
        - "edgeTriggered(boolean)"
        - "remove()"
        - "recvBufAllocHandle()"
        - "isReceivedRdHup()"
        - "spliceIn(io.netty.channel.RecvByteBufAllocator$Handle)"
        - "pipeline()"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "incMessagesRead(int)"
        - "getAllocator()"
        - "epollInBefore()"
        - "shutdownInput(boolean)"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:818"
        BranchSideFuncs:
        - "readComplete()"
        - "fireChannelReadComplete()"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:803"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:817"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "peek()"
        - "continueReading()"
        - "handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.epoll.EpollRecvByteAllocatorHandle)"
        - "reset(io.netty.channel.ChannelConfig)"
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
        - "fireChannelRead(java.lang.Object)"
        - "isActive()"
        - "access$400(io.netty.channel.epoll.AbstractEpollStreamChannel)"
        - "isFlagSet(int)"
        - "readComplete()"
        - "release()"
        - "edgeTriggered(boolean)"
        - "remove()"
        - "recvBufAllocHandle()"
        - "isReceivedRdHup()"
        - "spliceIn(io.netty.channel.RecvByteBufAllocator$Handle)"
        - "pipeline()"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "incMessagesRead(int)"
        - "getAllocator()"
        - "epollInBefore()"
        - "shutdownInput(boolean)"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:816"
        BranchSideFuncs:
        - "continueReading()"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:817"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:762"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "peek()"
        - "continueReading()"
        - "handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.epoll.EpollRecvByteAllocatorHandle)"
        - "reset(io.netty.channel.ChannelConfig)"
        - "shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
        - "fireChannelRead(java.lang.Object)"
        - "isActive()"
        - "access$400(io.netty.channel.epoll.AbstractEpollStreamChannel)"
        - "isFlagSet(int)"
        - "readComplete()"
        - "release()"
        - "edgeTriggered(boolean)"
        - "remove()"
        - "recvBufAllocHandle()"
        - "isReceivedRdHup()"
        - "spliceIn(io.netty.channel.RecvByteBufAllocator$Handle)"
        - "pipeline()"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "incMessagesRead(int)"
        - "getAllocator()"
        - "epollInBefore()"
        - "shutdownInput(boolean)"
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:761"
        BranchSideFuncs:
        - "access$400(io.netty.channel.epoll.AbstractEpollStreamChannel)"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:822"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:828"
        BranchSideFuncs:
        - "shutdownInput(boolean)"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:827"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:828"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:831"
        BranchSideFuncs:
        - "epollInFinally(io.netty.channel.ChannelConfig)"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:830"
        BranchSideFuncs:
        - "isAutoRead()"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:831"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:836"
        BranchSideFuncs:
        - "clearEpollIn()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:835"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:828"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:831"
        BranchSideFuncs:
        - "epollInFinally(io.netty.channel.ChannelConfig)"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:830"
        BranchSideFuncs:
        - "isAutoRead()"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:831"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:836"
        BranchSideFuncs:
        - "clearEpollIn()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:835"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:828"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:831"
        BranchSideFuncs:
        - "epollInFinally(io.netty.channel.ChannelConfig)"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:830"
        BranchSideFuncs:
        - "isAutoRead()"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:831"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:835"
        BranchSideFuncs:
        - "clearEpollIn()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:834"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:744,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].config()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:745,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].shouldBreakEpollInReady(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:746,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].clearEpollIn0()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:749,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].recvBufAllocHandle()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:750,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].isFlagSet(int)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:750,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].edgeTriggered(boolean)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:752,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:753,1"
      Dst: "[io.netty.channel.ChannelConfig].getAllocator()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:754,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:755,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInBefore()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:762,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].access$400(io.netty.channel.epoll.AbstractEpollStreamChannel)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:763,1"
      Dst: "[java.util.Queue].peek()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:765,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel$SpliceInTask].spliceIn(io.netty.channel.RecvByteBufAllocator$Handle)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:767,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].isReceivedRdHup()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:768,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].shutdownInput(boolean)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:773,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:774,1"
      Dst: "[java.util.Queue].remove()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:785,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:786,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:786,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:787,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:789,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:798,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:800,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:817,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:819,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:820,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:829,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInFinally(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:831,1"
      Dst: "[io.netty.channel.ChannelConfig].isAutoRead()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:832,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].clearEpollIn()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:826,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe].handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.epoll.EpollRecvByteAllocatorHandle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 36
    CyclomaticComplexity: 18
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe].handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.epoll.EpollRecvByteAllocatorHandle)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe"
    linkageType: ""
    functionLinenumber: 717
    functionLinenumberEnd: 736
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelPipeline"
    - "io.netty.buffer.ByteBuf"
    - "java.lang.Throwable"
    - "boolean"
    - "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].shutdownInput(boolean)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 1
    ICount: 23
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:718"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:726"
        BranchSideFuncs:
        - "isReadable()"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:725"
        BranchSideFuncs:
        - "fireChannelReadComplete()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "readComplete()"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:719"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:723"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:722"
        BranchSideFuncs:
        - "release()"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:732"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:733"
        BranchSideFuncs:
        - "shutdownInput(boolean)"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:732"
        BranchSideFuncs:
        - "shutdownInput(boolean)"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:732"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:733"
        BranchSideFuncs:
        - "shutdownInput(boolean)"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:732"
        BranchSideFuncs:
        - "shutdownInput(boolean)"
    - Branch String: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:732"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:735"
        BranchSideFuncs:
        - "shutdownInput(boolean)"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:734"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:719,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:721,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:723,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:726,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:727,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:728,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:733,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].shutdownInput(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe].epollInReadFd()"
    functionSourceFile: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe"
    linkageType: ""
    functionLinenumber: 148
    functionLinenumberEnd: 191
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isInputShutdown()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].clearEpollIn0()"
    - "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].edgeTriggered(boolean)"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isFlagSet(int)"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInBefore()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - "[io.netty.channel.unix.Socket].recvFd()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInFinally(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 1
    ICount: 51
    EdgeCount: 28
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:149"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:153"
        BranchSideFuncs:
        - "clearEpollIn0()"
      - BranchSide: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:152"
        BranchSideFuncs:
        - "edgeTriggered(boolean)"
        - "config()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "recvBufAllocHandle()"
        - "pipeline()"
        - "epollInBefore()"
        - "isFlagSet(int)"
    - Branch String: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:179"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:166"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "edgeTriggered(boolean)"
        - "continueReading()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "close(io.netty.channel.ChannelPromise)"
        - "config()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "voidPromise()"
        - "recvBufAllocHandle()"
        - "recvFd()"
        - "<init>(int)"
        - "pipeline()"
        - "fireChannelRead(java.lang.Object)"
        - "fireChannelReadComplete()"
        - "incMessagesRead(int)"
        - "epollInBefore()"
        - "isFlagSet(int)"
        - "readComplete()"
        - "lastBytesRead()"
        - "epollInFinally(io.netty.channel.ChannelConfig)"
      - BranchSide: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:165"
        BranchSideFuncs:
        - "lastBytesRead(int)"
        - "recvFd()"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:149,1"
      Dst: "[io.netty.channel.unix.Socket].isInputShutdown()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:150,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].clearEpollIn0()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:153,1"
      Dst: "[io.netty.channel.epoll.EpollDomainSocketChannel].config()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:154,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].recvBufAllocHandle()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:155,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].isFlagSet(int)"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:155,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].edgeTriggered(boolean)"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:157,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:158,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:159,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInBefore()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:166,1"
      Dst: "[io.netty.channel.unix.Socket].recvFd()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:166,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:167,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:171,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:171,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:188,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].epollInFinally(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:174,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:176,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].<init>(int)"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:176,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:179,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:181,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:182,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - Src: "io.netty.channel.epoll.EpollDomainSocketChannel$EpollDomainUnsafe:186,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.EncoderException].<init>()"
    functionSourceFile: "io.netty.handler.codec.EncoderException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EncoderException:28,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.EncoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.EncoderException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.EncoderException:35,1"
      Dst: "[io.netty.handler.codec.CodecException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpObject].getDecoderResult()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpObject"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.DecoderResult"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpObject].decoderResult()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpObject:38,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpObject].decoderResult()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpObject].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpObject"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.DecoderResult"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 13
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpObject:43,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpObject].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpObject"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].hashCode()"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpObject:49,1"
      Dst: "[java.lang.Object].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpObject].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpObject"
    linkageType: ""
    functionLinenumber: 54
    functionLinenumberEnd: 62
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpObject].decoderResult()"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 10
    ICount: 10
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultHttpObject:55"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpObject:59"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpObject:58"
        BranchSideFuncs:
        - "decoderResult()"
        - "equals(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpObject:61,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpObject].decoderResult()"
    - Src: "io.netty.handler.codec.http.DefaultHttpObject:61,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannel].<init>()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.BsdSocket].newSocketStream()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].<init>(io.netty.channel.kqueue.BsdSocket,boolean)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].<init>(io.netty.channel.kqueue.KQueueServerSocketChannel)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:34,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].newSocketStream()"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:34,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueServerChannel].<init>(io.netty.channel.kqueue.BsdSocket,boolean)"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:35,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].<init>(io.netty.channel.kqueue.KQueueServerSocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannel].<init>(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannel].<init>(io.netty.channel.kqueue.BsdSocket)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:41,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:41,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerSocketChannel].<init>(io.netty.channel.kqueue.BsdSocket)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannel].<init>(io.netty.channel.kqueue.BsdSocket)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.BsdSocket"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].<init>(io.netty.channel.kqueue.BsdSocket)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].<init>(io.netty.channel.kqueue.KQueueServerSocketChannel)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:45,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueServerChannel].<init>(io.netty.channel.kqueue.BsdSocket)"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:46,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].<init>(io.netty.channel.kqueue.KQueueServerSocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannel].<init>(io.netty.channel.kqueue.BsdSocket,boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannel"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.kqueue.BsdSocket"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].<init>(io.netty.channel.kqueue.BsdSocket,boolean)"
    - "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].<init>(io.netty.channel.kqueue.KQueueServerSocketChannel)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:50,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueServerChannel].<init>(io.netty.channel.kqueue.BsdSocket,boolean)"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:51,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerSocketChannelConfig].<init>(io.netty.channel.kqueue.KQueueServerSocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannel].isCompatible(io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannel"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannel].doBind(java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannel"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 68
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].doBind(java.net.SocketAddress)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].getBacklog()"
    - "[io.netty.channel.unix.Socket].listen(int)"
    - "[io.netty.channel.kqueue.KQueueServerChannelConfig].isTcpFastOpen()"
    - "[io.netty.channel.kqueue.BsdSocket].setTcpFastOpen(boolean)"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueServerSocketChannel:63"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueServerSocketChannel:66"
        BranchSideFuncs:
        - "setTcpFastOpen(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueServerSocketChannel:65"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:61,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel].doBind(java.net.SocketAddress)"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:62,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].getBacklog()"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:62,1"
      Dst: "[io.netty.channel.unix.Socket].listen(int)"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:63,1"
      Dst: "[io.netty.channel.kqueue.KQueueServerChannelConfig].isTcpFastOpen()"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:64,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].setTcpFastOpen(boolean)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannel].remoteAddress()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannel"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].remoteAddress()"
    functionUses: 11
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:71,1"
      Dst: "[io.netty.channel.AbstractChannel].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannel].localAddress()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannel"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionDepth: 0
    returnType: "java.net.InetSocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].localAddress()"
    functionUses: 8
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:76,1"
      Dst: "[io.netty.channel.AbstractChannel].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannel].config()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannel"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "io.netty.channel.kqueue.KQueueServerSocketChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 56
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueServerSocketChannel].newChildChannel(int,byte[],int,int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueServerSocketChannel"
    linkageType: ""
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionDepth: 8
    returnType: "io.netty.channel.Channel"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueSocketChannel].<init>(io.netty.channel.Channel,io.netty.channel.kqueue.BsdSocket,java.net.InetSocketAddress)"
    - "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    - "[io.netty.channel.unix.NativeInetAddress].address(byte[],int,int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:86,1"
      Dst: "[io.netty.channel.kqueue.BsdSocket].<init>(int)"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:86,1"
      Dst: "[io.netty.channel.unix.NativeInetAddress].address(byte[],int,int)"
    - Src: "io.netty.channel.kqueue.KQueueServerSocketChannel:86,1"
      Dst: "[io.netty.channel.kqueue.KQueueSocketChannel].<init>(io.netty.channel.Channel,io.netty.channel.kqueue.BsdSocket,java.net.InetSocketAddress)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueSocketChannel].<init>(io.netty.channel.Channel,io.netty.channel.kqueue.BsdSocket,java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueSocketChannel"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.Channel"
    - "io.netty.channel.kqueue.BsdSocket"
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].<init>(io.netty.channel.Channel,io.netty.channel.kqueue.BsdSocket,java.net.SocketAddress)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].<init>(io.netty.channel.kqueue.KQueueSocketChannel)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueSocketChannel:52,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].<init>(io.netty.channel.Channel,io.netty.channel.kqueue.BsdSocket,java.net.SocketAddress)"
    - Src: "io.netty.channel.kqueue.KQueueSocketChannel:53,1"
      Dst: "[io.netty.channel.kqueue.KQueueSocketChannelConfig].<init>(io.netty.channel.kqueue.KQueueSocketChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueSocketChannelConfig].<init>(io.netty.channel.kqueue.KQueueSocketChannel)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 47
    functionLinenumberEnd: 54
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.KQueueSocketChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    - "[io.netty.util.internal.PlatformDependent].canEnableTcpNoDelayByDefault()"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setTcpNoDelay(boolean)"
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].calculateMaxBytesPerGatheringWrite()"
    functionUses: 1
    ICount: 8
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueSocketChannelConfig:49"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueSocketChannelConfig:52"
        BranchSideFuncs:
        - "setTcpNoDelay(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueSocketChannelConfig:51"
        BranchSideFuncs:
        - "calculateMaxBytesPerGatheringWrite()"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueSocketChannelConfig:48,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    - Src: "io.netty.channel.kqueue.KQueueSocketChannelConfig:49,1"
      Dst: "[io.netty.util.internal.PlatformDependent].canEnableTcpNoDelayByDefault()"
    - Src: "io.netty.channel.kqueue.KQueueSocketChannelConfig:50,1"
      Dst: "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setTcpNoDelay(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueSocketChannelConfig:52,1"
      Dst: "[io.netty.channel.kqueue.KQueueSocketChannelConfig].calculateMaxBytesPerGatheringWrite()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueSocketChannelConfig].setTcpNoDelay(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 283
    functionLinenumberEnd: 288
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setTcpNoDelay(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueSocketChannelConfig:284,1"
      Dst: "[io.netty.channel.unix.Socket].setTcpNoDelay(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueSocketChannelConfig:287,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueSocketChannelConfig].calculateMaxBytesPerGatheringWrite()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 409
    functionLinenumberEnd: 415
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueSocketChannelConfig].getSendBufferSize()"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setMaxBytesPerGatheringWrite(long)"
    functionUses: 2
    ICount: 9
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueSocketChannelConfig:411"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueSocketChannelConfig:414"
        BranchSideFuncs:
        - "getSendBufferSize()"
        - "setMaxBytesPerGatheringWrite(long)"
      - BranchSide: "io.netty.channel.kqueue.KQueueSocketChannelConfig:413"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueSocketChannelConfig:410,1"
      Dst: "[io.netty.channel.kqueue.KQueueSocketChannelConfig].getSendBufferSize()"
    - Src: "io.netty.channel.kqueue.KQueueSocketChannelConfig:412,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setMaxBytesPerGatheringWrite(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.kqueue.KQueueSocketChannelConfig].getSendBufferSize()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 150
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getSendBufferSize()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 3
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueSocketChannelConfig:147,1"
      Dst: "[io.netty.channel.unix.Socket].getSendBufferSize()"
    - Src: "io.netty.channel.kqueue.KQueueSocketChannelConfig:149,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 578
    functionLinenumberEnd: 581
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.AbstractHttp2StreamChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.channel.VoidChannelPromise].<init>(io.netty.channel.Channel,boolean)"
    functionUses: 1
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:579,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:580,1"
      Dst: "[io.netty.channel.VoidChannelPromise].<init>(io.netty.channel.Channel,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 590
    functionLinenumberEnd: 596
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setUncancellable()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setUncancellable()"
    - "[io.netty.channel.VoidChannelPromise].setUncancellable()"
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Promise].setUncancellable()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:591"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:594"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:593"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:591,1"
      Dst: "[io.netty.util.concurrent.Promise].setUncancellable()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:594,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:594,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].recvBufAllocHandle()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 598
    functionLinenumberEnd: 604
    functionDepth: 0
    returnType: "io.netty.channel.RecvByteBufAllocator$Handle"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.channel.DefaultChannelConfig].getRecvByteBufAllocator()"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator].newHandle()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator].newHandle()"
    - "[io.netty.channel.FixedRecvByteBufAllocator].newHandle()"
    - "[io.netty.channel.ServerChannelRecvByteBufAllocator].newHandle()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.ChannelConfig].getRecvByteBufAllocator()"
    - "[io.netty.channel.RecvByteBufAllocator].newHandle()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].reset(io.netty.channel.ChannelConfig)"
    functionUses: 12
    ICount: 14
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:599"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:603"
        BranchSideFuncs:
        - "getRecvByteBufAllocator()"
        - "config()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "newHandle()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:602"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:600,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:600,1"
      Dst: "[io.netty.channel.ChannelConfig].getRecvByteBufAllocator()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:600,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator].newHandle()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:601,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].reset(io.netty.channel.ChannelConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].localAddress()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 607
    functionLinenumberEnd: 609
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].localAddress()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].localAddress()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].localAddress()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].parent()"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.embedded.EmbeddedChannel].unsafe()"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - "[io.netty.channel.Channel].unsafe()"
    - "[io.netty.channel.Channel$Unsafe].localAddress()"
    functionUses: 2
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:608,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].parent()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:608,1"
      Dst: "[io.netty.channel.Channel].unsafe()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:608,1"
      Dst: "[io.netty.channel.Channel$Unsafe].localAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].remoteAddress()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 612
    functionLinenumberEnd: 614
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].parent()"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].remoteAddress()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].remoteAddress()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].remoteAddress()"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.embedded.EmbeddedChannel].unsafe()"
    - "[io.netty.channel.nio.AbstractNioChannel].unsafe()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - "[io.netty.channel.Channel].unsafe()"
    - "[io.netty.channel.Channel$Unsafe].remoteAddress()"
    functionUses: 2
    ICount: 6
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:613,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].parent()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:613,1"
      Dst: "[io.netty.channel.Channel].unsafe()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:613,1"
      Dst: "[io.netty.channel.Channel$Unsafe].remoteAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].register(io.netty.channel.EventLoop,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 617
    functionLinenumberEnd: 635
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.EventLoop"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setUncancellable()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setUncancellable()"
    - "[io.netty.channel.VoidChannelPromise].setUncancellable()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$400(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$402(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRegistered()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelActive()"
    - "[io.netty.util.concurrent.Promise].setUncancellable()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPipeline].fireChannelRegistered()"
    - "[io.netty.channel.ChannelPipeline].fireChannelActive()"
    functionUses: 2
    ICount: 26
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:618"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:621"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:620"
        BranchSideFuncs:
        - "access$400(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:621"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:626"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:625"
        BranchSideFuncs:
        - "access$402(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
        - "fireChannelRegistered()"
        - "isActive()"
        - "setSuccess()"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:631"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:634"
        BranchSideFuncs:
        - "pipeline()"
        - "fireChannelActive()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:633"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:618,1"
      Dst: "[io.netty.util.concurrent.Promise].setUncancellable()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:621,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$400(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:622,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:622,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:626,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$402(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:628,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:630,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:630,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRegistered()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:631,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:632,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelActive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 637
    functionLinenumberEnd: 643
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setUncancellable()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setUncancellable()"
    - "[io.netty.channel.VoidChannelPromise].setUncancellable()"
    - "[java.lang.UnsupportedOperationException].<init>()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Promise].setUncancellable()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 10
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:638"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:641"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:640"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:638,1"
      Dst: "[io.netty.util.concurrent.Promise].setUncancellable()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:641,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:641,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].disconnect(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 645
    functionLinenumberEnd: 648
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].close(io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:646,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].close(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 650
    functionLinenumberEnd: 704
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setUncancellable()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setUncancellable()"
    - "[io.netty.channel.VoidChannelPromise].setUncancellable()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$500(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$1].<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$602(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$700(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].id()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    - "[io.netty.channel.local.LocalServerChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    - "[io.netty.bootstrap.FailedChannel].isActive()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil].isStreamIdValid(int)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].parent()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].<init>(io.netty.handler.codec.http2.Http2Error)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].stream()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].voidPromise()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].voidPromise()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].flush()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$800(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$802(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,java.util.Queue)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$902(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].fireChannelInactiveAndDeregister(io.netty.channel.ChannelPromise,boolean)"
    - "[io.netty.util.concurrent.Promise].setUncancellable()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.Channel].isActive()"
    - "[io.netty.channel.Channel$Unsafe].voidPromise()"
    - "[java.util.Queue].poll()"
    functionUses: 14
    ICount: 69
    EdgeCount: 101
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:651"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:654"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:653"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:654"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:669"
        BranchSideFuncs:
        - "isDone()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:668"
        BranchSideFuncs:
        - "access$700(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
        - "isActive()"
        - "access$602(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
        - "parent()"
        - "id()"
        - "isStreamIdValid(int)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:655"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:657"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:658"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:666"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:680"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:686"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
        - "stream(io.netty.handler.codec.http2.Http2FrameStream)"
        - "<init>(io.netty.handler.codec.http2.Http2Error)"
        - "flush()"
        - "unsafe()"
        - "stream()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:685"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:680"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:686"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
        - "stream(io.netty.handler.codec.http2.Http2FrameStream)"
        - "<init>(io.netty.handler.codec.http2.Http2Error)"
        - "flush()"
        - "unsafe()"
        - "stream()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:685"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:680"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:686"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
        - "stream(io.netty.handler.codec.http2.Http2FrameStream)"
        - "<init>(io.netty.handler.codec.http2.Http2Error)"
        - "flush()"
        - "unsafe()"
        - "stream()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:685"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:686"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:697"
        BranchSideFuncs:
        - "access$500(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
        - "voidPromise()"
        - "access$902(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
        - "setSuccess()"
        - "fireChannelInactiveAndDeregister(io.netty.channel.ChannelPromise,boolean)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:689"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:692"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:691"
        BranchSideFuncs:
        - "release(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:651,1"
      Dst: "[io.netty.util.concurrent.Promise].setUncancellable()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:655,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$500(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:655,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:657,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:660,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$1].<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:660,1"
      Dst: "[io.netty.channel.ChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:671,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$602(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:673,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:680,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].parent()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:680,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:680,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$700(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:680,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].id()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:680,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].isStreamIdValid(int)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:681,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].<init>(io.netty.handler.codec.http2.Http2Error)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:681,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].stream()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:681,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:682,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:682,1"
      Dst: "[io.netty.channel.Channel$Unsafe].voidPromise()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:682,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:683,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].flush()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:686,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$800(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:688,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:692,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:694,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$802(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,java.util.Queue)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:698,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$902(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:702,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].voidPromise()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:702,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].fireChannelInactiveAndDeregister(io.netty.channel.ChannelPromise,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 8
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$1].<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$1"
    linkageType: ""
    functionLinenumber: 659
    functionLinenumberEnd: 661
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$1:660,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 906
    functionLinenumberEnd: 935
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setUncancellable()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setUncancellable()"
    - "[io.netty.channel.VoidChannelPromise].setUncancellable()"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$900(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[java.nio.channels.ClosedChannelException].<init>()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].stream()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].validateStreamFrame(io.netty.handler.codec.http2.Http2StreamFrame)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].writeHttp2StreamFrame(io.netty.handler.codec.http2.Http2StreamFrame,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ReflectiveChannelFactory].toString()"
    - "[sun.security.x509.SerialNumber].toString()"
    - "[io.netty.util.Version].toString()"
    - "[javax.net.ssl.SSLEngineResult].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].toString()"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].toString()"
    - "[java.util.AbstractCollection].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[sun.security.x509.CertificateAlgorithmId].toString()"
    - "[io.netty.buffer.PoolSubpage].toString()"
    - "[java.net.InetSocketAddress].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[java.lang.ProcessBuilder$Redirect$3].toString()"
    - "[io.netty.util.Recycler$1].toString()"
    - "[sun.security.x509.PolicyConstraintsExtension].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].toString()"
    - "[java.nio.charset.Charset].toString()"
    - "[java.util.Properties].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].toString()"
    - "[sun.security.util.JarConstraintsParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].toString()"
    - "[java.lang.reflect.Constructor].toString()"
    - "[java.nio.DoubleBuffer].toString()"
    - "[io.netty.util.Signal].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Thread].toString()"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].toString()"
    - "[java.lang.Throwable].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$CompositePrinterParser].toString()"
    - "[io.netty.channel.embedded.EmbeddedSocketAddress].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].toString()"
    - "[java.util.regex.Matcher].toString()"
    - "[java.lang.reflect.Field].toString()"
    - "[java.lang.invoke.MethodHandles$Lookup].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.net.URL].toString()"
    - "[java.lang.invoke.LambdaForm$Name].toString()"
    - "[sun.security.x509.RDN].toString()"
    - "[java.util.concurrent.atomic.AtomicReference].toString()"
    - "[java.util.Currency].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].toString()"
    - "[io.netty.channel.kqueue.NativeLongArray].toString()"
    - "[io.netty.handler.proxy.ProxyConnectionEvent].toString()"
    - "[java.util.Formatter].toString()"
    - "[java.lang.ModuleLayer].toString()"
    - "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - "[io.netty.handler.ssl.SslCompletionEvent].toString()"
    - "[io.netty.bootstrap.BootstrapConfig].toString()"
    - "[java.lang.ProcessBuilder$Redirect$1].toString()"
    - "[io.netty.handler.codec.xml.XmlEntityReference].toString()"
    - "[java.net.Proxy].toString()"
    - "[sun.security.util.DerValue].toString()"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].toString()"
    - "[sun.security.x509.AlgorithmId].toString()"
    - "[java.text.AttributedCharacterIterator$Attribute].toString()"
    - "[java.lang.Runtime$Version].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$2].toString()"
    - "[java.lang.module.ModuleDescriptor$Exports].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].toString()"
    - "[io.netty.channel.kqueue.AcceptFilter].toString()"
    - "[sun.security.x509.SubjectKeyIdentifierExtension].toString()"
    - "[io.netty.buffer.DefaultByteBufHolder].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.time.temporal.ChronoField].toString()"
    - "[java.security.PermissionCollection].toString()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].toString()"
    - "[java.util.concurrent.ConcurrentHashMap].toString()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].toString()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].toString()"
    - "[java.util.Vector].toString()"
    - "[io.netty.handler.codec.http.HttpVersion].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].toString()"
    - "[java.text.CalendarBuilder].toString()"
    - "[java.net.URLConnection].toString()"
    - "[java.util.EventObject].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].toString()"
    - "[io.netty.util.AbstractConstant].toString()"
    - "[sun.reflect.annotation.TypeAnnotation].toString()"
    - "[java.security.SecureRandom].toString()"
    - "[java.util.concurrent.atomic.AtomicLong].toString()"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].toString()"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].toString()"
    - "[sun.util.calendar.Era].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].toString()"
    - "[java.lang.module.ModuleDescriptor$Requires].toString()"
    - "[java.time.ZonedDateTime].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache].toString()"
    - "[java.math.MutableBigInteger].toString()"
    - "[java.lang.module.ModuleDescriptor$Provides].toString()"
    - "[java.net.InetSocketAddress$InetSocketAddressHolder].toString()"
    - "[sun.security.x509.GeneralNames].toString()"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].toString()"
    - "[sun.security.x509.Extension].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].toString()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].toString()"
    - "[io.netty.handler.ssl.util.LazyX509Certificate].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].toString()"
    - "[sun.security.x509.ExtendedKeyUsageExtension].toString()"
    - "[io.netty.buffer.WrappedByteBuf].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].toString()"
    - "[java.security.MessageDigest].toString()"
    - "[io.netty.handler.codec.dns.DnsOpCode].toString()"
    - "[java.io.ObjectOutputStream$DebugTraceInfoStack].toString()"
    - "[java.util.TreeMap$Entry].toString()"
    - "[java.time.zone.ZoneOffsetTransition].toString()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].toString()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].toString()"
    - "[java.lang.Integer].toString()"
    - "[java.lang.ProcessBuilder$Redirect$6].toString()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].toString()"
    - "[java.util.OptionalInt].toString()"
    - "[javax.naming.NamingException].toString()"
    - "[java.time.LocalDate].toString()"
    - "[java.util.ServiceLoader].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache].toString()"
    - "[java.net.InetAddress].toString()"
    - "[java.util.jar.Attributes$Name].toString()"
    - "[java.lang.Boolean].toString()"
    - "[io.netty.handler.codec.DefaultHeaders].toString()"
    - "[jaz.Zer].toString()"
    - "[io.netty.util.concurrent.DefaultPromise].toString()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].toString()"
    - "[io.netty.handler.ssl.PemX509Certificate].toString()"
    - "[sun.security.x509.UniqueIdentity].toString()"
    - "[java.security.CodeSigner].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].toString()"
    - "[sun.security.x509.CertificateX509Key].toString()"
    - "[java.nio.IntBuffer].toString()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].toString()"
    - "[java.util.concurrent.CountDownLatch].toString()"
    - "[io.netty.handler.codec.redis.IntegerRedisMessage].toString()"
    - "[java.nio.ByteOrder].toString()"
    - "[java.util.OptionalLong].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].toString()"
    - "[io.netty.handler.codec.xml.XmlElementEnd].toString()"
    - "[java.io.ObjectStreamClass].toString()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].toString()"
    - "[java.util.concurrent.atomic.LongAdder].toString()"
    - "[java.util.Optional].toString()"
    - "[java.net.URI].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].toString()"
    - "[java.nio.FloatBuffer].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuestion].toString()"
    - "[io.netty.handler.ssl.OpenSslSessionId].toString()"
    - "[io.netty.channel.group.DefaultChannelGroup].toString()"
    - "[sun.security.x509.AuthorityKeyIdentifierExtension].toString()"
    - "[sun.security.util.ObjectIdentifier].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].toString()"
    - "[java.util.concurrent.LinkedBlockingDeque].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].toString()"
    - "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].toString()"
    - "[java.time.format.DateTimePrintContext].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].toString()"
    - "[sun.nio.fs.UnixPath].toString()"
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].toString()"
    - "[java.lang.Class].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].toString()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].toString()"
    - "[java.util.BitSet].toString()"
    - "[java.lang.StackFrameInfo].toString()"
    - "[javax.xml.namespace.QName].toString()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].toString()"
    - "[sun.security.x509.CertificateExtensions].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].toString()"
    - "[sun.security.x509.BasicConstraintsExtension].toString()"
    - "[java.util.concurrent.atomic.AtomicReferenceArray].toString()"
    - "[java.lang.invoke.Invokers].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].toString()"
    - "[java.time.LocalDateTime].toString()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].toString()"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[java.time.format.DateTimeFormatter].toString()"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].toString()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].toString()"
    - "[sun.security.x509.CertificateIssuerName].toString()"
    - "[java.lang.invoke.SerializedLambda].toString()"
    - "[sun.util.locale.LocaleExtensions].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].toString()"
    - "[sun.security.x509.NameConstraintsExtension].toString()"
    - "[java.net.NetworkInterface].toString()"
    - "[java.util.StringJoiner].toString()"
    - "[java.util.AbstractMap].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].toString()"
    - "[java.time.LocalTime].toString()"
    - "[java.security.ProtectionDomain].toString()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock].toString()"
    - "[io.netty.handler.codec.EmptyHeaders].toString()"
    - "[java.time.temporal.ValueRange].toString()"
    - "[java.time.Instant].toString()"
    - "[java.security.PrivilegedActionException].toString()"
    - "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].toString()"
    - "[sun.util.calendar.CalendarDate].toString()"
    - "[java.lang.module.Configuration].toString()"
    - "[java.security.AlgorithmParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].toString()"
    - "[java.lang.ThreadGroup].toString()"
    - "[io.netty.buffer.AbstractByteBufAllocator].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].toString()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].toString()"
    - "[java.nio.file.attribute.FileTime].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].toString()"
    - "[io.netty.handler.codec.xml.XmlNamespace].toString()"
    - "[io.netty.channel.unix.FileDescriptor].toString()"
    - "[java.lang.Double].toString()"
    - "[java.util.OptionalDouble].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].toString()"
    - "[io.netty.bootstrap.AbstractBootstrap].toString()"
    - "[io.netty.channel.WriteBufferWaterMark].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].toString()"
    - "[java.math.BigInteger].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].toString()"
    - "[java.time.format.Parsed].toString()"
    - "[java.time.OffsetDateTime].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString()"
    - "[java.time.OffsetTime].toString()"
    - "[java.util.WeakHashMap$Entry].toString()"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].toString()"
    - "[sun.security.x509.X509CertImpl].toString()"
    - "[java.time.ZoneOffset].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribePayload].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].toString()"
    - "[java.lang.reflect.Method].toString()"
    - "[io.netty.handler.codec.http2.Http2Flags].toString()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].toString()"
    - "[io.netty.buffer.CompositeByteBuf].toString()"
    - "[java.lang.Enum].toString()"
    - "[io.netty.handler.codec.http2.HpackHeaderField].toString()"
    - "[java.net.ServerSocket].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[java.time.zone.ZoneRules].toString()"
    - "[java.security.spec.PSSParameterSpec].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent].toString()"
    - "[sun.security.x509.X500Name].toString()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].toString()"
    - "[io.netty.channel.embedded.EmbeddedChannelId].toString()"
    - "[java.util.concurrent.locks.AbstractQueuedSynchronizer].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.util.regex.Pattern].toString()"
    - "[java.util.concurrent.atomic.AtomicLongArray].toString()"
    - "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].toString()"
    - "[sun.util.locale.Extension].toString()"
    - "[io.netty.handler.codec.smtp.SmtpCommand].toString()"
    - "[java.util.concurrent.ForkJoinPool].toString()"
    - "[sun.security.x509.CertificateVersion].toString()"
    - "[java.lang.ProcessHandleImpl].toString()"
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].toString()"
    - "[java.util.LongSummaryStatistics].toString()"
    - "[java.io.ObjectStreamField].toString()"
    - "[java.lang.ProcessImpl].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[io.netty.resolver.dns.InflightNameResolver].toString()"
    - "[java.nio.charset.CodingErrorAction].toString()"
    - "[java.lang.Float].toString()"
    - "[java.time.format.DecimalStyle].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].toString()"
    - "[sun.security.x509.IssuerAlternativeNameExtension].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[java.io.File].toString()"
    - "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].toString()"
    - "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].toString()"
    - "[java.util.Calendar].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].toString()"
    - "[java.nio.ByteBuffer].toString()"
    - "[io.netty.buffer.EmptyByteBuf].toString()"
    - "[io.netty.buffer.AbstractByteBuf].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock].toString()"
    - "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].toString()"
    - "[java.lang.Package].toString()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].toString()"
    - "[java.text.ParsePosition].toString()"
    - "[sun.util.locale.BaseLocale].toString()"
    - "[sun.reflect.annotation.AnnotationType].toString()"
    - "[java.lang.Character$Subset].toString()"
    - "[sun.security.util.LazyCodeSourcePermissionCollection].toString()"
    - "[java.lang.Object].toString()"
    - "[io.netty.handler.codec.xml.XmlElement].toString()"
    - "[java.lang.Character].toString()"
    - "[sun.net.www.MessageHeader].toString()"
    - "[java.lang.invoke.MethodType].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].toString()"
    - "[io.netty.handler.codec.http.QueryStringEncoder].toString()"
    - "[java.net.InterfaceAddress].toString()"
    - "[java.time.zone.ZoneOffsetTransitionRule].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].toString()"
    - "[io.netty.handler.codec.dns.DnsRecordType].toString()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].toString()"
    - "[java.lang.StackTraceElement].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toString()"
    - "[java.lang.ProcessBuilder$Redirect$4].toString()"
    - "[java.lang.invoke.LambdaForm].toString()"
    - "[io.netty.handler.codec.dns.DnsResponseCode].toString()"
    - "[io.netty.util.collection.LongObjectHashMap].toString()"
    - "[javax.naming.directory.ModificationItem].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].toString()"
    - "[sun.security.x509.PolicyMappingsExtension].toString()"
    - "[sun.security.x509.CertificatePoliciesExtension].toString()"
    - "[java.security.CodeSource].toString()"
    - "[java.security.Permission].toString()"
    - "[java.security.Timestamp].toString()"
    - "[io.netty.buffer.PoolArena].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].toString()"
    - "[java.nio.charset.CoderResult].toString()"
    - "[io.netty.channel.unix.PeerCredentials].toString()"
    - "[java.security.SecureRandomSpi].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[javax.security.auth.Subject].toString()"
    - "[javax.crypto.CryptoPermission].toString()"
    - "[java.util.Locale].toString()"
    - "[java.time.chrono.AbstractChronology].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsPtrRecord].toString()"
    - "[java.util.concurrent.locks.ReentrantLock].toString()"
    - "[java.lang.module.ResolvedModule].toString()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].toString()"
    - "[io.netty.handler.codec.http.HttpMethod].toString()"
    - "[java.lang.invoke.MemberName].toString()"
    - "[sun.security.x509.PrivateKeyUsageExtension].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].toString()"
    - "[io.netty.handler.traffic.TrafficCounter].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].toString()"
    - "[java.io.ByteArrayOutputStream].toString()"
    - "[sun.security.x509.CertificateValidity].toString()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].toString()"
    - "[java.time.Duration].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[sun.security.x509.X509CertInfo].toString()"
    - "[sun.security.x509.AVA].toString()"
    - "[java.lang.module.ModuleDescriptor$Opens].toString()"
    - "[java.math.BigDecimal].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].toString()"
    - "[java.lang.invoke.MethodHandleImpl$LoopClauses].toString()"
    - "[sun.security.x509.CertificateSerialNumber].toString()"
    - "[sun.nio.fs.UnixFileStore].toString()"
    - "[java.net.Socket].toString()"
    - "[javax.net.ssl.SNIHostName].toString()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].toString()"
    - "[java.util.Hashtable$Entry].toString()"
    - "[java.security.Signature].toString()"
    - "[java.lang.Short].toString()"
    - "[java.util.concurrent.CompletableFuture].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsOptPseudoRrRecord].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses].toString()"
    - "[java.util.concurrent.ThreadPoolExecutor].toString()"
    - "[java.util.concurrent.LinkedBlockingQueue].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].toString()"
    - "[java.time.ZoneId].toString()"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].toString()"
    - "[java.net.SocketImpl].toString()"
    - "[sun.security.x509.KeyIdentifier].toString()"
    - "[java.util.Hashtable].toString()"
    - "[sun.security.x509.GeneralSubtrees].toString()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].toString()"
    - "[java.text.FieldPosition].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent].toString()"
    - "[io.netty.util.DomainNameMapping].toString()"
    - "[sun.security.x509.AuthorityInfoAccessExtension].toString()"
    - "[java.util.concurrent.CopyOnWriteArrayList].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].toString()"
    - "[io.netty.buffer.PoolChunkList].toString()"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].toString()"
    - "[io.netty.buffer.PoolChunk].toString()"
    - "[io.netty.resolver.dns.DefaultDnsServerAddresses].toString()"
    - "[io.netty.util.internal.EmptyPriorityQueue].toString()"
    - "[io.netty.channel.unix.DomainSocketAddress].toString()"
    - "[javax.net.ssl.SNIServerName].toString()"
    - "[java.lang.ProcessBuilder$RedirectPipeImpl].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckPayload].toString()"
    - "[java.io.StringWriter].toString()"
    - "[io.netty.handler.codec.xml.XmlAttribute].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].toString()"
    - "[java.util.zip.ZipEntry].toString()"
    - "[java.util.UUID].toString()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].toString()"
    - "[java.security.Provider].toString()"
    - "[java.time.Period].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].toString()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].toString()"
    - "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].toString()"
    - "[java.lang.reflect.Parameter].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].toString()"
    - "[sun.security.x509.CertificateSubjectName].toString()"
    - "[io.netty.channel.DefaultChannelId].toString()"
    - "[java.util.Date].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame].toString()"
    - "[java.util.IntSummaryStatistics].toString()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[sun.security.x509.CRLDistributionPointsExtension].toString()"
    - "[io.netty.channel.DefaultAddressedEnvelope].toString()"
    - "[io.netty.channel.local.LocalAddress].toString()"
    - "[io.netty.util.collection.CharObjectHashMap].toString()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[io.netty.handler.codec.xml.XmlElementStart].toString()"
    - "[io.netty.handler.codec.DecoderResult].toString()"
    - "[io.netty.handler.ssl.SniCompletionEvent].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[io.netty.util.collection.ByteObjectHashMap].toString()"
    - "[java.util.AbstractMap$SimpleEntry].toString()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].toString()"
    - "[io.netty.util.collection.ShortObjectHashMap].toString()"
    - "[java.time.format.DateTimeParseContext].toString()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].toString()"
    - "[java.math.MathContext].toString()"
    - "[io.netty.handler.codec.http.QueryStringDecoder].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$NumberPrinterParser].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$1].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].toString()"
    - "[java.nio.LongBuffer].toString()"
    - "[java.util.DoubleSummaryStatistics].toString()"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].toString()"
    - "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].toString()"
    - "[java.lang.Long].toString()"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].toString()"
    - "[java.security.Provider$Service].toString()"
    - "[io.netty.channel.sctp.SctpMessage].toString()"
    - "[io.netty.util.collection.IntObjectHashMap].toString()"
    - "[io.netty.handler.codec.xml.XmlContent].toString()"
    - "[io.netty.handler.codec.http.HttpHeaders].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].toString()"
    - "[java.lang.invoke.MethodHandle].toString()"
    - "[java.lang.invoke.MethodTypeForm].toString()"
    - "[java.util.HashMap$Node].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].toString()"
    - "[java.lang.ProcessBuilder$Redirect$2].toString()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].toString()"
    - "[java.time.temporal.ChronoUnit].toString()"
    - "[io.netty.buffer.FixedCompositeByteBuf].toString()"
    - "[java.nio.channels.FileChannel$MapMode].toString()"
    - "[sun.security.x509.SubjectAlternativeNameExtension].toString()"
    - "[io.netty.channel.DefaultChannelPipeline].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].toString()"
    - "[java.nio.ShortBuffer].toString()"
    - "[io.netty.handler.codec.string.LineSeparator].toString()"
    - "[java.util.ResourceBundle$CacheKey].toString()"
    - "[io.netty.buffer.SwappedByteBuf].toString()"
    - "[java.security.cert.CertPath].toString()"
    - "[io.netty.channel.unix.Socket].toString()"
    - "[java.lang.module.ModuleDescriptor].toString()"
    - "[sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo].toString()"
    - "[java.lang.module.ModuleDescriptor$Version].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].toString()"
    - "[java.net.HttpCookie].toString()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].toString()"
    - "[sun.util.calendar.JulianCalendar$Date].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].toString()"
    - "[java.lang.ProcessBuilder$Redirect$5].toString()"
    - "[io.netty.channel.AbstractChannel].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].toString()"
    - "[sun.security.x509.GeneralSubtree].toString()"
    - "[sun.security.x509.GeneralName].toString()"
    - "[java.lang.Byte].toString()"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams].toString()"
    - "[io.netty.handler.codec.xml.XmlDTD].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].toString()"
    - "[io.netty.bootstrap.ServerBootstrapConfig].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandType].toString()"
    - "[java.lang.Module].toString()"
    - "[sun.security.util.BitArray].toString()"
    - "[io.netty.channel.AbstractChannelHandlerContext].toString()"
    - "[java.nio.channels.FileLock].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].toString()"
    - "[io.netty.handler.codec.http.HttpScheme].toString()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].toString()"
    - "[javax.security.auth.x500.X500Principal].toString()"
    - "[java.util.logging.Level].toString()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Promise].setUncancellable()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2StreamFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 3
    ICount: 48
    EdgeCount: 571
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:907"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:912"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:911"
        BranchSideFuncs:
        - "isActive()"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:912"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:915"
        BranchSideFuncs:
        - "toString()"
        - "append(java.lang.String)"
        - "validateStreamFrame(io.netty.handler.codec.http2.Http2StreamFrame)"
        - "stream(io.netty.handler.codec.http2.Http2FrameStream)"
        - "isActive()"
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "release(java.lang.Object)"
        - "access$900(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
        - "<init>(java.lang.String)"
        - "writeHttp2StreamFrame(io.netty.handler.codec.http2.Http2StreamFrame,io.netty.channel.ChannelPromise)"
        - "simpleClassName(java.lang.Class)"
        - "tryFailure(java.lang.Throwable)"
        - "stream()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:914"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:914"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:921"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:920"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:914"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:915"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:914"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:914"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:921"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:920"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:921"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:925"
        BranchSideFuncs:
        - "validateStreamFrame(io.netty.handler.codec.http2.Http2StreamFrame)"
        - "stream(io.netty.handler.codec.http2.Http2FrameStream)"
        - "writeHttp2StreamFrame(io.netty.handler.codec.http2.Http2StreamFrame,io.netty.channel.ChannelPromise)"
        - "stream()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:924"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "<init>()"
        - "release(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:907,1"
      Dst: "[io.netty.util.concurrent.Promise].setUncancellable()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:908,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:912,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:914,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$900(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:916,1"
      Dst: "[java.nio.channels.ClosedChannelException].<init>()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:916,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:922,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].validateStreamFrame(io.netty.handler.codec.http2.Http2StreamFrame)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:922,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].stream()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:922,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:923,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].writeHttp2StreamFrame(io.netty.handler.codec.http2.Http2StreamFrame,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:925,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:927,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:927,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:928,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Class)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:928,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:928,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:932,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].validateStreamFrame(io.netty.handler.codec.http2.Http2StreamFrame)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 1017
    functionLinenumberEnd: 1025
    functionDepth: 1
    returnType: "io.netty.handler.codec.http2.Http2StreamFrame"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2StreamFrame"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$700(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].stream()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].stream()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamFrame].stream()"
    - "[java.lang.Object].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].toString()"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http2.Http2StreamFrame].stream()"
    functionUses: 1
    ICount: 22
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1018"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1024"
        BranchSideFuncs:
        - "<init>()"
        - "release(java.lang.Object)"
        - "toString()"
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
        - "<init>(java.lang.String)"
        - "stream()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1023"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1018"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1024"
        BranchSideFuncs:
        - "<init>()"
        - "release(java.lang.Object)"
        - "toString()"
        - "append(java.lang.String)"
        - "append(java.lang.Object)"
        - "<init>(java.lang.String)"
        - "stream()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1023"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1018,1"
      Dst: "[io.netty.handler.codec.http2.Http2StreamFrame].stream()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1018,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$700(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1019,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1020,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1021,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1021,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1022,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1022,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1022,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].writeHttp2StreamFrame(io.netty.handler.codec.http2.Http2StreamFrame,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 936
    functionLinenumberEnd: 976
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2StreamFrame"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1800(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].id()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil].isStreamIdValid(int)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].stream()"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].name()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].name()"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].name()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].name()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].name()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].name()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].name()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1802(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel].parentContext()"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec$Http2MultiplexCodecStreamChannel].parentContext()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].write0(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec$Http2MultiplexCodecStreamChannel].write0(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].firstWriteComplete(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].writeComplete(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator].access$1900()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator$1].size(java.lang.Object)"
    - "[io.netty.channel.PendingBytesTracker].size(java.lang.Object)"
    - "[io.netty.channel.DefaultMessageSizeEstimator$HandleImpl].size(java.lang.Object)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$200(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,long,boolean)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$3].<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe,boolean,io.netty.channel.ChannelPromise,long)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http2.Http2FrameStream].id()"
    - "[io.netty.handler.codec.http2.Http2Frame].name()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].parentContext()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.MessageSizeEstimator$Handle].size(java.lang.Object)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 52
    EdgeCount: 46
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:937"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:946"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "setFailure(java.lang.Throwable)"
        - "name()"
        - "<init>()"
        - "release(java.lang.Object)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:945"
        BranchSideFuncs:
        - "access$1800(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:937"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:946"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "setFailure(java.lang.Throwable)"
        - "name()"
        - "<init>()"
        - "release(java.lang.Object)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:945"
        BranchSideFuncs:
        - "access$1800(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:937"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:946"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "setFailure(java.lang.Throwable)"
        - "name()"
        - "<init>()"
        - "release(java.lang.Object)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:945"
        BranchSideFuncs:
        - "access$1800(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:946"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:949"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:948"
        BranchSideFuncs:
        - "access$1802(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:953"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:960"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:959"
        BranchSideFuncs:
        - "access$200(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,long,boolean)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "access$1900()"
        - "size(java.lang.Object)"
        - "<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe,boolean,io.netty.channel.ChannelPromise,long)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:954"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:957"
        BranchSideFuncs:
        - "firstWriteComplete(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:956"
        BranchSideFuncs:
        - "writeComplete(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:937,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1800(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:937,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].stream()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:937,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameStream].id()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:937,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil].isStreamIdValid(int)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:938,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:939,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:939,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:941,1"
      Dst: "[io.netty.handler.codec.http2.Http2Frame].name()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:941,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:941,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:939,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:949,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1802(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:952,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].parentContext()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:952,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].write0(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:953,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:955,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].firstWriteComplete(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:957,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].writeComplete(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:960,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$FlowControlledFrameSizeEstimator].access$1900()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:960,1"
      Dst: "[io.netty.channel.MessageSizeEstimator$Handle].size(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:961,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$200(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,long,boolean)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:962,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$3].<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe,boolean,io.netty.channel.ChannelPromise,long)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:962,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].firstWriteComplete(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 977
    functionLinenumberEnd: 987
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].closeForcibly()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].wrapStreamClosedError(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 2
    ICount: 11
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:979"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:983"
        BranchSideFuncs:
        - "setSuccess()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:982"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "wrapStreamClosedError(java.lang.Throwable)"
        - "closeForcibly()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:978,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:980,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:983,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].closeForcibly()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:984,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].wrapStreamClosedError(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:984,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].closeForcibly()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 706
    functionLinenumberEnd: 709
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].voidPromise()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].voidPromise()"
    - "[io.netty.channel.Channel$Unsafe].voidPromise()"
    functionUses: 14
    ICount: 6
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:707,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].unsafe()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:707,1"
      Dst: "[io.netty.channel.Channel$Unsafe].voidPromise()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:707,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].wrapStreamClosedError(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 1010
    functionLinenumberEnd: 1015
    functionDepth: 1
    returnType: "java.lang.Throwable"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2Exception].error()"
    - "[java.nio.channels.ClosedChannelException].<init>()"
    - "[java.lang.Throwable].initCause(java.lang.Throwable)"
    functionUses: 2
    ICount: 13
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1011"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1014"
        BranchSideFuncs:
        - "<init>()"
        - "initCause(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1013"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1011"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1014"
        BranchSideFuncs:
        - "<init>()"
        - "initCause(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1013"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1011,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].error()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1012,1"
      Dst: "[java.nio.channels.ClosedChannelException].<init>()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1012,1"
      Dst: "[java.lang.Throwable].initCause(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].writeComplete(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 988
    functionLinenumberEnd: 1007
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].wrapStreamClosedError(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$2200(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.channel.DefaultChannelConfig].isAutoClose()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].closeForcibly()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$902(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 2
    ICount: 20
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:990"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:993"
        BranchSideFuncs:
        - "setSuccess()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:992"
        BranchSideFuncs:
        - "wrapStreamClosedError(java.lang.Throwable)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:995"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1004"
        BranchSideFuncs:
        - "isAutoClose()"
        - "access$2200(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1003"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:996"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1000"
        BranchSideFuncs:
        - "access$902(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:989,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:991,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:993,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].wrapStreamClosedError(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:996,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$2200(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:996,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].isAutoClose()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:998,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].closeForcibly()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1001,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$902(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1004,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$3].<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe,boolean,io.netty.channel.ChannelPromise,long)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$3"
    linkageType: ""
    functionLinenumber: 961
    functionLinenumberEnd: 963
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$3:962,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].flush()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 1032
    functionLinenumberEnd: 1042
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec$Http2MultiplexCodecStreamChannel].isParentReadInProgress()"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel].isParentReadInProgress()"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec$Http2MultiplexCodecStreamChannel].flush0(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].flush0(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel].parentContext()"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec$Http2MultiplexCodecStreamChannel].parentContext()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isParentReadInProgress()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].parentContext()"
    functionUses: 5
    ICount: 13
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1033"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1034"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1033"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1038"
        BranchSideFuncs:
        - "flush0(io.netty.channel.ChannelHandlerContext)"
        - "parentContext()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1033,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isParentReadInProgress()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1040,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].parentContext()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:1040,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].flush0(io.netty.channel.ChannelHandlerContext)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].voidPromise()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 1044
    functionLinenumberEnd: 1046
    functionDepth: 0
    returnType: "io.netty.channel.ChannelPromise"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 14
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].fireChannelInactiveAndDeregister(io.netty.channel.ChannelPromise,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 716
    functionLinenumberEnd: 749
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelPromise"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].setUncancellable()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setUncancellable()"
    - "[io.netty.channel.VoidChannelPromise].setUncancellable()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$400(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].invokeLater(java.lang.Runnable)"
    - "[io.netty.util.concurrent.Promise].setUncancellable()"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    functionUses: 2
    ICount: 15
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:717"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:721"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:720"
        BranchSideFuncs:
        - "access$400(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:721"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:733"
        BranchSideFuncs:
        - "setSuccess()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:732"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe,boolean,io.netty.channel.ChannelPromise)"
        - "invokeLater(java.lang.Runnable)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:717,1"
      Dst: "[io.netty.util.concurrent.Promise].setUncancellable()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:721,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$400(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:722,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:733,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe,boolean,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:733,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].invokeLater(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].invokeLater(java.lang.Runnable)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 768
    functionLinenumberEnd: 774
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].execute(java.lang.Runnable)"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].execute(java.lang.Runnable)"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[java.util.zip.Inflater$InflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$3].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[java.util.concurrent.CompletableFuture$Completion].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[java.util.zip.Deflater$DeflaterZStreamRef].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[java.util.concurrent.ThreadPoolExecutor$Worker].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[java.util.zip.ZipFile$CleanableResource].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[java.lang.invoke.MethodHandleNatives$CallSiteContext].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor$2].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[java.util.concurrent.ForkJoinWorkerThread].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[java.lang.ref.Finalizer$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$2].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[java.lang.ref.Finalizer$FinalizerThread].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1200()"
    - "[io.netty.util.internal.logging.JdkLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Log4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.CommonsLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[io.netty.util.internal.logging.Slf4JLogger].warn(java.lang.String,java.lang.Throwable)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 192
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:769,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:769,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:771,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1200()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:771,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].deregister(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 711
    functionLinenumberEnd: 714
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].fireChannelInactiveAndDeregister(io.netty.channel.ChannelPromise,boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:712,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].fireChannelInactiveAndDeregister(io.netty.channel.ChannelPromise,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].beginRead()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 776
    functionLinenumberEnd: 794
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].updateLocalWindowIfNeeded()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1300(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1302(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,io.netty.handler.codec.http2.AbstractHttp2StreamChannel$ReadStatus)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].doBeginRead()"
    functionUses: 1
    ICount: 22
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:777"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:780"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:779"
        BranchSideFuncs:
        - "updateLocalWindowIfNeeded()"
        - "ordinal()"
        - "access$1300(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:777,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:780,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].updateLocalWindowIfNeeded()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:782,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1300(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:782,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:784,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1302(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,io.netty.handler.codec.http2.AbstractHttp2StreamChannel$ReadStatus)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:785,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].doBeginRead()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].updateLocalWindowIfNeeded()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 836
    functionLinenumberEnd: 856
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1600(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1602(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].<init>(int)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$700(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel].parentContext()"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec$Http2MultiplexCodecStreamChannel].parentContext()"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].write0(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec$Http2MultiplexCodecStreamChannel].write0(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$000(io.netty.channel.ChannelFuture,io.netty.channel.Channel)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1700(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].parentContext()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 27
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:837"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:855"
        BranchSideFuncs:
        - "<init>(int)"
        - "access$700(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
        - "parentContext()"
        - "access$1600(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
        - "access$1602(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,int)"
        - "write0(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
        - "isDone()"
        - "stream(io.netty.handler.codec.http2.Http2FrameStream)"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:854"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:849"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:852"
        BranchSideFuncs:
        - "access$000(io.netty.channel.ChannelFuture,io.netty.channel.Channel)"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:851"
        BranchSideFuncs:
        - "access$1700(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:837,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1600(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:839,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1602(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,int)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:840,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].parentContext()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:840,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].<init>(int)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:840,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$700(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:840,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].stream(io.netty.handler.codec.http2.Http2FrameStream)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:840,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].write0(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:849,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:850,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$000(io.netty.channel.ChannelFuture,io.netty.channel.Channel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:852,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1700(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:852,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].doBeginRead()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 800
    functionLinenumberEnd: 831
    functionDepth: 3
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1300(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].pollQueuedMessage()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1400(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].closeForcibly()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].flush()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].recvBufAllocHandle()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].doRead0(io.netty.handler.codec.http2.Http2Frame,io.netty.channel.RecvByteBufAllocator$Handle)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].continueReading()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].continueReading()"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].continueReading()"
    - "[io.netty.handler.codec.http2.Http2MultiplexHandler$Http2MultiplexHandlerStreamChannel].isParentReadInProgress()"
    - "[io.netty.handler.codec.http2.Http2MultiplexCodec$Http2MultiplexCodecStreamChannel].isParentReadInProgress()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1500(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].notifyReadComplete(io.netty.channel.RecvByteBufAllocator$Handle,boolean)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].continueReading()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isParentReadInProgress()"
    functionUses: 2
    ICount: 42
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:801"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:830"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:829"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:803"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:812"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:811"
        BranchSideFuncs:
        - "config()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "recvBufAllocHandle()"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:804"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:809"
        BranchSideFuncs:
        - "access$1400(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
        - "closeForcibly()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:808"
        BranchSideFuncs:
        - "flush()"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:817"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:818"
        BranchSideFuncs:
        - "pollQueuedMessage()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:817"
        BranchSideFuncs:
        - "pollQueuedMessage()"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:817"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:820"
        BranchSideFuncs:
        - "pollQueuedMessage()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:819"
        BranchSideFuncs:
        - "isParentReadInProgress()"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:818"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:815"
        BranchSideFuncs:
        - "continueReading()"
        - "doRead0(io.netty.handler.codec.http2.Http2Frame,io.netty.channel.RecvByteBufAllocator$Handle)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:820"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:826"
        BranchSideFuncs:
        - "notifyReadComplete(io.netty.channel.RecvByteBufAllocator$Handle,boolean)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:820"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:826"
        BranchSideFuncs:
        - "notifyReadComplete(io.netty.channel.RecvByteBufAllocator$Handle,boolean)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:820"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:826"
        BranchSideFuncs:
        - "notifyReadComplete(io.netty.channel.RecvByteBufAllocator$Handle,boolean)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:801,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1300(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:802,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].pollQueuedMessage()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:805,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1400(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:805,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].closeForcibly()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:809,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].flush()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:812,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].recvBufAllocHandle()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:813,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].config()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:813,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].reset(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:816,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].doRead0(io.netty.handler.codec.http2.Http2Frame,io.netty.channel.RecvByteBufAllocator$Handle)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:817,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].continueReading()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:820,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isParentReadInProgress()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:825,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1500(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:827,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].notifyReadComplete(io.netty.channel.RecvByteBufAllocator$Handle,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 10
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].pollQueuedMessage()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 795
    functionLinenumberEnd: 797
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$800(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[java.util.Queue].poll()"
    functionUses: 2
    ICount: 10
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:796"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:795"
        BranchSideFuncs:
        - "access$800(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
        - "poll()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:796,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$800(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:796,1"
      Dst: "[java.util.Queue].poll()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].doRead0(io.netty.handler.codec.http2.Http2Frame,io.netty.channel.RecvByteBufAllocator$Handle)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 883
    functionLinenumberEnd: 903
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.Http2Frame"
    - "io.netty.channel.RecvByteBufAllocator$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].initialFlowControlledBytes()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1600(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1602(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,int)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].attemptedBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].attemptedBytesRead(int)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].attemptedBytesRead(int)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].lastBytesRead(int)"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].lastBytesRead(int)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].incMessagesRead(int)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].incMessagesRead(int)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.handler.codec.http2.Http2DataFrame].initialFlowControlledBytes()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].attemptedBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].incMessagesRead(int)"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    functionUses: 2
    ICount: 22
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:884"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:894"
        BranchSideFuncs:
        - "access$1600(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
        - "initialFlowControlledBytes()"
        - "access$1602(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,int)"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:893"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:885,1"
      Dst: "[io.netty.handler.codec.http2.Http2DataFrame].initialFlowControlledBytes()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:892,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1600(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:892,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1602(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,int)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:897,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].attemptedBytesRead(int)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:898,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead(int)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:899,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].incMessagesRead(int)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:901,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:901,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].notifyReadComplete(io.netty.channel.RecvByteBufAllocator$Handle,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 857
    functionLinenumberEnd: 880
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator$Handle"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$600(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$602(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1300(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1302(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,io.netty.handler.codec.http2.AbstractHttp2StreamChannel$ReadStatus)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].readComplete()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].readComplete()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].readComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].flush()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1400(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].closeForcibly()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].readComplete()"
    - "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    functionUses: 3
    ICount: 32
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:858"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:862"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:861"
        BranchSideFuncs:
        - "access$602(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
        - "access$1300(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:858"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:862"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:861"
        BranchSideFuncs:
        - "access$602(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
        - "access$1300(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:864"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:867"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:866"
        BranchSideFuncs:
        - "access$1302(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,io.netty.handler.codec.http2.AbstractHttp2StreamChannel$ReadStatus)"
    - Branch String: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:876"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:879"
        BranchSideFuncs:
        - "access$1400(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
        - "closeForcibly()"
      - BranchSide: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:878"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:858,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$600(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:862,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$602(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,boolean)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:864,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1300(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:865,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1302(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,io.netty.handler.codec.http2.AbstractHttp2StreamChannel$ReadStatus)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:870,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].readComplete()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:871,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].pipeline()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:871,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:875,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].flush()"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:877,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].access$1400(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:877,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].closeForcibly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].readEOS()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 832
    functionLinenumberEnd: 835
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].outboundBuffer()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 1050
    functionLinenumberEnd: 1052
    functionDepth: 0
    returnType: "io.netty.channel.ChannelOutboundBuffer"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 11
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel,io.netty.handler.codec.http2.AbstractHttp2StreamChannel$1)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 578
    functionLinenumberEnd: 580
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.AbstractHttp2StreamChannel"
    - "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:579,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].<init>(io.netty.handler.codec.http2.AbstractHttp2StreamChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].access$2000(io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 578
    functionLinenumberEnd: 580
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].firstWriteComplete(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:579,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].firstWriteComplete(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].access$2100(io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe,io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    linkageType: ""
    functionLinenumber: 578
    functionLinenumberEnd: 580
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe"
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].writeComplete(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe:579,1"
      Dst: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].writeComplete(io.netty.channel.ChannelFuture,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslClientSessionCache].sessionCreated(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslClientSessionCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].holdsLock(java.lang.Object)"
    - "[java.lang.AssertionError].<init>()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getPeerHost()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getPeerPort()"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache].keyFor(java.lang.String,int)"
    - "[java.util.Map].containsKey(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslClientSessionCache:38"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:39"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:38"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslClientSessionCache:38"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:39"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:38"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslClientSessionCache:40"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:41"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:40"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslClientSessionCache:40"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:43"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:42"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:38,1"
      Dst: "[java.lang.Thread].holdsLock(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:38,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:39,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getPeerHost()"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:39,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getPeerPort()"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:39,1"
      Dst: "[io.netty.handler.ssl.OpenSslClientSessionCache].keyFor(java.lang.String,int)"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:40,1"
      Dst: "[java.util.Map].containsKey(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:43,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.OpenSslClientSessionCache].keyFor(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslClientSessionCache"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 93
    functionDepth: 5
    returnType: "io.netty.handler.ssl.OpenSslClientSessionCache$HostPort"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslClientSessionCache:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:91"
        BranchSideFuncs:
        - "<init>(java.lang.String,int)"
    - Branch String: "io.netty.handler.ssl.OpenSslClientSessionCache:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:92"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:91"
        BranchSideFuncs:
        - "<init>(java.lang.String,int)"
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:92,1"
      Dst: "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslClientSessionCache$HostPort"
    linkageType: ""
    functionLinenumber: 108
    functionLinenumberEnd: 115
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache$HostPort:109,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache$HostPort:113,1"
      Dst: "[io.netty.util.AsciiString].hashCode(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.OpenSslClientSessionCache].sessionRemoved(io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslClientSessionCache"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 56
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    - "[java.lang.Thread].holdsLock(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getPeerHost()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getPeerPort()"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache].keyFor(java.lang.String,int)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].remove(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap:io.netty.util.collection.CharCollections$EmptyMap:io.netty.util.collection.IntCollections$EmptyMap:io.netty.util.collection.LongCollections$EmptyMap:io.netty.util.collection.ShortCollections$EmptyMap:java.security.Provider:java.util.AbstractMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].remove(java.lang.Object)"
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 1
    ICount: 17
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslClientSessionCache:49"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:50"
        BranchSideFuncs:
        - "keyFor(java.lang.String,int)"
        - "getPeerPort()"
        - "getPeerHost()"
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:49"
        BranchSideFuncs:
        - "keyFor(java.lang.String,int)"
        - "getPeerPort()"
        - "getPeerHost()"
    - Branch String: "io.netty.handler.ssl.OpenSslClientSessionCache:49"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:50"
        BranchSideFuncs:
        - "keyFor(java.lang.String,int)"
        - "getPeerPort()"
        - "getPeerHost()"
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:49"
        BranchSideFuncs:
        - "keyFor(java.lang.String,int)"
        - "getPeerPort()"
        - "getPeerHost()"
    - Branch String: "io.netty.handler.ssl.OpenSslClientSessionCache:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:54"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:53"
        BranchSideFuncs:
        - "remove(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:49,1"
      Dst: "[java.lang.Thread].holdsLock(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:49,1"
      Dst: "[java.lang.AssertionError].<init>()"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:50,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getPeerHost()"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:50,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].getPeerPort()"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:50,1"
      Dst: "[io.netty.handler.ssl.OpenSslClientSessionCache].keyFor(java.lang.String,int)"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:54,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslClientSessionCache].setSession(long,java.lang.String,int)"
    functionSourceFile: "io.netty.handler.ssl.OpenSslClientSessionCache"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 87
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "long"
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslClientSessionCache].keyFor(java.lang.String,int)"
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].isValid()"
    - "[io.netty.handler.ssl.OpenSslSessionCache].removeSessionWithId(io.netty.handler.ssl.OpenSslSessionId)"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].sessionId()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].session()"
    - "[io.netty.internal.tcnative.SSL].setSession(long,long)"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].shouldBeSingleUse()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].invalidate()"
    - "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].updateLastAccessedTime()"
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 1
    ICount: 33
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.OpenSslClientSessionCache:60"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:65"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:64"
        BranchSideFuncs:
        - "get(java.lang.Object)"
    - Branch String: "io.netty.handler.ssl.OpenSslClientSessionCache:67"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:70"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:69"
        BranchSideFuncs:
        - "isValid()"
    - Branch String: "io.netty.handler.ssl.OpenSslClientSessionCache:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:76"
        BranchSideFuncs:
        - "sessionId()"
        - "removeSessionWithId(io.netty.handler.ssl.OpenSslSessionId)"
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:75"
        BranchSideFuncs:
        - "setSession(long,long)"
        - "session()"
    - Branch String: "io.netty.handler.ssl.OpenSslClientSessionCache:79"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:86"
        BranchSideFuncs:
        - "shouldBeSingleUse()"
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:85"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.OpenSslClientSessionCache:80"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.OpenSslClientSessionCache:83"
        BranchSideFuncs:
        - "updateLastAccessedTime()"
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:59,1"
      Dst: "[io.netty.handler.ssl.OpenSslClientSessionCache].keyFor(java.lang.String,int)"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:66,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:70,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].isValid()"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:71,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].sessionId()"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:71,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].removeSessionWithId(io.netty.handler.ssl.OpenSslSessionId)"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:76,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].session()"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:76,1"
      Dst: "[io.netty.internal.tcnative.SSL].setSession(long,long)"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:80,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].shouldBeSingleUse()"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:82,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].invalidate()"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:84,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache$NativeSslSession].updateLastAccessedTime()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.OpenSslClientSessionCache].clear()"
    functionSourceFile: "io.netty.handler.ssl.OpenSslClientSessionCache"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 100
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslSessionCache].clear()"
    - "[io.netty.util.collection.IntObjectHashMap].clear()"
    - "[io.netty.util.collection.ByteObjectHashMap].clear()"
    - "[io.netty.util.collection.LongObjectHashMap].clear()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].clear()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].clear()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].clear()"
    - "[io.netty.util.collection.CharObjectHashMap].clear()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].clear()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].clear()"
    - "[io.netty.util.collection.ShortObjectHashMap].clear()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].clear()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap:io.netty.util.collection.CharCollections$EmptyMap:io.netty.util.collection.IntCollections$EmptyMap:io.netty.util.collection.LongCollections$EmptyMap:io.netty.util.collection.ShortCollections$EmptyMap:java.security.Provider:java.util.AbstractMap:java.util.HashMap:java.util.Hashtable:java.util.IdentityHashMap:java.util.LinkedHashMap:java.util.Properties:java.util.TreeMap:java.util.WeakHashMap:java.util.concurrent.ConcurrentHashMap:java.util.jar.Attributes].clear()"
    - "[java.util.Map].clear()"
    functionUses: 1
    ICount: 5
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:97,1"
      Dst: "[io.netty.handler.ssl.OpenSslSessionCache].clear()"
    - Src: "io.netty.handler.ssl.OpenSslClientSessionCache:98,1"
      Dst: "[java.util.Map].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].<init>(io.netty.channel.kqueue.KQueueDatagramChannel)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.KQueueDatagramChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    - "[io.netty.channel.FixedRecvByteBufAllocator].<init>(int)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:50,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].<init>(io.netty.channel.kqueue.AbstractKQueueChannel)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:51,1"
      Dst: "[io.netty.channel.FixedRecvByteBufAllocator].<init>(int)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:51,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:58,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].getOptions()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:57,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 66
    functionLinenumberEnd: 101
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].isBroadcast()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getReceiveBufferSize()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getSendBufferSize()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].isReuseAddress()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].isLoopbackModeDisabled()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getInterface()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getNetworkInterface()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getTimeToLive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getTrafficClass()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].isReusePort()"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 6
    ICount: 57
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:67"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:70"
        BranchSideFuncs:
        - "isBroadcast()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:69"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:70"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:73"
        BranchSideFuncs:
        - "getReceiveBufferSize()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:72"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:73"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:76"
        BranchSideFuncs:
        - "getSendBufferSize()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:75"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:76"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:79"
        BranchSideFuncs:
        - "isReuseAddress()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:78"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:79"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:82"
        BranchSideFuncs:
        - "isLoopbackModeDisabled()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:81"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:82"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:85"
        BranchSideFuncs:
        - "getInterface()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:84"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:85"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:88"
        BranchSideFuncs:
        - "getNetworkInterface()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:87"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:88"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:91"
        BranchSideFuncs:
        - "getTimeToLive()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:90"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:91"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:94"
        BranchSideFuncs:
        - "getTrafficClass()"
        - "valueOf(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:93"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:94"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:97"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:96"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:97"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:100"
        BranchSideFuncs:
        - "valueOf(boolean)"
        - "isReusePort()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:99"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:68,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].isBroadcast()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:68,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:71,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getReceiveBufferSize()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:71,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:74,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getSendBufferSize()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:77,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].isReuseAddress()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:80,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].isLoopbackModeDisabled()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:83,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getInterface()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:86,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getNetworkInterface()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:89,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getTimeToLive()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:92,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getTrafficClass()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:98,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].isReusePort()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:100,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 23
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].isBroadcast()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 328
    functionLinenumberEnd: 332
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isBroadcast()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:329,1"
      Dst: "[io.netty.channel.unix.Socket].isBroadcast()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:331,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].isBroadcast()"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 448
    functionLinenumberEnd: 450
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isBroadcast(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:449"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:448"
        BranchSideFuncs:
        - "isBroadcast(int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:449,1"
      Dst: "[io.netty.channel.unix.Socket].isBroadcast(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Socket].isBroadcast(int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getReceiveBufferSize()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 275
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getReceiveBufferSize()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:272,1"
      Dst: "[io.netty.channel.unix.Socket].getReceiveBufferSize()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:274,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getSendBufferSize()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 252
    functionLinenumberEnd: 256
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getSendBufferSize()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:253,1"
      Dst: "[io.netty.channel.unix.Socket].getSendBufferSize()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:255,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].isReuseAddress()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 309
    functionLinenumberEnd: 313
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isReuseAddress()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:310,1"
      Dst: "[io.netty.channel.unix.Socket].isReuseAddress()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:312,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].isLoopbackModeDisabled()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 346
    functionLinenumberEnd: 348
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getInterface()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 366
    functionLinenumberEnd: 368
    functionDepth: 0
    returnType: "java.net.InetAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getNetworkInterface()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 376
    functionLinenumberEnd: 378
    functionDepth: 0
    returnType: "java.net.NetworkInterface"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getTimeToLive()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 356
    functionLinenumberEnd: 358
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getTrafficClass()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 290
    functionLinenumberEnd: 294
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].getTrafficClass()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:291,1"
      Dst: "[io.netty.channel.unix.Socket].getTrafficClass()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:293,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].isReusePort()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 156
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isReusePort()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:153,1"
      Dst: "[io.netty.channel.unix.Socket].isReusePort()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:155,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 135
    functionDepth: 6
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setBroadcast(boolean)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setReceiveBufferSize(int)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setSendBufferSize(int)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setReuseAddress(boolean)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setLoopbackModeDisabled(boolean)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setInterface(java.net.InetAddress)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setNetworkInterface(java.net.NetworkInterface)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setTimeToLive(int)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setTrafficClass(int)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setActiveOnOpen(boolean)"
    - "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setReusePort(boolean)"
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 2
    ICount: 71
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:108"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:110"
        BranchSideFuncs:
        - "setBroadcast(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:109"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:110"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:112"
        BranchSideFuncs:
        - "setReceiveBufferSize(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:111"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:112"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:114"
        BranchSideFuncs:
        - "setSendBufferSize(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:113"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:114"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:116"
        BranchSideFuncs:
        - "setReuseAddress(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:115"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:116"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:118"
        BranchSideFuncs:
        - "setLoopbackModeDisabled(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:117"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:118"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:120"
        BranchSideFuncs:
        - "setInterface(java.net.InetAddress)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:119"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:120"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:122"
        BranchSideFuncs:
        - "setNetworkInterface(java.net.NetworkInterface)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:121"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:122"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:124"
        BranchSideFuncs:
        - "setTimeToLive(int)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:123"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:124"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:126"
        BranchSideFuncs:
        - "setTrafficClass(int)"
        - "intValue()"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:125"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:126"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:128"
        BranchSideFuncs:
        - "setActiveOnOpen(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:127"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:128"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:131"
        BranchSideFuncs:
        - "booleanValue()"
        - "setReusePort(boolean)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:130"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:106,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:109,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:109,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setBroadcast(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:111,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:111,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:113,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setSendBufferSize(int)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:115,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setReuseAddress(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:117,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setLoopbackModeDisabled(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:119,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setInterface(java.net.InetAddress)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:121,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setNetworkInterface(java.net.NetworkInterface)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:123,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setTimeToLive(int)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:125,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setTrafficClass(int)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:127,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setActiveOnOpen(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:129,1"
      Dst: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setReusePort(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:131,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 24
    CyclomaticComplexity: 11
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setBroadcast(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 337
    functionLinenumberEnd: 342
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setBroadcast(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:338,1"
      Dst: "[io.netty.channel.unix.Socket].setBroadcast(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:341,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.unix.Socket].setBroadcast(boolean)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: 492
    functionLinenumberEnd: 495
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setBroadcast(int,int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.channel.unix.Socket:493"
      Branch Sides:
      - BranchSide: "io.netty.channel.unix.Socket:493"
        BranchSideFuncs:
        - "setBroadcast(int,int)"
      - BranchSide: "io.netty.channel.unix.Socket:492"
        BranchSideFuncs:
        - "setBroadcast(int,int)"
    Callsites:
    - Src: "io.netty.channel.unix.Socket:493,1"
      Dst: "[io.netty.channel.unix.Socket].setBroadcast(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.unix.Socket].setBroadcast(int,int)"
    functionSourceFile: "io.netty.channel.unix.Socket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 280
    functionLinenumberEnd: 285
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setReceiveBufferSize(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:281,1"
      Dst: "[io.netty.channel.unix.Socket].setReceiveBufferSize(int)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:284,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setSendBufferSize(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 261
    functionLinenumberEnd: 266
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setSendBufferSize(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:262,1"
      Dst: "[io.netty.channel.unix.Socket].setSendBufferSize(int)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:265,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setReuseAddress(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 318
    functionLinenumberEnd: 323
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setReuseAddress(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:319,1"
      Dst: "[io.netty.channel.unix.Socket].setReuseAddress(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:322,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setLoopbackModeDisabled(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 351
    functionLinenumberEnd: 353
    functionDepth: 0
    returnType: "io.netty.channel.socket.DatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:352,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setInterface(java.net.InetAddress)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 371
    functionLinenumberEnd: 373
    functionDepth: 0
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "java.net.InetAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:372,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setNetworkInterface(java.net.NetworkInterface)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 381
    functionLinenumberEnd: 383
    functionDepth: 0
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "java.net.NetworkInterface"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:382,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setTimeToLive(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 361
    functionLinenumberEnd: 363
    functionDepth: 0
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:362,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setTrafficClass(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 299
    functionLinenumberEnd: 304
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setTrafficClass(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:300,1"
      Dst: "[io.netty.channel.unix.Socket].setTrafficClass(int)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:303,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setActiveOnOpen(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 137
    functionLinenumberEnd: 143
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].isRegistered()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isRegistered()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.channel.Channel].isRegistered()"
    functionUses: 1
    ICount: 10
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:138"
      Branch Sides:
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:141"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:138,1"
      Dst: "[io.netty.channel.Channel].isRegistered()"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:139,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setReusePort(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 172
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setReusePort(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:168,1"
      Dst: "[io.netty.channel.unix.Socket].setReusePort(boolean)"
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:171,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].getActiveOnOpen()"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 176
    functionLinenumberEnd: 179
    functionDepth: 1
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:177,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setRcvAllocTransportProvidesGuess(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:183,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 189
    functionLinenumberEnd: 192
    functionDepth: 4
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:190,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 196
    functionLinenumberEnd: 199
    functionDepth: 4
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:197,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:203,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setAutoClose(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 211
    functionDepth: 1
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:209,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setAutoClose(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setAutoRead(boolean)"
    functionUses: 7
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:215,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 220
    functionLinenumberEnd: 223
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:221,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 226
    functionLinenumberEnd: 229
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteSpinCount(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:227,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 232
    functionLinenumberEnd: 235
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:233,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:239,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 245
    functionLinenumberEnd: 248
    functionDepth: 3
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.KQueueChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:246,1"
      Dst: "[io.netty.channel.kqueue.KQueueChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.KQueueDatagramChannelConfig].setMaxMessagesPerWrite(int)"
    functionSourceFile: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    linkageType: ""
    functionLinenumber: 386
    functionLinenumberEnd: 389
    functionDepth: 2
    returnType: "io.netty.channel.kqueue.KQueueDatagramChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerWrite(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.KQueueDatagramChannelConfig:387,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].setMaxMessagesPerWrite(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksInitResponseDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksInitResponseDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksInitResponseDecoder:33,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksInitResponseDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksInitResponseDecoder"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 57
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.ReplayingDecoder].state()"
    - "[io.netty.handler.codec.socks.SocksProtocolVersion].byteValue()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.socks.SocksAuthScheme].valueOf(byte)"
    - "[io.netty.handler.codec.socks.SocksInitResponse].<init>(io.netty.handler.codec.socks.SocksAuthScheme)"
    - "[io.netty.channel.AbstractChannelHandlerContext:java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.lang.Error].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    functionUses: 1
    ICount: 33
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksInitResponseDecoder:40"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksInitResponseDecoder:44"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksInitResponseDecoder:43"
        BranchSideFuncs:
        - "checkpoint(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksInitResponseDecoder:38,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].state()"
    - Src: "io.netty.handler.codec.socks.SocksInitResponseDecoder:38,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.socks.SocksInitResponseDecoder:40,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.socks.SocksInitResponseDecoder:40,1"
      Dst: "[io.netty.handler.codec.socks.SocksProtocolVersion].byteValue()"
    - Src: "io.netty.handler.codec.socks.SocksInitResponseDecoder:41,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.socks.SocksInitResponseDecoder:44,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.socks.SocksInitResponseDecoder:47,1"
      Dst: "[io.netty.handler.codec.socks.SocksAuthScheme].valueOf(byte)"
    - Src: "io.netty.handler.codec.socks.SocksInitResponseDecoder:48,1"
      Dst: "[io.netty.handler.codec.socks.SocksInitResponse].<init>(io.netty.handler.codec.socks.SocksAuthScheme)"
    - Src: "io.netty.handler.codec.socks.SocksInitResponseDecoder:52,1"
      Dst: "[java.lang.Error].<init>()"
    - Src: "io.netty.handler.codec.socks.SocksInitResponseDecoder:55,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.socks.SocksInitResponseDecoder:55,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.socks.SocksInitResponse].<init>(io.netty.handler.codec.socks.SocksAuthScheme)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksInitResponse"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 34
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.socks.SocksAuthScheme"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksResponse].<init>(io.netty.handler.codec.socks.SocksResponseType)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 1
    ICount: 8
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksInitResponse:31,1"
      Dst: "[io.netty.handler.codec.socks.SocksResponse].<init>(io.netty.handler.codec.socks.SocksResponseType)"
    - Src: "io.netty.handler.codec.socks.SocksInitResponse:32,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine$1].<init>(io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener)"
    functionSourceFile: "io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine$1"
    linkageType: ""
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine$1:74,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine$1].protocols()"
    functionSourceFile: "io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.ApplicationProtocolNegotiator].protocols()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine$1:77,1"
      Dst: "[io.netty.handler.ssl.ApplicationProtocolNegotiator].protocols()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine$1].selected(java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener].selected(java.lang.String)"
    - "[io.netty.handler.ssl.SslUtils].toSSLHandshakeException(java.lang.Throwable)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine$1:83,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener].selected(java.lang.String)"
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine$1:85,1"
      Dst: "[io.netty.handler.ssl.SslUtils].toSSLHandshakeException(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine$1].unsupported()"
    functionSourceFile: "io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener].unsupported()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine$1:91,1"
      Dst: "[io.netty.handler.ssl.JdkApplicationProtocolNegotiator$ProtocolSelectionListener].unsupported()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].<init>()"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - "[io.netty.channel.ChannelHandlerAdapter].ensureNotSharable()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:49,1"
      Dst: "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:50,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].ensureNotSharable()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].<init>(io.netty.channel.ChannelInboundHandler,io.netty.channel.ChannelOutboundHandler)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelInboundHandler"
    - "io.netty.channel.ChannelOutboundHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - "[io.netty.channel.ChannelHandlerAdapter].ensureNotSharable()"
    - "[io.netty.channel.CombinedChannelDuplexHandler].init(io.netty.channel.ChannelInboundHandler,io.netty.channel.ChannelOutboundHandler)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:56,1"
      Dst: "[io.netty.channel.ChannelDuplexHandler].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:57,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].ensureNotSharable()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:58,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].init(io.netty.channel.ChannelInboundHandler,io.netty.channel.ChannelOutboundHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].init(io.netty.channel.ChannelInboundHandler,io.netty.channel.ChannelOutboundHandler)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelInboundHandler"
    - "io.netty.channel.ChannelOutboundHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler].validate(io.netty.channel.ChannelInboundHandler,io.netty.channel.ChannelOutboundHandler)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:70,1"
      Dst: "[io.netty.channel.CombinedChannelDuplexHandler].validate(io.netty.channel.ChannelInboundHandler,io.netty.channel.ChannelOutboundHandler)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.CombinedChannelDuplexHandler].validate(io.netty.channel.ChannelInboundHandler,io.netty.channel.ChannelOutboundHandler)"
    functionSourceFile: "io.netty.channel.CombinedChannelDuplexHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelInboundHandler"
    - "io.netty.channel.ChannelOutboundHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.Class].getSimpleName()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 45
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:76"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:82"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:81"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:85"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.CombinedChannelDuplexHandler:90"
      Branch Sides:
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:95"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.CombinedChannelDuplexHandler:94"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:77,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:77,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:78,1"
      Dst: "[java.lang.Class].getSimpleName()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:78,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:78,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:82,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.CombinedChannelDuplexHandler:88,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishMessage].copy()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:52,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:52,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:52,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishMessage].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttPublishVariableHeader,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:67,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:67,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].variableHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:67,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttPublishVariableHeader,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishMessage].duplicate()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:57,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:57,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:57,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishMessage].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:62,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:62,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:62,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishMessage].refCnt()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 4
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.buffer.EmptyByteBuf].refCnt()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 3
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:72,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:72,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishMessage].retain()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionDepth: 4
    returnType: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 1
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:77,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:77,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishMessage].retain(int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - "[io.netty.buffer.ByteBuf].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:83,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:83,1"
      Dst: "[io.netty.buffer.ByteBuf].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishMessage].touch()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    linkageType: ""
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionDepth: 4
    returnType: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.SwappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.SimpleLeakAwareByteBuf:io.netty.buffer.UnreleasableByteBuf].touch()"
    - "[io.netty.buffer.ByteBuf].touch()"
    functionUses: 1
    ICount: 4
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:89,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:89,1"
      Dst: "[io.netty.buffer.ByteBuf].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishMessage].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionDepth: 4
    returnType: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.SimpleLeakAwareByteBuf:io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 1
    ICount: 5
    EdgeCount: 9
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:95,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:95,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishMessage].release()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    linkageType: ""
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionDepth: 4
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.util.ReferenceCounted].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 4
    ICount: 4
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:101,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:101,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttPublishMessage].release(int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttPublishMessage"
    linkageType: ""
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionDepth: 4
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - "[io.netty.buffer.WrappedByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release(int)"
    - "[io.netty.buffer.SwappedByteBuf].release(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release(int)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release(int)"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf].release(int)"
    - "[io.netty.util.ReferenceCounted].release(int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 12
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:106,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttPublishMessage].content()"
    - Src: "io.netty.handler.codec.mqtt.MqttPublishMessage:106,1"
      Dst: "[io.netty.util.ReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsQueryContextManager].add(io.netty.resolver.dns.DnsQueryContext)"
    functionSourceFile: "io.netty.resolver.dns.DnsQueryContextManager"
    linkageType: ""
    functionLinenumber: 41
    functionLinenumberEnd: 62
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.DnsQueryContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsQueryContextManager].getOrCreateContextMap(java.net.InetSocketAddress)"
    - "[io.netty.resolver.dns.DnsQueryContext].nameServerAddr()"
    - "[io.netty.handler.ssl.util.ThreadLocalInsecureRandom].nextInt(int)"
    - "[java.util.Random].nextInt(int)"
    - "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - "[io.netty.util.collection.IntObjectHashMap].containsKey(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].containsKey(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].put(int,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].put(int,java.lang.Object)"
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.resolver.dns.DnsQueryContext].question()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.collection.IntObjectMap].containsKey(int)"
    - "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 32
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsQueryContextManager:50"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:55"
        BranchSideFuncs:
        - "put(int,java.lang.Object)"
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:54"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsQueryContextManager:57"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:50"
        BranchSideFuncs:
        - "<init>()"
        - "question()"
        - "append(java.lang.Object)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:49"
        BranchSideFuncs:
        - "containsKey(int)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:42,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].nameServerAddr()"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:42,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContextManager].getOrCreateContextMap(java.net.InetSocketAddress)"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:44,1"
      Dst: "[io.netty.util.internal.PlatformDependent].threadLocalRandom()"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:44,1"
      Dst: "[java.util.Random].nextInt(int)"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:50,1"
      Dst: "[io.netty.util.collection.IntObjectMap].containsKey(int)"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:51,1"
      Dst: "[io.netty.util.collection.IntObjectMap].put(int,java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:58,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:58,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:58,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContext].question()"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:58,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:58,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:58,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsQueryContextManager].getOrCreateContextMap(java.net.InetSocketAddress)"
    functionSourceFile: "io.netty.resolver.dns.DnsQueryContextManager"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 127
    functionDepth: 1
    returnType: "io.netty.util.collection.IntObjectMap"
    argCount: 1
    argTypes:
    - "java.net.InetSocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.ByteObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].get(java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].get(java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].get(java.lang.Object)"
    - "[java.util.jar.Attributes].get(java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].<init>()"
    - "[java.net.InetSocketAddress].getAddress()"
    - "[java.net.InetSocketAddress].getPort()"
    - "[io.netty.util.collection.ShortObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.serialization.ReferenceMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.CharObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.IntObjectHashMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].put(java.lang.Object,java.lang.Object)"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].put(java.lang.Object,java.lang.Object)"
    - "[java.net.Inet4Address].isLoopbackAddress()"
    - "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    - "[io.netty.resolver.dns.DnsQueryContextManager].toCompactAddress(java.net.Inet4Address)"
    - "[java.net.Inet6Address].isLoopbackAddress()"
    - "[java.net.Inet6Address].isIPv4CompatibleAddress()"
    - "[io.netty.resolver.dns.DnsQueryContextManager].toIPv4Address(java.net.Inet6Address)"
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 1
    ICount: 56
    EdgeCount: 104
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsQueryContextManager:98"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:101"
        BranchSideFuncs:
        - "getAddress()"
        - "<init>()"
        - "getPort()"
    - Branch String: "io.netty.resolver.dns.DnsQueryContextManager:107"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:102"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "isLoopbackAddress()"
        - "getAddress()"
        - "toIPv4Address(java.net.Inet6Address)"
        - "<init>()"
        - "<init>(java.net.InetAddress,int)"
        - "toCompactAddress(java.net.Inet4Address)"
        - "isIPv4CompatibleAddress()"
        - "getPort()"
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:101"
        BranchSideFuncs:
        - "getAddress()"
        - "<init>()"
        - "getPort()"
    - Branch String: "io.netty.resolver.dns.DnsQueryContextManager:110"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:113"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:112"
        BranchSideFuncs:
        - "toCompactAddress(java.net.Inet4Address)"
    - Branch String: "io.netty.resolver.dns.DnsQueryContextManager:107"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:125"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "isLoopbackAddress()"
        - "getAddress()"
        - "toIPv4Address(java.net.Inet6Address)"
        - "<init>()"
        - "<init>(java.net.InetAddress,int)"
        - "toCompactAddress(java.net.Inet4Address)"
        - "isIPv4CompatibleAddress()"
        - "getPort()"
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:124"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.DnsQueryContextManager:118"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:120"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:119"
        BranchSideFuncs:
        - "isIPv4CompatibleAddress()"
    - Branch String: "io.netty.resolver.dns.DnsQueryContextManager:120"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:125"
        BranchSideFuncs:
        - "put(java.lang.Object,java.lang.Object)"
        - "toIPv4Address(java.net.Inet6Address)"
        - "<init>(java.net.InetAddress,int)"
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:124"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:97,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:102,1"
      Dst: "[io.netty.util.collection.IntObjectHashMap].<init>()"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:103,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:104,1"
      Dst: "[java.net.InetSocketAddress].getPort()"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:105,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:110,1"
      Dst: "[java.net.Inet4Address].isLoopbackAddress()"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:111,1"
      Dst: "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:113,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContextManager].toCompactAddress(java.net.Inet4Address)"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:118,1"
      Dst: "[java.net.Inet6Address].isLoopbackAddress()"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:120,1"
      Dst: "[java.net.Inet6Address].isIPv4CompatibleAddress()"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:121,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContextManager].toIPv4Address(java.net.Inet6Address)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 5
  - functionName: "[io.netty.resolver.dns.DnsQueryContextManager].toCompactAddress(java.net.Inet4Address)"
    functionSourceFile: "io.netty.resolver.dns.DnsQueryContextManager"
    linkageType: ""
    functionLinenumber: 129
    functionLinenumberEnd: 136
    functionDepth: 0
    returnType: "java.net.Inet6Address"
    argCount: 1
    argTypes:
    - "java.net.Inet4Address"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Inet4Address].getAddress()"
    - "[java.net.InetAddress].getByAddress(byte[])"
    - "[java.lang.Error].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 30
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:130,1"
      Dst: "[java.net.Inet4Address].getAddress()"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:133,1"
      Dst: "[java.net.InetAddress].getByAddress(byte[])"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:135,1"
      Dst: "[java.lang.Error].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsQueryContextManager].toIPv4Address(java.net.Inet6Address)"
    functionSourceFile: "io.netty.resolver.dns.DnsQueryContextManager"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 146
    functionDepth: 0
    returnType: "java.net.Inet4Address"
    argCount: 1
    argTypes:
    - "java.net.Inet6Address"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.Inet6Address].getAddress()"
    - "[java.net.InetAddress].getByAddress(byte[])"
    - "[java.lang.Error].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 18
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:140,1"
      Dst: "[java.net.Inet6Address].getAddress()"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:143,1"
      Dst: "[java.net.InetAddress].getByAddress(byte[])"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:145,1"
      Dst: "[java.lang.Error].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsQueryContextManager].remove(java.net.InetSocketAddress,int)"
    functionSourceFile: "io.netty.resolver.dns.DnsQueryContextManager"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 87
    functionDepth: 1
    returnType: "io.netty.resolver.dns.DnsQueryContext"
    argCount: 2
    argTypes:
    - "java.net.InetSocketAddress"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsQueryContextManager].getContextMap(java.net.InetSocketAddress)"
    - "[io.netty.util.collection.IntObjectHashMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].remove(int)"
    - "[io.netty.util.collection.IntCollections$EmptyMap].remove(int)"
    - "[io.netty.util.collection.IntObjectMap].remove(int)"
    functionUses: 1
    ICount: 14
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.DnsQueryContextManager:80"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:84"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.DnsQueryContextManager:83"
        BranchSideFuncs:
        - "remove(int)"
    Callsites:
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:79,1"
      Dst: "[io.netty.resolver.dns.DnsQueryContextManager].getContextMap(java.net.InetSocketAddress)"
    - Src: "io.netty.resolver.dns.DnsQueryContextManager:85,1"
      Dst: "[io.netty.util.collection.IntObjectMap].remove(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].<init>(io.netty.channel.AbstractChannel$AbstractUnsafe,io.netty.channel.ChannelPromise,io.netty.channel.ChannelOutboundBuffer,java.lang.Throwable,boolean,java.nio.channels.ClosedChannelException,boolean)"
    functionSourceFile: "io.netty.channel.AbstractChannel$AbstractUnsafe$5"
    linkageType: ""
    functionLinenumber: 705
    functionLinenumberEnd: 707
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "io.netty.channel.AbstractChannel$AbstractUnsafe"
    - "io.netty.channel.ChannelPromise"
    - "io.netty.channel.ChannelOutboundBuffer"
    - "java.lang.Throwable"
    - "boolean"
    - "java.nio.channels.ClosedChannelException"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 17
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$5:706,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    functionSourceFile: "io.netty.channel.AbstractChannel$AbstractUnsafe$5"
    linkageType: ""
    functionLinenumber: 710
    functionLinenumberEnd: 727
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].access$900(io.netty.channel.AbstractChannel$AbstractUnsafe,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].<init>(io.netty.channel.AbstractChannel$AbstractUnsafe$5)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].access$1100(io.netty.channel.AbstractChannel$AbstractUnsafe,java.lang.Runnable)"
    functionUses: 50
    ICount: 16
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$5:711,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].access$900(io.netty.channel.AbstractChannel$AbstractUnsafe,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$5:714,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].<init>(io.netty.channel.AbstractChannel$AbstractUnsafe$5)"
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$5:714,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].access$1100(io.netty.channel.AbstractChannel$AbstractUnsafe,java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe].closeOnRead(io.netty.channel.ChannelPipeline)"
    functionSourceFile: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe"
    linkageType: ""
    functionLinenumber: 99
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPipeline"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].isInputShutdown0()"
    - "[io.netty.channel.nio.AbstractNioByteChannel].isInputShutdown0()"
    - "[io.netty.channel.nio.AbstractNioByteChannel].access$000(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].shutdownInput()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].shutdownInput()"
    - "[io.netty.channel.DefaultChannelPipeline].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - "[io.netty.channel.nio.AbstractNioByteChannel].access$100(io.netty.channel.nio.AbstractNioByteChannel)"
    - "[io.netty.channel.nio.AbstractNioByteChannel].access$102(io.netty.channel.nio.AbstractNioByteChannel,boolean)"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.channel.nio.AbstractNioByteChannel].shutdownInput()"
    - "[io.netty.channel.ChannelPipeline].fireUserEventTriggered(java.lang.Object)"
    functionUses: 2
    ICount: 25
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:100"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:107"
        BranchSideFuncs:
        - "access$000(io.netty.channel.ChannelConfig)"
        - "config()"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:106"
        BranchSideFuncs:
        - "access$100(io.netty.channel.nio.AbstractNioByteChannel)"
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:101"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:105"
        BranchSideFuncs:
        - "shutdownInput()"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:104"
        BranchSideFuncs:
        - "close(io.netty.channel.ChannelPromise)"
        - "voidPromise()"
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:107"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:111"
        BranchSideFuncs:
        - "fireUserEventTriggered(java.lang.Object)"
        - "access$102(io.netty.channel.nio.AbstractNioByteChannel,boolean)"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:110"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:100,1"
      Dst: "[io.netty.channel.nio.AbstractNioByteChannel].isInputShutdown0()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:101,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:101,1"
      Dst: "[io.netty.channel.nio.AbstractNioByteChannel].access$000(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:102,1"
      Dst: "[io.netty.channel.nio.AbstractNioByteChannel].shutdownInput()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:103,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireUserEventTriggered(java.lang.Object)"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:105,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:105,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:107,1"
      Dst: "[io.netty.channel.nio.AbstractNioByteChannel].access$100(io.netty.channel.nio.AbstractNioByteChannel)"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:108,1"
      Dst: "[io.netty.channel.nio.AbstractNioByteChannel].access$102(io.netty.channel.nio.AbstractNioByteChannel,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe].handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.RecvByteBufAllocator$Handle)"
    functionSourceFile: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe"
    linkageType: ""
    functionLinenumber: 114
    functionLinenumberEnd: 133
    functionDepth: 1
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.channel.ChannelPipeline"
    - "io.netty.buffer.ByteBuf"
    - "java.lang.Throwable"
    - "boolean"
    - "io.netty.channel.RecvByteBufAllocator$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].readComplete()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl:io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].readComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe].closeOnRead(io.netty.channel.ChannelPipeline)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].readComplete()"
    - "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 1
    ICount: 24
    EdgeCount: 22
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:115"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:123"
        BranchSideFuncs:
        - "isReadable()"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:122"
        BranchSideFuncs:
        - "fireChannelReadComplete()"
        - "fireExceptionCaught(java.lang.Throwable)"
        - "readComplete()"
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:116"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:120"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:119"
        BranchSideFuncs:
        - "release()"
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:129"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:130"
        BranchSideFuncs:
        - "closeOnRead(io.netty.channel.ChannelPipeline)"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:129"
        BranchSideFuncs:
        - "closeOnRead(io.netty.channel.ChannelPipeline)"
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:129"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:130"
        BranchSideFuncs:
        - "closeOnRead(io.netty.channel.ChannelPipeline)"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:129"
        BranchSideFuncs:
        - "closeOnRead(io.netty.channel.ChannelPipeline)"
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:129"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:132"
        BranchSideFuncs:
        - "closeOnRead(io.netty.channel.ChannelPipeline)"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:131"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:116,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:118,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:120,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:123,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].readComplete()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:124,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:125,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:130,1"
      Dst: "[io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe].closeOnRead(io.netty.channel.ChannelPipeline)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 6
  - functionName: "[io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe].read()"
    functionSourceFile: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe"
    linkageType: ""
    functionLinenumber: 135
    functionLinenumberEnd: 190
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.socket.nio.NioSocketChannel].config()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].config()"
    - "[io.netty.channel.nio.AbstractNioByteChannel].shouldBreakReadReady(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.nio.AbstractNioChannel].clearReadPending()"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.DefaultChannelConfig].getAllocator()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.socket.nio.NioSocketChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].lastBytesRead(int)"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead(int)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].lastBytesRead(int)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].lastBytesRead()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].lastBytesRead()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].lastBytesRead()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].incMessagesRead(int)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].incMessagesRead(int)"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].incMessagesRead(int)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].continueReading()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].continueReading()"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].continueReading()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].readComplete()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].readComplete()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].readComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe].closeOnRead(io.netty.channel.ChannelPipeline)"
    - "[io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe].handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.RecvByteBufAllocator$Handle)"
    - "[io.netty.channel.DefaultChannelConfig].isAutoRead()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe].removeReadOp()"
    - "[io.netty.channel.Channel].config()"
    - "[io.netty.channel.ChannelConfig].getAllocator()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].allocate(io.netty.buffer.ByteBufAllocator)"
    - "[io.netty.channel.nio.AbstractNioByteChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead(int)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].incMessagesRead(int)"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].continueReading()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].readComplete()"
    - "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.ChannelConfig].isAutoRead()"
    functionUses: 1
    ICount: 73
    EdgeCount: 63
    BranchProfiles:
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:137"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:141"
        BranchSideFuncs:
        - "clearReadPending()"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:140"
        BranchSideFuncs:
        - "reset(io.netty.channel.ChannelConfig)"
        - "recvBufAllocHandle()"
        - "pipeline()"
        - "getAllocator()"
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:152"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:164"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "continueReading()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "closeOnRead(io.netty.channel.ChannelPipeline)"
        - "recvBufAllocHandle()"
        - "pipeline()"
        - "fireChannelRead(java.lang.Object)"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "incMessagesRead(int)"
        - "getAllocator()"
        - "handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.RecvByteBufAllocator$Handle)"
        - "readComplete()"
        - "isAutoRead()"
        - "lastBytesRead()"
        - "release()"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:163"
        BranchSideFuncs:
        - "continueReading()"
        - "fireChannelRead(java.lang.Object)"
        - "incMessagesRead(int)"
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:156"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:-1"
        BranchSideFuncs:
        - "lastBytesRead()"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:157"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:170"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "continueReading()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "closeOnRead(io.netty.channel.ChannelPipeline)"
        - "recvBufAllocHandle()"
        - "pipeline()"
        - "fireChannelRead(java.lang.Object)"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "incMessagesRead(int)"
        - "getAllocator()"
        - "handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.RecvByteBufAllocator$Handle)"
        - "readComplete()"
        - "isAutoRead()"
        - "lastBytesRead()"
        - "release()"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:169"
        BranchSideFuncs:
        - "fireChannelReadComplete()"
        - "readComplete()"
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:168"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:150"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "continueReading()"
        - "reset(io.netty.channel.ChannelConfig)"
        - "closeOnRead(io.netty.channel.ChannelPipeline)"
        - "recvBufAllocHandle()"
        - "pipeline()"
        - "fireChannelRead(java.lang.Object)"
        - "fireChannelReadComplete()"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
        - "incMessagesRead(int)"
        - "getAllocator()"
        - "handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.RecvByteBufAllocator$Handle)"
        - "readComplete()"
        - "isAutoRead()"
        - "lastBytesRead()"
        - "release()"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:149"
        BranchSideFuncs:
        - "doReadBytes(io.netty.buffer.ByteBuf)"
        - "lastBytesRead(int)"
        - "allocate(io.netty.buffer.ByteBufAllocator)"
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:173"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:185"
        BranchSideFuncs:
        - "closeOnRead(io.netty.channel.ChannelPipeline)"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:184"
        BranchSideFuncs:
        - "isAutoRead()"
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:185"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:189"
        BranchSideFuncs:
        - "removeReadOp()"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:188"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:185"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:189"
        BranchSideFuncs:
        - "removeReadOp()"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:188"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:185"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:189"
        BranchSideFuncs:
        - "removeReadOp()"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:188"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:185"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:189"
        BranchSideFuncs:
        - "removeReadOp()"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:188"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:185"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:188"
        BranchSideFuncs:
        - "removeReadOp()"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:187"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:185"
      Branch Sides:
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:188"
        BranchSideFuncs:
        - "removeReadOp()"
      - BranchSide: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:187"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:136,1"
      Dst: "[io.netty.channel.Channel].config()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:137,1"
      Dst: "[io.netty.channel.nio.AbstractNioByteChannel].shouldBreakReadReady(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:138,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel].clearReadPending()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:141,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:142,1"
      Dst: "[io.netty.channel.ChannelConfig].getAllocator()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:143,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].recvBufAllocHandle()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:144,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].reset(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:150,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].allocate(io.netty.buffer.ByteBufAllocator)"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:151,1"
      Dst: "[io.netty.channel.nio.AbstractNioByteChannel].doReadBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:151,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead(int)"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:152,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].lastBytesRead()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:154,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:164,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].incMessagesRead(int)"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:166,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:168,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].continueReading()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:170,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].readComplete()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:171,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:174,1"
      Dst: "[io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe].closeOnRead(io.netty.channel.ChannelPipeline)"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:185,1"
      Dst: "[io.netty.channel.ChannelConfig].isAutoRead()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:186,1"
      Dst: "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe].removeReadOp()"
    - Src: "io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe:177,1"
      Dst: "[io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe].handleReadException(io.netty.channel.ChannelPipeline,io.netty.buffer.ByteBuf,java.lang.Throwable,boolean,io.netty.channel.RecvByteBufAllocator$Handle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 23
    CyclomaticComplexity: 11
  - functionName: "[io.netty.handler.codec.serialization.WeakReferenceMap].fold(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.serialization.WeakReferenceMap"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "java.lang.ref.Reference"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.ref.WeakReference].<init>(java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.serialization.WeakReferenceMap:30,1"
      Dst: "[java.lang.ref.WeakReference].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdType].values()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdType"
    linkageType: ""
    functionLinenumber: 18
    functionLinenumberEnd: 20
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksCmdType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdType:19,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdType].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksCmdType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdType:19,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdType].<init>(java.lang.String,int,byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdType"
    linkageType: ""
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 4
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdType:27,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdType].fromByte(byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.socks.SocksCmdType"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksCmdType].valueOf(byte)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdType:36,1"
      Dst: "[io.netty.handler.codec.socks.SocksCmdType].valueOf(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdType].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdType"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 46
    functionDepth: 1
    returnType: "io.netty.handler.codec.socks.SocksCmdType"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksCmdType].values()"
    functionUses: 1
    ICount: 15
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksCmdType:40"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdType:45"
        BranchSideFuncs:
        - "values()"
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdType:44"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socks.SocksCmdType:41"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdType:40"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksCmdType:39"
        BranchSideFuncs:
        - "values()"
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdType:40,1"
      Dst: "[io.netty.handler.codec.socks.SocksCmdType].values()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].<init>(java.lang.String,java.lang.String,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].<init>(java.lang.String,java.lang.String,boolean,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:55,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].<init>(java.lang.String,java.lang.String,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].<init>(java.lang.String,java.lang.String,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].<init>(java.lang.String,java.lang.String,boolean,int,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:75,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].<init>(java.lang.String,java.lang.String,boolean,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].<init>(java.lang.String,java.lang.String,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].newBuilder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowExtensions(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].maxFramePayloadLength(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowMaskMismatch(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].build()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:98,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].newBuilder()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:99,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowExtensions(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:100,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].maxFramePayloadLength(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:101,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowMaskMismatch(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:102,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].build()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:98,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].<init>(java.lang.String,java.lang.String,io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].sendUnsupportedWebSocketVersionResponse(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 10
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].sendUnsupportedVersionResponse(io.netty.channel.Channel)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory:159,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketServerHandshakerFactory].sendUnsupportedVersionResponse(io.netty.channel.Channel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.net.URI"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "java.lang.String"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:72,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.net.URI"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "java.lang.String"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,long)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:103,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 9
    argTypes:
    - "java.net.URI"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "java.lang.String"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    - "boolean"
    - "boolean"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,long,boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:137,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,boolean,io.netty.handler.codec.http.HttpHeaders,int,boolean,boolean,long,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 10
    argTypes:
    - "java.net.URI"
    - "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    - "java.lang.String"
    - "boolean"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "int"
    - "boolean"
    - "boolean"
    - "long"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,io.netty.handler.codec.http.HttpHeaders,int,long,boolean)"
    functionUses: 0
    ICount: 16
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:174,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].<init>(java.net.URI,io.netty.handler.codec.http.websocketx.WebSocketVersion,java.lang.String,io.netty.handler.codec.http.HttpHeaders,int,long,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13].newHandshakeRequest()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13"
    linkageType: ""
    functionLinenumber: 200
    functionLinenumberEnd: 249
    functionDepth: 8
    returnType: "io.netty.handler.codec.http.FullHttpRequest"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].uri()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil].randomBytes(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil].base64(byte[])"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketUtil].sha1(byte[])"
    - "[io.netty.util.internal.logging.Log4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.CommonsLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.JdkLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].upgradeUrl(java.net.URI)"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].websocketHostValue(java.net.URI)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].websocketOriginValue(java.net.URI)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].expectedSubprotocol()"
    - "[java.lang.String].isEmpty()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketVersion].toAsciiString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].version()"
    - "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    functionUses: 1
    ICount: 66
    EdgeCount: 52
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:211"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:218"
        BranchSideFuncs:
        - "debug(java.lang.String,java.lang.Object,java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:217"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf)"
        - "headers()"
        - "upgradeUrl(java.net.URI)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:222"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:231"
        BranchSideFuncs:
        - "add(io.netty.handler.codec.http.HttpHeaders)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:230"
        BranchSideFuncs:
        - "websocketHostValue(java.net.URI)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:224"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:233"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:238"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:242"
        BranchSideFuncs:
        - "websocketOriginValue(java.net.URI)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:241"
        BranchSideFuncs:
        - "isEmpty()"
        - "expectedSubprotocol()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:243"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:247"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:246"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
        - "toAsciiString()"
        - "version()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:243"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:247"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:246"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
        - "toAsciiString()"
        - "version()"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:201,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].uri()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:204,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].randomBytes(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:205,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].base64(byte[])"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:207,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:207,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:207,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:208,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:208,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketUtil].sha1(byte[])"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:211,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isDebugEnabled()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:212,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].debug(java.lang.String,java.lang.Object,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:218,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].upgradeUrl(java.net.URI)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:218,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpRequest].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:220,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:223,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].add(io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:224,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:228,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].websocketHostValue(java.net.URI)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:228,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:239,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].websocketOriginValue(java.net.URI)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:242,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].expectedSubprotocol()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:243,1"
      Dst: "[java.lang.String].isEmpty()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:247,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].version()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:247,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketVersion].toAsciiString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13].verify(io.netty.handler.codec.http.FullHttpResponse)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13"
    linkageType: ""
    functionLinenumber: 269
    functionLinenumberEnd: 292
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.FullHttpResponse"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException].<init>(java.lang.String,io.netty.handler.codec.http.HttpResponse)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].get(java.lang.CharSequence)"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.HttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[io.netty.handler.codec.http.CombinedHttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[io.netty.handler.codec.http.HttpResponse].status()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[java.lang.Object].equals(java.lang.Object)"
    functionUses: 1
    ICount: 57
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:271"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:275"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:274"
        BranchSideFuncs:
        - "contentEqualsIgnoreCase(java.lang.CharSequence)"
        - "headers()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:277"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:281"
        BranchSideFuncs:
        - "append(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:280"
        BranchSideFuncs:
        - "containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:281"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:286"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:285"
        BranchSideFuncs:
        - "get(java.lang.CharSequence)"
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:288"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String,io.netty.handler.codec.http.HttpResponse)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:287"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String,io.netty.handler.codec.http.HttpResponse)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:291"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String,io.netty.handler.codec.http.HttpResponse)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:290"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:270,1"
      Dst: "[io.netty.handler.codec.http.HttpResponse].status()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:271,1"
      Dst: "[io.netty.handler.codec.http.HttpResponseStatus].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:272,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:272,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:272,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:272,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:272,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshakeException].<init>(java.lang.String,io.netty.handler.codec.http.HttpResponse)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:275,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:276,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].get(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:277,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:281,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].containsValue(java.lang.CharSequence,java.lang.CharSequence,boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:287,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:288,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13].newWebsocketDecoder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13"
    linkageType: ""
    functionLinenumber: 294
    functionLinenumberEnd: 296
    functionDepth: 5
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketFrameDecoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder].<init>(boolean,boolean,int,boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].maxFramePayloadLength()"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:295,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].maxFramePayloadLength()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:295,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket13FrameDecoder].<init>(boolean,boolean,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13].newWebSocketEncoder()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13"
    linkageType: ""
    functionLinenumber: 299
    functionLinenumberEnd: 301
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketFrameEncoder"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket13FrameEncoder].<init>(boolean)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:300,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket13FrameEncoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13].setForceCloseTimeoutMillis(long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].setForceCloseTimeoutMillis(long)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker13:305,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker].setForceCloseTimeoutMillis(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannelId].<init>()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannelId"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannelId:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannelId].asShortText()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannelId"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannelId].toString()"
    functionUses: 4
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannelId:34,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannelId].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannelId].toString()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannelId"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 20
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannelId].asLongText()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannelId"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannelId].toString()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannelId:39,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannelId].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannelId].compareTo(io.netty.channel.ChannelId)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannelId"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelId"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannelId].asLongText()"
    - "[io.netty.channel.ChannelId].asLongText()"
    - "[java.lang.String].compareTo(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.embedded.EmbeddedChannelId:44"
      Branch Sides:
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannelId:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.embedded.EmbeddedChannelId:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannelId:48,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannelId].asLongText()"
    - Src: "io.netty.channel.embedded.EmbeddedChannelId:48,1"
      Dst: "[io.netty.channel.ChannelId].asLongText()"
    - Src: "io.netty.channel.embedded.EmbeddedChannelId:48,1"
      Dst: "[java.lang.String].compareTo(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannelId].hashCode()"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannelId"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 8
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannelId].equals(java.lang.Object)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannelId"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 10
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.embedded.EmbeddedChannelId].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.channel.embedded.EmbeddedChannelId"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.embedded.EmbeddedChannelId].compareTo(io.netty.channel.ChannelId)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.embedded.EmbeddedChannelId:24,1"
      Dst: "[io.netty.channel.embedded.EmbeddedChannelId].compareTo(io.netty.channel.ChannelId)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PendingBytesTracker$ChannelOutboundBufferPendingBytesTracker].<init>(io.netty.channel.ChannelOutboundBuffer,io.netty.channel.MessageSizeEstimator$Handle)"
    functionSourceFile: "io.netty.channel.PendingBytesTracker$ChannelOutboundBufferPendingBytesTracker"
    linkageType: ""
    functionLinenumber: 72
    functionLinenumberEnd: 76
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOutboundBuffer"
    - "io.netty.channel.MessageSizeEstimator$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.PendingBytesTracker].<init>(io.netty.channel.MessageSizeEstimator$Handle,io.netty.channel.PendingBytesTracker$1)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PendingBytesTracker$ChannelOutboundBufferPendingBytesTracker:73,1"
      Dst: "[io.netty.channel.PendingBytesTracker].<init>(io.netty.channel.MessageSizeEstimator$Handle,io.netty.channel.PendingBytesTracker$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PendingBytesTracker$ChannelOutboundBufferPendingBytesTracker].incrementPendingOutboundBytes(long)"
    functionSourceFile: "io.netty.channel.PendingBytesTracker$ChannelOutboundBufferPendingBytesTracker"
    linkageType: ""
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].incrementPendingOutboundBytes(long)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PendingBytesTracker$ChannelOutboundBufferPendingBytesTracker:79,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].incrementPendingOutboundBytes(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.PendingBytesTracker$ChannelOutboundBufferPendingBytesTracker].decrementPendingOutboundBytes(long)"
    functionSourceFile: "io.netty.channel.PendingBytesTracker$ChannelOutboundBufferPendingBytesTracker"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionDepth: 5
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelOutboundBuffer].decrementPendingOutboundBytes(long)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.PendingBytesTracker$ChannelOutboundBufferPendingBytesTracker:84,1"
      Dst: "[io.netty.channel.ChannelOutboundBuffer].decrementPendingOutboundBytes(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthRequestDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthRequestDecoder:35,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksAuthRequestDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthRequestDecoder"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 65
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.ReplayingDecoder].state()"
    - "[io.netty.handler.codec.socks.SocksSubnegotiationVersion].byteValue()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[io.netty.handler.codec.socks.SocksCommonUtils].readUsAscii(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.socks.SocksAuthRequest].<init>(java.lang.String,java.lang.String)"
    - "[io.netty.channel.AbstractChannelHandlerContext:java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.lang.Error].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    functionUses: 1
    ICount: 41
    EdgeCount: 43
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksAuthRequestDecoder:42"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthRequestDecoder:46"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthRequestDecoder:45"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthRequestDecoder:40,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].state()"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequestDecoder:40,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequestDecoder:42,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequestDecoder:42,1"
      Dst: "[io.netty.handler.codec.socks.SocksSubnegotiationVersion].byteValue()"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequestDecoder:43,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequestDecoder:46,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequestDecoder:50,1"
      Dst: "[io.netty.handler.codec.socks.SocksCommonUtils].readUsAscii(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequestDecoder:56,1"
      Dst: "[io.netty.handler.codec.socks.SocksAuthRequest].<init>(java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequestDecoder:60,1"
      Dst: "[java.lang.Error].<init>()"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequestDecoder:63,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequestDecoder:63,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.socks.SocksAuthRequest].<init>(java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksAuthRequest"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 53
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksRequest].<init>(io.netty.handler.codec.socks.SocksRequestType)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.CharsetUtil].encoder(java.nio.charset.Charset)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].length()"
    - "[java.lang.AbstractStringBuilder:java.lang.StringBuilder].append(java.lang.String)"
    - "[java.nio.charset.CharsetEncoder].canEncode(java.lang.CharSequence)"
    functionUses: 1
    ICount: 41
    EdgeCount: 15
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksAuthRequest:40"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthRequest:41"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthRequest:40"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socks.SocksAuthRequest:40"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthRequest:44"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthRequest:43"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.socks.SocksAuthRequest:44"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthRequest:47"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthRequest:46"
        BranchSideFuncs:
        - "length()"
    - Branch String: "io.netty.handler.codec.socks.SocksAuthRequest:47"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthRequest:50"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.socks.SocksAuthRequest:49"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksAuthRequest:36,1"
      Dst: "[io.netty.handler.codec.socks.SocksRequest].<init>(io.netty.handler.codec.socks.SocksRequestType)"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequest:37,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequest:39,1"
      Dst: "[io.netty.util.CharsetUtil].encoder(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequest:40,1"
      Dst: "[java.nio.charset.CharsetEncoder].canEncode(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequest:41,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequest:41,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequest:41,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequest:41,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.socks.SocksAuthRequest:44,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils$4].<init>()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils$4"
    linkageType: ""
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils$4:78,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils$4].run()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils$4"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionDepth: 0
    returnType: "java.lang.reflect.Method"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils$4:81,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketVersion].values()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketVersion[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketVersion:30,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketVersion].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketVersion:30,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketVersion].<init>(java.lang.String,int,io.netty.util.AsciiString)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketVersion"
    linkageType: ""
    functionLinenumber: 59
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.lang.String"
    - "int"
    - "io.netty.util.AsciiString"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketVersion:60,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessage].decoderResult()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessage"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.DecoderResult"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessage].toString()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessage"
    linkageType: ""
    functionLinenumber: 83
    functionLinenumberEnd: 91
    functionDepth: 2
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].toString()"
    - "[io.netty.channel.ReflectiveChannelFactory].toString()"
    - "[io.netty.util.Version].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].toString()"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[io.netty.buffer.PoolSubpage].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].toString()"
    - "[io.netty.util.Signal].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Thread].toString()"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].toString()"
    - "[java.lang.Throwable].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].toString()"
    - "[io.netty.channel.kqueue.NativeLongArray].toString()"
    - "[io.netty.handler.proxy.ProxyConnectionEvent].toString()"
    - "[io.netty.handler.ssl.SslCompletionEvent].toString()"
    - "[io.netty.bootstrap.BootstrapConfig].toString()"
    - "[io.netty.handler.codec.xml.XmlEntityReference].toString()"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].toString()"
    - "[io.netty.channel.kqueue.AcceptFilter].toString()"
    - "[io.netty.buffer.DefaultByteBufHolder].toString()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].toString()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].toString()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].toString()"
    - "[io.netty.handler.codec.http.HttpVersion].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].toString()"
    - "[io.netty.util.AbstractConstant].toString()"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache].toString()"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].toString()"
    - "[io.netty.handler.ssl.util.LazyX509Certificate].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].toString()"
    - "[io.netty.buffer.WrappedByteBuf].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].toString()"
    - "[io.netty.handler.codec.dns.DnsOpCode].toString()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].toString()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].toString()"
    - "[java.lang.Integer].toString()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache].toString()"
    - "[io.netty.handler.codec.DefaultHeaders].toString()"
    - "[jaz.Zer].toString()"
    - "[io.netty.util.concurrent.DefaultPromise].toString()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].toString()"
    - "[io.netty.handler.ssl.PemX509Certificate].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].toString()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].toString()"
    - "[io.netty.handler.codec.redis.IntegerRedisMessage].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].toString()"
    - "[io.netty.handler.codec.xml.XmlElementEnd].toString()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].toString()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuestion].toString()"
    - "[io.netty.handler.ssl.OpenSslSessionId].toString()"
    - "[io.netty.channel.group.DefaultChannelGroup].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].toString()"
    - "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].toString()"
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].toString()"
    - "[java.lang.Class].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].toString()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].toString()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].toString()"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].toString()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].toString()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].toString()"
    - "[io.netty.handler.codec.EmptyHeaders].toString()"
    - "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].toString()"
    - "[io.netty.buffer.AbstractByteBufAllocator].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].toString()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].toString()"
    - "[io.netty.handler.codec.xml.XmlNamespace].toString()"
    - "[io.netty.channel.unix.FileDescriptor].toString()"
    - "[java.lang.Double].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].toString()"
    - "[io.netty.bootstrap.AbstractBootstrap].toString()"
    - "[io.netty.channel.WriteBufferWaterMark].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString()"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribePayload].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].toString()"
    - "[io.netty.handler.codec.http2.Http2Flags].toString()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].toString()"
    - "[io.netty.buffer.CompositeByteBuf].toString()"
    - "[io.netty.handler.codec.http2.HpackHeaderField].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].toString()"
    - "[io.netty.handler.codec.smtp.SmtpCommand].toString()"
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[io.netty.resolver.dns.InflightNameResolver].toString()"
    - "[java.lang.Float].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[java.io.File].toString()"
    - "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].toString()"
    - "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].toString()"
    - "[io.netty.buffer.AbstractByteBuf].toString()"
    - "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].toString()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].toString()"
    - "[java.lang.Object].toString()"
    - "[io.netty.handler.codec.xml.XmlElement].toString()"
    - "[java.lang.Character].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].toString()"
    - "[io.netty.handler.codec.http.QueryStringEncoder].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].toString()"
    - "[io.netty.handler.codec.dns.DnsRecordType].toString()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].toString()"
    - "[io.netty.handler.codec.dns.DnsResponseCode].toString()"
    - "[io.netty.util.collection.LongObjectHashMap].toString()"
    - "[io.netty.buffer.PoolArena].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].toString()"
    - "[io.netty.channel.unix.PeerCredentials].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsPtrRecord].toString()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].toString()"
    - "[io.netty.handler.codec.http.HttpMethod].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].toString()"
    - "[io.netty.handler.traffic.TrafficCounter].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].toString()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].toString()"
    - "[java.lang.Short].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsOptPseudoRrRecord].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].toString()"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].toString()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent].toString()"
    - "[io.netty.util.DomainNameMapping].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].toString()"
    - "[io.netty.buffer.PoolChunkList].toString()"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].toString()"
    - "[io.netty.buffer.PoolChunk].toString()"
    - "[io.netty.util.internal.EmptyPriorityQueue].toString()"
    - "[io.netty.channel.unix.DomainSocketAddress].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckPayload].toString()"
    - "[io.netty.handler.codec.xml.XmlAttribute].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].toString()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].toString()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].toString()"
    - "[io.netty.channel.DefaultChannelId].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[io.netty.channel.DefaultAddressedEnvelope].toString()"
    - "[io.netty.util.collection.CharObjectHashMap].toString()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].toString()"
    - "[io.netty.handler.codec.xml.XmlElementStart].toString()"
    - "[io.netty.handler.codec.DecoderResult].toString()"
    - "[io.netty.handler.ssl.SniCompletionEvent].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[io.netty.util.collection.ByteObjectHashMap].toString()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].toString()"
    - "[io.netty.util.collection.ShortObjectHashMap].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].toString()"
    - "[io.netty.handler.codec.http.QueryStringDecoder].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].toString()"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].toString()"
    - "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].toString()"
    - "[java.lang.Long].toString()"
    - "[io.netty.channel.sctp.SctpMessage].toString()"
    - "[io.netty.util.collection.IntObjectHashMap].toString()"
    - "[io.netty.handler.codec.xml.XmlContent].toString()"
    - "[io.netty.handler.codec.http.HttpHeaders].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].toString()"
    - "[io.netty.buffer.FixedCompositeByteBuf].toString()"
    - "[io.netty.channel.DefaultChannelPipeline].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].toString()"
    - "[io.netty.handler.codec.string.LineSeparator].toString()"
    - "[io.netty.buffer.SwappedByteBuf].toString()"
    - "[io.netty.channel.unix.Socket].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].toString()"
    - "[io.netty.channel.AbstractChannel].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].toString()"
    - "[java.lang.Byte].toString()"
    - "[io.netty.handler.codec.xml.XmlDTD].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].toString()"
    - "[io.netty.bootstrap.ServerBootstrapConfig].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandType].toString()"
    - "[io.netty.channel.AbstractChannelHandlerContext].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].toString()"
    - "[io.netty.handler.codec.http.HttpScheme].toString()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttPubAckMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttConnectMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].variableHeader()"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams:io.netty.buffer.EmptyByteBuf:io.netty.channel.embedded.EmbeddedChannelId:io.netty.channel.embedded.EmbeddedSocketAddress:io.netty.channel.local.LocalAddress:io.netty.handler.codec.http.LastHttpContent$1:io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism:io.netty.handler.codec.mqtt.MqttMessage:io.netty.handler.codec.redis.ArrayRedisMessage$1:io.netty.handler.codec.redis.ArrayRedisMessage$2:io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey:io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent:io.netty.resolver.dns.DefaultDnsServerAddresses:io.netty.util.Recycler$1:io.netty.util.concurrent.PromiseTask$SentinelRunnable:java.io.ByteArrayOutputStream:java.io.ObjectOutputStream$DebugTraceInfoStack:java.io.ObjectStreamClass:java.io.ObjectStreamField:java.io.StringWriter:java.lang.Boolean:java.lang.Character$Subset:java.lang.Enum:java.lang.Module:java.lang.ModuleLayer:java.lang.Package:java.lang.ProcessBuilder$Redirect$1:java.lang.ProcessBuilder$Redirect$2:java.lang.ProcessBuilder$Redirect$3:java.lang.ProcessBuilder$Redirect$4:java.lang.ProcessBuilder$Redirect$5:java.lang.ProcessBuilder$Redirect$6:java.lang.ProcessBuilder$RedirectPipeImpl:java.lang.ProcessHandleImpl:java.lang.ProcessImpl:java.lang.Runtime$Version:java.lang.StackFrameInfo:java.lang.StackTraceElement:java.lang.String:java.lang.StringBuilder:java.lang.ThreadGroup:java.lang.invoke.ClassSpecializer$SpeciesData:java.lang.invoke.Invokers:java.lang.invoke.LambdaForm:java.lang.invoke.LambdaForm$Name:java.lang.invoke.LambdaForm$NamedFunction:java.lang.invoke.LambdaFormEditor$Transform:java.lang.invoke.MemberName:java.lang.invoke.MethodHandle:java.lang.invoke.MethodHandleImpl$LoopClauses:java.lang.invoke.MethodHandles$Lookup:java.lang.invoke.MethodType:java.lang.invoke.MethodTypeForm:java.lang.invoke.SerializedLambda:java.lang.module.Configuration:java.lang.module.ModuleDescriptor:java.lang.module.ModuleDescriptor$Exports:java.lang.module.ModuleDescriptor$Opens:java.lang.module.ModuleDescriptor$Provides:java.lang.module.ModuleDescriptor$Requires:java.lang.module.ModuleDescriptor$Version:java.lang.module.ResolvedModule:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method:java.lang.reflect.Parameter:java.math.BigDecimal:java.math.BigInteger:java.math.MathContext:java.math.MutableBigInteger:java.net.HttpCookie:java.net.InetAddress:java.net.InetSocketAddress:java.net.InetSocketAddress$InetSocketAddressHolder:java.net.InterfaceAddress:java.net.NetworkInterface:java.net.Proxy:java.net.ServerSocket:java.net.Socket:java.net.SocketImpl:java.net.URI:java.net.URL:java.net.URLConnection:java.nio.ByteBuffer:java.nio.ByteOrder:java.nio.CharBuffer:java.nio.DoubleBuffer:java.nio.FloatBuffer:java.nio.IntBuffer:java.nio.LongBuffer:java.nio.ShortBuffer:java.nio.channels.FileChannel$MapMode:java.nio.channels.FileLock:java.nio.charset.Charset:java.nio.charset.CoderResult:java.nio.charset.CodingErrorAction:java.nio.file.attribute.FileTime:java.security.AlgorithmParameters:java.security.CodeSigner:java.security.CodeSource:java.security.MessageDigest:java.security.Permission:java.security.PermissionCollection:java.security.PrivilegedActionException:java.security.ProtectionDomain:java.security.Provider:java.security.Provider$Service:java.security.SecureRandom:java.security.SecureRandomSpi:java.security.Signature:java.security.Timestamp:java.security.cert.CertPath:java.security.spec.PSSParameterSpec:java.text.AttributedCharacterIterator$Attribute:java.text.CalendarBuilder:java.text.FieldPosition:java.text.ParsePosition:java.time.Duration:java.time.Instant:java.time.LocalDate:java.time.LocalDateTime:java.time.LocalTime:java.time.OffsetDateTime:java.time.OffsetTime:java.time.Period:java.time.ZoneId:java.time.ZoneOffset:java.time.ZonedDateTime:java.time.chrono.AbstractChronology:java.time.format.DateTimeFormatter:java.time.format.DateTimeFormatterBuilder$CompositePrinterParser:java.time.format.DateTimeFormatterBuilder$NumberPrinterParser:java.time.format.DateTimeParseContext:java.time.format.DateTimePrintContext:java.time.format.DecimalStyle:java.time.format.Parsed:java.time.temporal.ChronoField:java.time.temporal.ChronoUnit:java.time.temporal.ValueRange:java.time.zone.ZoneOffsetTransition:java.time.zone.ZoneOffsetTransitionRule:java.time.zone.ZoneRules:java.util.AbstractCollection:java.util.AbstractMap:java.util.AbstractMap$SimpleEntry:java.util.AbstractMap$SimpleImmutableEntry:java.util.BitSet:java.util.Calendar:java.util.Currency:java.util.Date:java.util.DoubleSummaryStatistics:java.util.EventObject:java.util.Formatter:java.util.HashMap$Node:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IntSummaryStatistics:java.util.Locale:java.util.LongSummaryStatistics:java.util.Optional:java.util.OptionalDouble:java.util.OptionalInt:java.util.OptionalLong:java.util.Properties:java.util.ResourceBundle$CacheKey:java.util.ServiceLoader:java.util.StringJoiner:java.util.TreeMap$Entry:java.util.UUID:java.util.Vector:java.util.WeakHashMap$Entry:java.util.concurrent.CompletableFuture:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$CollectionView:java.util.concurrent.ConcurrentHashMap$Node:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CountDownLatch:java.util.concurrent.ForkJoinPool:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue:java.util.concurrent.ThreadPoolExecutor:java.util.concurrent.atomic.AtomicBoolean:java.util.concurrent.atomic.AtomicInteger:java.util.concurrent.atomic.AtomicLong:java.util.concurrent.atomic.AtomicLongArray:java.util.concurrent.atomic.AtomicReference:java.util.concurrent.atomic.AtomicReferenceArray:java.util.concurrent.atomic.LongAdder:java.util.concurrent.locks.AbstractQueuedSynchronizer:java.util.concurrent.locks.ReentrantLock:java.util.concurrent.locks.ReentrantReadWriteLock:java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock:java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock:java.util.jar.Attributes$Name:java.util.logging.Level:java.util.regex.Matcher:java.util.regex.Pattern:java.util.zip.ZipEntry:javax.crypto.CryptoPermission:javax.naming.NamingException:javax.naming.directory.ModificationItem:javax.net.ssl.SNIHostName:javax.net.ssl.SNIServerName:javax.net.ssl.SSLEngineResult:javax.security.auth.Subject:javax.security.auth.x500.X500Principal:javax.xml.namespace.QName:sun.net.www.MessageHeader:sun.nio.fs.UnixFileStore:sun.nio.fs.UnixPath:sun.reflect.annotation.AnnotationType:sun.reflect.annotation.TypeAnnotation:sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo:sun.security.util.BitArray:sun.security.util.DerValue:sun.security.util.JarConstraintsParameters:sun.security.util.LazyCodeSourcePermissionCollection:sun.security.util.ObjectIdentifier:sun.security.x509.AVA:sun.security.x509.AlgorithmId:sun.security.x509.AuthorityInfoAccessExtension:sun.security.x509.AuthorityKeyIdentifierExtension:sun.security.x509.BasicConstraintsExtension:sun.security.x509.CRLDistributionPointsExtension:sun.security.x509.CertificateAlgorithmId:sun.security.x509.CertificateExtensions:sun.security.x509.CertificateIssuerName:sun.security.x509.CertificatePoliciesExtension:sun.security.x509.CertificateSerialNumber:sun.security.x509.CertificateSubjectName:sun.security.x509.CertificateValidity:sun.security.x509.CertificateVersion:sun.security.x509.CertificateX509Key:sun.security.x509.ExtendedKeyUsageExtension:sun.security.x509.Extension:sun.security.x509.GeneralName:sun.security.x509.GeneralNames:sun.security.x509.GeneralSubtree:sun.security.x509.GeneralSubtrees:sun.security.x509.IssuerAlternativeNameExtension:sun.security.x509.KeyIdentifier:sun.security.x509.NameConstraintsExtension:sun.security.x509.PolicyConstraintsExtension:sun.security.x509.PolicyMappingsExtension:sun.security.x509.PrivateKeyUsageExtension:sun.security.x509.RDN:sun.security.x509.SerialNumber:sun.security.x509.SubjectAlternativeNameExtension:sun.security.x509.SubjectKeyIdentifierExtension:sun.security.x509.UniqueIdentity:sun.security.x509.X500Name:sun.security.x509.X509CertImpl:sun.security.x509.X509CertInfo:sun.util.calendar.CalendarDate:sun.util.calendar.Era:sun.util.calendar.JulianCalendar$Date:sun.util.locale.BaseLocale:sun.util.locale.Extension:sun.util.locale.LocaleExtensions].append(java.lang.String)"
    - "[io.netty.handler.codec.mqtt.MqttConnectMessage].payload()"
    - "[io.netty.handler.codec.mqtt.MqttPublishMessage].payload()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckMessage].payload()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckMessage].payload()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribeMessage].payload()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribeMessage].payload()"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams:io.netty.buffer.EmptyByteBuf:io.netty.channel.embedded.EmbeddedChannelId:io.netty.channel.embedded.EmbeddedSocketAddress:io.netty.channel.local.LocalAddress:io.netty.handler.codec.http.LastHttpContent$1:io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism:io.netty.handler.codec.mqtt.MqttMessage:io.netty.handler.codec.redis.ArrayRedisMessage$1:io.netty.handler.codec.redis.ArrayRedisMessage$2:io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey:io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent:io.netty.resolver.dns.DefaultDnsServerAddresses:io.netty.util.Recycler$1:io.netty.util.concurrent.PromiseTask$SentinelRunnable:java.io.ByteArrayOutputStream:java.io.ObjectOutputStream$DebugTraceInfoStack:java.io.ObjectStreamClass:java.io.ObjectStreamField:java.io.StringWriter:java.lang.Boolean:java.lang.Character$Subset:java.lang.Enum:java.lang.Module:java.lang.ModuleLayer:java.lang.Package:java.lang.ProcessBuilder$Redirect$1:java.lang.ProcessBuilder$Redirect$2:java.lang.ProcessBuilder$Redirect$3:java.lang.ProcessBuilder$Redirect$4:java.lang.ProcessBuilder$Redirect$5:java.lang.ProcessBuilder$Redirect$6:java.lang.ProcessBuilder$RedirectPipeImpl:java.lang.ProcessHandleImpl:java.lang.ProcessImpl:java.lang.Runtime$Version:java.lang.StackFrameInfo:java.lang.StackTraceElement:java.lang.String:java.lang.StringBuilder:java.lang.ThreadGroup:java.lang.invoke.ClassSpecializer$SpeciesData:java.lang.invoke.Invokers:java.lang.invoke.LambdaForm:java.lang.invoke.LambdaForm$Name:java.lang.invoke.LambdaForm$NamedFunction:java.lang.invoke.LambdaFormEditor$Transform:java.lang.invoke.MemberName:java.lang.invoke.MethodHandle:java.lang.invoke.MethodHandleImpl$LoopClauses:java.lang.invoke.MethodHandles$Lookup:java.lang.invoke.MethodType:java.lang.invoke.MethodTypeForm:java.lang.invoke.SerializedLambda:java.lang.module.Configuration:java.lang.module.ModuleDescriptor:java.lang.module.ModuleDescriptor$Exports:java.lang.module.ModuleDescriptor$Opens:java.lang.module.ModuleDescriptor$Provides:java.lang.module.ModuleDescriptor$Requires:java.lang.module.ModuleDescriptor$Version:java.lang.module.ResolvedModule:java.lang.reflect.Constructor:java.lang.reflect.Field:java.lang.reflect.Method:java.lang.reflect.Parameter:java.math.BigDecimal:java.math.BigInteger:java.math.MathContext:java.math.MutableBigInteger:java.net.HttpCookie:java.net.InetAddress:java.net.InetSocketAddress:java.net.InetSocketAddress$InetSocketAddressHolder:java.net.InterfaceAddress:java.net.NetworkInterface:java.net.Proxy:java.net.ServerSocket:java.net.Socket:java.net.SocketImpl:java.net.URI:java.net.URL:java.net.URLConnection:java.nio.ByteBuffer:java.nio.ByteOrder:java.nio.CharBuffer:java.nio.DoubleBuffer:java.nio.FloatBuffer:java.nio.IntBuffer:java.nio.LongBuffer:java.nio.ShortBuffer:java.nio.channels.FileChannel$MapMode:java.nio.channels.FileLock:java.nio.charset.Charset:java.nio.charset.CoderResult:java.nio.charset.CodingErrorAction:java.nio.file.attribute.FileTime:java.security.AlgorithmParameters:java.security.CodeSigner:java.security.CodeSource:java.security.MessageDigest:java.security.Permission:java.security.PermissionCollection:java.security.PrivilegedActionException:java.security.ProtectionDomain:java.security.Provider:java.security.Provider$Service:java.security.SecureRandom:java.security.SecureRandomSpi:java.security.Signature:java.security.Timestamp:java.security.cert.CertPath:java.security.spec.PSSParameterSpec:java.text.AttributedCharacterIterator$Attribute:java.text.CalendarBuilder:java.text.FieldPosition:java.text.ParsePosition:java.time.Duration:java.time.Instant:java.time.LocalDate:java.time.LocalDateTime:java.time.LocalTime:java.time.OffsetDateTime:java.time.OffsetTime:java.time.Period:java.time.ZoneId:java.time.ZoneOffset:java.time.ZonedDateTime:java.time.chrono.AbstractChronology:java.time.format.DateTimeFormatter:java.time.format.DateTimeFormatterBuilder$CompositePrinterParser:java.time.format.DateTimeFormatterBuilder$NumberPrinterParser:java.time.format.DateTimeParseContext:java.time.format.DateTimePrintContext:java.time.format.DecimalStyle:java.time.format.Parsed:java.time.temporal.ChronoField:java.time.temporal.ChronoUnit:java.time.temporal.ValueRange:java.time.zone.ZoneOffsetTransition:java.time.zone.ZoneOffsetTransitionRule:java.time.zone.ZoneRules:java.util.AbstractCollection:java.util.AbstractMap:java.util.AbstractMap$SimpleEntry:java.util.AbstractMap$SimpleImmutableEntry:java.util.BitSet:java.util.Calendar:java.util.Currency:java.util.Date:java.util.DoubleSummaryStatistics:java.util.EventObject:java.util.Formatter:java.util.HashMap$Node:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IntSummaryStatistics:java.util.Locale:java.util.LongSummaryStatistics:java.util.Optional:java.util.OptionalDouble:java.util.OptionalInt:java.util.OptionalLong:java.util.Properties:java.util.ResourceBundle$CacheKey:java.util.ServiceLoader:java.util.StringJoiner:java.util.TreeMap$Entry:java.util.UUID:java.util.Vector:java.util.WeakHashMap$Entry:java.util.concurrent.CompletableFuture:java.util.concurrent.ConcurrentHashMap:java.util.concurrent.ConcurrentHashMap$CollectionView:java.util.concurrent.ConcurrentHashMap$Node:java.util.concurrent.ConcurrentLinkedDeque:java.util.concurrent.ConcurrentLinkedQueue:java.util.concurrent.CopyOnWriteArrayList:java.util.concurrent.CountDownLatch:java.util.concurrent.ForkJoinPool:java.util.concurrent.LinkedBlockingDeque:java.util.concurrent.LinkedBlockingQueue:java.util.concurrent.ThreadPoolExecutor:java.util.concurrent.atomic.AtomicBoolean:java.util.concurrent.atomic.AtomicInteger:java.util.concurrent.atomic.AtomicLong:java.util.concurrent.atomic.AtomicLongArray:java.util.concurrent.atomic.AtomicReference:java.util.concurrent.atomic.AtomicReferenceArray:java.util.concurrent.atomic.LongAdder:java.util.concurrent.locks.AbstractQueuedSynchronizer:java.util.concurrent.locks.ReentrantLock:java.util.concurrent.locks.ReentrantReadWriteLock:java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock:java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock:java.util.jar.Attributes$Name:java.util.logging.Level:java.util.regex.Matcher:java.util.regex.Pattern:java.util.zip.ZipEntry:javax.crypto.CryptoPermission:javax.naming.NamingException:javax.naming.directory.ModificationItem:javax.net.ssl.SNIHostName:javax.net.ssl.SNIServerName:javax.net.ssl.SSLEngineResult:javax.security.auth.Subject:javax.security.auth.x500.X500Principal:javax.xml.namespace.QName:sun.net.www.MessageHeader:sun.nio.fs.UnixFileStore:sun.nio.fs.UnixPath:sun.reflect.annotation.AnnotationType:sun.reflect.annotation.TypeAnnotation:sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo:sun.security.util.BitArray:sun.security.util.DerValue:sun.security.util.JarConstraintsParameters:sun.security.util.LazyCodeSourcePermissionCollection:sun.security.util.ObjectIdentifier:sun.security.x509.AVA:sun.security.x509.AlgorithmId:sun.security.x509.AuthorityInfoAccessExtension:sun.security.x509.AuthorityKeyIdentifierExtension:sun.security.x509.BasicConstraintsExtension:sun.security.x509.CRLDistributionPointsExtension:sun.security.x509.CertificateAlgorithmId:sun.security.x509.CertificateExtensions:sun.security.x509.CertificateIssuerName:sun.security.x509.CertificatePoliciesExtension:sun.security.x509.CertificateSerialNumber:sun.security.x509.CertificateSubjectName:sun.security.x509.CertificateValidity:sun.security.x509.CertificateVersion:sun.security.x509.CertificateX509Key:sun.security.x509.ExtendedKeyUsageExtension:sun.security.x509.Extension:sun.security.x509.GeneralName:sun.security.x509.GeneralNames:sun.security.x509.GeneralSubtree:sun.security.x509.GeneralSubtrees:sun.security.x509.IssuerAlternativeNameExtension:sun.security.x509.KeyIdentifier:sun.security.x509.NameConstraintsExtension:sun.security.x509.PolicyConstraintsExtension:sun.security.x509.PolicyMappingsExtension:sun.security.x509.PrivateKeyUsageExtension:sun.security.x509.RDN:sun.security.x509.SerialNumber:sun.security.x509.SubjectAlternativeNameExtension:sun.security.x509.SubjectKeyIdentifierExtension:sun.security.x509.UniqueIdentity:sun.security.x509.X500Name:sun.security.x509.X509CertImpl:sun.security.x509.X509CertInfo:sun.util.calendar.CalendarDate:sun.util.calendar.Era:sun.util.calendar.JulianCalendar$Date:sun.util.locale.BaseLocale:sun.util.locale.Extension:sun.util.locale.LocaleExtensions].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].payload()"
    functionUses: 20
    ICount: 32
    EdgeCount: 556
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessage:86"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessage:84"
        BranchSideFuncs:
        - "variableHeader()"
        - "fixedHeader()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessage:83"
        BranchSideFuncs:
        - "simpleClassName(java.lang.Object)"
        - "fixedHeader()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessage:87"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessage:86"
        BranchSideFuncs:
        - "variableHeader()"
        - "append(java.lang.String)"
        - "payload()"
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessage:85"
        BranchSideFuncs:
        - "variableHeader()"
        - "fixedHeader()"
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessage:88"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessage:86"
        BranchSideFuncs:
        - "variableHeader()"
        - "append(java.lang.String)"
        - "payload()"
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessage:84,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessage:84,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessage:85,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessage:86,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessage:86,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].fixedHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessage:86,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessage:87,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].variableHeader()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessage:87,1"
      Dst: "[java.lang.Object].toString()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessage:88,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessage].payload()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessage:90,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 10
    CyclomaticComplexity: 4
  - functionName: "[io.netty.bootstrap.AbstractBootstrap$2].<init>(io.netty.channel.ChannelFuture,io.netty.channel.Channel,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.bootstrap.AbstractBootstrap$2"
    linkageType: ""
    functionLinenumber: 351
    functionLinenumberEnd: 353
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelFuture"
    - "io.netty.channel.Channel"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 11
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.bootstrap.AbstractBootstrap$2:352,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    functionSourceFile: "io.netty.bootstrap.AbstractBootstrap$2"
    linkageType: ""
    functionLinenumber: 354
    functionLinenumberEnd: 361
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.AbstractChannel].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.SucceededChannelFuture].cause()"
    - "[io.netty.channel.FailedChannelFuture].cause()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 50
    ICount: 16
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.bootstrap.AbstractBootstrap$2:355"
      Branch Sides:
      - BranchSide: "io.netty.bootstrap.AbstractBootstrap$2:358"
        BranchSideFuncs:
        - "addListener(io.netty.util.concurrent.GenericFutureListener)"
        - "bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.bootstrap.AbstractBootstrap$2:357"
        BranchSideFuncs:
        - "setFailure(java.lang.Throwable)"
        - "cause()"
    Callsites:
    - Src: "io.netty.bootstrap.AbstractBootstrap$2:355,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.bootstrap.AbstractBootstrap$2:356,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].bind(java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.bootstrap.AbstractBootstrap$2:356,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.bootstrap.AbstractBootstrap$2:358,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.bootstrap.AbstractBootstrap$2:358,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.ChannelHandlerMask$1].<init>()"
    functionSourceFile: "io.netty.channel.ChannelHandlerMask$1"
    linkageType: ""
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelHandlerMask$1:66,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelHandlerMask$1].initialValue()"
    functionSourceFile: "io.netty.channel.ChannelHandlerMask$1"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.WeakHashMap].<init>(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelHandlerMask$1:69,1"
      Dst: "[java.util.WeakHashMap].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlEncodedDetector].process(byte)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlEncodedDetector"
    linkageType: ""
    functionLinenumber: 743
    functionLinenumberEnd: 745
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlEncodedDetector:744"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlEncodedDetector:743"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlEncodedDetector:744"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.HttpPostStandardRequestDecoder$UrlEncodedDetector:743"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionDecoder"
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    - "io.netty.handler.codec.http2.Http2Settings"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:46,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionDecoder"
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    - "io.netty.handler.codec.http2.Http2Settings"
    - "boolean"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean,boolean,io.netty.handler.codec.http.HttpScheme)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:53,1"
      Dst: "[io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean,boolean,io.netty.handler.codec.http.HttpScheme)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean,boolean,io.netty.handler.codec.http.HttpScheme)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 6
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionDecoder"
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    - "io.netty.handler.codec.http2.Http2Settings"
    - "boolean"
    - "boolean"
    - "io.netty.handler.codec.http.HttpScheme"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean)"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:59,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean,boolean,boolean,io.netty.handler.codec.http.HttpScheme)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 7
    argTypes:
    - "io.netty.handler.codec.http2.Http2ConnectionDecoder"
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    - "io.netty.handler.codec.http2.Http2Settings"
    - "boolean"
    - "boolean"
    - "boolean"
    - "io.netty.handler.codec.http.HttpScheme"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean,boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:68,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].<init>(io.netty.handler.codec.http2.Http2ConnectionDecoder,io.netty.handler.codec.http2.Http2ConnectionEncoder,io.netty.handler.codec.http2.Http2Settings,boolean,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler].getStreamId(io.netty.handler.codec.http.HttpHeaders)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpHeaders"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].getInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].getInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].getInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].incrementAndGetNextStreamId()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].incrementAndGetNextStreamId()"
    - "[io.netty.handler.codec.http.HttpHeaders].getInt(java.lang.CharSequence,int)"
    functionUses: 1
    ICount: 9
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:81,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:82,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:82,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].local()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:82,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].incrementAndGetNextStreamId()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:81,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].getInt(java.lang.CharSequence,int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 155
    functionDepth: 15
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].<init>(io.netty.channel.ChannelPromise,io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].encoder()"
    - "[io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler].getStreamId(io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedHttpRequest].headers()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - "[io.netty.handler.codec.http.HttpScheme].name()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpMessage,boolean)"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].content()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler].writeHeaders(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2ConnectionEncoder,int,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http2.Http2Headers,boolean,io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator)"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].trailingHeaders()"
    - "[io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$WrappedFullHttpRequest].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].trailingHeaders()"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,boolean)"
    - "[io.netty.handler.codec.http.LastHttpContent$1].content()"
    - "[io.netty.handler.codec.http.ComposedLastHttpContent].content()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].content()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpMessage].content()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].newPromise()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].doneAllocatingPromises()"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.handler.codec.http.HttpMessage].headers()"
    - "[io.netty.buffer.ByteBufHolder].content()"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - "[io.netty.handler.codec.http.HttpHeaders].isEmpty()"
    - "[io.netty.handler.codec.http2.Http2DataWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 107
    EdgeCount: 67
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:91"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:96"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:95"
        BranchSideFuncs:
        - "channel()"
        - "<init>(io.netty.channel.ChannelPromise,io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
        - "encoder()"
        - "executor()"
    - Branch String: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:91"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:96"
        BranchSideFuncs:
        - "write(java.lang.Object,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:95"
        BranchSideFuncs:
        - "channel()"
        - "<init>(io.netty.channel.ChannelPromise,io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
        - "encoder()"
        - "executor()"
    - Branch String: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:102"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:121"
        BranchSideFuncs:
        - "getStreamId(io.netty.handler.codec.http.HttpHeaders)"
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:120"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:109"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:115"
        BranchSideFuncs:
        - "contains(java.lang.CharSequence)"
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:114"
        BranchSideFuncs:
        - "isReadable()"
        - "toHttp2Headers(io.netty.handler.codec.http.HttpMessage,boolean)"
    - Branch String: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:110"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:115"
        BranchSideFuncs:
        - "set(java.lang.CharSequence,java.lang.Object)"
        - "name()"
        - "text()"
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:114"
        BranchSideFuncs:
        - "isReadable()"
        - "toHttp2Headers(io.netty.handler.codec.http.HttpMessage,boolean)"
    - Branch String: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:116"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:-1"
        BranchSideFuncs:
        - "isReadable()"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:116"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:-1"
        BranchSideFuncs:
        - "isReadable()"
        - "headers()"
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:121"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:149"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:121"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:149"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:125"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:135"
        BranchSideFuncs:
        - "toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,boolean)"
        - "trailingHeaders()"
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:134"
        BranchSideFuncs:
        - "content()"
    - Branch String: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:135"
        BranchSideFuncs:
        - "writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
        - "isEmpty()"
        - "newPromise()"
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:134"
        BranchSideFuncs:
        - "content()"
    - Branch String: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:135"
        BranchSideFuncs:
        - "writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
        - "isEmpty()"
        - "newPromise()"
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:134"
        BranchSideFuncs:
        - "content()"
    - Branch String: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:140"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:149"
        BranchSideFuncs:
        - "content()"
        - "writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
        - "isEmpty()"
        - "channel()"
        - "<init>(io.netty.channel.ChannelPromise,io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
        - "isReadable()"
        - "toHttp2Headers(io.netty.handler.codec.http.HttpMessage,boolean)"
        - "onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
        - "set(java.lang.CharSequence,java.lang.Object)"
        - "toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,boolean)"
        - "headers()"
        - "newPromise()"
        - "trailingHeaders()"
        - "setFailure(java.lang.Throwable)"
        - "name()"
        - "contains(java.lang.CharSequence)"
        - "text()"
        - "encoder()"
        - "writeHeaders(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2ConnectionEncoder,int,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http2.Http2Headers,boolean,io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator)"
        - "getStreamId(io.netty.handler.codec.http.HttpHeaders)"
        - "executor()"
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:148"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:152"
        BranchSideFuncs:
        - "release(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:151"
        BranchSideFuncs:
        - "doneAllocatingPromises()"
    - Branch String: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:152"
        BranchSideFuncs:
        - "release(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:151"
        BranchSideFuncs:
        - "doneAllocatingPromises()"
    - Branch String: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:152"
        BranchSideFuncs:
        - "release(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:151"
        BranchSideFuncs:
        - "doneAllocatingPromises()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:92,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:98,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:98,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:98,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].<init>(io.netty.channel.ChannelPromise,io.netty.channel.Channel,io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:100,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].encoder()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:106,1"
      Dst: "[io.netty.handler.codec.http.HttpMessage].headers()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:106,1"
      Dst: "[io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler].getStreamId(io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:110,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:110,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].contains(java.lang.CharSequence)"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:111,1"
      Dst: "[io.netty.handler.codec.http.HttpScheme].name()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:111,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].set(java.lang.CharSequence,java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:115,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpMessage,boolean)"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:116,1"
      Dst: "[io.netty.buffer.ByteBufHolder].content()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:116,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:117,1"
      Dst: "[io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler].writeHeaders(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2ConnectionEncoder,int,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http2.Http2Headers,boolean,io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator)"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:130,1"
      Dst: "[io.netty.handler.codec.http.LastHttpContent].trailingHeaders()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:131,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil].toHttp2Headers(io.netty.handler.codec.http.HttpHeaders,boolean)"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:136,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].isEmpty()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:137,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].newPromise()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:137,1"
      Dst: "[io.netty.handler.codec.http2.Http2DataWriter].writeData(io.netty.channel.ChannelHandlerContext,int,io.netty.buffer.ByteBuf,int,boolean,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:150,1"
      Dst: "[io.netty.util.ReferenceCountUtil].release(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:152,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].doneAllocatingPromises()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:146,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].onError(io.netty.channel.ChannelHandlerContext,boolean,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:147,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 32
    CyclomaticComplexity: 15
  - functionName: "[io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler].writeHeaders(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2ConnectionEncoder,int,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http2.Http2Headers,boolean,io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator)"
    functionSourceFile: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler"
    linkageType: ""
    functionLinenumber: 159
    functionLinenumberEnd: 166
    functionDepth: 1
    returnType: "void"
    argCount: 7
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2ConnectionEncoder"
    - "int"
    - "io.netty.handler.codec.http.HttpHeaders"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "boolean"
    - "io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].getInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].getInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].getInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders].getShort(java.lang.CharSequence,short)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].getShort(java.lang.CharSequence,short)"
    - "[io.netty.handler.codec.http.EmptyHttpHeaders].getShort(java.lang.CharSequence,short)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.CompressorHttp2ConnectionEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].newPromise()"
    - "[io.netty.handler.codec.http.HttpHeaders].getInt(java.lang.CharSequence,int)"
    - "[io.netty.handler.codec.http.HttpHeaders].getShort(java.lang.CharSequence,short)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 16
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:160,1"
      Dst: "[io.netty.handler.codec.http2.HttpConversionUtil$ExtensionHeaderNames].text()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:159,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].getInt(java.lang.CharSequence,int)"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:161,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].getShort(java.lang.CharSequence,short)"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:164,1"
      Dst: "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].newPromise()"
    - Src: "io.netty.handler.codec.http2.HttpToHttp2ConnectionHandler:163,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.CookieHeaderNames].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.cookie.CookieHeaderNames"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.CookieHeaderNames:60,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties].<init>(java.lang.Thread)"
    functionSourceFile: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Thread"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties:1086,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties].state()"
    functionSourceFile: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Thread$State"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].getState()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties:1092,1"
      Dst: "[java.lang.Thread].getState()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties].priority()"
    functionSourceFile: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].getPriority()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties:1097,1"
      Dst: "[java.lang.Thread].getPriority()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties].isInterrupted()"
    functionSourceFile: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].isInterrupted()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties:1102,1"
      Dst: "[java.lang.Thread].isInterrupted()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties].isDaemon()"
    functionSourceFile: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].isDaemon()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties:1107,1"
      Dst: "[java.lang.Thread].isDaemon()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties].name()"
    functionSourceFile: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].getName()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties:1112,1"
      Dst: "[java.lang.Thread].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties].id()"
    functionSourceFile: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].getId()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties:1117,1"
      Dst: "[java.lang.Thread].getId()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties].stackTrace()"
    functionSourceFile: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.StackTraceElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].getStackTrace()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties:1122,1"
      Dst: "[java.lang.Thread].getStackTrace()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties].isAlive()"
    functionSourceFile: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].isAlive()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.SingleThreadEventExecutor$DefaultThreadProperties:1127,1"
      Dst: "[java.lang.Thread].isAlive()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].<init>()"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:34,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getSize()"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getSize0(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:36,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getSize0(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getSize0(java.lang.Object)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.reflect.ConstantPool].getClassAt(int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getClassAt0(java.lang.Object,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:37,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getClassAt0(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getClassAt0(java.lang.Object,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.reflect.ConstantPool].getClassAtIfLoaded(int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.Class"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getClassAtIfLoaded0(java.lang.Object,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:38,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getClassAtIfLoaded0(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getClassAtIfLoaded0(java.lang.Object,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.Class"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.reflect.ConstantPool].getClassRefIndexAt(int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getClassRefIndexAt0(java.lang.Object,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:41,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getClassRefIndexAt0(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getClassRefIndexAt0(java.lang.Object,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.reflect.ConstantPool].getMethodAt(int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.reflect.Member"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getMethodAt0(java.lang.Object,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:45,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getMethodAt0(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getMethodAt0(java.lang.Object,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.reflect.Member"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.reflect.ConstantPool].getMethodAtIfLoaded(int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.reflect.Member"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getMethodAtIfLoaded0(java.lang.Object,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:46,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getMethodAtIfLoaded0(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getMethodAtIfLoaded0(java.lang.Object,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.reflect.Member"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.reflect.ConstantPool].getFieldAt(int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.reflect.Field"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getFieldAt0(java.lang.Object,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:47,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getFieldAt0(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getFieldAt0(java.lang.Object,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.reflect.Field"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.reflect.ConstantPool].getFieldAtIfLoaded(int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.reflect.Field"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getFieldAtIfLoaded0(java.lang.Object,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:48,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getFieldAtIfLoaded0(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getFieldAtIfLoaded0(java.lang.Object,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.reflect.Field"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.reflect.ConstantPool].getMemberRefInfoAt(int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getMemberRefInfoAt0(java.lang.Object,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:51,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getMemberRefInfoAt0(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getMemberRefInfoAt0(java.lang.Object,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.reflect.ConstantPool].getNameAndTypeRefIndexAt(int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getNameAndTypeRefIndexAt0(java.lang.Object,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:54,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getNameAndTypeRefIndexAt0(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getNameAndTypeRefIndexAt0(java.lang.Object,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.reflect.ConstantPool].getNameAndTypeRefInfoAt(int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getNameAndTypeRefInfoAt0(java.lang.Object,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:58,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getNameAndTypeRefInfoAt0(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getNameAndTypeRefInfoAt0(java.lang.Object,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String[]"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.reflect.ConstantPool].getIntAt(int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getIntAt0(java.lang.Object,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:60,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getIntAt0(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getIntAt0(java.lang.Object,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.reflect.ConstantPool].getLongAt(int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getLongAt0(java.lang.Object,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:61,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getLongAt0(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getLongAt0(java.lang.Object,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "long"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.reflect.ConstantPool].getFloatAt(int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "float"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getFloatAt0(java.lang.Object,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:62,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getFloatAt0(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getFloatAt0(java.lang.Object,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "float"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.reflect.ConstantPool].getDoubleAt(int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "double"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getDoubleAt0(java.lang.Object,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:63,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getDoubleAt0(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getDoubleAt0(java.lang.Object,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "double"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.reflect.ConstantPool].getStringAt(int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getStringAt0(java.lang.Object,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:64,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getStringAt0(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getStringAt0(java.lang.Object,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.reflect.ConstantPool].getUTF8At(int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getUTF8At0(java.lang.Object,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:65,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getUTF8At0(java.lang.Object,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getUTF8At0(java.lang.Object,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[jdk.internal.reflect.ConstantPool].getTagAt(int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "jdk.internal.reflect.ConstantPool$Tag"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[jdk.internal.reflect.ConstantPool].getTagAt0(java.lang.Object,int)"
    - "[jdk.internal.reflect.ConstantPool$Tag].valueOf(byte)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "jdk.internal.reflect.ConstantPool:67,1"
      Dst: "[jdk.internal.reflect.ConstantPool].getTagAt0(java.lang.Object,int)"
    - Src: "jdk.internal.reflect.ConstantPool:67,1"
      Dst: "[jdk.internal.reflect.ConstantPool$Tag].valueOf(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[jdk.internal.reflect.ConstantPool].getTagAt0(java.lang.Object,int)"
    functionSourceFile: "jdk.internal.reflect.ConstantPool"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.io.File,java.io.File)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslServerContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.io.File"
    - "java.io.File"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.security.Provider,java.io.File,java.io.File,java.lang.String,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long,java.lang.String)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslServerContext:51,1"
      Dst: "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.security.Provider,java.io.File,java.io.File,java.lang.String,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.io.File,java.io.File,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslServerContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.io.File,java.io.File,java.lang.String,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslServerContext:66,1"
      Dst: "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.io.File,java.io.File,java.lang.String,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.io.File,java.io.File,java.lang.String,java.lang.Iterable,java.lang.Iterable,long,long)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslServerContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 7
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.lang.String"
    - "java.lang.Iterable"
    - "java.lang.Iterable"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].toApplicationProtocolConfig(java.lang.Iterable)"
    - "[io.netty.handler.ssl.JdkSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig,boolean)"
    - "[java.security.KeyStore].getDefaultType()"
    - "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.security.Provider,java.io.File,java.io.File,java.lang.String,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long,java.lang.String)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslServerContext:93,1"
      Dst: "[io.netty.handler.ssl.SslContext].toApplicationProtocolConfig(java.lang.Iterable)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:93,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig,boolean)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:94,1"
      Dst: "[java.security.KeyStore].getDefaultType()"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:92,1"
      Dst: "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.security.Provider,java.io.File,java.io.File,java.lang.String,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.io.File,java.io.File,java.lang.String,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,long,long)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslServerContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.lang.String"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.ApplicationProtocolConfig"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig,boolean)"
    - "[java.security.KeyStore].getDefaultType()"
    - "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.security.Provider,java.io.File,java.io.File,java.lang.String,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long,java.lang.String)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslServerContext:120,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig,boolean)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:120,1"
      Dst: "[java.security.KeyStore].getDefaultType()"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:119,1"
      Dst: "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.security.Provider,java.io.File,java.io.File,java.lang.String,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.io.File,java.io.File,java.lang.String,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslServerContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "java.io.File"
    - "java.io.File"
    - "java.lang.String"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.security.KeyStore].getDefaultType()"
    - "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.security.Provider,java.io.File,java.io.File,java.lang.String,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long,java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslServerContext:146,1"
      Dst: "[java.security.KeyStore].getDefaultType()"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:145,1"
      Dst: "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.security.Provider,java.io.File,java.io.File,java.lang.String,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long,java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.security.Provider,java.io.File,java.io.File,java.lang.String,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslServerContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 10
    argTypes:
    - "java.security.Provider"
    - "java.io.File"
    - "java.io.File"
    - "java.lang.String"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    - "long"
    - "long"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].toX509CertificatesInternal(java.io.File)"
    - "[io.netty.handler.ssl.SslContext].toPrivateKeyInternal(java.io.File,java.lang.String)"
    - "[io.netty.handler.ssl.JdkSslServerContext].newSSLContext(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,long,long,java.lang.String)"
    - "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    functionUses: 0
    ICount: 17
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslServerContext:154,1"
      Dst: "[io.netty.handler.ssl.SslContext].toX509CertificatesInternal(java.io.File)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:154,1"
      Dst: "[io.netty.handler.ssl.SslContext].toPrivateKeyInternal(java.io.File,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:153,1"
      Dst: "[io.netty.handler.ssl.JdkSslServerContext].newSSLContext(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,long,long,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:153,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,long,long)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslServerContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 11
    argTypes:
    - "java.io.File"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.io.File"
    - "java.io.File"
    - "java.lang.String"
    - "javax.net.ssl.KeyManagerFactory"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.ApplicationProtocolConfig"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].toX509CertificatesInternal(java.io.File)"
    - "[io.netty.handler.ssl.SslContext].toPrivateKeyInternal(java.io.File,java.lang.String)"
    - "[io.netty.handler.ssl.JdkSslServerContext].newSSLContext(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,long,long,java.lang.String)"
    - "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    functionUses: 0
    ICount: 19
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslServerContext:193,1"
      Dst: "[io.netty.handler.ssl.SslContext].toX509CertificatesInternal(java.io.File)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:194,1"
      Dst: "[io.netty.handler.ssl.SslContext].toPrivateKeyInternal(java.io.File,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:193,1"
      Dst: "[io.netty.handler.ssl.JdkSslServerContext].newSSLContext(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,long,long,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:193,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.io.File,javax.net.ssl.TrustManagerFactory,java.io.File,java.io.File,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,long,long)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslServerContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 11
    argTypes:
    - "java.io.File"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.io.File"
    - "java.io.File"
    - "java.lang.String"
    - "javax.net.ssl.KeyManagerFactory"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.JdkApplicationProtocolNegotiator"
    - "long"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.SslContext].toX509CertificatesInternal(java.io.File)"
    - "[io.netty.handler.ssl.SslContext].toPrivateKeyInternal(java.io.File,java.lang.String)"
    - "[java.security.KeyStore].getDefaultType()"
    - "[io.netty.handler.ssl.JdkSslServerContext].newSSLContext(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,long,long,java.lang.String)"
    - "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslServerContext:234,1"
      Dst: "[io.netty.handler.ssl.SslContext].toX509CertificatesInternal(java.io.File)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:235,1"
      Dst: "[io.netty.handler.ssl.SslContext].toPrivateKeyInternal(java.io.File,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:236,1"
      Dst: "[java.security.KeyStore].getDefaultType()"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:234,1"
      Dst: "[io.netty.handler.ssl.JdkSslServerContext].newSSLContext(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,long,long,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:234,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslServerContext].<init>(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.ApplicationProtocolConfig,long,long,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslServerContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 16
    argTypes:
    - "java.security.Provider"
    - "java.security.cert.X509Certificate[]"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.security.cert.X509Certificate[]"
    - "java.security.PrivateKey"
    - "java.lang.String"
    - "javax.net.ssl.KeyManagerFactory"
    - "java.lang.Iterable"
    - "io.netty.handler.ssl.CipherSuiteFilter"
    - "io.netty.handler.ssl.ApplicationProtocolConfig"
    - "long"
    - "long"
    - "io.netty.handler.ssl.ClientAuth"
    - "java.lang.String[]"
    - "boolean"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslServerContext].newSSLContext(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,long,long,java.lang.String)"
    - "[io.netty.handler.ssl.JdkSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig,boolean)"
    - "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    functionUses: 0
    ICount: 21
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslServerContext:247,1"
      Dst: "[io.netty.handler.ssl.JdkSslServerContext].newSSLContext(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,long,long,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:249,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].toNegotiator(io.netty.handler.ssl.ApplicationProtocolConfig,boolean)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:247,1"
      Dst: "[io.netty.handler.ssl.JdkSslContext].<init>(javax.net.ssl.SSLContext,boolean,java.lang.Iterable,io.netty.handler.ssl.CipherSuiteFilter,io.netty.handler.ssl.JdkApplicationProtocolNegotiator,io.netty.handler.ssl.ClientAuth,java.lang.String[],boolean)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkSslServerContext].newSSLContext(java.security.Provider,java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.security.cert.X509Certificate[],java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,long,long,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.JdkSslServerContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "javax.net.ssl.SSLContext"
    argCount: 10
    argTypes:
    - "java.security.Provider"
    - "java.security.cert.X509Certificate[]"
    - "javax.net.ssl.TrustManagerFactory"
    - "java.security.cert.X509Certificate[]"
    - "java.security.PrivateKey"
    - "java.lang.String"
    - "javax.net.ssl.KeyManagerFactory"
    - "long"
    - "long"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[io.netty.handler.ssl.SslContext].buildTrustManagerFactory(java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.lang.String)"
    - "[io.netty.handler.ssl.SslContext].buildKeyManagerFactory(java.security.cert.X509Certificate[],java.lang.String,java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String)"
    - "[javax.net.ssl.SSLContext].getInstance(java.lang.String)"
    - "[javax.net.ssl.SSLContext].getInstance(java.lang.String,java.security.Provider)"
    - "[javax.net.ssl.KeyManagerFactory].getKeyManagers()"
    - "[javax.net.ssl.TrustManagerFactory].getTrustManagers()"
    - "[javax.net.ssl.SSLContext].init(javax.net.ssl.KeyManager[],javax.net.ssl.TrustManager[],java.security.SecureRandom)"
    - "[javax.net.ssl.SSLContext].getServerSessionContext()"
    - "[java.lang.Math].min(long,long)"
    - "[javax.net.ssl.SSLSessionContext].setSessionCacheSize(int)"
    - "[javax.net.ssl.SSLSessionContext].setSessionTimeout(int)"
    - "[javax.net.ssl.SSLException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JdkSslServerContext:257"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:262"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:261"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslServerContext:257"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:262"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:261"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslServerContext:262"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:265"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:264"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslServerContext:265"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:271"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:270"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslServerContext:271"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:272"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:271"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslServerContext:273"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:274"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:273"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslServerContext:278"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:281"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:280"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslServerContext:281"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:284"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:283"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.ssl.JdkSslServerContext:286"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:289"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JdkSslServerContext:288"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkSslServerContext:258,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:263,1"
      Dst: "[io.netty.handler.ssl.SslContext].buildTrustManagerFactory(java.security.cert.X509Certificate[],javax.net.ssl.TrustManagerFactory,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:266,1"
      Dst: "[io.netty.handler.ssl.SslContext].buildKeyManagerFactory(java.security.cert.X509Certificate[],java.lang.String,java.security.PrivateKey,java.lang.String,javax.net.ssl.KeyManagerFactory,java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:271,1"
      Dst: "[javax.net.ssl.SSLContext].getInstance(java.lang.String)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:272,1"
      Dst: "[javax.net.ssl.SSLContext].getInstance(java.lang.String,java.security.Provider)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:273,1"
      Dst: "[javax.net.ssl.KeyManagerFactory].getKeyManagers()"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:274,1"
      Dst: "[javax.net.ssl.TrustManagerFactory].getTrustManagers()"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:273,1"
      Dst: "[javax.net.ssl.SSLContext].init(javax.net.ssl.KeyManager[],javax.net.ssl.TrustManager[],java.security.SecureRandom)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:277,1"
      Dst: "[javax.net.ssl.SSLContext].getServerSessionContext()"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:279,1"
      Dst: "[java.lang.Math].min(long,long)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:279,1"
      Dst: "[javax.net.ssl.SSLSessionContext].setSessionCacheSize(int)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:282,1"
      Dst: "[javax.net.ssl.SSLSessionContext].setSessionTimeout(int)"
    - Src: "io.netty.handler.ssl.JdkSslServerContext:289,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 21
    CyclomaticComplexity: 7
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].<init>(io.netty.channel.epoll.EpollServerSocketChannel)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.EpollServerSocketChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setReuseAddress(boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:34,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:39,1"
      Dst: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setReuseAddress(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].getOptions()"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "java.util.Map"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerChannelConfig].getOptions()"
    - "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:44,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].getOptions()"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:44,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].getOptions(java.util.Map,io.netty.channel.ChannelOption[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].getOption(io.netty.channel.ChannelOption<T>)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 50
    functionLinenumberEnd: 64
    functionDepth: 3
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelOption<T>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].isReusePort()"
    - "[java.lang.Boolean].valueOf(boolean)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].isFreeBind()"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].isIpTransparent()"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].getTcpDeferAccept()"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].getOption(io.netty.channel.ChannelOption)"
    functionUses: 5
    ICount: 24
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollServerSocketChannelConfig:51"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollServerSocketChannelConfig:54"
        BranchSideFuncs:
        - "isReusePort()"
      - BranchSide: "io.netty.channel.epoll.EpollServerSocketChannelConfig:53"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollServerSocketChannelConfig:54"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollServerSocketChannelConfig:57"
        BranchSideFuncs:
        - "isFreeBind()"
      - BranchSide: "io.netty.channel.epoll.EpollServerSocketChannelConfig:56"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollServerSocketChannelConfig:57"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollServerSocketChannelConfig:60"
        BranchSideFuncs:
        - "valueOf(boolean)"
        - "isIpTransparent()"
      - BranchSide: "io.netty.channel.epoll.EpollServerSocketChannelConfig:59"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollServerSocketChannelConfig:60"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollServerSocketChannelConfig:63"
        BranchSideFuncs:
        - "getTcpDeferAccept()"
        - "valueOf(int)"
      - BranchSide: "io.netty.channel.epoll.EpollServerSocketChannelConfig:62"
        BranchSideFuncs:
        - "getOption(io.netty.channel.ChannelOption)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:52,1"
      Dst: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].isReusePort()"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:52,1"
      Dst: "[java.lang.Boolean].valueOf(boolean)"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:55,1"
      Dst: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].isFreeBind()"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:58,1"
      Dst: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].isIpTransparent()"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:61,1"
      Dst: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].getTcpDeferAccept()"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:61,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:63,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].getOption(io.netty.channel.ChannelOption)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].isReusePort()"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 193
    functionLinenumberEnd: 197
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].isReusePort()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:194,1"
      Dst: "[io.netty.channel.unix.Socket].isReusePort()"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:196,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].isFreeBind()"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 221
    functionLinenumberEnd: 225
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].isIpFreeBind()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:222,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].isIpFreeBind()"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:224,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].isIpFreeBind()"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 271
    functionLinenumberEnd: 273
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].isIpFreeBind(int)"
    functionUses: 2
    ICount: 8
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.LinuxSocket:272"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:271"
        BranchSideFuncs:
        - "intValue()"
        - "isIpFreeBind(int)"
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:272,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:272,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].isIpFreeBind(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.LinuxSocket].isIpFreeBind(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].isIpTransparent()"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 246
    functionLinenumberEnd: 250
    functionDepth: 2
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].isIpTransparent()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:247,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].isIpTransparent()"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:249,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].getTcpDeferAccept()"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 282
    functionLinenumberEnd: 286
    functionDepth: 2
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getTcpDeferAccept()"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:283,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getTcpDeferAccept()"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:285,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getTcpDeferAccept()"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 243
    functionLinenumberEnd: 245
    functionDepth: 1
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].getTcpDeferAccept(int)"
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    functionUses: 1
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:244,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:244,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].getTcpDeferAccept(int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].getTcpDeferAccept(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 67
    functionLinenumberEnd: 87
    functionDepth: 7
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelOption"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - "[java.lang.Boolean].booleanValue()"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setReusePort(boolean)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setFreeBind(boolean)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setIpTransparent(boolean)"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setTcpMd5Sig(java.util.Map)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setTcpDeferAccept(int)"
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    functionUses: 2
    ICount: 36
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.EpollServerSocketChannelConfig:70"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollServerSocketChannelConfig:72"
        BranchSideFuncs:
        - "setReusePort(boolean)"
      - BranchSide: "io.netty.channel.epoll.EpollServerSocketChannelConfig:71"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollServerSocketChannelConfig:72"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollServerSocketChannelConfig:74"
        BranchSideFuncs:
        - "setFreeBind(boolean)"
      - BranchSide: "io.netty.channel.epoll.EpollServerSocketChannelConfig:73"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollServerSocketChannelConfig:74"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollServerSocketChannelConfig:76"
        BranchSideFuncs:
        - "booleanValue()"
        - "setIpTransparent(boolean)"
      - BranchSide: "io.netty.channel.epoll.EpollServerSocketChannelConfig:75"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollServerSocketChannelConfig:76"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollServerSocketChannelConfig:75"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.EpollServerSocketChannelConfig:76"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.EpollServerSocketChannelConfig:82"
        BranchSideFuncs:
        - "setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:68,1"
      Dst: "[io.netty.channel.DefaultChannelConfig].validate(io.netty.channel.ChannelOption,java.lang.Object)"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:71,1"
      Dst: "[java.lang.Boolean].booleanValue()"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:71,1"
      Dst: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setReusePort(boolean)"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:73,1"
      Dst: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setFreeBind(boolean)"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:75,1"
      Dst: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setIpTransparent(boolean)"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:79,1"
      Dst: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setTcpMd5Sig(java.util.Map)"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:81,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:81,1"
      Dst: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setTcpDeferAccept(int)"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:83,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setOption(io.netty.channel.ChannelOption,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setReusePort(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 213
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.Socket].setReusePort(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:209,1"
      Dst: "[io.netty.channel.unix.Socket].setReusePort(boolean)"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:212,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setFreeBind(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 233
    functionLinenumberEnd: 238
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].setIpFreeBind(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:234,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setIpFreeBind(boolean)"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:237,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setIpFreeBind(boolean)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 210
    functionLinenumberEnd: 213
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].setIpFreeBind(int,int)"
    functionUses: 2
    ICount: 9
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.LinuxSocket:211"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:211"
        BranchSideFuncs:
        - "intValue()"
        - "setIpFreeBind(int,int)"
      - BranchSide: "io.netty.channel.epoll.LinuxSocket:210"
        BranchSideFuncs:
        - "intValue()"
        - "setIpFreeBind(int,int)"
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:211,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:211,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setIpFreeBind(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setIpFreeBind(int,int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setIpTransparent(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 258
    functionLinenumberEnd: 263
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].setIpTransparent(boolean)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:259,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setIpTransparent(boolean)"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:262,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setTcpDeferAccept(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 270
    functionLinenumberEnd: 275
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.LinuxSocket].setTcpDeferAccept(int)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:271,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setTcpDeferAccept(int)"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:274,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setTcpDeferAccept(int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.unix.FileDescriptor].intValue()"
    - "[io.netty.channel.epoll.LinuxSocket].setTcpDeferAccept(int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.LinuxSocket:168,1"
      Dst: "[io.netty.channel.unix.FileDescriptor].intValue()"
    - Src: "io.netty.channel.epoll.LinuxSocket:168,1"
      Dst: "[io.netty.channel.epoll.LinuxSocket].setTcpDeferAccept(int,int)"
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.LinuxSocket].setTcpDeferAccept(int,int)"
    functionSourceFile: "io.netty.channel.epoll.LinuxSocket"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 0
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.io.IOException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: false
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 0
    CyclomaticComplexity: 0
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setReuseAddress(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setReuseAddress(boolean)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:91,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setReuseAddress(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setReceiveBufferSize(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionDepth: 3
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setReceiveBufferSize(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:97,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setReceiveBufferSize(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setPerformancePreferences(int,int,int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setBacklog(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionDepth: 2
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setBacklog(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:108,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setBacklog(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setConnectTimeoutMillis(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionDepth: 4
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setConnectTimeoutMillis(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:114,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setConnectTimeoutMillis(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setMaxMessagesPerRead(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionDepth: 4
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setMaxMessagesPerRead(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:121,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setMaxMessagesPerRead(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setWriteSpinCount(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 126
    functionLinenumberEnd: 129
    functionDepth: 4
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setWriteSpinCount(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:127,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setWriteSpinCount(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 135
    functionDepth: 4
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    functionUses: 2
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:133,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setAllocator(io.netty.buffer.ByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionDepth: 4
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    functionUses: 3
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:139,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setRecvByteBufAllocator(io.netty.channel.RecvByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setAutoRead(boolean)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 144
    functionLinenumberEnd: 147
    functionDepth: 4
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setAutoRead(boolean)"
    functionUses: 10
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:145,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setAutoRead(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setWriteBufferHighWaterMark(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 154
    functionDepth: 5
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setWriteBufferHighWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:152,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setWriteBufferHighWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setWriteBufferLowWaterMark(int)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 161
    functionDepth: 5
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setWriteBufferLowWaterMark(int)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:159,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setWriteBufferLowWaterMark(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 164
    functionLinenumberEnd: 167
    functionDepth: 4
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.WriteBufferWaterMark"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:165,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setWriteBufferWaterMark(io.netty.channel.WriteBufferWaterMark)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 170
    functionLinenumberEnd: 173
    functionDepth: 4
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "io.netty.channel.MessageSizeEstimator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:171,1"
      Dst: "[io.netty.channel.epoll.EpollServerChannelConfig].setMessageSizeEstimator(io.netty.channel.MessageSizeEstimator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollServerSocketChannelConfig].setTcpMd5Sig(java.util.Map<InetAddress,byte[]>)"
    functionSourceFile: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 186
    functionDepth: 1
    returnType: "io.netty.channel.epoll.EpollServerSocketChannelConfig"
    argCount: 1
    argTypes:
    - "java.util.Map<InetAddress,byte[]>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollServerSocketChannel].setTcpMd5Sig(java.util.Map)"
    - "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    functionUses: 1
    ICount: 10
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:182,1"
      Dst: "[io.netty.channel.epoll.EpollServerSocketChannel].setTcpMd5Sig(java.util.Map)"
    - Src: "io.netty.channel.epoll.EpollServerSocketChannelConfig:185,1"
      Dst: "[io.netty.channel.ChannelException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 2
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener].writabilityChanged(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener"
    linkageType: ""
    functionLinenumber: 716
    functionLinenumberEnd: 724
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http2.Http2FrameCodec].access$800(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,boolean)"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].flowController()"
    - "[io.netty.handler.codec.http2.DefaultHttp2RemoteFlowController].isWritable(io.netty.handler.codec.http2.Http2Stream)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController()"
    - "[io.netty.handler.codec.http2.Http2RemoteFlowController].isWritable(io.netty.handler.codec.http2.Http2Stream)"
    functionUses: 1
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener:718"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener:722"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener:721"
        BranchSideFuncs:
        - "isWritable(io.netty.handler.codec.http2.Http2Stream)"
        - "remote()"
        - "flowController()"
        - "connection()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener:717,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].getProperty(io.netty.handler.codec.http2.Http2Connection$PropertyKey)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener:722,1"
      Dst: "[io.netty.handler.codec.http2.Http2ConnectionHandler].connection()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener:722,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].remote()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener:722,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].flowController()"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener:722,1"
      Dst: "[io.netty.handler.codec.http2.Http2RemoteFlowController].isWritable(io.netty.handler.codec.http2.Http2Stream)"
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec$Http2RemoteFlowControllerListener:721,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].access$800(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec].access$800(io.netty.handler.codec.http2.Http2FrameCodec,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.handler.codec.http2.Http2FrameCodec"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2StreamWritabilityChanged(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,boolean)"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:148,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2StreamWritabilityChanged(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.Http2FrameCodec].onHttp2StreamWritabilityChanged(io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream,boolean)"
    functionSourceFile: "io.netty.handler.codec.http2.Http2FrameCodec"
    linkageType: ""
    functionLinenumber: 698
    functionLinenumberEnd: 701
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    functionUses: 1
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.Http2FrameCodec:699,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].<init>(io.netty.channel.AbstractChannel$AbstractUnsafe,java.lang.Exception)"
    functionSourceFile: "io.netty.channel.AbstractChannel$AbstractUnsafe$8"
    linkageType: ""
    functionLinenumber: 835
    functionLinenumberEnd: 837
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.AbstractChannel$AbstractUnsafe"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$8:836,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    functionSourceFile: "io.netty.channel.AbstractChannel$AbstractUnsafe$8"
    linkageType: ""
    functionLinenumber: 838
    functionLinenumberEnd: 841
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel].access$500(io.netty.channel.AbstractChannel)"
    - "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 49
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$8:839,1"
      Dst: "[io.netty.channel.AbstractChannel].access$500(io.netty.channel.AbstractChannel)"
    - Src: "io.netty.channel.AbstractChannel$AbstractUnsafe$8:839,1"
      Dst: "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].<init>(byte[])"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].<init>(byte[],boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:79,1"
      Dst: "[io.netty.util.AsciiString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].<init>(java.nio.ByteBuffer)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.ByteBuffer"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].<init>(java.nio.ByteBuffer,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:115,1"
      Dst: "[io.netty.util.AsciiString].<init>(java.nio.ByteBuffer,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].<init>(java.nio.ByteBuffer,boolean)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.nio.ByteBuffer"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.nio.Buffer].position()"
    - "[java.nio.Buffer].remaining()"
    - "[io.netty.util.AsciiString].<init>(java.nio.ByteBuffer,int,int,boolean)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:125,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.util.AsciiString:125,1"
      Dst: "[java.nio.Buffer].remaining()"
    - Src: "io.netty.util.AsciiString:125,1"
      Dst: "[io.netty.util.AsciiString].<init>(java.nio.ByteBuffer,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].<init>(java.nio.ByteBuffer,int,int,boolean)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.nio.ByteBuffer"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.nio.Buffer].capacity()"
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[java.nio.ByteBuffer].hasArray()"
    - "[java.nio.ByteBuffer].arrayOffset()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.util.Arrays].copyOfRange(byte[],int,int)"
    - "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - "[java.nio.Buffer].position()"
    - "[java.nio.ByteBuffer].get(byte[],int,int)"
    - "[java.nio.ByteBuffer].position(int)"
    functionUses: 0
    ICount: 47
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:135"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:140"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:139"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:140"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:150"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:149"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:141"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:146"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:145"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:134,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.AsciiString:135,1"
      Dst: "[java.nio.Buffer].capacity()"
    - Src: "io.netty.util.AsciiString:135,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.util.AsciiString:136,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.AsciiString:136,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.AsciiString:136,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.AsciiString:137,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.AsciiString:137,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.AsciiString:137,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.util.AsciiString:140,1"
      Dst: "[java.nio.ByteBuffer].hasArray()"
    - Src: "io.netty.util.AsciiString:142,1"
      Dst: "[java.nio.ByteBuffer].arrayOffset()"
    - Src: "io.netty.util.AsciiString:143,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "io.netty.util.AsciiString:143,1"
      Dst: "[java.util.Arrays].copyOfRange(byte[],int,int)"
    - Src: "io.netty.util.AsciiString:150,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - Src: "io.netty.util.AsciiString:151,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.util.AsciiString:152,1"
      Dst: "[java.nio.ByteBuffer].get(byte[],int,int)"
    - Src: "io.netty.util.AsciiString:153,1"
      Dst: "[java.nio.ByteBuffer].position(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.AsciiString].<init>(char[])"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "char[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].<init>(char[],int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:163,1"
      Dst: "[io.netty.util.AsciiString].<init>(char[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].<init>(char[],int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - "[io.netty.util.AsciiString].c2b(char)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:171"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:176"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:175"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:177"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:170,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.AsciiString:171,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.util.AsciiString:172,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.AsciiString:172,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.AsciiString:172,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.AsciiString:172,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.AsciiString:172,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.AsciiString:172,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.util.AsciiString:176,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - Src: "io.netty.util.AsciiString:178,1"
      Dst: "[io.netty.util.AsciiString].c2b(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].<init>(char[],java.nio.charset.Charset)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "char[]"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].<init>(char[],java.nio.charset.Charset,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:188,1"
      Dst: "[io.netty.util.AsciiString].<init>(char[],java.nio.charset.Charset,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].<init>(char[],java.nio.charset.Charset,int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "char[]"
    - "java.nio.charset.Charset"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.nio.CharBuffer].wrap(char[],int,int)"
    - "[io.netty.util.CharsetUtil].encoder(java.nio.charset.Charset)"
    - "[java.nio.charset.CharsetEncoder].maxBytesPerChar()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.charset.CharsetEncoder].encode(java.nio.CharBuffer,java.nio.ByteBuffer,boolean)"
    - "[java.nio.ByteBuffer].arrayOffset()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.nio.Buffer].position()"
    - "[java.util.Arrays].copyOfRange(byte[],int,int)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:195,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.AsciiString:196,1"
      Dst: "[java.nio.CharBuffer].wrap(char[],int,int)"
    - Src: "io.netty.util.AsciiString:197,1"
      Dst: "[io.netty.util.CharsetUtil].encoder(java.nio.charset.Charset)"
    - Src: "io.netty.util.AsciiString:198,1"
      Dst: "[java.nio.charset.CharsetEncoder].maxBytesPerChar()"
    - Src: "io.netty.util.AsciiString:198,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "io.netty.util.AsciiString:199,1"
      Dst: "[java.nio.charset.CharsetEncoder].encode(java.nio.CharBuffer,java.nio.ByteBuffer,boolean)"
    - Src: "io.netty.util.AsciiString:200,1"
      Dst: "[java.nio.ByteBuffer].arrayOffset()"
    - Src: "io.netty.util.AsciiString:201,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "io.netty.util.AsciiString:201,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.util.AsciiString:201,1"
      Dst: "[java.util.Arrays].copyOfRange(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].<init>(java.lang.CharSequence,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[io.netty.util.AsciiString].<init>(java.lang.CharSequence,java.nio.charset.Charset,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:235,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:235,1"
      Dst: "[io.netty.util.AsciiString].<init>(java.lang.CharSequence,java.nio.charset.Charset,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].<init>(java.lang.CharSequence,java.nio.charset.Charset,int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.CharSequence"
    - "java.nio.charset.Charset"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.nio.CharBuffer].wrap(java.lang.CharSequence,int,int)"
    - "[io.netty.util.CharsetUtil].encoder(java.nio.charset.Charset)"
    - "[java.nio.charset.CharsetEncoder].maxBytesPerChar()"
    - "[java.nio.ByteBuffer].allocate(int)"
    - "[java.nio.charset.CharsetEncoder].encode(java.nio.CharBuffer,java.nio.ByteBuffer,boolean)"
    - "[java.nio.ByteBuffer].arrayOffset()"
    - "[java.nio.ByteBuffer].array()"
    - "[java.nio.Buffer].position()"
    - "[java.util.Arrays].copyOfRange(byte[],int,int)"
    functionUses: 0
    ICount: 26
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:242,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.AsciiString:243,1"
      Dst: "[java.nio.CharBuffer].wrap(java.lang.CharSequence,int,int)"
    - Src: "io.netty.util.AsciiString:244,1"
      Dst: "[io.netty.util.CharsetUtil].encoder(java.nio.charset.Charset)"
    - Src: "io.netty.util.AsciiString:245,1"
      Dst: "[java.nio.charset.CharsetEncoder].maxBytesPerChar()"
    - Src: "io.netty.util.AsciiString:245,1"
      Dst: "[java.nio.ByteBuffer].allocate(int)"
    - Src: "io.netty.util.AsciiString:246,1"
      Dst: "[java.nio.charset.CharsetEncoder].encode(java.nio.CharBuffer,java.nio.ByteBuffer,boolean)"
    - Src: "io.netty.util.AsciiString:247,1"
      Dst: "[java.nio.ByteBuffer].arrayOffset()"
    - Src: "io.netty.util.AsciiString:248,1"
      Dst: "[java.nio.ByteBuffer].array()"
    - Src: "io.netty.util.AsciiString:248,1"
      Dst: "[java.nio.Buffer].position()"
    - Src: "io.netty.util.AsciiString:248,1"
      Dst: "[java.util.Arrays].copyOfRange(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].forEachByteDesc(io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].forEachByteDesc0(int,int,io.netty.util.ByteProcessor)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:295,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:295,1"
      Dst: "[io.netty.util.AsciiString].forEachByteDesc0(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].forEachByteDesc0(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.ByteProcessor].process(byte)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:315"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:316"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:316,1"
      Dst: "[io.netty.util.ByteProcessor].process(byte)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].forEachByteDesc(int,int,io.netty.util.ByteProcessor)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 3
    argTypes:
    - "int"
    - "int"
    - "io.netty.util.ByteProcessor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[io.netty.util.AsciiString].forEachByteDesc0(int,int,io.netty.util.ByteProcessor)"
    functionUses: 0
    ICount: 23
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:306"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:310"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:309"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:306,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:306,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.util.AsciiString:307,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.AsciiString:307,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.AsciiString:307,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.AsciiString:308,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.AsciiString:308,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.AsciiString:308,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.util.AsciiString:310,1"
      Dst: "[io.netty.util.AsciiString].forEachByteDesc0(int,int,io.netty.util.ByteProcessor)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].isEmpty()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 339
    functionLinenumberEnd: 341
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:340"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:339"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].arrayChanged()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].isEntireArrayUsed()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:385"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:384"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:385"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:384"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.AsciiString].toByteArray()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "byte[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].toByteArray(int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:392,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:392,1"
      Dst: "[io.netty.util.AsciiString].toByteArray(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].toByteArray(int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "byte[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Arrays].copyOfRange(byte[],int,int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:400,1"
      Dst: "[java.util.Arrays].copyOfRange(byte[],int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].copy(int,byte[],int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "byte[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:412"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:417"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:416"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:412,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:412,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.util.AsciiString:413,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.AsciiString:413,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.AsciiString:413,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.AsciiString:414,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.AsciiString:414,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.AsciiString:414,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.util.AsciiString:417,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.AsciiString:417,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].charAt(int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 421
    functionLinenumberEnd: 423
    functionDepth: 3
    returnType: "char"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].b2c(byte)"
    - "[io.netty.util.AsciiString].byteAt(int)"
    functionUses: 113
    ICount: 5
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:422,1"
      Dst: "[io.netty.util.AsciiString].byteAt(int)"
    - Src: "io.netty.util.AsciiString:422,1"
      Dst: "[io.netty.util.AsciiString].b2c(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].contains(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].indexOf(java.lang.CharSequence)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:432"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:431"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:432,1"
      Dst: "[io.netty.util.AsciiString].indexOf(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].indexOf(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].indexOf(java.lang.CharSequence,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:664,1"
      Dst: "[io.netty.util.AsciiString].indexOf(java.lang.CharSequence,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].indexOf(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.util.AsciiString].c2b0(char)"
    - "[io.netty.util.AsciiString].b2c(byte)"
    functionUses: 0
    ICount: 57
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:679"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:682"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:681"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:682"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:685"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:684"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:683"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:682"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:685"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:689"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:688"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:690"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:693"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:692"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:695"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:696"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:693"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:692"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:698"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:700"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:698"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:700"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:701"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:693"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:692"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:678,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:689,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.AsciiString:693,1"
      Dst: "[io.netty.util.AsciiString].c2b0(char)"
    - Src: "io.netty.util.AsciiString:698,1"
      Dst: "[io.netty.util.AsciiString].b2c(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 22
    CyclomaticComplexity: 7
  - functionName: "[io.netty.util.AsciiString].compareTo(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.CharSequence].length()"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[io.netty.util.AsciiString].b2c(byte)"
    - "[java.lang.CharSequence].charAt(int)"
    functionUses: 0
    ICount: 24
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:450"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:455"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:454"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:458"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:465"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:464"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:460"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:455"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:454"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:455,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:456,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:457,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.util.AsciiString:458,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.util.AsciiString:459,1"
      Dst: "[io.netty.util.AsciiString].b2c(byte)"
    - Src: "io.netty.util.AsciiString:459,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].concat(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.util.AsciiString"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.CharSequence].length()"
    - "[io.netty.util.AsciiString].isEmpty()"
    - "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[io.netty.util.AsciiString].<init>(byte[],boolean)"
    - "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.util.AsciiString].c2b(char)"
    functionUses: 0
    ICount: 46
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:477"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:481"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:480"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:481"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:493"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:492"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:483"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:487"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:486"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:493"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:497"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:496"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:499"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:502"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:475,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:476,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:483,1"
      Dst: "[io.netty.util.AsciiString].isEmpty()"
    - Src: "io.netty.util.AsciiString:487,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - Src: "io.netty.util.AsciiString:488,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.util.AsciiString:488,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "io.netty.util.AsciiString:490,1"
      Dst: "[io.netty.util.AsciiString].<init>(byte[],boolean)"
    - Src: "io.netty.util.AsciiString:494,1"
      Dst: "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    - Src: "io.netty.util.AsciiString:500,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.AsciiString:500,1"
      Dst: "[io.netty.util.AsciiString].c2b(char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].endsWith(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].regionMatches(int,java.lang.CharSequence,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:514,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:515,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:515,1"
      Dst: "[io.netty.util.AsciiString].regionMatches(int,java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].toCharArray()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "char[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].toCharArray(int,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:558,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:558,1"
      Dst: "[io.netty.util.AsciiString].toCharArray(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].toCharArray(int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "char[]"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[io.netty.util.AsciiString].b2c(byte)"
    functionUses: 0
    ICount: 37
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:568"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:572"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:571"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:572"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:577"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:576"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:578"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:580"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:572,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:572,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.util.AsciiString:573,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.AsciiString:573,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.AsciiString:573,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.AsciiString:574,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.AsciiString:574,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.AsciiString:574,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.util.AsciiString:578,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.util.AsciiString:579,1"
      Dst: "[io.netty.util.AsciiString].b2c(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].copy(int,char[],int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "char[]"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[io.netty.util.AsciiString].b2c(byte)"
    functionUses: 0
    ICount: 36
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:595"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:600"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:599"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:601"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:603"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:593,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.AsciiString:595,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:595,1"
      Dst: "[io.netty.util.internal.MathUtil].isOutOfBounds(int,int,int)"
    - Src: "io.netty.util.AsciiString:596,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.AsciiString:596,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.AsciiString:596,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.AsciiString:597,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.AsciiString:597,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.AsciiString:597,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.util.AsciiString:601,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.util.AsciiString:602,1"
      Dst: "[io.netty.util.AsciiString].b2c(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].subSequence(int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.util.AsciiString"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].subSequence(int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:613,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:613,1"
      Dst: "[io.netty.util.AsciiString].subSequence(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].subSequence(int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 624
    functionLinenumberEnd: 626
    functionDepth: 3
    returnType: "io.netty.util.AsciiString"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].subSequence(int,int,boolean)"
    functionUses: 10
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:625,1"
      Dst: "[io.netty.util.AsciiString].subSequence(int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].lastIndexOf(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].lastIndexOf(java.lang.CharSequence,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:748,1"
      Dst: "[io.netty.util.AsciiString].lastIndexOf(java.lang.CharSequence,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].lastIndexOf(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[java.lang.Math].min(int,int)"
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.util.AsciiString].c2b0(char)"
    - "[io.netty.util.AsciiString].b2c(byte)"
    functionUses: 0
    ICount: 48
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:764"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:767"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:766"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:767"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:771"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:770"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:772"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:775"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:774"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:776"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:777"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:779"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:781"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:779"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:781"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:782"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:762,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:763,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.util.AsciiString:771,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.AsciiString:775,1"
      Dst: "[io.netty.util.AsciiString].c2b0(char)"
    - Src: "io.netty.util.AsciiString:779,1"
      Dst: "[io.netty.util.AsciiString].b2c(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.AsciiString].replace(char,char)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.util.AsciiString"
    argCount: 2
    argTypes:
    - "char"
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].c2b0(char)"
    - "[io.netty.util.AsciiString].c2b(char)"
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - "[io.netty.util.AsciiString].<init>(byte[],boolean)"
    functionUses: 0
    ICount: 49
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:871"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:875"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:874"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:878"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:891"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:890"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:879"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:875"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:874"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:884"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:888"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:887"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:886"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:884"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:875,1"
      Dst: "[io.netty.util.AsciiString].c2b0(char)"
    - Src: "io.netty.util.AsciiString:876,1"
      Dst: "[io.netty.util.AsciiString].c2b(char)"
    - Src: "io.netty.util.AsciiString:880,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:880,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - Src: "io.netty.util.AsciiString:881,1"
      Dst: "[java.lang.System].arraycopy(java.lang.Object,int,java.lang.Object,int,int)"
    - Src: "io.netty.util.AsciiString:888,1"
      Dst: "[io.netty.util.AsciiString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.AsciiString].startsWith(java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].startsWith(java.lang.CharSequence,int)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:902,1"
      Dst: "[io.netty.util.AsciiString].startsWith(java.lang.CharSequence,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].startsWith(java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[io.netty.util.AsciiString].regionMatches(int,java.lang.CharSequence,int,int)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:916,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:916,1"
      Dst: "[io.netty.util.AsciiString].regionMatches(int,java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].toUpperCase()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.util.AsciiString"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - "[io.netty.util.AsciiString].toUpperCase(byte)"
    - "[io.netty.util.AsciiString].<init>(byte[],boolean)"
    functionUses: 0
    ICount: 35
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:958"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:967"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:966"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:960"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:955"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:954"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:960"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:955"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:954"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:967"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:971"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:970"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:972"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:975"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:957,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:957,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.util.AsciiString:971,1"
      Dst: "[io.netty.util.internal.PlatformDependent].allocateUninitializedArray(int)"
    - Src: "io.netty.util.AsciiString:973,1"
      Dst: "[io.netty.util.AsciiString].toUpperCase(byte)"
    - Src: "io.netty.util.AsciiString:976,1"
      Dst: "[io.netty.util.AsciiString].<init>(byte[],boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.AsciiString].toUpperCase(byte)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "byte"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].isLowerCase(byte)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1841"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1840"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1841,1"
      Dst: "[io.netty.util.AsciiString].isLowerCase(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].isLowerCase(byte)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1845"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1844"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1845"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1844"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.AsciiString].matches(java.lang.String)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Pattern].matches(java.lang.String,java.lang.CharSequence)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1063,1"
      Dst: "[java.util.regex.Pattern].matches(java.lang.String,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].split(java.lang.String,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.util.AsciiString[]"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.regex.Pattern].compile(java.lang.String)"
    - "[java.util.regex.Pattern].split(java.lang.CharSequence,int)"
    - "[io.netty.util.AsciiString].toAsciiStringArray(java.lang.String[])"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1078,1"
      Dst: "[java.util.regex.Pattern].compile(java.lang.String)"
    - Src: "io.netty.util.AsciiString:1078,1"
      Dst: "[java.util.regex.Pattern].split(java.lang.CharSequence,int)"
    - Src: "io.netty.util.AsciiString:1078,1"
      Dst: "[io.netty.util.AsciiString].toAsciiStringArray(java.lang.String[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].toAsciiStringArray(java.lang.String[])"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.util.AsciiString[]"
    argCount: 1
    argTypes:
    - "java.lang.String[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1528"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1530"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1529,1"
      Dst: "[io.netty.util.AsciiString].<init>(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].split(char)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.util.AsciiString[]"
    argCount: 1
    argTypes:
    - "char"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - "[io.netty.util.internal.InternalThreadLocalMap].arrayList()"
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].charAt(int)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.util.AsciiString].arrayOffset()"
    - "[io.netty.util.AsciiString].<init>(byte[],int,int,boolean)"
    - "[java.util.List].size()"
    - "[java.util.List].get(int)"
    - "[io.netty.util.AsciiString].isEmpty()"
    - "[java.util.List].remove(int)"
    - "[java.util.List].toArray(java.lang.Object[])"
    functionUses: 0
    ICount: 53
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1089"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1100"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1099"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1090"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1085"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1084"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1091"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1094"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1093"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1100"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1102"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1103"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1107"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1108"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1118"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1117"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1109"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1117"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1085,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].get()"
    - Src: "io.netty.util.AsciiString:1085,1"
      Dst: "[io.netty.util.internal.InternalThreadLocalMap].arrayList()"
    - Src: "io.netty.util.AsciiString:1088,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:1090,1"
      Dst: "[io.netty.util.AsciiString].charAt(int)"
    - Src: "io.netty.util.AsciiString:1092,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.util.AsciiString:1094,1"
      Dst: "[io.netty.util.AsciiString].arrayOffset()"
    - Src: "io.netty.util.AsciiString:1094,1"
      Dst: "[io.netty.util.AsciiString].<init>(byte[],int,int,boolean)"
    - Src: "io.netty.util.AsciiString:1108,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.util.AsciiString:1109,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.util.AsciiString:1109,1"
      Dst: "[io.netty.util.AsciiString].isEmpty()"
    - Src: "io.netty.util.AsciiString:1110,1"
      Dst: "[java.util.List].remove(int)"
    - Src: "io.netty.util.AsciiString:1118,1"
      Dst: "[java.util.List].toArray(java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 17
    CyclomaticComplexity: 8
  - functionName: "[io.netty.util.AsciiString].parseBoolean()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1193"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1192"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1193"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1192"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.AsciiString].parseChar()"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "char"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].parseChar(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1197,1"
      Dst: "[io.netty.util.AsciiString].parseChar(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].parseChar(int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "char"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - "[io.netty.util.AsciiString].b2c(byte)"
    functionUses: 0
    ICount: 29
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1201"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1205"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1204"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1201,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:1202,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.AsciiString:1202,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.AsciiString:1202,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.util.AsciiString:1202,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.util.AsciiString:1202,1"
      Dst: "[java.lang.IndexOutOfBoundsException].<init>(java.lang.String)"
    - Src: "io.netty.util.AsciiString:1206,1"
      Dst: "[io.netty.util.AsciiString].b2c(byte)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].parseShort(int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "short"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].parseShort(int,int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1214,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:1214,1"
      Dst: "[io.netty.util.AsciiString].parseShort(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].parseShort(int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "short"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].parseShort(int,int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1218,1"
      Dst: "[io.netty.util.AsciiString].parseShort(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].parseInt(int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "int"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].parseInt(int,int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1235,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:1235,1"
      Dst: "[io.netty.util.AsciiString].parseInt(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].parseLong(int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "long"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].length()"
    - "[io.netty.util.AsciiString].parseLong(int,int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1292,1"
      Dst: "[io.netty.util.AsciiString].length()"
    - Src: "io.netty.util.AsciiString:1292,1"
      Dst: "[io.netty.util.AsciiString].parseLong(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].parseLong(int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "long"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].parseLong(int,int,int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1296,1"
      Dst: "[io.netty.util.AsciiString].parseLong(int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].contains(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].contains(java.lang.CharSequence,java.lang.CharSequence,io.netty.util.AsciiString$CharEqualityComparator)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1426,1"
      Dst: "[io.netty.util.AsciiString].contains(java.lang.CharSequence,java.lang.CharSequence,io.netty.util.AsciiString$CharEqualityComparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].contains(java.lang.CharSequence,java.lang.CharSequence,io.netty.util.AsciiString$CharEqualityComparator)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    - "io.netty.util.AsciiString$CharEqualityComparator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[java.lang.CharSequence].charAt(int)"
    - "[io.netty.util.AsciiString$CharEqualityComparator].equals(char,char)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1573"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1574"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1573"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1573"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1574"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1573"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1573"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1576"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1575"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1576"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1579"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1578"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1580"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1593"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1592"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1581"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1585"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1583"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1579"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1578"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1586"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1589"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1573,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:1581,1"
      Dst: "[java.lang.CharSequence].charAt(int)"
    - Src: "io.netty.util.AsciiString:1581,1"
      Dst: "[io.netty.util.AsciiString$CharEqualityComparator].equals(char,char)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 16
    CyclomaticComplexity: 5
  - functionName: "[io.netty.util.AsciiString].containsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].contains(java.lang.CharSequence,java.lang.CharSequence,io.netty.util.AsciiString$CharEqualityComparator)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1433,1"
      Dst: "[io.netty.util.AsciiString].contains(java.lang.CharSequence,java.lang.CharSequence,io.netty.util.AsciiString$CharEqualityComparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.AsciiString].containsContentEqualsIgnoreCase(java.util.Collection<CharSequence>,java.lang.CharSequence)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1472
    functionLinenumberEnd: 1479
    functionDepth: 5
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.Collection<CharSequence>"
    - "java.lang.CharSequence"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 2
    ICount: 12
    EdgeCount: 166
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1473"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1478"
        BranchSideFuncs:
        - "contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.util.AsciiString:1477"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1474"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1477"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1476"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1473,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.util.AsciiString:1473,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.util.AsciiString:1473,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.util.AsciiString:1474,1"
      Dst: "[io.netty.util.AsciiString].contentEqualsIgnoreCase(java.lang.CharSequence,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].containsAllContentEqualsIgnoreCase(java.util.Collection<CharSequence>,java.util.Collection<CharSequence>)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: 1490
    functionLinenumberEnd: 1497
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "java.util.Collection<CharSequence>"
    - "java.util.Collection<CharSequence>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.util.AsciiString].containsContentEqualsIgnoreCase(java.util.Collection,java.lang.CharSequence)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 12
    EdgeCount: 166
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1491"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1496"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "containsContentEqualsIgnoreCase(java.util.Collection,java.lang.CharSequence)"
        - "next()"
      - BranchSide: "io.netty.util.AsciiString:1495"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1492"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1495"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1494"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1491,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.util.AsciiString:1491,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.util.AsciiString:1491,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.util.AsciiString:1492,1"
      Dst: "[io.netty.util.AsciiString].containsContentEqualsIgnoreCase(java.util.Collection,java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.AsciiString].regionMatches(java.lang.CharSequence,boolean,int,java.lang.CharSequence,int,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "boolean"
    argCount: 6
    argTypes:
    - "java.lang.CharSequence"
    - "boolean"
    - "int"
    - "java.lang.CharSequence"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - "[io.netty.util.AsciiString].regionMatches(boolean,int,java.lang.CharSequence,int,int)"
    - "[io.netty.util.AsciiString].regionMatchesCharSequences(java.lang.CharSequence,int,java.lang.CharSequence,int,int,io.netty.util.AsciiString$CharEqualityComparator)"
    functionUses: 0
    ICount: 28
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1634"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1635"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1634"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1634"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1638"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1637"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1638"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1642"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1641"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1638"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1642"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1641"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1642"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1646"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1645"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1646"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1645"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1639,1"
      Dst: "[java.lang.String].regionMatches(boolean,int,java.lang.String,int,int)"
    - Src: "io.netty.util.AsciiString:1643,1"
      Dst: "[io.netty.util.AsciiString].regionMatches(boolean,int,java.lang.CharSequence,int,int)"
    - Src: "io.netty.util.AsciiString:1646,1"
      Dst: "[io.netty.util.AsciiString].regionMatchesCharSequences(java.lang.CharSequence,int,java.lang.CharSequence,int,int,io.netty.util.AsciiString$CharEqualityComparator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.AsciiString].indexOfIgnoreCase(java.lang.CharSequence,java.lang.CharSequence,int)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "int"
    argCount: 3
    argTypes:
    - "java.lang.CharSequence"
    - "java.lang.CharSequence"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.CharSequence].length()"
    - "[io.netty.util.AsciiString].regionMatches(java.lang.CharSequence,boolean,int,java.lang.CharSequence,int,int)"
    functionUses: 0
    ICount: 27
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.AsciiString:1714"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1714"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1717"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1716"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1717"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1720"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1719"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1722"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1725"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1724"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1725"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1728"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1727"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1728"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.util.AsciiString:1729"
      Branch Sides:
      - BranchSide: "io.netty.util.AsciiString:1728"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.AsciiString:1727"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.AsciiString:1720,1"
      Dst: "[java.lang.CharSequence].length()"
    - Src: "io.netty.util.AsciiString:1729,1"
      Dst: "[io.netty.util.AsciiString].regionMatches(java.lang.CharSequence,boolean,int,java.lang.CharSequence,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 15
    CyclomaticComplexity: 4
  - functionName: "[io.netty.util.AsciiString].compareTo(java.lang.Object)"
    functionSourceFile: "io.netty.util.AsciiString"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AsciiString].compareTo(java.lang.CharSequence)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.AsciiString:47,1"
      Dst: "[io.netty.util.AsciiString].compareTo(java.lang.CharSequence)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.HttpHeaders$Values].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.HttpHeaders$Values"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.HttpHeaders$Values:505,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1"
    linkageType: ""
    functionLinenumber: 60
    functionLinenumberEnd: 69
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].access$000(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].cause()"
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    - "[io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.FailedChannelFuture:io.netty.channel.SucceededChannelFuture:io.netty.channel.VoidChannelPromise].cause()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    - "[io.netty.util.concurrent.Future].cause()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    functionUses: 1
    ICount: 16
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1:61"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1:65"
        BranchSideFuncs:
        - "fireExceptionCaught(java.lang.Throwable)"
        - "access$000(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler)"
        - "tryFailure(java.lang.Throwable)"
        - "cause()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1:64"
        BranchSideFuncs:
        - "fireUserEventTriggered(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1:61,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1:62,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler].access$000(io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1:62,1"
      Dst: "[io.netty.util.concurrent.Future].cause()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1:62,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1:63,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1:65,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireUserEventTriggered(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1:58,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$1].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalServerChannel$3].<init>(io.netty.channel.local.LocalServerChannel,io.netty.channel.local.LocalChannel)"
    functionSourceFile: "io.netty.channel.local.LocalServerChannel$3"
    linkageType: ""
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.local.LocalServerChannel"
    - "io.netty.channel.local.LocalChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalServerChannel$3:140,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalServerChannel$3].run()"
    functionSourceFile: "io.netty.channel.local.LocalServerChannel$3"
    linkageType: ""
    functionLinenumber: 142
    functionLinenumberEnd: 145
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalServerChannel].access$000(io.netty.channel.local.LocalServerChannel,io.netty.channel.local.LocalChannel)"
    functionUses: 50
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalServerChannel$3:143,1"
      Dst: "[io.netty.channel.local.LocalServerChannel].access$000(io.netty.channel.local.LocalServerChannel,io.netty.channel.local.LocalChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalServerChannel].access$000(io.netty.channel.local.LocalServerChannel,io.netty.channel.local.LocalChannel)"
    functionSourceFile: "io.netty.channel.local.LocalServerChannel"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 3
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.local.LocalServerChannel"
    - "io.netty.channel.local.LocalChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalServerChannel].serve0(io.netty.channel.local.LocalChannel)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.local.LocalServerChannel:37,1"
      Dst: "[io.netty.channel.local.LocalServerChannel].serve0(io.netty.channel.local.LocalChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.local.LocalServerChannel].serve0(io.netty.channel.local.LocalChannel)"
    functionSourceFile: "io.netty.channel.local.LocalServerChannel"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 181
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.local.LocalChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.EmptyPriorityQueue].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedQueue].add(java.lang.Object)"
    - "[java.util.AbstractQueue].add(java.lang.Object)"
    - "[java.util.concurrent.LinkedBlockingDeque].add(java.lang.Object)"
    - "[java.util.ArrayDeque].add(java.lang.Object)"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].add(java.lang.Object)"
    - "[java.util.concurrent.ConcurrentLinkedDeque].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.channel.local.LocalServerChannel].readInbound()"
    - "[java.util.Queue].add(java.lang.Object)"
    functionUses: 2
    ICount: 9
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalServerChannel:175"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalServerChannel:180"
        BranchSideFuncs:
        - "readInbound()"
      - BranchSide: "io.netty.channel.local.LocalServerChannel:179"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.local.LocalServerChannel:174,1"
      Dst: "[java.util.Queue].add(java.lang.Object)"
    - Src: "io.netty.channel.local.LocalServerChannel:178,1"
      Dst: "[io.netty.channel.local.LocalServerChannel].readInbound()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.channel.local.LocalServerChannel].readInbound()"
    functionSourceFile: "io.netty.channel.local.LocalServerChannel"
    linkageType: ""
    functionLinenumber: 150
    functionLinenumberEnd: 164
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].recvBufAllocHandle()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1].recvBufAllocHandle()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].recvBufAllocHandle()"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    - "[io.netty.channel.local.LocalServerChannel].config()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].reset(io.netty.channel.ChannelConfig)"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].poll()"
    - "[java.util.LinkedList].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].poll()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].poll()"
    - "[io.netty.util.internal.EmptyPriorityQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].poll()"
    - "[io.netty.util.internal.DefaultPriorityQueue].poll()"
    - "[java.util.ArrayDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].poll()"
    - "[java.util.concurrent.LinkedBlockingDeque].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].poll()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].poll()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].poll()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.kqueue.KQueueRecvByteAllocatorHandle].continueReading()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].continueReading()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].continueReading()"
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorHandle].continueReading()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].continueReading()"
    - "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].readComplete()"
    - "[io.netty.channel.AdaptiveRecvByteBufAllocator$HandleImpl].readComplete()"
    - "[io.netty.channel.DefaultMaxBytesRecvByteBufAllocator$HandleImpl].readComplete()"
    - "[io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle].readComplete()"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelReadComplete()"
    - "[io.netty.channel.Channel$Unsafe].recvBufAllocHandle()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].reset(io.netty.channel.ChannelConfig)"
    - "[java.util.Queue].poll()"
    - "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].continueReading()"
    - "[io.netty.channel.RecvByteBufAllocator$Handle].readComplete()"
    - "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    functionUses: 2
    ICount: 16
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "io.netty.channel.local.LocalServerChannel:156"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalServerChannel:159"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.local.LocalServerChannel:158"
        BranchSideFuncs:
        - "fireChannelRead(java.lang.Object)"
        - "continueReading()"
    - Branch String: "io.netty.channel.local.LocalServerChannel:160"
      Branch Sides:
      - BranchSide: "io.netty.channel.local.LocalServerChannel:155"
        BranchSideFuncs:
        - "fireChannelReadComplete()"
        - "readComplete()"
      - BranchSide: "io.netty.channel.local.LocalServerChannel:154"
        BranchSideFuncs:
        - "poll()"
    Callsites:
    - Src: "io.netty.channel.local.LocalServerChannel:151,1"
      Dst: "[io.netty.channel.AbstractChannel].unsafe()"
    - Src: "io.netty.channel.local.LocalServerChannel:151,1"
      Dst: "[io.netty.channel.Channel$Unsafe].recvBufAllocHandle()"
    - Src: "io.netty.channel.local.LocalServerChannel:152,1"
      Dst: "[io.netty.channel.local.LocalServerChannel].config()"
    - Src: "io.netty.channel.local.LocalServerChannel:152,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].reset(io.netty.channel.ChannelConfig)"
    - Src: "io.netty.channel.local.LocalServerChannel:153,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.local.LocalServerChannel:155,1"
      Dst: "[java.util.Queue].poll()"
    - Src: "io.netty.channel.local.LocalServerChannel:159,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelRead(java.lang.Object)"
    - Src: "io.netty.channel.local.LocalServerChannel:160,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].continueReading()"
    - Src: "io.netty.channel.local.LocalServerChannel:161,1"
      Dst: "[io.netty.channel.RecvByteBufAllocator$Handle].readComplete()"
    - Src: "io.netty.channel.local.LocalServerChannel:162,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelReadComplete()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.local.LocalServerChannel].config()"
    functionSourceFile: "io.netty.channel.local.LocalServerChannel"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "io.netty.channel.ChannelConfig"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 52
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CodecOutputList$CodecOutputLists].getOrCreate()"
    functionSourceFile: "io.netty.handler.codec.CodecOutputList$CodecOutputLists"
    linkageType: ""
    functionLinenumber: 69
    functionLinenumberEnd: 81
    functionDepth: 2
    returnType: "io.netty.handler.codec.CodecOutputList"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CodecOutputList].<init>(io.netty.handler.codec.CodecOutputList$CodecOutputListRecycler,int,io.netty.handler.codec.CodecOutputList$1)"
    - "[io.netty.handler.codec.CodecOutputList].access$100()"
    functionUses: 1
    ICount: 18
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.CodecOutputList$CodecOutputLists:70"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.CodecOutputList$CodecOutputLists:74"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.CodecOutputList$CodecOutputLists:73,1"
      Dst: "[io.netty.handler.codec.CodecOutputList].access$100()"
    - Src: "io.netty.handler.codec.CodecOutputList$CodecOutputLists:73,1"
      Dst: "[io.netty.handler.codec.CodecOutputList].<init>(io.netty.handler.codec.CodecOutputList$CodecOutputListRecycler,int,io.netty.handler.codec.CodecOutputList$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CodecOutputList].access$100()"
    functionSourceFile: "io.netty.handler.codec.CodecOutputList"
    linkageType: ""
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionDepth: 0
    returnType: "io.netty.handler.codec.CodecOutputList$CodecOutputListRecycler"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.CodecOutputList$CodecOutputLists].recycle(io.netty.handler.codec.CodecOutputList)"
    functionSourceFile: "io.netty.handler.codec.CodecOutputList$CodecOutputLists"
    linkageType: ""
    functionLinenumber: 84
    functionLinenumberEnd: 91
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.CodecOutputList"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.AssertionError].<init>()"
    functionUses: 1
    ICount: 22
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.CodecOutputList$CodecOutputLists:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.CodecOutputList$CodecOutputLists:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.CodecOutputList$CodecOutputLists:89"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.CodecOutputList$CodecOutputLists:89"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.CodecOutputList$CodecOutputLists:90"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.CodecOutputList$CodecOutputLists:89"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.CodecOutputList$CodecOutputLists:89,1"
      Dst: "[java.lang.AssertionError].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$StringEntry"
    linkageType: ""
    functionLinenumber: 143
    functionLinenumberEnd: 148
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getKey()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getKey()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getKey()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getKey()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getKey()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getKey()"
    - "[java.util.AbstractMap$SimpleEntry].getKey()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getKey()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getKey()"
    - "[java.util.WeakHashMap$Entry].getKey()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getKey()"
    - "[java.util.TreeMap$Entry].getKey()"
    - "[java.util.HashMap$Node].getKey()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getKey()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getKey()"
    - "[java.util.Hashtable$Entry].getKey()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[java.util.Map$Entry].getKey()"
    - "[java.lang.CharSequence].toString()"
    functionUses: 67
    ICount: 10
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.HeadersUtils$StringEntry:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.HeadersUtils$StringEntry:147"
        BranchSideFuncs:
        - "toString()"
        - "getKey()"
      - BranchSide: "io.netty.handler.codec.HeadersUtils$StringEntry:146"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$StringEntry:145,1"
      Dst: "[java.util.Map$Entry].getKey()"
    - Src: "io.netty.handler.codec.HeadersUtils$StringEntry:145,1"
      Dst: "[java.lang.CharSequence].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$StringEntry"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 156
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.lang.CharSequence].toString()"
    functionUses: 63
    ICount: 13
    EdgeCount: 42
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.HeadersUtils$StringEntry:152"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.HeadersUtils$StringEntry:155"
        BranchSideFuncs:
        - "toString()"
        - "getValue()"
      - BranchSide: "io.netty.handler.codec.HeadersUtils$StringEntry:154"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.HeadersUtils$StringEntry:152"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.HeadersUtils$StringEntry:155"
        BranchSideFuncs:
        - "toString()"
        - "getValue()"
      - BranchSide: "io.netty.handler.codec.HeadersUtils$StringEntry:154"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$StringEntry:152,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.HeadersUtils$StringEntry:153,1"
      Dst: "[java.lang.CharSequence].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.HeadersUtils$StringEntry].setValue(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$StringEntry"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[java.util.Map$Entry].setValue(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$StringEntry:160,1"
      Dst: "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - Src: "io.netty.handler.codec.HeadersUtils$StringEntry:161,1"
      Dst: "[java.util.Map$Entry].setValue(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils$StringEntry].toString()"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$StringEntry"
    linkageType: ""
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].toString()"
    - "[java.util.TreeMap$Entry].toString()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].toString()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].toString()"
    - "[java.util.WeakHashMap$Entry].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].toString()"
    - "[java.lang.Object].toString()"
    - "[java.util.AbstractMap$SimpleEntry].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].toString()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].toString()"
    - "[java.util.Hashtable$Entry].toString()"
    - "[java.util.HashMap$Node].toString()"
    functionUses: 20
    ICount: 4
    EdgeCount: 13
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$StringEntry:167,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils$StringEntry].setValue(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$StringEntry"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "java.lang.Object"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].setValue(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$StringEntry:133,1"
      Dst: "[io.netty.handler.codec.HeadersUtils$StringEntry].setValue(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProtocolException"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyProtocolException:30,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProtocolException"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionDepth: 2
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyProtocolException:36,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProtocolException"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    functionUses: 14
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyProtocolException:43,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProtocolException"
    linkageType: ""
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionDepth: 2
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    functionUses: 5
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyProtocolException:50,1"
      Dst: "[io.netty.handler.codec.DecoderException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdResponseDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdResponseDecoder$State"
    linkageType: ""
    functionLinenumber: 95
    functionLinenumberEnd: 97
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksCmdResponseDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder$State:96,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdResponseDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdResponseDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksCmdResponseDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder$State:96,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksCmdResponseDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksCmdResponseDecoder$State"
    linkageType: ""
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksCmdResponseDecoder$State:97,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$ReadStatus].values()"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$ReadStatus"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$ReadStatus[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeSet].clone()"
    - "[javax.crypto.MacSpi].clone()"
    - "[java.util.GregorianCalendar].clone()"
    - "[java.util.Hashtable].clone()"
    - "[java.util.Hashtable$Entry].clone()"
    - "[java.util.LinkedList].clone()"
    - "[java.lang.Thread].clone()"
    - "[java.util.IdentityHashMap].clone()"
    - "[java.util.Locale].clone()"
    - "[java.util.ArrayList].clone()"
    - "[java.util.concurrent.CopyOnWriteArrayList].clone()"
    - "[java.lang.Object].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[java.util.ArrayDeque].clone()"
    - "[java.util.jar.Manifest].clone()"
    - "[java.security.Signature].clone()"
    - "[java.util.zip.ZipEntry].clone()"
    - "[java.util.TimeZone].clone()"
    - "[java.util.AbstractMap].clone()"
    - "[java.text.NumberFormat].clone()"
    - "[java.util.EnumSet].clone()"
    - "[java.security.MessageDigest].clone()"
    - "[sun.security.x509.GeneralSubtrees].clone()"
    - "[java.lang.ref.Reference].clone()"
    - "[java.text.SimpleDateFormat].clone()"
    - "[java.util.BitSet].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[sun.util.calendar.CalendarDate].clone()"
    - "[java.text.Collator].clone()"
    - "[jaz.Zer].clone()"
    - "[sun.text.normalizer.UCharacterIterator].clone()"
    - "[java.security.MessageDigestSpi].clone()"
    - "[java.util.Vector].clone()"
    - "[sun.security.x509.NameConstraintsExtension].clone()"
    - "[java.util.jar.Attributes].clone()"
    - "[java.text.DateFormat].clone()"
    - "[java.util.HashMap].clone()"
    - "[java.text.BreakIterator].clone()"
    - "[java.text.MessageFormat].clone()"
    - "[javax.crypto.Mac].clone()"
    - "[java.util.Properties].clone()"
    - "[java.lang.invoke.MemberName].clone()"
    - "[java.util.Date].clone()"
    - "[java.security.SignatureSpi].clone()"
    - "[java.util.Calendar].clone()"
    - "[sun.security.util.BitArray].clone()"
    - "[java.text.Format].clone()"
    - "[java.util.TreeMap].clone()"
    - "[java.text.DecimalFormatSymbols].clone()"
    - "[java.util.HashSet].clone()"
    - "[java.net.HttpCookie].clone()"
    - "[java.text.DateFormatSymbols].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 53
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$ReadStatus:133,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$ReadStatus].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$ReadStatus"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$ReadStatus"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$ReadStatus:133,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$ReadStatus].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$ReadStatus"
    linkageType: ""
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.AbstractHttp2StreamChannel$ReadStatus:133,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder$HeaderType].values()"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder$HeaderType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.HpackDecoder$HeaderType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder$HeaderType:512,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder$HeaderType].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder$HeaderType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.HpackDecoder$HeaderType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder$HeaderType:512,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.HpackDecoder$HeaderType].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.http2.HpackDecoder$HeaderType"
    linkageType: ""
    functionLinenumber: 511
    functionLinenumberEnd: 513
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.HpackDecoder$HeaderType:512,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter"
    linkageType: ""
    functionLinenumber: 368
    functionLinenumberEnd: 370
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CharSequenceValueConverter].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter:369,1"
      Dst: "[io.netty.handler.codec.CharSequenceValueConverter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter].convertObject(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter"
    linkageType: ""
    functionLinenumber: 373
    functionLinenumberEnd: 384
    functionDepth: 7
    returnType: "java.lang.CharSequence"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DateFormatter].format(java.util.Date)"
    - "[java.util.Calendar].getTime()"
    - "[io.netty.channel.ReflectiveChannelFactory].toString()"
    - "[sun.security.x509.SerialNumber].toString()"
    - "[io.netty.util.Version].toString()"
    - "[javax.net.ssl.SSLEngineResult].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].toString()"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].toString()"
    - "[java.util.AbstractCollection].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[sun.security.x509.CertificateAlgorithmId].toString()"
    - "[io.netty.buffer.PoolSubpage].toString()"
    - "[java.net.InetSocketAddress].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[java.lang.ProcessBuilder$Redirect$3].toString()"
    - "[io.netty.util.Recycler$1].toString()"
    - "[sun.security.x509.PolicyConstraintsExtension].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].toString()"
    - "[java.nio.charset.Charset].toString()"
    - "[java.util.Properties].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].toString()"
    - "[sun.security.util.JarConstraintsParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].toString()"
    - "[java.lang.reflect.Constructor].toString()"
    - "[java.nio.DoubleBuffer].toString()"
    - "[io.netty.util.Signal].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Thread].toString()"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].toString()"
    - "[java.lang.Throwable].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$CompositePrinterParser].toString()"
    - "[io.netty.channel.embedded.EmbeddedSocketAddress].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].toString()"
    - "[java.util.regex.Matcher].toString()"
    - "[java.lang.reflect.Field].toString()"
    - "[java.lang.invoke.MethodHandles$Lookup].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.net.URL].toString()"
    - "[java.lang.invoke.LambdaForm$Name].toString()"
    - "[sun.security.x509.RDN].toString()"
    - "[java.util.concurrent.atomic.AtomicReference].toString()"
    - "[java.util.Currency].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].toString()"
    - "[io.netty.channel.kqueue.NativeLongArray].toString()"
    - "[io.netty.handler.proxy.ProxyConnectionEvent].toString()"
    - "[java.util.Formatter].toString()"
    - "[java.lang.ModuleLayer].toString()"
    - "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - "[io.netty.handler.ssl.SslCompletionEvent].toString()"
    - "[io.netty.bootstrap.BootstrapConfig].toString()"
    - "[java.lang.ProcessBuilder$Redirect$1].toString()"
    - "[io.netty.handler.codec.xml.XmlEntityReference].toString()"
    - "[java.net.Proxy].toString()"
    - "[sun.security.util.DerValue].toString()"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].toString()"
    - "[sun.security.x509.AlgorithmId].toString()"
    - "[java.text.AttributedCharacterIterator$Attribute].toString()"
    - "[java.lang.Runtime$Version].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$2].toString()"
    - "[java.lang.module.ModuleDescriptor$Exports].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].toString()"
    - "[io.netty.channel.kqueue.AcceptFilter].toString()"
    - "[sun.security.x509.SubjectKeyIdentifierExtension].toString()"
    - "[io.netty.buffer.DefaultByteBufHolder].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.time.temporal.ChronoField].toString()"
    - "[java.security.PermissionCollection].toString()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].toString()"
    - "[java.util.concurrent.ConcurrentHashMap].toString()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].toString()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].toString()"
    - "[java.util.Vector].toString()"
    - "[io.netty.handler.codec.http.HttpVersion].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].toString()"
    - "[java.text.CalendarBuilder].toString()"
    - "[java.net.URLConnection].toString()"
    - "[java.util.EventObject].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].toString()"
    - "[io.netty.util.AbstractConstant].toString()"
    - "[sun.reflect.annotation.TypeAnnotation].toString()"
    - "[java.security.SecureRandom].toString()"
    - "[java.util.concurrent.atomic.AtomicLong].toString()"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].toString()"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].toString()"
    - "[sun.util.calendar.Era].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].toString()"
    - "[java.lang.module.ModuleDescriptor$Requires].toString()"
    - "[java.time.ZonedDateTime].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache].toString()"
    - "[java.math.MutableBigInteger].toString()"
    - "[java.lang.module.ModuleDescriptor$Provides].toString()"
    - "[java.net.InetSocketAddress$InetSocketAddressHolder].toString()"
    - "[sun.security.x509.GeneralNames].toString()"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].toString()"
    - "[sun.security.x509.Extension].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].toString()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].toString()"
    - "[io.netty.handler.ssl.util.LazyX509Certificate].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].toString()"
    - "[sun.security.x509.ExtendedKeyUsageExtension].toString()"
    - "[io.netty.buffer.WrappedByteBuf].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].toString()"
    - "[java.security.MessageDigest].toString()"
    - "[io.netty.handler.codec.dns.DnsOpCode].toString()"
    - "[java.io.ObjectOutputStream$DebugTraceInfoStack].toString()"
    - "[java.util.TreeMap$Entry].toString()"
    - "[java.time.zone.ZoneOffsetTransition].toString()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].toString()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].toString()"
    - "[java.lang.Integer].toString()"
    - "[java.lang.ProcessBuilder$Redirect$6].toString()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].toString()"
    - "[java.util.OptionalInt].toString()"
    - "[javax.naming.NamingException].toString()"
    - "[java.time.LocalDate].toString()"
    - "[java.util.ServiceLoader].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache].toString()"
    - "[java.net.InetAddress].toString()"
    - "[java.util.jar.Attributes$Name].toString()"
    - "[java.lang.Boolean].toString()"
    - "[io.netty.handler.codec.DefaultHeaders].toString()"
    - "[jaz.Zer].toString()"
    - "[io.netty.util.concurrent.DefaultPromise].toString()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].toString()"
    - "[io.netty.handler.ssl.PemX509Certificate].toString()"
    - "[sun.security.x509.UniqueIdentity].toString()"
    - "[java.security.CodeSigner].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].toString()"
    - "[sun.security.x509.CertificateX509Key].toString()"
    - "[java.nio.IntBuffer].toString()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].toString()"
    - "[java.util.concurrent.CountDownLatch].toString()"
    - "[io.netty.handler.codec.redis.IntegerRedisMessage].toString()"
    - "[java.nio.ByteOrder].toString()"
    - "[java.util.OptionalLong].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].toString()"
    - "[io.netty.handler.codec.xml.XmlElementEnd].toString()"
    - "[java.io.ObjectStreamClass].toString()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].toString()"
    - "[java.util.concurrent.atomic.LongAdder].toString()"
    - "[java.util.Optional].toString()"
    - "[java.net.URI].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].toString()"
    - "[java.nio.FloatBuffer].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuestion].toString()"
    - "[io.netty.handler.ssl.OpenSslSessionId].toString()"
    - "[io.netty.channel.group.DefaultChannelGroup].toString()"
    - "[sun.security.x509.AuthorityKeyIdentifierExtension].toString()"
    - "[sun.security.util.ObjectIdentifier].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].toString()"
    - "[java.util.concurrent.LinkedBlockingDeque].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].toString()"
    - "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].toString()"
    - "[java.time.format.DateTimePrintContext].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].toString()"
    - "[sun.nio.fs.UnixPath].toString()"
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].toString()"
    - "[java.lang.Class].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].toString()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].toString()"
    - "[java.util.BitSet].toString()"
    - "[java.lang.StackFrameInfo].toString()"
    - "[javax.xml.namespace.QName].toString()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].toString()"
    - "[sun.security.x509.CertificateExtensions].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].toString()"
    - "[sun.security.x509.BasicConstraintsExtension].toString()"
    - "[java.util.concurrent.atomic.AtomicReferenceArray].toString()"
    - "[java.lang.invoke.Invokers].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].toString()"
    - "[java.time.LocalDateTime].toString()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].toString()"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[java.time.format.DateTimeFormatter].toString()"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].toString()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].toString()"
    - "[sun.security.x509.CertificateIssuerName].toString()"
    - "[java.lang.invoke.SerializedLambda].toString()"
    - "[sun.util.locale.LocaleExtensions].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].toString()"
    - "[sun.security.x509.NameConstraintsExtension].toString()"
    - "[java.net.NetworkInterface].toString()"
    - "[java.util.StringJoiner].toString()"
    - "[java.util.AbstractMap].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].toString()"
    - "[java.time.LocalTime].toString()"
    - "[java.security.ProtectionDomain].toString()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock].toString()"
    - "[io.netty.handler.codec.EmptyHeaders].toString()"
    - "[java.time.temporal.ValueRange].toString()"
    - "[java.time.Instant].toString()"
    - "[java.security.PrivilegedActionException].toString()"
    - "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].toString()"
    - "[sun.util.calendar.CalendarDate].toString()"
    - "[java.lang.module.Configuration].toString()"
    - "[java.security.AlgorithmParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].toString()"
    - "[java.lang.ThreadGroup].toString()"
    - "[io.netty.buffer.AbstractByteBufAllocator].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].toString()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].toString()"
    - "[java.nio.file.attribute.FileTime].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].toString()"
    - "[io.netty.handler.codec.xml.XmlNamespace].toString()"
    - "[io.netty.channel.unix.FileDescriptor].toString()"
    - "[java.lang.Double].toString()"
    - "[java.util.OptionalDouble].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].toString()"
    - "[io.netty.bootstrap.AbstractBootstrap].toString()"
    - "[io.netty.channel.WriteBufferWaterMark].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].toString()"
    - "[java.math.BigInteger].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].toString()"
    - "[java.time.format.Parsed].toString()"
    - "[java.time.OffsetDateTime].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString()"
    - "[java.time.OffsetTime].toString()"
    - "[java.util.WeakHashMap$Entry].toString()"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].toString()"
    - "[sun.security.x509.X509CertImpl].toString()"
    - "[java.time.ZoneOffset].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribePayload].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].toString()"
    - "[java.lang.reflect.Method].toString()"
    - "[io.netty.handler.codec.http2.Http2Flags].toString()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].toString()"
    - "[io.netty.buffer.CompositeByteBuf].toString()"
    - "[java.lang.Enum].toString()"
    - "[io.netty.handler.codec.http2.HpackHeaderField].toString()"
    - "[java.net.ServerSocket].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[java.time.zone.ZoneRules].toString()"
    - "[java.security.spec.PSSParameterSpec].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent].toString()"
    - "[sun.security.x509.X500Name].toString()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].toString()"
    - "[io.netty.channel.embedded.EmbeddedChannelId].toString()"
    - "[java.util.concurrent.locks.AbstractQueuedSynchronizer].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.util.regex.Pattern].toString()"
    - "[java.util.concurrent.atomic.AtomicLongArray].toString()"
    - "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].toString()"
    - "[sun.util.locale.Extension].toString()"
    - "[io.netty.handler.codec.smtp.SmtpCommand].toString()"
    - "[java.util.concurrent.ForkJoinPool].toString()"
    - "[sun.security.x509.CertificateVersion].toString()"
    - "[java.lang.ProcessHandleImpl].toString()"
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].toString()"
    - "[java.util.LongSummaryStatistics].toString()"
    - "[java.io.ObjectStreamField].toString()"
    - "[java.lang.ProcessImpl].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[io.netty.resolver.dns.InflightNameResolver].toString()"
    - "[java.nio.charset.CodingErrorAction].toString()"
    - "[java.lang.Float].toString()"
    - "[java.time.format.DecimalStyle].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].toString()"
    - "[sun.security.x509.IssuerAlternativeNameExtension].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[java.io.File].toString()"
    - "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].toString()"
    - "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].toString()"
    - "[java.util.Calendar].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].toString()"
    - "[java.nio.ByteBuffer].toString()"
    - "[io.netty.buffer.EmptyByteBuf].toString()"
    - "[io.netty.buffer.AbstractByteBuf].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock].toString()"
    - "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].toString()"
    - "[java.lang.Package].toString()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].toString()"
    - "[java.text.ParsePosition].toString()"
    - "[sun.util.locale.BaseLocale].toString()"
    - "[sun.reflect.annotation.AnnotationType].toString()"
    - "[java.lang.Character$Subset].toString()"
    - "[sun.security.util.LazyCodeSourcePermissionCollection].toString()"
    - "[java.lang.Object].toString()"
    - "[io.netty.handler.codec.xml.XmlElement].toString()"
    - "[java.lang.Character].toString()"
    - "[sun.net.www.MessageHeader].toString()"
    - "[java.lang.invoke.MethodType].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].toString()"
    - "[io.netty.handler.codec.http.QueryStringEncoder].toString()"
    - "[java.net.InterfaceAddress].toString()"
    - "[java.time.zone.ZoneOffsetTransitionRule].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].toString()"
    - "[io.netty.handler.codec.dns.DnsRecordType].toString()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].toString()"
    - "[java.lang.StackTraceElement].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toString()"
    - "[java.lang.ProcessBuilder$Redirect$4].toString()"
    - "[java.lang.invoke.LambdaForm].toString()"
    - "[io.netty.handler.codec.dns.DnsResponseCode].toString()"
    - "[io.netty.util.collection.LongObjectHashMap].toString()"
    - "[javax.naming.directory.ModificationItem].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].toString()"
    - "[sun.security.x509.PolicyMappingsExtension].toString()"
    - "[sun.security.x509.CertificatePoliciesExtension].toString()"
    - "[java.security.CodeSource].toString()"
    - "[java.security.Permission].toString()"
    - "[java.security.Timestamp].toString()"
    - "[io.netty.buffer.PoolArena].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].toString()"
    - "[java.nio.charset.CoderResult].toString()"
    - "[io.netty.channel.unix.PeerCredentials].toString()"
    - "[java.security.SecureRandomSpi].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[javax.security.auth.Subject].toString()"
    - "[javax.crypto.CryptoPermission].toString()"
    - "[java.util.Locale].toString()"
    - "[java.time.chrono.AbstractChronology].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsPtrRecord].toString()"
    - "[java.util.concurrent.locks.ReentrantLock].toString()"
    - "[java.lang.module.ResolvedModule].toString()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].toString()"
    - "[io.netty.handler.codec.http.HttpMethod].toString()"
    - "[java.lang.invoke.MemberName].toString()"
    - "[sun.security.x509.PrivateKeyUsageExtension].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].toString()"
    - "[io.netty.handler.traffic.TrafficCounter].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].toString()"
    - "[java.io.ByteArrayOutputStream].toString()"
    - "[sun.security.x509.CertificateValidity].toString()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].toString()"
    - "[java.time.Duration].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[sun.security.x509.X509CertInfo].toString()"
    - "[sun.security.x509.AVA].toString()"
    - "[java.lang.module.ModuleDescriptor$Opens].toString()"
    - "[java.math.BigDecimal].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].toString()"
    - "[java.lang.invoke.MethodHandleImpl$LoopClauses].toString()"
    - "[sun.security.x509.CertificateSerialNumber].toString()"
    - "[sun.nio.fs.UnixFileStore].toString()"
    - "[java.net.Socket].toString()"
    - "[javax.net.ssl.SNIHostName].toString()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].toString()"
    - "[java.util.Hashtable$Entry].toString()"
    - "[java.security.Signature].toString()"
    - "[java.lang.Short].toString()"
    - "[java.util.concurrent.CompletableFuture].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsOptPseudoRrRecord].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses].toString()"
    - "[java.util.concurrent.ThreadPoolExecutor].toString()"
    - "[java.util.concurrent.LinkedBlockingQueue].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].toString()"
    - "[java.time.ZoneId].toString()"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].toString()"
    - "[java.net.SocketImpl].toString()"
    - "[sun.security.x509.KeyIdentifier].toString()"
    - "[java.util.Hashtable].toString()"
    - "[sun.security.x509.GeneralSubtrees].toString()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].toString()"
    - "[java.text.FieldPosition].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent].toString()"
    - "[io.netty.util.DomainNameMapping].toString()"
    - "[sun.security.x509.AuthorityInfoAccessExtension].toString()"
    - "[java.util.concurrent.CopyOnWriteArrayList].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].toString()"
    - "[io.netty.buffer.PoolChunkList].toString()"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].toString()"
    - "[io.netty.buffer.PoolChunk].toString()"
    - "[io.netty.resolver.dns.DefaultDnsServerAddresses].toString()"
    - "[io.netty.util.internal.EmptyPriorityQueue].toString()"
    - "[io.netty.channel.unix.DomainSocketAddress].toString()"
    - "[javax.net.ssl.SNIServerName].toString()"
    - "[java.lang.ProcessBuilder$RedirectPipeImpl].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckPayload].toString()"
    - "[java.io.StringWriter].toString()"
    - "[io.netty.handler.codec.xml.XmlAttribute].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].toString()"
    - "[java.util.zip.ZipEntry].toString()"
    - "[java.util.UUID].toString()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].toString()"
    - "[java.security.Provider].toString()"
    - "[java.time.Period].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].toString()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].toString()"
    - "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].toString()"
    - "[java.lang.reflect.Parameter].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].toString()"
    - "[sun.security.x509.CertificateSubjectName].toString()"
    - "[io.netty.channel.DefaultChannelId].toString()"
    - "[java.util.Date].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame].toString()"
    - "[java.util.IntSummaryStatistics].toString()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[sun.security.x509.CRLDistributionPointsExtension].toString()"
    - "[io.netty.channel.DefaultAddressedEnvelope].toString()"
    - "[io.netty.channel.local.LocalAddress].toString()"
    - "[io.netty.util.collection.CharObjectHashMap].toString()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[io.netty.handler.codec.xml.XmlElementStart].toString()"
    - "[io.netty.handler.codec.DecoderResult].toString()"
    - "[io.netty.handler.ssl.SniCompletionEvent].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[io.netty.util.collection.ByteObjectHashMap].toString()"
    - "[java.util.AbstractMap$SimpleEntry].toString()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].toString()"
    - "[io.netty.util.collection.ShortObjectHashMap].toString()"
    - "[java.time.format.DateTimeParseContext].toString()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].toString()"
    - "[java.math.MathContext].toString()"
    - "[io.netty.handler.codec.http.QueryStringDecoder].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$NumberPrinterParser].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$1].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].toString()"
    - "[java.nio.LongBuffer].toString()"
    - "[java.util.DoubleSummaryStatistics].toString()"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].toString()"
    - "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].toString()"
    - "[java.lang.Long].toString()"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].toString()"
    - "[java.security.Provider$Service].toString()"
    - "[io.netty.channel.sctp.SctpMessage].toString()"
    - "[io.netty.util.collection.IntObjectHashMap].toString()"
    - "[io.netty.handler.codec.xml.XmlContent].toString()"
    - "[io.netty.handler.codec.http.HttpHeaders].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].toString()"
    - "[java.lang.invoke.MethodHandle].toString()"
    - "[java.lang.invoke.MethodTypeForm].toString()"
    - "[java.util.HashMap$Node].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].toString()"
    - "[java.lang.ProcessBuilder$Redirect$2].toString()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].toString()"
    - "[java.time.temporal.ChronoUnit].toString()"
    - "[io.netty.buffer.FixedCompositeByteBuf].toString()"
    - "[java.nio.channels.FileChannel$MapMode].toString()"
    - "[sun.security.x509.SubjectAlternativeNameExtension].toString()"
    - "[io.netty.channel.DefaultChannelPipeline].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].toString()"
    - "[java.nio.ShortBuffer].toString()"
    - "[io.netty.handler.codec.string.LineSeparator].toString()"
    - "[java.util.ResourceBundle$CacheKey].toString()"
    - "[io.netty.buffer.SwappedByteBuf].toString()"
    - "[java.security.cert.CertPath].toString()"
    - "[io.netty.channel.unix.Socket].toString()"
    - "[java.lang.module.ModuleDescriptor].toString()"
    - "[sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo].toString()"
    - "[java.lang.module.ModuleDescriptor$Version].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].toString()"
    - "[java.net.HttpCookie].toString()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].toString()"
    - "[sun.util.calendar.JulianCalendar$Date].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].toString()"
    - "[java.lang.ProcessBuilder$Redirect$5].toString()"
    - "[io.netty.channel.AbstractChannel].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].toString()"
    - "[sun.security.x509.GeneralSubtree].toString()"
    - "[sun.security.x509.GeneralName].toString()"
    - "[java.lang.Byte].toString()"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams].toString()"
    - "[io.netty.handler.codec.xml.XmlDTD].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].toString()"
    - "[io.netty.bootstrap.ServerBootstrapConfig].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandType].toString()"
    - "[java.lang.Module].toString()"
    - "[sun.security.util.BitArray].toString()"
    - "[io.netty.channel.AbstractChannelHandlerContext].toString()"
    - "[java.nio.channels.FileLock].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].toString()"
    - "[io.netty.handler.codec.http.HttpScheme].toString()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].toString()"
    - "[javax.security.auth.x500.X500Principal].toString()"
    - "[java.util.logging.Level].toString()"
    functionUses: 2
    ICount: 19
    EdgeCount: 529
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter:374"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter:377"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter:376"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter:377"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter:380"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter:379"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter:380"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter:383"
        BranchSideFuncs:
        - "format(java.util.Date)"
        - "getTime()"
      - BranchSide: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter:382"
        BranchSideFuncs:
        - "toString()"
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter:378,1"
      Dst: "[io.netty.handler.codec.DateFormatter].format(java.util.Date)"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter:381,1"
      Dst: "[java.util.Calendar].getTime()"
    - Src: "io.netty.handler.codec.http.DefaultHttpHeaders$HeaderValueConverter:383,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    functionSourceFile: "io.netty.channel.sctp.nio.NioSctpChannel$2"
    linkageType: ""
    functionLinenumber: 383
    functionLinenumberEnd: 386
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.nio.NioSctpChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    functionUses: 50
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.nio.NioSctpChannel$2:384,1"
      Dst: "[io.netty.channel.sctp.nio.NioSctpChannel].unbindAddress(java.net.InetAddress,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.internal.SocketUtils$7].run()"
    functionSourceFile: "io.netty.util.internal.SocketUtils$7"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 147
    functionDepth: 0
    returnType: "java.net.SocketAddress"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.ServerSocket].getLocalSocketAddress()"
    functionUses: 4
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.internal.SocketUtils$7:146,1"
      Dst: "[java.net.ServerSocket].getLocalSocketAddress()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].id()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyPingFrame"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].toString()"
    functionSourceFile: "io.netty.handler.codec.spdy.DefaultSpdyPingFrame"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 55
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].id()"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 12
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyPingFrame:49,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyPingFrame:50,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyPingFrame:50,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyPingFrame:53,1"
      Dst: "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].id()"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyPingFrame:53,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.spdy.DefaultSpdyPingFrame:54,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksInitResponse].authScheme()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksInitResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socks.SocksAuthScheme"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksInitResponse].encodeAsByteBuf(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksInitResponse"
    linkageType: ""
    functionLinenumber: 45
    functionLinenumberEnd: 49
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.socks.SocksProtocolVersion].byteValue()"
    - "[io.netty.handler.codec.socks.SocksMessage].protocolVersion()"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.socks.SocksAuthScheme].byteValue()"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    functionUses: 1
    ICount: 11
    EdgeCount: 21
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksInitResponse:46,1"
      Dst: "[io.netty.handler.codec.socks.SocksMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.socks.SocksInitResponse:46,1"
      Dst: "[io.netty.handler.codec.socks.SocksProtocolVersion].byteValue()"
    - Src: "io.netty.handler.codec.socks.SocksInitResponse:46,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.socks.SocksInitResponse:47,1"
      Dst: "[io.netty.handler.codec.socks.SocksAuthScheme].byteValue()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollMode].values()"
    functionSourceFile: "io.netty.channel.epoll.EpollMode"
    linkageType: ""
    functionLinenumber: 20
    functionLinenumberEnd: 22
    functionDepth: 0
    returnType: "io.netty.channel.epoll.EpollMode[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollMode:21,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollMode].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.channel.epoll.EpollMode"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.epoll.EpollMode"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollMode:21,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.EpollMode].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.channel.epoll.EpollMode"
    linkageType: ""
    functionLinenumber: 20
    functionLinenumberEnd: 22
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.EpollMode:21,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpFilterRuleType].values()"
    functionSourceFile: "io.netty.handler.ipfilter.IpFilterRuleType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ipfilter.IpFilterRuleType[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpFilterRuleType:21,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpFilterRuleType].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.ipfilter.IpFilterRuleType"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.ipfilter.IpFilterRuleType"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpFilterRuleType:21,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ipfilter.IpFilterRuleType].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.ipfilter.IpFilterRuleType"
    linkageType: ""
    functionLinenumber: 20
    functionLinenumberEnd: 22
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ipfilter.IpFilterRuleType:21,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslSniHostnameMatcher].<init>(io.netty.handler.ssl.OpenSslEngineMap)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslSniHostnameMatcher"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.ssl.OpenSslEngineMap"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslSniHostnameMatcher:283,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslSniHostnameMatcher].match(long,java.lang.String)"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslSniHostnameMatcher"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "long"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.OpenSslEngineMap].get(long)"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].checkSniHostnameMatch(byte[])"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslServerContext].access$000()"
    - "[java.lang.Long].valueOf(long)"
    - "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslSniHostnameMatcher:290"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslSniHostnameMatcher:293"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslSniHostnameMatcher:289,1"
      Dst: "[io.netty.handler.ssl.OpenSslEngineMap].get(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslSniHostnameMatcher:292,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslSniHostnameMatcher:292,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine].checkSniHostnameMatch(byte[])"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslSniHostnameMatcher:294,1"
      Dst: "[io.netty.handler.ssl.ReferenceCountedOpenSslServerContext].access$000()"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslSniHostnameMatcher:294,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext$OpenSslSniHostnameMatcher:294,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].warn(java.lang.String,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.ReferenceCountedOpenSslServerContext].access$000()"
    functionSourceFile: "io.netty.handler.ssl.ReferenceCountedOpenSslServerContext"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.util.internal.logging.InternalLogger"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultEventLoop].<init>()"
    functionSourceFile: "io.netty.channel.DefaultEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultEventLoop].<init>(io.netty.channel.EventLoopGroup)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultEventLoop:26,1"
      Dst: "[io.netty.channel.DefaultEventLoop].<init>(io.netty.channel.EventLoopGroup)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultEventLoop].<init>(java.util.concurrent.ThreadFactory)"
    functionSourceFile: "io.netty.channel.DefaultEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.concurrent.ThreadFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.ThreadFactory)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultEventLoop:30,1"
      Dst: "[io.netty.channel.DefaultEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.ThreadFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultEventLoop].<init>(java.util.concurrent.Executor)"
    functionSourceFile: "io.netty.channel.DefaultEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.concurrent.Executor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.DefaultEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultEventLoop:34,1"
      Dst: "[io.netty.channel.DefaultEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.Executor)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultEventLoop].<init>(io.netty.channel.EventLoopGroup)"
    functionSourceFile: "io.netty.channel.DefaultEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.EventLoopGroup"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class)"
    - "[io.netty.channel.DefaultEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.ThreadFactory)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultEventLoop:38,1"
      Dst: "[io.netty.util.concurrent.DefaultThreadFactory].<init>(java.lang.Class)"
    - Src: "io.netty.channel.DefaultEventLoop:38,1"
      Dst: "[io.netty.channel.DefaultEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.ThreadFactory)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.ThreadFactory)"
    functionSourceFile: "io.netty.channel.DefaultEventLoop"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.EventLoopGroup"
    - "java.util.concurrent.ThreadFactory"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.SingleThreadEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.ThreadFactory,boolean)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.DefaultEventLoop:42,1"
      Dst: "[io.netty.channel.SingleThreadEventLoop].<init>(io.netty.channel.EventLoopGroup,java.util.concurrent.ThreadFactory,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.DefaultEventLoop].run()"
    functionSourceFile: "io.netty.channel.DefaultEventLoop"
    linkageType: ""
    functionLinenumber: 51
    functionLinenumberEnd: 63
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].takeTask()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].runTask(java.lang.Runnable)"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].updateLastExecutionTime()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor].confirmShutdown()"
    functionUses: 1
    ICount: 10
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.channel.DefaultEventLoop:53"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultEventLoop:58"
        BranchSideFuncs:
        - "updateLastExecutionTime()"
        - "runTask(java.lang.Runnable)"
      - BranchSide: "io.netty.channel.DefaultEventLoop:57"
        BranchSideFuncs:
        - "confirmShutdown()"
    - Branch String: "io.netty.channel.DefaultEventLoop:58"
      Branch Sides:
      - BranchSide: "io.netty.channel.DefaultEventLoop:61"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.DefaultEventLoop:60"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.DefaultEventLoop:52,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].takeTask()"
    - Src: "io.netty.channel.DefaultEventLoop:54,1"
      Dst: "[io.netty.util.concurrent.AbstractEventExecutor].runTask(java.lang.Runnable)"
    - Src: "io.netty.channel.DefaultEventLoop:55,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].updateLastExecutionTime()"
    - Src: "io.netty.channel.DefaultEventLoop:58,1"
      Dst: "[io.netty.util.concurrent.SingleThreadEventExecutor].confirmShutdown()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils$3].<init>()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils$3"
    linkageType: ""
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils$3:69,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JdkAlpnSslUtils$3].run()"
    functionSourceFile: "io.netty.handler.ssl.JdkAlpnSslUtils$3"
    linkageType: ""
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "java.lang.reflect.Method"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    functionUses: 1
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JdkAlpnSslUtils$3:72,1"
      Dst: "[java.lang.Class].getMethod(java.lang.String,java.lang.Class[])"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].fillInStackTrace()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise$LeanCancellationException"
    linkageType: ""
    functionLinenumber: 145
    functionLinenumberEnd: 148
    functionDepth: 1
    returnType: "java.lang.Throwable"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].access$000()"
    - "[java.lang.Throwable].setStackTrace(java.lang.StackTraceElement[])"
    functionUses: 5
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise$LeanCancellationException:146,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].access$000()"
    - Src: "io.netty.util.concurrent.DefaultPromise$LeanCancellationException:146,1"
      Dst: "[java.lang.Throwable].setStackTrace(java.lang.StackTraceElement[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise].access$000()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "java.lang.StackTraceElement[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].toString()"
    functionSourceFile: "io.netty.util.concurrent.DefaultPromise$LeanCancellationException"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].getName()"
    functionUses: 25
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultPromise$LeanCancellationException:152,1"
      Dst: "[java.lang.Class].getName()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].<init>(io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1)"
    functionSourceFile: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1"
    linkageType: ""
    functionLinenumber: 626
    functionLinenumberEnd: 629
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap].values()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 1
    ICount: 11
    EdgeCount: 55
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1:627,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1:628,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1:628,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    functionSourceFile: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1"
    linkageType: ""
    functionLinenumber: 630
    functionLinenumberEnd: 632
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 227
    ICount: 4
    EdgeCount: 56
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1:631,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    functionSourceFile: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1"
    linkageType: ""
    functionLinenumber: 634
    functionLinenumberEnd: 636
    functionDepth: 0
    returnType: "io.netty.handler.traffic.TrafficCounter"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[java.nio.file.Files$2].next()"
    - "[java.util.Iterator].next()"
    functionUses: 229
    ICount: 6
    EdgeCount: 56
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1:635,1"
      Dst: "[java.util.Iterator].next()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].remove()"
    functionSourceFile: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1"
    linkageType: ""
    functionLinenumber: 638
    functionLinenumberEnd: 640
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.UnsupportedOperationException].<init>()"
    functionUses: 21
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1:639,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollChannel$1].<init>(io.netty.channel.epoll.AbstractEpollChannel)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollChannel$1"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 179
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.epoll.AbstractEpollChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$1:178,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollChannel$1"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 187
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel].doDeregister()"
    - "[io.netty.channel.DefaultChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 50
    ICount: 9
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$1:182,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].doDeregister()"
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$1:184,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$1:184,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:112,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:121,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].<init>(int,boolean)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:138,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].<init>(int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].<init>(int,boolean)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:151"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:154"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:153"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:155"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:158"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:157"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:148,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].findVersion(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 168
    functionLinenumberEnd: 177
    functionDepth: 1
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].match(byte[],io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 1
    ICount: 15
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:175"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:174"
        BranchSideFuncs:
        - "readerIndex()"
        - "getByte(int)"
        - "match(byte[],io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:176"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:174"
        BranchSideFuncs:
        - "readerIndex()"
        - "getByte(int)"
        - "match(byte[],io.netty.buffer.ByteBuf,int)"
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:169,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:175,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:176,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].match(byte[],io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:176,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].match(byte[],io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 339
    functionLinenumberEnd: 347
    functionDepth: 0
    returnType: "boolean"
    argCount: 3
    argTypes:
    - "byte[]"
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 1
    ICount: 16
    EdgeCount: 21
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:340"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:346"
        BranchSideFuncs:
        - "getByte(int)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:345"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:342"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:340"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:339"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:341,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].isSingleDecode()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 222
    functionLinenumberEnd: 224
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 227
    functionLinenumberEnd: 233
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.AbstractChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    functionUses: 3
    ICount: 9
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:229"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:232"
        BranchSideFuncs:
        - "pipeline()"
        - "remove(io.netty.channel.ChannelHandler)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:231"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:228,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].channelRead(io.netty.channel.ChannelHandlerContext,java.lang.Object)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:230,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:230,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 236
    functionLinenumberEnd: 264
    functionDepth: 12
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].findVersion(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].decodeLine(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].decodeStruct(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].decodeHeader(java.lang.String)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].toString(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].decodeHeader(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].fail(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Exception)"
    - "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 32
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:237"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:245"
        BranchSideFuncs:
        - "findVersion(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:244"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:238"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:245"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:244"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:245"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:248"
        BranchSideFuncs:
        - "decodeLine(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:247"
        BranchSideFuncs:
        - "decodeStruct(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:251"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:263"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:262"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:254"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:257"
        BranchSideFuncs:
        - "toString(java.nio.charset.Charset)"
        - "decodeHeader(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:256"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "decodeHeader(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:238,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].findVersion(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:246,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].decodeLine(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:248,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].decodeStruct(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:255,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:255,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessage].decodeHeader(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:255,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:257,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessage].decodeHeader(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:260,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].fail(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].decodeLine(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 288
    functionLinenumberEnd: 293
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$LineHeaderExtractor].<init>(io.netty.handler.codec.haproxy.HAProxyMessageDecoder,int)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$HeaderExtractor].extract(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 11
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:289"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:292"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.haproxy.HAProxyMessageDecoder,int)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:291"
        BranchSideFuncs:
        - "extract(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:290,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$LineHeaderExtractor].<init>(io.netty.handler.codec.haproxy.HAProxyMessageDecoder,int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:292,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$HeaderExtractor].extract(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].decodeStruct(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 273
    functionLinenumberEnd: 278
    functionDepth: 1
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$StructHeaderExtractor].<init>(io.netty.handler.codec.haproxy.HAProxyMessageDecoder,int)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$HeaderExtractor].extract(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 12
    EdgeCount: 2
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:274"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:277"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.haproxy.HAProxyMessageDecoder,int)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:276"
        BranchSideFuncs:
        - "extract(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:275,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$StructHeaderExtractor].<init>(io.netty.handler.codec.haproxy.HAProxyMessageDecoder,int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:277,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder$HeaderExtractor].extract(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessage].decodeHeader(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessage"
    linkageType: ""
    functionLinenumber: 312
    functionLinenumberEnd: 356
    functionDepth: 11
    returnType: "io.netty.handler.codec.haproxy.HAProxyMessage"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.String)"
    - "[java.lang.String].split(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].equals(java.lang.Object)"
    - "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol].valueOf(java.lang.String)"
    - "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].unknownMsg(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].<init>(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    - "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 1
    ICount: 81
    EdgeCount: 30
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:313"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:317"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:316"
        BranchSideFuncs:
        - "split(java.lang.String)"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:320"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:325"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:324"
        BranchSideFuncs:
        - "equals(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:325"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:331"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:330"
        BranchSideFuncs:
        - "valueOf(java.lang.String)"
        - "<init>(java.lang.Throwable)"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:336"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:342"
        BranchSideFuncs:
        - "valueOf(java.lang.String)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "unknownMsg(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand)"
        - "<init>(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
        - "<init>(java.lang.String)"
        - "equals(java.lang.Object)"
        - "split(java.lang.String)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:341"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:336"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:342"
        BranchSideFuncs:
        - "valueOf(java.lang.String)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "unknownMsg(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand)"
        - "<init>(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
        - "<init>(java.lang.String)"
        - "equals(java.lang.Object)"
        - "split(java.lang.String)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:341"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:336"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:342"
        BranchSideFuncs:
        - "valueOf(java.lang.String)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "unknownMsg(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand)"
        - "<init>(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
        - "<init>(java.lang.String)"
        - "equals(java.lang.Object)"
        - "split(java.lang.String)"
        - "<init>(java.lang.String,java.lang.Throwable)"
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:341"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:342"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:346"
        BranchSideFuncs:
        - "unknownMsg(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:345"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:346"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:351"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:350"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:314,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:317,1"
      Dst: "[java.lang.String].split(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:321,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:321,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:321,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:325,1"
      Dst: "[java.lang.String].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:331,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol].valueOf(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:333,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:343,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessage].unknownMsg(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:351,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessage].<init>(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:355,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 18
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol"
    linkageType: ""
    functionLinenumber: 22
    functionLinenumberEnd: 24
    functionDepth: 0
    returnType: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol:23,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessage].unknownMsg(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessage"
    linkageType: ""
    functionLinenumber: 363
    functionLinenumberEnd: 365
    functionDepth: 10
    returnType: "io.netty.handler.codec.haproxy.HAProxyMessage"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.haproxy.HAProxyProtocolVersion"
    - "io.netty.handler.codec.haproxy.HAProxyCommand"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].<init>(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol,java.lang.String,java.lang.String,int,int)"
    functionUses: 3
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:364,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessage].<init>(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol,java.lang.String,java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessage].<init>(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol,java.lang.String,java.lang.String,int,int)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessage"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 79
    functionDepth: 9
    returnType: "void"
    argCount: 7
    argTypes:
    - "io.netty.handler.codec.haproxy.HAProxyProtocolVersion"
    - "io.netty.handler.codec.haproxy.HAProxyCommand"
    - "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol"
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].<init>(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol,java.lang.String,java.lang.String,int,int,java.util.List)"
    - "[java.util.Collections].emptyList()"
    functionUses: 2
    ICount: 11
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:77,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:76,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessage].<init>(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol,java.lang.String,java.lang.String,int,int,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessage].<init>(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol,java.lang.String,java.lang.String,int,int,java.util.List)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessage"
    linkageType: ""
    functionLinenumber: 93
    functionLinenumberEnd: 117
    functionDepth: 8
    returnType: "void"
    argCount: 8
    argTypes:
    - "io.netty.handler.codec.haproxy.HAProxyProtocolVersion"
    - "io.netty.handler.codec.haproxy.HAProxyCommand"
    - "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol"
    - "java.lang.String"
    - "java.lang.String"
    - "int"
    - "int"
    - "java.util.List"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.AbstractReferenceCounted].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol].addressFamily()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].checkAddress(java.lang.String,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].checkPort(int,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    - "[io.netty.util.ResourceLeakDetector].track(java.lang.Object)"
    functionUses: 2
    ICount: 31
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:94,1"
      Dst: "[io.netty.util.AbstractReferenceCounted].<init>()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:96,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:99,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol].addressFamily()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:101,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessage].checkAddress(java.lang.String,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:103,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessage].checkPort(int,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:113,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:115,1"
      Dst: "[io.netty.util.ResourceLeakDetector].track(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol].addressFamily()"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol"
    linkageType: ""
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionDepth: 0
    returnType: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessage].checkAddress(java.lang.String,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessage"
    linkageType: ""
    functionLinenumber: 422
    functionLinenumberEnd: 456
    functionDepth: 7
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 2
    ICount: 65
    EdgeCount: 33
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:427"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:430"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:429"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:433"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:436"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:435"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:443"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:455"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:454"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:448"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:455"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:454"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:423,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:425,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:428,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:428,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:428,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:428,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:433,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:443,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV4Address(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:448,1"
      Dst: "[io.netty.util.NetUtil].isValidIpV6Address(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:453,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessage].checkPort(int,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessage"
    linkageType: ""
    functionLinenumber: 463
    functionLinenumberEnd: 481
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol$AddressFamily"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 2
    ICount: 36
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:467"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:468"
        BranchSideFuncs:
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:467"
        BranchSideFuncs:
        - "append(int)"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:467"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:480"
        BranchSideFuncs:
        - "append(int)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:479"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:473"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:480"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:479"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:464,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:468,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:468,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:468,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:468,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:468,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:474,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessage].<init>(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessage"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionDepth: 10
    returnType: "void"
    argCount: 7
    argTypes:
    - "io.netty.handler.codec.haproxy.HAProxyProtocolVersion"
    - "io.netty.handler.codec.haproxy.HAProxyCommand"
    - "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].<init>(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol,java.lang.String,java.lang.String,int,int)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].portStringToInt(java.lang.String)"
    functionUses: 1
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:59,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessage].portStringToInt(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:57,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessage].<init>(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol,java.lang.String,java.lang.String,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessage].portStringToInt(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessage"
    linkageType: ""
    functionLinenumber: 402
    functionLinenumberEnd: 413
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Integer].parseInt(java.lang.String)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 2
    ICount: 25
    EdgeCount: 12
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:408"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:409"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:408"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:408"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:412"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:411"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:403,1"
      Dst: "[java.lang.Integer].parseInt(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:405,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:405,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:405,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:405,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:409,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessage].decodeHeader(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessage"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 241
    functionDepth: 11
    returnType: "io.netty.handler.codec.haproxy.HAProxyMessage"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.haproxy.HAProxyProtocolVersion].valueOf(byte)"
    - "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.Throwable)"
    - "[java.lang.Integer].toHexString(int)"
    - "[io.netty.handler.codec.haproxy.HAProxyCommand].valueOf(byte)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].unknownMsg(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand)"
    - "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol].valueOf(byte)"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol].addressFamily()"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.SlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.DuplicatedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ReadOnlyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.EmptyByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.PooledSlicedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.SwappedByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.SwappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.EmptyByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.AbstractByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex(int)"
    - "[io.netty.buffer.CompositeByteBuf].readerIndex(int)"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex(int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex(int)"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex(int)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].ipBytesToString(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].readTlvs(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].<init>(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol,java.lang.String,java.lang.String,int,int,java.util.List)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    - "[io.netty.buffer.ByteBuf].readerIndex(int)"
    functionUses: 1
    ICount: 159
    EdgeCount: 207
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:134"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:133"
        BranchSideFuncs:
        - "skipBytes(int)"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:144"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:150"
        BranchSideFuncs:
        - "toHexString(int)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:149"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:155"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:162"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:161"
        BranchSideFuncs:
        - "readByte()"
        - "<init>(java.lang.Throwable)"
        - "valueOf(byte)"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:171"
        BranchSideFuncs:
        - "unknownMsg(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:170"
        BranchSideFuncs:
        - "addressFamily()"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:209"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:183"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:184"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:183"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:183"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:188"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:187"
        BranchSideFuncs:
        - "readerIndex()"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:190"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:193"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:192"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:200"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:203"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:202"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:210"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:217"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:212"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:213"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:212"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:212"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:217"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:216"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:218"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:226"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "append(char)"
        - "<init>()"
        - "toString()"
        - "append(java.lang.Object)"
        - "<init>(java.lang.String)"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:220"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:221"
        BranchSideFuncs:
        - "min(int,int)"
        - "append(int)"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:220"
        BranchSideFuncs:
        - "min(int,int)"
        - "append(int)"
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:220"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:225"
        BranchSideFuncs:
        - "min(int,int)"
        - "append(int)"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:224"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:126,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:128,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:129,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:129,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:130,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:130,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:130,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:134,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:135,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:139,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyProtocolVersion].valueOf(byte)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:141,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:145,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:150,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyCommand].valueOf(byte)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:156,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessage].unknownMsg(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:162,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol].valueOf(byte)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:171,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:179,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol].addressFamily()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:186,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:188,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:189,1"
      Dst: "[io.netty.buffer.ByteBuf].forEachByte(int,int,io.netty.util.ByteProcessor)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:195,1"
      Dst: "[io.netty.buffer.ByteBuf].toString(int,int,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:208,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:227,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:227,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:232,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessage].ipBytesToString(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:238,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessage].readTlvs(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:240,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessage].<init>(io.netty.handler.codec.haproxy.HAProxyProtocolVersion,io.netty.handler.codec.haproxy.HAProxyCommand,io.netty.handler.codec.haproxy.HAProxyProxiedProtocol,java.lang.String,java.lang.String,int,int,java.util.List)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 38
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProtocolVersion].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProtocolVersion"
    linkageType: ""
    functionLinenumber: 52
    functionLinenumberEnd: 61
    functionDepth: 0
    returnType: "io.netty.handler.codec.haproxy.HAProxyProtocolVersion"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 18
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyProtocolVersion:60,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyProtocolVersion:60,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyProtocolVersion:60,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyProtocolVersion:60,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyProtocolVersion:60,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyProxiedProtocol].valueOf(byte)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 93
    functionDepth: 0
    returnType: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    functionUses: 1
    ICount: 28
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol:92,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol:92,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol:92,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol:92,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyProxiedProtocol:92,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessage].ipBytesToString(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessage"
    linkageType: ""
    functionLinenumber: 374
    functionLinenumberEnd: 391
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShort()"
    - "[java.lang.Integer].toHexString(int)"
    - "[java.lang.StringBuilder].length()"
    - "[java.lang.StringBuilder].setLength(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    functionUses: 2
    ICount: 29
    EdgeCount: 25
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:378"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:384"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:383"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:379"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:378"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:384"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:388"
        BranchSideFuncs:
        - "toString()"
        - "setLength(int)"
        - "length()"
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:375,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:380,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:380,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:381,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:385,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:385,1"
      Dst: "[java.lang.Integer].toHexString(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:385,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:389,1"
      Dst: "[java.lang.StringBuilder].length()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:389,1"
      Dst: "[java.lang.StringBuilder].setLength(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:390,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessage].readTlvs(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessage"
    linkageType: ""
    functionLinenumber: 243
    functionLinenumberEnd: 258
    functionDepth: 5
    returnType: "java.util.List<HAProxyTLV>"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].readNextTLV(io.netty.buffer.ByteBuf)"
    - "[java.util.Collections].emptyList()"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[io.netty.util.internal.RecyclableArrayList].addAll(java.util.Collection)"
    - "[java.util.ArrayList].addAll(java.util.Collection)"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].encapsulatedTLVs()"
    - "[java.util.List].add(java.lang.Object)"
    - "[java.util.List].addAll(java.util.Collection)"
    functionUses: 1
    ICount: 18
    EdgeCount: 9
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:245"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:249"
        BranchSideFuncs:
        - "emptyList()"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:248"
        BranchSideFuncs:
        - "<init>(int)"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:253"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:256"
        BranchSideFuncs:
        - "addAll(java.util.Collection)"
        - "encapsulatedTLVs()"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:255"
        BranchSideFuncs:
        - "readNextTLV(io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:256"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:252"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:251"
        BranchSideFuncs:
        - "add(java.lang.Object)"
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:244,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessage].readNextTLV(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:246,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:249,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:252,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:254,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxySSLTLV].encapsulatedTLVs()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:254,1"
      Dst: "[java.util.List].addAll(java.util.Collection)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessage].readNextTLV(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessage"
    linkageType: ""
    functionLinenumber: 262
    functionLinenumberEnd: 302
    functionDepth: 4
    returnType: "io.netty.handler.codec.haproxy.HAProxyTLV"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV$Type].typeForByteValue(byte)"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShort()"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedSlice(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.UnreleasableByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.PooledByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readSlice(int)"
    - "[io.netty.buffer.SwappedByteBuf].readSlice(int)"
    - "[io.netty.buffer.SwappedByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readInt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readInt()"
    - "[io.netty.buffer.EmptyByteBuf].readInt()"
    - "[io.netty.buffer.AbstractByteBuf].readInt()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readInt()"
    - "[io.netty.buffer.WrappedByteBuf].readInt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readInt()"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].readNextTLV(io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].<init>(int,byte,java.util.List,io.netty.buffer.ByteBuf)"
    - "[java.util.Collections].emptyList()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].<init>(io.netty.handler.codec.haproxy.HAProxyTLV$Type,byte,io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.UnreleasableByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.WrappedByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.EmptyByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.AbstractByteBuf].readRetainedSlice(int)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    - "[io.netty.buffer.ByteBuf].readSlice(int)"
    - "[io.netty.buffer.ByteBuf].readInt()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    functionUses: 3
    ICount: 38
    EdgeCount: 104
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:263"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:267"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:266"
        BranchSideFuncs:
        - "readUnsignedShort()"
        - "typeForByteValue(byte)"
        - "ordinal()"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:278"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:290"
        BranchSideFuncs:
        - "emptyList()"
        - "<init>(int,byte,java.util.List,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:283"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:286"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:285"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessage:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessage:281"
        BranchSideFuncs:
        - "readNextTLV(io.netty.buffer.ByteBuf)"
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:263,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:267,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:268,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyTLV$Type].typeForByteValue(byte)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:270,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:271,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:273,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:273,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedSlice(int,int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:274,1"
      Dst: "[io.netty.buffer.ByteBuf].readSlice(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:276,1"
      Dst: "[io.netty.buffer.ByteBuf].readInt()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:280,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:282,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessage].readNextTLV(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:286,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:289,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxySSLTLV].<init>(int,byte,java.util.List,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:291,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:299,1"
      Dst: "[io.netty.buffer.ByteBuf].readRetainedSlice(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessage:299,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyTLV].<init>(io.netty.handler.codec.haproxy.HAProxyTLV$Type,byte,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].fail(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Exception)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 304
    functionLinenumberEnd: 318
    functionDepth: 3
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.String"
    - "java.lang.Exception"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].close()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].close()"
    - "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.String,java.lang.Throwable)"
    - "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.Throwable)"
    - "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>()"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 2
    ICount: 26
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:308"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:310"
        BranchSideFuncs:
        - "<init>(java.lang.String,java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:309"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:308"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:310"
        BranchSideFuncs:
        - "<init>(java.lang.String,java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:309"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:310"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:312"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:311"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:312"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:315"
        BranchSideFuncs:
        - "<init>(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:314"
        BranchSideFuncs:
        - "<init>()"
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:306,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:309,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.String,java.lang.Throwable)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:311,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:313,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:315,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyProtocolException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].failOverLimit(io.netty.channel.ChannelHandlerContext,int)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 295
    functionLinenumberEnd: 298
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].failOverLimit(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    - "[java.lang.String].valueOf(int)"
    functionUses: 1
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:296,1"
      Dst: "[java.lang.String].valueOf(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:296,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].failOverLimit(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].failOverLimit(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 299
    functionLinenumberEnd: 303
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].fail(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Exception)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 2
    ICount: 18
    EdgeCount: 8
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:300"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:300"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
        - "fail(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Exception)"
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:299"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:301,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:301,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:301,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:301,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:301,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:301,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].fail(io.netty.channel.ChannelHandlerContext,java.lang.String,java.lang.Exception)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].detectProtocol(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.ProtocolDetectionResult<HAProxyProtocolVersion>"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ProtocolDetectionResult].needsMoreData()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].match(byte[],io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.ProtocolDetectionResult].invalid()"
    functionUses: 0
    ICount: 18
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:324"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:328"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:327"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:330"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:333"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:332"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:333"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:336"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:335"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:324,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:325,1"
      Dst: "[io.netty.handler.codec.ProtocolDetectionResult].needsMoreData()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:328,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:330,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].match(byte[],io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:336,1"
      Dst: "[io.netty.handler.codec.ProtocolDetectionResult].invalid()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ProtocolDetectionResult].needsMoreData()"
    functionSourceFile: "io.netty.handler.codec.ProtocolDetectionResult"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.ProtocolDetectionResult"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.ProtocolDetectionResult].invalid()"
    functionSourceFile: "io.netty.handler.codec.ProtocolDetectionResult"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.ProtocolDetectionResult"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].access$000(io.netty.handler.codec.haproxy.HAProxyMessageDecoder)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].access$100(io.netty.handler.codec.haproxy.HAProxyMessageDecoder,io.netty.channel.ChannelHandlerContext,int)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 6
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].failOverLimit(io.netty.channel.ChannelHandlerContext,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:33,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].failOverLimit(io.netty.channel.ChannelHandlerContext,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].access$202(io.netty.handler.codec.haproxy.HAProxyMessageDecoder,int)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].access$002(io.netty.handler.codec.haproxy.HAProxyMessageDecoder,boolean)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].access$300(io.netty.handler.codec.haproxy.HAProxyMessageDecoder)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].access$200(io.netty.handler.codec.haproxy.HAProxyMessageDecoder)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "int"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 3
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].access$400(io.netty.handler.codec.haproxy.HAProxyMessageDecoder,io.netty.channel.ChannelHandlerContext,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.haproxy.HAProxyMessageDecoder"
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].failOverLimit(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.haproxy.HAProxyMessageDecoder:33,1"
      Dst: "[io.netty.handler.codec.haproxy.HAProxyMessageDecoder].failOverLimit(io.netty.channel.ChannelHandlerContext,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.ChannelHealthChecker$1].<init>()"
    functionSourceFile: "io.netty.channel.pool.ChannelHealthChecker$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.pool.ChannelHealthChecker$1:32,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.pool.ChannelHealthChecker$1].isHealthy(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.pool.ChannelHealthChecker$1"
    linkageType: ""
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "io.netty.util.concurrent.Future"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.AbstractNioChannel].eventLoop()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].eventLoop()"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    - "[io.netty.bootstrap.FailedChannel:io.netty.channel.Channel:io.netty.channel.epoll.AbstractEpollChannel:io.netty.channel.kqueue.AbstractKQueueChannel:io.netty.channel.local.LocalServerChannel].isActive()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].newSucceededFuture(java.lang.Object)"
    - "[io.netty.channel.Channel].eventLoop()"
    - "[io.netty.channel.Channel].isActive()"
    - "[io.netty.util.concurrent.EventExecutor].newSucceededFuture(java.lang.Object)"
    functionUses: 2
    ICount: 11
    EdgeCount: 31
    BranchProfiles:
    - Branch String: "io.netty.channel.pool.ChannelHealthChecker$1:36"
      Branch Sides:
      - BranchSide: "io.netty.channel.pool.ChannelHealthChecker$1:34"
        BranchSideFuncs:
        - "isActive()"
        - "eventLoop()"
        - "newSucceededFuture(java.lang.Object)"
    Callsites:
    - Src: "io.netty.channel.pool.ChannelHealthChecker$1:35,1"
      Dst: "[io.netty.channel.Channel].eventLoop()"
    - Src: "io.netty.channel.pool.ChannelHealthChecker$1:36,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.channel.pool.ChannelHealthChecker$1:36,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].newSucceededFuture(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    - "io.netty.handler.codec.http.HttpResponseStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.Unpooled].buffer(int)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:39,1"
      Dst: "[io.netty.buffer.Unpooled].buffer(int)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:39,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].trailingHeaders()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.HttpHeaders"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 25
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 81
    functionLinenumberEnd: 83
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 48
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].refCnt()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].refCnt()"
    - "[io.netty.buffer.SwappedByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedByteBuf].refCnt()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].refCnt()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].refCnt()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].refCnt()"
    - "[io.netty.buffer.EmptyByteBuf].refCnt()"
    - "[io.netty.util.ReferenceCounted].refCnt()"
    functionUses: 4
    ICount: 4
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:87,1"
      Dst: "[io.netty.util.ReferenceCounted].refCnt()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].retain()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.FullHttpResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].retain()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retain()"
    - "[io.netty.buffer.SwappedByteBuf].retain()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retain()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retain()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].retain()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retain()"
    - "[io.netty.buffer.CompositeByteBuf].retain()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf].retain()"
    - "[io.netty.buffer.ByteBuf].retain()"
    functionUses: 5
    ICount: 4
    EdgeCount: 10
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:92,1"
      Dst: "[io.netty.buffer.ByteBuf].retain()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].retain(int)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.FullHttpResponse"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ByteBuf].retain(int)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:98,1"
      Dst: "[io.netty.buffer.ByteBuf].retain(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].touch()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.FullHttpResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch()"
    - "[io.netty.buffer.SwappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedByteBuf].touch()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.SimpleLeakAwareByteBuf:io.netty.buffer.UnreleasableByteBuf].touch()"
    - "[io.netty.buffer.ByteBuf].touch()"
    functionUses: 2
    ICount: 4
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:104,1"
      Dst: "[io.netty.buffer.ByteBuf].touch()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].touch(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionDepth: 0
    returnType: "io.netty.handler.codec.http.FullHttpResponse"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].touch(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf:io.netty.buffer.CompositeByteBuf:io.netty.buffer.EmptyByteBuf:io.netty.buffer.SimpleLeakAwareByteBuf:io.netty.buffer.UnreleasableByteBuf].touch(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    functionUses: 2
    ICount: 5
    EdgeCount: 8
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:110,1"
      Dst: "[io.netty.buffer.ByteBuf].touch(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].release()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf:io.netty.util.ReferenceCounted].release()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 27
    ICount: 4
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:116,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].release(int)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 120
    functionLinenumberEnd: 122
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release(int)"
    - "[io.netty.buffer.WrappedByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release(int)"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release(int)"
    - "[io.netty.buffer.SwappedByteBuf].release(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release(int)"
    - "[io.netty.buffer.EmptyByteBuf:io.netty.buffer.UnreleasableByteBuf].release(int)"
    - "[io.netty.util.ReferenceCounted].release(int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:121,1"
      Dst: "[io.netty.util.ReferenceCounted].release(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].setProtocolVersion(io.netty.handler.codec.http.HttpVersion)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.http.FullHttpResponse"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpVersion"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpResponse].setProtocolVersion(io.netty.handler.codec.http.HttpVersion)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:126,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpResponse].setProtocolVersion(io.netty.handler.codec.http.HttpVersion)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].setStatus(io.netty.handler.codec.http.HttpResponseStatus)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.FullHttpResponse"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpResponseStatus"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpResponse].setStatus(io.netty.handler.codec.http.HttpResponseStatus)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:132,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpResponse].setStatus(io.netty.handler.codec.http.HttpResponseStatus)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].copy()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.FullHttpResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.buffer.ByteBuf].copy()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:138,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:138,1"
      Dst: "[io.netty.buffer.ByteBuf].copy()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:138,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].replace(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 152
    functionLinenumberEnd: 157
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.FullHttpResponse"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpMessage].protocolVersion()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpHeaders)"
    - "[io.netty.handler.codec.http.HttpHeaders].copy()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].copy()"
    - "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultHttpObject].decoderResult()"
    - "[io.netty.handler.codec.http.DefaultHttpObject].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    - "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    functionUses: 1
    ICount: 13
    EdgeCount: 11
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:153,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpMessage].protocolVersion()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:153,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpResponse].status()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:154,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpMessage].headers()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:154,1"
      Dst: "[io.netty.handler.codec.http.HttpHeaders].copy()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:154,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].trailingHeaders()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:154,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].<init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpResponseStatus,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.HttpHeaders,io.netty.handler.codec.http.HttpHeaders)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:155,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpObject].decoderResult()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:155,1"
      Dst: "[io.netty.handler.codec.DecoderResultProvider].setDecoderResult(io.netty.handler.codec.DecoderResult)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].duplicate()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.FullHttpResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.buffer.ByteBuf].duplicate()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].replace(io.netty.buffer.ByteBuf)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:143,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:143,1"
      Dst: "[io.netty.buffer.ByteBuf].duplicate()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:143,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].retainedDuplicate()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionDepth: 4
    returnType: "io.netty.handler.codec.http.FullHttpResponse"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].replace(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledSlicedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.WrappedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedDuplicateByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.PooledByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.UnreleasableByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf$PooledNonRetainedSlicedByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.AbstractByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.EmptyByteBuf].retainedDuplicate()"
    - "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    functionUses: 7
    ICount: 5
    EdgeCount: 18
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:148,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:148,1"
      Dst: "[io.netty.buffer.ByteBuf].retainedDuplicate()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:148,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].replace(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].hashCode()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 160
    functionLinenumberEnd: 178
    functionDepth: 3
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.buffer.ByteBufUtil].isAccessible(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].hashCode()"
    - "[io.netty.buffer.AbstractByteBuf].hashCode()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].hashCode()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].hashCode()"
    - "[io.netty.buffer.WrappedByteBuf].hashCode()"
    - "[io.netty.buffer.EmptyByteBuf].hashCode()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].hashCode()"
    - "[java.lang.Object].hashCode()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].trailingHeaders()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].hashCode()"
    - "[io.netty.buffer.ByteBuf].hashCode()"
    functionUses: 5
    ICount: 24
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultFullHttpResponse:162"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpResponse:177"
        BranchSideFuncs:
        - "isAccessible(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpResponse:176"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultFullHttpResponse:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpResponse:170"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:163,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:163,1"
      Dst: "[io.netty.buffer.ByteBufUtil].isAccessible(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:165,1"
      Dst: "[io.netty.buffer.ByteBuf].hashCode()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:173,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].trailingHeaders()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:173,1"
      Dst: "[java.lang.Object].hashCode()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:174,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpResponse].hashCode()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].equals(java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 181
    functionLinenumberEnd: 191
    functionDepth: 3
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.DefaultHttpResponse].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.EmptyByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.SwappedByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.WrappedByteBuf].equals(java.lang.Object)"
    - "[io.netty.buffer.AbstractByteBuf].equals(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders].equals(java.lang.Object)"
    - "[java.lang.Object].equals(java.lang.Object)"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].trailingHeaders()"
    - "[io.netty.buffer.ByteBuf].equals(java.lang.Object)"
    functionUses: 9
    ICount: 20
    EdgeCount: 13
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.DefaultFullHttpResponse:182"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpResponse:186"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpResponse:185"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultFullHttpResponse:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpResponse:-1"
        BranchSideFuncs:
        - "content()"
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpResponse:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultFullHttpResponse:189"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpResponse:-1"
        BranchSideFuncs:
        - "trailingHeaders()"
        - "equals(java.lang.Object)"
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpResponse:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.DefaultFullHttpResponse:190"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.DefaultFullHttpResponse:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:188,1"
      Dst: "[io.netty.handler.codec.http.DefaultHttpResponse].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:189,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].content()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:189,1"
      Dst: "[io.netty.buffer.ByteBuf].equals(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:190,1"
      Dst: "[io.netty.handler.codec.http.DefaultFullHttpResponse].trailingHeaders()"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:190,1"
      Dst: "[java.lang.Object].equals(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.DefaultFullHttpResponse].toString()"
    functionSourceFile: "io.netty.handler.codec.http.DefaultFullHttpResponse"
    linkageType: ""
    functionLinenumber: 194
    functionLinenumberEnd: 196
    functionDepth: 3
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(int)"
    - "[io.netty.handler.codec.http.HttpMessageUtil].appendFullResponse(java.lang.StringBuilder,io.netty.handler.codec.http.FullHttpResponse)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 20
    ICount: 6
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:195,1"
      Dst: "[java.lang.StringBuilder].<init>(int)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:195,1"
      Dst: "[io.netty.handler.codec.http.HttpMessageUtil].appendFullResponse(java.lang.StringBuilder,io.netty.handler.codec.http.FullHttpResponse)"
    - Src: "io.netty.handler.codec.http.DefaultFullHttpResponse:195,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlFrameDecoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlFrameDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:82,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].<init>()"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:83,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositive(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlFrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlFrameDecoder"
    linkageType: ""
    functionLinenumber: 87
    functionLinenumberEnd: 194
    functionDepth: 4
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.xml.XmlFrameDecoder].fail(long)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[java.lang.Character].isWhitespace(int)"
    - "[io.netty.handler.codec.xml.XmlFrameDecoder].fail(io.netty.channel.ChannelHandlerContext)"
    - "[io.netty.handler.codec.xml.XmlFrameDecoder].isValidStartCharForXmlElement(byte)"
    - "[io.netty.handler.codec.xml.XmlFrameDecoder].isCommentBlockStart(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.xml.XmlFrameDecoder].isCDATABlockStart(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.xml.XmlFrameDecoder].extractFrame(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 155
    EdgeCount: 218
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:96"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:103"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:181"
        BranchSideFuncs:
        - "isWhitespace(int)"
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:180"
        BranchSideFuncs:
        - "readerIndex()"
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:105"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:107"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:105"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:107"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:112"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:108"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:112"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:148"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:147"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:113"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:148"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:147"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:116"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:103"
        BranchSideFuncs:
        - "isValidStartCharForXmlElement(byte)"
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:118"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:116"
        BranchSideFuncs:
        - "isValidStartCharForXmlElement(byte)"
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:121"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:128"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:123"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:127"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:126"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:118"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:134"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:null"
        BranchSideFuncs:
        - "isCommentBlockStart(io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:135"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:137"
        BranchSideFuncs:
        - "isCDATABlockStart(io.netty.buffer.ByteBuf,int)"
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:138"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:146"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:143"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:146"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:148"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:149"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:153"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:103"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:174"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:159"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:null"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:160"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:167"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:174"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:174"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:102"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:193"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:192"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:184"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:193"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:192"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:185"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:189"
        BranchSideFuncs:
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:188"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "extractFrame(io.netty.buffer.ByteBuf,int,int)"
        - "skipBytes(int)"
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:94,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:98,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:98,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:99,1"
      Dst: "[io.netty.handler.codec.xml.XmlFrameDecoder].fail(long)"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:103,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:104,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:105,1"
      Dst: "[java.lang.Character].isWhitespace(int)"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:110,1"
      Dst: "[io.netty.handler.codec.xml.XmlFrameDecoder].fail(io.netty.channel.ChannelHandlerContext)"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:118,1"
      Dst: "[io.netty.handler.codec.xml.XmlFrameDecoder].isValidStartCharForXmlElement(byte)"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:135,1"
      Dst: "[io.netty.handler.codec.xml.XmlFrameDecoder].isCommentBlockStart(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:138,1"
      Dst: "[io.netty.handler.codec.xml.XmlFrameDecoder].isCDATABlockStart(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:189,1"
      Dst: "[io.netty.handler.codec.xml.XmlFrameDecoder].extractFrame(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:191,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 58
    CyclomaticComplexity: 35
  - functionName: "[io.netty.handler.codec.xml.XmlFrameDecoder].fail(long)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlFrameDecoder"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 201
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 27
    EdgeCount: 14
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:200"
        BranchSideFuncs:
        - "append(long)"
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:199"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:197,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:197,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:197,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:197,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:197,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:197,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlFrameDecoder].fail(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlFrameDecoder"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$1].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    - "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    functionUses: 1
    ICount: 5
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:206,1"
      Dst: "[io.netty.handler.codec.CorruptedFrameException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:206,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].fireExceptionCaught(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.xml.XmlFrameDecoder].isValidStartCharForXmlElement(byte)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlFrameDecoder"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 17
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:225"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:224"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:225"
      Branch Sides: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:224"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:224"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:225"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:224"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 7
  - functionName: "[io.netty.handler.codec.xml.XmlFrameDecoder].isCommentBlockStart(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlFrameDecoder"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 232
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 1
    ICount: 17
    EdgeCount: 48
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:229"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:230"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-1"
        BranchSideFuncs:
        - "getByte(int)"
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:231"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:229,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:230,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.xml.XmlFrameDecoder].isCDATABlockStart(io.netty.buffer.ByteBuf,int)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlFrameDecoder"
    linkageType: ""
    functionLinenumber: 234
    functionLinenumberEnd: 243
    functionDepth: 0
    returnType: "boolean"
    argCount: 2
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    functionUses: 1
    ICount: 37
    EdgeCount: 153
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:235"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:236"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:237"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:238"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:239"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:240"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-1"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:241"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-1"
        BranchSideFuncs:
        - "getByte(int)"
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-2"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.xml.XmlFrameDecoder:242"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.xml.XmlFrameDecoder:-2"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:235,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:236,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 9
  - functionName: "[io.netty.handler.codec.xml.XmlFrameDecoder].extractFrame(io.netty.buffer.ByteBuf,int,int)"
    functionSourceFile: "io.netty.handler.codec.xml.XmlFrameDecoder"
    linkageType: ""
    functionLinenumber: 209
    functionLinenumberEnd: 211
    functionDepth: 0
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 3
    argTypes:
    - "io.netty.buffer.ByteBuf"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.ReadOnlyByteBuf].copy(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].copy(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledHeapByteBuf].copy(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].copy(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].copy(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].copy(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].copy(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].copy(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].copy(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].copy(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].copy(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].copy(int,int)"
    - "[io.netty.buffer.ByteBuf].copy(int,int)"
    functionUses: 1
    ICount: 5
    EdgeCount: 23
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.xml.XmlFrameDecoder:210,1"
      Dst: "[io.netty.buffer.ByteBuf].copy(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].<init>(io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2"
    linkageType: ""
    functionLinenumber: 608
    functionLinenumberEnd: 610
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:609,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2"
    linkageType: ""
    functionLinenumber: 611
    functionLinenumberEnd: 619
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.AbstractEpollChannel].access$100(io.netty.channel.epoll.AbstractEpollChannel)"
    - "[io.netty.channel.ConnectTimeoutException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.util.concurrent.DefaultPromise].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].tryFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    functionUses: 49
    ICount: 22
    EdgeCount: 16
    BranchProfiles:
    - Branch String: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:613"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:618"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "isDone()"
        - "tryFailure(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:617"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:613"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:618"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.Object)"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "isDone()"
        - "tryFailure(java.lang.Throwable)"
      - BranchSide: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:617"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:614"
      Branch Sides:
      - BranchSide: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:617"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:612,1"
      Dst: "[io.netty.channel.epoll.AbstractEpollChannel].access$100(io.netty.channel.epoll.AbstractEpollChannel)"
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:613,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:613,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:613,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:613,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:613,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:613,1"
      Dst: "[io.netty.channel.ConnectTimeoutException].<init>(java.lang.String)"
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:614,1"
      Dst: "[io.netty.util.concurrent.Promise].tryFailure(java.lang.Throwable)"
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:616,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].voidPromise()"
    - Src: "io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2:616,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 4
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.IdentityHashMap].<init>()"
    - "[java.util.Collections].synchronizedMap(java.util.Map)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:89,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:82,1"
      Dst: "[java.util.IdentityHashMap].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:83,1"
      Dst: "[java.util.Collections].synchronizedMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>(java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:96,1"
      Dst: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.IdentityHashMap].<init>()"
    - "[java.util.Collections].synchronizedMap(java.util.Map)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:103,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:82,1"
      Dst: "[java.util.IdentityHashMap].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:83,1"
      Dst: "[java.util.Collections].synchronizedMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>(boolean,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "boolean"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>(boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:109,1"
      Dst: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>(long)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.IdentityHashMap].<init>()"
    - "[java.util.Collections].synchronizedMap(java.util.Map)"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:116,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:82,1"
      Dst: "[java.util.IdentityHashMap].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:83,1"
      Dst: "[java.util.Collections].synchronizedMap(java.util.Map)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>(long,java.nio.charset.Charset)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "long"
    - "java.nio.charset.Charset"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>(long)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:123,1"
      Dst: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].<init>(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].setBaseDir(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].setDeleteOnExit(boolean)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].setMaxLimit(long)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].getList(io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "java.util.List<HttpData>"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.ArrayList].<init>()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:156"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:null"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:155,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:157,1"
      Dst: "[java.util.ArrayList].<init>()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:158,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.nio.charset.Charset,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http.multipart.HttpData].setMaxSize(long)"
    - "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].getList(io.netty.handler.codec.http.HttpRequest)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].setMaxSize(long)"
    functionUses: 0
    ICount: 33
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:165"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:172"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:171"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:172"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:179"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:178"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:166,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.nio.charset.Charset,java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:167,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].setMaxSize(long)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:168,1"
      Dst: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].getList(io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:169,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:173,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:179,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:180,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].setMaxSize(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String,long)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    - "java.lang.String"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http.multipart.HttpData].setMaxSize(long)"
    - "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].getList(io.netty.handler.codec.http.HttpRequest)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,long,java.nio.charset.Charset,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,long)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].setMaxSize(long)"
    functionUses: 0
    ICount: 34
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:193"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:192"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:200"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:199"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:187,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:188,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].setMaxSize(long)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:189,1"
      Dst: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].getList(io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:190,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:194,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,long,long,java.nio.charset.Charset,java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:200,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,long)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:201,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].setMaxSize(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].checkHttpDataSize(io.netty.handler.codec.http.multipart.HttpData)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.multipart.HttpData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.HttpData].length()"
    - "[io.netty.handler.codec.http.multipart.HttpData].checkSize(long)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:210,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].length()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:210,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].checkSize(long)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:212,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].createAttribute(io.netty.handler.codec.http.HttpRequest,java.lang.String,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 7
    returnType: "io.netty.handler.codec.http.multipart.Attribute"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    - "java.lang.String"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.lang.String,java.nio.charset.Charset,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http.multipart.HttpData].setMaxSize(long)"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].checkHttpDataSize(io.netty.handler.codec.http.multipart.HttpData)"
    - "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].getList(io.netty.handler.codec.http.HttpRequest)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,java.lang.String,java.nio.charset.Charset)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].setMaxSize(long)"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 54
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:218"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:232"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:233"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:242"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:241"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:221,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskAttribute].<init>(java.lang.String,java.lang.String,java.nio.charset.Charset,java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:222,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].setMaxSize(long)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:225,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedAttribute].<init>(java.lang.String,java.lang.String,long,java.nio.charset.Charset,java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:228,1"
      Dst: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].checkHttpDataSize(io.netty.handler.codec.http.multipart.HttpData)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:229,1"
      Dst: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].getList(io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:230,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:242,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryAttribute].<init>(java.lang.String,java.lang.String,java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:243,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].setMaxSize(long)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:247,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].createFileUpload(io.netty.handler.codec.http.HttpRequest,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "io.netty.handler.codec.http.multipart.FileUpload"
    argCount: 7
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http.multipart.HttpData].setMaxSize(long)"
    - "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].checkHttpDataSize(io.netty.handler.codec.http.multipart.HttpData)"
    - "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].getList(io.netty.handler.codec.http.HttpRequest)"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long,long,java.lang.String,boolean)"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long)"
    - "[io.netty.handler.codec.http.multipart.AbstractHttpData].setMaxSize(long)"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:255"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:264"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:263"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:264"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:273"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:272"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:256,1"
      Dst: "[io.netty.handler.codec.http.multipart.DiskFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long,java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:258,1"
      Dst: "[io.netty.handler.codec.http.multipart.HttpData].setMaxSize(long)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:259,1"
      Dst: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].checkHttpDataSize(io.netty.handler.codec.http.multipart.HttpData)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:260,1"
      Dst: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].getList(io.netty.handler.codec.http.HttpRequest)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:261,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:265,1"
      Dst: "[io.netty.handler.codec.http.multipart.MixedFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long,long,java.lang.String,boolean)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:273,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:275,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractHttpData].setMaxSize(long)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryFileUpload].<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "void"
    argCount: 6
    argTypes:
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.lang.String"
    - "java.nio.charset.Charset"
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].<init>(java.lang.String,java.nio.charset.Charset,long)"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].setFilename(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].setContentType(java.lang.String)"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].setContentTransferEncoding(java.lang.String)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryFileUpload:42,1"
      Dst: "[io.netty.handler.codec.http.multipart.AbstractMemoryHttpData].<init>(java.lang.String,java.nio.charset.Charset,long)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryFileUpload:43,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryFileUpload].setFilename(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryFileUpload:44,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryFileUpload].setContentType(java.lang.String)"
    - Src: "io.netty.handler.codec.http.multipart.MemoryFileUpload:45,1"
      Dst: "[io.netty.handler.codec.http.multipart.MemoryFileUpload].setContentTransferEncoding(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryFileUpload].setFilename(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryFileUpload:60,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryFileUpload].setContentType(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.MemoryFileUpload:88,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.MemoryFileUpload].setContentTransferEncoding(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.MemoryFileUpload"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].removeHttpDataFromClean(io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.multipart.InterfaceHttpData)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    - "io.netty.handler.codec.http.multipart.InterfaceHttpData"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Iterator].remove()"
    - "[java.util.List].isEmpty()"
    - "[java.util.Map].remove(java.lang.Object)"
    functionUses: 0
    ICount: 25
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:282"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:288"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:287"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:289"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:295"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:294"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:296"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:309"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:308"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:298"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:308"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:307"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:302"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:306"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:305"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:288,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:295,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:296,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:297,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:299,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:302,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:303,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 12
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].cleanRequestHttpData(io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].remove(java.lang.Object)"
    - "[java.util.List].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 0
    ICount: 14
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:314"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:319"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:318"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:315"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:319"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:318"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:313,1"
      Dst: "[java.util.Map].remove(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:315,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:315,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:315,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:316,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].cleanAllHttpData()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].entrySet()"
    - "[java.util.Set].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[java.util.Map$Entry].getValue()"
    - "[java.util.List].iterator()"
    - "[io.netty.util.ReferenceCounted].release()"
    - "[java.util.Iterator].remove()"
    functionUses: 0
    ICount: 20
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:324"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:337"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:336"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:331"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:335"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:334"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:323,1"
      Dst: "[java.util.Map].entrySet()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:323,1"
      Dst: "[java.util.Set].iterator()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:324,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:325,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:330,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:331,1"
      Dst: "[java.util.List].iterator()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:332,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:335,1"
      Dst: "[java.util.Iterator].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].cleanRequestHttpDatas(io.netty.handler.codec.http.HttpRequest)"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.HttpRequest"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].cleanRequestHttpData(io.netty.handler.codec.http.HttpRequest)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:341,1"
      Dst: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].cleanRequestHttpData(io.netty.handler.codec.http.HttpRequest)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].cleanAllHttpDatas()"
    functionSourceFile: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].cleanAllHttpData()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.multipart.DefaultHttpDataFactory:346,1"
      Dst: "[io.netty.handler.codec.http.multipart.DefaultHttpDataFactory].cleanAllHttpData()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].<init>(java.lang.Runnable,java.lang.Object)"
    functionSourceFile: "io.netty.util.concurrent.PromiseTask$RunnableAdapter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.Runnable"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseTask$RunnableAdapter:27,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].call()"
    functionSourceFile: "io.netty.util.concurrent.PromiseTask$RunnableAdapter"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionDepth: 0
    returnType: "java.lang.Object"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$2:io.netty.channel.oio.AbstractOioChannel$3:io.netty.util.concurrent.AbstractScheduledEventExecutor$2:io.netty.util.concurrent.GlobalEventExecutor$1:io.netty.util.concurrent.PromiseTask$SentinelRunnable:io.netty.util.concurrent.SingleThreadEventExecutor$1:java.lang.invoke.MethodHandleNatives$CallSiteContext:java.lang.ref.Finalizer$2:java.lang.ref.Finalizer$FinalizerThread:java.util.concurrent.CompletableFuture$Completion:java.util.concurrent.ForkJoinWorkerThread:java.util.concurrent.ThreadPoolExecutor$Worker:java.util.zip.Deflater$DeflaterZStreamRef:java.util.zip.Inflater$InflaterZStreamRef:java.util.zip.ZipFile$CleanableResource].run()"
    - "[java.lang.Runnable].run()"
    functionUses: 2
    ICount: 5
    EdgeCount: 169
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseTask$RunnableAdapter:34,1"
      Dst: "[java.lang.Runnable].run()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].toString()"
    functionSourceFile: "io.netty.util.concurrent.PromiseTask$RunnableAdapter"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(java.lang.Object)"
    functionUses: 19
    ICount: 12
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.PromiseTask$RunnableAdapter:40,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.util.concurrent.PromiseTask$RunnableAdapter:40,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.util.concurrent.PromiseTask$RunnableAdapter:40,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.Object)"
    - Src: "io.netty.util.concurrent.PromiseTask$RunnableAdapter:40,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.util.concurrent.PromiseTask$RunnableAdapter:40,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.ZlibUtil].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.ZlibUtil"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.ZlibUtil:83,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils$StringIterator].<init>(java.util.Iterator)"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$StringIterator"
    linkageType: ""
    functionLinenumber: 173
    functionLinenumberEnd: 177
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.util.Iterator"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$StringIterator:174,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$StringIterator"
    linkageType: ""
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[java.util.Iterator].hasNext()"
    functionUses: 227
    ICount: 4
    EdgeCount: 56
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$StringIterator:180,1"
      Dst: "[java.util.Iterator].hasNext()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$StringIterator"
    linkageType: ""
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionDepth: 0
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.channel.ReflectiveChannelFactory].toString()"
    - "[sun.security.x509.SerialNumber].toString()"
    - "[io.netty.util.Version].toString()"
    - "[javax.net.ssl.SSLEngineResult].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketScheme].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpResponse].toString()"
    - "[io.netty.bootstrap.AbstractBootstrapConfig].toString()"
    - "[java.util.AbstractCollection].toString()"
    - "[jdk.internal.org.objectweb.asm.Type].toString()"
    - "[sun.security.x509.CertificateAlgorithmId].toString()"
    - "[io.netty.buffer.PoolSubpage].toString()"
    - "[java.net.InetSocketAddress].toString()"
    - "[jdk.internal.misc.Signal$NativeHandler].toString()"
    - "[java.lang.ProcessBuilder$Redirect$3].toString()"
    - "[io.netty.util.Recycler$1].toString()"
    - "[sun.security.x509.PolicyConstraintsExtension].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpRequest].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2DataFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperties].toString()"
    - "[java.nio.charset.Charset].toString()"
    - "[java.util.Properties].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolConfig].toString()"
    - "[sun.security.util.JarConstraintsParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedFileUpload].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].toString()"
    - "[java.lang.reflect.Constructor].toString()"
    - "[java.nio.DoubleBuffer].toString()"
    - "[io.netty.util.Signal].toString()"
    - "[jdk.internal.jimage.ImageReader$Node].toString()"
    - "[java.lang.Thread].toString()"
    - "[io.netty.handler.ssl.OpenSslClientSessionCache$HostPort].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthRequest].toString()"
    - "[java.lang.Throwable].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$CompositePrinterParser].toString()"
    - "[io.netty.channel.embedded.EmbeddedSocketAddress].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AddressType].toString()"
    - "[java.util.regex.Matcher].toString()"
    - "[java.lang.reflect.Field].toString()"
    - "[java.lang.invoke.MethodHandles$Lookup].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2WindowUpdateFrame].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpResponse].toString()"
    - "[java.lang.StringBuffer].toString()"
    - "[java.net.URL].toString()"
    - "[java.lang.invoke.LambdaForm$Name].toString()"
    - "[sun.security.x509.RDN].toString()"
    - "[java.util.concurrent.atomic.AtomicReference].toString()"
    - "[java.util.Currency].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].toString()"
    - "[io.netty.channel.kqueue.NativeLongArray].toString()"
    - "[io.netty.handler.proxy.ProxyConnectionEvent].toString()"
    - "[java.util.Formatter].toString()"
    - "[java.lang.ModuleLayer].toString()"
    - "[java.util.concurrent.atomic.AtomicBoolean].toString()"
    - "[io.netty.handler.ssl.SslCompletionEvent].toString()"
    - "[io.netty.bootstrap.BootstrapConfig].toString()"
    - "[java.lang.ProcessBuilder$Redirect$1].toString()"
    - "[io.netty.handler.codec.xml.XmlEntityReference].toString()"
    - "[java.net.Proxy].toString()"
    - "[sun.security.util.DerValue].toString()"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].toString()"
    - "[sun.security.x509.AlgorithmId].toString()"
    - "[java.text.AttributedCharacterIterator$Attribute].toString()"
    - "[java.lang.Runtime$Version].toString()"
    - "[jdk.internal.jmod.JmodFile$Entry].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$2].toString()"
    - "[java.lang.module.ModuleDescriptor$Exports].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpRequest].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyGoAwayFrame].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyDataFrame].toString()"
    - "[io.netty.channel.kqueue.AcceptFilter].toString()"
    - "[sun.security.x509.SubjectKeyIdentifierExtension].toString()"
    - "[io.netty.buffer.DefaultByteBufHolder].toString()"
    - "[java.lang.StringBuilder].toString()"
    - "[java.time.temporal.ChronoField].toString()"
    - "[java.security.PermissionCollection].toString()"
    - "[io.netty.handler.codec.http.cors.CorsConfig].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].toString()"
    - "[java.util.concurrent.ConcurrentHashMap].toString()"
    - "[io.netty.handler.codec.http.multipart.InternalAttribute].toString()"
    - "[io.netty.handler.ssl.ExtendedOpenSslSession].toString()"
    - "[java.util.Vector].toString()"
    - "[io.netty.handler.codec.http.HttpVersion].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompContentSubframe].toString()"
    - "[java.text.CalendarBuilder].toString()"
    - "[java.net.URLConnection].toString()"
    - "[java.util.EventObject].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsRecord].toString()"
    - "[io.netty.util.AbstractConstant].toString()"
    - "[sun.reflect.annotation.TypeAnnotation].toString()"
    - "[java.security.SecureRandom].toString()"
    - "[java.util.concurrent.atomic.AtomicLong].toString()"
    - "[io.netty.handler.codec.http.multipart.HttpPostBodyUtil$TransferEncodingMechanism].toString()"
    - "[io.netty.handler.codec.stomp.DefaultLastStompContentSubframe].toString()"
    - "[sun.util.calendar.Era].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandResponse].toString()"
    - "[java.lang.module.ModuleDescriptor$Requires].toString()"
    - "[java.time.ZonedDateTime].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache].toString()"
    - "[java.math.MutableBigInteger].toString()"
    - "[java.lang.module.ModuleDescriptor$Provides].toString()"
    - "[java.net.InetSocketAddress$InetSocketAddressHolder].toString()"
    - "[sun.security.x509.GeneralNames].toString()"
    - "[io.netty.handler.codec.spdy.SpdySessionStatus].toString()"
    - "[sun.security.x509.Extension].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$StringProperty].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscriptionOption].toString()"
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].toString()"
    - "[io.netty.handler.ssl.util.LazyX509Certificate].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2UnknownFrame].toString()"
    - "[sun.security.x509.ExtendedKeyUsageExtension].toString()"
    - "[io.netty.buffer.WrappedByteBuf].toString()"
    - "[jdk.internal.org.objectweb.asm.Handle].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].toString()"
    - "[java.security.MessageDigest].toString()"
    - "[io.netty.handler.codec.dns.DnsOpCode].toString()"
    - "[java.io.ObjectOutputStream$DebugTraceInfoStack].toString()"
    - "[java.util.TreeMap$Entry].toString()"
    - "[java.time.zone.ZoneOffsetTransition].toString()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler].toString()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$DefaultOpenSslSession].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscAtomicArrayQueue].toString()"
    - "[java.lang.Integer].toString()"
    - "[java.lang.ProcessBuilder$Redirect$6].toString()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].toString()"
    - "[java.util.OptionalInt].toString()"
    - "[javax.naming.NamingException].toString()"
    - "[java.time.LocalDate].toString()"
    - "[java.util.ServiceLoader].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache].toString()"
    - "[java.net.InetAddress].toString()"
    - "[java.util.jar.Attributes$Name].toString()"
    - "[java.lang.Boolean].toString()"
    - "[io.netty.handler.codec.DefaultHeaders].toString()"
    - "[jaz.Zer].toString()"
    - "[io.netty.util.concurrent.DefaultPromise].toString()"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PriorityFrame].toString()"
    - "[io.netty.handler.ssl.PemX509Certificate].toString()"
    - "[sun.security.x509.UniqueIdentity].toString()"
    - "[java.security.CodeSigner].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpResponse].toString()"
    - "[sun.security.x509.CertificateX509Key].toString()"
    - "[java.nio.IntBuffer].toString()"
    - "[io.netty.resolver.dns.ShuffledDnsServerAddressStream].toString()"
    - "[java.util.concurrent.CountDownLatch].toString()"
    - "[io.netty.handler.codec.redis.IntegerRedisMessage].toString()"
    - "[java.nio.ByteOrder].toString()"
    - "[java.util.OptionalLong].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses$1].toString()"
    - "[io.netty.handler.codec.xml.XmlElementEnd].toString()"
    - "[java.io.ObjectStreamClass].toString()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$DefaultHttp2FrameStream].toString()"
    - "[java.util.concurrent.atomic.LongAdder].toString()"
    - "[java.util.Optional].toString()"
    - "[java.net.URI].toString()"
    - "[java.lang.String].toString()"
    - "[io.netty.handler.codec.http.HttpServerUpgradeHandler$UpgradeEvent].toString()"
    - "[java.nio.FloatBuffer].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuestion].toString()"
    - "[io.netty.handler.ssl.OpenSslSessionId].toString()"
    - "[io.netty.channel.group.DefaultChannelGroup].toString()"
    - "[sun.security.x509.AuthorityKeyIdentifierExtension].toString()"
    - "[sun.security.util.ObjectIdentifier].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$UserProperty].toString()"
    - "[java.util.concurrent.LinkedBlockingDeque].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandStatus].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsResponse].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyRstStreamFrame].toString()"
    - "[io.netty.buffer.UnpooledByteBufAllocator$UnpooledByteBufAllocatorMetric].toString()"
    - "[java.time.format.DateTimePrintContext].toString()"
    - "[io.netty.handler.codec.http.DefaultHttpContent].toString()"
    - "[sun.nio.fs.UnixPath].toString()"
    - "[io.netty.util.DomainNameMappingBuilder$ImmutableDomainNameMapping].toString()"
    - "[java.lang.Class].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyHeadersFrame].toString()"
    - "[io.netty.util.ResourceLeakDetector$TraceRecord].toString()"
    - "[java.util.BitSet].toString()"
    - "[java.lang.StackFrameInfo].toString()"
    - "[javax.xml.namespace.QName].toString()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].toString()"
    - "[sun.security.x509.CertificateExtensions].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompFrame].toString()"
    - "[sun.security.x509.BasicConstraintsExtension].toString()"
    - "[java.util.concurrent.atomic.AtomicReferenceArray].toString()"
    - "[java.lang.invoke.Invokers].toString()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PingFrame].toString()"
    - "[java.time.LocalDateTime].toString()"
    - "[io.netty.util.internal.logging.AbstractInternalLogger].toString()"
    - "[io.netty.handler.codec.xml.XmlProcessingInstruction].toString()"
    - "[jdk.internal.math.FDBigInteger].toString()"
    - "[java.time.format.DateTimeFormatter].toString()"
    - "[io.netty.handler.codec.mqtt.MqttReasonCodeAndPropertiesVariableHeader].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.SpscLinkedQueue].toString()"
    - "[io.netty.handler.codec.redis.FullBulkStringRedisMessage].toString()"
    - "[sun.security.x509.CertificateIssuerName].toString()"
    - "[java.lang.invoke.SerializedLambda].toString()"
    - "[sun.util.locale.LocaleExtensions].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsQuery].toString()"
    - "[sun.security.x509.NameConstraintsExtension].toString()"
    - "[java.net.NetworkInterface].toString()"
    - "[java.util.StringJoiner].toString()"
    - "[java.util.AbstractMap].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxySSLTLV].toString()"
    - "[java.time.LocalTime].toString()"
    - "[java.security.ProtectionDomain].toString()"
    - "[io.netty.handler.codec.http2.WeightedFairQueueByteDistributor$State].toString()"
    - "[io.netty.util.concurrent.PromiseTask$SentinelRunnable].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$IntegerProperty].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialRequest].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock].toString()"
    - "[io.netty.handler.codec.EmptyHeaders].toString()"
    - "[java.time.temporal.ValueRange].toString()"
    - "[java.time.Instant].toString()"
    - "[java.security.PrivilegedActionException].toString()"
    - "[io.netty.util.DomainWildcardMappingBuilder$ImmutableDomainWildcardMapping].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyPingFrame].toString()"
    - "[sun.util.calendar.CalendarDate].toString()"
    - "[java.lang.module.Configuration].toString()"
    - "[java.security.AlgorithmParameters].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskFileUpload].toString()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers].toString()"
    - "[java.lang.ThreadGroup].toString()"
    - "[io.netty.buffer.AbstractByteBufAllocator].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].toString()"
    - "[io.netty.handler.codec.http.multipart.AbstractMixedHttpData].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].toString()"
    - "[java.nio.file.attribute.FileTime].toString()"
    - "[io.netty.handler.codec.http.DefaultFullHttpRequest].toString()"
    - "[io.netty.handler.codec.xml.XmlNamespace].toString()"
    - "[io.netty.channel.unix.FileDescriptor].toString()"
    - "[java.lang.Double].toString()"
    - "[java.util.OptionalDouble].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage].toString()"
    - "[io.netty.bootstrap.AbstractBootstrap].toString()"
    - "[io.netty.channel.WriteBufferWaterMark].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsRawRecord].toString()"
    - "[java.math.BigInteger].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].toString()"
    - "[java.time.format.Parsed].toString()"
    - "[java.time.OffsetDateTime].toString()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].toString()"
    - "[java.time.OffsetTime].toString()"
    - "[java.util.WeakHashMap$Entry].toString()"
    - "[io.netty.handler.codec.spdy.SpdyStreamStatus].toString()"
    - "[sun.security.x509.X509CertImpl].toString()"
    - "[java.time.ZoneOffset].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubscribePayload].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2GoAwayFrame].toString()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyTLV].toString()"
    - "[java.lang.reflect.Method].toString()"
    - "[io.netty.handler.codec.http2.Http2Flags].toString()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].toString()"
    - "[io.netty.buffer.CompositeByteBuf].toString()"
    - "[java.lang.Enum].toString()"
    - "[io.netty.handler.codec.http2.HpackHeaderField].toString()"
    - "[java.net.ServerSocket].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsOptEcsRecord].toString()"
    - "[jdk.internal.perf.PerfCounter].toString()"
    - "[java.time.zone.ZoneRules].toString()"
    - "[java.security.spec.PSSParameterSpec].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent$DefaultIdleStateEvent].toString()"
    - "[sun.security.x509.X500Name].toString()"
    - "[io.netty.handler.codec.http.HttpResponseStatus].toString()"
    - "[io.netty.channel.embedded.EmbeddedChannelId].toString()"
    - "[java.util.concurrent.locks.AbstractQueuedSynchronizer].toString()"
    - "[io.netty.util.AsciiString].toString()"
    - "[java.util.regex.Pattern].toString()"
    - "[java.util.concurrent.atomic.AtomicLongArray].toString()"
    - "[io.netty.handler.codec.redis.FixedRedisMessagePool$RedisErrorKey].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].toString()"
    - "[sun.util.locale.Extension].toString()"
    - "[io.netty.handler.codec.smtp.SmtpCommand].toString()"
    - "[java.util.concurrent.ForkJoinPool].toString()"
    - "[sun.security.x509.CertificateVersion].toString()"
    - "[java.lang.ProcessHandleImpl].toString()"
    - "[io.netty.handler.codec.redis.AbstractStringRedisMessage].toString()"
    - "[java.util.LongSummaryStatistics].toString()"
    - "[java.io.ObjectStreamField].toString()"
    - "[java.lang.ProcessImpl].toString()"
    - "[io.netty.util.internal.AppendableCharSequence].toString()"
    - "[io.netty.resolver.dns.InflightNameResolver].toString()"
    - "[java.nio.charset.CodingErrorAction].toString()"
    - "[java.lang.Float].toString()"
    - "[java.time.format.DecimalStyle].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessage].toString()"
    - "[io.netty.handler.codec.smtp.DefaultSmtpResponse].toString()"
    - "[sun.security.x509.IssuerAlternativeNameExtension].toString()"
    - "[jdk.internal.org.objectweb.asm.Label].toString()"
    - "[java.io.File].toString()"
    - "[io.netty.util.concurrent.DefaultPromise$LeanCancellationException].toString()"
    - "[io.netty.handler.ssl.util.LazyJavaxX509Certificate].toString()"
    - "[java.util.Calendar].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5AuthMethod].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].toString()"
    - "[java.nio.ByteBuffer].toString()"
    - "[io.netty.buffer.EmptyByteBuf].toString()"
    - "[io.netty.buffer.AbstractByteBuf].toString()"
    - "[java.util.concurrent.locks.ReentrantReadWriteLock].toString()"
    - "[io.netty.util.concurrent.PromiseTask$RunnableAdapter].toString()"
    - "[java.lang.Package].toString()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].toString()"
    - "[java.text.ParsePosition].toString()"
    - "[sun.util.locale.BaseLocale].toString()"
    - "[sun.reflect.annotation.AnnotationType].toString()"
    - "[java.lang.Character$Subset].toString()"
    - "[sun.security.util.LazyCodeSourcePermissionCollection].toString()"
    - "[java.lang.Object].toString()"
    - "[io.netty.handler.codec.xml.XmlElement].toString()"
    - "[java.lang.Character].toString()"
    - "[sun.net.www.MessageHeader].toString()"
    - "[java.lang.invoke.MethodType].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandResponse].toString()"
    - "[io.netty.handler.codec.stomp.DefaultStompHeadersSubframe].toString()"
    - "[io.netty.handler.codec.http.QueryStringEncoder].toString()"
    - "[java.net.InterfaceAddress].toString()"
    - "[java.time.zone.ZoneOffsetTransitionRule].toString()"
    - "[io.netty.handler.codec.http.multipart.DiskAttribute].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandType].toString()"
    - "[io.netty.handler.codec.dns.DnsRecordType].toString()"
    - "[io.netty.handler.codec.http.DefaultLastHttpContent].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynStreamFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPublishVariableHeader].toString()"
    - "[java.lang.StackTraceElement].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$CollectionView].toString()"
    - "[java.lang.ProcessBuilder$Redirect$4].toString()"
    - "[java.lang.invoke.LambdaForm].toString()"
    - "[io.netty.handler.codec.dns.DnsResponseCode].toString()"
    - "[io.netty.util.collection.LongObjectHashMap].toString()"
    - "[javax.naming.directory.ModificationItem].toString()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].toString()"
    - "[sun.security.x509.PolicyMappingsExtension].toString()"
    - "[sun.security.x509.CertificatePoliciesExtension].toString()"
    - "[java.security.CodeSource].toString()"
    - "[java.security.Permission].toString()"
    - "[java.security.Timestamp].toString()"
    - "[io.netty.buffer.PoolArena].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2PushPromiseFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5PasswordAuthResponse].toString()"
    - "[java.nio.charset.CoderResult].toString()"
    - "[io.netty.channel.unix.PeerCredentials].toString()"
    - "[java.security.SecureRandomSpi].toString()"
    - "[jdk.internal.misc.Signal].toString()"
    - "[javax.security.auth.Subject].toString()"
    - "[javax.crypto.CryptoPermission].toString()"
    - "[java.util.Locale].toString()"
    - "[java.time.chrono.AbstractChronology].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5InitialResponse].toString()"
    - "[io.netty.handler.codec.dns.DefaultDnsPtrRecord].toString()"
    - "[java.util.concurrent.locks.ReentrantLock].toString()"
    - "[java.lang.module.ResolvedModule].toString()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler].toString()"
    - "[io.netty.handler.codec.http.HttpMethod].toString()"
    - "[java.lang.invoke.MemberName].toString()"
    - "[sun.security.x509.PrivateKeyUsageExtension].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].toString()"
    - "[io.netty.handler.traffic.TrafficCounter].toString()"
    - "[io.netty.handler.codec.socksx.v5.DefaultSocks5CommandRequest].toString()"
    - "[java.io.ByteArrayOutputStream].toString()"
    - "[sun.security.x509.CertificateValidity].toString()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].toString()"
    - "[java.time.Duration].toString()"
    - "[jdk.internal.module.ModuleReferenceImpl].toString()"
    - "[sun.security.x509.X509CertInfo].toString()"
    - "[sun.security.x509.AVA].toString()"
    - "[java.lang.module.ModuleDescriptor$Opens].toString()"
    - "[java.math.BigDecimal].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig].toString()"
    - "[java.lang.invoke.MethodHandleImpl$LoopClauses].toString()"
    - "[sun.security.x509.CertificateSerialNumber].toString()"
    - "[sun.nio.fs.UnixFileStore].toString()"
    - "[java.net.Socket].toString()"
    - "[javax.net.ssl.SNIHostName].toString()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].toString()"
    - "[java.util.Hashtable$Entry].toString()"
    - "[java.security.Signature].toString()"
    - "[java.lang.Short].toString()"
    - "[java.util.concurrent.CompletableFuture].toString()"
    - "[io.netty.handler.codec.dns.AbstractDnsOptPseudoRrRecord].toString()"
    - "[io.netty.resolver.dns.SingletonDnsServerAddresses].toString()"
    - "[java.util.concurrent.ThreadPoolExecutor].toString()"
    - "[java.util.concurrent.LinkedBlockingQueue].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].toString()"
    - "[java.time.ZoneId].toString()"
    - "[io.netty.handler.codec.mqtt.MqttTopicSubscription].toString()"
    - "[java.net.SocketImpl].toString()"
    - "[sun.security.x509.KeyIdentifier].toString()"
    - "[java.util.Hashtable].toString()"
    - "[sun.security.x509.GeneralSubtrees].toString()"
    - "[io.netty.util.ResourceLeakDetector$DefaultResourceLeak].toString()"
    - "[java.text.FieldPosition].toString()"
    - "[io.netty.handler.timeout.IdleStateEvent].toString()"
    - "[io.netty.util.DomainNameMapping].toString()"
    - "[sun.security.x509.AuthorityInfoAccessExtension].toString()"
    - "[java.util.concurrent.CopyOnWriteArrayList].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubAckPayload].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySettingsFrame].toString()"
    - "[io.netty.buffer.PoolChunkList].toString()"
    - "[io.netty.handler.codec.xml.XmlDocumentStart].toString()"
    - "[io.netty.buffer.PoolChunk].toString()"
    - "[io.netty.resolver.dns.DefaultDnsServerAddresses].toString()"
    - "[io.netty.util.internal.EmptyPriorityQueue].toString()"
    - "[io.netty.channel.unix.DomainSocketAddress].toString()"
    - "[javax.net.ssl.SNIServerName].toString()"
    - "[java.lang.ProcessBuilder$RedirectPipeImpl].toString()"
    - "[io.netty.handler.codec.mqtt.MqttSubAckPayload].toString()"
    - "[java.io.StringWriter].toString()"
    - "[io.netty.handler.codec.xml.XmlAttribute].toString()"
    - "[io.netty.handler.codec.http.multipart.MixedAttribute].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].toString()"
    - "[java.util.zip.ZipEntry].toString()"
    - "[java.util.UUID].toString()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelId].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsFrame].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].toString()"
    - "[java.security.Provider].toString()"
    - "[java.time.Period].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5CommandStatus].toString()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].toString()"
    - "[java.util.concurrent.atomic.AtomicInteger].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdyWindowUpdateFrame].toString()"
    - "[java.lang.reflect.Parameter].toString()"
    - "[io.netty.handler.codec.http.HttpObjectAggregator$AggregatedFullHttpRequest].toString()"
    - "[io.netty.handler.codec.haproxy.HAProxyMessage].toString()"
    - "[sun.security.x509.CertificateSubjectName].toString()"
    - "[io.netty.channel.DefaultChannelId].toString()"
    - "[java.util.Date].toString()"
    - "[io.netty.handler.codec.spdy.DefaultSpdySynReplyFrame].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2SettingsAckFrame].toString()"
    - "[java.util.IntSummaryStatistics].toString()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].toString()"
    - "[io.netty.handler.codec.mqtt.MqttMessageIdAndPropertiesVariableHeader].toString()"
    - "[jdk.internal.module.ModuleResolution].toString()"
    - "[sun.security.x509.CRLDistributionPointsExtension].toString()"
    - "[io.netty.channel.DefaultAddressedEnvelope].toString()"
    - "[io.netty.channel.local.LocalAddress].toString()"
    - "[io.netty.util.collection.CharObjectHashMap].toString()"
    - "[io.netty.channel.AbstractCoalescingBufferQueue].toString()"
    - "[java.nio.CharBuffer].toString()"
    - "[io.netty.handler.codec.xml.XmlElementStart].toString()"
    - "[io.netty.handler.codec.DecoderResult].toString()"
    - "[io.netty.handler.ssl.SniCompletionEvent].toString()"
    - "[jdk.internal.module.ModuleHashes].toString()"
    - "[io.netty.util.collection.ByteObjectHashMap].toString()"
    - "[java.util.AbstractMap$SimpleEntry].toString()"
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].toString()"
    - "[io.netty.util.collection.ShortObjectHashMap].toString()"
    - "[java.time.format.DateTimeParseContext].toString()"
    - "[java.lang.invoke.LambdaForm$NamedFunction].toString()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].toString()"
    - "[java.math.MathContext].toString()"
    - "[io.netty.handler.codec.http.QueryStringDecoder].toString()"
    - "[java.time.format.DateTimeFormatterBuilder$NumberPrinterParser].toString()"
    - "[io.netty.handler.codec.redis.ArrayRedisMessage$1].toString()"
    - "[io.netty.handler.codec.mqtt.MqttPubReplyMessageVariableHeader].toString()"
    - "[java.nio.LongBuffer].toString()"
    - "[java.util.DoubleSummaryStatistics].toString()"
    - "[io.netty.handler.codec.redis.DefaultBulkStringRedisContent].toString()"
    - "[io.netty.handler.codec.redis.ArrayHeaderRedisMessage].toString()"
    - "[java.lang.Long].toString()"
    - "[java.lang.invoke.ClassSpecializer$SpeciesData].toString()"
    - "[java.security.Provider$Service].toString()"
    - "[io.netty.channel.sctp.SctpMessage].toString()"
    - "[io.netty.util.collection.IntObjectHashMap].toString()"
    - "[io.netty.handler.codec.xml.XmlContent].toString()"
    - "[io.netty.handler.codec.http.HttpHeaders].toString()"
    - "[jdk.internal.org.objectweb.asm.TypePath].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2HeadersFrame].toString()"
    - "[io.netty.handler.codec.socksx.v5.Socks5PasswordAuthStatus].toString()"
    - "[java.lang.invoke.MethodHandle].toString()"
    - "[java.lang.invoke.MethodTypeForm].toString()"
    - "[java.util.HashMap$Node].toString()"
    - "[io.netty.handler.codec.mqtt.MqttConnAckVariableHeader].toString()"
    - "[java.lang.ProcessBuilder$Redirect$2].toString()"
    - "[io.netty.handler.codec.http.LastHttpContent$1].toString()"
    - "[java.time.temporal.ChronoUnit].toString()"
    - "[io.netty.buffer.FixedCompositeByteBuf].toString()"
    - "[java.nio.channels.FileChannel$MapMode].toString()"
    - "[sun.security.x509.SubjectAlternativeNameExtension].toString()"
    - "[io.netty.channel.DefaultChannelPipeline].toString()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ResetFrame].toString()"
    - "[java.nio.ShortBuffer].toString()"
    - "[io.netty.handler.codec.string.LineSeparator].toString()"
    - "[java.util.ResourceBundle$CacheKey].toString()"
    - "[io.netty.buffer.SwappedByteBuf].toString()"
    - "[java.security.cert.CertPath].toString()"
    - "[io.netty.channel.unix.Socket].toString()"
    - "[java.lang.module.ModuleDescriptor].toString()"
    - "[sun.reflect.annotation.TypeAnnotation$TypeAnnotationTargetInfo].toString()"
    - "[java.lang.module.ModuleDescriptor$Version].toString()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.SpscLinkedAtomicQueue].toString()"
    - "[java.net.HttpCookie].toString()"
    - "[java.lang.invoke.LambdaFormEditor$Transform].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryAttribute].toString()"
    - "[sun.util.calendar.JulianCalendar$Date].toString()"
    - "[io.netty.handler.codec.socksx.v4.DefaultSocks4CommandRequest].toString()"
    - "[java.lang.ProcessBuilder$Redirect$5].toString()"
    - "[io.netty.channel.AbstractChannel].toString()"
    - "[io.netty.handler.codec.mqtt.MqttUnsubscribePayload].toString()"
    - "[sun.security.x509.GeneralSubtree].toString()"
    - "[sun.security.x509.GeneralName].toString()"
    - "[java.lang.Byte].toString()"
    - "[com.sun.nio.sctp.SctpStandardSocketOptions$InitMaxStreams].toString()"
    - "[io.netty.handler.codec.xml.XmlDTD].toString()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].toString()"
    - "[io.netty.bootstrap.ServerBootstrapConfig].toString()"
    - "[io.netty.handler.codec.socksx.v4.Socks4CommandType].toString()"
    - "[java.lang.Module].toString()"
    - "[sun.security.util.BitArray].toString()"
    - "[io.netty.channel.AbstractChannelHandlerContext].toString()"
    - "[java.nio.channels.FileLock].toString()"
    - "[io.netty.handler.codec.mqtt.MqttProperties$BinaryProperty].toString()"
    - "[io.netty.handler.codec.http.multipart.MemoryFileUpload].toString()"
    - "[io.netty.handler.codec.http.HttpScheme].toString()"
    - "[io.netty.handler.codec.memcache.DefaultMemcacheContent].toString()"
    - "[javax.security.auth.x500.X500Principal].toString()"
    - "[java.util.logging.Level].toString()"
    - "[java.util.Iterator].next()"
    functionUses: 229
    ICount: 8
    EdgeCount: 582
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.HeadersUtils$StringIterator:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.HeadersUtils$StringIterator:184"
        BranchSideFuncs:
        - "toString()"
        - "next()"
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$StringIterator:185,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.HeadersUtils$StringIterator:186,1"
      Dst: "[java.lang.Object].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.HeadersUtils$StringIterator].remove()"
    functionSourceFile: "io.netty.handler.codec.HeadersUtils$StringIterator"
    linkageType: ""
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.CombinedIterator].remove()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].remove()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].remove()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].remove()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].remove()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].remove()"
    - "[io.netty.channel.nio.NioEventLoop$7].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].remove()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].remove()"
    - "[io.netty.util.internal.ReadOnlyIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].remove()"
    - "[java.util.Iterator].remove()"
    functionUses: 21
    ICount: 4
    EdgeCount: 52
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.HeadersUtils$StringIterator:191,1"
      Dst: "[java.util.Iterator].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.Java7SslParametersUtils].<init>()"
    functionSourceFile: "io.netty.handler.ssl.Java7SslParametersUtils"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.Java7SslParametersUtils:25,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.SctpNotificationHandler].handleNotification(com.sun.nio.sctp.AssociationChangeNotification,java.lang.Object)"
    functionSourceFile: "io.netty.channel.sctp.SctpNotificationHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.sun.nio.sctp.HandlerResult"
    argCount: 2
    argTypes:
    - "com.sun.nio.sctp.AssociationChangeNotification"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.SctpNotificationHandler].fireEvent(com.sun.nio.sctp.Notification)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.SctpNotificationHandler:43,1"
      Dst: "[io.netty.channel.sctp.SctpNotificationHandler].fireEvent(com.sun.nio.sctp.Notification)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.SctpNotificationHandler].fireEvent(com.sun.nio.sctp.Notification)"
    functionSourceFile: "io.netty.channel.sctp.SctpNotificationHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "com.sun.nio.sctp.Notification"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.Channel].pipeline()"
    - "[io.netty.channel.ChannelPipeline].fireUserEventTriggered(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.SctpNotificationHandler:67,1"
      Dst: "[io.netty.channel.Channel].pipeline()"
    - Src: "io.netty.channel.sctp.SctpNotificationHandler:67,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireUserEventTriggered(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.SctpNotificationHandler].handleNotification(com.sun.nio.sctp.PeerAddressChangeNotification,java.lang.Object)"
    functionSourceFile: "io.netty.channel.sctp.SctpNotificationHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.sun.nio.sctp.HandlerResult"
    argCount: 2
    argTypes:
    - "com.sun.nio.sctp.PeerAddressChangeNotification"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.SctpNotificationHandler].fireEvent(com.sun.nio.sctp.Notification)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.SctpNotificationHandler:49,1"
      Dst: "[io.netty.channel.sctp.SctpNotificationHandler].fireEvent(com.sun.nio.sctp.Notification)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.SctpNotificationHandler].handleNotification(com.sun.nio.sctp.SendFailedNotification,java.lang.Object)"
    functionSourceFile: "io.netty.channel.sctp.SctpNotificationHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.sun.nio.sctp.HandlerResult"
    argCount: 2
    argTypes:
    - "com.sun.nio.sctp.SendFailedNotification"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.SctpNotificationHandler].fireEvent(com.sun.nio.sctp.Notification)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.SctpNotificationHandler:55,1"
      Dst: "[io.netty.channel.sctp.SctpNotificationHandler].fireEvent(com.sun.nio.sctp.Notification)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.sctp.SctpNotificationHandler].handleNotification(com.sun.nio.sctp.ShutdownNotification,java.lang.Object)"
    functionSourceFile: "io.netty.channel.sctp.SctpNotificationHandler"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "com.sun.nio.sctp.HandlerResult"
    argCount: 2
    argTypes:
    - "com.sun.nio.sctp.ShutdownNotification"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.sctp.SctpNotificationHandler].fireEvent(com.sun.nio.sctp.Notification)"
    - "[io.netty.channel.ChannelOutboundInvoker].close()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.sctp.SctpNotificationHandler:61,1"
      Dst: "[io.netty.channel.sctp.SctpNotificationHandler].fireEvent(com.sun.nio.sctp.Notification)"
    - Src: "io.netty.channel.sctp.SctpNotificationHandler:62,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].protocolVersion(io.netty.handler.codec.mqtt.MqttVersion)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttVersion"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].clientId(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].cleanSession(boolean)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].keepAlive(int)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].willFlag(boolean)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].willQoS(io.netty.handler.codec.mqtt.MqttQoS)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttQoS"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].willTopic(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].willMessage(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].willMessage(byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:141"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:141"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:140"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:141,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:141,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].willMessage(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].willMessage(byte[])"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].willRetain(boolean)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].willProperties(io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].hasUser(boolean)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].hasPassword(boolean)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].username(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:171"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:171"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:170"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].password(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].password(byte[])"
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:181"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:181"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:180"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:181,1"
      Dst: "[java.lang.String].getBytes(java.nio.charset.Charset)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:181,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].password(byte[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].password(byte[])"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 1
    argTypes:
    - "byte[]"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 9
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:186"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:186"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:185"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].properties(io.netty.handler.codec.mqtt.MqttProperties)"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.mqtt.MqttProperties"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder].build()"
    functionSourceFile: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "io.netty.handler.codec.mqtt.MqttConnectMessage"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - "[io.netty.handler.codec.mqtt.MqttVersion].protocolName()"
    - "[io.netty.handler.codec.mqtt.MqttVersion].protocolLevel()"
    - "[io.netty.handler.codec.mqtt.MqttQoS].value()"
    - "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].<init>(java.lang.String,int,boolean,boolean,boolean,int,boolean,boolean,int,io.netty.handler.codec.mqtt.MqttProperties)"
    - "[io.netty.handler.codec.mqtt.MqttConnectPayload].<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttProperties,java.lang.String,byte[],java.lang.String,byte[])"
    - "[io.netty.handler.codec.mqtt.MqttConnectMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttConnectVariableHeader,io.netty.handler.codec.mqtt.MqttConnectPayload)"
    functionUses: 0
    ICount: 32
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:197,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttFixedHeader].<init>(io.netty.handler.codec.mqtt.MqttMessageType,boolean,io.netty.handler.codec.mqtt.MqttQoS,boolean,int)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:201,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttVersion].protocolName()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:202,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttVersion].protocolLevel()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:206,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttQoS].value()"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:206,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectVariableHeader].<init>(java.lang.String,int,boolean,boolean,boolean,int,boolean,boolean,int,io.netty.handler.codec.mqtt.MqttProperties)"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:211,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectPayload].<init>(java.lang.String,io.netty.handler.codec.mqtt.MqttProperties,java.lang.String,byte[],java.lang.String,byte[])"
    - Src: "io.netty.handler.codec.mqtt.MqttMessageBuilders$ConnectBuilder:213,1"
      Dst: "[io.netty.handler.codec.mqtt.MqttConnectMessage].<init>(io.netty.handler.codec.mqtt.MqttFixedHeader,io.netty.handler.codec.mqtt.MqttConnectVariableHeader,io.netty.handler.codec.mqtt.MqttConnectPayload)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.NotSslRecordException].<init>()"
    functionSourceFile: "io.netty.handler.ssl.NotSslRecordException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.NotSslRecordException:33,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.NotSslRecordException].<init>(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.NotSslRecordException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLException].<init>(java.lang.Throwable)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.NotSslRecordException:41,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.NotSslRecordException].<init>(java.lang.String,java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.ssl.NotSslRecordException"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[javax.net.ssl.SSLException].<init>(java.lang.String,java.lang.Throwable)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.NotSslRecordException:45,1"
      Dst: "[javax.net.ssl.SSLException].<init>(java.lang.String,java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State"
    linkageType: ""
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Thread].clone()"
    - "[io.netty.bootstrap.ServerBootstrap].clone()"
    - "[io.netty.bootstrap.Bootstrap].clone()"
    - "[java.lang.Enum].clone()"
    - "[jaz.Zer].clone()"
    - "[java.lang.Object:java.lang.invoke.MemberName:java.lang.ref.Reference:java.net.HttpCookie:java.security.MessageDigest:java.security.MessageDigestSpi:java.security.Signature:java.security.SignatureSpi:java.text.BreakIterator:java.text.Collator:java.text.DateFormat:java.text.DateFormatSymbols:java.text.DecimalFormatSymbols:java.text.Format:java.text.MessageFormat:java.text.NumberFormat:java.text.SimpleDateFormat:java.util.AbstractMap:java.util.ArrayDeque:java.util.ArrayList:java.util.BitSet:java.util.Calendar:java.util.Date:java.util.EnumSet:java.util.GregorianCalendar:java.util.HashMap:java.util.HashSet:java.util.Hashtable:java.util.Hashtable$Entry:java.util.IdentityHashMap:java.util.LinkedList:java.util.Locale:java.util.Properties:java.util.TimeZone:java.util.TreeMap:java.util.TreeSet:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList:java.util.jar.Attributes:java.util.jar.Manifest:java.util.zip.ZipEntry:javax.crypto.Mac:javax.crypto.MacSpi:sun.security.util.BitArray:sun.security.x509.GeneralSubtrees:sun.security.x509.NameConstraintsExtension:sun.text.normalizer.UCharacterIterator:sun.util.calendar.CalendarDate].clone()"
    - "[java.lang.Object].clone()"
    functionUses: 1
    ICount: 4
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State:37,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State:37,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socksx.v4.Socks4ClientDecoder$State:38,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateExecutor].<init>()"
    functionSourceFile: "io.netty.util.concurrent.ImmediateExecutor"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ImmediateExecutor:28,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.ImmediateExecutor].execute(java.lang.Runnable)"
    functionSourceFile: "io.netty.util.concurrent.ImmediateExecutor"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Runnable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[io.netty.channel.local.LocalServerChannel$2].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$2].run()"
    - "[io.netty.handler.codec.http2.Http2ConnectionHandler$ClosingChannelFutureListener$1].run()"
    - "[jdk.internal.misc.InnocuousThread].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficCounter$MixedTrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http2.Http2StreamChannelBootstrap$1].run()"
    - "[io.netty.util.internal.ThreadExecutorMap$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$2].run()"
    - "[io.netty.handler.codec.http2.Http2FrameCodec$2].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$1].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$3].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$NonNotifyRunnable].run()"
    - "[jdk.internal.logger.BootstrapLogger$BootstrapExecutors$BootstrapMessageLoggerTask].run()"
    - "[io.netty.util.ReferenceCountUtil$ReleasingTask].run()"
    - "[io.netty.handler.ssl.SslHandler$4].run()"
    - "[io.netty.channel.local.LocalChannel$4].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$2].run()"
    - "[java.lang.Thread].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$7].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$3].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5].run()"
    - "[io.netty.channel.pool.FixedChannelPool$5].run()"
    - "[io.netty.util.concurrent.DefaultPromise$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$2].run()"
    - "[io.netty.resolver.dns.DnsNameResolver$7].run()"
    - "[jdk.internal.misc.Signal$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$3].run()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$3].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$2].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$1].run()"
    - "[io.netty.handler.proxy.ProxyHandler$2].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$1].run()"
    - "[jaz.Zer].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$4].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.multipart.DeleteFileOnExitHook$1].run()"
    - "[io.netty.handler.ssl.ReferenceCountedOpenSslEngine$TaskDecorator].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$5].run()"
    - "[io.netty.handler.ssl.SslHandler$AsyncTaskCompletionHandler].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$2].run()"
    - "[io.netty.util.concurrent.GlobalEventExecutor$TaskRunner].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$8].run()"
    - "[io.netty.channel.nio.NioEventLoop$5].run()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext$1].run()"
    - "[io.netty.handler.codec.compression.JZlibEncoder$1].run()"
    - "[io.netty.handler.flush.FlushConsolidationHandler$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$3].run()"
    - "[io.netty.handler.ssl.SslHandler$9].run()"
    - "[io.netty.util.concurrent.PromiseCombiner$1$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$12].run()"
    - "[io.netty.channel.socket.oio.OioSocketChannel$2].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$1].run()"
    - "[io.netty.util.concurrent.DefaultPromise$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$4].run()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor$RunnableScheduledFutureTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketProtocolHandler$2].run()"
    - "[io.netty.handler.codec.compression.Lz4FrameEncoder$1].run()"
    - "[io.netty.channel.socket.nio.NioSocketChannel$2].run()"
    - "[io.netty.util.concurrent.PromiseTask].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$Http2ChannelUnsafe$2].run()"
    - "[io.netty.bootstrap.Bootstrap$3].run()"
    - "[io.netty.handler.traffic.TrafficCounter$TrafficMonitoringTask].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$10].run()"
    - "[io.netty.channel.DefaultChannelPipeline$6].run()"
    - "[io.netty.util.HashedWheelTimer$HashedWheelTimeout].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$8].run()"
    - "[io.netty.handler.ssl.SslHandler$10$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$2].run()"
    - "[io.netty.handler.timeout.WriteTimeoutHandler$WriteTimeoutTask].run()"
    - "[io.netty.channel.nio.NioEventLoop$6].run()"
    - "[io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$2].run()"
    - "[io.netty.channel.pool.FixedChannelPool$3].run()"
    - "[io.netty.handler.ssl.SslHandler$3].run()"
    - "[io.netty.util.concurrent.ScheduledFutureTask].run()"
    - "[io.netty.handler.ssl.SslHandler$1].run()"
    - "[io.netty.handler.traffic.AbstractTrafficShapingHandler$ReopenReadTimerTask].run()"
    - "[io.netty.channel.local.LocalServerChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$5].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$5].run()"
    - "[io.netty.channel.local.LocalChannel$5].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerRemovedTask].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$2].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$4].run()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$2].run()"
    - "[io.netty.util.ThreadDeathWatcher$Watcher].run()"
    - "[io.netty.channel.local.LocalChannel$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$6].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientProtocolHandshakeHandler$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$4].run()"
    - "[io.netty.handler.timeout.IdleStateHandler$AbstractIdleTask].run()"
    - "[io.netty.util.internal.ThreadLocalRandom$1].run()"
    - "[io.netty.channel.pool.FixedChannelPool$TimeoutTask].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$2].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$1].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$2].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$11].run()"
    - "[io.netty.handler.traffic.GlobalTrafficShapingHandler$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$Tasks$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$3].run()"
    - "[io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$2].run()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$2].run()"
    - "[io.netty.util.concurrent.SingleThreadEventExecutor$4].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].run()"
    - "[io.netty.channel.kqueue.Native$1].run()"
    - "[io.netty.util.HashedWheelTimer$Worker].run()"
    - "[io.netty.channel.ChannelInitializer$1].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$3].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$3].run()"
    - "[io.netty.util.concurrent.DefaultPromise$4].run()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel$4].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$3].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$1].run()"
    - "[io.netty.channel.epoll.Native$1].run()"
    - "[io.netty.channel.local.LocalChannel$3].run()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel$1].run()"
    - "[io.netty.channel.DefaultChannelPipeline$2].run()"
    - "[io.netty.resolver.dns.Cache$Entries].run()"
    - "[io.netty.buffer.PooledByteBufAllocator$1].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$5$1].run()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$3].run()"
    - "[io.netty.util.concurrent.FastThreadLocalRunnable].run()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe$6].run()"
    - "[io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor$1].run()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner$1].run()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel$2].run()"
    - "[io.netty.handler.traffic.ChannelTrafficShapingHandler$1].run()"
    - "[io.netty.handler.stream.ChunkedWriteHandler$1].run()"
    - "[io.netty.channel.nio.AbstractNioChannel$2].run()"
    - "[io.netty.bootstrap.AbstractBootstrap$2].run()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].run()"
    - "[io.netty.handler.ssl.SslHandler$6].run()"
    - "[io.netty.channel.epoll.EpollDatagramChannel$2].run()"
    - "[io.netty.handler.ssl.SslHandler$7].run()"
    - "[io.netty.util.internal.ObjectCleaner$1].run()"
    - "[io.netty.channel.pool.SimpleChannelPool$5].run()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].run()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe$2].run()"
    - "[jdk.internal.perf.Perf$CleanerAction].run()"
    - "[io.netty.resolver.dns.DnsQueryContext$4].run()"
    - "[io.netty.bootstrap.ServerBootstrap$1$1].run()"
    - "[io.netty.channel.nio.AbstractNioByteChannel$1].run()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketClientHandshaker$5$1].run()"
    - "[io.netty.handler.ssl.SslHandler$SslTasksRunner].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$7].run()"
    - "[io.netty.handler.codec.compression.JdkZlibEncoder$1].run()"
    - "[io.netty.channel.ChannelOutboundBuffer$3].run()"
    - "[jdk.internal.ref.CleanerImpl].run()"
    - "[io.netty.channel.AbstractChannelHandlerContext$9].run()"
    - "[io.netty.channel.local.LocalChannel$1].run()"
    - "[io.netty.channel.oio.AbstractOioChannel$2:io.netty.channel.oio.AbstractOioChannel$3:io.netty.util.concurrent.AbstractScheduledEventExecutor$2:io.netty.util.concurrent.GlobalEventExecutor$1:io.netty.util.concurrent.PromiseTask$SentinelRunnable:io.netty.util.concurrent.SingleThreadEventExecutor$1:java.lang.invoke.MethodHandleNatives$CallSiteContext:java.lang.ref.Finalizer$2:java.lang.ref.Finalizer$FinalizerThread:java.util.concurrent.CompletableFuture$Completion:java.util.concurrent.ForkJoinWorkerThread:java.util.concurrent.ThreadPoolExecutor$Worker:java.util.zip.Deflater$DeflaterZStreamRef:java.util.zip.Inflater$InflaterZStreamRef:java.util.zip.ZipFile$CleanableResource].run()"
    - "[java.lang.Runnable].run()"
    functionUses: 6
    ICount: 6
    EdgeCount: 170
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.ImmediateExecutor:34,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.concurrent.ImmediateExecutor:34,1"
      Dst: "[java.lang.Runnable].run()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache].<init>(io.netty.resolver.dns.AuthoritativeDnsServerCache)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache"
    linkageType: ""
    functionLinenumber: 544
    functionLinenumberEnd: 548
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.resolver.dns.AuthoritativeDnsServerCache"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache:545,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache].get(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache"
    linkageType: ""
    functionLinenumber: 552
    functionLinenumberEnd: 554
    functionDepth: 0
    returnType: "io.netty.resolver.dns.DnsServerAddressStream"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache].cache(java.lang.String,java.net.InetSocketAddress,long,io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache"
    linkageType: ""
    functionLinenumber: 557
    functionLinenumberEnd: 560
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.net.InetSocketAddress"
    - "long"
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].cache(java.lang.String,java.net.InetSocketAddress,long,io.netty.channel.EventLoop)"
    - "[io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache].cache(java.lang.String,java.net.InetSocketAddress,long,io.netty.channel.EventLoop)"
    - "[io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter].cache(java.lang.String,java.net.InetSocketAddress,long,io.netty.channel.EventLoop)"
    - "[io.netty.resolver.dns.NoopAuthoritativeDnsServerCache].cache(java.lang.String,java.net.InetSocketAddress,long,io.netty.channel.EventLoop)"
    - "[io.netty.resolver.dns.AuthoritativeDnsServerCache].cache(java.lang.String,java.net.InetSocketAddress,long,io.netty.channel.EventLoop)"
    functionUses: 2
    ICount: 8
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache:558,1"
      Dst: "[io.netty.resolver.dns.AuthoritativeDnsServerCache].cache(java.lang.String,java.net.InetSocketAddress,long,io.netty.channel.EventLoop)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache].clear()"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache"
    linkageType: ""
    functionLinenumber: 562
    functionLinenumberEnd: 565
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache].clear()"
    - "[io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter].clear()"
    - "[io.netty.resolver.dns.DefaultAuthoritativeDnsServerCache].clear()"
    - "[io.netty.resolver.dns.NoopAuthoritativeDnsServerCache].clear()"
    - "[io.netty.resolver.dns.AuthoritativeDnsServerCache].clear()"
    functionUses: 2
    ICount: 4
    EdgeCount: 4
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache:563,1"
      Dst: "[io.netty.resolver.dns.AuthoritativeDnsServerCache].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache].clear(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.AuthoritativeDnsServerCache].clear(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsResolveContext$RedirectAuthoritativeDnsServerCache:568,1"
      Dst: "[io.netty.resolver.dns.AuthoritativeDnsServerCache].clear(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.socket.ChannelOutputShutdownEvent].<init>()"
    functionSourceFile: "io.netty.channel.socket.ChannelOutputShutdownEvent"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.socket.ChannelOutputShutdownEvent:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.nio.NioEventLoop$5].run()"
    functionSourceFile: "io.netty.channel.nio.NioEventLoop$5"
    linkageType: ""
    functionLinenumber: 315
    functionLinenumberEnd: 318
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.nio.NioEventLoop].access$000(io.netty.channel.nio.NioEventLoop,java.nio.channels.SelectableChannel,int,io.netty.channel.nio.NioTask)"
    functionUses: 49
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.nio.NioEventLoop$5:316,1"
      Dst: "[io.netty.channel.nio.NioEventLoop].access$000(io.netty.channel.nio.NioEventLoop,java.nio.channels.SelectableChannel,int,io.netty.channel.nio.NioTask)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JettyNpnSslEngine].isAvailable()"
    functionSourceFile: "io.netty.handler.ssl.JettyNpnSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JettyNpnSslEngine].updateAvailability()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:38,1"
      Dst: "[io.netty.handler.ssl.JettyNpnSslEngine].updateAvailability()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JettyNpnSslEngine].updateAvailability()"
    functionSourceFile: "io.netty.handler.ssl.JettyNpnSslEngine"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.ssl.JettyNpnSslEngine:43"
      Branch Sides:
      - BranchSide: "io.netty.handler.ssl.JettyNpnSslEngine:48"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.ssl.JettyNpnSslEngine:47"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:48,1"
      Dst: "[java.lang.Class].forName(java.lang.String,boolean,java.lang.ClassLoader)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JettyNpnSslEngine].closeInbound()"
    functionSourceFile: "io.netty.handler.ssl.JettyNpnSslEngine"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 116
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - "[org.eclipse.jetty.npn.NextProtoNego].remove(javax.net.ssl.SSLEngine)"
    - "[io.netty.handler.ssl.JdkSslEngine].closeInbound()"
    functionUses: 2
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:113,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:113,1"
      Dst: "[org.eclipse.jetty.npn.NextProtoNego].remove(javax.net.ssl.SSLEngine)"
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:114,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].closeInbound()"
    JavaMethodInfo:
      exceptions:
      - "javax.net.ssl.SSLException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.ssl.JettyNpnSslEngine].closeOutbound()"
    functionSourceFile: "io.netty.handler.ssl.JettyNpnSslEngine"
    linkageType: ""
    functionLinenumber: 118
    functionLinenumberEnd: 122
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - "[org.eclipse.jetty.npn.NextProtoNego].remove(javax.net.ssl.SSLEngine)"
    - "[io.netty.handler.ssl.JdkSslEngine].closeOutbound()"
    functionUses: 4
    ICount: 5
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:119,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].getWrappedEngine()"
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:119,1"
      Dst: "[org.eclipse.jetty.npn.NextProtoNego].remove(javax.net.ssl.SSLEngine)"
    - Src: "io.netty.handler.ssl.JettyNpnSslEngine:120,1"
      Dst: "[io.netty.handler.ssl.JdkSslEngine].closeOutbound()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2Encoder].<init>(int)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:90,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2Encoder].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder].<init>(int)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    - "[io.netty.handler.codec.compression.Bzip2BitWriter].<init>()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    functionUses: 0
    ICount: 22
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2Encoder:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:102"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:101"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Encoder:101"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:105"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:104"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:100,1"
      Dst: "[io.netty.handler.codec.MessageToByteEncoder].<init>()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:59,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitWriter].<init>()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:102,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:102,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:102,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:102,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:102,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder"
    linkageType: ""
    functionLinenumber: 109
    functionLinenumberEnd: 150
    functionDepth: 10
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.CompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.WrappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.EmptyByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.SwappedByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AbstractByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].ensureWritable(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.WrappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.SwappedByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.AbstractByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.EmptyByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeMedium(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeMedium(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeMedium(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeMedium(int)"
    - "[io.netty.buffer.WrappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].writeByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].writeByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].writeByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writeByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].writeByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writeByte(int)"
    - "[io.netty.handler.codec.compression.Bzip2BlockCompressor].<init>(io.netty.handler.codec.compression.Bzip2BitWriter,int)"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.handler.codec.compression.Bzip2BlockCompressor].availableSize()"
    - "[java.lang.Math].min(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.handler.codec.compression.Bzip2BlockCompressor].write(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.compression.Bzip2BlockCompressor].isFull()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder].closeBlock(io.netty.buffer.ByteBuf)"
    - "[java.lang.IllegalStateException].<init>()"
    - "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - "[io.netty.buffer.ByteBuf].writeMedium(int)"
    - "[io.netty.buffer.ByteBuf].writeByte(int)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    functionUses: 1
    ICount: 53
    EdgeCount: 79
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2Encoder:110"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:116"
        BranchSideFuncs:
        - "writeBytes(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:115"
        BranchSideFuncs:
        - "ordinal()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Encoder:128"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:131"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:130"
        BranchSideFuncs:
        - "min(int,int)"
        - "isFull()"
        - "readerIndex()"
        - "write(io.netty.buffer.ByteBuf,int,int)"
        - "skipBytes(int)"
        - "availableSize()"
        - "readableBytes()"
    - Branch String: "io.netty.handler.codec.compression.Bzip2Encoder:135"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:142"
        BranchSideFuncs:
        - "isReadable()"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:141"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.compression.Bzip2Encoder:136"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:139"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:138"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:111,1"
      Dst: "[io.netty.buffer.ByteBuf].writeBytes(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:116,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:118,1"
      Dst: "[io.netty.buffer.ByteBuf].ensureWritable(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:119,1"
      Dst: "[io.netty.buffer.ByteBuf].writeMedium(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:120,1"
      Dst: "[io.netty.buffer.ByteBuf].writeByte(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:124,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].<init>(io.netty.handler.codec.compression.Bzip2BitWriter,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:128,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:132,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:132,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].availableSize()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:132,1"
      Dst: "[java.lang.Math].min(int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:133,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:133,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].write(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:134,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:135,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].isFull()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:145,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2Encoder].closeBlock(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:149,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 14
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder].closeBlock(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 165
    functionDepth: 9
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2BlockCompressor].isEmpty()"
    - "[io.netty.handler.codec.compression.Bzip2BlockCompressor].close(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.compression.Bzip2BlockCompressor].crc()"
    functionUses: 2
    ICount: 15
    EdgeCount: 3
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2Encoder:159"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:164"
        BranchSideFuncs:
        - "close(io.netty.buffer.ByteBuf)"
        - "crc()"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:163"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:159,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].isEmpty()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:160,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].close(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:161,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BlockCompressor].crc()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder].isClosed()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder].close()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 12
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2Encoder].ctx()"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder].close(io.netty.channel.ChannelPromise)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:179,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2Encoder].ctx()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:179,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:179,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2Encoder].close(io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder].ctx()"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder"
    linkageType: ""
    functionLinenumber: 248
    functionLinenumberEnd: 254
    functionDepth: 0
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>(java.lang.String)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2Encoder:250"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:253"
        BranchSideFuncs:
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:252"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:251,1"
      Dst: "[java.lang.IllegalStateException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder].close(io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 11
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2Encoder].ctx()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$1].<init>(io.netty.handler.codec.compression.Bzip2Encoder,io.netty.channel.ChannelPromise)"
    - "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2Encoder:190"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:193"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:192"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:188,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2Encoder].ctx()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:189,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:190,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:191,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2Encoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:193,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2Encoder$1].<init>(io.netty.handler.codec.compression.Bzip2Encoder,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:193,1"
      Dst: "[java.util.concurrent.Executor].execute(java.lang.Runnable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder"
    linkageType: ""
    functionLinenumber: 225
    functionLinenumberEnd: 246
    functionDepth: 10
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.channel.unix.PreferredDirectByteBufAllocator].buffer()"
    - "[io.netty.channel.PreferHeapByteBufAllocator].buffer()"
    - "[io.netty.buffer.AbstractByteBufAllocator].buffer()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder].closeBlock(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBits(io.netty.buffer.ByteBuf,int,long)"
    - "[io.netty.handler.codec.compression.Bzip2BitWriter].writeInt(io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.compression.Bzip2BitWriter].flush(io.netty.buffer.ByteBuf)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufAllocator].buffer()"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 24
    EdgeCount: 17
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2Encoder:226"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:230"
        BranchSideFuncs:
        - "setSuccess()"
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:229"
        BranchSideFuncs:
        - "closeBlock(io.netty.buffer.ByteBuf)"
        - "writeBits(io.netty.buffer.ByteBuf,int,long)"
        - "buffer()"
        - "flush(io.netty.buffer.ByteBuf)"
        - "alloc()"
        - "writeInt(io.netty.buffer.ByteBuf,int)"
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:227,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:232,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:232,1"
      Dst: "[io.netty.buffer.ByteBufAllocator].buffer()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:233,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2Encoder].closeBlock(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:238,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitWriter].writeBits(io.netty.buffer.ByteBuf,int,long)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:240,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitWriter].writeInt(io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:241,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2BitWriter].flush(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:245,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder$1].<init>(io.netty.handler.codec.compression.Bzip2Encoder,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.compression.Bzip2Encoder"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder$1:193,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder].close(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder"
    linkageType: ""
    functionLinenumber: 205
    functionLinenumberEnd: 224
    functionDepth: 11
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2Encoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.AbstractChannelHandlerContext].newPromise()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].newPromise()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$2].<init>(io.netty.handler.codec.compression.Bzip2Encoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.util.concurrent.DefaultPromise].isDone()"
    - "[io.netty.util.concurrent.CompleteFuture].isDone()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isDone()"
    - "[io.netty.channel.VoidChannelPromise].isDone()"
    - "[io.netty.handler.codec.compression.Bzip2Encoder$3].<init>(io.netty.handler.codec.compression.Bzip2Encoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].executor()"
    - "[io.netty.channel.AbstractChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[java.util.concurrent.Future].isDone()"
    - "[io.netty.channel.ChannelHandlerContext].executor()"
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    functionUses: 2
    ICount: 16
    EdgeCount: 19
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.compression.Bzip2Encoder:214"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.compression.Bzip2Encoder:222"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:206,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].newPromise()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:206,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2Encoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:207,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2Encoder$2].<init>(io.netty.handler.codec.compression.Bzip2Encoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:207,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:214,1"
      Dst: "[java.util.concurrent.Future].isDone()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:216,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].executor()"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:216,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2Encoder$3].<init>(io.netty.handler.codec.compression.Bzip2Encoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:216,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder].handlerAdded(io.netty.channel.ChannelHandlerContext)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder"
    linkageType: ""
    functionLinenumber: 257
    functionLinenumberEnd: 260
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 5
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder].encode(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 11
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2Encoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:43,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2Encoder].encode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder].access$000(io.netty.handler.codec.compression.Bzip2Encoder)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 1
    returnType: "io.netty.channel.ChannelHandlerContext"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.compression.Bzip2Encoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2Encoder].ctx()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:43,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2Encoder].ctx()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.Bzip2Encoder].access$100(io.netty.handler.codec.compression.Bzip2Encoder,io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.compression.Bzip2Encoder"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionDepth: 11
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 3
    argTypes:
    - "io.netty.handler.codec.compression.Bzip2Encoder"
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.compression.Bzip2Encoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.Bzip2Encoder:43,1"
      Dst: "[io.netty.handler.codec.compression.Bzip2Encoder].finishEncode(io.netty.channel.ChannelHandlerContext,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf$1].<init>()"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf$1"
    linkageType: ""
    functionLinenumber: 30
    functionLinenumberEnd: 32
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf$1:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledDirectByteBuf$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.buffer.PooledDirectByteBuf$1"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionDepth: 2
    returnType: "io.netty.buffer.PooledDirectByteBuf"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int,io.netty.buffer.PooledDirectByteBuf$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledDirectByteBuf$1:34,1"
      Dst: "[io.netty.buffer.PooledDirectByteBuf].<init>(io.netty.util.internal.ObjectPool$Handle,int,io.netty.buffer.PooledDirectByteBuf$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe].<init>(io.netty.channel.rxtx.RxtxChannel)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.rxtx.RxtxChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].<init>(io.netty.channel.AbstractChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:152,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].<init>(io.netty.channel.AbstractChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe].connect(java.net.SocketAddress,java.net.SocketAddress,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe"
    linkageType: ""
    functionLinenumber: 156
    functionLinenumberEnd: 194
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].ensureOpen(io.netty.channel.ChannelPromise)"
    - "[io.netty.util.concurrent.DefaultPromise].setUncancellable()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setUncancellable()"
    - "[io.netty.channel.VoidChannelPromise].setUncancellable()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.rxtx.RxtxChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[java.lang.Integer].intValue()"
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].<init>(io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe,io.netty.channel.ChannelPromise,boolean)"
    - "[io.netty.channel.AbstractChannel].eventLoop()"
    - "[io.netty.util.concurrent.AbstractScheduledEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.util.concurrent.AbstractEventExecutor].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.channel.rxtx.RxtxChannel].doInit()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].safeSetSuccess(io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.DefaultChannelPipeline].fireChannelActive()"
    - "[io.netty.channel.AbstractChannel].pipeline()"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].safeSetFailure(io.netty.channel.ChannelPromise,java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].closeIfClosed()"
    - "[io.netty.util.concurrent.Promise].setUncancellable()"
    - "[io.netty.channel.ChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - "[io.netty.channel.ChannelPipeline].fireChannelActive()"
    functionUses: 1
    ICount: 43
    EdgeCount: 20
    BranchProfiles:
    - Branch String: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:157"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:158"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:157"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:157"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:162"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:161"
        BranchSideFuncs:
        - "doConnect(java.net.SocketAddress,java.net.SocketAddress)"
        - "config()"
        - "getOption(io.netty.channel.ChannelOption)"
        - "intValue()"
    - Branch String: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:166"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:183"
        BranchSideFuncs:
        - "schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
        - "<init>(io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe,io.netty.channel.ChannelPromise,boolean)"
        - "eventLoop()"
      - BranchSide: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:182"
        BranchSideFuncs:
        - "doInit()"
        - "safeSetSuccess(io.netty.channel.ChannelPromise)"
        - "isActive()"
    - Branch String: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:185"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:192"
        BranchSideFuncs:
        - "pipeline()"
        - "fireChannelActive()"
      - BranchSide: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:191"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:185"
      Branch Sides:
      - BranchSide: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:192"
        BranchSideFuncs:
        - "pipeline()"
        - "fireChannelActive()"
      - BranchSide: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:191"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:157,1"
      Dst: "[io.netty.util.concurrent.Promise].setUncancellable()"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:157,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].ensureOpen(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:162,1"
      Dst: "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:163,1"
      Dst: "[io.netty.channel.rxtx.RxtxChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:165,1"
      Dst: "[io.netty.channel.rxtx.RxtxChannel].config()"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:165,1"
      Dst: "[io.netty.channel.ChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:165,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:167,1"
      Dst: "[io.netty.channel.AbstractChannel].eventLoop()"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:167,1"
      Dst: "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe$1].<init>(io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe,io.netty.channel.ChannelPromise,boolean)"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:167,1"
      Dst: "[io.netty.util.concurrent.EventExecutorGroup].schedule(java.lang.Runnable,long,java.util.concurrent.TimeUnit)"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:183,1"
      Dst: "[io.netty.channel.rxtx.RxtxChannel].doInit()"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:184,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].safeSetSuccess(io.netty.channel.ChannelPromise)"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:186,1"
      Dst: "[io.netty.channel.AbstractChannel].pipeline()"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:186,1"
      Dst: "[io.netty.channel.ChannelPipeline].fireChannelActive()"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:190,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].safeSetFailure(io.netty.channel.ChannelPromise,java.lang.Throwable)"
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:191,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].closeIfClosed()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.rxtx.RxtxChannel].doConnect(java.net.SocketAddress,java.net.SocketAddress)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannel"
    linkageType: ""
    functionLinenumber: 75
    functionLinenumberEnd: 84
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.net.SocketAddress"
    - "java.net.SocketAddress"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[gnu.io.CommPortIdentifier].getPortIdentifier(java.lang.String)"
    - "[io.netty.channel.rxtx.RxtxDeviceAddress].value()"
    - "[java.lang.Object].getClass()"
    - "[java.lang.Class].getName()"
    - "[io.netty.channel.rxtx.RxtxChannel].config()"
    - "[io.netty.channel.rxtx.DefaultRxtxChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[java.lang.Integer].intValue()"
    - "[gnu.io.CommPortIdentifier].open(java.lang.String,int)"
    - "[io.netty.channel.ChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - "[gnu.io.CommPort].enableReceiveTimeout(int)"
    functionUses: 2
    ICount: 19
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannel:77,1"
      Dst: "[io.netty.channel.rxtx.RxtxDeviceAddress].value()"
    - Src: "io.netty.channel.rxtx.RxtxChannel:77,1"
      Dst: "[gnu.io.CommPortIdentifier].getPortIdentifier(java.lang.String)"
    - Src: "io.netty.channel.rxtx.RxtxChannel:78,1"
      Dst: "[java.lang.Object].getClass()"
    - Src: "io.netty.channel.rxtx.RxtxChannel:78,1"
      Dst: "[java.lang.Class].getName()"
    - Src: "io.netty.channel.rxtx.RxtxChannel:78,1"
      Dst: "[gnu.io.CommPortIdentifier].open(java.lang.String,int)"
    - Src: "io.netty.channel.rxtx.RxtxChannel:79,1"
      Dst: "[io.netty.channel.rxtx.RxtxChannel].config()"
    - Src: "io.netty.channel.rxtx.RxtxChannel:79,1"
      Dst: "[io.netty.channel.ChannelConfig].getOption(io.netty.channel.ChannelOption)"
    - Src: "io.netty.channel.rxtx.RxtxChannel:79,1"
      Dst: "[java.lang.Integer].intValue()"
    - Src: "io.netty.channel.rxtx.RxtxChannel:79,1"
      Dst: "[gnu.io.CommPort].enableReceiveTimeout(int)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe].<init>(io.netty.channel.rxtx.RxtxChannel,io.netty.channel.rxtx.RxtxChannel$1)"
    functionSourceFile: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe"
    linkageType: ""
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionDepth: 1
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.rxtx.RxtxChannel"
    - "io.netty.channel.rxtx.RxtxChannel$1"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe].<init>(io.netty.channel.rxtx.RxtxChannel)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe:152,1"
      Dst: "[io.netty.channel.rxtx.RxtxChannel$RxtxUnsafe].<init>(io.netty.channel.rxtx.RxtxChannel)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler$4].operationComplete(io.netty.channel.ChannelFuture)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler$4"
    linkageType: ""
    functionLinenumber: 803
    functionLinenumberEnd: 808
    functionDepth: 6
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.ChannelFuture"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].isSuccess()"
    - "[io.netty.channel.SucceededChannelFuture].isSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].isSuccess()"
    - "[io.netty.channel.VoidChannelPromise].isSuccess()"
    - "[io.netty.channel.FailedChannelFuture].isSuccess()"
    - "[io.netty.handler.codec.spdy.SpdySessionHandler].access$000(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    - "[io.netty.util.concurrent.Future].isSuccess()"
    functionUses: 1
    ICount: 9
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.spdy.SpdySessionHandler$4:804"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler$4:807"
        BranchSideFuncs:
        - "access$000(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
      - BranchSide: "io.netty.handler.codec.spdy.SpdySessionHandler$4:806"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler$4:804,1"
      Dst: "[io.netty.util.concurrent.Future].isSuccess()"
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler$4:805,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler].access$000(io.netty.handler.codec.spdy.SpdySessionHandler,io.netty.channel.ChannelHandlerContext,io.netty.handler.codec.spdy.SpdySessionStatus)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.spdy.SpdySessionHandler$4].operationComplete(io.netty.util.concurrent.Future)"
    functionSourceFile: "io.netty.handler.codec.spdy.SpdySessionHandler$4"
    linkageType: ""
    functionLinenumber: 800
    functionLinenumberEnd: 802
    functionDepth: 7
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.Future"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.spdy.SpdySessionHandler$4].operationComplete(io.netty.channel.ChannelFuture)"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.spdy.SpdySessionHandler$4:801,1"
      Dst: "[io.netty.handler.codec.spdy.SpdySessionHandler$4].operationComplete(io.netty.channel.ChannelFuture)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter$1"
    linkageType: ""
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter$1:30,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter$1].mustSkip(io.netty.handler.codec.http.websocketx.WebSocketFrame)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.extensions.WebSocketExtensionFilter$1"
    linkageType: ""
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketFrame"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 4
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.rtsp.RtspMethods].<init>()"
    functionSourceFile: "io.netty.handler.codec.rtsp.RtspMethods"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.rtsp.RtspMethods:131,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliDecoder$State].values()"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.BrotliDecoder$State[]"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].clone()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliDecoder$State:36,1"
      Dst: "[java.lang.Object].clone()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliDecoder$State].valueOf(java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliDecoder$State"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.handler.codec.compression.BrotliDecoder$State"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliDecoder$State:36,1"
      Dst: "[java.lang.Enum].valueOf(java.lang.Class,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.compression.BrotliDecoder$State].<init>(java.lang.String,int)"
    functionSourceFile: "io.netty.handler.codec.compression.BrotliDecoder$State"
    linkageType: ""
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "java.lang.String"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].<init>(java.lang.String,int)"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.compression.BrotliDecoder$State:36,1"
      Dst: "[java.lang.Enum].<init>(java.lang.String,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: true
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].<init>(io.netty.handler.traffic.GlobalChannelTrafficShapingHandler)"
    functionSourceFile: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.AbstractCollection].<init>()"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1:624,1"
      Dst: "[java.util.AbstractCollection].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    functionSourceFile: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1"
    linkageType: ""
    functionLinenumber: 626
    functionLinenumberEnd: 628
    functionDepth: 1
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].<init>(io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1)"
    functionUses: 53
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1:627,1"
      Dst: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].<init>(io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].size()"
    functionSourceFile: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1"
    linkageType: ""
    functionLinenumber: 644
    functionLinenumberEnd: 646
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.concurrent.ConcurrentHashMap].size()"
    - "[java.util.Map].size()"
    functionUses: 3
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1:645,1"
      Dst: "[java.util.Map].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe].prepareToClose()"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe"
    linkageType: ""
    functionLinenumber: 712
    functionLinenumberEnd: 714
    functionDepth: 0
    returnType: "java.util.concurrent.Executor"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannel$AbstractUnsafe].prepareToClose()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:713,1"
      Dst: "[io.netty.channel.AbstractChannel$AbstractUnsafe].prepareToClose()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe].newEpollHandle(io.netty.channel.RecvByteBufAllocator$ExtendedHandle)"
    functionSourceFile: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe"
    linkageType: ""
    functionLinenumber: 738
    functionLinenumberEnd: 740
    functionDepth: 4
    returnType: "io.netty.channel.epoll.EpollRecvByteAllocatorHandle"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator$ExtendedHandle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.epoll.EpollRecvByteAllocatorStreamingHandle].<init>(io.netty.channel.RecvByteBufAllocator$ExtendedHandle)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe:739,1"
      Dst: "[io.netty.channel.epoll.EpollRecvByteAllocatorStreamingHandle].<init>(io.netty.channel.RecvByteBufAllocator$ExtendedHandle)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.RecvByteBufAllocator$DelegatingHandle].<init>(io.netty.channel.RecvByteBufAllocator$Handle)"
    functionSourceFile: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle"
    linkageType: ""
    functionLinenumber: 125
    functionLinenumberEnd: 129
    functionDepth: 1
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.RecvByteBufAllocator$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    functionUses: 2
    ICount: 7
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle:126,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.channel.RecvByteBufAllocator$DelegatingHandle:127,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].<init>(io.netty.channel.group.ChannelGroup,java.util.Collection,io.netty.util.concurrent.EventExecutor)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.group.ChannelGroup"
    - "java.util.Collection"
    - "io.netty.util.concurrent.EventExecutor"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].<init>(io.netty.util.concurrent.EventExecutor)"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$1].<init>(io.netty.channel.group.DefaultChannelGroupFuture)"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.LinkedHashMap].<init>()"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.channel.ChannelFuture].channel()"
    - "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - "[java.util.Collections].unmodifiableMap(java.util.Map)"
    - "[java.util.Map].values()"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[java.util.Map].isEmpty()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess0()"
    functionUses: 0
    ICount: 39
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture:90"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:94"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:93"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture:96"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:101"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:100"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture:101"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:104"
        BranchSideFuncs: []
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:103"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:85,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].<init>(io.netty.util.concurrent.EventExecutor)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:48,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture$1].<init>(io.netty.channel.group.DefaultChannelGroupFuture)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:86,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:89,1"
      Dst: "[java.util.LinkedHashMap].<init>()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:90,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:90,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:90,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:91,1"
      Dst: "[io.netty.channel.ChannelFuture].channel()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:91,1"
      Dst: "[java.util.Map].put(java.lang.Object,java.lang.Object)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:94,1"
      Dst: "[java.util.Collections].unmodifiableMap(java.util.Map)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:96,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:97,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:101,1"
      Dst: "[java.util.Map].isEmpty()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:102,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 9
    CyclomaticComplexity: 4
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].group()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.group.ChannelGroup"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].find(io.netty.channel.Channel)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 1
    argTypes:
    - "io.netty.channel.Channel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].get(java.lang.Object)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:127,1"
      Dst: "[java.util.Map].get(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].iterator()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 131
    functionLinenumberEnd: 133
    functionDepth: 0
    returnType: "java.util.Iterator"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[java.util.TreeMap].values()"
    - "[java.util.Hashtable].values()"
    - "[java.security.Provider].values()"
    - "[io.netty.util.collection.CharCollections$EmptyMap].values()"
    - "[io.netty.util.collection.LongCollections$EmptyMap].values()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap].values()"
    - "[java.util.HashMap].values()"
    - "[io.netty.util.collection.IntObjectHashMap].values()"
    - "[java.util.jar.Attributes].values()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap].values()"
    - "[io.netty.util.collection.CharObjectHashMap].values()"
    - "[io.netty.util.collection.LongObjectHashMap].values()"
    - "[io.netty.util.collection.IntCollections$EmptyMap].values()"
    - "[io.netty.util.collection.ByteCollections$EmptyMap].values()"
    - "[io.netty.util.collection.ByteObjectHashMap].values()"
    - "[java.util.IdentityHashMap].values()"
    - "[java.util.LinkedHashMap].values()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap].values()"
    - "[java.util.Properties].values()"
    - "[io.netty.util.collection.ShortCollections$EmptyMap].values()"
    - "[java.util.concurrent.ConcurrentHashMap].values()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap].values()"
    - "[io.netty.handler.codec.serialization.ReferenceMap].values()"
    - "[io.netty.util.collection.ShortObjectHashMap].values()"
    - "[java.util.WeakHashMap].values()"
    - "[java.util.AbstractMap].values()"
    - "[java.util.Map].values()"
    - "[java.util.Collection].iterator()"
    functionUses: 24
    ICount: 5
    EdgeCount: 80
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:132,1"
      Dst: "[java.util.Map].values()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:132,1"
      Dst: "[java.util.Collection].iterator()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].isPartialSuccess()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].size()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture:137"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:136"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture:137"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:136"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:137,1"
      Dst: "[java.util.Map].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].isPartialFailure()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.Map].size()"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture:142"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:141"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture:142"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:141"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:142,1"
      Dst: "[java.util.Map].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].addListener(io.netty.util.concurrent.GenericFutureListener<?\
      \ extends Future<? super Void>>)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 146
    functionLinenumberEnd: 149
    functionDepth: 0
    returnType: "io.netty.channel.group.DefaultChannelGroupFuture"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener<? extends Future<? super Void>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 32
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:147,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.group.DefaultChannelGroupFuture"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:153,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].addListeners(io.netty.util.concurrent.GenericFutureListener[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].removeListener(io.netty.util.concurrent.GenericFutureListener<?\
      \ extends Future<? super Void>>)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 158
    functionLinenumberEnd: 161
    functionDepth: 0
    returnType: "io.netty.channel.group.DefaultChannelGroupFuture"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener<? extends Future<? super Void>>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:159,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].removeListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 2
    returnType: "io.netty.channel.group.DefaultChannelGroupFuture"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.GenericFutureListener[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:166,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].removeListeners(io.netty.util.concurrent.GenericFutureListener[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].await()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionDepth: 5
    returnType: "io.netty.channel.group.DefaultChannelGroupFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].await()"
    functionUses: 3
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:172,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].await()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].awaitUninterruptibly()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 177
    functionLinenumberEnd: 180
    functionDepth: 5
    returnType: "io.netty.channel.group.DefaultChannelGroupFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].awaitUninterruptibly()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:178,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].awaitUninterruptibly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].syncUninterruptibly()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 183
    functionLinenumberEnd: 186
    functionDepth: 6
    returnType: "io.netty.channel.group.DefaultChannelGroupFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].syncUninterruptibly()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:184,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].syncUninterruptibly()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].sync()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 6
    returnType: "io.netty.channel.group.DefaultChannelGroupFuture"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].sync()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:190,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].sync()"
    JavaMethodInfo:
      exceptions:
      - "java.lang.InterruptedException"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].cause()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 195
    functionLinenumberEnd: 197
    functionDepth: 4
    returnType: "io.netty.channel.group.ChannelGroupException"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].cause()"
    functionUses: 36
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:196,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].cause()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Void)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionDepth: 0
    returnType: "io.netty.channel.group.DefaultChannelGroupFuture"
    argCount: 1
    argTypes:
    - "java.lang.Void"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:209,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].trySuccess(java.lang.Void)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 213
    functionLinenumberEnd: 215
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Void"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:214,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].setFailure(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 218
    functionLinenumberEnd: 220
    functionDepth: 0
    returnType: "io.netty.channel.group.DefaultChannelGroupFuture"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 29
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:219,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].tryFailure(java.lang.Throwable)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 25
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:224,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].checkDeadLock()"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 228
    functionLinenumberEnd: 234
    functionDepth: 1
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultPromise].executor()"
    - "[io.netty.channel.embedded.EmbeddedEventLoop].inEventLoop()"
    - "[io.netty.util.concurrent.AbstractEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.ImmediateEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$NonStickyOrderedEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.UnorderedThreadPoolEventExecutor].inEventLoop()"
    - "[io.netty.util.concurrent.BlockingOperationException].<init>()"
    - "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    functionUses: 2
    ICount: 11
    EdgeCount: 7
    BranchProfiles:
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture:230"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:233"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:232"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture:230"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:233"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:232"
        BranchSideFuncs: []
    - Branch String: "io.netty.channel.group.DefaultChannelGroupFuture:230"
      Branch Sides:
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:233"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.channel.group.DefaultChannelGroupFuture:232"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:229,1"
      Dst: "[io.netty.util.concurrent.DefaultPromise].executor()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:230,1"
      Dst: "[io.netty.util.concurrent.EventExecutor].inEventLoop()"
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:231,1"
      Dst: "[io.netty.util.concurrent.BlockingOperationException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 5
    CyclomaticComplexity: 3
  - functionName: "[io.netty.util.concurrent.BlockingOperationException].<init>()"
    functionSourceFile: "io.netty.util.concurrent.BlockingOperationException"
    linkageType: ""
    functionLinenumber: 27
    functionLinenumberEnd: 29
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalStateException].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.BlockingOperationException:28,1"
      Dst: "[java.lang.IllegalStateException].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].trySuccess(java.lang.Object)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroupFuture].trySuccess(java.lang.Void)"
    functionUses: 13
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:41,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].trySuccess(java.lang.Void)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Object)"
    functionSourceFile: "io.netty.channel.group.DefaultChannelGroupFuture"
    linkageType: ""
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionDepth: 1
    returnType: "io.netty.util.concurrent.Promise"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Void)"
    functionUses: 40
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.group.DefaultChannelGroupFuture:41,1"
      Dst: "[io.netty.channel.group.DefaultChannelGroupFuture].setSuccess(java.lang.Void)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter].get(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter"
    linkageType: ""
    functionLinenumber: 42
    functionLinenumberEnd: 59
    functionDepth: 1
    returnType: "io.netty.resolver.dns.DnsServerAddressStream"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.NoopDnsCache].get(java.lang.String,io.netty.handler.codec.dns.DnsRecord[])"
    - "[io.netty.resolver.dns.DefaultDnsCache].get(java.lang.String,io.netty.handler.codec.dns.DnsRecord[])"
    - "[jaz.Zer].isEmpty()"
    - "[java.util.concurrent.CopyOnWriteArrayList].isEmpty()"
    - "[io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry].cause()"
    - "[io.netty.handler.codec.CodecOutputList].get(int)"
    - "[jaz.Zer].get(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].get(int)"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].get(int)"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.handler.codec.HeadersUtils$1].size()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].size()"
    - "[jaz.Zer].size()"
    - "[java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.resolver.dns.NoopDnsCache$NoopDnsCacheEntry].address()"
    - "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].size()"
    - "[io.netty.resolver.dns.SequentialDnsServerAddressStream].<init>(java.util.List,int)"
    - "[io.netty.resolver.dns.DnsCache].get(java.lang.String,io.netty.handler.codec.dns.DnsRecord[])"
    - "[java.util.List].isEmpty()"
    - "[java.util.List].get(int)"
    - "[io.netty.resolver.dns.DnsCacheEntry].cause()"
    - "[java.util.List].size()"
    - "[io.netty.resolver.dns.DnsCacheEntry].address()"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 2
    ICount: 30
    EdgeCount: 26
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:44"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:45"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:44"
        BranchSideFuncs: []
    - Branch String: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:44"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:47"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:46"
        BranchSideFuncs:
        - "cause()"
    - Branch String: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:47"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:51"
        BranchSideFuncs: []
      - BranchSide: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:50"
        BranchSideFuncs:
        - "<init>(int)"
    - Branch String: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:57"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:55"
        BranchSideFuncs:
        - "<init>(java.util.List,int)"
      - BranchSide: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:54"
        BranchSideFuncs:
        - "add(java.lang.Object)"
        - "address()"
        - "get(int)"
        - "<init>(java.net.InetAddress,int)"
        - "size()"
    Callsites:
    - Src: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:43,1"
      Dst: "[io.netty.resolver.dns.DnsCache].get(java.lang.String,io.netty.handler.codec.dns.DnsRecord[])"
    - Src: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:44,1"
      Dst: "[java.util.List].isEmpty()"
    - Src: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:47,1"
      Dst: "[java.util.List].get(int)"
    - Src: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:47,1"
      Dst: "[io.netty.resolver.dns.DnsCacheEntry].cause()"
    - Src: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:51,1"
      Dst: "[java.util.List].size()"
    - Src: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:51,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:55,1"
      Dst: "[io.netty.resolver.dns.DnsCacheEntry].address()"
    - Src: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:56,1"
      Dst: "[java.net.InetSocketAddress].<init>(java.net.InetAddress,int)"
    - Src: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:56,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:58,1"
      Dst: "[io.netty.resolver.dns.SequentialDnsServerAddressStream].<init>(java.util.List,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 3
  - functionName: "[io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter].cache(java.lang.String,java.net.InetSocketAddress,long,io.netty.channel.EventLoop)"
    functionSourceFile: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter"
    linkageType: ""
    functionLinenumber: 63
    functionLinenumberEnd: 68
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "java.lang.String"
    - "java.net.InetSocketAddress"
    - "long"
    - "io.netty.channel.EventLoop"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.net.InetSocketAddress].isUnresolved()"
    - "[io.netty.resolver.dns.NoopDnsCache].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],java.net.InetAddress,long,io.netty.channel.EventLoop)"
    - "[io.netty.resolver.dns.DefaultDnsCache].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],java.net.InetAddress,long,io.netty.channel.EventLoop)"
    - "[java.net.InetSocketAddress].getAddress()"
    - "[io.netty.resolver.dns.DnsCache].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],java.net.InetAddress,long,io.netty.channel.EventLoop)"
    functionUses: 2
    ICount: 12
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:64"
      Branch Sides:
      - BranchSide: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:67"
        BranchSideFuncs:
        - "getAddress()"
        - "cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],java.net.InetAddress,long,io.netty.channel.EventLoop)"
      - BranchSide: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:66"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:64,1"
      Dst: "[java.net.InetSocketAddress].isUnresolved()"
    - Src: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:65,1"
      Dst: "[java.net.InetSocketAddress].getAddress()"
    - Src: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:65,1"
      Dst: "[io.netty.resolver.dns.DnsCache].cache(java.lang.String,io.netty.handler.codec.dns.DnsRecord[],java.net.InetAddress,long,io.netty.channel.EventLoop)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter].clear()"
    functionSourceFile: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter"
    linkageType: ""
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DefaultDnsCache].clear()"
    - "[io.netty.resolver.dns.NoopDnsCache].clear()"
    - "[io.netty.resolver.dns.DnsCache].clear()"
    functionUses: 2
    ICount: 4
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:71,1"
      Dst: "[io.netty.resolver.dns.DnsCache].clear()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter].clear(java.lang.String)"
    functionSourceFile: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.resolver.dns.DnsCache].clear(java.lang.String)"
    functionUses: 0
    ICount: 5
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.AuthoritativeDnsServerCacheAdapter:76,1"
      Dst: "[io.netty.resolver.dns.DnsCache].clear(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksInitRequestDecoder].<init>()"
    functionSourceFile: "io.netty.handler.codec.socks.SocksInitRequestDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksInitRequestDecoder:35,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].<init>(java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.socks.SocksInitRequestDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.socks.SocksInitRequestDecoder"
    linkageType: ""
    functionLinenumber: 39
    functionLinenumberEnd: 68
    functionDepth: 2
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.handler.codec.ReplayingDecoder].state()"
    - "[io.netty.handler.codec.socks.SocksProtocolVersion].byteValue()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.handler.codec.socks.SocksAuthScheme].valueOf(byte)"
    - "[java.util.Collections].emptyList()"
    - "[io.netty.handler.codec.socks.SocksInitRequest].<init>(java.util.List)"
    - "[io.netty.channel.AbstractChannelHandlerContext:java.util.AbstractList:java.util.ArrayList:java.util.LinkedList:java.util.Vector:java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.lang.Error].<init>()"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].pipeline()"
    - "[io.netty.channel.DefaultChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    functionUses: 1
    ICount: 49
    EdgeCount: 44
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.socks.SocksInitRequestDecoder:42"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksInitRequestDecoder:46"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.socks.SocksInitRequestDecoder:45"
        BranchSideFuncs:
        - "checkpoint(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.socks.SocksInitRequestDecoder:51"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksInitRequestDecoder:57"
        BranchSideFuncs:
        - "<init>(int)"
      - BranchSide: "io.netty.handler.codec.socks.SocksInitRequestDecoder:56"
        BranchSideFuncs:
        - "emptyList()"
    - Branch String: "io.netty.handler.codec.socks.SocksInitRequestDecoder:53"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.socks.SocksInitRequestDecoder:51"
        BranchSideFuncs:
        - "<init>(int)"
    Callsites:
    - Src: "io.netty.handler.codec.socks.SocksInitRequestDecoder:40,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].state()"
    - Src: "io.netty.handler.codec.socks.SocksInitRequestDecoder:40,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.socks.SocksInitRequestDecoder:42,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.socks.SocksInitRequestDecoder:42,1"
      Dst: "[io.netty.handler.codec.socks.SocksProtocolVersion].byteValue()"
    - Src: "io.netty.handler.codec.socks.SocksInitRequestDecoder:43,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.socks.SocksInitRequestDecoder:46,1"
      Dst: "[io.netty.handler.codec.ReplayingDecoder].checkpoint(java.lang.Object)"
    - Src: "io.netty.handler.codec.socks.SocksInitRequestDecoder:52,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.handler.codec.socks.SocksInitRequestDecoder:54,1"
      Dst: "[io.netty.handler.codec.socks.SocksAuthScheme].valueOf(byte)"
    - Src: "io.netty.handler.codec.socks.SocksInitRequestDecoder:57,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.handler.codec.socks.SocksInitRequestDecoder:59,1"
      Dst: "[io.netty.handler.codec.socks.SocksInitRequest].<init>(java.util.List)"
    - Src: "io.netty.handler.codec.socks.SocksInitRequestDecoder:63,1"
      Dst: "[java.lang.Error].<init>()"
    - Src: "io.netty.handler.codec.socks.SocksInitRequestDecoder:66,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].pipeline()"
    - Src: "io.netty.handler.codec.socks.SocksInitRequestDecoder:66,1"
      Dst: "[io.netty.channel.ChannelPipeline].remove(io.netty.channel.ChannelHandler)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 13
    CyclomaticComplexity: 5
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$WriteTask$1].<init>()"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$WriteTask$1"
    linkageType: ""
    functionLinenumber: 1190
    functionLinenumberEnd: 1192
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask$1:1191,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.AbstractChannelHandlerContext$WriteTask$1].newObject(io.netty.util.internal.ObjectPool$Handle)"
    functionSourceFile: "io.netty.channel.AbstractChannelHandlerContext$WriteTask$1"
    linkageType: ""
    functionLinenumber: 1193
    functionLinenumberEnd: 1195
    functionDepth: 2
    returnType: "io.netty.channel.AbstractChannelHandlerContext$WriteTask"
    argCount: 1
    argTypes:
    - "io.netty.util.internal.ObjectPool$Handle"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.channel.AbstractChannelHandlerContext$1)"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.AbstractChannelHandlerContext$WriteTask$1:1194,1"
      Dst: "[io.netty.channel.AbstractChannelHandlerContext$WriteTask].<init>(io.netty.util.internal.ObjectPool$Handle,io.netty.channel.AbstractChannelHandlerContext$1)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundHandlerAdapter].<init>()"
    functionSourceFile: "io.netty.channel.ChannelOutboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.ChannelHandlerAdapter].<init>()"
    functionUses: 2
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundHandlerAdapter:26,1"
      Dst: "[io.netty.channel.ChannelHandlerAdapter].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.ChannelOutboundHandlerAdapter].write(io.netty.channel.ChannelHandlerContext,java.lang.Object,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.channel.ChannelOutboundHandlerAdapter"
    linkageType: ""
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "java.lang.Object"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.AbstractChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    - "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    functionUses: 2
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.ChannelOutboundHandlerAdapter:113,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].write(java.lang.Object,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainNameMappingBuilder].<init>(java.lang.Object)"
    functionSourceFile: "io.netty.util.DomainNameMappingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.DomainNameMappingBuilder].<init>(int,java.lang.Object)"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainNameMappingBuilder:45,1"
      Dst: "[io.netty.util.DomainNameMappingBuilder].<init>(int,java.lang.Object)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.DomainNameMappingBuilder].<init>(int,java.lang.Object)"
    functionSourceFile: "io.netty.util.DomainNameMappingBuilder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 2
    argTypes:
    - "int"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - "[java.util.LinkedHashMap].<init>(int)"
    functionUses: 0
    ICount: 10
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.DomainNameMappingBuilder:55,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.DomainNameMappingBuilder:56,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkNotNull(java.lang.Object,java.lang.String)"
    - Src: "io.netty.util.DomainNameMappingBuilder:57,1"
      Dst: "[java.util.LinkedHashMap].<init>(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].<init>(io.netty.channel.kqueue.AbstractKQueueStreamChannel)"
    functionSourceFile: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$1"
    linkageType: ""
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.channel.kqueue.AbstractKQueueStreamChannel"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 2
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$1:58,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.channel.kqueue.AbstractKQueueStreamChannel$1].run()"
    functionSourceFile: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$1"
    linkageType: ""
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].flush0()"
    - "[io.netty.channel.AbstractChannel].unsafe()"
    functionUses: 49
    ICount: 6
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$1:63,1"
      Dst: "[io.netty.channel.AbstractChannel].unsafe()"
    - Src: "io.netty.channel.kqueue.AbstractKQueueStreamChannel$1:63,1"
      Dst: "[io.netty.channel.kqueue.AbstractKQueueChannel$AbstractKQueueUnsafe].flush0()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ByteProcessor$IndexOfProcessor].<init>(byte)"
    functionSourceFile: "io.netty.util.ByteProcessor$IndexOfProcessor"
    linkageType: ""
    functionLinenumber: 31
    functionLinenumberEnd: 35
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 6
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.ByteProcessor$IndexOfProcessor:32,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.ByteProcessor$IndexOfProcessor].process(byte)"
    functionSourceFile: "io.netty.util.ByteProcessor$IndexOfProcessor"
    linkageType: ""
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "byte"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 10
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.ByteProcessor$IndexOfProcessor:38"
      Branch Sides:
      - BranchSide: "io.netty.util.ByteProcessor$IndexOfProcessor:37"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.resolver.dns.DnsAddressDecoder].<init>()"
    functionSourceFile: "io.netty.resolver.dns.DnsAddressDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.resolver.dns.DnsAddressDecoder:66,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder$1].<init>()"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieEncoder$1"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder$1:95,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder$1].compare(io.netty.handler.codec.http.cookie.Cookie,io.netty.handler.codec.http.cookie.Cookie)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieEncoder$1"
    linkageType: ""
    functionLinenumber: 97
    functionLinenumberEnd: 111
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.cookie.Cookie"
    - "io.netty.handler.codec.http.cookie.Cookie"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.DefaultCookie].path()"
    - "[java.lang.String].length()"
    - "[io.netty.handler.codec.http.cookie.Cookie].path()"
    functionUses: 1
    ICount: 16
    EdgeCount: 4
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder$1:105"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder$1:98"
        BranchSideFuncs:
        - "length()"
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder$1:97"
        BranchSideFuncs:
        - "path()"
    - Branch String: "io.netty.handler.codec.http.cookie.ClientCookieEncoder$1:106"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.cookie.ClientCookieEncoder$1:104"
        BranchSideFuncs:
        - "length()"
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder$1:98,1"
      Dst: "[io.netty.handler.codec.http.cookie.Cookie].path()"
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder$1:105,1"
      Dst: "[java.lang.String].length()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder$1].compare(java.lang.Object,java.lang.Object)"
    functionSourceFile: "io.netty.handler.codec.http.cookie.ClientCookieEncoder$1"
    linkageType: ""
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionDepth: 1
    returnType: "int"
    argCount: 2
    argTypes:
    - "java.lang.Object"
    - "java.lang.Object"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.cookie.ClientCookieEncoder$1].compare(io.netty.handler.codec.http.cookie.Cookie,io.netty.handler.codec.http.cookie.Cookie)"
    functionUses: 5
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.cookie.ClientCookieEncoder$1:95,1"
      Dst: "[io.netty.handler.codec.http.cookie.ClientCookieEncoder$1].compare(io.netty.handler.codec.http.cookie.Cookie,io.netty.handler.codec.http.cookie.Cookie)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2Connection$1].visit(io.netty.handler.codec.http2.Http2Stream)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2Connection$1"
    linkageType: ""
    functionLinenumber: 283
    functionLinenumberEnd: 288
    functionDepth: 1
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Stream"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].id()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isValidStreamId(int)"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultStream].close()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$ConnectionStream].close()"
    - "[io.netty.handler.codec.http2.Http2Stream].id()"
    - "[io.netty.handler.codec.http2.Http2Stream].close()"
    functionUses: 1
    ICount: 11
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$1:284"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$1:287"
        BranchSideFuncs:
        - "close()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$1:286"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.DefaultHttp2Connection$1:284"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$1:287"
        BranchSideFuncs:
        - "close()"
      - BranchSide: "io.netty.handler.codec.http2.DefaultHttp2Connection$1:286"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$1:284,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].id()"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$1:284,1"
      Dst: "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].isValidStreamId(int)"
    - Src: "io.netty.handler.codec.http2.DefaultHttp2Connection$1:285,1"
      Dst: "[io.netty.handler.codec.http2.Http2Stream].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength].<init>(long)"
    functionSourceFile: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength"
    linkageType: ""
    functionLinenumber: 780
    functionLinenumberEnd: 784
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$ContentLength:781,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder].numBufferedStreams()"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.util.TreeMap].size()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:152,1"
      Dst: "[java.util.TreeMap].size()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,boolean,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder"
    linkageType: ""
    functionLinenumber: 157
    functionLinenumberEnd: 159
    functionDepth: 5
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 6
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "io.netty.handler.codec.http2.Http2Headers"
    - "int"
    - "boolean"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    functionUses: 6
    ICount: 9
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:158,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeHeaders(io.netty.channel.ChannelHandlerContext,int,io.netty.handler.codec.http2.Http2Headers,int,short,boolean,int,boolean,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder"
    linkageType: ""
    functionLinenumber: 188
    functionLinenumberEnd: 206
    functionDepth: 4
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].isExistingStream(int)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[java.util.TreeMap].remove(java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream].close(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setSuccess()"
    - "[io.netty.channel.DefaultChannelPromise].setSuccess()"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setSuccess()"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setSuccess()"
    - "[io.netty.channel.VoidChannelPromise].setSuccess()"
    - "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.AbstractChannel$CloseFuture].setFailure(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.Http2CodecUtil$SimpleChannelPromiseAggregator].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.VoidChannelPromise].setFailure(java.lang.Throwable)"
    - "[io.netty.channel.ChannelPromise].setSuccess()"
    - "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    functionUses: 5
    ICount: 24
    EdgeCount: 18
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder:189"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:194"
        BranchSideFuncs:
        - "writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:193"
        BranchSideFuncs:
        - "remove(java.lang.Object)"
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder:195"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:202"
        BranchSideFuncs:
        - "connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
        - "setFailure(java.lang.Throwable)"
        - "valueOf(int)"
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:189,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder].isExistingStream(int)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:190,1"
      Dst: "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:194,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:194,1"
      Dst: "[java.util.TreeMap].remove(java.lang.Object)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:200,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream].close(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:201,1"
      Dst: "[io.netty.channel.ChannelPromise].setSuccess()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:203,1"
      Dst: "[io.netty.handler.codec.http2.Http2Exception].connectionError(io.netty.handler.codec.http2.Http2Error,java.lang.String,java.lang.Object[])"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:203,1"
      Dst: "[io.netty.channel.ChannelPromise].setFailure(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2FrameWriter"
    linkageType: ""
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionDepth: 0
    returnType: "io.netty.channel.ChannelFuture"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "int"
    - "long"
    - "io.netty.channel.ChannelPromise"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2ControlFrameLimitEncoder].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    functionUses: 7
    ICount: 8
    EdgeCount: 6
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2FrameWriter:65,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].writeRstStream(io.netty.channel.ChannelHandlerContext,int,long,io.netty.channel.ChannelPromise)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream].close(java.lang.Throwable)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream"
    linkageType: ""
    functionLinenumber: 306
    functionLinenumberEnd: 311
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "java.lang.Throwable"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame].release(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$Frame].release(java.lang.Throwable)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 4
    ICount: 11
    EdgeCount: 134
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream:307"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream:310"
        BranchSideFuncs:
        - "hasNext()"
        - "iterator()"
        - "next()"
        - "release(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream:309"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream:307,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream:307,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream:307,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream:308,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$Frame].release(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder].remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder"
    linkageType: ""
    functionLinenumber: 227
    functionLinenumberEnd: 236
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.Http2Settings"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].connection()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection].local()"
    - "[io.netty.handler.codec.http2.DefaultHttp2Connection$DefaultEndpoint].maxActiveStreams()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].tryCreatePendingStreams()"
    - "[io.netty.handler.codec.http2.Http2Connection].local()"
    - "[io.netty.handler.codec.http2.Http2Connection$Endpoint].maxActiveStreams()"
    functionUses: 3
    ICount: 9
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:228,1"
      Dst: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].remoteSettings(io.netty.handler.codec.http2.Http2Settings)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:231,1"
      Dst: "[io.netty.handler.codec.http2.DecoratingHttp2ConnectionEncoder].connection()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:231,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection].local()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:231,1"
      Dst: "[io.netty.handler.codec.http2.Http2Connection$Endpoint].maxActiveStreams()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:234,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder].tryCreatePendingStreams()"
    JavaMethodInfo:
      exceptions:
      - "io.netty.handler.codec.http2.Http2Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder].tryCreatePendingStreams()"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder"
    linkageType: ""
    functionLinenumber: 255
    functionLinenumberEnd: 266
    functionDepth: 2
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].canCreateStream()"
    - "[java.util.AbstractMap].isEmpty()"
    - "[java.util.TreeMap].pollFirstEntry()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream].sendFrames()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream].close(java.lang.Throwable)"
    - "[java.util.Map$Entry].getValue()"
    functionUses: 2
    ICount: 16
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder:256"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:265"
        BranchSideFuncs:
        - "pollFirstEntry()"
        - "getValue()"
        - "close(java.lang.Throwable)"
        - "sendFrames()"
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:264"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder:256"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:265"
        BranchSideFuncs:
        - "pollFirstEntry()"
        - "getValue()"
        - "close(java.lang.Throwable)"
        - "sendFrames()"
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:264"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:256,1"
      Dst: "[java.util.AbstractMap].isEmpty()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:256,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder].canCreateStream()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:257,1"
      Dst: "[java.util.TreeMap].pollFirstEntry()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:258,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:260,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream].sendFrames()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:262,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream].close(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream].sendFrames()"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream"
    linkageType: ""
    functionLinenumber: 300
    functionLinenumberEnd: 305
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$DataFrame].send(io.netty.channel.ChannelHandlerContext,int)"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$HeadersFrame].send(io.netty.channel.ChannelHandlerContext,int)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$Frame].send(io.netty.channel.ChannelHandlerContext,int)"
    functionUses: 1
    ICount: 12
    EdgeCount: 134
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream:301"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream:304"
        BranchSideFuncs:
        - "send(io.netty.channel.ChannelHandlerContext,int)"
        - "hasNext()"
        - "iterator()"
        - "next()"
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream:303"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream:301,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream:301,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream:301,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream:302,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$Frame].send(io.netty.channel.ChannelHandlerContext,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder].close()"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder"
    linkageType: ""
    functionLinenumber: 239
    functionLinenumberEnd: 254
    functionDepth: 4
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$Http2ChannelClosedException].<init>()"
    - "[java.util.AbstractMap].isEmpty()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntry].getValue()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapEntry].getValue()"
    - "[java.util.AbstractMap$SimpleEntry].getValue()"
    - "[java.util.Hashtable$Entry].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].getValue()"
    - "[java.util.HashMap$Node].getValue()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].getValue()"
    - "[io.netty.util.collection.IntObjectHashMap$MapEntry].getValue()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapEntry].getValue()"
    - "[java.util.WeakHashMap$Entry].getValue()"
    - "[java.util.TreeMap$Entry].getValue()"
    - "[io.netty.util.collection.LongObjectHashMap$MapEntry].getValue()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderEntry].getValue()"
    - "[java.util.concurrent.ConcurrentHashMap$Node].getValue()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].getValue()"
    - "[java.util.AbstractMap$SimpleImmutableEntry].getValue()"
    - "[io.netty.util.collection.CharObjectHashMap$MapEntry].getValue()"
    - "[io.netty.channel.group.DefaultChannelGroupFuture$DefaultEntry].getValue()"
    - "[java.util.TreeMap].pollFirstEntry()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream].close(java.lang.Throwable)"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].close()"
    - "[java.util.Map$Entry].getValue()"
    functionUses: 5
    ICount: 21
    EdgeCount: 24
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder:240"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:251"
        BranchSideFuncs:
        - "<init>()"
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:250"
        BranchSideFuncs:
        - "close()"
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder:245"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:251"
        BranchSideFuncs:
        - "pollFirstEntry()"
        - "getValue()"
        - "close(java.lang.Throwable)"
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:250"
        BranchSideFuncs:
        - "close()"
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:244,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$Http2ChannelClosedException].<init>()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:245,1"
      Dst: "[java.util.AbstractMap].isEmpty()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:246,1"
      Dst: "[java.util.TreeMap].pollFirstEntry()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:246,1"
      Dst: "[java.util.Map$Entry].getValue()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:247,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream].close(java.lang.Throwable)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:251,1"
      Dst: "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 2
  - functionName: "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].close()"
    functionSourceFile: "io.netty.handler.codec.http2.DecoratingHttp2FrameWriter"
    linkageType: ""
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.Http2OutboundFrameLogger].close()"
    - "[io.netty.handler.codec.http2.DecoratingHttp2FrameWriter].close()"
    - "[io.netty.handler.codec.http2.DefaultHttp2ConnectionEncoder].close()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].close()"
    - "[io.netty.handler.codec.http2.DefaultHttp2FrameWriter].close()"
    - "[io.netty.handler.codec.http2.Http2FrameWriter].close()"
    functionUses: 7
    ICount: 4
    EdgeCount: 5
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.DecoratingHttp2FrameWriter:114,1"
      Dst: "[io.netty.handler.codec.http2.Http2FrameWriter].close()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder].cancelGoAwayStreams(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 278
    functionDepth: 4
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.HeadersUtils$DelegatingStringSet].iterator()"
    - "[io.netty.util.internal.EmptyPriorityQueue].iterator()"
    - "[io.netty.util.internal.DefaultPriorityQueue].iterator()"
    - "[io.netty.channel.group.DefaultChannelGroup].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$EntrySetView].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$ValuesView].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseLinkedAtomicQueue].iterator()"
    - "[java.util.ArrayList].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$2].iterator()"
    - "[java.util.TreeMap$KeySet].iterator()"
    - "[java.util.concurrent.ConcurrentHashMap$KeySetView].iterator()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue].iterator()"
    - "[io.netty.handler.codec.http2.MaxCapacityQueue].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedQueue].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.ConcurrentLinkedDeque].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet].iterator()"
    - "[java.util.AbstractList].iterator()"
    - "[io.netty.util.collection.ByteObjectHashMap$2].iterator()"
    - "[java.util.concurrent.CopyOnWriteArrayList].iterator()"
    - "[java.util.Vector].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue].iterator()"
    - "[io.netty.util.collection.LongObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$2].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet].iterator()"
    - "[io.netty.util.collection.IntObjectHashMap$EntrySet].iterator()"
    - "[java.util.TreeSet].iterator()"
    - "[jaz.Zer].iterator()"
    - "[io.netty.util.internal.ConcurrentSet].iterator()"
    - "[java.util.HashSet].iterator()"
    - "[io.netty.util.collection.CharObjectHashMap$EntrySet].iterator()"
    - "[java.util.concurrent.LinkedBlockingDeque].iterator()"
    - "[io.netty.util.collection.ShortObjectHashMap$EntrySet].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseLinkedQueue].iterator()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet].iterator()"
    - "[java.util.AbstractSequentialList].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscUnboundedArrayQueue].iterator()"
    - "[java.util.ArrayDeque].iterator()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList].iterator()"
    - "[java.util.concurrent.LinkedBlockingQueue].iterator()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.MpscChunkedArrayQueue].iterator()"
    - "[java.util.TreeMap$EntrySet].iterator()"
    - "[java.util.TreeMap].values()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException].<init>(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].hasNext()"
    - "[jaz.Zer].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].hasNext()"
    - "[java.io.BufferedReader$1].hasNext()"
    - "[io.netty.channel.group.CombinedIterator].hasNext()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].hasNext()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].hasNext()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].hasNext()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].hasNext()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].hasNext()"
    - "[jdk.internal.module.ModuleBootstrap$2].hasNext()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].hasNext()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].hasNext()"
    - "[io.netty.channel.nio.NioEventLoop$7].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.ReadOnlyIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].hasNext()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].hasNext()"
    - "[java.nio.file.Files$2].hasNext()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].hasNext()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].hasNext()"
    - "[java.nio.file.FileTreeIterator].hasNext()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].hasNext()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].hasNext()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].hasNext()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].next()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].next()"
    - "[io.netty.util.internal.ReadOnlyIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].next()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].next()"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].next()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].next()"
    - "[jdk.internal.module.ModuleBootstrap$2].next()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].next()"
    - "[io.netty.channel.group.CombinedIterator].next()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].next()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].next()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].next()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].next()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].next()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].next()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].next()"
    - "[jaz.Zer].next()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].next()"
    - "[java.io.BufferedReader$1].next()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.nio.NioEventLoop$7].next()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].next()"
    - "[java.nio.file.FileTreeIterator].next()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].next()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].next()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].next()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].next()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].next()"
    - "[java.nio.file.Files$2].next()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail].access$000(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    - "[io.netty.util.collection.IntCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ShortCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.buffer.CompositeByteBuf$CompositeByteBufIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringEntryIterator].remove()"
    - "[io.netty.resolver.dns.DnsResolveContext$DnsAddressStreamList$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.internal.DefaultPriorityQueue$PriorityQueueIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.LongCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$HeaderIterator].remove()"
    - "[io.netty.util.collection.ByteCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$KeySet$1].remove()"
    - "[io.netty.util.collection.CharCollections$UnmodifiableMap$IteratorImpl].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyStringValueIterator].remove()"
    - "[io.netty.handler.traffic.GlobalChannelTrafficShapingHandler$1$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.AtomicReferenceArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyValueIterator].remove()"
    - "[io.netty.handler.codec.DefaultHeaders$ValueIterator].remove()"
    - "[io.netty.handler.codec.http.DefaultHttpHeaders$2].remove()"
    - "[io.netty.channel.nio.NioEventLoop$7].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$MapIterator].remove()"
    - "[io.netty.channel.SingleThreadEventLoop$ChannelsReadOnlyIterator$1].remove()"
    - "[io.netty.util.concurrent.NonStickyEventExecutorGroup$1].remove()"
    - "[io.netty.util.collection.CharObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http.ReadOnlyHttpHeaders$ReadOnlyValueIterator].remove()"
    - "[io.netty.util.internal.ReadOnlyIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.util.collection.LongObjectHashMap$2$1].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.atomic.BaseMpscLinkedAtomicArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$MapIterator].remove()"
    - "[io.netty.util.collection.ByteObjectHashMap$PrimitiveIterator].remove()"
    - "[io.netty.channel.nio.SelectedSelectionKeySet$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$2$1].remove()"
    - "[io.netty.handler.codec.HeadersUtils$StringIterator].remove()"
    - "[io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueue$WeakIterator].remove()"
    - "[io.netty.util.collection.ShortObjectHashMap$2$1].remove()"
    - "[io.netty.util.collection.IntObjectHashMap$KeySet$1].remove()"
    - "[io.netty.handler.codec.http2.ReadOnlyHttp2Headers$ReadOnlyIterator].remove()"
    - "[io.netty.channel.group.CombinedIterator].remove()"
    - "[java.util.Iterator].remove()"
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream].close(java.lang.Throwable)"
    - "[java.util.Collection].iterator()"
    - "[java.util.Iterator].hasNext()"
    - "[java.util.Iterator].next()"
    functionUses: 1
    ICount: 18
    EdgeCount: 221
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder:270"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:277"
        BranchSideFuncs:
        - "next()"
        - "access$000(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:276"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http2.StreamBufferingEncoder:272"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:276"
        BranchSideFuncs:
        - "close(java.lang.Throwable)"
        - "remove()"
      - BranchSide: "io.netty.handler.codec.http2.StreamBufferingEncoder:275"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:268,1"
      Dst: "[java.util.TreeMap].values()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:268,1"
      Dst: "[java.util.Collection].iterator()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:269,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$Http2GoAwayException].<init>(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:270,1"
      Dst: "[java.util.Iterator].hasNext()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:271,1"
      Dst: "[java.util.Iterator].next()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:272,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail].access$000(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:273,1"
      Dst: "[java.util.Iterator].remove()"
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:274,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder$PendingStream].close(java.lang.Throwable)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 6
    CyclomaticComplexity: 3
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder].access$302(io.netty.handler.codec.http2.StreamBufferingEncoder,io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.StreamBufferingEncoder"
    - "io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder].access$300(io.netty.handler.codec.http2.StreamBufferingEncoder)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 0
    returnType: "io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.StreamBufferingEncoder"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 1
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder].access$400(io.netty.handler.codec.http2.StreamBufferingEncoder,io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 5
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http2.StreamBufferingEncoder"
    - "io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].cancelGoAwayStreams(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    functionUses: 1
    ICount: 4
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:59,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder].cancelGoAwayStreams(io.netty.handler.codec.http2.StreamBufferingEncoder$GoAwayDetail)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http2.StreamBufferingEncoder].access$500(io.netty.handler.codec.http2.StreamBufferingEncoder)"
    functionSourceFile: "io.netty.handler.codec.http2.StreamBufferingEncoder"
    linkageType: ""
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionDepth: 3
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.handler.codec.http2.StreamBufferingEncoder"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http2.StreamBufferingEncoder].tryCreatePendingStreams()"
    functionUses: 1
    ICount: 3
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http2.StreamBufferingEncoder:59,1"
      Dst: "[io.netty.handler.codec.http2.StreamBufferingEncoder].tryCreatePendingStreams()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.IntegerRedisMessage].<init>(long)"
    functionSourceFile: "io.netty.handler.codec.redis.IntegerRedisMessage"
    linkageType: ""
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 1
    ICount: 5
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.IntegerRedisMessage:34,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.redis.IntegerRedisMessage].toString()"
    functionSourceFile: "io.netty.handler.codec.redis.IntegerRedisMessage"
    linkageType: ""
    functionLinenumber: 48
    functionLinenumberEnd: 54
    functionDepth: 1
    returnType: "java.lang.String"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.StringBuilder].<init>(java.lang.String)"
    - "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 19
    ICount: 11
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.redis.IntegerRedisMessage:49,1"
      Dst: "[io.netty.util.internal.StringUtil].simpleClassName(java.lang.Object)"
    - Src: "io.netty.handler.codec.redis.IntegerRedisMessage:49,1"
      Dst: "[java.lang.StringBuilder].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.redis.IntegerRedisMessage:50,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.handler.codec.redis.IntegerRedisMessage:51,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.redis.IntegerRedisMessage:52,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.redis.IntegerRedisMessage:53,1"
      Dst: "[java.lang.StringBuilder].toString()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultEventExecutorChooserFactory].<init>()"
    functionSourceFile: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory:31,1"
      Dst: "[java.lang.Object].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultEventExecutorChooserFactory].newChooser(io.netty.util.concurrent.EventExecutor[])"
    functionSourceFile: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "io.netty.util.concurrent.EventExecutorChooserFactory$EventExecutorChooser"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutor[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.DefaultEventExecutorChooserFactory].isPowerOfTwo(int)"
    - "[io.netty.util.concurrent.DefaultEventExecutorChooserFactory$PowerOfTwoEventExecutorChooser].<init>(io.netty.util.concurrent.EventExecutor[])"
    - "[io.netty.util.concurrent.DefaultEventExecutorChooserFactory$GenericEventExecutorChooser].<init>(io.netty.util.concurrent.EventExecutor[])"
    functionUses: 0
    ICount: 11
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory:35"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory:38"
        BranchSideFuncs: []
      - BranchSide: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory:37"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory:35,1"
      Dst: "[io.netty.util.concurrent.DefaultEventExecutorChooserFactory].isPowerOfTwo(int)"
    - Src: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory:36,1"
      Dst: "[io.netty.util.concurrent.DefaultEventExecutorChooserFactory$PowerOfTwoEventExecutorChooser].<init>(io.netty.util.concurrent.EventExecutor[])"
    - Src: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory:38,1"
      Dst: "[io.netty.util.concurrent.DefaultEventExecutorChooserFactory$GenericEventExecutorChooser].<init>(io.netty.util.concurrent.EventExecutor[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultEventExecutorChooserFactory].isPowerOfTwo(int)"
    functionSourceFile: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory:43"
      Branch Sides:
      - BranchSide: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory:42"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.util.concurrent.DefaultEventExecutorChooserFactory$PowerOfTwoEventExecutorChooser].<init>(io.netty.util.concurrent.EventExecutor[])"
    functionSourceFile: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory$PowerOfTwoEventExecutorChooser"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutor[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.atomic.AtomicInteger].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory$PowerOfTwoEventExecutorChooser:50,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory$PowerOfTwoEventExecutorChooser:47,1"
      Dst: "[java.util.concurrent.atomic.AtomicInteger].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.util.concurrent.DefaultEventExecutorChooserFactory$GenericEventExecutorChooser].<init>(io.netty.util.concurrent.EventExecutor[])"
    functionSourceFile: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory$GenericEventExecutorChooser"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.util.concurrent.EventExecutor[]"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.Object].<init>()"
    - "[java.util.concurrent.atomic.AtomicLong].<init>()"
    functionUses: 0
    ICount: 8
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory$GenericEventExecutorChooser:67,1"
      Dst: "[java.lang.Object].<init>()"
    - Src: "io.netty.util.concurrent.DefaultEventExecutorChooserFactory$GenericEventExecutorChooser:64,1"
      Dst: "[java.util.concurrent.atomic.AtomicLong].<init>()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: false
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].<init>(boolean,boolean,int)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].<init>(boolean,boolean,int,boolean)"
    functionUses: 0
    ICount: 6
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:122,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].<init>(boolean,boolean,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].<init>(boolean,boolean,int,boolean)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder"
    linkageType: ""
    functionLinenumber: 141
    functionLinenumberEnd: 149
    functionDepth: 4
    returnType: "void"
    argCount: 4
    argTypes:
    - "boolean"
    - "boolean"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].newBuilder()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].expectMaskedFrames(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowExtensions(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].maxFramePayloadLength(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowMaskMismatch(boolean)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].build()"
    functionUses: 1
    ICount: 13
    EdgeCount: 7
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:142,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].newBuilder()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:143,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].expectMaskedFrames(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:144,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowExtensions(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:145,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].maxFramePayloadLength(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:146,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].allowMaskMismatch(boolean)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:147,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig$Builder].build()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:142,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].<init>(io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].decode(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.util.List<Object>)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder"
    linkageType: ""
    functionLinenumber: 162
    functionLinenumberEnd: 392
    functionDepth: 9
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.util.List<Object>"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.NullPointerException].<init>(java.lang.String)"
    - "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[java.lang.Enum].ordinal()"
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].readByte()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readByte()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readByte()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readByte()"
    - "[io.netty.buffer.EmptyByteBuf].readByte()"
    - "[io.netty.buffer.WrappedByteBuf].readByte()"
    - "[io.netty.buffer.SwappedByteBuf].readByte()"
    - "[io.netty.util.internal.logging.CommonsLogger].isTraceEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].isTraceEnabled()"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].isTraceEnabled()"
    - "[io.netty.util.internal.logging.Log4JLogger].isTraceEnabled()"
    - "[io.netty.util.internal.logging.Slf4JLogger].isTraceEnabled()"
    - "[io.netty.util.internal.logging.JdkLogger].trace(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.CommonsLogger].trace(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.LocationAwareSlf4JLogger].trace(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Log4JLogger].trace(java.lang.String,java.lang.Object)"
    - "[io.netty.util.internal.logging.Slf4JLogger].trace(java.lang.String,java.lang.Object)"
    - "[java.lang.Integer].valueOf(int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].allowExtensions()"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].allowMaskMismatch()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].expectMaskedFrames()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.SwappedByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AbstractByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readUnsignedShort()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readLong()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readLong()"
    - "[io.netty.buffer.WrappedByteBuf].readLong()"
    - "[io.netty.buffer.SwappedByteBuf].readLong()"
    - "[io.netty.buffer.EmptyByteBuf].readLong()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readLong()"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readLong()"
    - "[io.netty.buffer.AbstractByteBuf].readLong()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].maxFramePayloadLength()"
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    - "[java.lang.Long].valueOf(long)"
    - "[io.netty.buffer.CompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.SwappedByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.EmptyByteBuf].readBytes(byte[])"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AbstractByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].readBytes(byte[])"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].readBytes(byte[])"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].alloc()"
    - "[io.netty.channel.AbstractChannelHandlerContext].alloc()"
    - "[io.netty.buffer.ByteBufUtil].readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].toFrameLength(long)"
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].unmask(io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.PingWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.Vector].add(java.lang.Object)"
    - "[jaz.Zer].add(java.lang.Object)"
    - "[java.util.concurrent.CopyOnWriteArrayList].add(java.lang.Object)"
    - "[java.util.AbstractList].add(java.lang.Object)"
    - "[io.netty.handler.codec.CodecOutputList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.LinkedList].add(java.lang.Object)"
    - "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].release()"
    - "[io.netty.buffer.SwappedByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareCompositeByteBuf].release()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].release()"
    - "[io.netty.buffer.AbstractReferenceCountedByteBuf].release()"
    - "[io.netty.buffer.AbstractDerivedByteBuf].release()"
    - "[io.netty.buffer.WrappedByteBuf].release()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].release()"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].release()"
    - "[io.netty.buffer.SimpleLeakAwareByteBuf].release()"
    - "[io.netty.buffer.UnreleasableByteBuf].release()"
    - "[io.netty.buffer.EmptyByteBuf].release()"
    - "[java.lang.Error].<init>(java.lang.String)"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].readByte()"
    - "[io.netty.util.internal.logging.InternalLogger].isTraceEnabled()"
    - "[io.netty.util.internal.logging.InternalLogger].trace(java.lang.String,java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - "[io.netty.buffer.ByteBuf].readLong()"
    - "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    - "[io.netty.channel.ChannelHandlerContext].alloc()"
    - "[java.util.List].add(java.lang.Object)"
    - "[io.netty.util.ReferenceCounted].release()"
    functionUses: 1
    ICount: 342
    EdgeCount: 243
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:163"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:168"
        BranchSideFuncs:
        - "skipBytes(int)"
        - "actualReadableBytes()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:167"
        BranchSideFuncs:
        - "ordinal()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:170"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:174"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:178"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:174"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:173"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:182"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:186"
        BranchSideFuncs:
        - "valueOf(int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:185"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:188"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:192"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:191"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:193"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:192"
        BranchSideFuncs:
        - "allowExtensions()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:191"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:201"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:200"
        BranchSideFuncs:
        - "allowMaskMismatch()"
        - "expectMaskedFrames()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:196"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:201"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:200"
        BranchSideFuncs:
        - "allowMaskMismatch()"
        - "expectMaskedFrames()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:201"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:206"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:205"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:201"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:206"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:205"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:206"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:236"
        BranchSideFuncs:
        - "unmask(io.netty.buffer.ByteBuf)"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
        - "trace(java.lang.String,java.lang.Object)"
        - "append(java.lang.String)"
        - "readLong()"
        - "readUnsignedShort()"
        - "isTraceEnabled()"
        - "valueOf(long)"
        - "readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
        - "maxFramePayloadLength()"
        - "<init>()"
        - "toFrameLength(long)"
        - "alloc()"
        - "readBytes(byte[])"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "allowMaskMismatch()"
        - "expectMaskedFrames()"
        - "allowExtensions()"
        - "append(int)"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.lang.String)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
        - "valueOf(int)"
        - "ordinal()"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:235"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:209"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:215"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:214"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:215"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:221"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:220"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:221"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:230"
        BranchSideFuncs:
        - "unmask(io.netty.buffer.ByteBuf)"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
        - "trace(java.lang.String,java.lang.Object)"
        - "append(java.lang.String)"
        - "readLong()"
        - "readUnsignedShort()"
        - "isTraceEnabled()"
        - "valueOf(long)"
        - "readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
        - "maxFramePayloadLength()"
        - "<init>()"
        - "toFrameLength(long)"
        - "alloc()"
        - "readBytes(byte[])"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "allowMaskMismatch()"
        - "expectMaskedFrames()"
        - "allowExtensions()"
        - "append(int)"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.lang.String)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
        - "valueOf(int)"
        - "ordinal()"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:221"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:230"
        BranchSideFuncs:
        - "unmask(io.netty.buffer.ByteBuf)"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
        - "trace(java.lang.String,java.lang.Object)"
        - "append(java.lang.String)"
        - "readLong()"
        - "readUnsignedShort()"
        - "isTraceEnabled()"
        - "valueOf(long)"
        - "readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
        - "maxFramePayloadLength()"
        - "<init>()"
        - "toFrameLength(long)"
        - "alloc()"
        - "readBytes(byte[])"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "allowMaskMismatch()"
        - "expectMaskedFrames()"
        - "allowExtensions()"
        - "append(int)"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.lang.String)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
        - "valueOf(int)"
        - "ordinal()"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:221"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:230"
        BranchSideFuncs:
        - "unmask(io.netty.buffer.ByteBuf)"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
        - "trace(java.lang.String,java.lang.Object)"
        - "append(java.lang.String)"
        - "readLong()"
        - "readUnsignedShort()"
        - "isTraceEnabled()"
        - "valueOf(long)"
        - "readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
        - "maxFramePayloadLength()"
        - "<init>()"
        - "toFrameLength(long)"
        - "alloc()"
        - "readBytes(byte[])"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "allowMaskMismatch()"
        - "expectMaskedFrames()"
        - "allowExtensions()"
        - "append(int)"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.lang.String)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
        - "valueOf(int)"
        - "ordinal()"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:229"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:230"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:256"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:255"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:230"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:256"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:255"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:236"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:243"
        BranchSideFuncs:
        - "unmask(io.netty.buffer.ByteBuf)"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
        - "trace(java.lang.String,java.lang.Object)"
        - "append(java.lang.String)"
        - "readLong()"
        - "readUnsignedShort()"
        - "isTraceEnabled()"
        - "valueOf(long)"
        - "readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
        - "maxFramePayloadLength()"
        - "<init>()"
        - "toFrameLength(long)"
        - "alloc()"
        - "readBytes(byte[])"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "allowMaskMismatch()"
        - "expectMaskedFrames()"
        - "allowExtensions()"
        - "append(int)"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.lang.String)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
        - "valueOf(int)"
        - "ordinal()"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:242"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:236"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:243"
        BranchSideFuncs:
        - "unmask(io.netty.buffer.ByteBuf)"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
        - "trace(java.lang.String,java.lang.Object)"
        - "append(java.lang.String)"
        - "readLong()"
        - "readUnsignedShort()"
        - "isTraceEnabled()"
        - "valueOf(long)"
        - "readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
        - "maxFramePayloadLength()"
        - "<init>()"
        - "toFrameLength(long)"
        - "alloc()"
        - "readBytes(byte[])"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "allowMaskMismatch()"
        - "expectMaskedFrames()"
        - "allowExtensions()"
        - "append(int)"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.lang.String)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
        - "valueOf(int)"
        - "ordinal()"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:242"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:236"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:243"
        BranchSideFuncs:
        - "unmask(io.netty.buffer.ByteBuf)"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
        - "trace(java.lang.String,java.lang.Object)"
        - "append(java.lang.String)"
        - "readLong()"
        - "readUnsignedShort()"
        - "isTraceEnabled()"
        - "valueOf(long)"
        - "readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
        - "maxFramePayloadLength()"
        - "<init>()"
        - "toFrameLength(long)"
        - "alloc()"
        - "readBytes(byte[])"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "allowMaskMismatch()"
        - "expectMaskedFrames()"
        - "allowExtensions()"
        - "append(int)"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.lang.String)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
        - "valueOf(int)"
        - "ordinal()"
        - "readableBytes()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:242"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:243"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:249"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:248"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:243"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:249"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:248"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:249"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:256"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:255"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:249"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:256"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:255"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:260"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:269"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:268"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:261"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:264"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:263"
        BranchSideFuncs:
        - "readUnsignedShort()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:265"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:287"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:286"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:269"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:284"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:283"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:270"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:273"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:272"
        BranchSideFuncs:
        - "readLong()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:274"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:279"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:278"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:279"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:287"
        BranchSideFuncs:
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:286"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:287"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:293"
        BranchSideFuncs:
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
        - "maxFramePayloadLength()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:292"
        BranchSideFuncs:
        - "isTraceEnabled()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:293"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:297"
        BranchSideFuncs:
        - "trace(java.lang.String,java.lang.Object)"
        - "valueOf(long)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:296"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:299"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:308"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:307"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:300"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:303"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:302"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:303"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:306"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:305"
        BranchSideFuncs:
        - "readBytes(byte[])"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:310"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:314"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:313"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:316"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:322"
        BranchSideFuncs:
        - "readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
        - "toFrameLength(long)"
        - "alloc()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:321"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:325"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:322"
        BranchSideFuncs:
        - "unmask(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:321"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:325"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:331"
        BranchSideFuncs:
        - "unmask(io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:330"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:331"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:332"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:331"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:379"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:332"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:331"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:336"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:332"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:331"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:379"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:332"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:331"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:341"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:332"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:331"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:379"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:332"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:331"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:351"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:332"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:331"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:361"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:332"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:331"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:379"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:332"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:331"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:365"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:332"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:331"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:379"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:332"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:331"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:369"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:332"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:331"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:379"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:332"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:331"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "<init>()"
        - "add(java.lang.Object)"
        - "checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
        - "toString()"
        - "append(int)"
        - "<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:379"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:382"
        BranchSideFuncs:
        - "release()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:381"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:384"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:388"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:164,1"
      Dst: "[io.netty.handler.codec.ByteToMessageDecoder].actualReadableBytes()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:164,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:168,1"
      Dst: "[java.lang.Enum].ordinal()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:170,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:177,1"
      Dst: "[io.netty.buffer.ByteBuf].readByte()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:182,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].isTraceEnabled()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:183,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:183,1"
      Dst: "[io.netty.util.internal.logging.InternalLogger].trace(java.lang.String,java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:196,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].allowExtensions()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:197,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:197,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:197,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:197,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:197,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:201,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].allowMaskMismatch()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:201,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].expectMaskedFrames()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:261,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:264,1"
      Dst: "[io.netty.buffer.ByteBuf].readUnsignedShort()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:273,1"
      Dst: "[io.netty.buffer.ByteBuf].readLong()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:287,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].maxFramePayloadLength()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:288,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:294,1"
      Dst: "[java.lang.Long].valueOf(long)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:306,1"
      Dst: "[io.netty.buffer.ByteBuf].readBytes(byte[])"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:317,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].alloc()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:317,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].toFrameLength(long)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:317,1"
      Dst: "[io.netty.buffer.ByteBufUtil].readBytes(io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf,int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:326,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].unmask(io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:332,1"
      Dst: "[io.netty.handler.codec.http.websocketx.PingWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:332,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:-1,1"
      Dst: "[java.lang.NullPointerException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:337,1"
      Dst: "[io.netty.handler.codec.http.websocketx.PongWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:343,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:344,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:362,1"
      Dst: "[io.netty.handler.codec.http.websocketx.TextWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:366,1"
      Dst: "[io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:370,1"
      Dst: "[io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:375,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:380,1"
      Dst: "[io.netty.util.ReferenceCounted].release()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:391,1"
      Dst: "[java.lang.Error].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions:
      - "java.lang.Exception"
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 114
    CyclomaticComplexity: 28
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder"
    linkageType: ""
    functionLinenumber: 430
    functionLinenumberEnd: 433
    functionDepth: 7
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    functionUses: 13
    ICount: 7
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:431,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder"
    linkageType: ""
    functionLinenumber: 434
    functionLinenumberEnd: 437
    functionDepth: 6
    returnType: "void"
    argCount: 4
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException)"
    functionUses: 3
    ICount: 9
    EdgeCount: 2
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:435,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:435,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder"
    linkageType: ""
    functionLinenumber: 438
    functionLinenumberEnd: 461
    functionDepth: 5
    returnType: "void"
    argCount: 3
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    - "io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AbstractByteBuf].skipBytes(int)"
    - "[io.netty.buffer.SwappedByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedByteBuf].skipBytes(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].skipBytes(int)"
    - "[io.netty.buffer.CompositeByteBuf].skipBytes(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].skipBytes(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].skipBytes(int)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].channel()"
    - "[io.netty.channel.AbstractChannelHandlerContext].channel()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].closeOnProtocolViolation()"
    - "[io.netty.channel.epoll.AbstractEpollServerChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueStreamChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtAcceptorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueServerChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtByteConnectorChannel].isActive()"
    - "[io.netty.channel.kqueue.AbstractKQueueChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDatagramChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollChannel].isActive()"
    - "[io.netty.channel.epoll.EpollDomainDatagramChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioDatagramChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDomainDatagramChannel].isActive()"
    - "[io.netty.channel.oio.OioByteStreamChannel].isActive()"
    - "[io.netty.channel.local.LocalChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioServerSocketChannel].isActive()"
    - "[io.netty.channel.embedded.EmbeddedChannel].isActive()"
    - "[io.netty.channel.epoll.AbstractEpollStreamChannel].isActive()"
    - "[io.netty.channel.sctp.oio.OioSctpServerChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioServerSocketChannel].isActive()"
    - "[io.netty.channel.socket.oio.OioSocketChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioSocketChannel].isActive()"
    - "[io.netty.channel.udt.nio.NioUdtMessageConnectorChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpServerChannel].isActive()"
    - "[io.netty.channel.local.LocalServerChannel].isActive()"
    - "[io.netty.handler.codec.http2.AbstractHttp2StreamChannel].isActive()"
    - "[io.netty.channel.sctp.nio.NioSctpChannel].isActive()"
    - "[io.netty.channel.kqueue.KQueueDatagramChannel].isActive()"
    - "[io.netty.channel.socket.nio.NioDatagramChannel].isActive()"
    - "[io.netty.bootstrap.FailedChannel].isActive()"
    - "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].closeStatus()"
    - "[java.lang.Throwable].getMessage()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].reasonText()"
    - "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    - "[io.netty.channel.DefaultChannelProgressivePromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DefaultChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.VoidChannelPromise].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.DelegatingChannelPromiseNotifier].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CompleteChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    - "[io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.AbstractChannelHandlerContext].writeAndFlush(java.lang.Object)"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - "[io.netty.channel.ChannelHandlerContext].channel()"
    - "[io.netty.channel.Channel].isActive()"
    - "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    functionUses: 2
    ICount: 31
    EdgeCount: 58
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:441"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:445"
        BranchSideFuncs:
        - "isActive()"
        - "channel()"
        - "closeOnProtocolViolation()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:446"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:459"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:446"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:459"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:448"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:451"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:450"
        BranchSideFuncs:
        - "closeStatus()"
        - "getMessage()"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:453"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:456"
        BranchSideFuncs:
        - "reasonText()"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:455"
        BranchSideFuncs:
        - "<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:440,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:444,1"
      Dst: "[io.netty.buffer.ByteBuf].skipBytes(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:446,1"
      Dst: "[io.netty.channel.ChannelHandlerContext].channel()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:446,1"
      Dst: "[io.netty.channel.Channel].isActive()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:446,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketDecoderConfig].closeOnProtocolViolation()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:451,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException].closeStatus()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:452,1"
      Dst: "[java.lang.Throwable].getMessage()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:454,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].reasonText()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:456,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:458,1"
      Dst: "[io.netty.channel.ChannelOutboundInvoker].writeAndFlush(java.lang.Object)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:458,1"
      Dst: "[io.netty.channel.ChannelFuture].addListener(io.netty.util.concurrent.GenericFutureListener)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 6
  - functionName: "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].<init>(io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame"
    linkageType: ""
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionDepth: 4
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.handler.codec.http.websocketx.WebSocketCloseStatus"
    - "java.lang.String"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].<init>(int,java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].code()"
    - "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].requireValidStatusCode(int)"
    functionUses: 1
    ICount: 7
    EdgeCount: 3
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:56,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].code()"
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:56,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].requireValidStatusCode(int)"
    - Src: "io.netty.handler.codec.http.websocketx.CloseWebSocketFrame:56,1"
      Dst: "[io.netty.handler.codec.http.websocketx.CloseWebSocketFrame].<init>(int,java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].toFrameLength(long)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder"
    linkageType: ""
    functionLinenumber: 463
    functionLinenumberEnd: 468
    functionDepth: 3
    returnType: "int"
    argCount: 1
    argTypes:
    - "long"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(long)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    functionUses: 1
    ICount: 14
    EdgeCount: 5
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:464"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:467"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(long)"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:466"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:465,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:465,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:465,1"
      Dst: "[java.lang.StringBuilder].append(long)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:465,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:465,1"
      Dst: "[io.netty.handler.codec.TooLongFrameException].<init>(java.lang.String)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 3
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].unmask(io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder"
    linkageType: ""
    functionLinenumber: 395
    functionLinenumberEnd: 429
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].writerIndex()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].writerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].writerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].writerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].writerIndex()"
    - "[io.netty.buffer.PooledByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].order()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].order()"
    - "[io.netty.buffer.SwappedByteBuf].order()"
    - "[io.netty.buffer.EmptyByteBuf].order()"
    - "[io.netty.buffer.WrappedByteBuf].order()"
    - "[io.netty.buffer.DuplicatedByteBuf].order()"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].order()"
    - "[io.netty.buffer.UnpooledDirectByteBuf].order()"
    - "[io.netty.buffer.UnpooledHeapByteBuf].order()"
    - "[io.netty.buffer.AbstractPooledDerivedByteBuf].order()"
    - "[io.netty.buffer.CompositeByteBuf].order()"
    - "[io.netty.buffer.ReadOnlyByteBuf].order()"
    - "[io.netty.buffer.SlicedByteBuf].order()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].order()"
    - "[io.netty.buffer.FixedCompositeByteBuf].order()"
    - "[java.lang.Long].reverseBytes(long)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.WrappedByteBuf].getLong(int)"
    - "[io.netty.buffer.SwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getLong(int)"
    - "[io.netty.buffer.EmptyByteBuf].getLong(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getLong(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getLong(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getLong(int)"
    - "[io.netty.buffer.SlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractByteBuf].getLong(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getLong(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getLong(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getLong(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setLong(int,long)"
    - "[io.netty.buffer.DuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.CompositeByteBuf].setLong(int,long)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setLong(int,long)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.EmptyByteBuf].setLong(int,long)"
    - "[io.netty.buffer.WrappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setLong(int,long)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setLong(int,long)"
    - "[io.netty.buffer.SwappedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setLong(int,long)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getInt(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.SlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.SwappedByteBuf].getInt(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getInt(int)"
    - "[io.netty.buffer.EmptyByteBuf].getInt(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractByteBuf].getInt(int)"
    - "[io.netty.buffer.WrappedByteBuf].getInt(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getInt(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getInt(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getInt(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setInt(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setInt(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setInt(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setInt(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setInt(int,int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getByte(int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.SwappedByteBuf].getByte(int)"
    - "[io.netty.buffer.AbstractByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getByte(int)"
    - "[io.netty.buffer.EmptyByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.SlicedByteBuf].getByte(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getByte(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getByte(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getByte(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getByte(int)"
    - "[io.netty.buffer.CompositeByteBuf].getByte(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getByte(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].setByte(int,int)"
    - "[io.netty.buffer.CompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.FixedCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SwappedByteBuf].setByte(int,int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.EmptyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].setByte(int,int)"
    - "[io.netty.buffer.WrappedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].setByte(int,int)"
    - "[io.netty.buffer.SlicedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.DuplicatedByteBuf].setByte(int,int)"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].writerIndex()"
    - "[io.netty.buffer.ByteBuf].order()"
    - "[io.netty.buffer.ByteBuf].getLong(int)"
    - "[io.netty.buffer.ByteBuf].setLong(int,long)"
    - "[io.netty.buffer.ByteBuf].getInt(int)"
    - "[io.netty.buffer.ByteBuf].setInt(int,int)"
    - "[io.netty.buffer.ByteBuf].getByte(int)"
    - "[io.netty.buffer.ByteBuf].setByte(int,int)"
    functionUses: 1
    ICount: 66
    EdgeCount: 155
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:411"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:415"
        BranchSideFuncs:
        - "reverseBytes(long)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:414"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:415"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:418"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:419"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:424"
        BranchSideFuncs:
        - "getInt(int)"
        - "setInt(int,int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:423"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:425"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:427"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:396,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:397,1"
      Dst: "[io.netty.buffer.ByteBuf].writerIndex()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:399,1"
      Dst: "[io.netty.buffer.ByteBuf].order()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:412,1"
      Dst: "[java.lang.Long].reverseBytes(long)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:416,1"
      Dst: "[io.netty.buffer.ByteBuf].getLong(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:416,1"
      Dst: "[io.netty.buffer.ByteBuf].setLong(int,long)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:420,1"
      Dst: "[io.netty.buffer.ByteBuf].getInt(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:420,1"
      Dst: "[io.netty.buffer.ByteBuf].setInt(int,int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:426,1"
      Dst: "[io.netty.buffer.ByteBuf].getByte(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:426,1"
      Dst: "[io.netty.buffer.ByteBuf].setByte(int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.handler.codec.http.websocketx.PingWebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.PingWebSocketFrame"
    linkageType: ""
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionDepth: 0
    returnType: "void"
    argCount: 3
    argTypes:
    - "boolean"
    - "int"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    functionUses: 2
    ICount: 6
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.PingWebSocketFrame:54,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketFrame].<init>(boolean,int,io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].checkCloseFrameBody(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf)"
    functionSourceFile: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder"
    linkageType: ""
    functionLinenumber: 473
    functionLinenumberEnd: 496
    functionDepth: 8
    returnType: "void"
    argCount: 2
    argTypes:
    - "io.netty.channel.ChannelHandlerContext"
    - "io.netty.buffer.ByteBuf"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.SwappedByteBuf].isReadable()"
    - "[io.netty.buffer.EmptyByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedByteBuf].isReadable()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].isReadable()"
    - "[io.netty.buffer.AbstractByteBuf].isReadable()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readableBytes()"
    - "[io.netty.buffer.WrappedByteBuf].readableBytes()"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readableBytes()"
    - "[io.netty.buffer.SwappedByteBuf].readableBytes()"
    - "[io.netty.buffer.EmptyByteBuf].readableBytes()"
    - "[io.netty.buffer.AbstractByteBuf].readableBytes()"
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    - "[io.netty.buffer.SwappedByteBuf].getShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.SlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnpooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.DuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBufferBuf].getShort(int)"
    - "[io.netty.buffer.PooledDuplicatedByteBuf].getShort(int)"
    - "[io.netty.buffer.ReadOnlyByteBuf].getShort(int)"
    - "[io.netty.buffer.PooledSlicedByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareByteBuf].getShort(int)"
    - "[io.netty.buffer.EmptyByteBuf].getShort(int)"
    - "[io.netty.buffer.AbstractUnsafeSwappedByteBuf].getShort(int)"
    - "[io.netty.buffer.AdvancedLeakAwareCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedCompositeByteBuf].getShort(int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].getShort(int)"
    - "[io.netty.buffer.WrappedByteBuf].getShort(int)"
    - "[io.netty.handler.codec.ReplayingDecoderByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedCompositeByteBuf].readerIndex()"
    - "[io.netty.buffer.WrappedByteBuf].readerIndex()"
    - "[io.netty.buffer.EmptyByteBuf].readerIndex()"
    - "[io.netty.buffer.SwappedByteBuf].readerIndex()"
    - "[io.netty.buffer.AbstractByteBuf].readerIndex()"
    - "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].isValidStatusCode(int)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.handler.codec.http.websocketx.Utf8Validator].<init>()"
    - "[io.netty.handler.codec.http.websocketx.Utf8Validator].check(io.netty.buffer.ByteBuf,int,int)"
    - "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException)"
    - "[io.netty.buffer.ByteBuf].isReadable()"
    - "[io.netty.buffer.ByteBuf].readableBytes()"
    - "[io.netty.buffer.ByteBuf].readerIndex()"
    - "[io.netty.buffer.ByteBuf].getShort(int)"
    functionUses: 1
    ICount: 36
    EdgeCount: 66
    BranchProfiles:
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:474"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:475"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:474"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:474"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:477"
        BranchSideFuncs: []
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:476"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:477"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:482"
        BranchSideFuncs:
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:481"
        BranchSideFuncs:
        - "isValidStatusCode(int)"
        - "getShort(int)"
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:483"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:488"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.lang.String)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:487"
        BranchSideFuncs: []
    - Branch String: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:488"
      Branch Sides:
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:495"
        BranchSideFuncs:
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
        - "isValidStatusCode(int)"
        - "append(java.lang.String)"
        - "toString()"
        - "readerIndex()"
        - "append(int)"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException)"
        - "protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.lang.String)"
        - "<init>()"
        - "getShort(int)"
        - "readableBytes()"
        - "check(io.netty.buffer.ByteBuf,int,int)"
      - BranchSide: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:494"
        BranchSideFuncs: []
    Callsites:
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:474,1"
      Dst: "[io.netty.buffer.ByteBuf].isReadable()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:477,1"
      Dst: "[io.netty.buffer.ByteBuf].readableBytes()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:478,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.WebSocketCloseStatus,java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:482,1"
      Dst: "[io.netty.buffer.ByteBuf].readerIndex()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:482,1"
      Dst: "[io.netty.buffer.ByteBuf].getShort(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:483,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocketCloseStatus].isValidStatusCode(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:484,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:484,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:484,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:484,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:484,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,java.lang.String)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:490,1"
      Dst: "[io.netty.handler.codec.http.websocketx.Utf8Validator].<init>()"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:490,1"
      Dst: "[io.netty.handler.codec.http.websocketx.Utf8Validator].check(io.netty.buffer.ByteBuf,int,int)"
    - Src: "io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder:492,1"
      Dst: "[io.netty.handler.codec.http.websocketx.WebSocket08FrameDecoder].protocolViolation(io.netty.channel.ChannelHandlerContext,io.netty.buffer.ByteBuf,io.netty.handler.codec.http.websocketx.CorruptedWebSocketFrameException)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 11
    CyclomaticComplexity: 5
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].<init>()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean)"
    functionUses: 0
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:195,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionDepth: 0
    returnType: "void"
    argCount: 1
    argTypes:
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int)"
    functionUses: 1
    ICount: 8
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:200,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].<init>(int,int,int,int)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 4
    argTypes:
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int)"
    functionUses: 0
    ICount: 7
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:205,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionDepth: 0
    returnType: "void"
    argCount: 5
    argTypes:
    - "boolean"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int,int,int,int)"
    functionUses: 1
    ICount: 10
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:214,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int,int,int,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int,int,int,int)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 224
    functionLinenumberEnd: 228
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "boolean"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int,int,int,boolean,int)"
    functionUses: 1
    ICount: 13
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:225,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int,int,int,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int,int,int,int,boolean)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 9
    argTypes:
    - "boolean"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int,int,int,boolean)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:238,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int,int,int,boolean)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int,int,int,boolean)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 8
    argTypes:
    - "boolean"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "boolean"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int,int,int,boolean,int)"
    functionUses: 0
    ICount: 12
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:247,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int,int,int,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int,int,int,int,boolean,int)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "void"
    argCount: 10
    argTypes:
    - "boolean"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int,int,int,boolean,int)"
    functionUses: 0
    ICount: 13
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:260,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int,int,int,boolean,int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].<init>(boolean,int,int,int,int,int,int,boolean,int)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 267
    functionLinenumberEnd: 331
    functionDepth: 0
    returnType: "void"
    argCount: 9
    argTypes:
    - "boolean"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "int"
    - "boolean"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.buffer.PooledByteBufAllocator$1].<init>(io.netty.buffer.PooledByteBufAllocator)"
    - "[io.netty.buffer.AbstractByteBufAllocator].<init>(boolean)"
    - "[io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache].<init>(io.netty.buffer.PooledByteBufAllocator,boolean)"
    - "[io.netty.util.internal.PlatformDependent].hasAlignDirectByteBuffer()"
    - "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - "[io.netty.util.internal.PlatformDependent].align(long,int)"
    - "[io.netty.buffer.PooledByteBufAllocator].validateAndCalculateChunkSize(int,int)"
    - "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - "[io.netty.buffer.PooledByteBufAllocator].isDirectMemoryCacheAlignmentSupported()"
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[io.netty.buffer.PooledByteBufAllocator].validateAndCalculatePageShifts(int,int)"
    - "[io.netty.buffer.PooledByteBufAllocator].newArenaArray(int)"
    - "[java.util.ArrayList].<init>(int)"
    - "[io.netty.buffer.PoolArena$HeapArena].<init>(io.netty.buffer.PooledByteBufAllocator,int,int,int)"
    - "[io.netty.util.internal.RecyclableArrayList].add(java.lang.Object)"
    - "[java.util.ArrayList].add(java.lang.Object)"
    - "[java.util.Collections].unmodifiableList(java.util.List)"
    - "[java.util.Collections].emptyList()"
    - "[io.netty.buffer.PoolArena$DirectArena].<init>(io.netty.buffer.PooledByteBufAllocator,int,int,int,int)"
    - "[io.netty.buffer.PooledByteBufAllocatorMetric].<init>(io.netty.buffer.PooledByteBufAllocator)"
    - "[java.util.List].add(java.lang.Object)"
    functionUses: 1
    ICount: 106
    EdgeCount: 34
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:273"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:283"
        BranchSideFuncs:
        - "hasAlignDirectByteBuffer()"
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:282"
        BranchSideFuncs:
        - "validateAndCalculateChunkSize(int,int)"
        - "isDirectMemoryCacheAlignmentSupported()"
        - "checkPositiveOrZero(int,java.lang.String)"
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:274"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:280"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:279"
        BranchSideFuncs:
        - "align(long,int)"
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:289"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:293"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:292"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:289"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:293"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:292"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:293"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:298"
        BranchSideFuncs:
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
        - "<init>()"
        - "<init>(java.lang.String)"
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:297"
        BranchSideFuncs:
        - "validateAndCalculatePageShifts(int,int)"
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:300"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:311"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:310"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:303"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:308"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:315"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:326"
        BranchSideFuncs:
        - "<init>(int)"
        - "newArenaArray(int)"
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:325"
        BranchSideFuncs:
        - "emptyList()"
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:318"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:323"
        BranchSideFuncs:
        - "unmodifiableList(java.util.List)"
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:268,1"
      Dst: "[io.netty.buffer.AbstractByteBufAllocator].<init>(boolean)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:60,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator$1].<init>(io.netty.buffer.PooledByteBufAllocator)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:269,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator$PoolThreadLocalCache].<init>(io.netty.buffer.PooledByteBufAllocator,boolean)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:274,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasAlignDirectByteBuffer()"
    - Src: "io.netty.buffer.PooledByteBufAllocator:275,1"
      Dst: "[java.lang.UnsupportedOperationException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:280,1"
      Dst: "[io.netty.util.internal.PlatformDependent].align(long,int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:283,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].validateAndCalculateChunkSize(int,int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:285,1"
      Dst: "[io.netty.util.internal.ObjectUtil].checkPositiveOrZero(int,java.lang.String)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:289,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].isDirectMemoryCacheAlignmentSupported()"
    - Src: "io.netty.buffer.PooledByteBufAllocator:290,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:294,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.PooledByteBufAllocator:294,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:294,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:294,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.PooledByteBufAllocator:298,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].validateAndCalculatePageShifts(int,int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:301,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocator].newArenaArray(int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:302,1"
      Dst: "[java.util.ArrayList].<init>(int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:304,1"
      Dst: "[io.netty.buffer.PoolArena$HeapArena].<init>(io.netty.buffer.PooledByteBufAllocator,int,int,int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:307,1"
      Dst: "[java.util.List].add(java.lang.Object)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:309,1"
      Dst: "[java.util.Collections].unmodifiableList(java.util.List)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:312,1"
      Dst: "[java.util.Collections].emptyList()"
    - Src: "io.netty.buffer.PooledByteBufAllocator:319,1"
      Dst: "[io.netty.buffer.PoolArena$DirectArena].<init>(io.netty.buffer.PooledByteBufAllocator,int,int,int,int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:329,1"
      Dst: "[io.netty.buffer.PooledByteBufAllocatorMetric].<init>(io.netty.buffer.PooledByteBufAllocator)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 22
    CyclomaticComplexity: 7
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].newArenaArray(int)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 333
    functionLinenumberEnd: 335
    functionDepth: 0
    returnType: "io.netty.buffer.PoolArena<T>[]"
    argCount: 1
    argTypes:
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 2
    ICount: 3
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].validateAndCalculatePageShifts(int,int)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 337
    functionLinenumberEnd: 353
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(char)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.Integer].numberOfLeadingZeros(int)"
    functionUses: 2
    ICount: 41
    EdgeCount: 23
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:338"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:342"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:341"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:342"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:346"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:345"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:346"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:352"
        BranchSideFuncs:
        - "append(char)"
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "<init>(java.lang.String)"
        - "append(int)"
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:351"
        BranchSideFuncs:
        - "numberOfLeadingZeros(int)"
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:339,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.PooledByteBufAllocator:339,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:339,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:339,1"
      Dst: "[java.lang.StringBuilder].append(char)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:339,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.PooledByteBufAllocator:339,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:352,1"
      Dst: "[java.lang.Integer].numberOfLeadingZeros(int)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].validateAndCalculateChunkSize(int,int)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 355
    functionLinenumberEnd: 370
    functionDepth: 0
    returnType: "int"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - "[java.lang.StringBuilder].<init>()"
    - "[java.lang.StringBuilder].append(java.lang.String)"
    - "[java.lang.StringBuilder].append(int)"
    - "[java.lang.StringBuilder].toString()"
    - "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    - "[java.lang.Integer].valueOf(int)"
    functionUses: 2
    ICount: 32
    EdgeCount: 11
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:356"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:361"
        BranchSideFuncs:
        - "<init>()"
        - "append(java.lang.String)"
        - "toString()"
        - "append(int)"
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:360"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:362"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:369"
        BranchSideFuncs: []
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:368"
        BranchSideFuncs: []
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:363"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:null"
        BranchSideFuncs:
        - "format(java.lang.String,java.lang.Object[])"
        - "<init>(java.lang.String)"
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:357,1"
      Dst: "[java.lang.StringBuilder].<init>()"
    - Src: "io.netty.buffer.PooledByteBufAllocator:357,1"
      Dst: "[java.lang.StringBuilder].append(java.lang.String)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:357,1"
      Dst: "[java.lang.StringBuilder].append(int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:357,1"
      Dst: "[java.lang.StringBuilder].toString()"
    - Src: "io.netty.buffer.PooledByteBufAllocator:357,1"
      Dst: "[java.lang.IllegalArgumentException].<init>(java.lang.String)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:365,1"
      Dst: "[java.lang.Integer].valueOf(int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:364,1"
      Dst: "[java.lang.String].format(java.lang.String,java.lang.Object[])"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 8
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].newHeapBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 373
    functionLinenumberEnd: 387
    functionDepth: 5
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].get()"
    - "[io.netty.buffer.PoolArena].allocate(io.netty.buffer.PoolThreadCache,int,int)"
    - "[io.netty.buffer.UnpooledHeapByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    - "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.buffer.AbstractByteBufAllocator].toLeakAwareBuffer(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 22
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:378"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:381"
        BranchSideFuncs:
        - "allocate(io.netty.buffer.PoolThreadCache,int,int)"
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:380"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBufAllocator,int,int)"
        - "hasUnsafe()"
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:381"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:380"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBufAllocator,int,int)"
        - "hasUnsafe()"
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:374,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].get()"
    - Src: "io.netty.buffer.PooledByteBufAllocator:379,1"
      Dst: "[io.netty.buffer.PoolArena].allocate(io.netty.buffer.PoolThreadCache,int,int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:381,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.buffer.PooledByteBufAllocator:381,1"
      Dst: "[io.netty.buffer.UnpooledUnsafeHeapByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:381,1"
      Dst: "[io.netty.buffer.UnpooledHeapByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:386,1"
      Dst: "[io.netty.buffer.AbstractByteBufAllocator].toLeakAwareBuffer(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].newDirectBuffer(int,int)"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 390
    functionLinenumberEnd: 404
    functionDepth: 7
    returnType: "io.netty.buffer.ByteBuf"
    argCount: 2
    argTypes:
    - "int"
    - "int"
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].get()"
    - "[io.netty.buffer.PoolArena].allocate(io.netty.buffer.PoolThreadCache,int,int)"
    - "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - "[io.netty.buffer.UnsafeByteBufUtil].newUnsafeDirectByteBuf(io.netty.buffer.ByteBufAllocator,int,int)"
    - "[io.netty.buffer.AbstractByteBufAllocator].toLeakAwareBuffer(io.netty.buffer.ByteBuf)"
    functionUses: 1
    ICount: 19
    EdgeCount: 6
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:395"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:398"
        BranchSideFuncs:
        - "allocate(io.netty.buffer.PoolThreadCache,int,int)"
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:397"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBufAllocator,int,int)"
        - "hasUnsafe()"
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:398"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:398"
        BranchSideFuncs:
        - "newUnsafeDirectByteBuf(io.netty.buffer.ByteBufAllocator,int,int)"
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:397"
        BranchSideFuncs:
        - "<init>(io.netty.buffer.ByteBufAllocator,int,int)"
        - "hasUnsafe()"
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:391,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].get()"
    - Src: "io.netty.buffer.PooledByteBufAllocator:396,1"
      Dst: "[io.netty.buffer.PoolArena].allocate(io.netty.buffer.PoolThreadCache,int,int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:398,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    - Src: "io.netty.buffer.PooledByteBufAllocator:399,1"
      Dst: "[io.netty.buffer.UnsafeByteBufUtil].newUnsafeDirectByteBuf(io.netty.buffer.ByteBufAllocator,int,int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:398,1"
      Dst: "[io.netty.buffer.UnpooledDirectByteBuf].<init>(io.netty.buffer.ByteBufAllocator,int,int)"
    - Src: "io.netty.buffer.PooledByteBufAllocator:403,1"
      Dst: "[io.netty.buffer.AbstractByteBufAllocator].toLeakAwareBuffer(io.netty.buffer.ByteBuf)"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: false
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 7
    CyclomaticComplexity: 3
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].defaultNumHeapArena()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].defaultNumDirectArena()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].defaultPageSize()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].defaultMaxOrder()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].defaultUseCacheForAllThreads()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].defaultPreferDirect()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].directBufferPreferred()"
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:445,1"
      Dst: "[io.netty.util.internal.PlatformDependent].directBufferPreferred()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].defaultTinyCacheSize()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 1
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].defaultSmallCacheSize()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].defaultNormalCacheSize()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 0
    returnType: "int"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 0
    ICount: 2
    EdgeCount: 0
    BranchProfiles: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].isDirectMemoryCacheAlignmentSupported()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 475
    functionLinenumberEnd: 477
    functionDepth: 1
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    functionUses: 1
    ICount: 2
    EdgeCount: 1
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:476,1"
      Dst: "[io.netty.util.internal.PlatformDependent].hasUnsafe()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: true
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].isDirectBufferPooled()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: 480
    functionLinenumberEnd: 482
    functionDepth: 0
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached: []
    functionUses: 12
    ICount: 7
    EdgeCount: 0
    BranchProfiles:
    - Branch String: "io.netty.buffer.PooledByteBufAllocator:481"
      Branch Sides:
      - BranchSide: "io.netty.buffer.PooledByteBufAllocator:480"
        BranchSideFuncs: []
    Callsites: []
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 4
    CyclomaticComplexity: 2
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].hasThreadLocalCache()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 3
    returnType: "boolean"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].isSet()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:491,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].isSet()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].freeThreadLocalCache()"
    functionSourceFile: "io.netty.buffer.PooledByteBufAllocator"
    linkageType: ""
    functionLinenumber: -1
    functionLinenumberEnd: -1
    functionDepth: 5
    returnType: "void"
    argCount: 0
    argTypes: []
    constantsTouched: []
    argNames: []
    functionsReached:
    - "[io.netty.util.concurrent.FastThreadLocal].remove()"
    functionUses: 0
    ICount: 4
    EdgeCount: 0
    BranchProfiles: []
    Callsites:
    - Src: "io.netty.buffer.PooledByteBufAllocator:500,1"
      Dst: "[io.netty.util.concurrent.FastThreadLocal].remove()"
    JavaMethodInfo:
      exceptions: []
      interfaces: []
      classFields: []
      argumentGenericTypes: []
      returnValueGenericType: ""
      superClass: ""
      static: false
      public: true
      classPublic: true
      concrete: true
      classConcrete: true
      classEnum: false
      javaLibraryMethod: false
    BBCount: 1
    CyclomaticComplexity: 1
  - functionName: "[io.netty.buffer.PooledByteBufAllocator].met